From 9c16b535212cf0275d452ef655086941f9255149 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 28 Nov 2023 08:27:26 +0300 Subject: [PATCH 001/458] Bump tsx from 4.4.0 to 4.5.0 (#183) Bumps [tsx](https://github.com/privatenumber/tsx) from 4.4.0 to 4.5.0. - [Release notes](https://github.com/privatenumber/tsx/releases) - [Changelog](https://github.com/privatenumber/tsx/blob/develop/release.config.cjs) - [Commits](https://github.com/privatenumber/tsx/compare/v4.4.0...v4.5.0) --- updated-dependencies: - dependency-name: tsx dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- internal/backend/package.json | 2 +- package-lock.json | 14 +++++++------- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 5 files changed, 11 insertions(+), 11 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index a46e65cb..62227c78 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -36,7 +36,7 @@ "pm2": "5.3.0", "redis": "4.6.11", "rimraf": "5.0.5", - "tsx": "4.4.0", + "tsx": "4.5.0", "typescript": "5.3.2" } } diff --git a/internal/backend/package.json b/internal/backend/package.json index 1e34bc75..7b74f342 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -20,7 +20,7 @@ "eslint-config-neshca": "*", "pino-pretty": "10.2.3", "rimraf": "5.0.5", - "tsx": "4.4.0", + "tsx": "4.5.0", "typescript": "5.3.2" } } diff --git a/package-lock.json b/package-lock.json index 05b6978c..f1fbda91 100644 --- a/package-lock.json +++ b/package-lock.json @@ -57,7 +57,7 @@ "pm2": "5.3.0", "redis": "4.6.11", "rimraf": "5.0.5", - "tsx": "4.4.0", + "tsx": "4.5.0", "typescript": "5.3.2" } }, @@ -248,7 +248,7 @@ "eslint-config-neshca": "*", "pino-pretty": "10.2.3", "rimraf": "5.0.5", - "tsx": "4.4.0", + "tsx": "4.5.0", "typescript": "5.3.2" } }, @@ -15017,9 +15017,9 @@ "dev": true }, "node_modules/tsx": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.4.0.tgz", - "integrity": "sha512-4fwcEjRUxW20ciSaMB8zkpGwCPxuRGnadDuj/pBk5S9uT29zvWz15PK36GrKJo45mSJomDxVejZ73c6lr3811Q==", + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.5.0.tgz", + "integrity": "sha512-hgxdziy9KLaHh9KE+a6tIZFP6kb0MLq/1D0sJVifbGP4QVEYhy6+2FNn7MyCm1pMc63p9CW/L1OzdqTNPxs6rg==", "dev": true, "dependencies": { "esbuild": "~0.18.20", @@ -16837,7 +16837,7 @@ "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", - "tsx": "4.4.0", + "tsx": "4.5.0", "typescript": "5.3.2" } }, @@ -16860,7 +16860,7 @@ "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", - "tsx": "4.4.0", + "tsx": "4.5.0", "typescript": "5.3.2" } } diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 244a7dc1..c6ae1844 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -33,7 +33,7 @@ "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", - "tsx": "4.4.0", + "tsx": "4.5.0", "typescript": "5.3.2" } } diff --git a/packages/server/package.json b/packages/server/package.json index 9181c6bb..75892085 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -37,7 +37,7 @@ "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", - "tsx": "4.4.0", + "tsx": "4.5.0", "typescript": "5.3.2" }, "distTags": [ From 915ecef70b893739c15841714faa75b2805a6140 Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Tue, 28 Nov 2023 18:38:14 +0300 Subject: [PATCH 002/458] Fix Pages router for older Next.js versions (#186) --- .changeset/large-crews-grab.md | 5 + apps/cache-testing/package.json | 8 +- .../src/pages/api/restart-app.ts | 10 +- apps/cache-testing/tests/pages.spec.ts | 8 +- docs/cache-handler-docs/theme.config.jsx | 2 +- package-lock.json | 681 ++++++++++++------ packages/cache-handler/README.md | 4 +- packages/cache-handler/src/cache-handler.ts | 18 +- 8 files changed, 484 insertions(+), 252 deletions(-) create mode 100644 .changeset/large-crews-grab.md diff --git a/.changeset/large-crews-grab.md b/.changeset/large-crews-grab.md new file mode 100644 index 00000000..981aa2da --- /dev/null +++ b/.changeset/large-crews-grab.md @@ -0,0 +1,5 @@ +--- +'@neshca/cache-handler': patch +--- + +Fix Pages router for older Next.js versions diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 62227c78..e1fa345e 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -15,17 +15,15 @@ "start": "dotenv -e .env.local -v SERVER_STARTED=1 node .next/standalone/apps/cache-testing/server.js" }, "dependencies": { - "lru-cache": "10.1.0", - "next": "14.0.4-canary.9", + "next": "14.0.4-canary.18", "react": "18.2.0", - "react-dom": "18.2.0", - "undici": "5.27.2" + "react-dom": "18.2.0" }, "devDependencies": { "@neshca/cache-handler": "*", "@neshca/json-replacer-reviver": "*", "@neshca/tsconfig": "*", - "@next/eslint-plugin-next": "14.0.4-canary.9", + "@next/eslint-plugin-next": "14.0.4-canary.18", "@playwright/test": "1.40.0", "@types/node": "20.10.0", "@types/react": "18.2.38", diff --git a/apps/cache-testing/src/pages/api/restart-app.ts b/apps/cache-testing/src/pages/api/restart-app.ts index 2920e428..70101d29 100644 --- a/apps/cache-testing/src/pages/api/restart-app.ts +++ b/apps/cache-testing/src/pages/api/restart-app.ts @@ -1,5 +1,4 @@ import type { NextApiRequest, NextApiResponse } from 'next'; -import { fetch } from 'undici'; export default async function handler(_request: NextApiRequest, result: NextApiResponse): Promise { const port = Number.parseInt(process.env.PORT ?? '3000', 10); @@ -11,9 +10,14 @@ export default async function handler(_request: NextApiRequest, result: NextApiR return; } - const restartResult = await fetch(`http://localhost:9000/restart/${port}`); + const restartResult = await fetch(`http://localhost:9000/restart/${port}`, { + next: { + // @ts-expect-error -- act as an internal fetch call + internal: true, + }, + }); - const json = await restartResult.json(); + const json = (await restartResult.json()) as unknown; result.json(json); } diff --git a/apps/cache-testing/tests/pages.spec.ts b/apps/cache-testing/tests/pages.spec.ts index 3582558f..c8ba566c 100644 --- a/apps/cache-testing/tests/pages.spec.ts +++ b/apps/cache-testing/tests/pages.spec.ts @@ -1,5 +1,4 @@ import { test, expect } from '@playwright/test'; -import { fetch } from 'undici'; const paths = [ '/pages/with-paths/fallback-blocking/200', @@ -237,7 +236,12 @@ test.describe('Data consistency after server restart', () => { expect(valueFromPageA === valueFromPageB).toBe(true); - const restartResult = await fetch(`${baseURL}:9000/restart/${appBUrl.port}`); + const restartResult = await fetch(`${baseURL}:9000/restart/${appBUrl.port}`, { + next: { + // @ts-expect-error -- act as an internal fetch call + internal: true, + }, + }); expect(restartResult.status).toBe(200); diff --git a/docs/cache-handler-docs/theme.config.jsx b/docs/cache-handler-docs/theme.config.jsx index 262a132a..6aefc63f 100644 --- a/docs/cache-handler-docs/theme.config.jsx +++ b/docs/cache-handler-docs/theme.config.jsx @@ -53,7 +53,7 @@ export default { key: '0.5.1-release', text: ( - 🎉 Version 0.5.3 is out, introducing async onCreation hook, async Handlers, and fixed types! + 🎉 Version 0.5.4 is out, introducing async onCreation hook, async Handlers, and fixed types! ), }, diff --git a/package-lock.json b/package-lock.json index f1fbda91..07174958 100644 --- a/package-lock.json +++ b/package-lock.json @@ -36,17 +36,15 @@ "version": "0.0.0", "license": "MIT", "dependencies": { - "lru-cache": "10.1.0", - "next": "14.0.4-canary.9", + "next": "14.0.4-canary.18", "react": "18.2.0", - "react-dom": "18.2.0", - "undici": "5.27.2" + "react-dom": "18.2.0" }, "devDependencies": { "@neshca/cache-handler": "*", "@neshca/json-replacer-reviver": "*", "@neshca/tsconfig": "*", - "@next/eslint-plugin-next": "14.0.4-canary.9", + "@next/eslint-plugin-next": "14.0.4-canary.18", "@playwright/test": "1.40.0", "@types/node": "20.10.0", "@types/react": "18.2.38", @@ -61,12 +59,161 @@ "typescript": "5.3.2" } }, + "apps/cache-testing/node_modules/@next/env": { + "version": "14.0.4-canary.18", + "resolved": "https://registry.npmjs.org/@next/env/-/env-14.0.4-canary.18.tgz", + "integrity": "sha512-9GnscbrKiR/bfstVvWSxohqFZXNgsEdkXVX0L3pslFpbytEMB9tOUrQXyLmZnVhEZEwVFPd2vFxdjo+jBq9A2g==" + }, + "apps/cache-testing/node_modules/@next/swc-darwin-arm64": { + "version": "14.0.4-canary.18", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.0.4-canary.18.tgz", + "integrity": "sha512-XiIBoz6fDZR3pBZleeyHFzHLFOWewEFjNuxkB0KobBjbloZphVsb1fugCd5ZBYc7smthrOyiytBZtSb4v8aVsQ==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10" + } + }, + "apps/cache-testing/node_modules/@next/swc-darwin-x64": { + "version": "14.0.4-canary.18", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.0.4-canary.18.tgz", + "integrity": "sha512-eROWKNwoRH7DNxYoL6pElztjcCfODjk8XHAlrehFe7550DoS739eoYflLZyOshzvMyL0P/ZghQDf+CHePY+N3g==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10" + } + }, + "apps/cache-testing/node_modules/@next/swc-linux-arm64-gnu": { + "version": "14.0.4-canary.18", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.0.4-canary.18.tgz", + "integrity": "sha512-tT9mt2d2c3rQmI6NlhLk0THCJ0JUGHOuxdBTu9HVC6rVCiLsA8ZKTmBFeeV6tPdZqPmZdWJqhStBVcAnylfPfA==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "apps/cache-testing/node_modules/@next/swc-linux-arm64-musl": { + "version": "14.0.4-canary.18", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.0.4-canary.18.tgz", + "integrity": "sha512-yd5aaU4UN8FauTbAypt/iFHlGFseUa0VA6+hYRRBy5WPoVW7lpb0bQp2RPhM0w2XDQ8vVs9coI5wiQ0W3dRPQA==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "apps/cache-testing/node_modules/@next/swc-linux-x64-gnu": { + "version": "14.0.4-canary.18", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.0.4-canary.18.tgz", + "integrity": "sha512-YRvnW3awlcM2TOct0t7mZLwZ8jn9vXv3MRHFC7FHLpqBggBeRxH8kfst5SzOcVkW2NYPFjNSuAVmJqPJ9ks4PA==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "apps/cache-testing/node_modules/@next/swc-linux-x64-musl": { + "version": "14.0.4-canary.18", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.0.4-canary.18.tgz", + "integrity": "sha512-v221dAy0TVO+Er/rKO5wqRDqlinMA9fQt59SM+fpBQIDN1FIuLPnM+J85jDOMJ3I4UV9NqVP7zSd5lgNcFTIhw==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "apps/cache-testing/node_modules/@next/swc-win32-arm64-msvc": { + "version": "14.0.4-canary.18", + "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.0.4-canary.18.tgz", + "integrity": "sha512-qG1a9ctJMMen4LKAgMEyLGclfVlvxoEzvVOY1yRhTppxl+loWIRmmzWmw24HUvnu9Ro4St1QnTQalWnoZWtTCA==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, + "apps/cache-testing/node_modules/@next/swc-win32-ia32-msvc": { + "version": "14.0.4-canary.18", + "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.0.4-canary.18.tgz", + "integrity": "sha512-3KI1Xr40OBDEsT5OLn3YnHDBtbProhIeP0af3zhE7Q0Nba5nsoVq9iX0j+lv9Xh6HxOWRU9kL6eJXstIdaybEQ==", + "cpu": [ + "ia32" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, + "apps/cache-testing/node_modules/@next/swc-win32-x64-msvc": { + "version": "14.0.4-canary.18", + "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.0.4-canary.18.tgz", + "integrity": "sha512-okdZXwxo0lxWHRz3T7I6GQZu5g82SsTBVlZRH5aN0E1Sbw/3eCDqSBqYdyH+Ue9WpVllB2hN7tUzBDSdizHQ/A==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, + "apps/cache-testing/node_modules/@types/node": { + "version": "20.10.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.0.tgz", + "integrity": "sha512-D0WfRmU9TQ8I9PFx9Yc+EBHw+vSpIub4IDvQivcp26PtPrdMGAq5SDcpXEo/epqa/DXotVpekHiLNTg3iaKXBQ==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "apps/cache-testing/node_modules/next": { - "version": "14.0.4-canary.9", - "resolved": "https://registry.npmjs.org/next/-/next-14.0.4-canary.9.tgz", - "integrity": "sha512-gqnjWqAXwTLoUii3pEvEbO48Ortf4jAdKR19w2KVBzXT3+219cSTdr/V2l4QKddselcX//oguAEA0jrx/uAyEg==", + "version": "14.0.4-canary.18", + "resolved": "https://registry.npmjs.org/next/-/next-14.0.4-canary.18.tgz", + "integrity": "sha512-iMRDdqsKG73rjV782SOqPzur3RCzICuPpkocRzXfJtOTr7O9Ekg5k3WFlAje7ogr0RrKa0XXpasV9kyKWtCQ4g==", "dependencies": { - "@next/env": "14.0.4-canary.9", + "@next/env": "14.0.4-canary.18", "@swc/helpers": "0.5.2", "busboy": "1.6.0", "caniuse-lite": "^1.0.30001406", @@ -81,15 +228,15 @@ "node": ">=18.17.0" }, "optionalDependencies": { - "@next/swc-darwin-arm64": "14.0.4-canary.9", - "@next/swc-darwin-x64": "14.0.4-canary.9", - "@next/swc-linux-arm64-gnu": "14.0.4-canary.9", - "@next/swc-linux-arm64-musl": "14.0.4-canary.9", - "@next/swc-linux-x64-gnu": "14.0.4-canary.9", - "@next/swc-linux-x64-musl": "14.0.4-canary.9", - "@next/swc-win32-arm64-msvc": "14.0.4-canary.9", - "@next/swc-win32-ia32-msvc": "14.0.4-canary.9", - "@next/swc-win32-x64-msvc": "14.0.4-canary.9" + "@next/swc-darwin-arm64": "14.0.4-canary.18", + "@next/swc-darwin-x64": "14.0.4-canary.18", + "@next/swc-linux-arm64-gnu": "14.0.4-canary.18", + "@next/swc-linux-arm64-musl": "14.0.4-canary.18", + "@next/swc-linux-x64-gnu": "14.0.4-canary.18", + "@next/swc-linux-x64-musl": "14.0.4-canary.18", + "@next/swc-win32-arm64-msvc": "14.0.4-canary.18", + "@next/swc-win32-ia32-msvc": "14.0.4-canary.18", + "@next/swc-win32-x64-msvc": "14.0.4-canary.18" }, "peerDependencies": { "@opentelemetry/api": "^1.1.0", @@ -134,6 +281,15 @@ "glob": "7.1.7" } }, + "docs/cache-handler-docs/node_modules/@types/node": { + "version": "20.10.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.0.tgz", + "integrity": "sha512-D0WfRmU9TQ8I9PFx9Yc+EBHw+vSpIub4IDvQivcp26PtPrdMGAq5SDcpXEo/epqa/DXotVpekHiLNTg3iaKXBQ==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "docs/cache-handler-docs/node_modules/glob": { "version": "7.1.7", "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", @@ -252,6 +408,15 @@ "typescript": "5.3.2" } }, + "internal/backend/node_modules/@types/node": { + "version": "20.10.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.0.tgz", + "integrity": "sha512-D0WfRmU9TQ8I9PFx9Yc+EBHw+vSpIub4IDvQivcp26PtPrdMGAq5SDcpXEo/epqa/DXotVpekHiLNTg3iaKXBQ==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "internal/eslint-config-neshca": { "version": "0.0.0", "license": "MIT", @@ -358,6 +523,15 @@ "typescript": "5.3.2" } }, + "internal/next-common/node_modules/@types/node": { + "version": "20.10.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.0.tgz", + "integrity": "sha512-D0WfRmU9TQ8I9PFx9Yc+EBHw+vSpIub4IDvQivcp26PtPrdMGAq5SDcpXEo/epqa/DXotVpekHiLNTg3iaKXBQ==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "internal/next-common/node_modules/next": { "version": "14.0.4-canary.9", "resolved": "https://registry.npmjs.org/next/-/next-14.0.4-canary.9.tgz", @@ -419,6 +593,15 @@ "typescript": "5.3.2" } }, + "internal/next-lru-cache/node_modules/@types/node": { + "version": "20.10.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.0.tgz", + "integrity": "sha512-D0WfRmU9TQ8I9PFx9Yc+EBHw+vSpIub4IDvQivcp26PtPrdMGAq5SDcpXEo/epqa/DXotVpekHiLNTg3iaKXBQ==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "internal/prettier-config": { "name": "@neshca/prettier-config", "version": "0.0.0", @@ -1177,9 +1360,9 @@ } }, "node_modules/@esbuild/android-arm": { - "version": "0.19.7", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.19.7.tgz", - "integrity": "sha512-YGSPnndkcLo4PmVl2tKatEn+0mlVMr3yEpOOT0BeMria87PhvoJb5dg5f5Ft9fbCVgtAz4pWMzZVgSEGpDAlww==", + "version": "0.19.8", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.19.8.tgz", + "integrity": "sha512-31E2lxlGM1KEfivQl8Yf5aYU/mflz9g06H6S15ITUFQueMFtFjESRMoDSkvMo8thYvLBax+VKTPlpnx+sPicOA==", "cpu": [ "arm" ], @@ -1193,9 +1376,9 @@ } }, "node_modules/@esbuild/android-arm64": { - "version": "0.19.7", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.19.7.tgz", - "integrity": "sha512-YEDcw5IT7hW3sFKZBkCAQaOCJQLONVcD4bOyTXMZz5fr66pTHnAet46XAtbXAkJRfIn2YVhdC6R9g4xa27jQ1w==", + "version": "0.19.8", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.19.8.tgz", + "integrity": "sha512-B8JbS61bEunhfx8kasogFENgQfr/dIp+ggYXwTqdbMAgGDhRa3AaPpQMuQU0rNxDLECj6FhDzk1cF9WHMVwrtA==", "cpu": [ "arm64" ], @@ -1209,9 +1392,9 @@ } }, "node_modules/@esbuild/android-x64": { - "version": "0.19.7", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.19.7.tgz", - "integrity": "sha512-jhINx8DEjz68cChFvM72YzrqfwJuFbfvSxZAk4bebpngGfNNRm+zRl4rtT9oAX6N9b6gBcFaJHFew5Blf6CvUw==", + "version": "0.19.8", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.19.8.tgz", + "integrity": "sha512-rdqqYfRIn4jWOp+lzQttYMa2Xar3OK9Yt2fhOhzFXqg0rVWEfSclJvZq5fZslnz6ypHvVf3CT7qyf0A5pM682A==", "cpu": [ "x64" ], @@ -1225,9 +1408,9 @@ } }, "node_modules/@esbuild/darwin-arm64": { - "version": "0.19.7", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.19.7.tgz", - "integrity": "sha512-dr81gbmWN//3ZnBIm6YNCl4p3pjnabg1/ZVOgz2fJoUO1a3mq9WQ/1iuEluMs7mCL+Zwv7AY5e3g1hjXqQZ9Iw==", + "version": "0.19.8", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.19.8.tgz", + "integrity": "sha512-RQw9DemMbIq35Bprbboyf8SmOr4UXsRVxJ97LgB55VKKeJOOdvsIPy0nFyF2l8U+h4PtBx/1kRf0BelOYCiQcw==", "cpu": [ "arm64" ], @@ -1241,9 +1424,9 @@ } }, "node_modules/@esbuild/darwin-x64": { - "version": "0.19.7", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.19.7.tgz", - "integrity": "sha512-Lc0q5HouGlzQEwLkgEKnWcSazqr9l9OdV2HhVasWJzLKeOt0PLhHaUHuzb8s/UIya38DJDoUm74GToZ6Wc7NGQ==", + "version": "0.19.8", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.19.8.tgz", + "integrity": "sha512-3sur80OT9YdeZwIVgERAysAbwncom7b4bCI2XKLjMfPymTud7e/oY4y+ci1XVp5TfQp/bppn7xLw1n/oSQY3/Q==", "cpu": [ "x64" ], @@ -1257,9 +1440,9 @@ } }, "node_modules/@esbuild/freebsd-arm64": { - "version": "0.19.7", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.19.7.tgz", - "integrity": "sha512-+y2YsUr0CxDFF7GWiegWjGtTUF6gac2zFasfFkRJPkMAuMy9O7+2EH550VlqVdpEEchWMynkdhC9ZjtnMiHImQ==", + "version": "0.19.8", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.19.8.tgz", + "integrity": "sha512-WAnPJSDattvS/XtPCTj1tPoTxERjcTpH6HsMr6ujTT+X6rylVe8ggxk8pVxzf5U1wh5sPODpawNicF5ta/9Tmw==", "cpu": [ "arm64" ], @@ -1273,9 +1456,9 @@ } }, "node_modules/@esbuild/freebsd-x64": { - "version": "0.19.7", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.19.7.tgz", - "integrity": "sha512-CdXOxIbIzPJmJhrpmJTLx+o35NoiKBIgOvmvT+jeSadYiWJn0vFKsl+0bSG/5lwjNHoIDEyMYc/GAPR9jxusTA==", + "version": "0.19.8", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.19.8.tgz", + "integrity": "sha512-ICvZyOplIjmmhjd6mxi+zxSdpPTKFfyPPQMQTK/w+8eNK6WV01AjIztJALDtwNNfFhfZLux0tZLC+U9nSyA5Zg==", "cpu": [ "x64" ], @@ -1289,9 +1472,9 @@ } }, "node_modules/@esbuild/linux-arm": { - "version": "0.19.7", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.19.7.tgz", - "integrity": "sha512-Y+SCmWxsJOdQtjcBxoacn/pGW9HDZpwsoof0ttL+2vGcHokFlfqV666JpfLCSP2xLxFpF1lj7T3Ox3sr95YXww==", + "version": "0.19.8", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.19.8.tgz", + "integrity": "sha512-H4vmI5PYqSvosPaTJuEppU9oz1dq2A7Mr2vyg5TF9Ga+3+MGgBdGzcyBP7qK9MrwFQZlvNyJrvz6GuCaj3OukQ==", "cpu": [ "arm" ], @@ -1305,9 +1488,9 @@ } }, "node_modules/@esbuild/linux-arm64": { - "version": "0.19.7", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.19.7.tgz", - "integrity": "sha512-inHqdOVCkUhHNvuQPT1oCB7cWz9qQ/Cz46xmVe0b7UXcuIJU3166aqSunsqkgSGMtUCWOZw3+KMwI6otINuC9g==", + "version": "0.19.8", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.19.8.tgz", + "integrity": "sha512-z1zMZivxDLHWnyGOctT9JP70h0beY54xDDDJt4VpTX+iwA77IFsE1vCXWmprajJGa+ZYSqkSbRQ4eyLCpCmiCQ==", "cpu": [ "arm64" ], @@ -1321,9 +1504,9 @@ } }, "node_modules/@esbuild/linux-ia32": { - "version": "0.19.7", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.19.7.tgz", - "integrity": "sha512-2BbiL7nLS5ZO96bxTQkdO0euGZIUQEUXMTrqLxKUmk/Y5pmrWU84f+CMJpM8+EHaBPfFSPnomEaQiG/+Gmh61g==", + "version": "0.19.8", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.19.8.tgz", + "integrity": "sha512-1a8suQiFJmZz1khm/rDglOc8lavtzEMRo0v6WhPgxkrjcU0LkHj+TwBrALwoz/OtMExvsqbbMI0ChyelKabSvQ==", "cpu": [ "ia32" ], @@ -1337,9 +1520,9 @@ } }, "node_modules/@esbuild/linux-loong64": { - "version": "0.19.7", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.19.7.tgz", - "integrity": "sha512-BVFQla72KXv3yyTFCQXF7MORvpTo4uTA8FVFgmwVrqbB/4DsBFWilUm1i2Oq6zN36DOZKSVUTb16jbjedhfSHw==", + "version": "0.19.8", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.19.8.tgz", + "integrity": "sha512-fHZWS2JJxnXt1uYJsDv9+b60WCc2RlvVAy1F76qOLtXRO+H4mjt3Tr6MJ5l7Q78X8KgCFudnTuiQRBhULUyBKQ==", "cpu": [ "loong64" ], @@ -1353,9 +1536,9 @@ } }, "node_modules/@esbuild/linux-mips64el": { - "version": "0.19.7", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.19.7.tgz", - "integrity": "sha512-DzAYckIaK+pS31Q/rGpvUKu7M+5/t+jI+cdleDgUwbU7KdG2eC3SUbZHlo6Q4P1CfVKZ1lUERRFP8+q0ob9i2w==", + "version": "0.19.8", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.19.8.tgz", + "integrity": "sha512-Wy/z0EL5qZYLX66dVnEg9riiwls5IYnziwuju2oUiuxVc+/edvqXa04qNtbrs0Ukatg5HEzqT94Zs7J207dN5Q==", "cpu": [ "mips64el" ], @@ -1369,9 +1552,9 @@ } }, "node_modules/@esbuild/linux-ppc64": { - "version": "0.19.7", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.19.7.tgz", - "integrity": "sha512-JQ1p0SmUteNdUaaiRtyS59GkkfTW0Edo+e0O2sihnY4FoZLz5glpWUQEKMSzMhA430ctkylkS7+vn8ziuhUugQ==", + "version": "0.19.8", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.19.8.tgz", + "integrity": "sha512-ETaW6245wK23YIEufhMQ3HSeHO7NgsLx8gygBVldRHKhOlD1oNeNy/P67mIh1zPn2Hr2HLieQrt6tWrVwuqrxg==", "cpu": [ "ppc64" ], @@ -1385,9 +1568,9 @@ } }, "node_modules/@esbuild/linux-riscv64": { - "version": "0.19.7", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.19.7.tgz", - "integrity": "sha512-xGwVJ7eGhkprY/nB7L7MXysHduqjpzUl40+XoYDGC4UPLbnG+gsyS1wQPJ9lFPcxYAaDXbdRXd1ACs9AE9lxuw==", + "version": "0.19.8", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.19.8.tgz", + "integrity": "sha512-T2DRQk55SgoleTP+DtPlMrxi/5r9AeFgkhkZ/B0ap99zmxtxdOixOMI570VjdRCs9pE4Wdkz7JYrsPvsl7eESg==", "cpu": [ "riscv64" ], @@ -1401,9 +1584,9 @@ } }, "node_modules/@esbuild/linux-s390x": { - "version": "0.19.7", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.19.7.tgz", - "integrity": "sha512-U8Rhki5PVU0L0nvk+E8FjkV8r4Lh4hVEb9duR6Zl21eIEYEwXz8RScj4LZWA2i3V70V4UHVgiqMpszXvG0Yqhg==", + "version": "0.19.8", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.19.8.tgz", + "integrity": "sha512-NPxbdmmo3Bk7mbNeHmcCd7R7fptJaczPYBaELk6NcXxy7HLNyWwCyDJ/Xx+/YcNH7Im5dHdx9gZ5xIwyliQCbg==", "cpu": [ "s390x" ], @@ -1417,9 +1600,9 @@ } }, "node_modules/@esbuild/linux-x64": { - "version": "0.19.7", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.19.7.tgz", - "integrity": "sha512-ZYZopyLhm4mcoZXjFt25itRlocKlcazDVkB4AhioiL9hOWhDldU9n38g62fhOI4Pth6vp+Mrd5rFKxD0/S+7aQ==", + "version": "0.19.8", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.19.8.tgz", + "integrity": "sha512-lytMAVOM3b1gPypL2TRmZ5rnXl7+6IIk8uB3eLsV1JwcizuolblXRrc5ShPrO9ls/b+RTp+E6gbsuLWHWi2zGg==", "cpu": [ "x64" ], @@ -1433,9 +1616,9 @@ } }, "node_modules/@esbuild/netbsd-x64": { - "version": "0.19.7", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.19.7.tgz", - "integrity": "sha512-/yfjlsYmT1O3cum3J6cmGG16Fd5tqKMcg5D+sBYLaOQExheAJhqr8xOAEIuLo8JYkevmjM5zFD9rVs3VBcsjtQ==", + "version": "0.19.8", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.19.8.tgz", + "integrity": "sha512-hvWVo2VsXz/8NVt1UhLzxwAfo5sioj92uo0bCfLibB0xlOmimU/DeAEsQILlBQvkhrGjamP0/el5HU76HAitGw==", "cpu": [ "x64" ], @@ -1449,9 +1632,9 @@ } }, "node_modules/@esbuild/openbsd-x64": { - "version": "0.19.7", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.19.7.tgz", - "integrity": "sha512-MYDFyV0EW1cTP46IgUJ38OnEY5TaXxjoDmwiTXPjezahQgZd+j3T55Ht8/Q9YXBM0+T9HJygrSRGV5QNF/YVDQ==", + "version": "0.19.8", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.19.8.tgz", + "integrity": "sha512-/7Y7u77rdvmGTxR83PgaSvSBJCC2L3Kb1M/+dmSIvRvQPXXCuC97QAwMugBNG0yGcbEGfFBH7ojPzAOxfGNkwQ==", "cpu": [ "x64" ], @@ -1465,9 +1648,9 @@ } }, "node_modules/@esbuild/sunos-x64": { - "version": "0.19.7", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.19.7.tgz", - "integrity": "sha512-JcPvgzf2NN/y6X3UUSqP6jSS06V0DZAV/8q0PjsZyGSXsIGcG110XsdmuWiHM+pno7/mJF6fjH5/vhUz/vA9fw==", + "version": "0.19.8", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.19.8.tgz", + "integrity": "sha512-9Lc4s7Oi98GqFA4HzA/W2JHIYfnXbUYgekUP/Sm4BG9sfLjyv6GKKHKKVs83SMicBF2JwAX6A1PuOLMqpD001w==", "cpu": [ "x64" ], @@ -1481,9 +1664,9 @@ } }, "node_modules/@esbuild/win32-arm64": { - "version": "0.19.7", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.19.7.tgz", - "integrity": "sha512-ZA0KSYti5w5toax5FpmfcAgu3ZNJxYSRm0AW/Dao5up0YV1hDVof1NvwLomjEN+3/GMtaWDI+CIyJOMTRSTdMw==", + "version": "0.19.8", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.19.8.tgz", + "integrity": "sha512-rq6WzBGjSzihI9deW3fC2Gqiak68+b7qo5/3kmB6Gvbh/NYPA0sJhrnp7wgV4bNwjqM+R2AApXGxMO7ZoGhIJg==", "cpu": [ "arm64" ], @@ -1497,9 +1680,9 @@ } }, "node_modules/@esbuild/win32-ia32": { - "version": "0.19.7", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.19.7.tgz", - "integrity": "sha512-CTOnijBKc5Jpk6/W9hQMMvJnsSYRYgveN6O75DTACCY18RA2nqka8dTZR+x/JqXCRiKk84+5+bRKXUSbbwsS0A==", + "version": "0.19.8", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.19.8.tgz", + "integrity": "sha512-AIAbverbg5jMvJznYiGhrd3sumfwWs8572mIJL5NQjJa06P8KfCPWZQ0NwZbPQnbQi9OWSZhFVSUWjjIrn4hSw==", "cpu": [ "ia32" ], @@ -1513,9 +1696,9 @@ } }, "node_modules/@esbuild/win32-x64": { - "version": "0.19.7", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.19.7.tgz", - "integrity": "sha512-gRaP2sk6hc98N734luX4VpF318l3w+ofrtTu9j5L8EQXF+FzQKV6alCOHMVoJJHvVK/mGbwBXfOL1HETQu9IGQ==", + "version": "0.19.8", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.19.8.tgz", + "integrity": "sha512-bfZ0cQ1uZs2PqpulNL5j/3w+GDhP36k1K5c38QdQg+Swy51jFZWWeIkteNsufkQxp986wnqRRsb/bHbY1WQ7TA==", "cpu": [ "x64" ], @@ -1636,6 +1819,7 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/@fastify/busboy/-/busboy-2.1.0.tgz", "integrity": "sha512-+KpH+QxZU7O4675t3mnkQKcZZg56u+K/Ct2K+N2AZYNVK8kyeo/bI18tI8aPm3tvNNRyTWfj6s5tnGNlcbQRsA==", + "dev": true, "engines": { "node": ">=14" } @@ -1809,11 +1993,6 @@ "fs-extra": "^8.1.0" } }, - "node_modules/@manypkg/find-root/node_modules/@types/node": { - "version": "12.20.55", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", - "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" - }, "node_modules/@manypkg/find-root/node_modules/fs-extra": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", @@ -2180,9 +2359,9 @@ "integrity": "sha512-PPEYYdqjziVpjVnLx9340dYESLa35bHiARPz+jeJITsASTtY70av6lMKDJnG55UoG7owhAEGjSCCo1Nx0usXPg==" }, "node_modules/@next/eslint-plugin-next": { - "version": "14.0.4-canary.9", - "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.0.4-canary.9.tgz", - "integrity": "sha512-4UFzBCt4XvRiPgSrSYXja9vOC314eF+vMLV3fTWG5QEVte6IYQrdbwFgEF7ItbMLfdCf0S5doiIvvytDlHNxkw==", + "version": "14.0.4-canary.18", + "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.0.4-canary.18.tgz", + "integrity": "sha512-kSo5R2bLqeTvRGdunAvlBZJN4/CpMX5/mY+lW+dBoeC7oZeEUVCdInJ+XKyde/VSuStbxQswIabHScW3vmDJpw==", "dev": true, "dependencies": { "glob": "7.1.7" @@ -2779,9 +2958,9 @@ } }, "node_modules/@rollup/rollup-android-arm-eabi": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.5.1.tgz", - "integrity": "sha512-YaN43wTyEBaMqLDYeze+gQ4ZrW5RbTEGtT5o1GVDkhpdNcsLTnLRcLccvwy3E9wiDKWg9RIhuoy3JQKDRBfaZA==", + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.6.0.tgz", + "integrity": "sha512-keHkkWAe7OtdALGoutLY3utvthkGF+Y17ws9LYT8pxMBYXaCoH/8dXS2uzo6e8+sEhY7y/zi5RFo22Dy2lFpDw==", "cpu": [ "arm" ], @@ -2792,9 +2971,9 @@ ] }, "node_modules/@rollup/rollup-android-arm64": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.5.1.tgz", - "integrity": "sha512-n1bX+LCGlQVuPlCofO0zOKe1b2XkFozAVRoczT+yxWZPGnkEAKTTYVOGZz8N4sKuBnKMxDbfhUsB1uwYdup/sw==", + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.6.0.tgz", + "integrity": "sha512-y3Kt+34smKQNWilicPbBz/MXEY7QwDzMFNgwEWeYiOhUt9MTWKjHqe3EVkXwT2fR7izOvHpDWZ0o2IyD9SWX7A==", "cpu": [ "arm64" ], @@ -2805,9 +2984,9 @@ ] }, "node_modules/@rollup/rollup-darwin-arm64": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.5.1.tgz", - "integrity": "sha512-QqJBumdvfBqBBmyGHlKxje+iowZwrHna7pokj/Go3dV1PJekSKfmjKrjKQ/e6ESTGhkfPNLq3VXdYLAc+UtAQw==", + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.6.0.tgz", + "integrity": "sha512-oLzzxcUIHltHxOCmaXl+pkIlU+uhSxef5HfntW7RsLh1eHm+vJzjD9Oo4oUKso4YuP4PpbFJNlZjJuOrxo8dPg==", "cpu": [ "arm64" ], @@ -2818,9 +2997,9 @@ ] }, "node_modules/@rollup/rollup-darwin-x64": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.5.1.tgz", - "integrity": "sha512-RrkDNkR/P5AEQSPkxQPmd2ri8WTjSl0RYmuFOiEABkEY/FSg0a4riihWQGKDJ4LnV9gigWZlTMx2DtFGzUrYQw==", + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.6.0.tgz", + "integrity": "sha512-+ANnmjkcOBaV25n0+M0Bere3roeVAnwlKW65qagtuAfIxXF9YxUneRyAn/RDcIdRa7QrjRNJL3jR7T43ObGe8Q==", "cpu": [ "x64" ], @@ -2831,9 +3010,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm-gnueabihf": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.5.1.tgz", - "integrity": "sha512-ZFPxvUZmE+fkB/8D9y/SWl/XaDzNSaxd1TJUSE27XAKlRpQ2VNce/86bGd9mEUgL3qrvjJ9XTGwoX0BrJkYK/A==", + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.6.0.tgz", + "integrity": "sha512-tBTSIkjSVUyrekddpkAqKOosnj1Fc0ZY0rJL2bIEWPKqlEQk0paORL9pUIlt7lcGJi3LzMIlUGXvtNi1Z6MOCQ==", "cpu": [ "arm" ], @@ -2844,9 +3023,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-gnu": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.5.1.tgz", - "integrity": "sha512-FEuAjzVIld5WVhu+M2OewLmjmbXWd3q7Zcx+Rwy4QObQCqfblriDMMS7p7+pwgjZoo9BLkP3wa9uglQXzsB9ww==", + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.6.0.tgz", + "integrity": "sha512-Ed8uJI3kM11de9S0j67wAV07JUNhbAqIrDYhQBrQW42jGopgheyk/cdcshgGO4fW5Wjq97COCY/BHogdGvKVNQ==", "cpu": [ "arm64" ], @@ -2857,9 +3036,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-musl": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.5.1.tgz", - "integrity": "sha512-f5Gs8WQixqGRtI0Iq/cMqvFYmgFzMinuJO24KRfnv7Ohi/HQclwrBCYkzQu1XfLEEt3DZyvveq9HWo4bLJf1Lw==", + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.6.0.tgz", + "integrity": "sha512-mZoNQ/qK4D7SSY8v6kEsAAyDgznzLLuSFCA3aBHZTmf3HP/dW4tNLTtWh9+LfyO0Z1aUn+ecpT7IQ3WtIg3ViQ==", "cpu": [ "arm64" ], @@ -2870,9 +3049,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-gnu": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.5.1.tgz", - "integrity": "sha512-CWPkPGrFfN2vj3mw+S7A/4ZaU3rTV7AkXUr08W9lNP+UzOvKLVf34tWCqrKrfwQ0NTk5GFqUr2XGpeR2p6R4gw==", + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.6.0.tgz", + "integrity": "sha512-rouezFHpwCqdEXsqAfNsTgSWO0FoZ5hKv5p+TGO5KFhyN/dvYXNMqMolOb8BkyKcPqjYRBeT+Z6V3aM26rPaYg==", "cpu": [ "x64" ], @@ -2883,9 +3062,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-musl": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.5.1.tgz", - "integrity": "sha512-ZRETMFA0uVukUC9u31Ed1nx++29073goCxZtmZARwk5aF/ltuENaeTtRVsSQzFlzdd4J6L3qUm+EW8cbGt0CKQ==", + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.6.0.tgz", + "integrity": "sha512-Bbm+fyn3S6u51urfj3YnqBXg5vI2jQPncRRELaucmhBVyZkbWClQ1fEsRmdnCPpQOQfkpg9gZArvtMVkOMsh1w==", "cpu": [ "x64" ], @@ -2896,9 +3075,9 @@ ] }, "node_modules/@rollup/rollup-win32-arm64-msvc": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.5.1.tgz", - "integrity": "sha512-ihqfNJNb2XtoZMSCPeoo0cYMgU04ksyFIoOw5S0JUVbOhafLot+KD82vpKXOurE2+9o/awrqIxku9MRR9hozHQ==", + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.6.0.tgz", + "integrity": "sha512-+MRMcyx9L2kTrTUzYmR61+XVsliMG4odFb5UmqtiT8xOfEicfYAGEuF/D1Pww1+uZkYhBqAHpvju7VN+GnC3ng==", "cpu": [ "arm64" ], @@ -2909,9 +3088,9 @@ ] }, "node_modules/@rollup/rollup-win32-ia32-msvc": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.5.1.tgz", - "integrity": "sha512-zK9MRpC8946lQ9ypFn4gLpdwr5a01aQ/odiIJeL9EbgZDMgbZjjT/XzTqJvDfTmnE1kHdbG20sAeNlpc91/wbg==", + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.6.0.tgz", + "integrity": "sha512-rxfeE6K6s/Xl2HGeK6cO8SiQq3k/3BYpw7cfhW5Bk2euXNEpuzi2cc7llxx1si1QgwfjNtdRNTGqdBzGlFZGFw==", "cpu": [ "ia32" ], @@ -2922,9 +3101,9 @@ ] }, "node_modules/@rollup/rollup-win32-x64-msvc": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.5.1.tgz", - "integrity": "sha512-5I3Nz4Sb9TYOtkRwlH0ow+BhMH2vnh38tZ4J4mggE48M/YyJyp/0sPSxhw1UeS1+oBgQ8q7maFtSeKpeRJu41Q==", + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.6.0.tgz", + "integrity": "sha512-QqmCsydHS172Y0Kc13bkMXvipbJSvzeglBncJG3LsYJSiPlxYACz7MmJBs4A8l1oU+jfhYEIC/+AUSlvjmiX/g==", "cpu": [ "x64" ], @@ -3084,12 +3263,9 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "20.10.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.0.tgz", - "integrity": "sha512-D0WfRmU9TQ8I9PFx9Yc+EBHw+vSpIub4IDvQivcp26PtPrdMGAq5SDcpXEo/epqa/DXotVpekHiLNTg3iaKXBQ==", - "dependencies": { - "undici-types": "~5.26.4" - } + "version": "12.20.55", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", + "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" }, "node_modules/@types/node-fetch": { "version": "2.6.9", @@ -3146,16 +3322,16 @@ "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "6.12.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.12.0.tgz", - "integrity": "sha512-XOpZ3IyJUIV1b15M7HVOpgQxPPF7lGXgsfcEIu3yDxFPaf/xZKt7s9QO/pbk7vpWQyVulpJbu4E5LwpZiQo4kA==", + "version": "6.13.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.13.1.tgz", + "integrity": "sha512-5bQDGkXaxD46bPvQt08BUz9YSaO4S0fB1LB5JHQuXTfkGPI3+UUeS387C/e9jRie5GqT8u5kFTrMvAjtX4O5kA==", "dev": true, "dependencies": { "@eslint-community/regexpp": "^4.5.1", - "@typescript-eslint/scope-manager": "6.12.0", - "@typescript-eslint/type-utils": "6.12.0", - "@typescript-eslint/utils": "6.12.0", - "@typescript-eslint/visitor-keys": "6.12.0", + "@typescript-eslint/scope-manager": "6.13.1", + "@typescript-eslint/type-utils": "6.13.1", + "@typescript-eslint/utils": "6.13.1", + "@typescript-eslint/visitor-keys": "6.13.1", "debug": "^4.3.4", "graphemer": "^1.4.0", "ignore": "^5.2.4", @@ -3181,15 +3357,15 @@ } }, "node_modules/@typescript-eslint/parser": { - "version": "6.12.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.12.0.tgz", - "integrity": "sha512-s8/jNFPKPNRmXEnNXfuo1gemBdVmpQsK1pcu+QIvuNJuhFzGrpD7WjOcvDc/+uEdfzSYpNu7U/+MmbScjoQ6vg==", + "version": "6.13.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.13.1.tgz", + "integrity": "sha512-fs2XOhWCzRhqMmQf0eicLa/CWSaYss2feXsy7xBD/pLyWke/jCIVc2s1ikEAtSW7ina1HNhv7kONoEfVNEcdDQ==", "dev": true, "dependencies": { - "@typescript-eslint/scope-manager": "6.12.0", - "@typescript-eslint/types": "6.12.0", - "@typescript-eslint/typescript-estree": "6.12.0", - "@typescript-eslint/visitor-keys": "6.12.0", + "@typescript-eslint/scope-manager": "6.13.1", + "@typescript-eslint/types": "6.13.1", + "@typescript-eslint/typescript-estree": "6.13.1", + "@typescript-eslint/visitor-keys": "6.13.1", "debug": "^4.3.4" }, "engines": { @@ -3209,13 +3385,13 @@ } }, "node_modules/@typescript-eslint/scope-manager": { - "version": "6.12.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.12.0.tgz", - "integrity": "sha512-5gUvjg+XdSj8pcetdL9eXJzQNTl3RD7LgUiYTl8Aabdi8hFkaGSYnaS6BLc0BGNaDH+tVzVwmKtWvu0jLgWVbw==", + "version": "6.13.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.13.1.tgz", + "integrity": "sha512-BW0kJ7ceiKi56GbT2KKzZzN+nDxzQK2DS6x0PiSMPjciPgd/JRQGMibyaN2cPt2cAvuoH0oNvn2fwonHI+4QUQ==", "dev": true, "dependencies": { - "@typescript-eslint/types": "6.12.0", - "@typescript-eslint/visitor-keys": "6.12.0" + "@typescript-eslint/types": "6.13.1", + "@typescript-eslint/visitor-keys": "6.13.1" }, "engines": { "node": "^16.0.0 || >=18.0.0" @@ -3226,13 +3402,13 @@ } }, "node_modules/@typescript-eslint/type-utils": { - "version": "6.12.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.12.0.tgz", - "integrity": "sha512-WWmRXxhm1X8Wlquj+MhsAG4dU/Blvf1xDgGaYCzfvStP2NwPQh6KBvCDbiOEvaE0filhranjIlK/2fSTVwtBng==", + "version": "6.13.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.13.1.tgz", + "integrity": "sha512-A2qPlgpxx2v//3meMqQyB1qqTg1h1dJvzca7TugM3Yc2USDY+fsRBiojAEo92HO7f5hW5mjAUF6qobOPzlBCBQ==", "dev": true, "dependencies": { - "@typescript-eslint/typescript-estree": "6.12.0", - "@typescript-eslint/utils": "6.12.0", + "@typescript-eslint/typescript-estree": "6.13.1", + "@typescript-eslint/utils": "6.13.1", "debug": "^4.3.4", "ts-api-utils": "^1.0.1" }, @@ -3253,9 +3429,9 @@ } }, "node_modules/@typescript-eslint/types": { - "version": "6.12.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.12.0.tgz", - "integrity": "sha512-MA16p/+WxM5JG/F3RTpRIcuOghWO30//VEOvzubM8zuOOBYXsP+IfjoCXXiIfy2Ta8FRh9+IO9QLlaFQUU+10Q==", + "version": "6.13.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.13.1.tgz", + "integrity": "sha512-gjeEskSmiEKKFIbnhDXUyiqVma1gRCQNbVZ1C8q7Zjcxh3WZMbzWVfGE9rHfWd1msQtPS0BVD9Jz9jded44eKg==", "dev": true, "engines": { "node": "^16.0.0 || >=18.0.0" @@ -3266,13 +3442,13 @@ } }, "node_modules/@typescript-eslint/typescript-estree": { - "version": "6.12.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.12.0.tgz", - "integrity": "sha512-vw9E2P9+3UUWzhgjyyVczLWxZ3GuQNT7QpnIY3o5OMeLO/c8oHljGc8ZpryBMIyympiAAaKgw9e5Hl9dCWFOYw==", + "version": "6.13.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.13.1.tgz", + "integrity": "sha512-sBLQsvOC0Q7LGcUHO5qpG1HxRgePbT6wwqOiGLpR8uOJvPJbfs0mW3jPA3ujsDvfiVwVlWUDESNXv44KtINkUQ==", "dev": true, "dependencies": { - "@typescript-eslint/types": "6.12.0", - "@typescript-eslint/visitor-keys": "6.12.0", + "@typescript-eslint/types": "6.13.1", + "@typescript-eslint/visitor-keys": "6.13.1", "debug": "^4.3.4", "globby": "^11.1.0", "is-glob": "^4.0.3", @@ -3293,17 +3469,17 @@ } }, "node_modules/@typescript-eslint/utils": { - "version": "6.12.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.12.0.tgz", - "integrity": "sha512-LywPm8h3tGEbgfyjYnu3dauZ0U7R60m+miXgKcZS8c7QALO9uWJdvNoP+duKTk2XMWc7/Q3d/QiCuLN9X6SWyQ==", + "version": "6.13.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.13.1.tgz", + "integrity": "sha512-ouPn/zVoan92JgAegesTXDB/oUp6BP1v8WpfYcqh649ejNc9Qv+B4FF2Ff626kO1xg0wWwwG48lAJ4JuesgdOw==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.4.0", "@types/json-schema": "^7.0.12", "@types/semver": "^7.5.0", - "@typescript-eslint/scope-manager": "6.12.0", - "@typescript-eslint/types": "6.12.0", - "@typescript-eslint/typescript-estree": "6.12.0", + "@typescript-eslint/scope-manager": "6.13.1", + "@typescript-eslint/types": "6.13.1", + "@typescript-eslint/typescript-estree": "6.13.1", "semver": "^7.5.4" }, "engines": { @@ -3318,12 +3494,12 @@ } }, "node_modules/@typescript-eslint/visitor-keys": { - "version": "6.12.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.12.0.tgz", - "integrity": "sha512-rg3BizTZHF1k3ipn8gfrzDXXSFKyOEB5zxYXInQ6z0hUvmQlhaZQzK+YmHmNViMA9HzW5Q9+bPPt90bU6GQwyw==", + "version": "6.13.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.13.1.tgz", + "integrity": "sha512-NDhQUy2tg6XGNBGDRm1XybOHSia8mcXmlbKWoQP+nm1BIIMxa55shyJfZkHpEBN62KNPLrocSM2PdPcaLgDKMQ==", "dev": true, "dependencies": { - "@typescript-eslint/types": "6.12.0", + "@typescript-eslint/types": "6.13.1", "eslint-visitor-keys": "^3.4.1" }, "engines": { @@ -4140,9 +4316,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001564", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001564.tgz", - "integrity": "sha512-DqAOf+rhof+6GVx1y+xzbFPeOumfQnhYzVnZD6LAXijR77yPtm9mfOcqOnT3mpnJiZVT+kwLAFnRlZcIz+c6bg==", + "version": "1.0.30001565", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001565.tgz", + "integrity": "sha512-xrE//a3O7TP0vaJ8ikzkD2c2NgcVUvsEe2IvFTntV4Yd1Z9FVzh+gW+enX96L0psrbaFMcVcH2l90xNuGDWc8w==", "funding": [ { "type": "opencollective", @@ -5638,9 +5814,9 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.592", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.592.tgz", - "integrity": "sha512-D3NOkROIlF+d5ixnz7pAf3Lu/AuWpd6AYgI9O67GQXMXTcCP1gJQRotOq35eQy5Sb4hez33XH1YdTtILA7Udww==", + "version": "1.4.595", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.595.tgz", + "integrity": "sha512-+ozvXuamBhDOKvMNUQvecxfbyICmIAwS4GpLmR0bsiSBlGnLaOcs2Cj7J8XSbW+YEaN3Xl3ffgpm+srTUWFwFQ==", "dev": true }, "node_modules/elkjs": { @@ -5828,9 +6004,9 @@ } }, "node_modules/esbuild": { - "version": "0.19.7", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.19.7.tgz", - "integrity": "sha512-6brbTZVqxhqgbpqBR5MzErImcpA0SQdoKOkcWK/U30HtQxnokIpG3TX2r0IJqbFUzqLjhU/zC1S5ndgakObVCQ==", + "version": "0.19.8", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.19.8.tgz", + "integrity": "sha512-l7iffQpT2OrZfH2rXIp7/FkmaeZM0vxbxN9KfiCwGYuZqzMg/JdvX26R31Zxn/Pxvsrg3Y9N6XTcnknqDyyv4w==", "dev": true, "hasInstallScript": true, "bin": { @@ -5840,28 +6016,28 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.19.7", - "@esbuild/android-arm64": "0.19.7", - "@esbuild/android-x64": "0.19.7", - "@esbuild/darwin-arm64": "0.19.7", - "@esbuild/darwin-x64": "0.19.7", - "@esbuild/freebsd-arm64": "0.19.7", - "@esbuild/freebsd-x64": "0.19.7", - "@esbuild/linux-arm": "0.19.7", - "@esbuild/linux-arm64": "0.19.7", - "@esbuild/linux-ia32": "0.19.7", - "@esbuild/linux-loong64": "0.19.7", - "@esbuild/linux-mips64el": "0.19.7", - "@esbuild/linux-ppc64": "0.19.7", - "@esbuild/linux-riscv64": "0.19.7", - "@esbuild/linux-s390x": "0.19.7", - "@esbuild/linux-x64": "0.19.7", - "@esbuild/netbsd-x64": "0.19.7", - "@esbuild/openbsd-x64": "0.19.7", - "@esbuild/sunos-x64": "0.19.7", - "@esbuild/win32-arm64": "0.19.7", - "@esbuild/win32-ia32": "0.19.7", - "@esbuild/win32-x64": "0.19.7" + "@esbuild/android-arm": "0.19.8", + "@esbuild/android-arm64": "0.19.8", + "@esbuild/android-x64": "0.19.8", + "@esbuild/darwin-arm64": "0.19.8", + "@esbuild/darwin-x64": "0.19.8", + "@esbuild/freebsd-arm64": "0.19.8", + "@esbuild/freebsd-x64": "0.19.8", + "@esbuild/linux-arm": "0.19.8", + "@esbuild/linux-arm64": "0.19.8", + "@esbuild/linux-ia32": "0.19.8", + "@esbuild/linux-loong64": "0.19.8", + "@esbuild/linux-mips64el": "0.19.8", + "@esbuild/linux-ppc64": "0.19.8", + "@esbuild/linux-riscv64": "0.19.8", + "@esbuild/linux-s390x": "0.19.8", + "@esbuild/linux-x64": "0.19.8", + "@esbuild/netbsd-x64": "0.19.8", + "@esbuild/openbsd-x64": "0.19.8", + "@esbuild/sunos-x64": "0.19.8", + "@esbuild/win32-arm64": "0.19.8", + "@esbuild/win32-ia32": "0.19.8", + "@esbuild/win32-x64": "0.19.8" } }, "node_modules/escalade": { @@ -11721,9 +11897,9 @@ } }, "node_modules/openai": { - "version": "4.20.0", - "resolved": "https://registry.npmjs.org/openai/-/openai-4.20.0.tgz", - "integrity": "sha512-VbAYerNZFfIIeESS+OL9vgDkK8Mnri55n+jN0UN/HZeuM0ghGh6nDN6UGRZxslNgyJ7XmY/Ca9DO4YYyvrszGA==", + "version": "4.20.1", + "resolved": "https://registry.npmjs.org/openai/-/openai-4.20.1.tgz", + "integrity": "sha512-Dd3q8EvINfganZFtg6V36HjrMaihqRgIcKiHua4Nq9aw/PxOP48dhbsk8x5klrxajt5Lpnc1KTOG5i1S6BKAJA==", "peer": true, "dependencies": { "@types/node": "^18.11.18", @@ -11741,9 +11917,9 @@ } }, "node_modules/openai/node_modules/@types/node": { - "version": "18.18.12", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.12.tgz", - "integrity": "sha512-G7slVfkwOm7g8VqcEF1/5SXiMjP3Tbt+pXDU3r/qhlM2KkGm786DUD4xyMA2QzEElFrv/KZV9gjygv4LnkpbMQ==", + "version": "18.18.13", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.13.tgz", + "integrity": "sha512-vXYZGRrSCreZmq1rEjMRLXJhiy8MrIeVasx+PCVlP414N7CJLHnMf+juVvjdprHyH+XRy3zKZLHeNueOpJCn0g==", "peer": true, "dependencies": { "undici-types": "~5.26.4" @@ -13367,9 +13543,9 @@ "integrity": "sha512-IXgzBWvWQwE6PrDI05OvmXUIruQTcoMDzRsOd5CDvHCVLcLHMTSYvOK5Cm46kWqlV3yAbuSpBZdJ5oP5OUoStg==" }, "node_modules/rollup": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.5.1.tgz", - "integrity": "sha512-0EQribZoPKpb5z1NW/QYm3XSR//Xr8BeEXU49Lc/mQmpmVVG5jPUVrpc2iptup/0WMrY9mzas0fxH+TjYvG2CA==", + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.6.0.tgz", + "integrity": "sha512-R8i5Her4oO1LiMQ3jKf7MUglYV/mhQ5g5OKeld5CnkmPdIGo79FDDQYqPhq/PCVuTQVuxsWgIbDy9F+zdHn80w==", "dev": true, "bin": { "rollup": "dist/bin/rollup" @@ -13379,18 +13555,18 @@ "npm": ">=8.0.0" }, "optionalDependencies": { - "@rollup/rollup-android-arm-eabi": "4.5.1", - "@rollup/rollup-android-arm64": "4.5.1", - "@rollup/rollup-darwin-arm64": "4.5.1", - "@rollup/rollup-darwin-x64": "4.5.1", - "@rollup/rollup-linux-arm-gnueabihf": "4.5.1", - "@rollup/rollup-linux-arm64-gnu": "4.5.1", - "@rollup/rollup-linux-arm64-musl": "4.5.1", - "@rollup/rollup-linux-x64-gnu": "4.5.1", - "@rollup/rollup-linux-x64-musl": "4.5.1", - "@rollup/rollup-win32-arm64-msvc": "4.5.1", - "@rollup/rollup-win32-ia32-msvc": "4.5.1", - "@rollup/rollup-win32-x64-msvc": "4.5.1", + "@rollup/rollup-android-arm-eabi": "4.6.0", + "@rollup/rollup-android-arm64": "4.6.0", + "@rollup/rollup-darwin-arm64": "4.6.0", + "@rollup/rollup-darwin-x64": "4.6.0", + "@rollup/rollup-linux-arm-gnueabihf": "4.6.0", + "@rollup/rollup-linux-arm64-gnu": "4.6.0", + "@rollup/rollup-linux-arm64-musl": "4.6.0", + "@rollup/rollup-linux-x64-gnu": "4.6.0", + "@rollup/rollup-linux-x64-musl": "4.6.0", + "@rollup/rollup-win32-arm64-msvc": "4.6.0", + "@rollup/rollup-win32-ia32-msvc": "4.6.0", + "@rollup/rollup-win32-x64-msvc": "4.6.0", "fsevents": "~2.3.2" } }, @@ -14565,9 +14741,9 @@ } }, "node_modules/systeminformation": { - "version": "5.21.17", - "resolved": "https://registry.npmjs.org/systeminformation/-/systeminformation-5.21.17.tgz", - "integrity": "sha512-JZYRCbIjk3WuBV59A9/rTla2rROX+aAJ9uo2Z1dI+bjieORcukClN8rlM1zE9NYKpULSbaGc+KKct/870lO0DA==", + "version": "5.21.18", + "resolved": "https://registry.npmjs.org/systeminformation/-/systeminformation-5.21.18.tgz", + "integrity": "sha512-PEoWd95nI5170rvIk4fagLH0SmzwfGt18w0+ex1Ljb2bSXvDs9PQdLNexMazL5L6Pzd6wxlpoWUAjX+hNRKN7g==", "dev": true, "optional": true, "os": [ @@ -15758,9 +15934,10 @@ } }, "node_modules/undici": { - "version": "5.27.2", - "resolved": "https://registry.npmjs.org/undici/-/undici-5.27.2.tgz", - "integrity": "sha512-iS857PdOEy/y3wlM3yRp+6SNQQ6xU0mmZcwRSriqk+et/cwWAtwmIGf6WkoDN2EK/AMdCO/dfXzIwi+rFMrjjQ==", + "version": "5.28.1", + "resolved": "https://registry.npmjs.org/undici/-/undici-5.28.1.tgz", + "integrity": "sha512-xcIIvj1LOQH9zAL54iWFkuDEaIVEjLrru7qRpa3GrEEHk6OBhb/LycuUY2m7VCcTuDeLziXCxobQVyKExyGeIA==", + "dev": true, "dependencies": { "@fastify/busboy": "^2.0.0" }, @@ -16808,6 +16985,15 @@ "redis": ">=4.6" } }, + "packages/cache-handler/node_modules/@types/node": { + "version": "20.10.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.0.tgz", + "integrity": "sha512-D0WfRmU9TQ8I9PFx9Yc+EBHw+vSpIub4IDvQivcp26PtPrdMGAq5SDcpXEo/epqa/DXotVpekHiLNTg3iaKXBQ==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "packages/diffscribe": { "version": "0.2.1", "license": "MIT", @@ -16827,6 +17013,15 @@ "openai": "^4.12.3" } }, + "packages/diffscribe/node_modules/@types/node": { + "version": "20.10.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.0.tgz", + "integrity": "sha512-D0WfRmU9TQ8I9PFx9Yc+EBHw+vSpIub4IDvQivcp26PtPrdMGAq5SDcpXEo/epqa/DXotVpekHiLNTg3iaKXBQ==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "packages/json-replacer-reviver": { "name": "@neshca/json-replacer-reviver", "version": "1.1.0", @@ -16841,6 +17036,15 @@ "typescript": "5.3.2" } }, + "packages/json-replacer-reviver/node_modules/@types/node": { + "version": "20.10.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.0.tgz", + "integrity": "sha512-D0WfRmU9TQ8I9PFx9Yc+EBHw+vSpIub4IDvQivcp26PtPrdMGAq5SDcpXEo/epqa/DXotVpekHiLNTg3iaKXBQ==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "packages/server": { "name": "@neshca/server", "version": "0.5.1", @@ -16863,6 +17067,15 @@ "tsx": "4.5.0", "typescript": "5.3.2" } + }, + "packages/server/node_modules/@types/node": { + "version": "20.10.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.0.tgz", + "integrity": "sha512-D0WfRmU9TQ8I9PFx9Yc+EBHw+vSpIub4IDvQivcp26PtPrdMGAq5SDcpXEo/epqa/DXotVpekHiLNTg3iaKXBQ==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } } } } diff --git a/packages/cache-handler/README.md b/packages/cache-handler/README.md index 148a16c5..61194b2a 100644 --- a/packages/cache-handler/README.md +++ b/packages/cache-handler/README.md @@ -2,7 +2,7 @@ Flexible API to replace the default Next.js cache, accommodating custom cache solutions for multi-instance deployments. -🎉 Version 0.5.3 is out, introducing [async onCreation hook, async Handlers](https://caching-tools.github.io/next-shared-cache/redis-stack) and fixed types. This patch significantly enhances the library while ensuring compatibility with older synchronous Handlers. +🎉 Version 0.5.4 is out, introducing [async onCreation hook, async Handlers](https://caching-tools.github.io/next-shared-cache/redis-stack) and fixed types. This patch significantly enhances the library while ensuring compatibility with older synchronous Handlers. [![npm package](https://img.shields.io/npm/v/@neshca/cache-handler/latest.svg)](https://www.npmjs.com/package/@neshca/cache-handler) [![Dependencies](https://img.shields.io/npm/dm/@neshca/cache-handler)](https://www.npmjs.com/package/@neshca/cache-handler) @@ -29,7 +29,7 @@ This project is on its way to a stable release but will remain in beta until Nex ## Supported Next.js versions -Please use 14.0.2 or newer Next.js version until I resolve [this issue](https://github.com/caching-tools/next-shared-cache/issues/177). +Next.js 13.5.1 and above. ## Examples diff --git a/packages/cache-handler/src/cache-handler.ts b/packages/cache-handler/src/cache-handler.ts index e1612e37..755f0946 100644 --- a/packages/cache-handler/src/cache-handler.ts +++ b/packages/cache-handler/src/cache-handler.ts @@ -67,6 +67,8 @@ export type OnCreationHook = ( export class IncrementalCache implements CacheHandler { private static initPromise: Promise; + private static hasPagesDir = false; + private static diskAccessMode: CacheDiskAccessMode = 'read-yes/write-yes'; private static cache: Cache; @@ -111,6 +113,10 @@ export class IncrementalCache implements CacheHandler { }: CacheConfig = {}): void { this.diskAccessMode = diskAccessMode; + if (this.serverDistDir) { + this.hasPagesDir = fs.existsSync(path.join(this.serverDistDir, 'pages')); + } + if (this.serverDistDir && diskAccessMode === 'read-yes/write-yes') { this.tagsManifestPath = path.join(this.serverDistDir, '..', 'cache', 'fetch-cache', 'tags-manifest.json'); } @@ -163,14 +169,14 @@ export class IncrementalCache implements CacheHandler { private revalidatedTags: FileSystemCacheContext['revalidatedTags']; private appDir: FileSystemCacheContext['_appDir']; + private pagesDir: FileSystemCacheContext['_pagesDir'] | undefined; private serverDistDir: FileSystemCacheContext['serverDistDir']; - private pagesDir: FileSystemCacheContext['_pagesDir']; private readonly experimental: FileSystemCacheContext['experimental']; public constructor(context: FileSystemCacheContext) { this.revalidatedTags = context.revalidatedTags; this.appDir = Boolean(context._appDir); - this.pagesDir = Boolean(context._pagesDir); + this.pagesDir = context._pagesDir; this.serverDistDir = context.serverDistDir; this.experimental = context.experimental; @@ -459,17 +465,19 @@ export class IncrementalCache implements CacheHandler { // credits to Next.js for the following code private detectFileKind(pathname: string): 'app' | 'pages' { - if (!this.appDir && !this.pagesDir) { + const pagesDir = this.pagesDir ?? IncrementalCache.hasPagesDir; + + if (!this.appDir && !pagesDir) { throw new Error("Invariant: Can't determine file path kind, no page directory enabled"); } // If app directory isn't enabled, then assume it's pages and avoid the fs // hit. - if (!this.appDir && this.pagesDir) { + if (!this.appDir && pagesDir) { return 'pages'; } // Otherwise assume it's a pages file if the pages directory isn't enabled. - else if (this.appDir && !this.pagesDir) { + else if (this.appDir && !pagesDir) { return 'app'; } From b929011ad7141f78555cdfe973dfa883524bcffd Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 28 Nov 2023 18:42:55 +0300 Subject: [PATCH 003/458] Version Packages (#187) Co-authored-by: github-actions[bot] --- .changeset/large-crews-grab.md | 5 ----- packages/cache-handler/CHANGELOG.md | 6 ++++++ packages/cache-handler/package.json | 2 +- 3 files changed, 7 insertions(+), 6 deletions(-) delete mode 100644 .changeset/large-crews-grab.md diff --git a/.changeset/large-crews-grab.md b/.changeset/large-crews-grab.md deleted file mode 100644 index 981aa2da..00000000 --- a/.changeset/large-crews-grab.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@neshca/cache-handler': patch ---- - -Fix Pages router for older Next.js versions diff --git a/packages/cache-handler/CHANGELOG.md b/packages/cache-handler/CHANGELOG.md index 5a522b73..67af9bdc 100644 --- a/packages/cache-handler/CHANGELOG.md +++ b/packages/cache-handler/CHANGELOG.md @@ -1,5 +1,11 @@ # @neshca/cache-handler +## 0.5.4 + +### Patch Changes + +- 915ecef: Fix Pages router for older Next.js versions + ## 0.5.3 ### Patch Changes diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 704f78df..1968ec8c 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -1,6 +1,6 @@ { "name": "@neshca/cache-handler", - "version": "0.5.3", + "version": "0.5.4", "description": "Flexible API to replace the default Next.js cache, accommodating custom cache solutions for multi-instance deployments. ", "keywords": [ "cache", From d91769ec29932c31b2a35bf4897e909642eb54af Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 28 Nov 2023 19:18:33 +0300 Subject: [PATCH 004/458] Bump the definitely-typed group with 1 update (#182) Bumps the definitely-typed group with 1 update: [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react). - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react) --- updated-dependencies: - dependency-name: "@types/react" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- package-lock.json | 10 +++++----- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index e1fa345e..5c493822 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -26,7 +26,7 @@ "@next/eslint-plugin-next": "14.0.4-canary.18", "@playwright/test": "1.40.0", "@types/node": "20.10.0", - "@types/react": "18.2.38", + "@types/react": "18.2.39", "@types/react-dom": "18.2.17", "dotenv-cli": "7.3.0", "eslint-config-neshca": "*", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 879a1476..93509407 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -20,7 +20,7 @@ "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.0.3", "@types/node": "20.10.0", - "@types/react": "18.2.38", + "@types/react": "18.2.39", "@types/react-dom": "18.2.17", "eslint-config-neshca": "*", "typescript": "5.3.2" diff --git a/package-lock.json b/package-lock.json index 07174958..58ce6b35 100644 --- a/package-lock.json +++ b/package-lock.json @@ -47,7 +47,7 @@ "@next/eslint-plugin-next": "14.0.4-canary.18", "@playwright/test": "1.40.0", "@types/node": "20.10.0", - "@types/react": "18.2.38", + "@types/react": "18.2.39", "@types/react-dom": "18.2.17", "dotenv-cli": "7.3.0", "eslint-config-neshca": "*", @@ -266,7 +266,7 @@ "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.0.3", "@types/node": "20.10.0", - "@types/react": "18.2.38", + "@types/react": "18.2.39", "@types/react-dom": "18.2.17", "eslint-config-neshca": "*", "typescript": "5.3.2" @@ -3288,9 +3288,9 @@ "integrity": "sha512-ga8y9v9uyeiLdpKddhxYQkxNDrfvuPrlFb0N1qnZZByvcElJaXthF1UhvCh9TLWJBEHeNtdnbysW7Y6Uq8CVng==" }, "node_modules/@types/react": { - "version": "18.2.38", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.38.tgz", - "integrity": "sha512-cBBXHzuPtQK6wNthuVMV6IjHAFkdl/FOPFIlkd81/Cd1+IqkHu/A+w4g43kaQQoYHik/ruaQBDL72HyCy1vuMw==", + "version": "18.2.39", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.39.tgz", + "integrity": "sha512-Oiw+ppED6IremMInLV4HXGbfbG6GyziY3kqAwJYOR0PNbkYDmLWQA3a95EhdSmamsvbkJN96ZNN+YD+fGjzSBA==", "dependencies": { "@types/prop-types": "*", "@types/scheduler": "*", From b0e97658a91161e08bb8d8781f1f31a76c25a10c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 29 Nov 2023 01:08:37 +0300 Subject: [PATCH 005/458] Bump tsx from 4.5.0 to 4.6.0 (#188) Bumps [tsx](https://github.com/privatenumber/tsx) from 4.5.0 to 4.6.0. - [Release notes](https://github.com/privatenumber/tsx/releases) - [Changelog](https://github.com/privatenumber/tsx/blob/develop/release.config.cjs) - [Commits](https://github.com/privatenumber/tsx/compare/v4.5.0...v4.6.0) --- updated-dependencies: - dependency-name: tsx dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- internal/backend/package.json | 2 +- package-lock.json | 16 ++++++++-------- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 5 files changed, 12 insertions(+), 12 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 5c493822..47301fe6 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -34,7 +34,7 @@ "pm2": "5.3.0", "redis": "4.6.11", "rimraf": "5.0.5", - "tsx": "4.5.0", + "tsx": "4.6.0", "typescript": "5.3.2" } } diff --git a/internal/backend/package.json b/internal/backend/package.json index 7b74f342..db74370d 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -20,7 +20,7 @@ "eslint-config-neshca": "*", "pino-pretty": "10.2.3", "rimraf": "5.0.5", - "tsx": "4.5.0", + "tsx": "4.6.0", "typescript": "5.3.2" } } diff --git a/package-lock.json b/package-lock.json index 58ce6b35..1cb2b2fc 100644 --- a/package-lock.json +++ b/package-lock.json @@ -55,7 +55,7 @@ "pm2": "5.3.0", "redis": "4.6.11", "rimraf": "5.0.5", - "tsx": "4.5.0", + "tsx": "4.6.0", "typescript": "5.3.2" } }, @@ -404,7 +404,7 @@ "eslint-config-neshca": "*", "pino-pretty": "10.2.3", "rimraf": "5.0.5", - "tsx": "4.5.0", + "tsx": "4.6.0", "typescript": "5.3.2" } }, @@ -15193,9 +15193,9 @@ "dev": true }, "node_modules/tsx": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.5.0.tgz", - "integrity": "sha512-hgxdziy9KLaHh9KE+a6tIZFP6kb0MLq/1D0sJVifbGP4QVEYhy6+2FNn7MyCm1pMc63p9CW/L1OzdqTNPxs6rg==", + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.6.0.tgz", + "integrity": "sha512-HLHaDQ78mly4Pd5co6tWQOiNVYoYYAPUcwSSZK4bcs3zSEsg+/67LS/ReHook0E7DKPfe1J5jc0ocIhUrnaR4w==", "dev": true, "dependencies": { "esbuild": "~0.18.20", @@ -16964,7 +16964,7 @@ }, "packages/cache-handler": { "name": "@neshca/cache-handler", - "version": "0.5.3", + "version": "0.5.4", "license": "MIT", "dependencies": { "@neshca/json-replacer-reviver": "*", @@ -17032,7 +17032,7 @@ "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", - "tsx": "4.5.0", + "tsx": "4.6.0", "typescript": "5.3.2" } }, @@ -17064,7 +17064,7 @@ "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", - "tsx": "4.5.0", + "tsx": "4.6.0", "typescript": "5.3.2" } }, diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index c6ae1844..0ad267d4 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -33,7 +33,7 @@ "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", - "tsx": "4.5.0", + "tsx": "4.6.0", "typescript": "5.3.2" } } diff --git a/packages/server/package.json b/packages/server/package.json index 75892085..a55e12f9 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -37,7 +37,7 @@ "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", - "tsx": "4.5.0", + "tsx": "4.6.0", "typescript": "5.3.2" }, "distTags": [ From 6debc79a84fa0f5a4d85d958c5f5564256c92ffb Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 29 Nov 2023 09:27:26 +0300 Subject: [PATCH 006/458] Bump @changesets/cli from 2.26.2 to 2.27.1 (#189) Bumps [@changesets/cli](https://github.com/changesets/changesets) from 2.26.2 to 2.27.1. - [Release notes](https://github.com/changesets/changesets/releases) - [Changelog](https://github.com/changesets/changesets/blob/main/docs/modifying-changelog-format.md) - [Commits](https://github.com/changesets/changesets/compare/@changesets/cli@2.26.2...@changesets/cli@2.27.1) --- updated-dependencies: - dependency-name: "@changesets/cli" dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 202 +++++++++++++++++++++------------------------- package.json | 2 +- 2 files changed, 92 insertions(+), 112 deletions(-) diff --git a/package-lock.json b/package-lock.json index 1cb2b2fc..2da1dbdd 100644 --- a/package-lock.json +++ b/package-lock.json @@ -15,7 +15,7 @@ "internal/*" ], "dependencies": { - "@changesets/cli": "2.26.2" + "@changesets/cli": "2.27.1" }, "devDependencies": { "@actions/core": "1.10.1", @@ -1120,15 +1120,15 @@ "integrity": "sha512-s3jaWicZd0pkP0jf5ysyHUI/RE7MHos6qlToFcGWXVp+ykHOy77OUMrfbgJ9it2C5bow7OIQwYYaHjk9XlBQ2A==" }, "node_modules/@changesets/apply-release-plan": { - "version": "6.1.4", - "resolved": "https://registry.npmjs.org/@changesets/apply-release-plan/-/apply-release-plan-6.1.4.tgz", - "integrity": "sha512-FMpKF1fRlJyCZVYHr3CbinpZZ+6MwvOtWUuO8uo+svcATEoc1zRDcj23pAurJ2TZ/uVz1wFHH6K3NlACy0PLew==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@changesets/apply-release-plan/-/apply-release-plan-7.0.0.tgz", + "integrity": "sha512-vfi69JR416qC9hWmFGSxj7N6wA5J222XNBmezSVATPWDVPIF7gkd4d8CpbEbXmRWbVrkoli3oerGS6dcL/BGsQ==", "dependencies": { "@babel/runtime": "^7.20.1", - "@changesets/config": "^2.3.1", - "@changesets/get-version-range-type": "^0.3.2", - "@changesets/git": "^2.0.0", - "@changesets/types": "^5.2.1", + "@changesets/config": "^3.0.0", + "@changesets/get-version-range-type": "^0.4.0", + "@changesets/git": "^3.0.0", + "@changesets/types": "^6.0.0", "@manypkg/get-packages": "^1.1.3", "detect-indent": "^6.0.0", "fs-extra": "^7.0.1", @@ -1154,55 +1154,54 @@ } }, "node_modules/@changesets/assemble-release-plan": { - "version": "5.2.4", - "resolved": "https://registry.npmjs.org/@changesets/assemble-release-plan/-/assemble-release-plan-5.2.4.tgz", - "integrity": "sha512-xJkWX+1/CUaOUWTguXEbCDTyWJFECEhmdtbkjhn5GVBGxdP/JwaHBIU9sW3FR6gD07UwZ7ovpiPclQZs+j+mvg==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/@changesets/assemble-release-plan/-/assemble-release-plan-6.0.0.tgz", + "integrity": "sha512-4QG7NuisAjisbW4hkLCmGW2lRYdPrKzro+fCtZaILX+3zdUELSvYjpL4GTv0E4aM9Mef3PuIQp89VmHJ4y2bfw==", "dependencies": { "@babel/runtime": "^7.20.1", - "@changesets/errors": "^0.1.4", - "@changesets/get-dependents-graph": "^1.3.6", - "@changesets/types": "^5.2.1", + "@changesets/errors": "^0.2.0", + "@changesets/get-dependents-graph": "^2.0.0", + "@changesets/types": "^6.0.0", "@manypkg/get-packages": "^1.1.3", "semver": "^7.5.3" } }, "node_modules/@changesets/changelog-git": { - "version": "0.1.14", - "resolved": "https://registry.npmjs.org/@changesets/changelog-git/-/changelog-git-0.1.14.tgz", - "integrity": "sha512-+vRfnKtXVWsDDxGctOfzJsPhaCdXRYoe+KyWYoq5X/GqoISREiat0l3L8B0a453B2B4dfHGcZaGyowHbp9BSaA==", + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@changesets/changelog-git/-/changelog-git-0.2.0.tgz", + "integrity": "sha512-bHOx97iFI4OClIT35Lok3sJAwM31VbUM++gnMBV16fdbtBhgYu4dxsphBF/0AZZsyAHMrnM0yFcj5gZM1py6uQ==", "dependencies": { - "@changesets/types": "^5.2.1" + "@changesets/types": "^6.0.0" } }, "node_modules/@changesets/cli": { - "version": "2.26.2", - "resolved": "https://registry.npmjs.org/@changesets/cli/-/cli-2.26.2.tgz", - "integrity": "sha512-dnWrJTmRR8bCHikJHl9b9HW3gXACCehz4OasrXpMp7sx97ECuBGGNjJhjPhdZNCvMy9mn4BWdplI323IbqsRig==", + "version": "2.27.1", + "resolved": "https://registry.npmjs.org/@changesets/cli/-/cli-2.27.1.tgz", + "integrity": "sha512-iJ91xlvRnnrJnELTp4eJJEOPjgpF3NOh4qeQehM6Ugiz9gJPRZ2t+TsXun6E3AMN4hScZKjqVXl0TX+C7AB3ZQ==", "dependencies": { "@babel/runtime": "^7.20.1", - "@changesets/apply-release-plan": "^6.1.4", - "@changesets/assemble-release-plan": "^5.2.4", - "@changesets/changelog-git": "^0.1.14", - "@changesets/config": "^2.3.1", - "@changesets/errors": "^0.1.4", - "@changesets/get-dependents-graph": "^1.3.6", - "@changesets/get-release-plan": "^3.0.17", - "@changesets/git": "^2.0.0", - "@changesets/logger": "^0.0.5", - "@changesets/pre": "^1.0.14", - "@changesets/read": "^0.5.9", - "@changesets/types": "^5.2.1", - "@changesets/write": "^0.2.3", + "@changesets/apply-release-plan": "^7.0.0", + "@changesets/assemble-release-plan": "^6.0.0", + "@changesets/changelog-git": "^0.2.0", + "@changesets/config": "^3.0.0", + "@changesets/errors": "^0.2.0", + "@changesets/get-dependents-graph": "^2.0.0", + "@changesets/get-release-plan": "^4.0.0", + "@changesets/git": "^3.0.0", + "@changesets/logger": "^0.1.0", + "@changesets/pre": "^2.0.0", + "@changesets/read": "^0.6.0", + "@changesets/types": "^6.0.0", + "@changesets/write": "^0.3.0", "@manypkg/get-packages": "^1.1.3", - "@types/is-ci": "^3.0.0", "@types/semver": "^7.5.0", "ansi-colors": "^4.1.3", "chalk": "^2.1.0", + "ci-info": "^3.7.0", "enquirer": "^2.3.0", "external-editor": "^3.1.0", "fs-extra": "^7.0.1", "human-id": "^1.0.2", - "is-ci": "^3.0.1", "meow": "^6.0.0", "outdent": "^0.5.0", "p-limit": "^2.2.0", @@ -1218,33 +1217,33 @@ } }, "node_modules/@changesets/config": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@changesets/config/-/config-2.3.1.tgz", - "integrity": "sha512-PQXaJl82CfIXddUOppj4zWu+987GCw2M+eQcOepxN5s+kvnsZOwjEJO3DH9eVy+OP6Pg/KFEWdsECFEYTtbg6w==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@changesets/config/-/config-3.0.0.tgz", + "integrity": "sha512-o/rwLNnAo/+j9Yvw9mkBQOZySDYyOr/q+wptRLcAVGlU6djOeP9v1nlalbL9MFsobuBVQbZCTp+dIzdq+CLQUA==", "dependencies": { - "@changesets/errors": "^0.1.4", - "@changesets/get-dependents-graph": "^1.3.6", - "@changesets/logger": "^0.0.5", - "@changesets/types": "^5.2.1", + "@changesets/errors": "^0.2.0", + "@changesets/get-dependents-graph": "^2.0.0", + "@changesets/logger": "^0.1.0", + "@changesets/types": "^6.0.0", "@manypkg/get-packages": "^1.1.3", "fs-extra": "^7.0.1", "micromatch": "^4.0.2" } }, "node_modules/@changesets/errors": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/@changesets/errors/-/errors-0.1.4.tgz", - "integrity": "sha512-HAcqPF7snsUJ/QzkWoKfRfXushHTu+K5KZLJWPb34s4eCZShIf8BFO3fwq6KU8+G7L5KdtN2BzQAXOSXEyiY9Q==", + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@changesets/errors/-/errors-0.2.0.tgz", + "integrity": "sha512-6BLOQUscTpZeGljvyQXlWOItQyU71kCdGz7Pi8H8zdw6BI0g3m43iL4xKUVPWtG+qrrL9DTjpdn8eYuCQSRpow==", "dependencies": { "extendable-error": "^0.1.5" } }, "node_modules/@changesets/get-dependents-graph": { - "version": "1.3.6", - "resolved": "https://registry.npmjs.org/@changesets/get-dependents-graph/-/get-dependents-graph-1.3.6.tgz", - "integrity": "sha512-Q/sLgBANmkvUm09GgRsAvEtY3p1/5OCzgBE5vX3vgb5CvW0j7CEljocx5oPXeQSNph6FXulJlXV3Re/v3K3P3Q==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@changesets/get-dependents-graph/-/get-dependents-graph-2.0.0.tgz", + "integrity": "sha512-cafUXponivK4vBgZ3yLu944mTvam06XEn2IZGjjKc0antpenkYANXiiE6GExV/yKdsCnE8dXVZ25yGqLYZmScA==", "dependencies": { - "@changesets/types": "^5.2.1", + "@changesets/types": "^6.0.0", "@manypkg/get-packages": "^1.1.3", "chalk": "^2.1.0", "fs-extra": "^7.0.1", @@ -1252,32 +1251,32 @@ } }, "node_modules/@changesets/get-release-plan": { - "version": "3.0.17", - "resolved": "https://registry.npmjs.org/@changesets/get-release-plan/-/get-release-plan-3.0.17.tgz", - "integrity": "sha512-6IwKTubNEgoOZwDontYc2x2cWXfr6IKxP3IhKeK+WjyD6y3M4Gl/jdQvBw+m/5zWILSOCAaGLu2ZF6Q+WiPniw==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@changesets/get-release-plan/-/get-release-plan-4.0.0.tgz", + "integrity": "sha512-9L9xCUeD/Tb6L/oKmpm8nyzsOzhdNBBbt/ZNcjynbHC07WW4E1eX8NMGC5g5SbM5z/V+MOrYsJ4lRW41GCbg3w==", "dependencies": { "@babel/runtime": "^7.20.1", - "@changesets/assemble-release-plan": "^5.2.4", - "@changesets/config": "^2.3.1", - "@changesets/pre": "^1.0.14", - "@changesets/read": "^0.5.9", - "@changesets/types": "^5.2.1", + "@changesets/assemble-release-plan": "^6.0.0", + "@changesets/config": "^3.0.0", + "@changesets/pre": "^2.0.0", + "@changesets/read": "^0.6.0", + "@changesets/types": "^6.0.0", "@manypkg/get-packages": "^1.1.3" } }, "node_modules/@changesets/get-version-range-type": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@changesets/get-version-range-type/-/get-version-range-type-0.3.2.tgz", - "integrity": "sha512-SVqwYs5pULYjYT4op21F2pVbcrca4qA/bAA3FmFXKMN7Y+HcO8sbZUTx3TAy2VXulP2FACd1aC7f2nTuqSPbqg==" + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/@changesets/get-version-range-type/-/get-version-range-type-0.4.0.tgz", + "integrity": "sha512-hwawtob9DryoGTpixy1D3ZXbGgJu1Rhr+ySH2PvTLHvkZuQ7sRT4oQwMh0hbqZH1weAooedEjRsbrWcGLCeyVQ==" }, "node_modules/@changesets/git": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@changesets/git/-/git-2.0.0.tgz", - "integrity": "sha512-enUVEWbiqUTxqSnmesyJGWfzd51PY4H7mH9yUw0hPVpZBJ6tQZFMU3F3mT/t9OJ/GjyiM4770i+sehAn6ymx6A==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@changesets/git/-/git-3.0.0.tgz", + "integrity": "sha512-vvhnZDHe2eiBNRFHEgMiGd2CT+164dfYyrJDhwwxTVD/OW0FUD6G7+4DIx1dNwkwjHyzisxGAU96q0sVNBns0w==", "dependencies": { "@babel/runtime": "^7.20.1", - "@changesets/errors": "^0.1.4", - "@changesets/types": "^5.2.1", + "@changesets/errors": "^0.2.0", + "@changesets/types": "^6.0.0", "@manypkg/get-packages": "^1.1.3", "is-subdir": "^1.1.1", "micromatch": "^4.0.2", @@ -1285,61 +1284,61 @@ } }, "node_modules/@changesets/logger": { - "version": "0.0.5", - "resolved": "https://registry.npmjs.org/@changesets/logger/-/logger-0.0.5.tgz", - "integrity": "sha512-gJyZHomu8nASHpaANzc6bkQMO9gU/ib20lqew1rVx753FOxffnCrJlGIeQVxNWCqM+o6OOleCo/ivL8UAO5iFw==", + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/@changesets/logger/-/logger-0.1.0.tgz", + "integrity": "sha512-pBrJm4CQm9VqFVwWnSqKEfsS2ESnwqwH+xR7jETxIErZcfd1u2zBSqrHbRHR7xjhSgep9x2PSKFKY//FAshA3g==", "dependencies": { "chalk": "^2.1.0" } }, "node_modules/@changesets/parse": { - "version": "0.3.16", - "resolved": "https://registry.npmjs.org/@changesets/parse/-/parse-0.3.16.tgz", - "integrity": "sha512-127JKNd167ayAuBjUggZBkmDS5fIKsthnr9jr6bdnuUljroiERW7FBTDNnNVyJ4l69PzR57pk6mXQdtJyBCJKg==", + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/@changesets/parse/-/parse-0.4.0.tgz", + "integrity": "sha512-TS/9KG2CdGXS27S+QxbZXgr8uPsP4yNJYb4BC2/NeFUj80Rni3TeD2qwWmabymxmrLo7JEsytXH1FbpKTbvivw==", "dependencies": { - "@changesets/types": "^5.2.1", + "@changesets/types": "^6.0.0", "js-yaml": "^3.13.1" } }, "node_modules/@changesets/pre": { - "version": "1.0.14", - "resolved": "https://registry.npmjs.org/@changesets/pre/-/pre-1.0.14.tgz", - "integrity": "sha512-dTsHmxQWEQekHYHbg+M1mDVYFvegDh9j/kySNuDKdylwfMEevTeDouR7IfHNyVodxZXu17sXoJuf2D0vi55FHQ==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@changesets/pre/-/pre-2.0.0.tgz", + "integrity": "sha512-HLTNYX/A4jZxc+Sq8D1AMBsv+1qD6rmmJtjsCJa/9MSRybdxh0mjbTvE6JYZQ/ZiQ0mMlDOlGPXTm9KLTU3jyw==", "dependencies": { "@babel/runtime": "^7.20.1", - "@changesets/errors": "^0.1.4", - "@changesets/types": "^5.2.1", + "@changesets/errors": "^0.2.0", + "@changesets/types": "^6.0.0", "@manypkg/get-packages": "^1.1.3", "fs-extra": "^7.0.1" } }, "node_modules/@changesets/read": { - "version": "0.5.9", - "resolved": "https://registry.npmjs.org/@changesets/read/-/read-0.5.9.tgz", - "integrity": "sha512-T8BJ6JS6j1gfO1HFq50kU3qawYxa4NTbI/ASNVVCBTsKquy2HYwM9r7ZnzkiMe8IEObAJtUVGSrePCOxAK2haQ==", + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/@changesets/read/-/read-0.6.0.tgz", + "integrity": "sha512-ZypqX8+/im1Fm98K4YcZtmLKgjs1kDQ5zHpc2U1qdtNBmZZfo/IBiG162RoP0CUF05tvp2y4IspH11PLnPxuuw==", "dependencies": { "@babel/runtime": "^7.20.1", - "@changesets/git": "^2.0.0", - "@changesets/logger": "^0.0.5", - "@changesets/parse": "^0.3.16", - "@changesets/types": "^5.2.1", + "@changesets/git": "^3.0.0", + "@changesets/logger": "^0.1.0", + "@changesets/parse": "^0.4.0", + "@changesets/types": "^6.0.0", "chalk": "^2.1.0", "fs-extra": "^7.0.1", "p-filter": "^2.1.0" } }, "node_modules/@changesets/types": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/@changesets/types/-/types-5.2.1.tgz", - "integrity": "sha512-myLfHbVOqaq9UtUKqR/nZA/OY7xFjQMdfgfqeZIBK4d0hA6pgxArvdv8M+6NUzzBsjWLOtvApv8YHr4qM+Kpfg==" + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/@changesets/types/-/types-6.0.0.tgz", + "integrity": "sha512-b1UkfNulgKoWfqyHtzKS5fOZYSJO+77adgL7DLRDr+/7jhChN+QcHnbjiQVOz/U+Ts3PGNySq7diAItzDgugfQ==" }, "node_modules/@changesets/write": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/@changesets/write/-/write-0.2.3.tgz", - "integrity": "sha512-Dbamr7AIMvslKnNYsLFafaVORx4H0pvCA2MHqgtNCySMe1blImEyAEOzDmcgKAkgz4+uwoLz7demIrX+JBr/Xw==", + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/@changesets/write/-/write-0.3.0.tgz", + "integrity": "sha512-slGLb21fxZVUYbyea+94uFiD6ntQW0M2hIKNznFizDhZPDgn2c/fv1UzzlW43RVzh1BEDuIqW6hzlJ1OflNmcw==", "dependencies": { "@babel/runtime": "^7.20.1", - "@changesets/types": "^5.2.1", + "@changesets/types": "^6.0.0", "fs-extra": "^7.0.1", "human-id": "^1.0.2", "prettier": "^2.7.1" @@ -3209,14 +3208,6 @@ "@types/unist": "^2" } }, - "node_modules/@types/is-ci": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@types/is-ci/-/is-ci-3.0.4.tgz", - "integrity": "sha512-AkCYCmwlXeuH89DagDCzvCAyltI2v9lh3U3DqSg/GrBYoReAaWwxfXCqMx9UV5MajLZ4ZFwZzV4cABGIxk2XRw==", - "dependencies": { - "ci-info": "^3.1.0" - } - }, "node_modules/@types/js-yaml": { "version": "4.0.9", "resolved": "https://registry.npmjs.org/@types/js-yaml/-/js-yaml-4.0.9.tgz", @@ -8969,17 +8960,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-ci": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-3.0.1.tgz", - "integrity": "sha512-ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ==", - "dependencies": { - "ci-info": "^3.2.0" - }, - "bin": { - "is-ci": "bin.js" - } - }, "node_modules/is-core-module": { "version": "2.13.1", "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", diff --git a/package.json b/package.json index d2d6e389..83bcd3b5 100644 --- a/package.json +++ b/package.json @@ -29,7 +29,7 @@ "version-packages": "changeset version && npm run format" }, "dependencies": { - "@changesets/cli": "2.26.2" + "@changesets/cli": "2.27.1" }, "devDependencies": { "@actions/core": "1.10.1", From f5ce4113897a8bb415b2f583fcfbf1f422a5d908 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 30 Nov 2023 10:31:48 +0300 Subject: [PATCH 007/458] Bump the definitely-typed group with 1 update (#190) Bumps the definitely-typed group with 1 update: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node). - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) --- updated-dependencies: - dependency-name: "@types/node" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- internal/backend/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 113 ++++---------------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 10 files changed, 29 insertions(+), 102 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 47301fe6..a27b1734 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -25,7 +25,7 @@ "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.0.4-canary.18", "@playwright/test": "1.40.0", - "@types/node": "20.10.0", + "@types/node": "20.10.1", "@types/react": "18.2.39", "@types/react-dom": "18.2.17", "dotenv-cli": "7.3.0", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 93509407..009235c8 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -19,7 +19,7 @@ "devDependencies": { "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.0.3", - "@types/node": "20.10.0", + "@types/node": "20.10.1", "@types/react": "18.2.39", "@types/react-dom": "18.2.17", "eslint-config-neshca": "*", diff --git a/internal/backend/package.json b/internal/backend/package.json index db74370d..0f55d8ed 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -16,7 +16,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.10.0", + "@types/node": "20.10.1", "eslint-config-neshca": "*", "pino-pretty": "10.2.3", "rimraf": "5.0.5", diff --git a/internal/next-common/package.json b/internal/next-common/package.json index 1b934ded..a95efc95 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -16,7 +16,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.10.0", + "@types/node": "20.10.1", "eslint-config-neshca": "*", "rimraf": "5.0.5", "typescript": "5.3.2" diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index 8e9d2cc0..2d55cccb 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -17,7 +17,7 @@ "devDependencies": { "@neshca/next-common": "*", "@neshca/tsconfig": "*", - "@types/node": "20.10.0", + "@types/node": "20.10.1", "eslint-config-neshca": "*", "rimraf": "5.0.5", "typescript": "5.3.2" diff --git a/package-lock.json b/package-lock.json index 2da1dbdd..974f5bc0 100644 --- a/package-lock.json +++ b/package-lock.json @@ -46,7 +46,7 @@ "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.0.4-canary.18", "@playwright/test": "1.40.0", - "@types/node": "20.10.0", + "@types/node": "20.10.1", "@types/react": "18.2.39", "@types/react-dom": "18.2.17", "dotenv-cli": "7.3.0", @@ -199,15 +199,6 @@ "node": ">= 10" } }, - "apps/cache-testing/node_modules/@types/node": { - "version": "20.10.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.0.tgz", - "integrity": "sha512-D0WfRmU9TQ8I9PFx9Yc+EBHw+vSpIub4IDvQivcp26PtPrdMGAq5SDcpXEo/epqa/DXotVpekHiLNTg3iaKXBQ==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "apps/cache-testing/node_modules/next": { "version": "14.0.4-canary.18", "resolved": "https://registry.npmjs.org/next/-/next-14.0.4-canary.18.tgz", @@ -265,7 +256,7 @@ "devDependencies": { "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.0.3", - "@types/node": "20.10.0", + "@types/node": "20.10.1", "@types/react": "18.2.39", "@types/react-dom": "18.2.17", "eslint-config-neshca": "*", @@ -281,15 +272,6 @@ "glob": "7.1.7" } }, - "docs/cache-handler-docs/node_modules/@types/node": { - "version": "20.10.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.0.tgz", - "integrity": "sha512-D0WfRmU9TQ8I9PFx9Yc+EBHw+vSpIub4IDvQivcp26PtPrdMGAq5SDcpXEo/epqa/DXotVpekHiLNTg3iaKXBQ==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "docs/cache-handler-docs/node_modules/glob": { "version": "7.1.7", "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", @@ -400,7 +382,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.10.0", + "@types/node": "20.10.1", "eslint-config-neshca": "*", "pino-pretty": "10.2.3", "rimraf": "5.0.5", @@ -408,15 +390,6 @@ "typescript": "5.3.2" } }, - "internal/backend/node_modules/@types/node": { - "version": "20.10.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.0.tgz", - "integrity": "sha512-D0WfRmU9TQ8I9PFx9Yc+EBHw+vSpIub4IDvQivcp26PtPrdMGAq5SDcpXEo/epqa/DXotVpekHiLNTg3iaKXBQ==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "internal/eslint-config-neshca": { "version": "0.0.0", "license": "MIT", @@ -517,21 +490,12 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.10.0", + "@types/node": "20.10.1", "eslint-config-neshca": "*", "rimraf": "5.0.5", "typescript": "5.3.2" } }, - "internal/next-common/node_modules/@types/node": { - "version": "20.10.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.0.tgz", - "integrity": "sha512-D0WfRmU9TQ8I9PFx9Yc+EBHw+vSpIub4IDvQivcp26PtPrdMGAq5SDcpXEo/epqa/DXotVpekHiLNTg3iaKXBQ==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "internal/next-common/node_modules/next": { "version": "14.0.4-canary.9", "resolved": "https://registry.npmjs.org/next/-/next-14.0.4-canary.9.tgz", @@ -587,21 +551,12 @@ "devDependencies": { "@neshca/next-common": "*", "@neshca/tsconfig": "*", - "@types/node": "20.10.0", + "@types/node": "20.10.1", "eslint-config-neshca": "*", "rimraf": "5.0.5", "typescript": "5.3.2" } }, - "internal/next-lru-cache/node_modules/@types/node": { - "version": "20.10.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.0.tgz", - "integrity": "sha512-D0WfRmU9TQ8I9PFx9Yc+EBHw+vSpIub4IDvQivcp26PtPrdMGAq5SDcpXEo/epqa/DXotVpekHiLNTg3iaKXBQ==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "internal/prettier-config": { "name": "@neshca/prettier-config", "version": "0.0.0", @@ -1992,6 +1947,11 @@ "fs-extra": "^8.1.0" } }, + "node_modules/@manypkg/find-root/node_modules/@types/node": { + "version": "12.20.55", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", + "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" + }, "node_modules/@manypkg/find-root/node_modules/fs-extra": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", @@ -3254,9 +3214,12 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "12.20.55", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", - "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" + "version": "20.10.1", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.1.tgz", + "integrity": "sha512-T2qwhjWwGH81vUEx4EXmBKsTJRXFXNZTL4v0gi01+zyBmCwzE6TyHszqX01m+QHTEq+EZNo13NeJIdEqf+Myrg==", + "dependencies": { + "undici-types": "~5.26.4" + } }, "node_modules/@types/node-fetch": { "version": "2.6.9", @@ -16954,7 +16917,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@neshca/tsconfig": "*", - "@types/node": "20.10.0", + "@types/node": "20.10.1", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", @@ -16965,15 +16928,6 @@ "redis": ">=4.6" } }, - "packages/cache-handler/node_modules/@types/node": { - "version": "20.10.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.0.tgz", - "integrity": "sha512-D0WfRmU9TQ8I9PFx9Yc+EBHw+vSpIub4IDvQivcp26PtPrdMGAq5SDcpXEo/epqa/DXotVpekHiLNTg3iaKXBQ==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "packages/diffscribe": { "version": "0.2.1", "license": "MIT", @@ -16982,7 +16936,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.10.0", + "@types/node": "20.10.1", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", @@ -16993,22 +16947,13 @@ "openai": "^4.12.3" } }, - "packages/diffscribe/node_modules/@types/node": { - "version": "20.10.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.0.tgz", - "integrity": "sha512-D0WfRmU9TQ8I9PFx9Yc+EBHw+vSpIub4IDvQivcp26PtPrdMGAq5SDcpXEo/epqa/DXotVpekHiLNTg3iaKXBQ==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "packages/json-replacer-reviver": { "name": "@neshca/json-replacer-reviver", "version": "1.1.0", "license": "MIT", "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.10.0", + "@types/node": "20.10.1", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", @@ -17016,15 +16961,6 @@ "typescript": "5.3.2" } }, - "packages/json-replacer-reviver/node_modules/@types/node": { - "version": "20.10.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.0.tgz", - "integrity": "sha512-D0WfRmU9TQ8I9PFx9Yc+EBHw+vSpIub4IDvQivcp26PtPrdMGAq5SDcpXEo/epqa/DXotVpekHiLNTg3iaKXBQ==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "packages/server": { "name": "@neshca/server", "version": "0.5.1", @@ -17040,22 +16976,13 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@neshca/tsconfig": "*", - "@types/node": "20.10.0", + "@types/node": "20.10.1", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", "tsx": "4.6.0", "typescript": "5.3.2" } - }, - "packages/server/node_modules/@types/node": { - "version": "20.10.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.0.tgz", - "integrity": "sha512-D0WfRmU9TQ8I9PFx9Yc+EBHw+vSpIub4IDvQivcp26PtPrdMGAq5SDcpXEo/epqa/DXotVpekHiLNTg3iaKXBQ==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } } } } diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 1968ec8c..f57f8906 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -56,7 +56,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@neshca/tsconfig": "*", - "@types/node": "20.10.0", + "@types/node": "20.10.1", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index 5341be78..11d4ff9c 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -26,7 +26,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.10.0", + "@types/node": "20.10.1", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 0ad267d4..167d2b96 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -29,7 +29,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.10.0", + "@types/node": "20.10.1", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", diff --git a/packages/server/package.json b/packages/server/package.json index a55e12f9..f1e84908 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -33,7 +33,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@neshca/tsconfig": "*", - "@types/node": "20.10.0", + "@types/node": "20.10.1", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", From c6932e1ea058ded32de043fce635d497dd31fbf4 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 4 Dec 2023 09:04:00 +0300 Subject: [PATCH 008/458] Bump tsx from 4.6.0 to 4.6.2 (#194) Bumps [tsx](https://github.com/privatenumber/tsx) from 4.6.0 to 4.6.2. - [Release notes](https://github.com/privatenumber/tsx/releases) - [Changelog](https://github.com/privatenumber/tsx/blob/develop/release.config.cjs) - [Commits](https://github.com/privatenumber/tsx/compare/v4.6.0...v4.6.2) --- updated-dependencies: - dependency-name: tsx dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- internal/backend/package.json | 2 +- package-lock.json | 14 +++++++------- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 5 files changed, 11 insertions(+), 11 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index a27b1734..615c46ef 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -34,7 +34,7 @@ "pm2": "5.3.0", "redis": "4.6.11", "rimraf": "5.0.5", - "tsx": "4.6.0", + "tsx": "4.6.2", "typescript": "5.3.2" } } diff --git a/internal/backend/package.json b/internal/backend/package.json index 0f55d8ed..84b06d2d 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -20,7 +20,7 @@ "eslint-config-neshca": "*", "pino-pretty": "10.2.3", "rimraf": "5.0.5", - "tsx": "4.6.0", + "tsx": "4.6.2", "typescript": "5.3.2" } } diff --git a/package-lock.json b/package-lock.json index 974f5bc0..752d6b13 100644 --- a/package-lock.json +++ b/package-lock.json @@ -55,7 +55,7 @@ "pm2": "5.3.0", "redis": "4.6.11", "rimraf": "5.0.5", - "tsx": "4.6.0", + "tsx": "4.6.2", "typescript": "5.3.2" } }, @@ -386,7 +386,7 @@ "eslint-config-neshca": "*", "pino-pretty": "10.2.3", "rimraf": "5.0.5", - "tsx": "4.6.0", + "tsx": "4.6.2", "typescript": "5.3.2" } }, @@ -15136,9 +15136,9 @@ "dev": true }, "node_modules/tsx": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.6.0.tgz", - "integrity": "sha512-HLHaDQ78mly4Pd5co6tWQOiNVYoYYAPUcwSSZK4bcs3zSEsg+/67LS/ReHook0E7DKPfe1J5jc0ocIhUrnaR4w==", + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.6.2.tgz", + "integrity": "sha512-QPpBdJo+ZDtqZgAnq86iY/PD2KYCUPSUGIunHdGwyII99GKH+f3z3FZ8XNFLSGQIA4I365ui8wnQpl8OKLqcsg==", "dev": true, "dependencies": { "esbuild": "~0.18.20", @@ -16957,7 +16957,7 @@ "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", - "tsx": "4.6.0", + "tsx": "4.6.2", "typescript": "5.3.2" } }, @@ -16980,7 +16980,7 @@ "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", - "tsx": "4.6.0", + "tsx": "4.6.2", "typescript": "5.3.2" } } diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 167d2b96..6c5c7584 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -33,7 +33,7 @@ "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", - "tsx": "4.6.0", + "tsx": "4.6.2", "typescript": "5.3.2" } } diff --git a/packages/server/package.json b/packages/server/package.json index f1e84908..598a0e66 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -37,7 +37,7 @@ "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", - "tsx": "4.6.0", + "tsx": "4.6.2", "typescript": "5.3.2" }, "distTags": [ From 1fddd515b4fdbf0b8a9178d19c289c6a0e15bf0a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 4 Dec 2023 11:11:52 +0000 Subject: [PATCH 009/458] Bump the definitely-typed group with 2 updates (#195) --- apps/cache-testing/package.json | 4 +-- docs/cache-handler-docs/package.json | 4 +-- internal/backend/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 34 ++++++++++----------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 10 files changed, 28 insertions(+), 28 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 615c46ef..b1bd7df1 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -25,8 +25,8 @@ "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.0.4-canary.18", "@playwright/test": "1.40.0", - "@types/node": "20.10.1", - "@types/react": "18.2.39", + "@types/node": "20.10.3", + "@types/react": "18.2.41", "@types/react-dom": "18.2.17", "dotenv-cli": "7.3.0", "eslint-config-neshca": "*", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 009235c8..2bf63928 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -19,8 +19,8 @@ "devDependencies": { "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.0.3", - "@types/node": "20.10.1", - "@types/react": "18.2.39", + "@types/node": "20.10.3", + "@types/react": "18.2.41", "@types/react-dom": "18.2.17", "eslint-config-neshca": "*", "typescript": "5.3.2" diff --git a/internal/backend/package.json b/internal/backend/package.json index 84b06d2d..b50d7a67 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -16,7 +16,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.10.1", + "@types/node": "20.10.3", "eslint-config-neshca": "*", "pino-pretty": "10.2.3", "rimraf": "5.0.5", diff --git a/internal/next-common/package.json b/internal/next-common/package.json index a95efc95..17cbcb8f 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -16,7 +16,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.10.1", + "@types/node": "20.10.3", "eslint-config-neshca": "*", "rimraf": "5.0.5", "typescript": "5.3.2" diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index 2d55cccb..68e7769f 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -17,7 +17,7 @@ "devDependencies": { "@neshca/next-common": "*", "@neshca/tsconfig": "*", - "@types/node": "20.10.1", + "@types/node": "20.10.3", "eslint-config-neshca": "*", "rimraf": "5.0.5", "typescript": "5.3.2" diff --git a/package-lock.json b/package-lock.json index 752d6b13..04b866e9 100644 --- a/package-lock.json +++ b/package-lock.json @@ -46,8 +46,8 @@ "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.0.4-canary.18", "@playwright/test": "1.40.0", - "@types/node": "20.10.1", - "@types/react": "18.2.39", + "@types/node": "20.10.3", + "@types/react": "18.2.41", "@types/react-dom": "18.2.17", "dotenv-cli": "7.3.0", "eslint-config-neshca": "*", @@ -256,8 +256,8 @@ "devDependencies": { "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.0.3", - "@types/node": "20.10.1", - "@types/react": "18.2.39", + "@types/node": "20.10.3", + "@types/react": "18.2.41", "@types/react-dom": "18.2.17", "eslint-config-neshca": "*", "typescript": "5.3.2" @@ -382,7 +382,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.10.1", + "@types/node": "20.10.3", "eslint-config-neshca": "*", "pino-pretty": "10.2.3", "rimraf": "5.0.5", @@ -490,7 +490,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.10.1", + "@types/node": "20.10.3", "eslint-config-neshca": "*", "rimraf": "5.0.5", "typescript": "5.3.2" @@ -551,7 +551,7 @@ "devDependencies": { "@neshca/next-common": "*", "@neshca/tsconfig": "*", - "@types/node": "20.10.1", + "@types/node": "20.10.3", "eslint-config-neshca": "*", "rimraf": "5.0.5", "typescript": "5.3.2" @@ -3214,9 +3214,9 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "20.10.1", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.1.tgz", - "integrity": "sha512-T2qwhjWwGH81vUEx4EXmBKsTJRXFXNZTL4v0gi01+zyBmCwzE6TyHszqX01m+QHTEq+EZNo13NeJIdEqf+Myrg==", + "version": "20.10.3", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.3.tgz", + "integrity": "sha512-XJavIpZqiXID5Yxnxv3RUDKTN5b81ddNC3ecsA0SoFXz/QU8OGBwZGMomiq0zw+uuqbL/krztv/DINAQ/EV4gg==", "dependencies": { "undici-types": "~5.26.4" } @@ -3242,9 +3242,9 @@ "integrity": "sha512-ga8y9v9uyeiLdpKddhxYQkxNDrfvuPrlFb0N1qnZZByvcElJaXthF1UhvCh9TLWJBEHeNtdnbysW7Y6Uq8CVng==" }, "node_modules/@types/react": { - "version": "18.2.39", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.39.tgz", - "integrity": "sha512-Oiw+ppED6IremMInLV4HXGbfbG6GyziY3kqAwJYOR0PNbkYDmLWQA3a95EhdSmamsvbkJN96ZNN+YD+fGjzSBA==", + "version": "18.2.41", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.41.tgz", + "integrity": "sha512-CwOGr/PiLiNBxEBqpJ7fO3kocP/2SSuC9fpH5K7tusrg4xPSRT/193rzolYwQnTN02We/ATXKnb6GqA5w4fRxw==", "dependencies": { "@types/prop-types": "*", "@types/scheduler": "*", @@ -16917,7 +16917,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@neshca/tsconfig": "*", - "@types/node": "20.10.1", + "@types/node": "20.10.3", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", @@ -16936,7 +16936,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.10.1", + "@types/node": "20.10.3", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", @@ -16953,7 +16953,7 @@ "license": "MIT", "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.10.1", + "@types/node": "20.10.3", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", @@ -16976,7 +16976,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@neshca/tsconfig": "*", - "@types/node": "20.10.1", + "@types/node": "20.10.3", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index f57f8906..93db49f5 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -56,7 +56,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@neshca/tsconfig": "*", - "@types/node": "20.10.1", + "@types/node": "20.10.3", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index 11d4ff9c..64c2f9f8 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -26,7 +26,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.10.1", + "@types/node": "20.10.3", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 6c5c7584..fb63dddd 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -29,7 +29,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.10.1", + "@types/node": "20.10.3", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", diff --git a/packages/server/package.json b/packages/server/package.json index 598a0e66..0c301daf 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -33,7 +33,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@neshca/tsconfig": "*", - "@types/node": "20.10.1", + "@types/node": "20.10.3", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", From 88203c258ea0a01a223befb742cebed983ea2599 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 5 Dec 2023 13:05:23 +0300 Subject: [PATCH 010/458] Bump eslint from 8.54.0 to 8.55.0 (#197) Bumps [eslint](https://github.com/eslint/eslint) from 8.54.0 to 8.55.0. - [Release notes](https://github.com/eslint/eslint/releases) - [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md) - [Commits](https://github.com/eslint/eslint/compare/v8.54.0...v8.55.0) --- updated-dependencies: - dependency-name: eslint dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 24 ++++++++++++------------ package.json | 2 +- 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/package-lock.json b/package-lock.json index 04b866e9..a7f78802 100644 --- a/package-lock.json +++ b/package-lock.json @@ -22,7 +22,7 @@ "@neshca/prettier-config": "*", "@neshca/tsconfig": "*", "diffscribe": "*", - "eslint": "8.54.0", + "eslint": "8.55.0", "glob": "10.3.10", "prettier": "3.1.0", "turbo": "1.10.16" @@ -1690,9 +1690,9 @@ } }, "node_modules/@eslint/eslintrc": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.3.tgz", - "integrity": "sha512-yZzuIG+jnVu6hNSzFEN07e8BxF3uAzYtQb6uDkaYZLo6oYZDCq454c5kB8zxnzfCYyP4MIuyBn10L0DqwujTmA==", + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz", + "integrity": "sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==", "dev": true, "dependencies": { "ajv": "^6.12.4", @@ -1731,9 +1731,9 @@ } }, "node_modules/@eslint/js": { - "version": "8.54.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.54.0.tgz", - "integrity": "sha512-ut5V+D+fOoWPgGGNj83GGjnntO39xDy6DWxO0wb7Jp3DcMX0TfIqdzHF85VTQkerdyGmuuMD9AKAo5KiNlf/AQ==", + "version": "8.55.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.55.0.tgz", + "integrity": "sha512-qQfo2mxH5yVom1kacMtZZJFVdW+E70mqHMJvVg6WTLo+VBuQJ4TojZlfWBjK0ve5BdEeNAVxOsl/nvNMpJOaJA==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -6045,15 +6045,15 @@ } }, "node_modules/eslint": { - "version": "8.54.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.54.0.tgz", - "integrity": "sha512-NY0DfAkM8BIZDVl6PgSa1ttZbx3xHgJzSNJKYcQglem6CppHyMhRIQkBVSSMaSRnLhig3jsDbEzOjwCVt4AmmA==", + "version": "8.55.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.55.0.tgz", + "integrity": "sha512-iyUUAM0PCKj5QpwGfmCAG9XXbZCWsqP/eWAWrG/W0umvjuLRBECwSFdt+rCntju0xEH7teIABPwXpahftIaTdA==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.6.1", - "@eslint/eslintrc": "^2.1.3", - "@eslint/js": "8.54.0", + "@eslint/eslintrc": "^2.1.4", + "@eslint/js": "8.55.0", "@humanwhocodes/config-array": "^0.11.13", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", diff --git a/package.json b/package.json index 83bcd3b5..d4f18ec4 100644 --- a/package.json +++ b/package.json @@ -36,7 +36,7 @@ "@neshca/prettier-config": "*", "@neshca/tsconfig": "*", "diffscribe": "*", - "eslint": "8.54.0", + "eslint": "8.55.0", "glob": "10.3.10", "prettier": "3.1.0", "turbo": "1.10.16" From 4a281244f1db3345dac5caa5b92b865857b694f2 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 5 Dec 2023 13:29:26 +0300 Subject: [PATCH 011/458] Bump the definitely-typed group with 1 update (#196) Bumps the definitely-typed group with 1 update: [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react). - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react) --- updated-dependencies: - dependency-name: "@types/react" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- package-lock.json | 10 +++++----- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index b1bd7df1..0d7d0376 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -26,7 +26,7 @@ "@next/eslint-plugin-next": "14.0.4-canary.18", "@playwright/test": "1.40.0", "@types/node": "20.10.3", - "@types/react": "18.2.41", + "@types/react": "18.2.42", "@types/react-dom": "18.2.17", "dotenv-cli": "7.3.0", "eslint-config-neshca": "*", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 2bf63928..406a9215 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -20,7 +20,7 @@ "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.0.3", "@types/node": "20.10.3", - "@types/react": "18.2.41", + "@types/react": "18.2.42", "@types/react-dom": "18.2.17", "eslint-config-neshca": "*", "typescript": "5.3.2" diff --git a/package-lock.json b/package-lock.json index a7f78802..59187659 100644 --- a/package-lock.json +++ b/package-lock.json @@ -47,7 +47,7 @@ "@next/eslint-plugin-next": "14.0.4-canary.18", "@playwright/test": "1.40.0", "@types/node": "20.10.3", - "@types/react": "18.2.41", + "@types/react": "18.2.42", "@types/react-dom": "18.2.17", "dotenv-cli": "7.3.0", "eslint-config-neshca": "*", @@ -257,7 +257,7 @@ "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.0.3", "@types/node": "20.10.3", - "@types/react": "18.2.41", + "@types/react": "18.2.42", "@types/react-dom": "18.2.17", "eslint-config-neshca": "*", "typescript": "5.3.2" @@ -3242,9 +3242,9 @@ "integrity": "sha512-ga8y9v9uyeiLdpKddhxYQkxNDrfvuPrlFb0N1qnZZByvcElJaXthF1UhvCh9TLWJBEHeNtdnbysW7Y6Uq8CVng==" }, "node_modules/@types/react": { - "version": "18.2.41", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.41.tgz", - "integrity": "sha512-CwOGr/PiLiNBxEBqpJ7fO3kocP/2SSuC9fpH5K7tusrg4xPSRT/193rzolYwQnTN02We/ATXKnb6GqA5w4fRxw==", + "version": "18.2.42", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.42.tgz", + "integrity": "sha512-c1zEr96MjakLYus/wPnuWDo1/zErfdU9rNsIGmE+NV71nx88FG9Ttgo5dqorXTu/LImX2f63WBP986gJkMPNbA==", "dependencies": { "@types/prop-types": "*", "@types/scheduler": "*", From 42fa790c3f7f59930064910985d9b2250ac3a7d9 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 5 Dec 2023 13:49:51 +0300 Subject: [PATCH 012/458] Bump @playwright/test from 1.40.0 to 1.40.1 (#191) * Bump @playwright/test from 1.40.0 to 1.40.1 Bumps [@playwright/test](https://github.com/microsoft/playwright) from 1.40.0 to 1.40.1. - [Release notes](https://github.com/microsoft/playwright/releases) - [Commits](https://github.com/microsoft/playwright/compare/v1.40.0...v1.40.1) --- updated-dependencies: - dependency-name: "@playwright/test" dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] * Update Playwright image version to v1.40.1 --------- Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Arseny <132773930+better-salmon@users.noreply.github.com> --- .github/workflows/tests.yml | 2 +- apps/cache-testing/package.json | 2 +- package-lock.json | 24 ++++++++++++------------ 3 files changed, 14 insertions(+), 14 deletions(-) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index f719cec1..0c9a087f 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -9,7 +9,7 @@ jobs: name: 'Test all' runs-on: ubuntu-latest container: - image: mcr.microsoft.com/playwright:v1.40.0-jammy + image: mcr.microsoft.com/playwright:v1.40.1-jammy steps: - uses: actions/checkout@v4 - uses: actions/setup-node@v4 diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 0d7d0376..f1e63ed9 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -24,7 +24,7 @@ "@neshca/json-replacer-reviver": "*", "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.0.4-canary.18", - "@playwright/test": "1.40.0", + "@playwright/test": "1.40.1", "@types/node": "20.10.3", "@types/react": "18.2.42", "@types/react-dom": "18.2.17", diff --git a/package-lock.json b/package-lock.json index 59187659..653143dc 100644 --- a/package-lock.json +++ b/package-lock.json @@ -45,7 +45,7 @@ "@neshca/json-replacer-reviver": "*", "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.0.4-canary.18", - "@playwright/test": "1.40.0", + "@playwright/test": "1.40.1", "@types/node": "20.10.3", "@types/react": "18.2.42", "@types/react-dom": "18.2.17", @@ -2658,12 +2658,12 @@ } }, "node_modules/@playwright/test": { - "version": "1.40.0", - "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.40.0.tgz", - "integrity": "sha512-PdW+kn4eV99iP5gxWNSDQCbhMaDVej+RXL5xr6t04nbKLCBwYtA046t7ofoczHOm8u6c+45hpDKQVZqtqwkeQg==", + "version": "1.40.1", + "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.40.1.tgz", + "integrity": "sha512-EaaawMTOeEItCRvfmkI9v6rBkF1svM8wjl/YPRrg2N2Wmp+4qJYkWtJsbew1szfKKDm6fPLy4YAanBhIlf9dWw==", "dev": true, "dependencies": { - "playwright": "1.40.0" + "playwright": "1.40.1" }, "bin": { "playwright": "cli.js" @@ -12259,12 +12259,12 @@ } }, "node_modules/playwright": { - "version": "1.40.0", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.40.0.tgz", - "integrity": "sha512-gyHAgQjiDf1m34Xpwzaqb76KgfzYrhK7iih+2IzcOCoZWr/8ZqmdBw+t0RU85ZmfJMgtgAiNtBQ/KS2325INXw==", + "version": "1.40.1", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.40.1.tgz", + "integrity": "sha512-2eHI7IioIpQ0bS1Ovg/HszsN/XKNwEG1kbzSDDmADpclKc7CyqkHw7Mg2JCz/bbCxg25QUPcjksoMW7JcIFQmw==", "dev": true, "dependencies": { - "playwright-core": "1.40.0" + "playwright-core": "1.40.1" }, "bin": { "playwright": "cli.js" @@ -12277,9 +12277,9 @@ } }, "node_modules/playwright-core": { - "version": "1.40.0", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.40.0.tgz", - "integrity": "sha512-fvKewVJpGeca8t0ipM56jkVSU6Eo0RmFvQ/MaCQNDYm+sdvKkMBBWTE1FdeMqIdumRaXXjZChWHvIzCGM/tA/Q==", + "version": "1.40.1", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.40.1.tgz", + "integrity": "sha512-+hkOycxPiV534c4HhpfX6yrlawqVUzITRKwHAmYfmsVreltEl6fAZJ3DPfLMOODw0H3s1Itd6MDCWmP1fl/QvQ==", "dev": true, "bin": { "playwright-core": "cli.js" From 59c0022940256a1c039ee5b651ebada64f2008ef Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 8 Dec 2023 07:48:05 +0300 Subject: [PATCH 013/458] Bump typescript from 5.3.2 to 5.3.3 (#200) Bumps [typescript](https://github.com/Microsoft/TypeScript) from 5.3.2 to 5.3.3. - [Release notes](https://github.com/Microsoft/TypeScript/releases) - [Commits](https://github.com/Microsoft/TypeScript/compare/v5.3.2...v5.3.3) --- updated-dependencies: - dependency-name: typescript dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- internal/backend/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 24 ++++++++++----------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 10 files changed, 21 insertions(+), 21 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index f1e63ed9..9a577a0f 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -35,6 +35,6 @@ "redis": "4.6.11", "rimraf": "5.0.5", "tsx": "4.6.2", - "typescript": "5.3.2" + "typescript": "5.3.3" } } diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 406a9215..6f9192b9 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -23,6 +23,6 @@ "@types/react": "18.2.42", "@types/react-dom": "18.2.17", "eslint-config-neshca": "*", - "typescript": "5.3.2" + "typescript": "5.3.3" } } diff --git a/internal/backend/package.json b/internal/backend/package.json index b50d7a67..f5c3d789 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -21,6 +21,6 @@ "pino-pretty": "10.2.3", "rimraf": "5.0.5", "tsx": "4.6.2", - "typescript": "5.3.2" + "typescript": "5.3.3" } } diff --git a/internal/next-common/package.json b/internal/next-common/package.json index 17cbcb8f..fbe4c01e 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -19,6 +19,6 @@ "@types/node": "20.10.3", "eslint-config-neshca": "*", "rimraf": "5.0.5", - "typescript": "5.3.2" + "typescript": "5.3.3" } } diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index 68e7769f..6046f415 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -20,6 +20,6 @@ "@types/node": "20.10.3", "eslint-config-neshca": "*", "rimraf": "5.0.5", - "typescript": "5.3.2" + "typescript": "5.3.3" } } diff --git a/package-lock.json b/package-lock.json index 653143dc..1b299b91 100644 --- a/package-lock.json +++ b/package-lock.json @@ -56,7 +56,7 @@ "redis": "4.6.11", "rimraf": "5.0.5", "tsx": "4.6.2", - "typescript": "5.3.2" + "typescript": "5.3.3" } }, "apps/cache-testing/node_modules/@next/env": { @@ -260,7 +260,7 @@ "@types/react": "18.2.42", "@types/react-dom": "18.2.17", "eslint-config-neshca": "*", - "typescript": "5.3.2" + "typescript": "5.3.3" } }, "docs/cache-handler-docs/node_modules/@next/eslint-plugin-next": { @@ -387,7 +387,7 @@ "pino-pretty": "10.2.3", "rimraf": "5.0.5", "tsx": "4.6.2", - "typescript": "5.3.2" + "typescript": "5.3.3" } }, "internal/eslint-config-neshca": { @@ -493,7 +493,7 @@ "@types/node": "20.10.3", "eslint-config-neshca": "*", "rimraf": "5.0.5", - "typescript": "5.3.2" + "typescript": "5.3.3" } }, "internal/next-common/node_modules/next": { @@ -554,7 +554,7 @@ "@types/node": "20.10.3", "eslint-config-neshca": "*", "rimraf": "5.0.5", - "typescript": "5.3.2" + "typescript": "5.3.3" } }, "internal/prettier-config": { @@ -15850,9 +15850,9 @@ } }, "node_modules/typescript": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.3.2.tgz", - "integrity": "sha512-6l+RyNy7oAHDfxC4FzSJcz9vnjTKxrLpDG5M2Vu4SHRVNg6xzqZp6LYSR9zjqQTu8DU/f5xwxUdADOkbrIX2gQ==", + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.3.3.tgz", + "integrity": "sha512-pXWcraxM0uxAS+tN0AG/BF2TyqmHO014Z070UsJ+pFvYuRSq8KH8DmWpnbXe0pEPDHXZV3FcAbJkijJ5oNEnWw==", "dev": true, "bin": { "tsc": "bin/tsc", @@ -16921,7 +16921,7 @@ "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", - "typescript": "5.3.2" + "typescript": "5.3.3" }, "peerDependencies": { "next": ">=13.5", @@ -16940,7 +16940,7 @@ "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", - "typescript": "5.3.2" + "typescript": "5.3.3" }, "peerDependencies": { "dotenv": "^16.3.1", @@ -16958,7 +16958,7 @@ "rimraf": "5.0.5", "tsup": "8.0.1", "tsx": "4.6.2", - "typescript": "5.3.2" + "typescript": "5.3.3" } }, "packages/server": { @@ -16981,7 +16981,7 @@ "rimraf": "5.0.5", "tsup": "8.0.1", "tsx": "4.6.2", - "typescript": "5.3.2" + "typescript": "5.3.3" } } } diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 93db49f5..85f2c0c8 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -60,7 +60,7 @@ "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", - "typescript": "5.3.2" + "typescript": "5.3.3" }, "peerDependencies": { "next": ">=13.5", diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index 64c2f9f8..2ac75b1b 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -30,7 +30,7 @@ "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", - "typescript": "5.3.2" + "typescript": "5.3.3" }, "peerDependencies": { "dotenv": "^16.3.1", diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index fb63dddd..6e1cc0c8 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -34,6 +34,6 @@ "rimraf": "5.0.5", "tsup": "8.0.1", "tsx": "4.6.2", - "typescript": "5.3.2" + "typescript": "5.3.3" } } diff --git a/packages/server/package.json b/packages/server/package.json index 0c301daf..6a92b551 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -38,7 +38,7 @@ "rimraf": "5.0.5", "tsup": "8.0.1", "tsx": "4.6.2", - "typescript": "5.3.2" + "typescript": "5.3.3" }, "distTags": [ "next13.5", From 2796af0161cca6378433e030e9e4e5b585f18af5 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 8 Dec 2023 04:55:52 +0000 Subject: [PATCH 014/458] Bump the definitely-typed group with 1 update (#202) --- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- internal/backend/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 24 ++++++++++----------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 10 files changed, 21 insertions(+), 21 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 9a577a0f..2ce7e94a 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -25,7 +25,7 @@ "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.0.4-canary.18", "@playwright/test": "1.40.1", - "@types/node": "20.10.3", + "@types/node": "20.10.4", "@types/react": "18.2.42", "@types/react-dom": "18.2.17", "dotenv-cli": "7.3.0", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 6f9192b9..9e7157f5 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -19,7 +19,7 @@ "devDependencies": { "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.0.3", - "@types/node": "20.10.3", + "@types/node": "20.10.4", "@types/react": "18.2.42", "@types/react-dom": "18.2.17", "eslint-config-neshca": "*", diff --git a/internal/backend/package.json b/internal/backend/package.json index f5c3d789..4da66bc8 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -16,7 +16,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.10.3", + "@types/node": "20.10.4", "eslint-config-neshca": "*", "pino-pretty": "10.2.3", "rimraf": "5.0.5", diff --git a/internal/next-common/package.json b/internal/next-common/package.json index fbe4c01e..d6a08099 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -16,7 +16,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.10.3", + "@types/node": "20.10.4", "eslint-config-neshca": "*", "rimraf": "5.0.5", "typescript": "5.3.3" diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index 6046f415..437041b2 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -17,7 +17,7 @@ "devDependencies": { "@neshca/next-common": "*", "@neshca/tsconfig": "*", - "@types/node": "20.10.3", + "@types/node": "20.10.4", "eslint-config-neshca": "*", "rimraf": "5.0.5", "typescript": "5.3.3" diff --git a/package-lock.json b/package-lock.json index 1b299b91..19c38221 100644 --- a/package-lock.json +++ b/package-lock.json @@ -46,7 +46,7 @@ "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.0.4-canary.18", "@playwright/test": "1.40.1", - "@types/node": "20.10.3", + "@types/node": "20.10.4", "@types/react": "18.2.42", "@types/react-dom": "18.2.17", "dotenv-cli": "7.3.0", @@ -256,7 +256,7 @@ "devDependencies": { "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.0.3", - "@types/node": "20.10.3", + "@types/node": "20.10.4", "@types/react": "18.2.42", "@types/react-dom": "18.2.17", "eslint-config-neshca": "*", @@ -382,7 +382,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.10.3", + "@types/node": "20.10.4", "eslint-config-neshca": "*", "pino-pretty": "10.2.3", "rimraf": "5.0.5", @@ -490,7 +490,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.10.3", + "@types/node": "20.10.4", "eslint-config-neshca": "*", "rimraf": "5.0.5", "typescript": "5.3.3" @@ -551,7 +551,7 @@ "devDependencies": { "@neshca/next-common": "*", "@neshca/tsconfig": "*", - "@types/node": "20.10.3", + "@types/node": "20.10.4", "eslint-config-neshca": "*", "rimraf": "5.0.5", "typescript": "5.3.3" @@ -3214,9 +3214,9 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "20.10.3", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.3.tgz", - "integrity": "sha512-XJavIpZqiXID5Yxnxv3RUDKTN5b81ddNC3ecsA0SoFXz/QU8OGBwZGMomiq0zw+uuqbL/krztv/DINAQ/EV4gg==", + "version": "20.10.4", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.4.tgz", + "integrity": "sha512-D08YG6rr8X90YB56tSIuBaddy/UXAA9RKJoFvrsnogAum/0pmjkgi4+2nx96A330FmioegBWmEYQ+syqCFaveg==", "dependencies": { "undici-types": "~5.26.4" } @@ -16917,7 +16917,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@neshca/tsconfig": "*", - "@types/node": "20.10.3", + "@types/node": "20.10.4", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", @@ -16936,7 +16936,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.10.3", + "@types/node": "20.10.4", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", @@ -16953,7 +16953,7 @@ "license": "MIT", "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.10.3", + "@types/node": "20.10.4", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", @@ -16976,7 +16976,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@neshca/tsconfig": "*", - "@types/node": "20.10.3", + "@types/node": "20.10.4", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 85f2c0c8..f2fe5c25 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -56,7 +56,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@neshca/tsconfig": "*", - "@types/node": "20.10.3", + "@types/node": "20.10.4", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index 2ac75b1b..5e8c22a2 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -26,7 +26,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.10.3", + "@types/node": "20.10.4", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 6e1cc0c8..4febec84 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -29,7 +29,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.10.3", + "@types/node": "20.10.4", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", diff --git a/packages/server/package.json b/packages/server/package.json index 6a92b551..ddcdd860 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -33,7 +33,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@neshca/tsconfig": "*", - "@types/node": "20.10.3", + "@types/node": "20.10.4", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", From 60dab2a1f359123f57de8c5505e96ad5d41c6dcb Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Sun, 10 Dec 2023 16:38:01 +0300 Subject: [PATCH 015/458] Refactor cache-handler for multi-cache support (#198) --- .changeset/fifty-apricots-kick.md | 27 + .changeset/shiny-teachers-share.md | 5 + .changeset/spicy-bananas-sneeze.md | 8 + .nvmrc | 2 +- apps/cache-testing/cache-handler-local.js | 10 + .../cache-handler-redis-stack.js | 22 +- .../cache-handler-redis-strings.js | 14 +- apps/cache-testing/cache-handler-server.js | 17 +- apps/cache-testing/package.json | 4 +- docs/cache-handler-docs/package.json | 4 +- docs/cache-handler-docs/src/pages/_meta.json | 4 +- .../src/pages/configuration/_meta.json | 8 +- .../configuration/build-id-as-prefix-key.mdx | 89 ++ .../src/pages/configuration/cache.mdx | 96 +- .../configuration/development-environment.mdx | 17 +- .../pages/configuration/disk-access-mode.mdx | 5 - .../src/pages/configuration/local-cache.mdx | 5 - .../src/pages/configuration/on-creation.mdx | 128 ++- .../configuration/opt-out-cache-on-build.mdx | 38 + .../src/pages/configuration/ttl.mdx | 104 +++ .../pages/configuration/use-file-system.mdx | 89 ++ docs/cache-handler-docs/src/pages/index.mdx | 24 +- .../src/pages/installation.mdx | 118 ++- .../src/pages/redis-stack-custom.mdx | 66 +- .../src/pages/redis-stack.mdx | 34 +- .../src/pages/redis-strings-custom.mdx | 62 +- .../src/pages/redis-strings.mdx | 34 +- docs/cache-handler-docs/src/pages/server.mdx | 26 +- docs/cache-handler-docs/theme.config.jsx | 7 +- internal/next-common/package.json | 2 +- internal/next-common/src/next-common.ts | 1 + .../cache-types/next-cache-handler-value.ts | 2 + .../src/create-configured-cache.ts | 9 + package-lock.json | 860 +++++++++--------- packages/cache-handler/README.md | 69 +- packages/cache-handler/package.json | 13 +- packages/cache-handler/src/cache-handler.ts | 726 +++++++++------ packages/cache-handler/src/common-types.ts | 33 +- .../cache-handler/src/handlers/local-lru.ts | 72 ++ .../cache-handler/src/handlers/redis-stack.ts | 207 +++-- .../src/handlers/redis-strings.ts | 168 ++-- packages/cache-handler/src/handlers/server.ts | 269 +++--- .../cache-handler/src/is-tags-manifest.ts | 21 + packages/cache-handler/tsconfig.json | 5 +- packages/cache-handler/tsup.config.ts | 2 +- packages/server/README.md | 2 +- packages/server/src/server.ts | 14 +- 47 files changed, 2273 insertions(+), 1269 deletions(-) create mode 100644 .changeset/fifty-apricots-kick.md create mode 100644 .changeset/shiny-teachers-share.md create mode 100644 .changeset/spicy-bananas-sneeze.md create mode 100644 docs/cache-handler-docs/src/pages/configuration/build-id-as-prefix-key.mdx delete mode 100644 docs/cache-handler-docs/src/pages/configuration/disk-access-mode.mdx delete mode 100644 docs/cache-handler-docs/src/pages/configuration/local-cache.mdx create mode 100644 docs/cache-handler-docs/src/pages/configuration/opt-out-cache-on-build.mdx create mode 100644 docs/cache-handler-docs/src/pages/configuration/ttl.mdx create mode 100644 docs/cache-handler-docs/src/pages/configuration/use-file-system.mdx create mode 100644 packages/cache-handler/src/handlers/local-lru.ts create mode 100644 packages/cache-handler/src/is-tags-manifest.ts diff --git a/.changeset/fifty-apricots-kick.md b/.changeset/fifty-apricots-kick.md new file mode 100644 index 00000000..600c17d8 --- /dev/null +++ b/.changeset/fifty-apricots-kick.md @@ -0,0 +1,27 @@ +--- +'@neshca/cache-handler': minor +--- + +This release introduces a colossal refactoring and new features to the `@neshca/cache-handler` package. + +#### Breaking Changes + +- Changed the Handlers API; +- `onCreation` now can accept multiple Handlers for cache layering; +- Dropped `diskAccessMode` option; +- Dropped `defaultLruCacheOptions` option; +- Dropped the default LRU cache; +- Renamed `getTagsManifest` cache method to `getRevalidatedTags`; +- Changed the return type of `getRevalidatedTags` cache method; +- Made Handlers to be exported as default exports. + +#### Features + +- Added `buildId` to `onCreationHook` context argument; +- Introduced `useFileSystem` option; +- Made the LRU cache an independent Handler like Redis or Server; +- Made `getRevalidatedTags` and `revalidateTag` cache methods to be optional. + +#### Misc + +- Added TSDoc comments to the codebase. diff --git a/.changeset/shiny-teachers-share.md b/.changeset/shiny-teachers-share.md new file mode 100644 index 00000000..4f5a23d9 --- /dev/null +++ b/.changeset/shiny-teachers-share.md @@ -0,0 +1,5 @@ +--- +'cache-handler-docs': minor +--- + +Made the documentation complete. diff --git a/.changeset/spicy-bananas-sneeze.md b/.changeset/spicy-bananas-sneeze.md new file mode 100644 index 00000000..b261570e --- /dev/null +++ b/.changeset/spicy-bananas-sneeze.md @@ -0,0 +1,8 @@ +--- +'@neshca/server': minor +--- + +#### Breaking Changes + +- Renamed `getTagsManifest` route to `getRevalidatedTags`; + Changed the return type of `getRevalidatedTags` route. diff --git a/.nvmrc b/.nvmrc index 48ef2c10..9de22568 100644 --- a/.nvmrc +++ b/.nvmrc @@ -1 +1 @@ -20.9 +lts/iron diff --git a/apps/cache-testing/cache-handler-local.js b/apps/cache-testing/cache-handler-local.js index 5484307d..9072289e 100644 --- a/apps/cache-testing/cache-handler-local.js +++ b/apps/cache-testing/cache-handler-local.js @@ -1,3 +1,13 @@ const { IncrementalCache } = require('@neshca/cache-handler'); +const createLruCache = require('@neshca/cache-handler/local-lru').default; + +IncrementalCache.onCreation(async () => { + const localCache = createLruCache(); + + return { + cache: localCache, + useFileSystem: true, + }; +}); module.exports = IncrementalCache; diff --git a/apps/cache-testing/cache-handler-redis-stack.js b/apps/cache-testing/cache-handler-redis-stack.js index 4571ce78..98d4e962 100644 --- a/apps/cache-testing/cache-handler-redis-stack.js +++ b/apps/cache-testing/cache-handler-redis-stack.js @@ -1,17 +1,18 @@ const { IncrementalCache } = require('@neshca/cache-handler'); -const { createHandler } = require('@neshca/cache-handler/redis-stack'); +const createRedisCache = require('@neshca/cache-handler/redis-stack').default; +const createRedisStringsCache = require('@neshca/cache-handler/redis-strings').default; +const createLruCache = require('@neshca/cache-handler/local-lru').default; const { createClient } = require('redis'); if (!process.env.REDIS_URL) { console.warn('Make sure that REDIS_URL is added to the .env.local file and loaded properly.'); } -const PREFIX = 'JSON:'; const CONNECT_TIMEOUT_MS = 5 * 50 * 1000; const client = createClient({ url: process.env.REDIS_URL, - name: `cache-handler:${PREFIX}${process.env.PORT ?? process.pid}`, + name: `cache-handler:${process.env.PORT ?? process.pid}`, socket: { connectTimeout: CONNECT_TIMEOUT_MS, }, @@ -21,15 +22,22 @@ client.on('error', (error) => { console.error('Redis error:', error.message); }); -IncrementalCache.onCreation(async (options) => { +IncrementalCache.onCreation(async () => { await client.connect(); - const getConfig = createHandler({ + const redisCache = await createRedisCache({ client, - keyPrefix: PREFIX, + keyPrefix: 'JSON:', }); - return getConfig(options); + const redisStringsCache = createRedisStringsCache({ client, keyPrefix: 'strings:' }); + + const localCache = createLruCache(); + + return { + cache: [redisCache, redisStringsCache, localCache], + useFileSystem: true, + }; }); module.exports = IncrementalCache; diff --git a/apps/cache-testing/cache-handler-redis-strings.js b/apps/cache-testing/cache-handler-redis-strings.js index d0356657..96db483c 100644 --- a/apps/cache-testing/cache-handler-redis-strings.js +++ b/apps/cache-testing/cache-handler-redis-strings.js @@ -1,5 +1,6 @@ const { IncrementalCache } = require('@neshca/cache-handler'); -const { createHandler } = require('@neshca/cache-handler/redis-strings'); +const createRedisCache = require('@neshca/cache-handler/redis-strings').default; +const createLruCache = require('@neshca/cache-handler/local-lru').default; const { createClient } = require('redis'); if (!process.env.REDIS_URL) { @@ -21,15 +22,20 @@ client.on('error', (error) => { console.error('Redis error:', error.message); }); -IncrementalCache.onCreation(async (options) => { +IncrementalCache.onCreation(async () => { await client.connect(); - const getConfig = createHandler({ + const redisCache = await createRedisCache({ client, keyPrefix: PREFIX, }); - return getConfig(options); + const localCache = createLruCache(); + + return { + cache: [redisCache, localCache], + useFileSystem: true, + }; }); module.exports = IncrementalCache; diff --git a/apps/cache-testing/cache-handler-server.js b/apps/cache-testing/cache-handler-server.js index 61ec3bf3..7358c60d 100644 --- a/apps/cache-testing/cache-handler-server.js +++ b/apps/cache-testing/cache-handler-server.js @@ -1,5 +1,6 @@ const { IncrementalCache } = require('@neshca/cache-handler'); -const { createHandler } = require('@neshca/cache-handler/server'); +const createServerCache = require('@neshca/cache-handler/server').default; +const createLruCache = require('@neshca/cache-handler/local-lru').default; const baseUrl = process.env.REMOTE_CACHE_SERVER_BASE_URL ?? 'http://localhost:8080'; @@ -9,15 +10,19 @@ async function wait(ms) { }); } -IncrementalCache.onCreation(async (options) => { - // For testing purposes - await wait(100); +IncrementalCache.onCreation(async () => { + await wait(); - const getConfig = createHandler({ + const httpCache = createServerCache({ baseUrl, }); - return getConfig(options); + const localCache = createLruCache(); + + return { + cache: [httpCache, localCache], + useFileSystem: true, + }; }); module.exports = IncrementalCache; diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 2ce7e94a..1e4dc055 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -15,7 +15,7 @@ "start": "dotenv -e .env.local -v SERVER_STARTED=1 node .next/standalone/apps/cache-testing/server.js" }, "dependencies": { - "next": "14.0.4-canary.18", + "next": "14.0.5-canary.0", "react": "18.2.0", "react-dom": "18.2.0" }, @@ -23,7 +23,7 @@ "@neshca/cache-handler": "*", "@neshca/json-replacer-reviver": "*", "@neshca/tsconfig": "*", - "@next/eslint-plugin-next": "14.0.4-canary.18", + "@next/eslint-plugin-next": "14.0.5-canary.0", "@playwright/test": "1.40.1", "@types/node": "20.10.4", "@types/react": "18.2.42", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 9e7157f5..a801adbd 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -10,7 +10,7 @@ "start:docs": "next start" }, "dependencies": { - "next": "14.0.3", + "next": "14.0.4", "nextra": "2.13.2", "nextra-theme-docs": "2.13.2", "react": "18.2.0", @@ -18,7 +18,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@next/eslint-plugin-next": "14.0.3", + "@next/eslint-plugin-next": "14.0.4", "@types/node": "20.10.4", "@types/react": "18.2.42", "@types/react-dom": "18.2.17", diff --git a/docs/cache-handler-docs/src/pages/_meta.json b/docs/cache-handler-docs/src/pages/_meta.json index 4c3ab8f2..6be8195f 100644 --- a/docs/cache-handler-docs/src/pages/_meta.json +++ b/docs/cache-handler-docs/src/pages/_meta.json @@ -3,8 +3,8 @@ "type": "separator", "title": "Getting Started" }, - "index": "Why configure caching?", - "installation": "", + "index": "Introduction", + "installation": "Installation and the First Steps", "-- @neshca/cache-handler API": { "type": "separator", "title": "@neshca/cache-handler API" diff --git a/docs/cache-handler-docs/src/pages/configuration/_meta.json b/docs/cache-handler-docs/src/pages/configuration/_meta.json index 4e499862..47e374d8 100644 --- a/docs/cache-handler-docs/src/pages/configuration/_meta.json +++ b/docs/cache-handler-docs/src/pages/configuration/_meta.json @@ -1,7 +1,9 @@ { "on-creation": "onCreation", "cache": "cache", - "disk-access-mode": "diskAccessMode", - "local-cache": "", - "development-environment": "" + "use-file-system": "useFileSystem", + "opt-out-cache-on-build": "Opt out the cache on Build", + "development-environment": "", + "build-id-as-prefix-key": "BuildId as a Prefix Key", + "ttl": "Using TTL" } diff --git a/docs/cache-handler-docs/src/pages/configuration/build-id-as-prefix-key.mdx b/docs/cache-handler-docs/src/pages/configuration/build-id-as-prefix-key.mdx new file mode 100644 index 00000000..f9b05303 --- /dev/null +++ b/docs/cache-handler-docs/src/pages/configuration/build-id-as-prefix-key.mdx @@ -0,0 +1,89 @@ +import { Callout } from 'nextra/components'; + +Let me quote from the Next.js [documentation](https://nextjs.org/docs/pages/building-your-application/deploying#build-cache). + +Next.js generates an ID during `next build` to identify which version of your application is being served. The same build should be used and boot up multiple containers. + +If you are rebuilding for each stage of your environment, you will need to generate a consistent `buildId` to use between containers. Use the `generateBuildId` command in `next.config.js`: + +```js filename="next.config.js" copy +const nextConfig = { + generateBuildId: async () => { + // This could be anything, using the latest git hash + return process.env.GIT_HASH; + }, +}; +``` + +To use `buildId` for prefixing or namespacing the cache keys, use either of the following solutions.: + +#### Using `process.env.GIT_HASH` + +```js filename="next.config.js" copy +const nextConfig = { + generateBuildId: async () => { + // This could be anything, using the latest git hash + return process.env.GIT_HASH; + }, +}; +``` + +```js filename="cache-handler.js" copy +IncrementalCache.onCreation(async () => { + await client.connect(); + + const redisCache = await createRedisCache({ + client, + keyPrefix: process.env.GIT_HASH, + }); + + return { + cache: redisCache, + useFileSystem: true, + }; +}); +``` + +--- + +#### Using without `generateBuildId` + + + In this case, you must build your app once and use the same build to deploy to all environments. + + +```js filename="next.config.js" copy +const nextConfig = { + output: 'standalone', +}; +``` + +```js filename="cache-handler.js" copy +const { IncrementalCache } = require('@neshca/cache-handler'); +const createRedisCache = require('@neshca/cache-handler/redis-stack').default; +const createLruCache = require('@neshca/cache-handler/local-lru').default; + +IncrementalCache.onCreation(async ({ buildId }) => { + let redisCache; + + if (buildId) { + await client.connect(); + + redisCache = await createRedisCache({ + client, + keyPrefix: `${buildId}:`, + }); + } + + const localCache = createLruCache(); + + return { + cache: [redisCache, localCache], + useFileSystem: true, + }; +}); +``` + +**Limitations:** + +- Some cache values may be lost during the build process because the `buildId` is defined after some cache values have already been set. However, `buildId` will be defined from the beginning when you start your app. diff --git a/docs/cache-handler-docs/src/pages/configuration/cache.mdx b/docs/cache-handler-docs/src/pages/configuration/cache.mdx index d9f26eaa..1f37586c 100644 --- a/docs/cache-handler-docs/src/pages/configuration/cache.mdx +++ b/docs/cache-handler-docs/src/pages/configuration/cache.mdx @@ -1,5 +1,97 @@ import { Callout } from 'nextra/components'; -## Configuring `cache` +## Configuring a Custom `cache` in the `onCreation` Hook -This section of the documentation is still under development. Please check back later. +The `onCreation` hook is used to configure a custom cache handler. The example below demonstrates a basic local cache implementation, adaptable for various caching needs. + +### Example: Custom Cache Handler Implementation + +```js filename="cache-handler.js" copy +const { IncrementalCache } = require('@neshca/cache-handler'); + +IncrementalCache.onCreation(async () => { + const cacheStore = new Map(); + + const cache = { + async get(key) { + return cacheStore.get(key); + }, + async set(key, value) { + cacheStore.set(key, value); + }, + }; + + return { + cache, + useFileSystem: true, + }; +}); + +module.exports = IncrementalCache; +``` + +## Advanced Cache Configuration: Custom Revalidation + +When you are using built-in Handlers like [`redis-stack`](/redis-stack) there is no need in configuring revalidation. However, if you crafting your own cache handler, you need to implement revalidation logic. + +For control over the revalidation process, implement `getRevalidatedTags` and `revalidateTag` methods. + +### Example: Custom Revalidation Methods + +```js filename="cache-handler.js" copy +const revalidateTags = {}; + +const cache = { + async get(key) { + return cacheStore.get(key); + }, + async set(key, value) { + cacheStore.set(key, value); + }, + async getRevalidatedTags() { + return revalidateTags; + }, + async revalidateTag(tag, revalidatedAt) { + revalidateTags[tag] = revalidatedAt; + }, +}; +``` + +Structure of the `RevalidatedTags` object: + +```json filename="revalidateTags" +{ + "/": 1701897682816, + "/blog": 1701897532812, + "3058ccffeebc5674604d8dd3a0d1321b5948c5b820a32bb9089572db907edca1": 1701895635813, + "_N_T_/user/123": 1701897523542 +} +``` + + + For remote cache stores that don't support JavaScript objects directly, serialize the `revalidateTags` object before + storage and deserialize upon retrieval. + + +## Handling Fetch in Next.js Cache Handlers + +### Overcoming Next.js Fetch Pollution + +Next.js modifies the global `fetch` function, which can lead to unexpected behavior when using `fetch` in custom cache handlers. To address this, use the following workaround when calling `fetch`: + +```js filename="cache-handler.js" copy +const cache = { + async get(key) { + const response = await fetch(url, { + next: { + // This option ensures that the fetch call is not affected by Next.js modifications + internal: true, + }, + }); + // Process the response as needed + }, + // Other cache methods... +}; +``` + +Alternatively, you can use the `undici` library, which provides a clean and unmodified fetch API, avoiding potential issues with Next.js's fetch modifications. diff --git a/docs/cache-handler-docs/src/pages/configuration/development-environment.mdx b/docs/cache-handler-docs/src/pages/configuration/development-environment.mdx index 18b0ed70..1f714301 100644 --- a/docs/cache-handler-docs/src/pages/configuration/development-environment.mdx +++ b/docs/cache-handler-docs/src/pages/configuration/development-environment.mdx @@ -1,5 +1,16 @@ -import { Callout } from 'nextra/components'; - ## Using `@neshca/cache-handler` in development environment -This section of the documentation is still under development. Please check back later. +Since the primary purpose of `@neshca/cache-handler` is to accommodate the sharing of the cache between multiple and independent replicas of the Next.js application, there is no need to use it in a development environment. + +The easiest way to turn off the cache handler in a development environment is to use `process.env.NODE_ENV`: + +```js filename="next.config.js" copy +const nextConfig = { + /* ... */ + experimental: { + incrementalCacheHandlerPath: + process.env.NODE_ENV === 'development' ? undefined : require.resolve('./cache-handler'), + }, + /* ... */ +}; +``` diff --git a/docs/cache-handler-docs/src/pages/configuration/disk-access-mode.mdx b/docs/cache-handler-docs/src/pages/configuration/disk-access-mode.mdx deleted file mode 100644 index 2dcf9fa3..00000000 --- a/docs/cache-handler-docs/src/pages/configuration/disk-access-mode.mdx +++ /dev/null @@ -1,5 +0,0 @@ -import { Callout } from 'nextra/components'; - -## Configuring disk access - -This section of the documentation is still under development. Please check back later. diff --git a/docs/cache-handler-docs/src/pages/configuration/local-cache.mdx b/docs/cache-handler-docs/src/pages/configuration/local-cache.mdx deleted file mode 100644 index 8dc259ed..00000000 --- a/docs/cache-handler-docs/src/pages/configuration/local-cache.mdx +++ /dev/null @@ -1,5 +0,0 @@ -import { Callout } from 'nextra/components'; - -## Local caching - -This section of the documentation is still under development. Please check back later. diff --git a/docs/cache-handler-docs/src/pages/configuration/on-creation.mdx b/docs/cache-handler-docs/src/pages/configuration/on-creation.mdx index 75a7f870..05986034 100644 --- a/docs/cache-handler-docs/src/pages/configuration/on-creation.mdx +++ b/docs/cache-handler-docs/src/pages/configuration/on-creation.mdx @@ -1,5 +1,127 @@ -import { Callout } from 'nextra/components'; +The `onCreation` method in the `@neshca/cache-handler` API is designed to facilitate the creation of a custom cache instance with configurable behavior. It accepts a single argument, `cacheCreationContext`, which provides contextual information necessary for configuring the cache. -## Configuring `onCreation` callback +## `onCreationHook` -This section of the documentation is still under development. Please check back later. +The `onCreation` method expects a function of type `OnCreationHook`, which is defined as follows: + +```typescript +type OnCreationHook = (cacheCreationContext: CacheCreationContext) => Promise | CacheConfig; +``` + +This function takes the `cacheCreationContext` as its argument and returns either a `CacheConfig` object or a Promise that resolves to a `CacheConfig` object. The `CacheConfig` type is designed to specify the cache behavior and settings, including whether to use the file system for caching and the details of the custom cache implementation. + +### `cacheCreationContext` Argument + +The `cacheCreationContext` argument is an object of type `CacheCreationContext`, providing essential information for cache configuration. It includes the following properties: + +1. **`serverDistDir` (string):** + + - Description: The absolute path to the Next.js server directory. + - Purpose: This path is critical for locating server-side resources and files that may be required by the cache implementation, such as directories for storing cache data in the file system. + +2. **`dev` (boolean, optional):** + + - Description: Indicates whether the Next.js application is running in development mode. + - Purpose: This flag can be used to alter cache behavior based on the environment. + +3. **`buildId` (string, optional):** + + - Description: A unique identifier for the current build of the Next.js application, generated during the `next build` process. + - Purpose: The `buildId` may be used as a prefix for namespacing cache keys, ensuring distinct and relevant cache data for each build of the application. + +### Usage of `onCreationHook` + +When implementing the `onCreationHook`, you can utilize the information provided in the `cacheCreationContext` to dynamically configure the cache according to the server environment and specific application needs. This approach allows for a high degree of flexibility and customization in how caching is handled within a Next.js application. + +### Example + +Here's a simplified example of how the `onCreation` method might be used: + +```js filename="cache-handler.js" +IncrementalCache.onCreation(async (context) => { + const customCacheLogic = { + // Define custom get, set, and other cache methods + }; + + return { + cache: customCacheLogic, + }; +}); +``` + +In this example, the `onCreation` method defines custom cache logic and decides whether to use file system caching based on whether the application is in development mode. + +### Structure of `CacheConfig` + +The `onCreation` hook in the `@neshca/cache-handler` API returns a `CacheConfig` object or a Promise that resolves to a `CacheConfig` object. This return value is crucial for configuring the caching behavior of the application. Below is a detailed explanation of the structure and components of the `CacheConfig` object: + +The `CacheConfig` object defines the configuration for the cache system. It typically includes the following properties: + +1. **`cache` (Cache | Cache[]):** + + - Description: Represents the [custom cache](/configuration/cache) instance or an array of cache instances. These instances must conform to the `Cache` interface, as defined in the `@neshca/cache-handler` API. + - Usage: This is where you provide your custom cache implementation. If an array of caches is provided, it enables the use of multiple caching layers or strategies, offering more complex and tailored caching solutions. + +2. **`useFileSystem` (boolean, optional):** + + - Description: Determines whether to utilize file system caching in addition to the custom cache implementation. + - Usage: This can be set to `true` to enable file system caching or `false` to rely solely on the custom cache logic provided. It's particularly useful in scenarios where persistent caching is needed across server restarts or deployments. + +### Example Usage and Return Value + +Here is an example of how the `onCreation` hook might be implemented and what the return value looks like: + +```js filename="cache-handler.js" +IncrementalCache.onCreation(async (context) => { + const customCache = { + // Custom cache methods like get, set, etc. + }; + + const cacheConfig = { + useFileSystem: false, // Example of disabling file system caching + cache: customCache, // Custom cache implementation + }; + + return cacheConfig; // Returning the CacheConfig object +}); + +// Or in a more complex scenario with multiple caches +IncrementalCache.onCreation(async (context) => { + const primaryCache = { + /* ... */ + }; + const secondaryCache = { + /* ... */ + }; + + return { + useFileSystem: true, + cache: [primaryCache, secondaryCache], // Array of cache instances + }; +}); +``` + +In these examples, the `onCreation` hook configures the cache behavior based on the application's running environment and returns the appropriate `CacheConfig` object, either with a single cache implementation or multiple cache layers. This is how multi layer caching works: + +1. **`get(key)`: Data Retrieval Across Layers** + + - The `get` method iterates through each cache layer, starting with the `primaryCache`. + - It attempts to retrieve the value associated with `key` from the `primaryCache` first. + - If the `primaryCache` results in a cache miss (value not found), the system then checks the `secondaryCache`. + - The method returns the value as soon as it is found in any layer, ensuring that the main cache layer is always checked first. + +2. **`set(key, value, ttl)`: Data Storage Across Layers** + + - The `set` method concurrently updates or adds the value in all cache layers by iterating over each cache instance (`primaryCache` and `secondaryCache`). + - This ensures that the data is consistently stored across all layers, maintaining data integrity and availability. + - It uses `Promise.allSettled` under the hood, ensuring that the operation completes in all caches, regardless of whether one or more of the `set` operations fail or succeed. + +3. **`getRevalidatedTags()`: Retrieving Revalidated Tags Across Layers** + + - The search for revalidated tags begins with the `primaryCache` and, if not found, proceeds to the `secondaryCache`. + - The method returns the `RevalidatedTags` from the first cache layer where they are found. + +4. **`revalidateTag(tag, revalidatedAt)`: Updating Revalidation Status Across Layers** + - Similar to the `set` method, `revalidateTag` concurrently updates the revalidation status of a tag in all cache layers. + - It marks the specified `tag` as revalidated with the provided timestamp (`revalidatedAt`) in both the `primaryCache` and `secondaryCache`. + - It uses `Promise.allSettled` under the hood, ensuring that the revalidation status is consistently updated across all layers. diff --git a/docs/cache-handler-docs/src/pages/configuration/opt-out-cache-on-build.mdx b/docs/cache-handler-docs/src/pages/configuration/opt-out-cache-on-build.mdx new file mode 100644 index 00000000..1b581e58 --- /dev/null +++ b/docs/cache-handler-docs/src/pages/configuration/opt-out-cache-on-build.mdx @@ -0,0 +1,38 @@ +## Building the App Without Redis Cache Connection + +There are scenarios, especially during deployment, where your Redis server may not be immediately available. This can occur when the Redis server and your app are deployed simultaneously. In such cases, it's important to configure your build process to handle the absence of the Redis cache. Here's how you can adapt your setup to build the app without requiring an active connection to the Redis cache: + +### Configuration Steps + +1. **Modify the `cache-handler.js` File**: Adjust the `onCreation` method in your `cache-handler.js` file to conditionally connect to the Redis cache. The modified code should look like this: + + ```js filename="cache-handler.js" copy + IncrementalCache.onCreation(async () => { + let redisCache; + + if (process.env.REDIS_AVAILABLE) { + await client.connect(); + + redisCache = await createRedisCache({ + client, + }); + } + + // The cache array can contain undefined values. The will be filtered out by IncrementalCache. + const cache = [redisCache]; + + return { + cache, + // Always use the file system cache when building the app without any cache. + useFileSystem: !cache.some(Boolean), + }; + }); + ``` + +2. **Environment Variable Check**: The `process.env.REDIS_AVAILABLE` environment variable is used to determine if the server has already started. This ensures that the Redis client attempts a connection only when the server is up and running. + +3. **Fallback to File System Cache**: When the Redis cache is not connected (e.g., during the build process), the setup falls back to using the file system cache. This ensures that your app can still be built and run effectively, even without the Redis cache. + +### Notes: + +- This setup is particularly useful in continuous integration and deployment pipelines where the availability of external services like Redis might not be guaranteed at build time. diff --git a/docs/cache-handler-docs/src/pages/configuration/ttl.mdx b/docs/cache-handler-docs/src/pages/configuration/ttl.mdx new file mode 100644 index 00000000..b91efda4 --- /dev/null +++ b/docs/cache-handler-docs/src/pages/configuration/ttl.mdx @@ -0,0 +1,104 @@ +## Using TTL in Cache Configuration + +### Overview + +Time to Live (TTL) is a crucial feature in cache management. It automatically expires cache entries after a predefined duration, ensuring your cache remains up-to-date and efficient. + +### Prerequisites + +To effectively implement TTL, consider the following: + +- **File System Cache Limitation**: Set `useFileSystem: false` in your cache configuration. This step is essential for TTL to function correctly. If the file system cache is enabled, it may cause cache entries to be retrieved from the file system cache even after they've expired in Redis of LRU. +- **Next.js Pages Directory Issue**: There is a known limitation with Next.js regarding the file system cache within the Pages directory. It's recommended to apply TTL only for the App directory pages. For more information, refer to the [file system cache configuration documentation](/configuration/use-file-system#configuring-access-to-the-file-system). + +### TTL and Incremental Static Regeneration (ISR) + +In Next.js, ISR allows routes to be incrementally updated through the [`revalidate` ↗](https://nextjs.org/docs/app/building-your-application/data-fetching/fetching-caching-and-revalidating#time-based-revalidation) property in `fetch` or inside the `page` or `route` file. + +### Implementing TTL in Preconfigured Handlers + +Here's how to implement TTL in preconfigured Handlers: + +```js filename="cache-handler.js" copy +IncrementalCache.onCreation(async () => { + const useTtl = true; + + await client.connect(); + + const redisCache = await createRedisCache({ + client, + useTtl, // Enable TTL for Redis cache + }); + + const localCache = createLruCache({ + useTtl, // Enable TTL for local cache + }); + + return { + cache: [redisCache, localCache], + useFileSystem: !useTtl, // Disable file system cache to ensure TTL effectiveness + }; +}); +``` + +### Implementing TTL in Custom Cache Handlers + +For custom cache handlers, here are examples for Redis: + +**Redis Strings Example:** + +```js +// Filename: cache-handler.js +IncrementalCache.onCreation(async () => { + const cache = { + // ... other cache methods ... + + async set(key, value, ttl) { + try { + // Serialize value and set TTL using Redis 'EX' option + await client.set(key, JSON.stringify(value), typeof ttl === 'number' ? { EX: ttl } : undefined); + } catch (error) { + console.error('cache.set', error); + } + }, + + // ... other cache methods ... + }; + + return { + useFileSystem: false, // Disable file system cache for TTL efficiency + cache, + }; +}); +``` + +**Redis Stack Example:** + +```js +// Filename: cache-handler.js +IncrementalCache.onCreation(async () => { + const cache = { + // ... other cache methods ... + + async set(key, value, ttl) { + try { + await client.json.set(key, '.', value); + + if (typeof ttl === 'number') { + // Set TTL using Redis 'EXPIRE' command + await client.expire(key, ttl); + } + } catch (error) { + console.error('cache.set', error); + } + }, + + // ... other cache methods ... + }; + + return { + useFileSystem: false, // Disable file system cache for TTL efficiency + cache, + }; +}); +``` diff --git a/docs/cache-handler-docs/src/pages/configuration/use-file-system.mdx b/docs/cache-handler-docs/src/pages/configuration/use-file-system.mdx new file mode 100644 index 00000000..43850169 --- /dev/null +++ b/docs/cache-handler-docs/src/pages/configuration/use-file-system.mdx @@ -0,0 +1,89 @@ +import { Callout } from 'nextra/components'; + +## Configuring access to the file system + +You can use your file system to store the cache data alongside with you shared cache. It may be useful if your shared cache store may be unavailable for some reason. + +File system cache is enabled by default. You can disable it by setting `useFileSystem` to false in your `onCreation` hook: + +```js filename="cache-handler.js" copy +const { IncrementalCache } = require('@neshca/cache-handler'); + +IncrementalCache.onCreation(async () => { + const cacheStore = new Map(); + + const cache = { + async get(key) { + return cacheStore.get(key); + }, + async set(key, value) { + cacheStore.set(key, value); + }, + }; + + return { + cache, + // Disable it only if you are using only the App router. + // In this case you will gain some performance boost. + // Check out the warning below. + useFileSystem: false, + }; +}); + +module.exports = IncrementalCache; +``` + + + There is a [bug ↗](https://github.com/vercel/next.js/issues/58094) in the Next.js' Pages router when disabling the + file system cache. Do not disable it if you are using Pages. + + +## The usage of `local-lru` Handler instad of file system cache + +The `local-lru` Handler utilizes a Least Recently Used (LRU) caching strategy, which can manage cache operations more efficiently by setting a maximum number of items and their size in bytes. It's designed to serve as a fallback for the Redis Handler, offering better performance in specific scenarios. + +### Implementation + +The `createLruCache` function initializes the LRU cache handler. It includes methods for getting and setting cache values, and revalidation is managed by the `IncrementalCache` class. + +#### Example Usage + +```js filename="cache-handler.js" copy +const { IncrementalCache } = require('@neshca/cache-handler'); +const createRedisCache = require('@neshca/cache-handler/redis-stack').default; +const createLruCache = require('@neshca/cache-handler/local-lru').default; + +IncrementalCache.onCreation(async (context) => { + const createRedisCache = await createRedisCache({ + /* ... */ + }); + + const lruCache = createLruCache({ + maxItemsNumber: 10000, // Limit to 10000 items + maxItemSizeBytes: 1024 * 1024 * 500, // Limit to 500 MB + unstable__logErrors: true, + }); + + return { + cache: [createRedisCache, lruCache], // Array of cache instances + useFileSystem: false, // Disable file system cache + }; +}); +``` + +#### Options + +1. **`maxItemsNumber` (number, optional):** + + - Description: Specifies the maximum number of items to be stored in the cache. + - Usage: This can be set to any positive integer. If not provided, the default value is 1000. + +2. **`maxItemSizeBytes` (number, optional):** + + - Description: Defines the maximum size of an item in bytes. + - Usage: This can be set to any positive integer representing the maximum size in bytes. If not provided, the default value is 100 MB. + +### Considerations + +- It's recommended to use this Handler as a fallback for Redis Handler, particularly when using only the App router. +- Be cautious of a known bug in Next.js' Pages router when disabling the file system cache. Do not disable it if you are using Pages, as mentioned in the preceding section. diff --git a/docs/cache-handler-docs/src/pages/index.mdx b/docs/cache-handler-docs/src/pages/index.mdx index f4dba272..b3591e5a 100644 --- a/docs/cache-handler-docs/src/pages/index.mdx +++ b/docs/cache-handler-docs/src/pages/index.mdx @@ -1,17 +1,23 @@ -## Why configure caching? +## Introduction to `@neshca/cache-handler` -Let's use part of [the official documentation ↗](https://nextjs.org/docs/app/building-your-application/deploying#configuring-caching) to explain why we need to configure caching: +**Flexible API to replace the default Next.js cache, accommodating custom cache solutions for multi-instance deployments.** -By default, generated cache assets will be stored in memory (defaults to 50mb) and on disk. If you are hosting Next.js using a container orchestration platform like Kubernetes, each pod will have a copy of the cache. To prevent stale data from being shown since the cache is not shared between pods by default, you can configure the Next.js cache to provide a cache handler and disable in-memory caching. +Welcome to `@neshca/cache-handler`, a specialized ISR/Data cache API crafted for Next.js applications. This library is designed to simplify the complex task of configuring shared cache strategies in distributed environments, such as those involving multiple and independent instances of the same application. It offers a flexible and user-friendly approach to integrating custom cache solutions and hand-crafted, pre-configured cache strategies for Redis. -Using a custom cache handler will allow you to ensure consistency across all pods hosting your Next.js application. For instance, you can save the cached values anywhere, like [Redis ↗](https://github.com/vercel/next.js/tree/canary/examples/cache-handler-redis) or AWS S3. +### The Importance of Shared Cache in Distributed Instances -## Why use `@neshca/cache-handler`? +Next.js applications are often deployed in a self-hosted distributed environment, where multiple instances of the same application are running simultaneously. In such cases, the default Next.js cache is not shared between instances, causing the data to diverge between independent instances because load balancers route requests to a different instance every time. Another significant issue with the default cache setup is on-demand revalidation; it requires manual revalidation across all application replicas. -To summarize, `@neshca/cache-handler` takes on the responsibilities of the original class and provides a user-friendly API. +`@neshca/cache-handler` elegantly addresses these challenges by offering: -Since the API involves replacing the original FileSystemCache class with a custom one, simply swapping the Map with the Redis Client from [the example in the documentation ↗](https://nextjs.org/docs/app/api-reference/next-config-js/incrementalCacheHandlerPath) is insufficient. If this is done, reading pre-rendered pages from disk will be lost. The library is designed to work with the file system, which means that even if Redis fails, the applications in Kubernetes pods will continue to function with the file system until Redis is back online. +- A straightforward API complemented by meticulously crafted Handlers. +- Comprehensive customization options. +- Simplified on-demand revalidation, akin to managing a single application instance. -Furthermore, to ensure on-demand revalidation is performed correctly, a common TagsManifest for all pods must be present. Since the original class checks the TagsManifest, it is necessary to maintain this functionality. +## Kickstarting Your Custom Cache Solution -Since this functionality is the same for everyone, it is encapsulated in the library. +Begin enhancing your application's caching system with our [Installation and the First Steps](/installation). This section provides all the necessary information on installation, basic configuration, and practical examples for quick and efficient integration. + +### Examples and Practical Implementations + +Discover the versatility of `@neshca/cache-handler` in our [Examples Section](/redis-stack), where real-world scenarios are illustrated. diff --git a/docs/cache-handler-docs/src/pages/installation.mdx b/docs/cache-handler-docs/src/pages/installation.mdx index b50307f1..b9570fa1 100644 --- a/docs/cache-handler-docs/src/pages/installation.mdx +++ b/docs/cache-handler-docs/src/pages/installation.mdx @@ -1,15 +1,115 @@ -## Installation +## Getting Started with `@neshca/cache-handler` -To install the `@neshca/cache-handler` package, run the following command: +This section guides you through the initial setup and basic usage of `@neshca/cache-handler`, helping you integrate advanced caching solutions into your Next.js applications seamlessly. -```sh npm2yarn copy -npm i -D @neshca/cache-handler -``` +### Prerequisites + +- **Node.js:** Version 18.17 or newer. +- **Next.js:** Version 13.5.1 or newer. +- **Redis (optional):** Version 4.6.0 or newer. -## Usage with Redis +### Quick Start Installation + +```sh copy +npx create-next-app --example cache-handler-redis cache-handler-redis-app +``` -Redis is a peer dependency of this package, so you need to install it separately: +```sh copy +yarn create next-app --example cache-handler-redis cache-handler-redis-app +``` -```sh npm2yarn copy -npm i -D redis +```sh copy +pnpm create next-app --example cache-handler-redis cache-handler-redis-app ``` + +### Manual installation + +1. **Install `@neshca/cache-handler`**: + Execute this command in your Next.js project root directory: + + ```sh npm2yarn copy + npm install -D @neshca/cache-handler + ``` + +2. **Optional Redis Installation**: + Install Redis if you plan to use distributed caching across multiple server instances: + + ```sh npm2yarn copy + npm install -D redis + ``` + +### Basic Configuration + +1. **Create a Cache Handler File**: + In your project root, create a file named `cache-handler.js` for your cache configuration. + +2. **Configure the Cache Handler**: + Below is a basic setup example. The `console.log` statements help track cache operations: + + ```js filename="cache-handler.js" copy + const { IncrementalCache } = require("@neshca/cache-handler"); + + IncrementalCache.onCreation(async () => { + const cacheStore = a new Map(); + + const cache = { + async get(key) { + console.log("cache.get", key); // For demonstration: logs when retrieving from cache + return cacheStore.get(key); + }, + async set(key, value) { + console.log("cache.set", key); // For demonstration: logs when adding to cache + cacheStore.set(key, value); + }, + }; + + return { + cache, + useFileSystem: true, + }; + }); + + module.exports = IncrementalCache; + ``` + +3. **Integrate with Next.js**: + Update your `next.config.js` to utilize the cache handler, ensuring it's only active in production: + + ```js filename="next.config.js" copy + const nextConfig = { + experimental: { + incrementalCacheHandlerPath: + process.env.NODE_ENV === 'development' ? undefined : require.resolve('./cache-handler'), + }, + }; + + module.exports = nextConfig; + ``` + +### Running Your Application + +1. **Start Your Next.js Application**: + Run your app as usual. `@neshca/cache-handler` will now manage your application's caching: + + ```sh npm2yarn copy + npm run build + npm run start + ``` + +2. **Verification**: + In your terminal, you should observe logs like: + + ```sh + cache.get ... + cache.set ... + ``` + + This indicates that the cache handler is actively managing your cache operations. + +### Next Steps + +With the setup complete, explore `@neshca/cache-handler`'s advanced features: + +- Check out the [Redis Integration Example](/redis-stack); +- Learn [how to use the API](/configuration/on-creation) and craft your own cache handler configuration; +- Learn [how to use TTL](/configuration/ttl) for cache eviction. diff --git a/docs/cache-handler-docs/src/pages/redis-stack-custom.mdx b/docs/cache-handler-docs/src/pages/redis-stack-custom.mdx index 9597c2b1..69b8b439 100644 --- a/docs/cache-handler-docs/src/pages/redis-stack-custom.mdx +++ b/docs/cache-handler-docs/src/pages/redis-stack-custom.mdx @@ -13,13 +13,7 @@ Create a file called `cache-handler.js` next to you `next.config.js` with the fo const { IncrementalCache } = require('@neshca/cache-handler'); const { createClient } = require('redis'); -/** @type {import('@neshca/cache-handler').TagsManifest} */ -let localTagsManifest = { - version: 1, - items: {}, -}; - -const TAGS_MANIFEST_KEY = 'sharedTagsManifest'; +const REVALIDATED_TAGS_KEY = 'sharedRevalidatedTags'; const client = createClient({ url: process.env.REDIS_URL ?? 'redis://localhost:6379', @@ -30,12 +24,23 @@ client.on('error', (error) => { }); IncrementalCache.onCreation(async () => { + // read more about TTL limitations https://caching-tools.github.io/next-shared-cache/configuration/ttl + const useTtl = false; + await client.connect(); - await client.json.set(TAGS_MANIFEST_KEY, '.', localTagsManifest, { - NX: true, - }); + // Create the shared RevalidatedTags if it doesn't exist + await client.json.set( + REVALIDATED_TAGS_KEY, + '.', + {}, + { + NX: true, + }, + ); + return { + useFileSystem: !useTtl, cache: { async get(key) { try { @@ -47,36 +52,36 @@ IncrementalCache.onCreation(async () => { return cacheValue; } catch (error) { + console.error('cache.get', error); + return null; } }, - async set(key, value) { + async set(key, value, ttl) { try { await client.json.set(key, '.', value); + + if (useTtl && typeof ttl === 'number') { + await client.expire(key, ttl); + } } catch (error) { - // ignore because value will be written to disk + console.error('cache.set', error); } }, - async getTagsManifest() { + async getRevalidatedTags() { try { - const sharedTagsManifest = (await client.json.get(TAGS_MANIFEST_KEY)) ?? null; + const sharedRevalidatedTags = (await client.json.get(REVALIDATED_TAGS_KEY)) ?? undefined; - if (sharedTagsManifest) { - localTagsManifest = sharedTagsManifest; - } - - return localTagsManifest; + return sharedRevalidatedTags; } catch (error) { - return localTagsManifest; + console.error('cache.getRevalidatedTags', error); } }, async revalidateTag(tag, revalidatedAt) { try { - await client.json.set(TAGS_MANIFEST_KEY, `.items.${tag}`, { - revalidatedAt, - }); + await client.json.set(REVALIDATED_TAGS_KEY, `.${tag}`, revalidatedAt); } catch (error) { - localTagsManifest.items[tag] = { revalidatedAt }; + console.error('cache.revalidateTag', error); } }, }, @@ -87,16 +92,3 @@ module.exports = IncrementalCache; ``` Ensure that the Redis instance is running when you build your Next.js app. - -Then, use the following configuration in your `next.config.js` file: - -```js filename="next.config.js" copy -/** @type {import('next').NextConfig} */ -const nextConfig = { - experimental: { - incrementalCacheHandlerPath: require.resolve('./cache-handler'), // path to the cache handler file you created - }, -}; - -module.exports = nextConfig; -``` diff --git a/docs/cache-handler-docs/src/pages/redis-stack.mdx b/docs/cache-handler-docs/src/pages/redis-stack.mdx index 58447fc5..bb232362 100644 --- a/docs/cache-handler-docs/src/pages/redis-stack.mdx +++ b/docs/cache-handler-docs/src/pages/redis-stack.mdx @@ -11,7 +11,8 @@ Create a file called `cache-handler.js` next to you `next.config.js` with the fo ```js filename="cache-handler.js" copy const { IncrementalCache } = require('@neshca/cache-handler'); -const { createHandler } = require('@neshca/cache-handler/redis-stack'); +const createRedisCache = require('@neshca/cache-handler/redis-stack').default; +const createLruCache = require('@neshca/cache-handler/local-lru').default; const { createClient } = require('redis'); const client = createClient({ @@ -22,31 +23,28 @@ client.on('error', (error) => { console.error('Redis error:', error.message); }); -IncrementalCache.onCreation(async (options) => { +IncrementalCache.onCreation(async () => { + // read more about TTL limitations https://caching-tools.github.io/next-shared-cache/configuration/ttl + const useTtl = false; + await client.connect(); - const getConfig = createHandler({ + const redisCache = await createRedisCache({ client, - keyPrefix: PREFIX, + useTtl, + }); + + const localCache = createLruCache({ + useTtl, }); - return getConfig(options); + return { + cache: [redisCache, localCache], + useFileSystem: !useTtl, + }; }); module.exports = IncrementalCache; ``` Ensure that the Redis instance is running when you build your Next.js app. - -Then, use the following configuration in your `next.config.js` file: - -```js filename="next.config.js" copy -/** @type {import('next').NextConfig} */ -const nextConfig = { - experimental: { - incrementalCacheHandlerPath: require.resolve('./cache-handler'), // path to the cache handler file you created - }, -}; - -module.exports = nextConfig; -``` diff --git a/docs/cache-handler-docs/src/pages/redis-strings-custom.mdx b/docs/cache-handler-docs/src/pages/redis-strings-custom.mdx index ca8ad762..7f3230f5 100644 --- a/docs/cache-handler-docs/src/pages/redis-strings-custom.mdx +++ b/docs/cache-handler-docs/src/pages/redis-strings-custom.mdx @@ -20,13 +20,7 @@ const { reviveFromBase64Representation, replaceJsonWithBase64 } = require('@nesh const { IncrementalCache } = require('@neshca/cache-handler'); const { createClient } = require('redis'); -/** @type {import('@neshca/cache-handler').TagsManifest} */ -const localTagsManifest = { - version: 1, - items: {}, -}; - -const TAGS_MANIFEST_KEY = 'sharedTagsManifest'; +const REVALIDATED_TAGS_KEY = 'sharedRevalidatedTags'; const client = createClient({ url: process.env.REDIS_URL ?? 'redis://localhost:6379', @@ -37,9 +31,13 @@ client.on('error', (error) => { }); IncrementalCache.onCreation(async () => { + // read more about TTL limitations https://caching-tools.github.io/next-shared-cache/configuration/ttl + const useTtl = false; + await client.connect(); return { + useFileSystem: !useTtl, cache: { async get(key) { try { @@ -52,42 +50,45 @@ IncrementalCache.onCreation(async () => { // use reviveFromBase64Representation to restore binary data from Base64 return JSON.parse(result, reviveFromBase64Representation); } catch (error) { + console.error('cache.get', error); + return null; } }, - async set(key, value) { + async set(key, value, ttl) { try { - // use replaceJsonWithBase64 to store binary data in Base64 and save space - await client.set(key, JSON.stringify(value, replaceJsonWithBase64)); + await client.set( + key, + // use replaceJsonWithBase64 to store binary data in Base64 and save space + JSON.stringify(value, replaceJsonWithBase64), + useTtl && typeof ttl === 'number' ? { EX: ttl } : undefined, + ); } catch (error) { - // ignore because value will be written to disk + console.error('cache.set', error); } }, - async getTagsManifest() { + async getRevalidatedTags() { try { - const remoteTagsManifest = await client.hGetAll(TAGS_MANIFEST_KEY); + const sharedRevalidatedTags = await client.hGetAll(REVALIDATED_TAGS_KEY); - if (!remoteTagsManifest) { - return localTagsManifest; - } + const entries = Object.entries(sharedRevalidatedTags); - Object.entries(remoteTagsManifest).reduce((acc, [tag, revalidatedAt]) => { - acc[tag] = { revalidatedAt: parseInt(revalidatedAt ?? '0', 10) }; - return acc; - }, localTagsManifest.items); + const revalidatedTags = Object.fromEntries( + entries.map(([tag, revalidatedAt]) => [tag, Number(revalidatedAt)]), + ); - return localTagsManifest; + return revalidatedTags; } catch (error) { - return localTagsManifest; + console.error('cache.getRevalidatedTags', error); } }, async revalidateTag(tag, revalidatedAt) { try { - await client.hSet(TAGS_MANIFEST_KEY, { + await client.hSet(REVALIDATED_TAGS_KEY, { [tag]: revalidatedAt, }); } catch (error) { - localTagsManifest.items[tag] = { revalidatedAt }; + console.error('cache.revalidateTag', error); } }, }, @@ -98,16 +99,3 @@ module.exports = IncrementalCache; ``` Ensure that the Redis instance is running when you build your Next.js app. - -Then, use the following configuration in your `next.config.js` file: - -```js filename="next.config.js" copy -/** @type {import('next').NextConfig} */ -const nextConfig = { - experimental: { - incrementalCacheHandlerPath: require.resolve('./cache-handler'), // path to the cache handler file you created - }, -}; - -module.exports = nextConfig; -``` diff --git a/docs/cache-handler-docs/src/pages/redis-strings.mdx b/docs/cache-handler-docs/src/pages/redis-strings.mdx index 2261de8a..1a66c9cd 100644 --- a/docs/cache-handler-docs/src/pages/redis-strings.mdx +++ b/docs/cache-handler-docs/src/pages/redis-strings.mdx @@ -11,7 +11,8 @@ Create a file called `cache-handler.js` next to your `next.config.js` with the f ```js filename="cache-handler.js" copy const { IncrementalCache } = require('@neshca/cache-handler'); -const { createHandler } = require('@neshca/cache-handler/redis-strings'); +const createRedisCache = require('@neshca/cache-handler/redis-strings').default; +const createLruCache = require('@neshca/cache-handler/local-lru').default; const { createClient } = require('redis'); const client = createClient({ @@ -22,31 +23,28 @@ client.on('error', (error) => { console.error('Redis error:', error.message); }); -IncrementalCache.onCreation(async (options) => { +IncrementalCache.onCreation(async () => { + // read more about TTL limitations https://caching-tools.github.io/next-shared-cache/configuration/ttl + const useTtl = false; + await client.connect(); - const getConfig = createHandler({ + const redisCache = await createRedisCache({ client, - keyPrefix: PREFIX, + useTtl, + }); + + const localCache = createLruCache({ + useTtl, }); - return getConfig(options); + return { + cache: [redisCache, localCache], + useFileSystem: !useTtl, + }; }); module.exports = IncrementalCache; ``` Ensure that the Redis instance is running when you build your Next.js app. - -Then, use the following configuration in your `next.config.js` file: - -```js filename="next.config.js" copy -/** @type {import('next').NextConfig} */ -const nextConfig = { - experimental: { - incrementalCacheHandlerPath: require.resolve('./cache-handler'), // path to the cache handler file you created - }, -}; - -module.exports = nextConfig; -``` diff --git a/docs/cache-handler-docs/src/pages/server.mdx b/docs/cache-handler-docs/src/pages/server.mdx index 553aadb3..fca0ff2c 100644 --- a/docs/cache-handler-docs/src/pages/server.mdx +++ b/docs/cache-handler-docs/src/pages/server.mdx @@ -33,24 +33,18 @@ const { createHandler } = require('@neshca/cache-handler/server'); const baseUrl = process.env.REMOTE_CACHE_SERVER_BASE_URL ?? 'http://localhost:8080'; -IncrementalCache.onCreation( - createHandler({ +IncrementalCache.onCreation(() => { + const httpCache = createServerCache({ baseUrl, - }), -); + }); -module.exports = IncrementalCache; -``` + const localCache = createLruCache(); -Then, use the following configuration in your `next.config.js` file: + return { + cache: [httpCache, localCache], + useFileSystem: true, + }; +}); -```js filename="next.config.js" copy -/** @type {import('next').NextConfig} */ -const nextConfig = { - experimental: { - incrementalCacheHandlerPath: require.resolve('./cache-handler'), // path to the cache handler file you created - }, -}; - -module.exports = nextConfig; +module.exports = IncrementalCache; ``` diff --git a/docs/cache-handler-docs/theme.config.jsx b/docs/cache-handler-docs/theme.config.jsx index 6aefc63f..a8ce0116 100644 --- a/docs/cache-handler-docs/theme.config.jsx +++ b/docs/cache-handler-docs/theme.config.jsx @@ -50,10 +50,11 @@ export default { ), }, banner: { - key: '0.5.1-release', + key: '0.6.0-release', text: ( - - 🎉 Version 0.5.4 is out, introducing async onCreation hook, async Handlers, and fixed types! + + 🎉 Version 0.6.0 is out, featuring significant refactoring and an API breaking change. However, the new + docs provide guidance on the new multi-layered cache configuration! ), }, diff --git a/internal/next-common/package.json b/internal/next-common/package.json index d6a08099..f8112db8 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -12,7 +12,7 @@ "lint": "eslint ." }, "dependencies": { - "next": "14.0.4-canary.9" + "next": "14.0.5-canary.0" }, "devDependencies": { "@neshca/tsconfig": "*", diff --git a/internal/next-common/src/next-common.ts b/internal/next-common/src/next-common.ts index c4c5a584..d7737c66 100644 --- a/internal/next-common/src/next-common.ts +++ b/internal/next-common/src/next-common.ts @@ -13,6 +13,7 @@ export type { CachedFetchValue, IncrementalCacheValue, IncrementalCacheEntry, + IncrementalCacheKindHint, } from 'next/dist/server/response-cache/types'; export type RouteMetadata = NextRouteMetadata; diff --git a/internal/next-lru-cache/src/cache-types/next-cache-handler-value.ts b/internal/next-lru-cache/src/cache-types/next-cache-handler-value.ts index bbc24aed..bbb9fef7 100644 --- a/internal/next-lru-cache/src/cache-types/next-cache-handler-value.ts +++ b/internal/next-lru-cache/src/cache-types/next-cache-handler-value.ts @@ -33,6 +33,8 @@ function calculateObjectSize({ value }: CacheHandlerValue): number { } } +export type { LruCacheOptions }; + export function createCache(options?: LruCacheOptions): LRUCache { return createConfiguredCache(calculateObjectSize, options); } diff --git a/internal/next-lru-cache/src/create-configured-cache.ts b/internal/next-lru-cache/src/create-configured-cache.ts index 924e1a19..428a22ca 100644 --- a/internal/next-lru-cache/src/create-configured-cache.ts +++ b/internal/next-lru-cache/src/create-configured-cache.ts @@ -1,7 +1,16 @@ import { LRUCache } from 'lru-cache'; +/** + * Configuration options for the LRU cache. + */ export type LruCacheOptions = { + /** + * Optional. Maximum number of items the cache can hold. Defaults to 1000. + */ maxItemsNumber?: number; + /** + * Optional. Maximum size in bytes for each item in the cache. Defaults to 100 MB. + */ maxItemSizeBytes?: number; }; diff --git a/package-lock.json b/package-lock.json index 19c38221..796c55b5 100644 --- a/package-lock.json +++ b/package-lock.json @@ -36,7 +36,7 @@ "version": "0.0.0", "license": "MIT", "dependencies": { - "next": "14.0.4-canary.18", + "next": "14.0.5-canary.0", "react": "18.2.0", "react-dom": "18.2.0" }, @@ -44,7 +44,7 @@ "@neshca/cache-handler": "*", "@neshca/json-replacer-reviver": "*", "@neshca/tsconfig": "*", - "@next/eslint-plugin-next": "14.0.4-canary.18", + "@next/eslint-plugin-next": "14.0.5-canary.0", "@playwright/test": "1.40.1", "@types/node": "20.10.4", "@types/react": "18.2.42", @@ -59,155 +59,25 @@ "typescript": "5.3.3" } }, - "apps/cache-testing/node_modules/@next/env": { - "version": "14.0.4-canary.18", - "resolved": "https://registry.npmjs.org/@next/env/-/env-14.0.4-canary.18.tgz", - "integrity": "sha512-9GnscbrKiR/bfstVvWSxohqFZXNgsEdkXVX0L3pslFpbytEMB9tOUrQXyLmZnVhEZEwVFPd2vFxdjo+jBq9A2g==" - }, - "apps/cache-testing/node_modules/@next/swc-darwin-arm64": { - "version": "14.0.4-canary.18", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.0.4-canary.18.tgz", - "integrity": "sha512-XiIBoz6fDZR3pBZleeyHFzHLFOWewEFjNuxkB0KobBjbloZphVsb1fugCd5ZBYc7smthrOyiytBZtSb4v8aVsQ==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">= 10" - } - }, - "apps/cache-testing/node_modules/@next/swc-darwin-x64": { - "version": "14.0.4-canary.18", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.0.4-canary.18.tgz", - "integrity": "sha512-eROWKNwoRH7DNxYoL6pElztjcCfODjk8XHAlrehFe7550DoS739eoYflLZyOshzvMyL0P/ZghQDf+CHePY+N3g==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">= 10" - } - }, - "apps/cache-testing/node_modules/@next/swc-linux-arm64-gnu": { - "version": "14.0.4-canary.18", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.0.4-canary.18.tgz", - "integrity": "sha512-tT9mt2d2c3rQmI6NlhLk0THCJ0JUGHOuxdBTu9HVC6rVCiLsA8ZKTmBFeeV6tPdZqPmZdWJqhStBVcAnylfPfA==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "apps/cache-testing/node_modules/@next/swc-linux-arm64-musl": { - "version": "14.0.4-canary.18", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.0.4-canary.18.tgz", - "integrity": "sha512-yd5aaU4UN8FauTbAypt/iFHlGFseUa0VA6+hYRRBy5WPoVW7lpb0bQp2RPhM0w2XDQ8vVs9coI5wiQ0W3dRPQA==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "apps/cache-testing/node_modules/@next/swc-linux-x64-gnu": { - "version": "14.0.4-canary.18", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.0.4-canary.18.tgz", - "integrity": "sha512-YRvnW3awlcM2TOct0t7mZLwZ8jn9vXv3MRHFC7FHLpqBggBeRxH8kfst5SzOcVkW2NYPFjNSuAVmJqPJ9ks4PA==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "apps/cache-testing/node_modules/@next/swc-linux-x64-musl": { - "version": "14.0.4-canary.18", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.0.4-canary.18.tgz", - "integrity": "sha512-v221dAy0TVO+Er/rKO5wqRDqlinMA9fQt59SM+fpBQIDN1FIuLPnM+J85jDOMJ3I4UV9NqVP7zSd5lgNcFTIhw==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "apps/cache-testing/node_modules/@next/swc-win32-arm64-msvc": { - "version": "14.0.4-canary.18", - "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.0.4-canary.18.tgz", - "integrity": "sha512-qG1a9ctJMMen4LKAgMEyLGclfVlvxoEzvVOY1yRhTppxl+loWIRmmzWmw24HUvnu9Ro4St1QnTQalWnoZWtTCA==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 10" - } - }, - "apps/cache-testing/node_modules/@next/swc-win32-ia32-msvc": { - "version": "14.0.4-canary.18", - "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.0.4-canary.18.tgz", - "integrity": "sha512-3KI1Xr40OBDEsT5OLn3YnHDBtbProhIeP0af3zhE7Q0Nba5nsoVq9iX0j+lv9Xh6HxOWRU9kL6eJXstIdaybEQ==", - "cpu": [ - "ia32" - ], - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 10" - } - }, - "apps/cache-testing/node_modules/@next/swc-win32-x64-msvc": { - "version": "14.0.4-canary.18", - "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.0.4-canary.18.tgz", - "integrity": "sha512-okdZXwxo0lxWHRz3T7I6GQZu5g82SsTBVlZRH5aN0E1Sbw/3eCDqSBqYdyH+Ue9WpVllB2hN7tUzBDSdizHQ/A==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 10" + "apps/cache-testing/node_modules/@types/node": { + "version": "20.10.4", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.4.tgz", + "integrity": "sha512-D08YG6rr8X90YB56tSIuBaddy/UXAA9RKJoFvrsnogAum/0pmjkgi4+2nx96A330FmioegBWmEYQ+syqCFaveg==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" } }, "apps/cache-testing/node_modules/next": { - "version": "14.0.4-canary.18", - "resolved": "https://registry.npmjs.org/next/-/next-14.0.4-canary.18.tgz", - "integrity": "sha512-iMRDdqsKG73rjV782SOqPzur3RCzICuPpkocRzXfJtOTr7O9Ekg5k3WFlAje7ogr0RrKa0XXpasV9kyKWtCQ4g==", + "version": "14.0.5-canary.0", + "resolved": "https://registry.npmjs.org/next/-/next-14.0.5-canary.0.tgz", + "integrity": "sha512-gaIH3kv48t6PFrX48Y7RHWgSGKD43A3nB1ejHMLI5D3bjM1cuQFJGB6DHZ6RVMQhLeFRwcbOfenelP5qqG2EGQ==", "dependencies": { - "@next/env": "14.0.4-canary.18", + "@next/env": "14.0.5-canary.0", "@swc/helpers": "0.5.2", "busboy": "1.6.0", "caniuse-lite": "^1.0.30001406", + "graceful-fs": "^4.2.11", "postcss": "8.4.31", "styled-jsx": "5.1.1", "watchpack": "2.4.0" @@ -219,15 +89,15 @@ "node": ">=18.17.0" }, "optionalDependencies": { - "@next/swc-darwin-arm64": "14.0.4-canary.18", - "@next/swc-darwin-x64": "14.0.4-canary.18", - "@next/swc-linux-arm64-gnu": "14.0.4-canary.18", - "@next/swc-linux-arm64-musl": "14.0.4-canary.18", - "@next/swc-linux-x64-gnu": "14.0.4-canary.18", - "@next/swc-linux-x64-musl": "14.0.4-canary.18", - "@next/swc-win32-arm64-msvc": "14.0.4-canary.18", - "@next/swc-win32-ia32-msvc": "14.0.4-canary.18", - "@next/swc-win32-x64-msvc": "14.0.4-canary.18" + "@next/swc-darwin-arm64": "14.0.5-canary.0", + "@next/swc-darwin-x64": "14.0.5-canary.0", + "@next/swc-linux-arm64-gnu": "14.0.5-canary.0", + "@next/swc-linux-arm64-musl": "14.0.5-canary.0", + "@next/swc-linux-x64-gnu": "14.0.5-canary.0", + "@next/swc-linux-x64-musl": "14.0.5-canary.0", + "@next/swc-win32-arm64-msvc": "14.0.5-canary.0", + "@next/swc-win32-ia32-msvc": "14.0.5-canary.0", + "@next/swc-win32-x64-msvc": "14.0.5-canary.0" }, "peerDependencies": { "@opentelemetry/api": "^1.1.0", @@ -247,7 +117,7 @@ "docs/cache-handler-docs": { "version": "0.5.4", "dependencies": { - "next": "14.0.3", + "next": "14.0.4", "nextra": "2.13.2", "nextra-theme-docs": "2.13.2", "react": "18.2.0", @@ -255,7 +125,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@next/eslint-plugin-next": "14.0.3", + "@next/eslint-plugin-next": "14.0.4", "@types/node": "20.10.4", "@types/react": "18.2.42", "@types/react-dom": "18.2.17", @@ -264,14 +134,23 @@ } }, "docs/cache-handler-docs/node_modules/@next/eslint-plugin-next": { - "version": "14.0.3", - "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.0.3.tgz", - "integrity": "sha512-j4K0n+DcmQYCVnSAM+UByTVfIHnYQy2ODozfQP+4RdwtRDfobrIvKq1K4Exb2koJ79HSSa7s6B2SA8T/1YR3RA==", + "version": "14.0.4", + "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.0.4.tgz", + "integrity": "sha512-U3qMNHmEZoVmHA0j/57nRfi3AscXNvkOnxDmle/69Jz/G0o/gWjXTDdlgILZdrxQ0Lw/jv2mPW8PGy0EGIHXhQ==", "dev": true, "dependencies": { "glob": "7.1.7" } }, + "docs/cache-handler-docs/node_modules/@types/node": { + "version": "20.10.4", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.4.tgz", + "integrity": "sha512-D08YG6rr8X90YB56tSIuBaddy/UXAA9RKJoFvrsnogAum/0pmjkgi4+2nx96A330FmioegBWmEYQ+syqCFaveg==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "docs/cache-handler-docs/node_modules/glob": { "version": "7.1.7", "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", @@ -390,6 +269,15 @@ "typescript": "5.3.3" } }, + "internal/backend/node_modules/@types/node": { + "version": "20.10.4", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.4.tgz", + "integrity": "sha512-D08YG6rr8X90YB56tSIuBaddy/UXAA9RKJoFvrsnogAum/0pmjkgi4+2nx96A330FmioegBWmEYQ+syqCFaveg==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "internal/eslint-config-neshca": { "version": "0.0.0", "license": "MIT", @@ -399,9 +287,9 @@ } }, "internal/eslint-config-neshca/node_modules/@next/eslint-plugin-next": { - "version": "14.0.3", - "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.0.3.tgz", - "integrity": "sha512-j4K0n+DcmQYCVnSAM+UByTVfIHnYQy2ODozfQP+4RdwtRDfobrIvKq1K4Exb2koJ79HSSa7s6B2SA8T/1YR3RA==", + "version": "14.0.4", + "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.0.4.tgz", + "integrity": "sha512-U3qMNHmEZoVmHA0j/57nRfi3AscXNvkOnxDmle/69Jz/G0o/gWjXTDdlgILZdrxQ0Lw/jv2mPW8PGy0EGIHXhQ==", "dev": true, "optional": true, "peer": true, @@ -486,7 +374,7 @@ "version": "0.0.0", "license": "MIT", "dependencies": { - "next": "14.0.4-canary.9" + "next": "14.0.5-canary.0" }, "devDependencies": { "@neshca/tsconfig": "*", @@ -496,15 +384,25 @@ "typescript": "5.3.3" } }, + "internal/next-common/node_modules/@types/node": { + "version": "20.10.4", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.4.tgz", + "integrity": "sha512-D08YG6rr8X90YB56tSIuBaddy/UXAA9RKJoFvrsnogAum/0pmjkgi4+2nx96A330FmioegBWmEYQ+syqCFaveg==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "internal/next-common/node_modules/next": { - "version": "14.0.4-canary.9", - "resolved": "https://registry.npmjs.org/next/-/next-14.0.4-canary.9.tgz", - "integrity": "sha512-gqnjWqAXwTLoUii3pEvEbO48Ortf4jAdKR19w2KVBzXT3+219cSTdr/V2l4QKddselcX//oguAEA0jrx/uAyEg==", + "version": "14.0.5-canary.0", + "resolved": "https://registry.npmjs.org/next/-/next-14.0.5-canary.0.tgz", + "integrity": "sha512-gaIH3kv48t6PFrX48Y7RHWgSGKD43A3nB1ejHMLI5D3bjM1cuQFJGB6DHZ6RVMQhLeFRwcbOfenelP5qqG2EGQ==", "dependencies": { - "@next/env": "14.0.4-canary.9", + "@next/env": "14.0.5-canary.0", "@swc/helpers": "0.5.2", "busboy": "1.6.0", "caniuse-lite": "^1.0.30001406", + "graceful-fs": "^4.2.11", "postcss": "8.4.31", "styled-jsx": "5.1.1", "watchpack": "2.4.0" @@ -516,15 +414,15 @@ "node": ">=18.17.0" }, "optionalDependencies": { - "@next/swc-darwin-arm64": "14.0.4-canary.9", - "@next/swc-darwin-x64": "14.0.4-canary.9", - "@next/swc-linux-arm64-gnu": "14.0.4-canary.9", - "@next/swc-linux-arm64-musl": "14.0.4-canary.9", - "@next/swc-linux-x64-gnu": "14.0.4-canary.9", - "@next/swc-linux-x64-musl": "14.0.4-canary.9", - "@next/swc-win32-arm64-msvc": "14.0.4-canary.9", - "@next/swc-win32-ia32-msvc": "14.0.4-canary.9", - "@next/swc-win32-x64-msvc": "14.0.4-canary.9" + "@next/swc-darwin-arm64": "14.0.5-canary.0", + "@next/swc-darwin-x64": "14.0.5-canary.0", + "@next/swc-linux-arm64-gnu": "14.0.5-canary.0", + "@next/swc-linux-arm64-musl": "14.0.5-canary.0", + "@next/swc-linux-x64-gnu": "14.0.5-canary.0", + "@next/swc-linux-x64-musl": "14.0.5-canary.0", + "@next/swc-win32-arm64-msvc": "14.0.5-canary.0", + "@next/swc-win32-ia32-msvc": "14.0.5-canary.0", + "@next/swc-win32-x64-msvc": "14.0.5-canary.0" }, "peerDependencies": { "@opentelemetry/api": "^1.1.0", @@ -557,6 +455,15 @@ "typescript": "5.3.3" } }, + "internal/next-lru-cache/node_modules/@types/node": { + "version": "20.10.4", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.4.tgz", + "integrity": "sha512-D08YG6rr8X90YB56tSIuBaddy/UXAA9RKJoFvrsnogAum/0pmjkgi4+2nx96A330FmioegBWmEYQ+syqCFaveg==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "internal/prettier-config": { "name": "@neshca/prettier-config", "version": "0.0.0", @@ -566,9 +473,9 @@ } }, "internal/prettier-config/node_modules/@next/eslint-plugin-next": { - "version": "14.0.3", - "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.0.3.tgz", - "integrity": "sha512-j4K0n+DcmQYCVnSAM+UByTVfIHnYQy2ODozfQP+4RdwtRDfobrIvKq1K4Exb2koJ79HSSa7s6B2SA8T/1YR3RA==", + "version": "14.0.4", + "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.0.4.tgz", + "integrity": "sha512-U3qMNHmEZoVmHA0j/57nRfi3AscXNvkOnxDmle/69Jz/G0o/gWjXTDdlgILZdrxQ0Lw/jv2mPW8PGy0EGIHXhQ==", "dev": true, "optional": true, "peer": true, @@ -696,9 +603,9 @@ } }, "node_modules/@babel/code-frame": { - "version": "7.23.4", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.23.4.tgz", - "integrity": "sha512-r1IONyb6Ia+jYR2vvIDhdWdlTGhqbBoFqLTQidzZ4kepUFH15ejXvFHxCVbtl7BOXIudsIubf4E81xeA3h3IXA==", + "version": "7.23.5", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.23.5.tgz", + "integrity": "sha512-CgH3s1a96LipHCmSUmYFPwY7MNx8C3avkq7i4Wl3cfa662ldtUe4VM1TPXX70pfmrlWTb6jLqTYrZyT2ZTJBgA==", "dependencies": { "@babel/highlight": "^7.23.4", "chalk": "^2.4.2" @@ -708,30 +615,30 @@ } }, "node_modules/@babel/compat-data": { - "version": "7.23.3", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.23.3.tgz", - "integrity": "sha512-BmR4bWbDIoFJmJ9z2cZ8Gmm2MXgEDgjdWgpKmKWUt54UGFJdlj31ECtbaDvCG/qVdG3AQ1SfpZEs01lUFbzLOQ==", + "version": "7.23.5", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.23.5.tgz", + "integrity": "sha512-uU27kfDRlhfKl+w1U6vp16IuvSLtjAxdArVXPa9BvLkrr7CYIsxH5adpHObeAGY/41+syctUWOZ140a2Rvkgjw==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/core": { - "version": "7.23.3", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.23.3.tgz", - "integrity": "sha512-Jg+msLuNuCJDyBvFv5+OKOUjWMZgd85bKjbICd3zWrKAo+bJ49HJufi7CQE0q0uR8NGyO6xkCACScNqyjHSZew==", + "version": "7.23.5", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.23.5.tgz", + "integrity": "sha512-Cwc2XjUrG4ilcfOw4wBAK+enbdgwAcAJCfGUItPBKR7Mjw4aEfAFYrLxeRp4jWgtNIKn3n2AlBOfwwafl+42/g==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.2.0", - "@babel/code-frame": "^7.22.13", - "@babel/generator": "^7.23.3", + "@babel/code-frame": "^7.23.5", + "@babel/generator": "^7.23.5", "@babel/helper-compilation-targets": "^7.22.15", "@babel/helper-module-transforms": "^7.23.3", - "@babel/helpers": "^7.23.2", - "@babel/parser": "^7.23.3", + "@babel/helpers": "^7.23.5", + "@babel/parser": "^7.23.5", "@babel/template": "^7.22.15", - "@babel/traverse": "^7.23.3", - "@babel/types": "^7.23.3", + "@babel/traverse": "^7.23.5", + "@babel/types": "^7.23.5", "convert-source-map": "^2.0.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -792,12 +699,12 @@ } }, "node_modules/@babel/generator": { - "version": "7.23.4", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.23.4.tgz", - "integrity": "sha512-esuS49Cga3HcThFNebGhlgsrVLkvhqvYDTzgjfFFlHJcIfLe5jFmRRfCQ1KuBfc4Jrtn3ndLgKWAKjBE+IraYQ==", + "version": "7.23.5", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.23.5.tgz", + "integrity": "sha512-BPssCHrBD+0YrxviOa3QzpqwhNIXKEtOa2jQrm4FlmkC2apYgRnQcmPWiGZDlGxiNtltnUFolMe8497Esry+jA==", "dev": true, "dependencies": { - "@babel/types": "^7.23.4", + "@babel/types": "^7.23.5", "@jridgewell/gen-mapping": "^0.3.2", "@jridgewell/trace-mapping": "^0.3.17", "jsesc": "^2.5.1" @@ -953,23 +860,23 @@ } }, "node_modules/@babel/helper-validator-option": { - "version": "7.22.15", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.22.15.tgz", - "integrity": "sha512-bMn7RmyFjY/mdECUbgn9eoSY4vqvacUnS9i9vGAGttgFWesO6B4CYWA7XlpbWgBt71iv/hfbPlynohStqnu5hA==", + "version": "7.23.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.23.5.tgz", + "integrity": "sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helpers": { - "version": "7.23.4", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.23.4.tgz", - "integrity": "sha512-HfcMizYz10cr3h29VqyfGL6ZWIjTwWfvYBMsBVGwpcbhNGe3wQ1ZXZRPzZoAHhd9OqHadHqjQ89iVKINXnbzuw==", + "version": "7.23.5", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.23.5.tgz", + "integrity": "sha512-oO7us8FzTEsG3U6ag9MfdF1iA/7Z6dz+MtFhifZk8C8o453rGJFFWUP1t+ULM9TUIAzC9uxXEiXjOiVMyd7QPg==", "dev": true, "dependencies": { "@babel/template": "^7.22.15", - "@babel/traverse": "^7.23.4", - "@babel/types": "^7.23.4" + "@babel/traverse": "^7.23.5", + "@babel/types": "^7.23.5" }, "engines": { "node": ">=6.9.0" @@ -989,9 +896,9 @@ } }, "node_modules/@babel/parser": { - "version": "7.23.4", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.4.tgz", - "integrity": "sha512-vf3Xna6UEprW+7t6EtOmFpHNAuxw3xqPZghy+brsnusscJRW5BMUzzHZc5ICjULee81WeUV2jjakG09MDglJXQ==", + "version": "7.23.5", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.5.tgz", + "integrity": "sha512-hOOqoiNXrmGdFbhgCzu6GiURxUgM27Xwd/aPuu8RfHEZPBzL1Z54okAHAQjXfcQNwvrlkAmAp4SlRTZ45vlthQ==", "dev": true, "bin": { "parser": "bin/babel-parser.js" @@ -1001,9 +908,9 @@ } }, "node_modules/@babel/runtime": { - "version": "7.23.4", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.23.4.tgz", - "integrity": "sha512-2Yv65nlWnWlSpe3fXEyX5i7fx5kIKo4Qbcj+hMO0odwaneFjfXw5fdum+4yL20O0QiaHpia0cYQ9xpNMqrBwHg==", + "version": "7.23.5", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.23.5.tgz", + "integrity": "sha512-NdUTHcPe4C99WxPub+K9l9tK5/lV4UXIoaHSYgzco9BCyjKAAwzdBI+wWtYqHt7LJdbo74ZjRPJgzVweq1sz0w==", "dependencies": { "regenerator-runtime": "^0.14.0" }, @@ -1026,19 +933,19 @@ } }, "node_modules/@babel/traverse": { - "version": "7.23.4", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.23.4.tgz", - "integrity": "sha512-IYM8wSUwunWTB6tFC2dkKZhxbIjHoWemdK+3f8/wq8aKhbUscxD5MX72ubd90fxvFknaLPeGw5ycU84V1obHJg==", + "version": "7.23.5", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.23.5.tgz", + "integrity": "sha512-czx7Xy5a6sapWWRx61m1Ke1Ra4vczu1mCTtJam5zRTBOonfdJ+S/B6HYmGYu3fJtr8GGET3si6IhgWVBhJ/m8w==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.23.4", - "@babel/generator": "^7.23.4", + "@babel/code-frame": "^7.23.5", + "@babel/generator": "^7.23.5", "@babel/helper-environment-visitor": "^7.22.20", "@babel/helper-function-name": "^7.23.0", "@babel/helper-hoist-variables": "^7.22.5", "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/parser": "^7.23.4", - "@babel/types": "^7.23.4", + "@babel/parser": "^7.23.5", + "@babel/types": "^7.23.5", "debug": "^4.1.0", "globals": "^11.1.0" }, @@ -1056,9 +963,9 @@ } }, "node_modules/@babel/types": { - "version": "7.23.4", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.23.4.tgz", - "integrity": "sha512-7uIFwVYpoplT5jp/kVv6EF93VaJ8H+Yn5IczYiaAi98ajzjfoZfslet/e0sLh+wVBjb2qqIut1b0S26VSafsSQ==", + "version": "7.23.5", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.23.5.tgz", + "integrity": "sha512-ON5kSOJwVO6xXVRTvOI0eOnWe7VdUcIpsovGo9U/Br4Ie4UVFQTboO2cYnDhAGU6Fp+UxSiT+pMft0SMHfuq6w==", "dev": true, "dependencies": { "@babel/helper-string-parser": "^7.23.4", @@ -1947,11 +1854,6 @@ "fs-extra": "^8.1.0" } }, - "node_modules/@manypkg/find-root/node_modules/@types/node": { - "version": "12.20.55", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", - "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" - }, "node_modules/@manypkg/find-root/node_modules/fs-extra": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", @@ -2313,14 +2215,14 @@ "link": true }, "node_modules/@next/env": { - "version": "14.0.4-canary.9", - "resolved": "https://registry.npmjs.org/@next/env/-/env-14.0.4-canary.9.tgz", - "integrity": "sha512-PPEYYdqjziVpjVnLx9340dYESLa35bHiARPz+jeJITsASTtY70av6lMKDJnG55UoG7owhAEGjSCCo1Nx0usXPg==" + "version": "14.0.5-canary.0", + "resolved": "https://registry.npmjs.org/@next/env/-/env-14.0.5-canary.0.tgz", + "integrity": "sha512-Z4U5vldVFpHh9RcXJSXb67vySJQ5lwIG51tAltr6mdgJ3YJBlK53THU1fd1+/y8sfKZ7+FJcEQEIYzE6ivxdJA==" }, "node_modules/@next/eslint-plugin-next": { - "version": "14.0.4-canary.18", - "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.0.4-canary.18.tgz", - "integrity": "sha512-kSo5R2bLqeTvRGdunAvlBZJN4/CpMX5/mY+lW+dBoeC7oZeEUVCdInJ+XKyde/VSuStbxQswIabHScW3vmDJpw==", + "version": "14.0.5-canary.0", + "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.0.5-canary.0.tgz", + "integrity": "sha512-NjuGT+hutksNncKRbVnQF8gGcNToubkhOiHn2xIQKlQoG/4eSrGR/kGcvHc20VhQgEzegEdTlehBqBZ8HgF4EQ==", "dev": true, "dependencies": { "glob": "7.1.7" @@ -2347,9 +2249,9 @@ } }, "node_modules/@next/swc-darwin-arm64": { - "version": "14.0.4-canary.9", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.0.4-canary.9.tgz", - "integrity": "sha512-vJcypCqz0Tr1gtJf69IU/CbL84Sz1LUZ7XHvvsDO1OCmDAHOyQ1ma0tDp0mKh6kYtDRo7AxquAbrIi+nZZq22Q==", + "version": "14.0.5-canary.0", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.0.5-canary.0.tgz", + "integrity": "sha512-MZzTiLWAGqSOnwGNFaPpyf1gOJartSkMiS+TtOucTGMpHddGUf+fWV4P5OSFV0PfO9rfbNbbxwz+3SwlWKrcsw==", "cpu": [ "arm64" ], @@ -2362,9 +2264,9 @@ } }, "node_modules/@next/swc-darwin-x64": { - "version": "14.0.4-canary.9", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.0.4-canary.9.tgz", - "integrity": "sha512-y8qa/QuC+eFAMA5YF234ES2DOqYvjCrWWwQTrlg4d9BRJWWwpSM8Pz1ryNxg2jPQgFQxB9Q9pQUgwflEnCJZ9g==", + "version": "14.0.5-canary.0", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.0.5-canary.0.tgz", + "integrity": "sha512-zpvPHrSTi8H+RZWDAIwSXIvRBGe+1S/VvOGRWIovuT/vQd5WcDWqWA3UKm5I+X0bufIGqzEKLHSJG+ErgzmKPQ==", "cpu": [ "x64" ], @@ -2377,9 +2279,9 @@ } }, "node_modules/@next/swc-linux-arm64-gnu": { - "version": "14.0.4-canary.9", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.0.4-canary.9.tgz", - "integrity": "sha512-gmG05I250IwpgYx3zJaw7m4qQg6IwTE8XYI39PeM9dMNOVNdBQOsOWFg95mN4plhq7Dl58lD94APopkNV/RdZg==", + "version": "14.0.5-canary.0", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.0.5-canary.0.tgz", + "integrity": "sha512-LjJGBK9ZbbvfGrMfLAngMl2dBH/QxTOZQgGuGfnMIKf8nev0eKUYQEnxfU8rFchm+yoXbSR2+62/PD0tlvk0gA==", "cpu": [ "arm64" ], @@ -2392,9 +2294,9 @@ } }, "node_modules/@next/swc-linux-arm64-musl": { - "version": "14.0.4-canary.9", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.0.4-canary.9.tgz", - "integrity": "sha512-FX1JoxjViGa73zaeXSv+mn9+t7P1TmogJ1fXKxaCJd8DGPGdpByIH7hN5HSbHmwX3lzk3Pk0/E25n0/F4I+PNA==", + "version": "14.0.5-canary.0", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.0.5-canary.0.tgz", + "integrity": "sha512-KQ2Sbeyyg1KBUeza2stPG6WMLqSolVw4YBdzvnkG5qKqhDepYU1Yp+66q3U6FyJbjRI1yGdnpo0TvlyUsDpYPg==", "cpu": [ "arm64" ], @@ -2407,9 +2309,9 @@ } }, "node_modules/@next/swc-linux-x64-gnu": { - "version": "14.0.4-canary.9", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.0.4-canary.9.tgz", - "integrity": "sha512-X/fg2cGoQnssTtVPRNypY5Zg9d3Z/75K6HouE3PbUDQQ89FHb3O1Iw+7jb011a82S+EQzGTVdfSRO52T9AMSkQ==", + "version": "14.0.5-canary.0", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.0.5-canary.0.tgz", + "integrity": "sha512-rLi2f2lSugazPcxhP+vlKrHv17D4HmHj+dRY8uDm7tcqoRQ/hAMwligiXjNPqFlqX41do8IDOlijzXwLCeDZAg==", "cpu": [ "x64" ], @@ -2422,9 +2324,9 @@ } }, "node_modules/@next/swc-linux-x64-musl": { - "version": "14.0.4-canary.9", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.0.4-canary.9.tgz", - "integrity": "sha512-LjdrVTk44m4lpQC6r6podS00cYlByN1a8fRsEEb9ygIgdd0ULkjeTdho0sScqJ8TtxmxYyJfNf+AzUJUeEilXg==", + "version": "14.0.5-canary.0", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.0.5-canary.0.tgz", + "integrity": "sha512-WK85aY0rkBjIS92Z4SyRNxOn6fG+kdhOsLKKO5WQDWZZPoK8BZA64tjhcWHgRkqHl+D2MIDVlB+T6y4vJLsnIQ==", "cpu": [ "x64" ], @@ -2437,9 +2339,9 @@ } }, "node_modules/@next/swc-win32-arm64-msvc": { - "version": "14.0.4-canary.9", - "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.0.4-canary.9.tgz", - "integrity": "sha512-knvcp9heDHRKmQ6ZrtN/4ZtgdhS0OnaAGbKUnELNhhKwNkavuXNwqUcKXcgN2l0qnJ6L5I392AyQYWPfgpzOnA==", + "version": "14.0.5-canary.0", + "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.0.5-canary.0.tgz", + "integrity": "sha512-3qgTPqrPcBQP2pgwenkzLeCgnqbTiNsWAFKaVCov9wQeE6v+JRQHeVssOVEKQfxTBXMX57CyrJtxkp+QWDcy5g==", "cpu": [ "arm64" ], @@ -2452,9 +2354,9 @@ } }, "node_modules/@next/swc-win32-ia32-msvc": { - "version": "14.0.4-canary.9", - "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.0.4-canary.9.tgz", - "integrity": "sha512-HS5HOemQN6TYTb+d5rTB33E+7DEtYnUkqFVat3ZwTx7NR+dCsqAJhqjUvz+OHq1ZYlJOtPQz1tWuUEVlXk/pDA==", + "version": "14.0.5-canary.0", + "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.0.5-canary.0.tgz", + "integrity": "sha512-Jzr5d9qWa9sIqIt0Xv0AdGUXxbsjQN+iLy5cPJC+f/PoM7x+q1jJj/JwVlCcKWD99Q1lA6keombn4oqlEy5Clw==", "cpu": [ "ia32" ], @@ -2467,9 +2369,9 @@ } }, "node_modules/@next/swc-win32-x64-msvc": { - "version": "14.0.4-canary.9", - "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.0.4-canary.9.tgz", - "integrity": "sha512-0KKa2ceDRnsyd/vcf9jtgMQVw7h0JMLiEm7bAlr4XWyKWgXnh4Koh9pRHyUDNbCMCEumvsDYAeam/6Po/U+2cQ==", + "version": "14.0.5-canary.0", + "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.0.5-canary.0.tgz", + "integrity": "sha512-XTahlDCNPJxD6nHxt60Qsm0K0K/U+mNhtFSLggRuOmOKk+mOi2cFTO+Y6iFLVvFE5sD/iuWnB2LOgc7BH/2FKw==", "cpu": [ "x64" ], @@ -2917,9 +2819,9 @@ } }, "node_modules/@rollup/rollup-android-arm-eabi": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.6.0.tgz", - "integrity": "sha512-keHkkWAe7OtdALGoutLY3utvthkGF+Y17ws9LYT8pxMBYXaCoH/8dXS2uzo6e8+sEhY7y/zi5RFo22Dy2lFpDw==", + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.7.0.tgz", + "integrity": "sha512-rGku10pL1StFlFvXX5pEv88KdGW6DHUghsxyP/aRYb9eH+74jTGJ3U0S/rtlsQ4yYq1Hcc7AMkoJOb1xu29Fxw==", "cpu": [ "arm" ], @@ -2930,9 +2832,9 @@ ] }, "node_modules/@rollup/rollup-android-arm64": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.6.0.tgz", - "integrity": "sha512-y3Kt+34smKQNWilicPbBz/MXEY7QwDzMFNgwEWeYiOhUt9MTWKjHqe3EVkXwT2fR7izOvHpDWZ0o2IyD9SWX7A==", + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.7.0.tgz", + "integrity": "sha512-/EBw0cuJ/KVHiU2qyVYUhogXz7W2vXxBzeE9xtVIMC+RyitlY2vvaoysMUqASpkUtoNIHlnKTu/l7mXOPgnKOA==", "cpu": [ "arm64" ], @@ -2943,9 +2845,9 @@ ] }, "node_modules/@rollup/rollup-darwin-arm64": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.6.0.tgz", - "integrity": "sha512-oLzzxcUIHltHxOCmaXl+pkIlU+uhSxef5HfntW7RsLh1eHm+vJzjD9Oo4oUKso4YuP4PpbFJNlZjJuOrxo8dPg==", + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.7.0.tgz", + "integrity": "sha512-4VXG1bgvClJdbEYYjQ85RkOtwN8sqI3uCxH0HC5w9fKdqzRzgG39K7GAehATGS8jghA7zNoS5CjSKkDEqWmNZg==", "cpu": [ "arm64" ], @@ -2956,9 +2858,9 @@ ] }, "node_modules/@rollup/rollup-darwin-x64": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.6.0.tgz", - "integrity": "sha512-+ANnmjkcOBaV25n0+M0Bere3roeVAnwlKW65qagtuAfIxXF9YxUneRyAn/RDcIdRa7QrjRNJL3jR7T43ObGe8Q==", + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.7.0.tgz", + "integrity": "sha512-/ImhO+T/RWJ96hUbxiCn2yWI0/MeQZV/aeukQQfhxiSXuZJfyqtdHPUPrc84jxCfXTxbJLmg4q+GBETeb61aNw==", "cpu": [ "x64" ], @@ -2969,9 +2871,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm-gnueabihf": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.6.0.tgz", - "integrity": "sha512-tBTSIkjSVUyrekddpkAqKOosnj1Fc0ZY0rJL2bIEWPKqlEQk0paORL9pUIlt7lcGJi3LzMIlUGXvtNi1Z6MOCQ==", + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.7.0.tgz", + "integrity": "sha512-zhye8POvTyUXlKbfPBVqoHy3t43gIgffY+7qBFqFxNqVtltQLtWeHNAbrMnXiLIfYmxcoL/feuLDote2tx+Qbg==", "cpu": [ "arm" ], @@ -2982,9 +2884,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-gnu": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.6.0.tgz", - "integrity": "sha512-Ed8uJI3kM11de9S0j67wAV07JUNhbAqIrDYhQBrQW42jGopgheyk/cdcshgGO4fW5Wjq97COCY/BHogdGvKVNQ==", + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.7.0.tgz", + "integrity": "sha512-RAdr3OJnUum6Vs83cQmKjxdTg31zJnLLTkjhcFt0auxM6jw00GD6IPFF42uasYPr/wGC6TRm7FsQiJyk0qIEfg==", "cpu": [ "arm64" ], @@ -2995,9 +2897,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-musl": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.6.0.tgz", - "integrity": "sha512-mZoNQ/qK4D7SSY8v6kEsAAyDgznzLLuSFCA3aBHZTmf3HP/dW4tNLTtWh9+LfyO0Z1aUn+ecpT7IQ3WtIg3ViQ==", + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.7.0.tgz", + "integrity": "sha512-nhWwYsiJwZGq7SyR3afS3EekEOsEAlrNMpPC4ZDKn5ooYSEjDLe9W/xGvoIV8/F/+HNIY6jY8lIdXjjxfxopXw==", "cpu": [ "arm64" ], @@ -3007,10 +2909,23 @@ "linux" ] }, + "node_modules/@rollup/rollup-linux-riscv64-gnu": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.7.0.tgz", + "integrity": "sha512-rlfy5RnQG1aop1BL/gjdH42M2geMUyVQqd52GJVirqYc787A/XVvl3kQ5NG/43KXgOgE9HXgCaEH05kzQ+hLoA==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, "node_modules/@rollup/rollup-linux-x64-gnu": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.6.0.tgz", - "integrity": "sha512-rouezFHpwCqdEXsqAfNsTgSWO0FoZ5hKv5p+TGO5KFhyN/dvYXNMqMolOb8BkyKcPqjYRBeT+Z6V3aM26rPaYg==", + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.7.0.tgz", + "integrity": "sha512-cCkoGlGWfBobdDtiiypxf79q6k3/iRVGu1HVLbD92gWV5WZbmuWJCgRM4x2N6i7ljGn1cGytPn9ZAfS8UwF6vg==", "cpu": [ "x64" ], @@ -3021,9 +2936,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-musl": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.6.0.tgz", - "integrity": "sha512-Bbm+fyn3S6u51urfj3YnqBXg5vI2jQPncRRELaucmhBVyZkbWClQ1fEsRmdnCPpQOQfkpg9gZArvtMVkOMsh1w==", + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.7.0.tgz", + "integrity": "sha512-R2oBf2p/Arc1m+tWmiWbpHBjEcJnHVnv6bsypu4tcKdrYTpDfl1UT9qTyfkIL1iiii5D4WHxUHCg5X0pzqmxFg==", "cpu": [ "x64" ], @@ -3034,9 +2949,9 @@ ] }, "node_modules/@rollup/rollup-win32-arm64-msvc": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.6.0.tgz", - "integrity": "sha512-+MRMcyx9L2kTrTUzYmR61+XVsliMG4odFb5UmqtiT8xOfEicfYAGEuF/D1Pww1+uZkYhBqAHpvju7VN+GnC3ng==", + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.7.0.tgz", + "integrity": "sha512-CPtgaQL1aaPc80m8SCVEoxFGHxKYIt3zQYC3AccL/SqqiWXblo3pgToHuBwR8eCP2Toa+X1WmTR/QKFMykws7g==", "cpu": [ "arm64" ], @@ -3047,9 +2962,9 @@ ] }, "node_modules/@rollup/rollup-win32-ia32-msvc": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.6.0.tgz", - "integrity": "sha512-rxfeE6K6s/Xl2HGeK6cO8SiQq3k/3BYpw7cfhW5Bk2euXNEpuzi2cc7llxx1si1QgwfjNtdRNTGqdBzGlFZGFw==", + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.7.0.tgz", + "integrity": "sha512-pmioUlttNh9GXF5x2CzNa7Z8kmRTyhEzzAC+2WOOapjewMbl+3tGuAnxbwc5JyG8Jsz2+hf/QD/n5VjimOZ63g==", "cpu": [ "ia32" ], @@ -3060,9 +2975,9 @@ ] }, "node_modules/@rollup/rollup-win32-x64-msvc": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.6.0.tgz", - "integrity": "sha512-QqmCsydHS172Y0Kc13bkMXvipbJSvzeglBncJG3LsYJSiPlxYACz7MmJBs4A8l1oU+jfhYEIC/+AUSlvjmiX/g==", + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.7.0.tgz", + "integrity": "sha512-SeZzC2QhhdBQUm3U0c8+c/P6UlRyBcLL2Xp5KX7z46WXZxzR8RJSIWL9wSUeBTgxog5LTPJuPj0WOT9lvrtP7Q==", "cpu": [ "x64" ], @@ -3214,12 +3129,9 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "20.10.4", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.4.tgz", - "integrity": "sha512-D08YG6rr8X90YB56tSIuBaddy/UXAA9RKJoFvrsnogAum/0pmjkgi4+2nx96A330FmioegBWmEYQ+syqCFaveg==", - "dependencies": { - "undici-types": "~5.26.4" - } + "version": "12.20.55", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", + "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" }, "node_modules/@types/node-fetch": { "version": "2.6.9", @@ -3276,16 +3188,16 @@ "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "6.13.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.13.1.tgz", - "integrity": "sha512-5bQDGkXaxD46bPvQt08BUz9YSaO4S0fB1LB5JHQuXTfkGPI3+UUeS387C/e9jRie5GqT8u5kFTrMvAjtX4O5kA==", + "version": "6.13.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.13.2.tgz", + "integrity": "sha512-3+9OGAWHhk4O1LlcwLBONbdXsAhLjyCFogJY/cWy2lxdVJ2JrcTF2pTGMaLl2AE7U1l31n8Py4a8bx5DLf/0dQ==", "dev": true, "dependencies": { "@eslint-community/regexpp": "^4.5.1", - "@typescript-eslint/scope-manager": "6.13.1", - "@typescript-eslint/type-utils": "6.13.1", - "@typescript-eslint/utils": "6.13.1", - "@typescript-eslint/visitor-keys": "6.13.1", + "@typescript-eslint/scope-manager": "6.13.2", + "@typescript-eslint/type-utils": "6.13.2", + "@typescript-eslint/utils": "6.13.2", + "@typescript-eslint/visitor-keys": "6.13.2", "debug": "^4.3.4", "graphemer": "^1.4.0", "ignore": "^5.2.4", @@ -3311,15 +3223,15 @@ } }, "node_modules/@typescript-eslint/parser": { - "version": "6.13.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.13.1.tgz", - "integrity": "sha512-fs2XOhWCzRhqMmQf0eicLa/CWSaYss2feXsy7xBD/pLyWke/jCIVc2s1ikEAtSW7ina1HNhv7kONoEfVNEcdDQ==", + "version": "6.13.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.13.2.tgz", + "integrity": "sha512-MUkcC+7Wt/QOGeVlM8aGGJZy1XV5YKjTpq9jK6r6/iLsGXhBVaGP5N0UYvFsu9BFlSpwY9kMretzdBH01rkRXg==", "dev": true, "dependencies": { - "@typescript-eslint/scope-manager": "6.13.1", - "@typescript-eslint/types": "6.13.1", - "@typescript-eslint/typescript-estree": "6.13.1", - "@typescript-eslint/visitor-keys": "6.13.1", + "@typescript-eslint/scope-manager": "6.13.2", + "@typescript-eslint/types": "6.13.2", + "@typescript-eslint/typescript-estree": "6.13.2", + "@typescript-eslint/visitor-keys": "6.13.2", "debug": "^4.3.4" }, "engines": { @@ -3339,13 +3251,13 @@ } }, "node_modules/@typescript-eslint/scope-manager": { - "version": "6.13.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.13.1.tgz", - "integrity": "sha512-BW0kJ7ceiKi56GbT2KKzZzN+nDxzQK2DS6x0PiSMPjciPgd/JRQGMibyaN2cPt2cAvuoH0oNvn2fwonHI+4QUQ==", + "version": "6.13.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.13.2.tgz", + "integrity": "sha512-CXQA0xo7z6x13FeDYCgBkjWzNqzBn8RXaE3QVQVIUm74fWJLkJkaHmHdKStrxQllGh6Q4eUGyNpMe0b1hMkXFA==", "dev": true, "dependencies": { - "@typescript-eslint/types": "6.13.1", - "@typescript-eslint/visitor-keys": "6.13.1" + "@typescript-eslint/types": "6.13.2", + "@typescript-eslint/visitor-keys": "6.13.2" }, "engines": { "node": "^16.0.0 || >=18.0.0" @@ -3356,13 +3268,13 @@ } }, "node_modules/@typescript-eslint/type-utils": { - "version": "6.13.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.13.1.tgz", - "integrity": "sha512-A2qPlgpxx2v//3meMqQyB1qqTg1h1dJvzca7TugM3Yc2USDY+fsRBiojAEo92HO7f5hW5mjAUF6qobOPzlBCBQ==", + "version": "6.13.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.13.2.tgz", + "integrity": "sha512-Qr6ssS1GFongzH2qfnWKkAQmMUyZSyOr0W54nZNU1MDfo+U4Mv3XveeLZzadc/yq8iYhQZHYT+eoXJqnACM1tw==", "dev": true, "dependencies": { - "@typescript-eslint/typescript-estree": "6.13.1", - "@typescript-eslint/utils": "6.13.1", + "@typescript-eslint/typescript-estree": "6.13.2", + "@typescript-eslint/utils": "6.13.2", "debug": "^4.3.4", "ts-api-utils": "^1.0.1" }, @@ -3383,9 +3295,9 @@ } }, "node_modules/@typescript-eslint/types": { - "version": "6.13.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.13.1.tgz", - "integrity": "sha512-gjeEskSmiEKKFIbnhDXUyiqVma1gRCQNbVZ1C8q7Zjcxh3WZMbzWVfGE9rHfWd1msQtPS0BVD9Jz9jded44eKg==", + "version": "6.13.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.13.2.tgz", + "integrity": "sha512-7sxbQ+EMRubQc3wTfTsycgYpSujyVbI1xw+3UMRUcrhSy+pN09y/lWzeKDbvhoqcRbHdc+APLs/PWYi/cisLPg==", "dev": true, "engines": { "node": "^16.0.0 || >=18.0.0" @@ -3396,13 +3308,13 @@ } }, "node_modules/@typescript-eslint/typescript-estree": { - "version": "6.13.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.13.1.tgz", - "integrity": "sha512-sBLQsvOC0Q7LGcUHO5qpG1HxRgePbT6wwqOiGLpR8uOJvPJbfs0mW3jPA3ujsDvfiVwVlWUDESNXv44KtINkUQ==", + "version": "6.13.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.13.2.tgz", + "integrity": "sha512-SuD8YLQv6WHnOEtKv8D6HZUzOub855cfPnPMKvdM/Bh1plv1f7Q/0iFUDLKKlxHcEstQnaUU4QZskgQq74t+3w==", "dev": true, "dependencies": { - "@typescript-eslint/types": "6.13.1", - "@typescript-eslint/visitor-keys": "6.13.1", + "@typescript-eslint/types": "6.13.2", + "@typescript-eslint/visitor-keys": "6.13.2", "debug": "^4.3.4", "globby": "^11.1.0", "is-glob": "^4.0.3", @@ -3423,17 +3335,17 @@ } }, "node_modules/@typescript-eslint/utils": { - "version": "6.13.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.13.1.tgz", - "integrity": "sha512-ouPn/zVoan92JgAegesTXDB/oUp6BP1v8WpfYcqh649ejNc9Qv+B4FF2Ff626kO1xg0wWwwG48lAJ4JuesgdOw==", + "version": "6.13.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.13.2.tgz", + "integrity": "sha512-b9Ptq4eAZUym4idijCRzl61oPCwwREcfDI8xGk751Vhzig5fFZR9CyzDz4Sp/nxSLBYxUPyh4QdIDqWykFhNmQ==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.4.0", "@types/json-schema": "^7.0.12", "@types/semver": "^7.5.0", - "@typescript-eslint/scope-manager": "6.13.1", - "@typescript-eslint/types": "6.13.1", - "@typescript-eslint/typescript-estree": "6.13.1", + "@typescript-eslint/scope-manager": "6.13.2", + "@typescript-eslint/types": "6.13.2", + "@typescript-eslint/typescript-estree": "6.13.2", "semver": "^7.5.4" }, "engines": { @@ -3448,12 +3360,12 @@ } }, "node_modules/@typescript-eslint/visitor-keys": { - "version": "6.13.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.13.1.tgz", - "integrity": "sha512-NDhQUy2tg6XGNBGDRm1XybOHSia8mcXmlbKWoQP+nm1BIIMxa55shyJfZkHpEBN62KNPLrocSM2PdPcaLgDKMQ==", + "version": "6.13.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.13.2.tgz", + "integrity": "sha512-OGznFs0eAQXJsp+xSd6k/O1UbFi/K/L7WjqeRoFE7vadjAF9y0uppXhYNQNEqygjou782maGClOoZwPqF0Drlw==", "dev": true, "dependencies": { - "@typescript-eslint/types": "6.13.1", + "@typescript-eslint/types": "6.13.2", "eslint-visitor-keys": "^3.4.1" }, "engines": { @@ -4093,9 +4005,9 @@ } }, "node_modules/browserslist": { - "version": "4.22.1", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.22.1.tgz", - "integrity": "sha512-FEVc202+2iuClEhZhrWy6ZiAcRLvNMyYcxZ8raemul1DYVOVdFsbqckWLdsixQZCpJlwe77Z3UTalE7jsjnKfQ==", + "version": "4.22.2", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.22.2.tgz", + "integrity": "sha512-0UgcrvQmBDvZHFGdYUehrCNIazki7/lUP3kkoi/r3YB2amZbFM9J43ZRkJTXBUZK4gmx56+Sqk9+Vs9mwZx9+A==", "dev": true, "funding": [ { @@ -4112,9 +4024,9 @@ } ], "dependencies": { - "caniuse-lite": "^1.0.30001541", - "electron-to-chromium": "^1.4.535", - "node-releases": "^2.0.13", + "caniuse-lite": "^1.0.30001565", + "electron-to-chromium": "^1.4.601", + "node-releases": "^2.0.14", "update-browserslist-db": "^1.0.13" }, "bin": { @@ -4270,9 +4182,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001565", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001565.tgz", - "integrity": "sha512-xrE//a3O7TP0vaJ8ikzkD2c2NgcVUvsEe2IvFTntV4Yd1Z9FVzh+gW+enX96L0psrbaFMcVcH2l90xNuGDWc8w==", + "version": "1.0.30001566", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001566.tgz", + "integrity": "sha512-ggIhCsTxmITBAMmK8yZjEhCO5/47jKXPu6Dha/wuCS4JePVL+3uiDEBuhu2aIoT+bqTOR8L76Ip1ARL9xYsEJA==", "funding": [ { "type": "opencollective", @@ -4766,9 +4678,9 @@ } }, "node_modules/csstype": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.2.tgz", - "integrity": "sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ==" + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", + "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==" }, "node_modules/csv": { "version": "5.5.3", @@ -5768,9 +5680,9 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.595", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.595.tgz", - "integrity": "sha512-+ozvXuamBhDOKvMNUQvecxfbyICmIAwS4GpLmR0bsiSBlGnLaOcs2Cj7J8XSbW+YEaN3Xl3ffgpm+srTUWFwFQ==", + "version": "1.4.608", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.608.tgz", + "integrity": "sha512-J2f/3iIIm3Mo0npneITZ2UPe4B1bg8fTNrFjD8715F/k1BvbviRuqYGkET1PgprrczXYTHFvotbBOmUp6KE0uA==", "dev": true }, "node_modules/elkjs": { @@ -6104,9 +6016,9 @@ "link": true }, "node_modules/eslint-config-prettier": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-9.0.0.tgz", - "integrity": "sha512-IcJsTkJae2S35pRsRAwoCE+925rJJStOdkKnLVgtE+tEpqU0EVVM7OqrwxqgptKdX29NUwC82I5pXsGFIgSevw==", + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-9.1.0.tgz", + "integrity": "sha512-NSWl5BFQWEPi1j4TjVNItzYV7dZXZ+wP6I6ZhrBGpChQhZRUaElihE9uRRkcbRnNb76UMKDF3r+WTmNcGPKsqw==", "dev": true, "bin": { "eslint-config-prettier": "bin/cli.js" @@ -11324,14 +11236,15 @@ } }, "node_modules/next": { - "version": "14.0.3", - "resolved": "https://registry.npmjs.org/next/-/next-14.0.3.tgz", - "integrity": "sha512-AbYdRNfImBr3XGtvnwOxq8ekVCwbFTv/UJoLwmaX89nk9i051AEY4/HAWzU0YpaTDw8IofUpmuIlvzWF13jxIw==", + "version": "14.0.4", + "resolved": "https://registry.npmjs.org/next/-/next-14.0.4.tgz", + "integrity": "sha512-qbwypnM7327SadwFtxXnQdGiKpkuhaRLE2uq62/nRul9cj9KhQ5LhHmlziTNqUidZotw/Q1I9OjirBROdUJNgA==", "dependencies": { - "@next/env": "14.0.3", + "@next/env": "14.0.4", "@swc/helpers": "0.5.2", "busboy": "1.6.0", "caniuse-lite": "^1.0.30001406", + "graceful-fs": "^4.2.11", "postcss": "8.4.31", "styled-jsx": "5.1.1", "watchpack": "2.4.0" @@ -11343,15 +11256,15 @@ "node": ">=18.17.0" }, "optionalDependencies": { - "@next/swc-darwin-arm64": "14.0.3", - "@next/swc-darwin-x64": "14.0.3", - "@next/swc-linux-arm64-gnu": "14.0.3", - "@next/swc-linux-arm64-musl": "14.0.3", - "@next/swc-linux-x64-gnu": "14.0.3", - "@next/swc-linux-x64-musl": "14.0.3", - "@next/swc-win32-arm64-msvc": "14.0.3", - "@next/swc-win32-ia32-msvc": "14.0.3", - "@next/swc-win32-x64-msvc": "14.0.3" + "@next/swc-darwin-arm64": "14.0.4", + "@next/swc-darwin-x64": "14.0.4", + "@next/swc-linux-arm64-gnu": "14.0.4", + "@next/swc-linux-arm64-musl": "14.0.4", + "@next/swc-linux-x64-gnu": "14.0.4", + "@next/swc-linux-x64-musl": "14.0.4", + "@next/swc-win32-arm64-msvc": "14.0.4", + "@next/swc-win32-ia32-msvc": "14.0.4", + "@next/swc-win32-x64-msvc": "14.0.4" }, "peerDependencies": { "@opentelemetry/api": "^1.1.0", @@ -11408,14 +11321,14 @@ } }, "node_modules/next/node_modules/@next/env": { - "version": "14.0.3", - "resolved": "https://registry.npmjs.org/@next/env/-/env-14.0.3.tgz", - "integrity": "sha512-7xRqh9nMvP5xrW4/+L0jgRRX+HoNRGnfJpD+5Wq6/13j3dsdzxO3BCXn7D3hMqsDb+vjZnJq+vI7+EtgrYZTeA==" + "version": "14.0.4", + "resolved": "https://registry.npmjs.org/@next/env/-/env-14.0.4.tgz", + "integrity": "sha512-irQnbMLbUNQpP1wcE5NstJtbuA/69kRfzBrpAD7Gsn8zm/CY6YQYc3HQBz8QPxwISG26tIm5afvvVbu508oBeQ==" }, "node_modules/next/node_modules/@next/swc-darwin-arm64": { - "version": "14.0.3", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.0.3.tgz", - "integrity": "sha512-64JbSvi3nbbcEtyitNn2LEDS/hcleAFpHdykpcnrstITFlzFgB/bW0ER5/SJJwUPj+ZPY+z3e+1jAfcczRLVGw==", + "version": "14.0.4", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.0.4.tgz", + "integrity": "sha512-mF05E/5uPthWzyYDyptcwHptucf/jj09i2SXBPwNzbgBNc+XnwzrL0U6BmPjQeOL+FiB+iG1gwBeq7mlDjSRPg==", "cpu": [ "arm64" ], @@ -11428,9 +11341,9 @@ } }, "node_modules/next/node_modules/@next/swc-darwin-x64": { - "version": "14.0.3", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.0.3.tgz", - "integrity": "sha512-RkTf+KbAD0SgYdVn1XzqE/+sIxYGB7NLMZRn9I4Z24afrhUpVJx6L8hsRnIwxz3ERE2NFURNliPjJ2QNfnWicQ==", + "version": "14.0.4", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.0.4.tgz", + "integrity": "sha512-IZQ3C7Bx0k2rYtrZZxKKiusMTM9WWcK5ajyhOZkYYTCc8xytmwSzR1skU7qLgVT/EY9xtXDG0WhY6fyujnI3rw==", "cpu": [ "x64" ], @@ -11443,9 +11356,9 @@ } }, "node_modules/next/node_modules/@next/swc-linux-arm64-gnu": { - "version": "14.0.3", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.0.3.tgz", - "integrity": "sha512-3tBWGgz7M9RKLO6sPWC6c4pAw4geujSwQ7q7Si4d6bo0l6cLs4tmO+lnSwFp1Tm3lxwfMk0SgkJT7EdwYSJvcg==", + "version": "14.0.4", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.0.4.tgz", + "integrity": "sha512-VwwZKrBQo/MGb1VOrxJ6LrKvbpo7UbROuyMRvQKTFKhNaXjUmKTu7wxVkIuCARAfiI8JpaWAnKR+D6tzpCcM4w==", "cpu": [ "arm64" ], @@ -11458,9 +11371,9 @@ } }, "node_modules/next/node_modules/@next/swc-linux-arm64-musl": { - "version": "14.0.3", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.0.3.tgz", - "integrity": "sha512-v0v8Kb8j8T23jvVUWZeA2D8+izWspeyeDGNaT2/mTHWp7+37fiNfL8bmBWiOmeumXkacM/AB0XOUQvEbncSnHA==", + "version": "14.0.4", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.0.4.tgz", + "integrity": "sha512-8QftwPEW37XxXoAwsn+nXlodKWHfpMaSvt81W43Wh8dv0gkheD+30ezWMcFGHLI71KiWmHK5PSQbTQGUiidvLQ==", "cpu": [ "arm64" ], @@ -11473,9 +11386,9 @@ } }, "node_modules/next/node_modules/@next/swc-linux-x64-gnu": { - "version": "14.0.3", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.0.3.tgz", - "integrity": "sha512-VM1aE1tJKLBwMGtyBR21yy+STfl0MapMQnNrXkxeyLs0GFv/kZqXS5Jw/TQ3TSUnbv0QPDf/X8sDXuMtSgG6eg==", + "version": "14.0.4", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.0.4.tgz", + "integrity": "sha512-/s/Pme3VKfZAfISlYVq2hzFS8AcAIOTnoKupc/j4WlvF6GQ0VouS2Q2KEgPuO1eMBwakWPB1aYFIA4VNVh667A==", "cpu": [ "x64" ], @@ -11488,9 +11401,9 @@ } }, "node_modules/next/node_modules/@next/swc-linux-x64-musl": { - "version": "14.0.3", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.0.3.tgz", - "integrity": "sha512-64EnmKy18MYFL5CzLaSuUn561hbO1Gk16jM/KHznYP3iCIfF9e3yULtHaMy0D8zbHfxset9LTOv6cuYKJgcOxg==", + "version": "14.0.4", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.0.4.tgz", + "integrity": "sha512-m8z/6Fyal4L9Bnlxde5g2Mfa1Z7dasMQyhEhskDATpqr+Y0mjOBZcXQ7G5U+vgL22cI4T7MfvgtrM2jdopqWaw==", "cpu": [ "x64" ], @@ -11503,9 +11416,9 @@ } }, "node_modules/next/node_modules/@next/swc-win32-arm64-msvc": { - "version": "14.0.3", - "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.0.3.tgz", - "integrity": "sha512-WRDp8QrmsL1bbGtsh5GqQ/KWulmrnMBgbnb+59qNTW1kVi1nG/2ndZLkcbs2GX7NpFLlToLRMWSQXmPzQm4tog==", + "version": "14.0.4", + "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.0.4.tgz", + "integrity": "sha512-7Wv4PRiWIAWbm5XrGz3D8HUkCVDMMz9igffZG4NB1p4u1KoItwx9qjATHz88kwCEal/HXmbShucaslXCQXUM5w==", "cpu": [ "arm64" ], @@ -11518,9 +11431,9 @@ } }, "node_modules/next/node_modules/@next/swc-win32-ia32-msvc": { - "version": "14.0.3", - "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.0.3.tgz", - "integrity": "sha512-EKffQeqCrj+t6qFFhIFTRoqb2QwX1mU7iTOvMyLbYw3QtqTw9sMwjykyiMlZlrfm2a4fA84+/aeW+PMg1MjuTg==", + "version": "14.0.4", + "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.0.4.tgz", + "integrity": "sha512-zLeNEAPULsl0phfGb4kdzF/cAVIfaC7hY+kt0/d+y9mzcZHsMS3hAS829WbJ31DkSlVKQeHEjZHIdhN+Pg7Gyg==", "cpu": [ "ia32" ], @@ -11533,9 +11446,9 @@ } }, "node_modules/next/node_modules/@next/swc-win32-x64-msvc": { - "version": "14.0.3", - "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.0.3.tgz", - "integrity": "sha512-ERhKPSJ1vQrPiwrs15Pjz/rvDHZmkmvbf/BjPN/UCOI++ODftT0GtasDPi0j+y6PPJi5HsXw+dpRaXUaw4vjuQ==", + "version": "14.0.4", + "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.0.4.tgz", + "integrity": "sha512-yEh2+R8qDlDCjxVpzOTEpBLQTEFAcP2A8fUFLaWNap9GitYKkKv1//y2S6XY6zsR4rCOPRpU7plYDR+az2n30A==", "cpu": [ "x64" ], @@ -11587,9 +11500,9 @@ } }, "node_modules/node-releases": { - "version": "2.0.13", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.13.tgz", - "integrity": "sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==", + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", + "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", "dev": true }, "node_modules/non-layered-tidy-tree-layout": { @@ -11700,12 +11613,12 @@ } }, "node_modules/object.assign": { - "version": "4.1.4", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", - "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.5.tgz", + "integrity": "sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==", "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", + "call-bind": "^1.0.5", + "define-properties": "^1.2.1", "has-symbols": "^1.0.3", "object-keys": "^1.1.1" }, @@ -11860,9 +11773,9 @@ } }, "node_modules/openai/node_modules/@types/node": { - "version": "18.18.13", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.13.tgz", - "integrity": "sha512-vXYZGRrSCreZmq1rEjMRLXJhiy8MrIeVasx+PCVlP414N7CJLHnMf+juVvjdprHyH+XRy3zKZLHeNueOpJCn0g==", + "version": "18.19.3", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.3.tgz", + "integrity": "sha512-k5fggr14DwAytoA/t8rPrIz++lXK7/DqckthCmoZOKNsEbJkId4Z//BqgApXBUGrGddrigYa1oqheo/7YmW4rg==", "peer": true, "dependencies": { "undici-types": "~5.26.4" @@ -12683,13 +12596,13 @@ } }, "node_modules/prettier-plugin-packagejson": { - "version": "2.4.6", - "resolved": "https://registry.npmjs.org/prettier-plugin-packagejson/-/prettier-plugin-packagejson-2.4.6.tgz", - "integrity": "sha512-5JGfzkJRL0DLNyhwmiAV9mV0hZLHDwddFCs2lc9CNxOChpoWUQVe8K4qTMktmevmDlMpok2uT10nvHUyU59sNw==", + "version": "2.4.7", + "resolved": "https://registry.npmjs.org/prettier-plugin-packagejson/-/prettier-plugin-packagejson-2.4.7.tgz", + "integrity": "sha512-/n1HGcBbuJyTlD3tb2/tW1mT5WIR6FCo+bAijHF6pNoSBf8YoxoskawjSY2ku9/8d6mdzci7oMchziI7CYEWYg==", "dev": true, "dependencies": { "sort-package-json": "2.6.0", - "synckit": "0.8.5" + "synckit": "0.8.6" }, "peerDependencies": { "prettier": ">= 1.16.0" @@ -12709,9 +12622,9 @@ } }, "node_modules/process-warning": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/process-warning/-/process-warning-2.3.1.tgz", - "integrity": "sha512-JjBvFEn7MwFbzUDa2SRtKJSsyO0LlER4V/FmwLMhBlXNbGgGxdyFCxIdMDLerWUycsVUyaoM9QFLvppFy4IWaQ==" + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/process-warning/-/process-warning-2.3.2.tgz", + "integrity": "sha512-n9wh8tvBe5sFmsqlg+XQhaQLumwpqoAUruLwjCopgTmUBjJ/fjtBsJzKleCaIGBOMXYEhp1YfKl4d7rJ5ZKJGA==" }, "node_modules/promptly": { "version": "2.2.0", @@ -13486,9 +13399,9 @@ "integrity": "sha512-IXgzBWvWQwE6PrDI05OvmXUIruQTcoMDzRsOd5CDvHCVLcLHMTSYvOK5Cm46kWqlV3yAbuSpBZdJ5oP5OUoStg==" }, "node_modules/rollup": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.6.0.tgz", - "integrity": "sha512-R8i5Her4oO1LiMQ3jKf7MUglYV/mhQ5g5OKeld5CnkmPdIGo79FDDQYqPhq/PCVuTQVuxsWgIbDy9F+zdHn80w==", + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.7.0.tgz", + "integrity": "sha512-7Kw0dUP4BWH78zaZCqF1rPyQ8D5DSU6URG45v1dqS/faNsx9WXyess00uTOZxKr7oR/4TOjO1CPudT8L1UsEgw==", "dev": true, "bin": { "rollup": "dist/bin/rollup" @@ -13498,18 +13411,19 @@ "npm": ">=8.0.0" }, "optionalDependencies": { - "@rollup/rollup-android-arm-eabi": "4.6.0", - "@rollup/rollup-android-arm64": "4.6.0", - "@rollup/rollup-darwin-arm64": "4.6.0", - "@rollup/rollup-darwin-x64": "4.6.0", - "@rollup/rollup-linux-arm-gnueabihf": "4.6.0", - "@rollup/rollup-linux-arm64-gnu": "4.6.0", - "@rollup/rollup-linux-arm64-musl": "4.6.0", - "@rollup/rollup-linux-x64-gnu": "4.6.0", - "@rollup/rollup-linux-x64-musl": "4.6.0", - "@rollup/rollup-win32-arm64-msvc": "4.6.0", - "@rollup/rollup-win32-ia32-msvc": "4.6.0", - "@rollup/rollup-win32-x64-msvc": "4.6.0", + "@rollup/rollup-android-arm-eabi": "4.7.0", + "@rollup/rollup-android-arm64": "4.7.0", + "@rollup/rollup-darwin-arm64": "4.7.0", + "@rollup/rollup-darwin-x64": "4.7.0", + "@rollup/rollup-linux-arm-gnueabihf": "4.7.0", + "@rollup/rollup-linux-arm64-gnu": "4.7.0", + "@rollup/rollup-linux-arm64-musl": "4.7.0", + "@rollup/rollup-linux-riscv64-gnu": "4.7.0", + "@rollup/rollup-linux-x64-gnu": "4.7.0", + "@rollup/rollup-linux-x64-musl": "4.7.0", + "@rollup/rollup-win32-arm64-msvc": "4.7.0", + "@rollup/rollup-win32-ia32-msvc": "4.7.0", + "@rollup/rollup-win32-x64-msvc": "4.7.0", "fsevents": "~2.3.2" } }, @@ -13844,9 +13758,9 @@ } }, "node_modules/shiki": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/shiki/-/shiki-0.14.5.tgz", - "integrity": "sha512-1gCAYOcmCFONmErGTrS1fjzJLA7MGZmKzrBNX7apqSwhyITJg2O102uFzXUeBxNnEkDA9vHIKLyeKq0V083vIw==", + "version": "0.14.6", + "resolved": "https://registry.npmjs.org/shiki/-/shiki-0.14.6.tgz", + "integrity": "sha512-R4koBBlQP33cC8cpzX0hAoOURBHJILp4Aaduh2eYi+Vj8ZBqtK/5SWNEHBS3qwUMu8dqOtI/ftno3ESfNeVW9g==", "dependencies": { "ansi-sequence-parser": "^1.1.0", "jsonc-parser": "^3.2.0", @@ -14668,13 +14582,13 @@ } }, "node_modules/synckit": { - "version": "0.8.5", - "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.8.5.tgz", - "integrity": "sha512-L1dapNV6vu2s/4Sputv8xGsCdAVlb5nRDMFU/E27D44l5U6cw1g0dGd45uLc+OXjNMmF4ntiMdCimzcjFKQI8Q==", + "version": "0.8.6", + "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.8.6.tgz", + "integrity": "sha512-laHF2savN6sMeHCjLRkheIU4wo3Zg9Ln5YOjOo7sZ5dVQW8yF5pPE5SIw1dsPhq3TRp1jisKRCdPhfs/1WMqDA==", "dev": true, "dependencies": { - "@pkgr/utils": "^2.3.1", - "tslib": "^2.5.0" + "@pkgr/utils": "^2.4.2", + "tslib": "^2.6.2" }, "engines": { "node": "^14.18.0 || >=16.0.0" @@ -14684,9 +14598,9 @@ } }, "node_modules/systeminformation": { - "version": "5.21.18", - "resolved": "https://registry.npmjs.org/systeminformation/-/systeminformation-5.21.18.tgz", - "integrity": "sha512-PEoWd95nI5170rvIk4fagLH0SmzwfGt18w0+ex1Ljb2bSXvDs9PQdLNexMazL5L6Pzd6wxlpoWUAjX+hNRKN7g==", + "version": "5.21.20", + "resolved": "https://registry.npmjs.org/systeminformation/-/systeminformation-5.21.20.tgz", + "integrity": "sha512-AyS1fNc+MDoAJtFknFbbo587H8h6yejJwM+H9rVusnOToIEkiMehMyD5JM7o3j55Cto20MawIZrcgNMgd4BfOQ==", "dev": true, "optional": true, "os": [ @@ -14859,9 +14773,9 @@ } }, "node_modules/toad-cache": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/toad-cache/-/toad-cache-3.3.0.tgz", - "integrity": "sha512-3oDzcogWGHZdkwrHyvJVpPjA7oNzY6ENOV3PsWJY9XYPZ6INo94Yd47s5may1U+nleBPwDhrRiTPMIvKaa3MQg==", + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/toad-cache/-/toad-cache-3.4.1.tgz", + "integrity": "sha512-T0m3MxP3wcqW0LaV3dF1mHBU294sgYSm4FOpa5eEJaYO7PqJZBOjZEQI1y4YaKNnih1FXCEYTWDS9osCoTUefg==", "engines": { "node": ">=12" } @@ -15877,9 +15791,9 @@ } }, "node_modules/undici": { - "version": "5.28.1", - "resolved": "https://registry.npmjs.org/undici/-/undici-5.28.1.tgz", - "integrity": "sha512-xcIIvj1LOQH9zAL54iWFkuDEaIVEjLrru7qRpa3GrEEHk6OBhb/LycuUY2m7VCcTuDeLziXCxobQVyKExyGeIA==", + "version": "5.28.2", + "resolved": "https://registry.npmjs.org/undici/-/undici-5.28.2.tgz", + "integrity": "sha512-wh1pHJHnUeQV5Xa8/kyQhO7WFa8M34l026L5P/+2TYiakvGy5Rdc8jWZVyG7ieht/0WgJLEd3kcU5gKx+6GC8w==", "dev": true, "dependencies": { "@fastify/busboy": "^2.0.0" @@ -16924,10 +16838,19 @@ "typescript": "5.3.3" }, "peerDependencies": { - "next": ">=13.5", + "next": ">=13.5.1", "redis": ">=4.6" } }, + "packages/cache-handler/node_modules/@types/node": { + "version": "20.10.4", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.4.tgz", + "integrity": "sha512-D08YG6rr8X90YB56tSIuBaddy/UXAA9RKJoFvrsnogAum/0pmjkgi4+2nx96A330FmioegBWmEYQ+syqCFaveg==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "packages/diffscribe": { "version": "0.2.1", "license": "MIT", @@ -16947,6 +16870,15 @@ "openai": "^4.12.3" } }, + "packages/diffscribe/node_modules/@types/node": { + "version": "20.10.4", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.4.tgz", + "integrity": "sha512-D08YG6rr8X90YB56tSIuBaddy/UXAA9RKJoFvrsnogAum/0pmjkgi4+2nx96A330FmioegBWmEYQ+syqCFaveg==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "packages/json-replacer-reviver": { "name": "@neshca/json-replacer-reviver", "version": "1.1.0", @@ -16961,6 +16893,15 @@ "typescript": "5.3.3" } }, + "packages/json-replacer-reviver/node_modules/@types/node": { + "version": "20.10.4", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.4.tgz", + "integrity": "sha512-D08YG6rr8X90YB56tSIuBaddy/UXAA9RKJoFvrsnogAum/0pmjkgi4+2nx96A330FmioegBWmEYQ+syqCFaveg==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "packages/server": { "name": "@neshca/server", "version": "0.5.1", @@ -16983,6 +16924,15 @@ "tsx": "4.6.2", "typescript": "5.3.3" } + }, + "packages/server/node_modules/@types/node": { + "version": "20.10.4", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.4.tgz", + "integrity": "sha512-D08YG6rr8X90YB56tSIuBaddy/UXAA9RKJoFvrsnogAum/0pmjkgi4+2nx96A330FmioegBWmEYQ+syqCFaveg==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } } } } diff --git a/packages/cache-handler/README.md b/packages/cache-handler/README.md index 61194b2a..58acd508 100644 --- a/packages/cache-handler/README.md +++ b/packages/cache-handler/README.md @@ -1,37 +1,48 @@ # `@neshca/cache-handler` -Flexible API to replace the default Next.js cache, accommodating custom cache solutions for multi-instance deployments. +**Flexible API to replace the default Next.js cache, accommodating custom cache solutions for multi-instance self-hosted deployments** -🎉 Version 0.5.4 is out, introducing [async onCreation hook, async Handlers](https://caching-tools.github.io/next-shared-cache/redis-stack) and fixed types. This patch significantly enhances the library while ensuring compatibility with older synchronous Handlers. +🎉 Version 0.6.0 is out, featuring significant refactoring and an API breaking change. However, [the new docs ↗](https://caching-tools.github.io/next-shared-cache/configuration/on-creation) provide guidance on the new multi-layered cache configuration! + +Check out the [changelog](https://github.com/caching-tools/next-shared-cache/blob/canary/packages/cache-handler/CHANGELOG.md) [![npm package](https://img.shields.io/npm/v/@neshca/cache-handler/latest.svg)](https://www.npmjs.com/package/@neshca/cache-handler) [![Dependencies](https://img.shields.io/npm/dm/@neshca/cache-handler)](https://www.npmjs.com/package/@neshca/cache-handler) [![License](https://img.shields.io/npm/l/express.svg)](https://github.com/caching-tools/next-shared-cache/blob/canary/packages/cache-handler/LICENSE) +# Table of Contents + +1. [Overview](#overview) +2. [Getting Started with Your Own Custom Cache Solution](#getting-started-with-your-own-custom-cache-solution) +3. [Examples and Practical Implementations](#examples-and-practical-implementations) +4. [Requirements](#requirements) +5. [Documentation](#documentation) +6. [Project Status](#project-status) +7. [Roadmap](#roadmap) +8. [Developing and Contributing](#developing-and-contributing) +9. [License](#license) + ## Overview -Next.js, by default, utilizes an [in-memory cache](https://nextjs.org/blog/next-13-2#nextjs-cache-when-self-hosted) and the file system for storing `.html` (entire pages), `.json`, and `.rsc` (page props or React Server Components). Suppose you're self-hosting and running multiple instances of Next.js apps. In that case, the Next.js team recommends turning off in-memory caching and using a shared network mount within your Kubernetes pods or a similar configuration. This approach allows different containers to access the same file-system cache. Check out [this guide](https://nextjs.org/docs/pages/building-your-application/data-fetching/incremental-static-regeneration#self-hosting-isr). While effective, this method demands a persistent shared network mount, which might only sometimes be feasible and can add a layer of infrastructure complexity. Also, opting out of in-memory caching can hurt performance. +Welcome to `@neshca/cache-handler`, a specialized ISR/Data cache API crafted for Next.js applications. This library is designed to simplify the complex task of configuring shared cache strategies in distributed environments, such as those involving multiple and independent instances of the same application. It offers a flexible and user-friendly approach to integrating custom cache solutions and hand-crafted, pre-configured cache strategies for Redis. -`@neshca/cache-handler` provides an API for [custom cache handlers](https://nextjs.org/docs/app/api-reference/next-config-js/incrementalCacheHandlerPath) that can seamlessly replace the default Next.js Cache. The API is designed to be flexible and allow you to use any cache store. +### The Importance of Shared Cache in Distributed Instances -## Project Status +Next.js applications are often deployed in a self-hosted distributed environment, where multiple instances of the same application are running simultaneously. In such cases, the default Next.js cache is not shared between instances, causing the data to diverge between independent instances because load balancers route requests to a different instance every time. Another significant issue with the default cache setup is on-demand revalidation; it requires manual revalidation across all application replicas. -This project is on its way to a stable release but will remain in beta until Next.js stabilizes [cacheHandler API](https://github.com/vercel/next.js/pull/57953). Any changes made to the API will result in a minor version increase of the package until it reaches a stable version. You are welcome to try it out and provide feedback. +`@neshca/cache-handler` elegantly addresses these challenges by offering: -### Roadmap +- A straightforward API complemented by meticulously crafted Handlers. +- Comprehensive customization options. +- Simplified on-demand revalidation, akin to managing a single application instance. -- [x] Support for App routes; -- [x] Support for Pages routes; -- [x] Happy path tests; -- [x] Examples; -- [ ] Documentation; in progress -- [ ] Full test coverage; +## Kickstarting Your Custom Cache Solution -## Supported Next.js versions +Begin enhancing your application's caching system with our [Installation and the First Steps ↗](https://caching-tools.github.io/next-shared-cache/installation). This section provides all the necessary information on installation, basic configuration, and practical examples for quick and efficient integration. -Next.js 13.5.1 and above. +## Examples and Practical Implementations -## Examples +Discover the versatility of `@neshca/cache-handler` in the examples section, where real-world scenarios are illustrated. - [Official Next.js template ↗](https://github.com/vercel/next.js/tree/canary/examples/cache-handler-redis) - [Redis Stack ↗](https://caching-tools.github.io/next-shared-cache/redis-stack) @@ -40,10 +51,32 @@ Next.js 13.5.1 and above. - [Custom Redis Stack ↗](https://caching-tools.github.io/next-shared-cache/redis-stack-custom) - [Custom Redis String ↗](https://caching-tools.github.io/next-shared-cache/redis-strings-custom) +## Requirements + +- Next.js 13.5.1 and newer; +- Node.js 18.17.0 and newer. + +## Documentation + +[Documentation ↗](https://caching-tools.github.io/next-shared-cache) + +## Project Status + +This project is on its way to a stable release but will remain in beta until Next.js stabilizes [cacheHandler API](https://github.com/vercel/next.js/pull/57953). Any **breaking changes** made to the API will result in a **minor** version increase of the package until it reaches a stable version. You are welcome to try it out and provide feedback. + +### Roadmap + +- [x] Support for App routes; +- [x] Support for Pages routes; +- [x] Happy path tests; +- [x] Examples; +- [x] Documentation; +- [ ] Full test coverage. + ## Developing and contributing -[Developing and contributing](../../docs/contributing/cache-handler.md) +[Developing and contributing](https://github.com/caching-tools/next-shared-cache/blob/canary/docs/contributing/cache-handler.md) ## License -[MIT](./LICENSE) +[MIT](https://github.com/caching-tools/next-shared-cache/blob/canary/packages/cache-handler/LICENSE) diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index f2fe5c25..a19ebfe3 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -1,7 +1,7 @@ { "name": "@neshca/cache-handler", "version": "0.5.4", - "description": "Flexible API to replace the default Next.js cache, accommodating custom cache solutions for multi-instance deployments. ", + "description": "Flexible API to replace the default Next.js cache, accommodating custom cache solutions for multi-instance deployments.", "keywords": [ "cache", "isr", @@ -32,13 +32,16 @@ "dist/cache-handler.d.cts" ], "redis-stack": [ - "dist/handlers/redis-stack.d.cjs" + "dist/handlers/redis-stack.d.cts" ], "redis-strings": [ - "dist/handlers/redis-strings.d.cjs" + "dist/handlers/redis-strings.d.cts" ], "server": [ - "dist/handlers/server.d.cjs" + "dist/handlers/server.d.cts" + ], + "local-lru": [ + "dist/handlers/local-lru.d.cts" ] } }, @@ -63,7 +66,7 @@ "typescript": "5.3.3" }, "peerDependencies": { - "next": ">=13.5", + "next": ">=13.5.1", "redis": ">=4.6" }, "distTags": [ diff --git a/packages/cache-handler/src/cache-handler.ts b/packages/cache-handler/src/cache-handler.ts index 755f0946..58eeb34d 100644 --- a/packages/cache-handler/src/cache-handler.ts +++ b/packages/cache-handler/src/cache-handler.ts @@ -1,6 +1,5 @@ import path from 'node:path'; import fs, { promises as fsPromises } from 'node:fs'; -import { createCache } from '@neshca/next-lru-cache/next-cache-handler-value'; import type { CacheHandler, CacheHandlerValue, @@ -11,302 +10,437 @@ import type { CacheHandlerParametersRevalidateTag, RouteMetadata, NonNullableRouteMetadata, + IncrementalCacheKindHint, + IncrementalCacheValue, + TagsManifest, } from '@neshca/next-common'; -import type { RedisCacheHandlerOptions } from './common-types'; +import { isTagsManifest } from './is-tags-manifest'; const RSC_PREFETCH_SUFFIX = '.prefetch.rsc'; const RSC_SUFFIX = '.rsc'; const NEXT_DATA_SUFFIX = '.json'; const NEXT_META_SUFFIX = '.meta'; -export type TagsManifest = { - version: 1; - items: Record; -}; -export type { CacheHandlerValue, RedisCacheHandlerOptions as CacheHandlerOptions }; +export type { CacheHandlerValue }; + +export type RevalidatedTags = Record; +/** + * Represents a custom cache implementation. This interface defines essential methods for cache operations. + */ export type Cache = { + /** + * Retrieves the value associated with the given key from the cache. + * + * @param key - The unique string identifier for the cache entry. + * + * @returns A Promise that resolves to the cached value (if found), `null` or `undefined` if the entry is not found. + */ get: (key: string) => Promise; + /** + * Adds or updates a value in the cache. Use `ttl` only if you don't use Pages directory. + * + * @param key - The unique string identifier for the cache entry. + * + * @param value - The value to be stored in the cache. + * + * @param ttl - Optional. The time-to-live in seconds. + * If not provided, the cache entry persists based on default cache behavior or until manually removed. + * + * @returns A Promise with no value. + */ set: (key: string, value: CacheHandlerValue, ttl?: number) => Promise; - getTagsManifest: () => Promise; - revalidateTag: (tag: string, revalidatedAt: number) => Promise; -}; - -type ReadCacheFromDisk = 'yes' | 'no'; - -type WriteCacheFromDisk = 'yes' | 'no'; - -type CacheDiskAccessMode = `read-${ReadCacheFromDisk}/write-${WriteCacheFromDisk}`; - -type CacheConfigDefaultCache = { - diskAccessMode?: CacheDiskAccessMode; - cache?: Cache; - defaultLruCacheOptions?: never; + /** + * Retrieves the {@link RevalidatedTags} object. + * + * @returns A Promise that resolves to a {@link RevalidatedTags} object or `undefined` for using a locally maintained {@link RevalidatedTags}. + */ + getRevalidatedTags?: () => Promise; + /** + * Marks a specific cache tag as revalidated. Useful for cache invalidation strategies. + * + * @param tag - The tag to be marked as revalidated. + * + * @param revalidatedAt - The timestamp (in milliseconds) of when the tag was revalidated. + */ + revalidateTag?: (tag: string, revalidatedAt: number) => Promise; }; -type CacheConfigWithDefaultCache = { - diskAccessMode?: CacheDiskAccessMode; - cache?: never; - defaultLruCacheOptions?: { - maxItemsNumber?: number; - maxItemSizeBytes?: number; - }; +/** + * Configuration options for cache behavior. + */ +export type CacheConfig = { + /** + * Determines whether to use the file system caching in addition to the provided cache. + */ + useFileSystem?: boolean; + /** + * A custom cache instance or an array of cache instances that conform to the Cache interface. + * Multiple caches can be used to implement various caching strategies or layers. + */ + cache: Cache | (Cache | undefined | null)[]; }; -export type CacheConfig = CacheConfigDefaultCache | CacheConfigWithDefaultCache; - +/** + * Contextual information provided during cache creation, including server directory paths and environment mode. + */ export type CacheCreationContext = { - serverDistDir?: string; + /** + * The absolute path to the Next.js server directory. + */ + serverDistDir: string; + /** + * Indicates if the Next.js application is running in development mode. + * When in development mode, caching behavior might differ. + */ dev?: boolean; + /** + * The unique identifier for the current build of the Next.js application. + * This build ID is generated during the `next build` process and is used + * to ensure consistency across multiple instances of the application, + * especially when running in containerized environments. It helps in + * identifying which version of the application is being served. + * + * https://nextjs.org/docs/pages/building-your-application/deploying#build-cache + * + * @remarks + * Some cache values may be lost during the build process + * because the `buildId` is defined after some cache values have already been set. + * However, `buildId` will be defined from the beginning when you start your app. + * + * @example + * ```js + * // cache-handler.js + * IncrementalCache.onCreation(async ({ buildId }) => { + * let redisCache; + * + * if (buildId) { + * await client.connect(); + * + * redisCache = await createRedisCache({ + * client, + * keyPrefix: `${buildId}:`, + * }); + * } + * + * const localCache = createLruCache(); + * + * return { + * cache: [redisCache, localCache], + * useFileSystem: true, + * }; + * }); + * ``` + */ + buildId?: string; }; -export type OnCreationHook = ( - cacheCreationContext: CacheCreationContext, -) => Promise | CacheConfig | undefined; +/** + * Represents a function that retrieves a {@link CacheConfig} based on provided options and your custom logic. + * + * @typeParam T - The type of the options object that the function accepts. + * + * @param options - An options object of type T, containing parameters that influence the cache configuration. + * + * @returns Either a CacheConfig object or a Promise that resolves to a {@link CacheConfig} object, + * which specifies the cache behavior and settings. + */ +export type CreateCache = (options: T) => Promise | CacheConfig; + +/** + * Represents a hook function that is called during the creation of the cache. This function allows for custom logic + * to be executed at the time of cache instantiation, enabling dynamic configuration or initialization tasks. + * + * The function can either return a {@link CacheConfig} object directly or a Promise that resolves to a {@link CacheConfig}, + * allowing for asynchronous operations if needed. + * + * @param cacheCreationContext - The {@link CacheCreationContext} object, providing contextual information about the cache creation environment, + * such as server directory paths and whether the application is running in development mode. + * + * @returns Either a CacheConfig object or a Promise that resolves to a {@link CacheConfig}, specifying how the cache should be configured. + */ +export type OnCreationHook = (cacheCreationContext: CacheCreationContext) => Promise | CacheConfig; export class IncrementalCache implements CacheHandler { - private static initPromise: Promise; - - private static hasPagesDir = false; + static #resolveCreationPromise: () => void; + + static #rejectCreationPromise: (error: unknown) => void; + + /** + * A Promise that resolves when the `IncrementalCache.configureIncrementalCache` function has been called and the cache has been configured. + * It prevents the cache from being used before it's ready. + */ + static readonly #creationPromise: Promise = new Promise((resolve, reject) => { + this.#resolveCreationPromise = resolve; + this.#rejectCreationPromise = reject; + }); + + /** + * Indicates whether the pages directory exists in the cache handler. + * This is a fallback for when the `context._pagesDir` is not provided by Next.js. + */ + static #hasPagesDir = false; + + /** + * Determines whether to use the file system caching in addition to the provided cache. + */ + static #useFileSystem = true; + + static #cache: Cache; + + static #tagsManifestPath: string; + + static #revalidatedTags: RevalidatedTags = {}; + + static onCreationHook: OnCreationHook; + + /** + * Registers a hook to be called during the creation of an IncrementalCache instance. + * This method allows for custom cache configurations to be applied at the time of cache instantiation. + * + * The provided {@link OnCreationHook} function can perform initialization tasks, modify cache settings, + * or integrate additional logic into the cache creation process. This function can either return a {@link CacheConfig} + * object directly for synchronous operations, or a `Promise` that resolves to a {@link CacheConfig} for asynchronous operations. + * + * Usage of this method is typically for advanced scenarios where default caching behavior needs to be altered + * or extended based on specific application requirements or environmental conditions. + * + * @param onCreationHook - The {@link OnCreationHook} function to be called during cache creation. + */ + public static onCreation(onCreationHook: OnCreationHook): void { + this.onCreationHook = onCreationHook; + } - private static diskAccessMode: CacheDiskAccessMode = 'read-yes/write-yes'; + static async configureIncrementalCache(cacheCreationContext: CacheCreationContext): Promise { + // Retrieve cache configuration by invoking the onCreation hook with the provided context + const config = this.onCreationHook(cacheCreationContext); - private static cache: Cache; + // Destructure the cache and useFileSystem settings from the configuration + // Await the configuration if it's a promise + const { cache, useFileSystem = true } = config instanceof Promise ? await config : config; - private static tagsManifestPath?: string; + // Extract the server distribution directory from the cache creation context + const { serverDistDir } = cacheCreationContext; - private static serverDistDir?: string; + // Set the class-level flag to determine if the file system caching should be used + this.#useFileSystem = useFileSystem; - private static getConfig: OnCreationHook = () => undefined; + // Check if the pages directory exists and set the flag accordingly + this.#hasPagesDir = fs.existsSync(path.join(serverDistDir, 'pages')); - public static onCreation(onCreationHook: OnCreationHook): void { - this.getConfig = onCreationHook; - } + // Define the path for the tags manifest file + this.#tagsManifestPath = path.join(serverDistDir, '..', 'cache', 'fetch-cache', 'tags-manifest.json'); - private static async handleAsyncConfig(configPromise: Promise): Promise { try { - const config = await configPromise; - this.configure(config); - } catch (error) { - throw new Error(`The config promise failed to resolve. ${String(error)}`); - } - } - - private static init(cacheCreationContext: CacheCreationContext): void { - const configOrPromise = this.getConfig(cacheCreationContext); + // Ensure the directory for the tags manifest exists + await fsPromises.mkdir(path.dirname(IncrementalCache.#tagsManifestPath), { recursive: true }); - if (configOrPromise instanceof Promise) { - this.initPromise = this.handleAsyncConfig(configOrPromise); + // Read the tags manifest from the file system + const tagsManifestData = await fsPromises.readFile(this.#tagsManifestPath, 'utf-8'); - return; - } - - this.configure(configOrPromise); - - this.initPromise = Promise.resolve(); - } - - private static configure({ - diskAccessMode = 'read-yes/write-yes', - cache, - defaultLruCacheOptions, - }: CacheConfig = {}): void { - this.diskAccessMode = diskAccessMode; + // Parse the tags manifest data + const tagsManifestFromFileSystem = JSON.parse(tagsManifestData) as unknown; - if (this.serverDistDir) { - this.hasPagesDir = fs.existsSync(path.join(this.serverDistDir, 'pages')); - } + // Update the local RevalidatedTags if the parsed data is a valid tags manifest + if (isTagsManifest(tagsManifestFromFileSystem)) { + this.#revalidatedTags = Object.entries(tagsManifestFromFileSystem.items).reduce( + (revalidatedTags, [tag, { revalidatedAt }]) => { + revalidatedTags[tag] = revalidatedAt; - if (this.serverDistDir && diskAccessMode === 'read-yes/write-yes') { - this.tagsManifestPath = path.join(this.serverDistDir, '..', 'cache', 'fetch-cache', 'tags-manifest.json'); + return revalidatedTags; + }, + {}, + ); + } + } catch (err) { + // If the file doesn't exist, use the default tagsManifest } - if (cache) { - this.cache = cache; + if (!Array.isArray(cache)) { + this.#cache = cache; return; } - // if no cache is provided, we use a default LRU cache - const lruCache = createCache({ - maxItemSizeBytes: defaultLruCacheOptions?.maxItemSizeBytes, - maxItemsNumber: defaultLruCacheOptions?.maxItemsNumber, - }); + const cacheList = cache.filter((cacheItem): cacheItem is Cache => Boolean(cacheItem)); - let tagsManifest: TagsManifest = { items: {}, version: 1 }; + // if no cache is provided and we don't use the file system + if (cacheList.length === 0 && !this.#useFileSystem) { + throw new Error( + 'No cache provided and file system caching is disabled. Please provide a cache or enable file system caching.', + ); + } - if (this.tagsManifestPath) { - try { - const tagsManifestData = fs.readFileSync(this.tagsManifestPath, 'utf-8'); + this.#cache = { + async get(key) { + for await (const cacheItem of cacheList) { + const value = await cacheItem.get(key); - if (tagsManifestData) { - tagsManifest = JSON.parse(tagsManifestData) as TagsManifest; + if (value) { + return value; + } } - } catch (err) { - // file doesn't exist. Use default tagsManifest - } - } - - const defaultCache: Cache = { - get(key) { - return Promise.resolve(lruCache.get(key)); }, - set(key, value) { - lruCache.set(key, value); - return Promise.resolve(); + async set(key, value, ttl) { + await Promise.allSettled(cacheList.map((cacheItem) => cacheItem.set(key, value, ttl))); }, - getTagsManifest() { - return Promise.resolve(tagsManifest); + async getRevalidatedTags() { + for await (const cacheItem of cacheList) { + const remoteRevalidatedTags = await cacheItem.getRevalidatedTags?.(); + + if (remoteRevalidatedTags) { + return remoteRevalidatedTags; + } + } }, - revalidateTag(tag, revalidatedAt) { - tagsManifest.items[tag] = { revalidatedAt }; - return Promise.resolve(); + async revalidateTag(tag, revalidatedAt) { + await Promise.allSettled(cacheList.map((cacheItem) => cacheItem.revalidateTag?.(tag, revalidatedAt))); }, }; - - this.cache = defaultCache; } - private revalidatedTags: FileSystemCacheContext['revalidatedTags']; - private appDir: FileSystemCacheContext['_appDir']; - private pagesDir: FileSystemCacheContext['_pagesDir'] | undefined; - private serverDistDir: FileSystemCacheContext['serverDistDir']; - private readonly experimental: FileSystemCacheContext['experimental']; + readonly #revalidatedTagsArray: FileSystemCacheContext['revalidatedTags']; + readonly #appDir: FileSystemCacheContext['_appDir']; + readonly #pagesDir: FileSystemCacheContext['_pagesDir'] | undefined; + readonly #serverDistDir: FileSystemCacheContext['serverDistDir']; + readonly #experimental: FileSystemCacheContext['experimental']; public constructor(context: FileSystemCacheContext) { - this.revalidatedTags = context.revalidatedTags; - this.appDir = Boolean(context._appDir); - this.pagesDir = context._pagesDir; - this.serverDistDir = context.serverDistDir; - this.experimental = context.experimental; - - if (!IncrementalCache.cache) { - IncrementalCache.serverDistDir = this.serverDistDir; - IncrementalCache.init({ dev: context.dev, serverDistDir: this.serverDistDir }); - } - } + this.#revalidatedTagsArray = context.revalidatedTags ?? []; + this.#appDir = Boolean(context._appDir); + this.#pagesDir = context._pagesDir; + this.#serverDistDir = context.serverDistDir; + this.#experimental = { ppr: context?.experimental?.ppr ?? false }; - public async get(...args: CacheHandlerParametersGet): Promise { - const [cacheKey, ctx = {}] = args; - - const { tags = [], softTags = [], kindHint } = ctx; + if (!IncrementalCache.#cache) { + let buildId: string | undefined; - await IncrementalCache.initPromise; - - let cachedData: CacheHandlerValue | null = (await IncrementalCache.cache.get(cacheKey)) ?? null; - - if (!cachedData && IncrementalCache.diskAccessMode.includes('read-yes')) { try { - const bodyFilePath = this.getFilePath(`${cacheKey}.body`, 'app'); + buildId = fs.readFileSync(path.join(this.#serverDistDir, '..', 'BUILD_ID'), 'utf-8'); + } catch (error) { + buildId = undefined; + } - const bodyFileData = await fsPromises.readFile(bodyFilePath); - const { mtime } = await fsPromises.stat(bodyFilePath); + IncrementalCache.configureIncrementalCache({ + dev: context.dev, + serverDistDir: this.#serverDistDir, + buildId, + }) + .then(IncrementalCache.#resolveCreationPromise) + .catch(IncrementalCache.#rejectCreationPromise); + } + } - const metaFileData = await fsPromises.readFile( - bodyFilePath.replace(/\.body$/, NEXT_META_SUFFIX), - 'utf-8', - ); - const meta: NonNullableRouteMetadata = JSON.parse(metaFileData) as NonNullableRouteMetadata; + async readCacheFromFileSystem( + cacheKey: string, + kindHint?: IncrementalCacheKindHint, + tags?: string[], + ): Promise { + let cachedData: CacheHandlerValue | null = null; - const cacheEntry: CacheHandlerValue = { - lastModified: mtime.getTime(), - value: { - kind: 'ROUTE', - body: bodyFileData, - headers: meta.headers, - status: meta.status, - }, - }; + try { + const bodyFilePath = this.#getFilePath(`${cacheKey}.body`, 'app'); + + const bodyFileData = await fsPromises.readFile(bodyFilePath); + const { mtime } = await fsPromises.stat(bodyFilePath); + + const metaFileData = await fsPromises.readFile(bodyFilePath.replace(/\.body$/, NEXT_META_SUFFIX), 'utf-8'); + const meta: NonNullableRouteMetadata = JSON.parse(metaFileData) as NonNullableRouteMetadata; + + const cacheEntry: CacheHandlerValue = { + lastModified: mtime.getTime(), + value: { + kind: 'ROUTE', + body: bodyFileData, + headers: meta.headers, + status: meta.status, + }, + }; - return cacheEntry; - } catch (_) { - // no .meta data for the related key - } + return cacheEntry; + } catch (_) { + // no .meta data for the related key + } - try { - // Determine the file kind if we didn't know it already. - let kind = kindHint; + try { + // Determine the file kind if we didn't know it already. + let kind = kindHint; - if (!kind) { - kind = this.detectFileKind(`${cacheKey}.html`); - } + if (!kind) { + kind = this.#detectFileKind(`${cacheKey}.html`); + } - const isAppPath = kind === 'app'; - const pageFilePath = this.getFilePath(kind === 'fetch' ? cacheKey : `${cacheKey}.html`, kind); + const isAppPath = kind === 'app'; + const pageFilePath = this.#getFilePath(kind === 'fetch' ? cacheKey : `${cacheKey}.html`, kind); - const pageFile = await fsPromises.readFile(pageFilePath, 'utf-8'); - const { mtime } = await fsPromises.stat(pageFilePath); + const pageFile = await fsPromises.readFile(pageFilePath, 'utf-8'); + const { mtime } = await fsPromises.stat(pageFilePath); - if (kind === 'fetch') { - const lastModified = mtime.getTime(); - const parsedData = JSON.parse(pageFile) as CachedFetchValue; + if (kind === 'fetch') { + const lastModified = mtime.getTime(); + const parsedData = JSON.parse(pageFile) as CachedFetchValue; - cachedData = { - lastModified, - value: parsedData, - }; + cachedData = { + lastModified, + value: parsedData, + }; - if (cachedData.value?.kind === 'FETCH') { - const storedTags = cachedData.value.tags; + if (cachedData.value?.kind === 'FETCH') { + const storedTags = cachedData.value.tags; - // update stored tags if a new one is being added - // TODO: remove this when we can send the tags - // via header on GET same as SET - if (!tags?.every((tag) => storedTags?.includes(tag))) { - await this.set(cacheKey, cachedData.value, { tags }); - } + // update stored tags if a new one is being added + // TODO: remove this when we can send the tags + // via header on GET same as SET + if (!tags?.every((tag) => storedTags?.includes(tag))) { + await this.set(cacheKey, cachedData.value, { tags }); } - } else { - const pageDataFilePath = isAppPath - ? this.getFilePath( - `${cacheKey}${this.experimental.ppr ? RSC_PREFETCH_SUFFIX : RSC_SUFFIX}`, - 'app', - ) - : this.getFilePath(`${cacheKey}${NEXT_DATA_SUFFIX}`, 'pages'); - - const pageDataFile = await fsPromises.readFile(pageDataFilePath, 'utf-8'); - - const pageData = isAppPath ? pageDataFile : (JSON.parse(pageDataFile) as object); - - let meta: RouteMetadata | undefined; - - if (isAppPath) { - try { - const metaFileData = await fsPromises.readFile( - pageFilePath.replace(/\.html$/, NEXT_META_SUFFIX), - 'utf-8', - ); - meta = JSON.parse(metaFileData) as RouteMetadata; - } catch { - // no .meta data for the related key - } + } + } else { + const pageDataFilePath = isAppPath + ? this.#getFilePath( + `${cacheKey}${this.#experimental.ppr ? RSC_PREFETCH_SUFFIX : RSC_SUFFIX}`, + 'app', + ) + : this.#getFilePath(`${cacheKey}${NEXT_DATA_SUFFIX}`, 'pages'); + + const pageDataFile = await fsPromises.readFile(pageDataFilePath, 'utf-8'); + + const pageData = isAppPath ? pageDataFile : (JSON.parse(pageDataFile) as object); + + let meta: RouteMetadata | undefined; + + if (isAppPath) { + try { + const metaFileData = await fsPromises.readFile( + pageFilePath.replace(/\.html$/, NEXT_META_SUFFIX), + 'utf-8', + ); + meta = JSON.parse(metaFileData) as RouteMetadata; + } catch { + // no .meta data for the related key } - - cachedData = { - lastModified: mtime.getTime(), - value: { - kind: 'PAGE', - html: pageFile, - pageData, - postponed: meta?.postponed, - headers: meta?.headers, - status: meta?.status, - }, - }; } - if (cachedData) { - await IncrementalCache.cache.set(cacheKey, cachedData); - } - } catch (_) { - // unable to get data from disk + cachedData = { + lastModified: mtime.getTime(), + value: { + kind: 'PAGE', + html: pageFile, + pageData, + postponed: meta?.postponed, + headers: meta?.headers, + status: meta?.status, + }, + }; } + } catch (_) { + // unable to get data from the file system } - if (!cachedData) { - return null; - } + return cachedData; + } + async #revalidateCachedData(cachedData: CacheHandlerValue, tags: string[], softTags: string[]): Promise { // credits to Next.js for the following code if (cachedData.value?.kind === 'PAGE') { let cacheTags: undefined | string[]; @@ -316,77 +450,83 @@ export class IncrementalCache implements CacheHandler { cacheTags = tagsHeader.split(','); } - const tagsManifest = await IncrementalCache.cache.getTagsManifest(); + const revalidatedTags = + (await IncrementalCache.#cache.getRevalidatedTags?.()) ?? IncrementalCache.#revalidatedTags; if (cacheTags?.length) { const isStale = cacheTags.some((tag) => { - const revalidatedAt = tagsManifest.items[tag]?.revalidatedAt; + const revalidatedAt = revalidatedTags[tag]; - return revalidatedAt && revalidatedAt >= (cachedData?.lastModified || Date.now()); + return ( + typeof revalidatedAt === 'number' && revalidatedAt >= (cachedData?.lastModified || Date.now()) + ); }); // we trigger a blocking validation if an ISR page // had a tag revalidated, if we want to be a background // revalidation instead we return cachedData.lastModified = -1 - if (isStale) { - return null; - } + return isStale; } } if (cachedData.value?.kind === 'FETCH') { const combinedTags = [...tags, ...softTags]; - const tagsManifest = await IncrementalCache.cache.getTagsManifest(); + const revalidatedTags = + (await IncrementalCache.#cache.getRevalidatedTags?.()) ?? IncrementalCache.#revalidatedTags; const wasRevalidated = combinedTags.some((tag: string) => { - if (this.revalidatedTags.includes(tag)) { + if (this.#revalidatedTagsArray.includes(tag)) { return true; } - const revalidatedAt = tagsManifest.items[tag]?.revalidatedAt; + const revalidatedAt = revalidatedTags[tag]; - return revalidatedAt && revalidatedAt >= (cachedData?.lastModified || Date.now()); + return typeof revalidatedAt === 'number' && revalidatedAt >= (cachedData?.lastModified || Date.now()); }); + // When revalidate tag is called we don't return // stale cachedData so it's updated right away - if (wasRevalidated) { - return null; - } + return wasRevalidated; } - return cachedData; + return false; } - public async set(...args: CacheHandlerParametersSet): Promise { - const [cacheKey, data, ctx] = args; + public async get(...args: CacheHandlerParametersGet): Promise { + const [cacheKey, ctx = {}] = args; + + const { tags = [], softTags = [], kindHint } = ctx; - let ttl: number | undefined; + await IncrementalCache.#creationPromise; - const { revalidate } = ctx; + let cachedData: CacheHandlerValue | null = (await IncrementalCache.#cache.get(cacheKey)) ?? null; - if (IncrementalCache.diskAccessMode === 'read-no/write-no' && typeof revalidate === 'number') { - ttl = revalidate; + if (!cachedData && IncrementalCache.#useFileSystem) { + cachedData = await this.readCacheFromFileSystem(cacheKey, kindHint, tags); + + if (cachedData) { + await IncrementalCache.#cache.set(cacheKey, cachedData); + } } - await IncrementalCache.initPromise; + if (!cachedData) { + return null; + } - await IncrementalCache.cache.set( - cacheKey, - { - value: data, - lastModified: Date.now(), - }, - ttl, - ); + const revalidated = await this.#revalidateCachedData(cachedData, tags, softTags); - if (!data || IncrementalCache.diskAccessMode.includes('write-no')) { - return; + if (revalidated) { + return null; } + return cachedData; + } + + async writeCacheToFileSystem(data: IncrementalCacheValue, cacheKey: string, tags: string[] = []): Promise { // credits to Next.js for the following code if (data.kind === 'ROUTE') { - const filePath = this.getFilePath(`${cacheKey}.body`, 'app'); + const filePath = this.#getFilePath(`${cacheKey}.body`, 'app'); const meta: RouteMetadata = { headers: data.headers, @@ -403,12 +543,12 @@ export class IncrementalCache implements CacheHandler { if (data.kind === 'PAGE') { const isAppPath = typeof data.pageData === 'string'; - const htmlPath = this.getFilePath(`${cacheKey}.html`, isAppPath ? 'app' : 'pages'); + const htmlPath = this.#getFilePath(`${cacheKey}.html`, isAppPath ? 'app' : 'pages'); await fsPromises.mkdir(path.dirname(htmlPath), { recursive: true }); await fsPromises.writeFile(htmlPath, data.html); await fsPromises.writeFile( - this.getFilePath( + this.#getFilePath( `${cacheKey}${isAppPath ? RSC_SUFFIX : NEXT_DATA_SUFFIX}`, isAppPath ? 'app' : 'pages', ), @@ -428,35 +568,65 @@ export class IncrementalCache implements CacheHandler { } if (data.kind === 'FETCH') { - const filePath = this.getFilePath(cacheKey, 'fetch'); + const filePath = this.#getFilePath(cacheKey, 'fetch'); await fsPromises.mkdir(path.dirname(filePath), { recursive: true }); await fsPromises.writeFile( filePath, JSON.stringify({ ...data, - tags: ctx.tags, + tags, }), ); } } - public async revalidateTag(...args: CacheHandlerParametersRevalidateTag): Promise { - const [tag] = args; + public async set(...args: CacheHandlerParametersSet): Promise { + const [cacheKey, data, ctx] = args; - await IncrementalCache.initPromise; + const { revalidate, tags } = ctx; - await IncrementalCache.cache.revalidateTag(tag, Date.now()); + await IncrementalCache.#creationPromise; - if (!IncrementalCache.tagsManifestPath || IncrementalCache.diskAccessMode.includes('write-no')) { - return; + await IncrementalCache.#cache.set( + cacheKey, + { + value: data, + lastModified: Date.now(), + }, + typeof revalidate === 'number' ? revalidate : undefined, + ); + + if (data && IncrementalCache.#useFileSystem) { + await this.writeCacheToFileSystem(data, cacheKey, tags); } + } - const tagsManifest = await IncrementalCache.cache.getTagsManifest(); + public async revalidateTag(...args: CacheHandlerParametersRevalidateTag): Promise { + const [tag] = args; + + await IncrementalCache.#creationPromise; + + await IncrementalCache.#cache.revalidateTag?.(tag, Date.now()); + + IncrementalCache.#revalidatedTags[tag] = Date.now(); try { - await fsPromises.mkdir(path.dirname(IncrementalCache.tagsManifestPath), { recursive: true }); - await fsPromises.writeFile(IncrementalCache.tagsManifestPath, JSON.stringify(tagsManifest || {})); + const tagsManifest = Object.entries(IncrementalCache.#revalidatedTags).reduce( + (acc, [revalidatedTag, revalidatedAt]) => { + acc.items[revalidatedTag] = { + revalidatedAt, + }; + + return acc; + }, + { + version: 1, + items: {}, + }, + ); + + await fsPromises.writeFile(IncrementalCache.#tagsManifestPath, JSON.stringify(tagsManifest)); } catch (err) { // eslint-disable-next-line no-console -- we want to log this console.warn('Failed to update tags manifest.', err); @@ -464,31 +634,31 @@ export class IncrementalCache implements CacheHandler { } // credits to Next.js for the following code - private detectFileKind(pathname: string): 'app' | 'pages' { - const pagesDir = this.pagesDir ?? IncrementalCache.hasPagesDir; + #detectFileKind(pathname: string): 'app' | 'pages' { + const pagesDir = this.#pagesDir ?? IncrementalCache.#hasPagesDir; - if (!this.appDir && !pagesDir) { + if (!this.#appDir && !pagesDir) { throw new Error("Invariant: Can't determine file path kind, no page directory enabled"); } // If app directory isn't enabled, then assume it's pages and avoid the fs // hit. - if (!this.appDir && pagesDir) { + if (!this.#appDir && pagesDir) { return 'pages'; } // Otherwise assume it's a pages file if the pages directory isn't enabled. - else if (this.appDir && !pagesDir) { + else if (this.#appDir && !pagesDir) { return 'app'; } // If both are enabled, we need to test each in order, starting with // `pages`. - let filePath = this.getFilePath(pathname, 'pages'); + let filePath = this.#getFilePath(pathname, 'pages'); if (fs.existsSync(filePath)) { return 'pages'; } - filePath = this.getFilePath(pathname, 'app'); + filePath = this.#getFilePath(pathname, 'app'); if (fs.existsSync(filePath)) { return 'app'; } @@ -497,16 +667,16 @@ export class IncrementalCache implements CacheHandler { } // credits to Next.js for the following code - private getFilePath(pathname: string, kind: 'app' | 'fetch' | 'pages'): string { + #getFilePath(pathname: string, kind: 'app' | 'fetch' | 'pages'): string { switch (kind) { case 'fetch': // we store in .next/cache/fetch-cache so it can be persisted // across deploys - return path.join(this.serverDistDir, '..', 'cache', 'fetch-cache', pathname); + return path.join(this.#serverDistDir, '..', 'cache', 'fetch-cache', pathname); case 'pages': - return path.join(this.serverDistDir, 'pages', pathname); + return path.join(this.#serverDistDir, 'pages', pathname); case 'app': - return path.join(this.serverDistDir, 'app', pathname); + return path.join(this.#serverDistDir, 'app', pathname); default: throw new Error("Invariant: Can't determine file path kind"); } diff --git a/packages/cache-handler/src/common-types.ts b/packages/cache-handler/src/common-types.ts index a857317a..d80ce4de 100644 --- a/packages/cache-handler/src/common-types.ts +++ b/packages/cache-handler/src/common-types.ts @@ -1,37 +1,10 @@ -import type { RedisClientType, RedisClusterType } from 'redis'; -import type { CacheConfig } from './cache-handler'; +import type { RedisClientType } from 'redis'; export type RedisJSON = Parameters['2']; -type CacheHandlerOptions = { +export type CacheHandlerOptions = { /** - * Whether to read/write to disk. Defaults to 'read-yes/write-yes'. - */ - diskAccessMode?: CacheConfig['diskAccessMode']; - /** - * Whether to log errors to the console. Defaults to false. + * Optional. If set to true, logs errors to the console. Defaults to false. */ unstable__logErrors?: boolean; }; - -export type RedisCacheHandlerOptions = CacheHandlerOptions & { - /** - * Redis client instance - */ - client: T; - /** - * Prefix for all keys. Useful for namespacing. Defaults to no prefix. - */ - keyPrefix?: string; - /** - * Key to store the tags manifest. Defaults to '__sharedTagsManifest__'. - */ - tagsManifestKey?: string; -}; - -export type ServerCacheHandlerOptions = CacheHandlerOptions & { - /** - * Base URL of the server. - */ - baseUrl: string; -}; diff --git a/packages/cache-handler/src/handlers/local-lru.ts b/packages/cache-handler/src/handlers/local-lru.ts new file mode 100644 index 00000000..d27a34a4 --- /dev/null +++ b/packages/cache-handler/src/handlers/local-lru.ts @@ -0,0 +1,72 @@ +/* eslint-disable import/no-default-export -- use default here */ +/* eslint-disable camelcase -- unstable__* */ +/* eslint-disable no-console -- log errors */ +import type { LruCacheOptions } from '@neshca/next-lru-cache/next-cache-handler-value'; +import { createCache } from '@neshca/next-lru-cache/next-cache-handler-value'; +import type { Cache } from '../cache-handler'; +import type { CacheHandlerOptions } from '../common-types'; + +export type LruCacheHandlerOptions = CacheHandlerOptions & + LruCacheOptions & { + /** + * Optional. Enables ttl support. Defaults to `false`. + */ + useTtl?: boolean; + }; + +/** + * Creates an LRU (Least Recently Used) cache handler. + * + * This function initializes an LRU cache handler for managing cache operations. + * It allows setting a maximum number of items and maximum item size in bytes. + * The handler includes methods to get and set cache values. + * Revalidation is handled by the `IncrementalCache` class. + * + * @param options - The configuration options for the LRU cache handler. See {@link LruCacheHandlerOptions}. + * + * @returns An object representing the cache, with methods for cache operations. + * + * @example + * ```js + * const lruCache = createLruCache({ + * maxItemsNumber: 10000, // 10000 items + * maxItemSizeBytes: 1024 * 1024 * 500, // 500 MB + * unstable__logErrors: true + * }); + * ``` + * + * @remarks + * Use this Handler as a fallback for Redis Handler instead of the filesystem when you use only the App router. + */ +export default function createLruCache({ + unstable__logErrors, + useTtl, + ...lruOptions +}: LruCacheHandlerOptions = {}): Cache { + const lruCache = createCache(lruOptions); + + return { + get(key) { + try { + return Promise.resolve(lruCache.get(key)); + } catch (error) { + if (unstable__logErrors) { + console.error('cache.get', error); + } + + return Promise.resolve(null); + } + }, + set(key, value, ttl = 0) { + try { + lruCache.set(key, value, useTtl ? { ttl: ttl * 1000 } : undefined); + } catch (error) { + if (unstable__logErrors) { + console.error('cache.set', error); + } + } + + return Promise.resolve(); + }, + }; +} diff --git a/packages/cache-handler/src/handlers/redis-stack.ts b/packages/cache-handler/src/handlers/redis-stack.ts index 1a8b94ab..005d4382 100644 --- a/packages/cache-handler/src/handlers/redis-stack.ts +++ b/packages/cache-handler/src/handlers/redis-stack.ts @@ -1,96 +1,145 @@ +/* eslint-disable import/no-default-export -- use default here */ /* eslint-disable camelcase -- unstable__* */ /* eslint-disable no-console -- log errors */ import type { RedisClientType, RedisClusterType } from 'redis'; -import type { TagsManifest, OnCreationHook, CacheHandlerValue } from '../cache-handler'; -import type { RedisCacheHandlerOptions, RedisJSON } from '../common-types'; +import type { RevalidatedTags, CacheHandlerValue, Cache } from '../cache-handler'; +import type { CacheHandlerOptions, RedisJSON } from '../common-types'; -let localTagsManifest: TagsManifest = { - version: 1, - items: {}, +/** + * The configuration options for the Redis Handler + */ +export type RedisCacheHandlerOptions = CacheHandlerOptions & { + /** + * The Redis client instance, either `RedisClient` or `RedisCluster`. + */ + client: T; + /** + * Optional. Prefix for all keys, useful for namespacing. Defaults to an empty string. + */ + keyPrefix?: string; + /** + * Optional. Key to store the `RevalidatedTags`. Defaults to `__sharedRevalidatedTags__`. + */ + revalidatedTagsKey?: string; + /** + * Optional. Enables ttl support. Defaults to `false`. + * + * @remarks + * - **File System Cache**: Ensure that the file system cache is disabled + * by setting `useFileSystem: false` in your cache handler configuration. + * This is crucial for the TTL feature to work correctly. + * If the file system cache is enabled, + * the cache entries will HIT from the file system cache when expired in Redis. + * - **Pages Directory Limitation**: Due to a known issue in Next.js, + * disabling the file system cache may not function properly within the Pages directory. + * It is recommended to use TTL primarily in the App directory. + * More details on this limitation can be found in the file system cache configuration documentation. + */ + useTtl?: boolean; }; -const TAGS_MANIFEST_KEY = '__sharedTagsManifest__'; - -export function createHandler({ +/** + * Creates a Handler using Redis client. + * + * This function initializes a Handler for managing cache operations using Redis. + * It supports both Redis Client and Redis Cluster types. The handler includes + * methods to get, set, and manage cache values and revalidated tags. + * + * @param options - The configuration options for the Redis Handler. See {@link RedisCacheHandlerOptions}. + * + * @returns A promise that resolves to object representing the cache, with methods for cache operations. + * + * @example + * ```js + * const redisClient = createRedisClient(...); + * const cache = await createCache({ + * client: redisClient, + * keyPrefix: 'myApp:', + * revalidatedTagsKey: 'myRevalidatedTags', + * unstable__logErrors: true + * }); + * ``` + * + * @remarks + * The `get` method retrieves a value from the cache, automatically converting `Buffer` types when necessary. + * + * The `set` method allows setting a value in the cache. + * + * The `getRevalidatedTags` and `revalidateTag` methods are used for handling tag-based cache revalidation. + */ +export default async function createCache({ client, - diskAccessMode = 'read-yes/write-yes', keyPrefix = '', - tagsManifestKey = TAGS_MANIFEST_KEY, - unstable__logErrors, -}: RedisCacheHandlerOptions): OnCreationHook { - return async function getConfig() { - await client.json.set(keyPrefix + tagsManifestKey, '.', localTagsManifest, { + revalidatedTagsKey = '__sharedRevalidatedTags__', + useTtl = false, + unstable__logErrors = false, +}: RedisCacheHandlerOptions): Promise { + await client.json.set( + keyPrefix + revalidatedTagsKey, + '.', + {}, + { NX: true, - }); - - return { - diskAccessMode, - cache: { - async get(key) { - try { - const cacheValue = ((await client.json.get(keyPrefix + key)) ?? - null) as CacheHandlerValue | null; - - if ( - cacheValue && - cacheValue.value?.kind === 'ROUTE' && - // @ts-expect-error -- after JSON parsing, body is a Json Buffer representation - cacheValue.value.body.type === 'Buffer' - ) { - cacheValue.value.body = Buffer.from(cacheValue.value.body); - } + }, + ); - return cacheValue; - } catch (error) { - if (unstable__logErrors) { - console.error('cache.get', error); - } + return { + async get(key) { + try { + const cacheValue = ((await client.json.get(keyPrefix + key)) ?? null) as CacheHandlerValue | null; - return null; - } - }, - async set(key, value) { - try { - await client.json.set(keyPrefix + key, '.', value as unknown as RedisJSON); - } catch (error) { - if (unstable__logErrors) { - console.error('cache.set', error); - } - // ignore because value will be written to disk - } - }, - async getTagsManifest() { - try { - const sharedTagsManifest = ((await client.json.get(keyPrefix + tagsManifestKey)) ?? - null) as TagsManifest | null; + if ( + cacheValue && + cacheValue.value?.kind === 'ROUTE' && + // @ts-expect-error -- after JSON parsing, body is a Json Buffer representation + cacheValue.value.body.type === 'Buffer' + ) { + cacheValue.value.body = Buffer.from(cacheValue.value.body); + } - if (sharedTagsManifest) { - localTagsManifest = sharedTagsManifest; - } + return cacheValue; + } catch (error) { + if (unstable__logErrors) { + console.error('cache.get', error); + } - return localTagsManifest; - } catch (error) { - if (unstable__logErrors) { - console.error('cache.getTagsManifest', error); - } + return null; + } + }, + async set(key, value, ttl) { + try { + await client.json.set(keyPrefix + key, '.', value as unknown as RedisJSON); - return localTagsManifest; - } - }, - async revalidateTag(tag, revalidatedAt) { - try { - await client.json.set(keyPrefix + tagsManifestKey, `.items.${tag}`, { - revalidatedAt, - }); - } catch (error) { - if (unstable__logErrors) { - console.error('cache.revalidateTag', error); - } + if (useTtl && typeof ttl === 'number') { + await client.expire(keyPrefix + key, ttl); + } + } catch (error) { + if (unstable__logErrors) { + console.error('cache.set', error); + } + } + }, + async getRevalidatedTags() { + try { + const sharedRevalidatedTags = ((await client.json.get(keyPrefix + revalidatedTagsKey)) ?? undefined) as + | RevalidatedTags + | undefined; - localTagsManifest.items[tag] = { revalidatedAt }; - } - }, - }, - }; + return sharedRevalidatedTags; + } catch (error) { + if (unstable__logErrors) { + console.error('cache.getRevalidatedTags', error); + } + } + }, + async revalidateTag(tag, revalidatedAt) { + try { + await client.json.set(keyPrefix + revalidatedTagsKey, `.${tag}`, revalidatedAt); + } catch (error) { + if (unstable__logErrors) { + console.error('cache.revalidateTag', error); + } + } + }, }; } diff --git a/packages/cache-handler/src/handlers/redis-strings.ts b/packages/cache-handler/src/handlers/redis-strings.ts index 9bc48cbe..d1803cd1 100644 --- a/packages/cache-handler/src/handlers/redis-strings.ts +++ b/packages/cache-handler/src/handlers/redis-strings.ts @@ -1,93 +1,109 @@ +/* eslint-disable import/no-default-export -- use default here */ /* eslint-disable camelcase -- unstable__* */ /* eslint-disable no-console -- log errors */ import { reviveFromBase64Representation, replaceJsonWithBase64 } from '@neshca/json-replacer-reviver'; import type { RedisClientType, RedisClusterType } from 'redis'; -import type { TagsManifest, OnCreationHook, CacheHandlerValue } from '../cache-handler'; -import type { RedisCacheHandlerOptions } from '../common-types'; +import type { RevalidatedTags, CacheHandlerValue, Cache } from '../cache-handler'; +import type { RedisCacheHandlerOptions } from './redis-stack'; -const localTagsManifest: TagsManifest = { - version: 1, - items: {}, -}; - -const TAGS_MANIFEST_KEY = '__sharedTagsManifest__'; - -export function createHandler({ +/** + * Creates a Handler using Redis client. + * + * This function initializes a Handler for managing cache operations using Redis. + * It supports both Redis Client and Redis Cluster types. The handler includes + * methods to get, set, and manage cache values and revalidated tags. + * + * @param options - The configuration options for the Redis Handler. See {@link RedisCacheHandlerOptions}. + * + * @returns An object representing the cache, with methods for cache operations. + * + * @example + * ```js + * const redisClient = createRedisClient(...); + * const cache = await createCache({ + * client: redisClient, + * keyPrefix: 'myApp:', + * revalidatedTagsKey: 'myRevalidatedTags', + * unstable__logErrors: true + * }); + * ``` + * + * @remarks + * The `get` method retrieves a value from the cache, automatically converting `Buffer` types when necessary. + * + * The `set` method allows setting a value in the cache. + * + * The `getRevalidatedTags` and `revalidateTag` methods are used for handling tag-based cache revalidation. + */ +export default function createCache({ client, - diskAccessMode = 'read-yes/write-yes', keyPrefix = '', - tagsManifestKey = TAGS_MANIFEST_KEY, + revalidatedTagsKey = '__sharedRevalidatedTags__', + useTtl = false, unstable__logErrors, -}: RedisCacheHandlerOptions): OnCreationHook { - return function getConfig() { - return { - diskAccessMode, - cache: { - async get(key) { - try { - const result = (await client.get(keyPrefix + key)) ?? null; - - if (!result) { - return null; - } +}: RedisCacheHandlerOptions): Cache { + return { + async get(key) { + try { + const result = (await client.get(keyPrefix + key)) ?? null; - // use reviveFromBase64Representation to restore binary data from Base64 - return JSON.parse(result, reviveFromBase64Representation) as CacheHandlerValue | null; - } catch (error) { - if (unstable__logErrors) { - console.error('cache.get', error); - } + if (!result) { + return null; + } - return null; - } - }, - async set(key, value) { - try { - // use replaceJsonWithBase64 to store binary data in Base64 and save space - await client.set(keyPrefix + key, JSON.stringify(value, replaceJsonWithBase64)); - } catch (error) { - if (unstable__logErrors) { - console.error('cache.set', error); - } - // ignore because value will be written to disk - } - }, - async getTagsManifest() { - try { - const remoteTagsManifest = await client.hGetAll(keyPrefix + tagsManifestKey); + // use reviveFromBase64Representation to restore binary data from Base64 + return JSON.parse(result, reviveFromBase64Representation) as CacheHandlerValue | null; + } catch (error) { + if (unstable__logErrors) { + console.error('cache.get', error); + } - if (!remoteTagsManifest) { - return localTagsManifest; - } + return null; + } + }, + async set(key, value, ttl) { + try { + // use replaceJsonWithBase64 to store binary data in Base64 and save space + await client.set( + keyPrefix + key, + JSON.stringify(value, replaceJsonWithBase64), + useTtl && typeof ttl === 'number' ? { EX: ttl } : undefined, + ); + } catch (error) { + if (unstable__logErrors) { + console.error('cache.set', error); + } + } + }, + async getRevalidatedTags() { + try { + const sharedRevalidatedTags = await client.hGetAll(keyPrefix + revalidatedTagsKey); - Object.entries(remoteTagsManifest).reduce((acc, [tag, revalidatedAt]) => { - acc[tag] = { revalidatedAt: parseInt(revalidatedAt ?? '0', 10) }; - return acc; - }, localTagsManifest.items); + const entries = Object.entries(sharedRevalidatedTags); - return localTagsManifest; - } catch (error) { - if (unstable__logErrors) { - console.error('cache.getTagsManifest', error); - } + const revalidatedTags = entries.reduce((acc, [tag, revalidatedAt]) => { + acc[tag] = Number(revalidatedAt); - return localTagsManifest; - } - }, - async revalidateTag(tag, revalidatedAt) { - try { - await client.hSet(keyPrefix + tagsManifestKey, { - [tag]: revalidatedAt, - }); - } catch (error) { - if (unstable__logErrors) { - console.error('cache.revalidateTag', error); - } + return acc; + }, {}); - localTagsManifest.items[tag] = { revalidatedAt }; - } - }, - }, - }; + return revalidatedTags; + } catch (error) { + if (unstable__logErrors) { + console.error('cache.getRevalidatedTags', error); + } + } + }, + async revalidateTag(tag, revalidatedAt) { + try { + await client.hSet(keyPrefix + revalidatedTagsKey, { + [tag]: revalidatedAt, + }); + } catch (error) { + if (unstable__logErrors) { + console.error('cache.revalidateTag', error); + } + } + }, }; } diff --git a/packages/cache-handler/src/handlers/server.ts b/packages/cache-handler/src/handlers/server.ts index b95a2ab0..274d82bd 100644 --- a/packages/cache-handler/src/handlers/server.ts +++ b/packages/cache-handler/src/handlers/server.ts @@ -1,129 +1,154 @@ +/* eslint-disable import/no-default-export -- use default here */ /* eslint-disable camelcase -- unstable__* */ /* eslint-disable no-console -- log errors */ import { reviveFromBase64Representation, replaceJsonWithBase64 } from '@neshca/json-replacer-reviver'; -import type { TagsManifest, OnCreationHook, CacheHandlerValue } from '../cache-handler'; -import type { ServerCacheHandlerOptions } from '../common-types'; - -const localTagsManifest: TagsManifest = { - version: 1, - items: {}, +import type { CacheHandlerValue, Cache, RevalidatedTags } from '../cache-handler'; +import type { CacheHandlerOptions } from '../common-types'; + +export type ServerCacheHandlerOptions = CacheHandlerOptions & { + /** + * The base URL of the cache store server. + */ + baseUrl: URL | string; }; -export function createHandler({ - baseUrl, - diskAccessMode = 'read-yes/write-yes', - unstable__logErrors, -}: ServerCacheHandlerOptions): OnCreationHook { - return function getConfig() { - return { - diskAccessMode, - cache: { - async get(key) { - try { - const response = await fetch(`${baseUrl}/get?${new URLSearchParams({ key }).toString()}`, { - // @ts-expect-error -- act as an internal fetch call - next: { - internal: true, - }, - }); - - if (!response.ok) { - return null; - } - - if (response.status > 500 && response.status < 600) { - throw new Error(`Server error: ${response.status}`); - } - - const string = await response.text(); - - return JSON.parse(string, reviveFromBase64Representation) as CacheHandlerValue; - } catch (error) { - if (unstable__logErrors) { - console.error('cache.get', error); - } - - return null; - } - }, - async set(key, value, ttl) { - try { - const response = await fetch(`${baseUrl}/set`, { - method: 'POST', - body: JSON.stringify([key, JSON.stringify(value, replaceJsonWithBase64), ttl]), - headers: { - 'Content-Type': 'application/json', - }, - // @ts-expect-error -- act as an internal fetch call - next: { - internal: true, - }, - }); - - if (response.status > 500 && response.status < 600) { - throw new Error(`Server error: ${response.status}`); - } - } catch (error) { - if (unstable__logErrors) { - console.error('cache.set', error); - } - } - }, - - async getTagsManifest() { - try { - const response = await fetch(`${baseUrl}/getTagsManifest`, { - // @ts-expect-error -- act as an internal fetch call - next: { - internal: true, - }, - }); - - if (!response.ok) { - return localTagsManifest; - } - - if (response.status > 500 && response.status < 600) { - throw new Error(`Server error: ${response.status}`); - } - - const json = (await response.json()) as TagsManifest; - - return json; - } catch (error) { - if (unstable__logErrors) { - console.error('cache.getTagsManifest', error); - } - - return localTagsManifest; - } - }, - async revalidateTag(tag, revalidatedAt) { - try { - const response = await fetch(`${baseUrl}/revalidateTag`, { - method: 'POST', - body: JSON.stringify([tag, revalidatedAt]), - headers: { - 'Content-Type': 'application/json', - }, - // @ts-expect-error -- act as an internal fetch call - next: { - internal: true, - }, - }); - - if (response.status > 500 && response.status < 600) { - throw new Error(`Server error: ${response.status}`); - } - } catch (error) { - if (unstable__logErrors) { - console.error('cache.revalidateTag', error); - } - } - - localTagsManifest.items[tag] = { revalidatedAt }; - }, - }, - }; +/** + * Creates a server-based Handler to use with the `@neshca/server` package. + * + * This function initializes a Handler for managing cache operations via a server. + * It includes methods to get, set, and manage cache values and revalidated tags, + * leveraging server-side storage. + * + * @param options - The configuration options for the server Handler. See {@link ServerCacheHandlerOptions}. + * + * @returns An object representing the cache, with methods for cache operations. + * + * @example + * ```js + * const serverCache = createCache({ + * baseUrl: 'http://localhost:8080/', + * unstable__logErrors: true + * }); + * ``` + * + * @remarks + * The `get` method retrieves a value from the server cache. If the server response is not OK, it returns `null`. + * + * The `set` method allows setting a value in the server cache. + * + * The `getRevalidatedTags` method retrieves revalidated tags from the server. + * + * The `revalidateTag` method updates the revalidation time for a specific tag in the server cache. + * + * Error handling: If `unstable__logErrors` is true, errors during cache operations are logged to the console. + */ +export default function createCache({ baseUrl, unstable__logErrors }: ServerCacheHandlerOptions): Cache { + return { + async get(key) { + try { + const url = new URL('/get', baseUrl); + + url.searchParams.set('key', key); + + const response = await fetch(url, { + // @ts-expect-error -- act as an internal fetch call + next: { + internal: true, + }, + }); + + if (!response.ok) { + return null; + } + + if (response.status > 500 && response.status < 600) { + throw new Error(`Server error: ${response.status}`); + } + + const string = await response.text(); + + return JSON.parse(string, reviveFromBase64Representation) as CacheHandlerValue; + } catch (error) { + if (unstable__logErrors) { + console.error('cache.get', error); + } + + return null; + } + }, + async set(key, value, ttl) { + try { + const url = new URL('/set', baseUrl); + const response = await fetch(url, { + method: 'POST', + body: JSON.stringify([key, JSON.stringify(value, replaceJsonWithBase64), ttl]), + headers: { + 'Content-Type': 'application/json', + }, + // @ts-expect-error -- act as an internal fetch call + next: { + internal: true, + }, + }); + + if (response.status > 500 && response.status < 600) { + throw new Error(`Server error: ${response.status}`); + } + } catch (error) { + if (unstable__logErrors) { + console.error('cache.set', error); + } + } + }, + + async getRevalidatedTags() { + try { + const url = new URL('/getRevalidatedTags', baseUrl); + + const response = await fetch(url, { + // @ts-expect-error -- act as an internal fetch call + next: { + internal: true, + }, + }); + + if (!response.ok) { + throw new Error(`Server error.`, { cause: response }); + } + + const json = (await response.json()) as RevalidatedTags; + + return json; + } catch (error) { + if (unstable__logErrors) { + console.error('cache.getRevalidatedTags', error); + } + } + }, + async revalidateTag(tag, revalidatedAt) { + try { + const url = new URL('/revalidateTag', baseUrl); + + const response = await fetch(url, { + method: 'POST', + body: JSON.stringify([tag, revalidatedAt]), + headers: { + 'Content-Type': 'application/json', + }, + // @ts-expect-error -- act as an internal fetch call + next: { + internal: true, + }, + }); + + if (response.status > 500 && response.status < 600) { + throw new Error(`Server error: ${response.status}`); + } + } catch (error) { + if (unstable__logErrors) { + console.error('cache.revalidateTag', error); + } + } + }, }; } diff --git a/packages/cache-handler/src/is-tags-manifest.ts b/packages/cache-handler/src/is-tags-manifest.ts new file mode 100644 index 00000000..bbec5274 --- /dev/null +++ b/packages/cache-handler/src/is-tags-manifest.ts @@ -0,0 +1,21 @@ +import type { TagsManifest } from '@neshca/next-common'; + +function hasItems(object: object): object is { items: object } { + return Object.hasOwn(object, 'items'); +} + +function hasVersion(object: object): object is { version: number } { + return Object.hasOwn(object, 'version'); +} + +export function isTagsManifest(object: unknown): object is TagsManifest { + return ( + typeof object === 'object' && + object !== null && + hasItems(object) && + typeof object.items === 'object' && + object.items !== null && + hasVersion(object) && + object.version === 1 + ); +} diff --git a/packages/cache-handler/tsconfig.json b/packages/cache-handler/tsconfig.json index 880f3a07..c5680c97 100644 --- a/packages/cache-handler/tsconfig.json +++ b/packages/cache-handler/tsconfig.json @@ -4,7 +4,10 @@ "exclude": ["dist", "node_modules"], "compilerOptions": { "paths": { - "@neshca/next-common": ["../../internal/next-common/src/next-common.ts"] + "@neshca/next-common": ["../../internal/next-common/src/next-common.ts"], + "@neshca/next-lru-cache/next-cache-handler-value": [ + "../../internal/next-lru-cache/src/cache-types/next-cache-handler-value.ts" + ] } } } diff --git a/packages/cache-handler/tsup.config.ts b/packages/cache-handler/tsup.config.ts index 68aa3593..2668e740 100644 --- a/packages/cache-handler/tsup.config.ts +++ b/packages/cache-handler/tsup.config.ts @@ -5,7 +5,7 @@ export const tsup = defineConfig({ entry: ['src/cache-handler.ts', 'src/handlers/*.ts'], splitting: false, outDir: 'dist', - clean: true, + clean: false, format: ['cjs'], dts: { resolve: true }, target: 'node18', diff --git a/packages/server/README.md b/packages/server/README.md index 958225ec..750d2203 100644 --- a/packages/server/README.md +++ b/packages/server/README.md @@ -4,7 +4,7 @@ Efficient and simple HTTP caching server with LRU eviction, tailored for seamles ### Overview -This project provides a simple HTTP server that works seamlessly with @neshca/cache-handler/server. It implements an efficient LRU (Least Recently Used) key eviction policy, ensuring optimal use of cache resources by automatically removing the least recently accessed items when the cache reaches its capacity. +This project provides a simple HTTP server that works seamlessly with `@neshca/cache-handler/server`. It implements an efficient LRU (Least Recently Used) key eviction policy, ensuring optimal use of cache resources by automatically removing the least recently accessed items when the cache reaches its capacity. ### Usage diff --git a/packages/server/src/server.ts b/packages/server/src/server.ts index 74ff0666..ca451c83 100644 --- a/packages/server/src/server.ts +++ b/packages/server/src/server.ts @@ -3,7 +3,6 @@ import { pino } from 'pino'; import Fastify from 'fastify'; import { createCache } from '@neshca/next-lru-cache/cache-string-value'; -import type { TagsManifest } from '@neshca/next-common'; const logger = pino({ transport: { @@ -16,7 +15,7 @@ const server = Fastify(); const cache = createCache(); -const revalidatedItems = new Map(); +const revalidatedItems = new Map(); const host = process.env.HOST ?? 'localhost'; const port = Number.parseInt(process.env.PORT ?? '8080', 10); @@ -37,19 +36,14 @@ server.post('/set', async (request, reply): Promise => { await reply.code(200).send(); }); -server.get('/getTagsManifest', async (_request, reply): Promise => { - const tagsManifest: TagsManifest = { - items: Object.fromEntries(revalidatedItems), - version: 1, - }; - - await reply.code(200).send(tagsManifest); +server.get('/getRevalidatedTags', async (_request, reply): Promise => { + await reply.code(200).send(Object.fromEntries(revalidatedItems)); }); server.post('/revalidateTag', async (request, reply): Promise => { const [tag, revalidatedAt] = request.body as [string, number]; - revalidatedItems.set(tag, { revalidatedAt }); + revalidatedItems.set(tag, revalidatedAt); await reply.code(200).send(); }); From 684981a449989f06392f392686c67d9c258edc36 Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Sun, 10 Dec 2023 16:50:20 +0300 Subject: [PATCH 016/458] Update spicy-bananas-sneeze.md --- .changeset/spicy-bananas-sneeze.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.changeset/spicy-bananas-sneeze.md b/.changeset/spicy-bananas-sneeze.md index b261570e..0075d38c 100644 --- a/.changeset/spicy-bananas-sneeze.md +++ b/.changeset/spicy-bananas-sneeze.md @@ -2,6 +2,8 @@ '@neshca/server': minor --- +Updated the package to ensure compatibility with the new API for `@neshca/cache-handler`. + #### Breaking Changes - Renamed `getTagsManifest` route to `getRevalidatedTags`; From 9c3e03012749f84fc6003a666f92f9c3cdd3c4f8 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Sun, 10 Dec 2023 16:53:09 +0300 Subject: [PATCH 017/458] Version Packages (#206) Co-authored-by: github-actions[bot] --- .changeset/fifty-apricots-kick.md | 27 --------------------------- .changeset/shiny-teachers-share.md | 5 ----- .changeset/spicy-bananas-sneeze.md | 10 ---------- docs/cache-handler-docs/CHANGELOG.md | 6 ++++++ docs/cache-handler-docs/package.json | 2 +- packages/cache-handler/CHANGELOG.md | 28 ++++++++++++++++++++++++++++ packages/cache-handler/package.json | 2 +- packages/server/CHANGELOG.md | 11 +++++++++++ packages/server/package.json | 2 +- 9 files changed, 48 insertions(+), 45 deletions(-) delete mode 100644 .changeset/fifty-apricots-kick.md delete mode 100644 .changeset/shiny-teachers-share.md delete mode 100644 .changeset/spicy-bananas-sneeze.md diff --git a/.changeset/fifty-apricots-kick.md b/.changeset/fifty-apricots-kick.md deleted file mode 100644 index 600c17d8..00000000 --- a/.changeset/fifty-apricots-kick.md +++ /dev/null @@ -1,27 +0,0 @@ ---- -'@neshca/cache-handler': minor ---- - -This release introduces a colossal refactoring and new features to the `@neshca/cache-handler` package. - -#### Breaking Changes - -- Changed the Handlers API; -- `onCreation` now can accept multiple Handlers for cache layering; -- Dropped `diskAccessMode` option; -- Dropped `defaultLruCacheOptions` option; -- Dropped the default LRU cache; -- Renamed `getTagsManifest` cache method to `getRevalidatedTags`; -- Changed the return type of `getRevalidatedTags` cache method; -- Made Handlers to be exported as default exports. - -#### Features - -- Added `buildId` to `onCreationHook` context argument; -- Introduced `useFileSystem` option; -- Made the LRU cache an independent Handler like Redis or Server; -- Made `getRevalidatedTags` and `revalidateTag` cache methods to be optional. - -#### Misc - -- Added TSDoc comments to the codebase. diff --git a/.changeset/shiny-teachers-share.md b/.changeset/shiny-teachers-share.md deleted file mode 100644 index 4f5a23d9..00000000 --- a/.changeset/shiny-teachers-share.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'cache-handler-docs': minor ---- - -Made the documentation complete. diff --git a/.changeset/spicy-bananas-sneeze.md b/.changeset/spicy-bananas-sneeze.md deleted file mode 100644 index 0075d38c..00000000 --- a/.changeset/spicy-bananas-sneeze.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -'@neshca/server': minor ---- - -Updated the package to ensure compatibility with the new API for `@neshca/cache-handler`. - -#### Breaking Changes - -- Renamed `getTagsManifest` route to `getRevalidatedTags`; - Changed the return type of `getRevalidatedTags` route. diff --git a/docs/cache-handler-docs/CHANGELOG.md b/docs/cache-handler-docs/CHANGELOG.md index 930cb876..42295330 100644 --- a/docs/cache-handler-docs/CHANGELOG.md +++ b/docs/cache-handler-docs/CHANGELOG.md @@ -1,5 +1,11 @@ # cache-handler-docs +## 0.6.0 + +### Minor Changes + +- 60dab2a: Made the documentation complete. + ## 0.5.4 ### Patch Changes diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index a801adbd..7806b978 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -1,6 +1,6 @@ { "name": "cache-handler-docs", - "version": "0.5.4", + "version": "0.6.0", "private": true, "scripts": { "build:docs": "next build", diff --git a/packages/cache-handler/CHANGELOG.md b/packages/cache-handler/CHANGELOG.md index 67af9bdc..8337ed93 100644 --- a/packages/cache-handler/CHANGELOG.md +++ b/packages/cache-handler/CHANGELOG.md @@ -1,5 +1,33 @@ # @neshca/cache-handler +## 0.6.0 + +### Minor Changes + +- 60dab2a: This release introduces a colossal refactoring and new features to the `@neshca/cache-handler` package. + + #### Breaking Changes + + - Changed the Handlers API; + - `onCreation` now can accept multiple Handlers for cache layering; + - Dropped `diskAccessMode` option; + - Dropped `defaultLruCacheOptions` option; + - Dropped the default LRU cache; + - Renamed `getTagsManifest` cache method to `getRevalidatedTags`; + - Changed the return type of `getRevalidatedTags` cache method; + - Made Handlers to be exported as default exports. + + #### Features + + - Added `buildId` to `onCreationHook` context argument; + - Introduced `useFileSystem` option; + - Made the LRU cache an independent Handler like Redis or Server; + - Made `getRevalidatedTags` and `revalidateTag` cache methods to be optional. + + #### Misc + + - Added TSDoc comments to the codebase. + ## 0.5.4 ### Patch Changes diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index a19ebfe3..773eaa07 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -1,6 +1,6 @@ { "name": "@neshca/cache-handler", - "version": "0.5.4", + "version": "0.6.0", "description": "Flexible API to replace the default Next.js cache, accommodating custom cache solutions for multi-instance deployments.", "keywords": [ "cache", diff --git a/packages/server/CHANGELOG.md b/packages/server/CHANGELOG.md index 30f795fd..d80ea5c9 100644 --- a/packages/server/CHANGELOG.md +++ b/packages/server/CHANGELOG.md @@ -1,5 +1,16 @@ # @neshca/server +## 0.6.0 + +### Minor Changes + +- 60dab2a: Updated the package to ensure compatibility with the new API for `@neshca/cache-handler`. + + #### Breaking Changes + + - Renamed `getTagsManifest` route to `getRevalidatedTags`; + Changed the return type of `getRevalidatedTags` route. + ## 0.5.1 ### Patch Changes diff --git a/packages/server/package.json b/packages/server/package.json index ddcdd860..7701e7a7 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -1,6 +1,6 @@ { "name": "@neshca/server", - "version": "0.5.1", + "version": "0.6.0", "description": "Efficient and simple HTTP caching server with LRU eviction, tailored for seamless integration with `@neshca/cache-handler/server` Handler", "homepage": "https://github.com/caching-tools/next-shared-cache/tree/canary/packages/server", "bugs": "https://github.com/caching-tools/next-shared-cache/issues", From 42f12ec1b288e2bc4e80e3548883f542bcb4c450 Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Mon, 11 Dec 2023 10:09:43 +0300 Subject: [PATCH 018/458] Fix section name in docs (#211) Change BuildId to Build Id --- docs/cache-handler-docs/src/pages/configuration/_meta.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/cache-handler-docs/src/pages/configuration/_meta.json b/docs/cache-handler-docs/src/pages/configuration/_meta.json index 47e374d8..b034fda8 100644 --- a/docs/cache-handler-docs/src/pages/configuration/_meta.json +++ b/docs/cache-handler-docs/src/pages/configuration/_meta.json @@ -4,6 +4,6 @@ "use-file-system": "useFileSystem", "opt-out-cache-on-build": "Opt out the cache on Build", "development-environment": "", - "build-id-as-prefix-key": "BuildId as a Prefix Key", + "build-id-as-prefix-key": "Build Id as a Prefix Key", "ttl": "Using TTL" } From b163c1c2f3939732926232468ef4e9f72f7e79ad Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Tue, 12 Dec 2023 08:20:13 +0300 Subject: [PATCH 019/458] Update use-file-system.mdx (#214) - add information about the cases when the in-memory cache is unnecessary - fix grammar and typos --- .../pages/configuration/use-file-system.mdx | 23 +++++++++++++++---- 1 file changed, 18 insertions(+), 5 deletions(-) diff --git a/docs/cache-handler-docs/src/pages/configuration/use-file-system.mdx b/docs/cache-handler-docs/src/pages/configuration/use-file-system.mdx index 43850169..a19c23ce 100644 --- a/docs/cache-handler-docs/src/pages/configuration/use-file-system.mdx +++ b/docs/cache-handler-docs/src/pages/configuration/use-file-system.mdx @@ -2,9 +2,9 @@ import { Callout } from 'nextra/components'; ## Configuring access to the file system -You can use your file system to store the cache data alongside with you shared cache. It may be useful if your shared cache store may be unavailable for some reason. +You can use your file system to store the cache data alongside your shared cache. It may be useful if your shared cache store may be unavailable for some reason. -File system cache is enabled by default. You can disable it by setting `useFileSystem` to false in your `onCreation` hook: +The file system cache is enabled by default. You can disable it by setting `useFileSystem` to false in your `onCreation` hook: ```js filename="cache-handler.js" copy const { IncrementalCache } = require('@neshca/cache-handler'); @@ -38,13 +38,25 @@ module.exports = IncrementalCache; file system cache. Do not disable it if you are using Pages. -## The usage of `local-lru` Handler instad of file system cache +## The usage of `local-lru` Handler instead of file system cache -The `local-lru` Handler utilizes a Least Recently Used (LRU) caching strategy, which can manage cache operations more efficiently by setting a maximum number of items and their size in bytes. It's designed to serve as a fallback for the Redis Handler, offering better performance in specific scenarios. +The `local-lru` Handler utilizes a Least Recently Used (LRU) caching strategy, which can manage cache operations more efficiently by setting a maximum number of items and their size in bytes. It's designed to serve as a fallback for the Redis Handler, offering better performance than the file system. + +### When not to use `local-lru` Handler + +It is worth mentioning that when all application replicas share a file system, enabling a local LRU cache is not viable. + +In the configuration without the `@neshca/cache-handler`, you are turning off the local in-memory cache with this option: + +```js +isrMemoryCacheSize: 0, // disable default in-memory caching +``` + +`@neshca/cache-handler` doesn't use this option; instead, it makes the usage of the local cache more explicit. To disable the LRU cache, simply remove it from the cache array. ### Implementation -The `createLruCache` function initializes the LRU cache handler. It includes methods for getting and setting cache values, and revalidation is managed by the `IncrementalCache` class. +The `createLruCache` function initializes the LRU cache handler. It includes methods for getting and setting cache values, and the `IncrementalCache` class manages revalidation. #### Example Usage @@ -86,4 +98,5 @@ IncrementalCache.onCreation(async (context) => { ### Considerations - It's recommended to use this Handler as a fallback for Redis Handler, particularly when using only the App router. +- Don't use this Handler if you are using shared file systems between application replicas. - Be cautious of a known bug in Next.js' Pages router when disabling the file system cache. Do not disable it if you are using Pages, as mentioned in the preceding section. From d9c5d091e60b1729a79850c66e11639db2c379d2 Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Tue, 12 Dec 2023 14:13:50 +0300 Subject: [PATCH 020/458] Add debug static field with the cache name to IncrementalCache (#215) - Add debug static field with the cache name to IncrementalCache - Create troubleshooting guide for debugging --- .changeset/sour-apes-allow.md | 6 ++ .../cache-handler-redis-stack.js | 2 +- .../cache-handler-redis-strings.js | 2 +- docs/cache-handler-docs/src/pages/_meta.json | 5 ++ .../src/pages/installation.mdx | 63 ++++++++-------- .../src/pages/redis-stack-custom.mdx | 2 +- .../src/pages/redis-stack.mdx | 2 +- .../src/pages/redis-strings-custom.mdx | 2 +- .../src/pages/redis-strings.mdx | 2 +- .../src/pages/troubleshooting.mdx | 75 +++++++++++++++++++ packages/cache-handler/src/cache-handler.ts | 48 ++++++++++++ 11 files changed, 170 insertions(+), 39 deletions(-) create mode 100644 .changeset/sour-apes-allow.md create mode 100644 docs/cache-handler-docs/src/pages/troubleshooting.mdx diff --git a/.changeset/sour-apes-allow.md b/.changeset/sour-apes-allow.md new file mode 100644 index 00000000..6d6de425 --- /dev/null +++ b/.changeset/sour-apes-allow.md @@ -0,0 +1,6 @@ +--- +'cache-handler-docs': patch +'@neshca/cache-handler': patch +--- + +Added the `name` static field to the `IncrementalCache` class and updated the documentation to reflect this in troubleshooting section. diff --git a/apps/cache-testing/cache-handler-redis-stack.js b/apps/cache-testing/cache-handler-redis-stack.js index 98d4e962..76bf4f76 100644 --- a/apps/cache-testing/cache-handler-redis-stack.js +++ b/apps/cache-testing/cache-handler-redis-stack.js @@ -19,7 +19,7 @@ const client = createClient({ }); client.on('error', (error) => { - console.error('Redis error:', error.message); + console.error('Redis error:', error); }); IncrementalCache.onCreation(async () => { diff --git a/apps/cache-testing/cache-handler-redis-strings.js b/apps/cache-testing/cache-handler-redis-strings.js index 96db483c..b1e6bc9f 100644 --- a/apps/cache-testing/cache-handler-redis-strings.js +++ b/apps/cache-testing/cache-handler-redis-strings.js @@ -19,7 +19,7 @@ const client = createClient({ }); client.on('error', (error) => { - console.error('Redis error:', error.message); + console.error('Redis error:', error); }); IncrementalCache.onCreation(async () => { diff --git a/docs/cache-handler-docs/src/pages/_meta.json b/docs/cache-handler-docs/src/pages/_meta.json index 6be8195f..c2e5f6bd 100644 --- a/docs/cache-handler-docs/src/pages/_meta.json +++ b/docs/cache-handler-docs/src/pages/_meta.json @@ -10,6 +10,11 @@ "title": "@neshca/cache-handler API" }, "configuration": "Configuration", + "-- Troubleshooting": { + "type": "separator", + "title": "Troubleshooting" + }, + "troubleshooting": "", "-- Examples": { "type": "separator", "title": "Examples" diff --git a/docs/cache-handler-docs/src/pages/installation.mdx b/docs/cache-handler-docs/src/pages/installation.mdx index b9570fa1..1c35d482 100644 --- a/docs/cache-handler-docs/src/pages/installation.mdx +++ b/docs/cache-handler-docs/src/pages/installation.mdx @@ -1,3 +1,5 @@ +import { Callout } from 'nextra/components'; + ## Getting Started with `@neshca/cache-handler` This section guides you through the initial setup and basic usage of `@neshca/cache-handler`, helping you integrate advanced caching solutions into your Next.js applications seamlessly. @@ -38,35 +40,34 @@ pnpm create next-app --example cache-handler-redis cache-handler-redis-app npm install -D redis ``` -### Basic Configuration +### Basic Custom Configuration 1. **Create a Cache Handler File**: In your project root, create a file named `cache-handler.js` for your cache configuration. 2. **Configure the Cache Handler**: - Below is a basic setup example. The `console.log` statements help track cache operations: + Below is a basic setup example: ```js filename="cache-handler.js" copy - const { IncrementalCache } = require("@neshca/cache-handler"); + const { IncrementalCache } = require('@neshca/cache-handler'); IncrementalCache.onCreation(async () => { - const cacheStore = a new Map(); - - const cache = { - async get(key) { - console.log("cache.get", key); // For demonstration: logs when retrieving from cache - return cacheStore.get(key); - }, - async set(key, value) { - console.log("cache.set", key); // For demonstration: logs when adding to cache - cacheStore.set(key, value); - }, - }; - - return { - cache, - useFileSystem: true, - }; + // Don't do this in production. This is just an example. + const cacheStore = new Map(); + + const cache = { + async get(key) { + return cacheStore.get(key); + }, + async set(key, value) { + cacheStore.set(key, value); + }, + }; + + return { + cache, + useFileSystem: true, + }; }); module.exports = IncrementalCache; @@ -79,33 +80,28 @@ pnpm create next-app --example cache-handler-redis cache-handler-redis-app const nextConfig = { experimental: { incrementalCacheHandlerPath: - process.env.NODE_ENV === 'development' ? undefined : require.resolve('./cache-handler'), + process.env.NODE_ENV === 'production' ? require.resolve('./cache-handler') : undefined, }, }; module.exports = nextConfig; ``` + + Do not import @neshca/cache-handler to your components or pages. It is only meant to be used in{' '} + cache-handler.js files. + + ### Running Your Application -1. **Start Your Next.js Application**: - Run your app as usual. `@neshca/cache-handler` will now manage your application's caching: +**Start Your Next.js Application**: + Run your app as usual. `@neshca/cache-handler` will now manage your application's caching: ```sh npm2yarn copy npm run build npm run start ``` -2. **Verification**: - In your terminal, you should observe logs like: - - ```sh - cache.get ... - cache.set ... - ``` - - This indicates that the cache handler is actively managing your cache operations. - ### Next Steps With the setup complete, explore `@neshca/cache-handler`'s advanced features: @@ -113,3 +109,4 @@ With the setup complete, explore `@neshca/cache-handler`'s advanced features: - Check out the [Redis Integration Example](/redis-stack); - Learn [how to use the API](/configuration/on-creation) and craft your own cache handler configuration; - Learn [how to use TTL](/configuration/ttl) for cache eviction. +- See how to [debug and troubleshoot](/troubleshooting) your cache handler configuration. diff --git a/docs/cache-handler-docs/src/pages/redis-stack-custom.mdx b/docs/cache-handler-docs/src/pages/redis-stack-custom.mdx index 69b8b439..ac6ab2df 100644 --- a/docs/cache-handler-docs/src/pages/redis-stack-custom.mdx +++ b/docs/cache-handler-docs/src/pages/redis-stack-custom.mdx @@ -20,7 +20,7 @@ const client = createClient({ }); client.on('error', (error) => { - console.error('Redis error:', error.message); + console.error('Redis error:', error); }); IncrementalCache.onCreation(async () => { diff --git a/docs/cache-handler-docs/src/pages/redis-stack.mdx b/docs/cache-handler-docs/src/pages/redis-stack.mdx index bb232362..ca8356b7 100644 --- a/docs/cache-handler-docs/src/pages/redis-stack.mdx +++ b/docs/cache-handler-docs/src/pages/redis-stack.mdx @@ -20,7 +20,7 @@ const client = createClient({ }); client.on('error', (error) => { - console.error('Redis error:', error.message); + console.error('Redis error:', error); }); IncrementalCache.onCreation(async () => { diff --git a/docs/cache-handler-docs/src/pages/redis-strings-custom.mdx b/docs/cache-handler-docs/src/pages/redis-strings-custom.mdx index 7f3230f5..ccef8e34 100644 --- a/docs/cache-handler-docs/src/pages/redis-strings-custom.mdx +++ b/docs/cache-handler-docs/src/pages/redis-strings-custom.mdx @@ -27,7 +27,7 @@ const client = createClient({ }); client.on('error', (error) => { - console.error('Redis error:', error.message); + console.error('Redis error:', error); }); IncrementalCache.onCreation(async () => { diff --git a/docs/cache-handler-docs/src/pages/redis-strings.mdx b/docs/cache-handler-docs/src/pages/redis-strings.mdx index 1a66c9cd..b9f4f3a8 100644 --- a/docs/cache-handler-docs/src/pages/redis-strings.mdx +++ b/docs/cache-handler-docs/src/pages/redis-strings.mdx @@ -20,7 +20,7 @@ const client = createClient({ }); client.on('error', (error) => { - console.error('Redis error:', error.message); + console.error('Redis error:', error); }); IncrementalCache.onCreation(async () => { diff --git a/docs/cache-handler-docs/src/pages/troubleshooting.mdx b/docs/cache-handler-docs/src/pages/troubleshooting.mdx new file mode 100644 index 00000000..7c4d3d04 --- /dev/null +++ b/docs/cache-handler-docs/src/pages/troubleshooting.mdx @@ -0,0 +1,75 @@ +### Verifying that the Cache Handler works + +You can verify if the cache handler is active by using either of the following methods: + +#### Method 1: Console Logging + +Add `console.log` statements to your cache handler: + +```js filename="cache-handler.js" +/* ... */ +const cache = { + async get(key) { + console.log('cache.get', key); + return cacheStore.get(key); + }, + async set(key, value) { + console.log('cache.set', key, value); + cacheStore.set(key, value); + }, +}; +/* ... */ +``` + +Execute your application as usual: + +```sh npm2yarn copy +npm run build +npm run start +``` + +The console should display output the application starts and any page is opened in your browser: + +``` +cache.get ... +cache.set ... +``` + +#### Method 2: Debug Mode + +Activate debug mode by setting the `NEXT_PRIVATE_DEBUG_CACHE` environment variable: + +Locate or create a `.env.local` file in your project's root directory and add the following: + +```plaintext filename=".env.local" copy +NEXT_PRIVATE_DEBUG_CACHE=1 +``` + +Build and execute your application: + +```sh npm2yarn copy +npm run build +npm run start +``` + +Verbose output should appear in your console when the application starts and any page is opened in your browser: + +``` +using custom cache handler @neshca/cache-handler with 1 Handlers and file system caching +using custom cache handler @neshca/cache-handler with 1 Handlers and file system caching +``` + +Note: During the build stage, it's normal to see `@neshca/cache-handler is not configured yet` several times. + +#### Troubleshooting + +If the cache handler is not active: + +1. Verify that the cache handler has been correctly installed, imported, and configured. Refer to the [Installation and the First Steps](/installation) section for guidance. +2. Ensure that the `NEXT_PRIVATE_DEBUG_CACHE` environment variable is set. To verify, add the following to your `next.config.js` file: + + ```js filename="next.config.js" copy + console.log('NEXT_PRIVATE_DEBUG_CACHE', process.env.NEXT_PRIVATE_DEBUG_CACHE); + ``` + + When you build or run your application, `NEXT_PRIVATE_DEBUG_CACHE 1` should appear in your console. diff --git a/packages/cache-handler/src/cache-handler.ts b/packages/cache-handler/src/cache-handler.ts index 58eeb34d..6c00985a 100644 --- a/packages/cache-handler/src/cache-handler.ts +++ b/packages/cache-handler/src/cache-handler.ts @@ -162,6 +162,48 @@ export type CreateCache = (options: T) => Promise | CacheConfig; export type OnCreationHook = (cacheCreationContext: CacheCreationContext) => Promise | CacheConfig; export class IncrementalCache implements CacheHandler { + /** + * Provides a descriptive name for the IncrementalCache class. + * + * The name includes the number of handlers and whether file system caching is used. + * If the cache handler is not configured yet, it will return a string indicating so. + * + * This property is primarily intended for debugging purposes + * and its visibility is controlled by the `NEXT_PRIVATE_DEBUG_CACHE` environment variable. + * + * @returns A string describing the cache handler configuration. + * + * @example + * ```js + * // cache-handler.js + * IncrementalCache.onCreation(async () => { + * const = redisCache = await createRedisCache({ + * client, + * }); + * + * const localCache = createLruCache(); + * + * return { + * cache: [redisCache, localCache], + * useFileSystem: true, + * }; + * }); + * + * // after the Next.js called the onCreation hook + * console.log(IncrementalCache.name); + * // Output: "@neshca/cache-handler with 2 Handlers and file system caching" + * ``` + */ + public static get name(): string { + if (this.#cacheListLength === undefined) { + return '@neshca/cache-handler is not configured yet'; + } + + return `@neshca/cache-handler with ${this.#cacheListLength} Handler${ + this.#cacheListLength > 1 ? 's' : '' + } and ${this.#useFileSystem ? 'file system' : 'no file system'} caching`; + } + static #resolveCreationPromise: () => void; static #rejectCreationPromise: (error: unknown) => void; @@ -188,6 +230,8 @@ export class IncrementalCache implements CacheHandler { static #cache: Cache; + static #cacheListLength: number; + static #tagsManifestPath: string; static #revalidatedTags: RevalidatedTags = {}; @@ -259,11 +303,15 @@ export class IncrementalCache implements CacheHandler { if (!Array.isArray(cache)) { this.#cache = cache; + this.#cacheListLength = 1; + return; } const cacheList = cache.filter((cacheItem): cacheItem is Cache => Boolean(cacheItem)); + this.#cacheListLength = cacheList.length; + // if no cache is provided and we don't use the file system if (cacheList.length === 0 && !this.#useFileSystem) { throw new Error( From 6e145d856b8526764a7a1fdc4d4d90ef6b800e15 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 12 Dec 2023 14:16:32 +0300 Subject: [PATCH 021/458] Version Packages (#216) Co-authored-by: github-actions[bot] --- .changeset/sour-apes-allow.md | 6 ------ docs/cache-handler-docs/CHANGELOG.md | 6 ++++++ docs/cache-handler-docs/package.json | 2 +- packages/cache-handler/CHANGELOG.md | 6 ++++++ packages/cache-handler/package.json | 2 +- 5 files changed, 14 insertions(+), 8 deletions(-) delete mode 100644 .changeset/sour-apes-allow.md diff --git a/.changeset/sour-apes-allow.md b/.changeset/sour-apes-allow.md deleted file mode 100644 index 6d6de425..00000000 --- a/.changeset/sour-apes-allow.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -'cache-handler-docs': patch -'@neshca/cache-handler': patch ---- - -Added the `name` static field to the `IncrementalCache` class and updated the documentation to reflect this in troubleshooting section. diff --git a/docs/cache-handler-docs/CHANGELOG.md b/docs/cache-handler-docs/CHANGELOG.md index 42295330..bffa5c1e 100644 --- a/docs/cache-handler-docs/CHANGELOG.md +++ b/docs/cache-handler-docs/CHANGELOG.md @@ -1,5 +1,11 @@ # cache-handler-docs +## 0.6.1 + +### Patch Changes + +- d9c5d09: Added the `name` static field to the `IncrementalCache` class and updated the documentation to reflect this in troubleshooting section. + ## 0.6.0 ### Minor Changes diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 7806b978..99db8068 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -1,6 +1,6 @@ { "name": "cache-handler-docs", - "version": "0.6.0", + "version": "0.6.1", "private": true, "scripts": { "build:docs": "next build", diff --git a/packages/cache-handler/CHANGELOG.md b/packages/cache-handler/CHANGELOG.md index 8337ed93..b476679b 100644 --- a/packages/cache-handler/CHANGELOG.md +++ b/packages/cache-handler/CHANGELOG.md @@ -1,5 +1,11 @@ # @neshca/cache-handler +## 0.6.1 + +### Patch Changes + +- d9c5d09: Added the `name` static field to the `IncrementalCache` class and updated the documentation to reflect this in troubleshooting section. + ## 0.6.0 ### Minor Changes diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 773eaa07..f638310d 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -1,6 +1,6 @@ { "name": "@neshca/cache-handler", - "version": "0.6.0", + "version": "0.6.1", "description": "Flexible API to replace the default Next.js cache, accommodating custom cache solutions for multi-instance deployments.", "keywords": [ "cache", From 01be15bdfb231d32cb0c3a9df9edf148b2779285 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 12 Dec 2023 15:53:28 +0300 Subject: [PATCH 022/458] Bump prettier from 3.1.0 to 3.1.1 (#213) Bumps [prettier](https://github.com/prettier/prettier) from 3.1.0 to 3.1.1. - [Release notes](https://github.com/prettier/prettier/releases) - [Changelog](https://github.com/prettier/prettier/blob/main/CHANGELOG.md) - [Commits](https://github.com/prettier/prettier/compare/3.1.0...3.1.1) --- updated-dependencies: - dependency-name: prettier dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 14 +++++++------- package.json | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/package-lock.json b/package-lock.json index 796c55b5..ffffa75d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -24,7 +24,7 @@ "diffscribe": "*", "eslint": "8.55.0", "glob": "10.3.10", - "prettier": "3.1.0", + "prettier": "3.1.1", "turbo": "1.10.16" }, "engines": { @@ -115,7 +115,7 @@ } }, "docs/cache-handler-docs": { - "version": "0.5.4", + "version": "0.6.1", "dependencies": { "next": "14.0.4", "nextra": "2.13.2", @@ -12581,9 +12581,9 @@ } }, "node_modules/prettier": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.1.0.tgz", - "integrity": "sha512-TQLvXjq5IAibjh8EpBIkNKxO749UEWABoiIZehEPiY4GNpVdhaFKqSTu+QrlU6D2dPAfubRmtJTi4K4YkQ5eXw==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.1.1.tgz", + "integrity": "sha512-22UbSzg8luF4UuZtzgiUOfcGM8s4tjBv6dJRT7j275NXsy2jb4aJa4NNveul5x4eqlF1wuhuR2RElK71RvmVaw==", "dev": true, "bin": { "prettier": "bin/prettier.cjs" @@ -16821,7 +16821,7 @@ }, "packages/cache-handler": { "name": "@neshca/cache-handler", - "version": "0.5.4", + "version": "0.6.1", "license": "MIT", "dependencies": { "@neshca/json-replacer-reviver": "*", @@ -16904,7 +16904,7 @@ }, "packages/server": { "name": "@neshca/server", - "version": "0.5.1", + "version": "0.6.0", "license": "MIT", "dependencies": { "fastify": "4.24.3", diff --git a/package.json b/package.json index d4f18ec4..22a8d808 100644 --- a/package.json +++ b/package.json @@ -38,7 +38,7 @@ "diffscribe": "*", "eslint": "8.55.0", "glob": "10.3.10", - "prettier": "3.1.0", + "prettier": "3.1.1", "turbo": "1.10.16" }, "engines": { From 6c8946107641cf3953411cc8b1b0d85aedd6749a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 12 Dec 2023 13:00:13 +0000 Subject: [PATCH 023/458] Bump the definitely-typed group with 1 update (#212) --- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- package-lock.json | 10 +++++----- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 1e4dc055..657d30ce 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -26,7 +26,7 @@ "@next/eslint-plugin-next": "14.0.5-canary.0", "@playwright/test": "1.40.1", "@types/node": "20.10.4", - "@types/react": "18.2.42", + "@types/react": "18.2.43", "@types/react-dom": "18.2.17", "dotenv-cli": "7.3.0", "eslint-config-neshca": "*", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 99db8068..c679f8a9 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -20,7 +20,7 @@ "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.0.4", "@types/node": "20.10.4", - "@types/react": "18.2.42", + "@types/react": "18.2.43", "@types/react-dom": "18.2.17", "eslint-config-neshca": "*", "typescript": "5.3.3" diff --git a/package-lock.json b/package-lock.json index ffffa75d..36235f7e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -47,7 +47,7 @@ "@next/eslint-plugin-next": "14.0.5-canary.0", "@playwright/test": "1.40.1", "@types/node": "20.10.4", - "@types/react": "18.2.42", + "@types/react": "18.2.43", "@types/react-dom": "18.2.17", "dotenv-cli": "7.3.0", "eslint-config-neshca": "*", @@ -127,7 +127,7 @@ "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.0.4", "@types/node": "20.10.4", - "@types/react": "18.2.42", + "@types/react": "18.2.43", "@types/react-dom": "18.2.17", "eslint-config-neshca": "*", "typescript": "5.3.3" @@ -3154,9 +3154,9 @@ "integrity": "sha512-ga8y9v9uyeiLdpKddhxYQkxNDrfvuPrlFb0N1qnZZByvcElJaXthF1UhvCh9TLWJBEHeNtdnbysW7Y6Uq8CVng==" }, "node_modules/@types/react": { - "version": "18.2.42", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.42.tgz", - "integrity": "sha512-c1zEr96MjakLYus/wPnuWDo1/zErfdU9rNsIGmE+NV71nx88FG9Ttgo5dqorXTu/LImX2f63WBP986gJkMPNbA==", + "version": "18.2.43", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.43.tgz", + "integrity": "sha512-nvOV01ZdBdd/KW6FahSbcNplt2jCJfyWdTos61RYHV+FVv5L/g9AOX1bmbVcWcLFL8+KHQfh1zVIQrud6ihyQA==", "dependencies": { "@types/prop-types": "*", "@types/scheduler": "*", From e500cb40b5c034df1e39512ec8f2a1852f07c144 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 14 Dec 2023 00:03:48 +0300 Subject: [PATCH 024/458] Bump the pino group with 1 update (#220) Bumps the pino group with 1 update: [pino](https://github.com/pinojs/pino). - [Release notes](https://github.com/pinojs/pino/releases) - [Commits](https://github.com/pinojs/pino/compare/v8.16.2...v8.17.0) --- updated-dependencies: - dependency-name: pino dependency-type: direct:production update-type: version-update:semver-minor dependency-group: pino ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- internal/backend/package.json | 2 +- package-lock.json | 10 +++++----- packages/server/package.json | 2 +- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/internal/backend/package.json b/internal/backend/package.json index 4da66bc8..8f8541cc 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -12,7 +12,7 @@ }, "dependencies": { "fastify": "4.24.3", - "pino": "8.16.2" + "pino": "8.17.0" }, "devDependencies": { "@neshca/tsconfig": "*", diff --git a/package-lock.json b/package-lock.json index 36235f7e..76bd30b4 100644 --- a/package-lock.json +++ b/package-lock.json @@ -257,7 +257,7 @@ "license": "MIT", "dependencies": { "fastify": "4.24.3", - "pino": "8.16.2" + "pino": "8.17.0" }, "devDependencies": { "@neshca/tsconfig": "*", @@ -12092,9 +12092,9 @@ } }, "node_modules/pino": { - "version": "8.16.2", - "resolved": "https://registry.npmjs.org/pino/-/pino-8.16.2.tgz", - "integrity": "sha512-2advCDGVEvkKu9TTVSa/kWW7Z3htI/sBKEZpqiHk6ive0i/7f5b1rsU8jn0aimxqfnSz5bj/nOYkwhBUn5xxvg==", + "version": "8.17.0", + "resolved": "https://registry.npmjs.org/pino/-/pino-8.17.0.tgz", + "integrity": "sha512-ey+Mku+PVPhvxglLXMg1l1zQMwSHuNrKC3MD40EDZbkckJmmuY7DYZLIOwwjZ8ix/Nvhe9dZt5H99cgkot9bAw==", "dependencies": { "atomic-sleep": "^1.0.0", "fast-redact": "^3.1.1", @@ -16908,7 +16908,7 @@ "license": "MIT", "dependencies": { "fastify": "4.24.3", - "pino": "8.16.2" + "pino": "8.17.0" }, "bin": { "next-cache-server": "dist/server.js" diff --git a/packages/server/package.json b/packages/server/package.json index 7701e7a7..b0b6f0d3 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -27,7 +27,7 @@ }, "dependencies": { "fastify": "4.24.3", - "pino": "8.16.2" + "pino": "8.17.0" }, "devDependencies": { "@neshca/next-common": "*", From 83d52d39b821ecfbd93db697e1fe34f9d98c4bdb Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 14 Dec 2023 01:49:12 +0300 Subject: [PATCH 025/458] Bump fastify from 4.24.3 to 4.25.0 (#219) Bumps [fastify](https://github.com/fastify/fastify) from 4.24.3 to 4.25.0. - [Release notes](https://github.com/fastify/fastify/releases) - [Commits](https://github.com/fastify/fastify/compare/v4.24.3...v4.25.0) --- updated-dependencies: - dependency-name: fastify dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- internal/backend/package.json | 2 +- package-lock.json | 21 +++++++++++++-------- packages/server/package.json | 2 +- 4 files changed, 16 insertions(+), 11 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 657d30ce..175142ce 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -30,7 +30,7 @@ "@types/react-dom": "18.2.17", "dotenv-cli": "7.3.0", "eslint-config-neshca": "*", - "fastify": "4.24.3", + "fastify": "4.25.0", "pm2": "5.3.0", "redis": "4.6.11", "rimraf": "5.0.5", diff --git a/internal/backend/package.json b/internal/backend/package.json index 8f8541cc..70d91ae0 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -11,7 +11,7 @@ "start": "node --import tsx/esm ./src/backend.ts" }, "dependencies": { - "fastify": "4.24.3", + "fastify": "4.25.0", "pino": "8.17.0" }, "devDependencies": { diff --git a/package-lock.json b/package-lock.json index 76bd30b4..84cc95fa 100644 --- a/package-lock.json +++ b/package-lock.json @@ -51,7 +51,7 @@ "@types/react-dom": "18.2.17", "dotenv-cli": "7.3.0", "eslint-config-neshca": "*", - "fastify": "4.24.3", + "fastify": "4.25.0", "pm2": "5.3.0", "redis": "4.6.11", "rimraf": "5.0.5", @@ -256,7 +256,7 @@ "version": "0.0.0", "license": "MIT", "dependencies": { - "fastify": "4.24.3", + "fastify": "4.25.0", "pino": "8.17.0" }, "devDependencies": { @@ -7307,9 +7307,9 @@ "integrity": "sha512-eel5UKGn369gGEWOqBShmFJWfq/xSJvsgDzgLYC845GneayWvXBf0lJCBn5qTABfewy1ZDPoaR5OZCP+kssfuw==" }, "node_modules/fastify": { - "version": "4.24.3", - "resolved": "https://registry.npmjs.org/fastify/-/fastify-4.24.3.tgz", - "integrity": "sha512-6HHJ+R2x2LS3y1PqxnwEIjOTZxFl+8h4kSC/TuDPXtA+v2JnV9yEtOsNSKK1RMD7sIR2y1ZsA4BEFaid/cK5pg==", + "version": "4.25.0", + "resolved": "https://registry.npmjs.org/fastify/-/fastify-4.25.0.tgz", + "integrity": "sha512-2XANZZDadl/PccnVbmrIC8BmUtb16MO5Hyfnqv1cZIslvf7GYTVwlPuVxLKL23NNxWRc5BikY8HyhWj+NJvokA==", "dependencies": { "@fastify/ajv-compiler": "^3.5.0", "@fastify/error": "^3.4.0", @@ -7320,8 +7320,8 @@ "fast-json-stringify": "^5.8.0", "find-my-way": "^7.7.0", "light-my-request": "^5.11.0", - "pino": "^8.16.0", - "process-warning": "^2.2.0", + "pino": "^8.17.0", + "process-warning": "^3.0.0", "proxy-addr": "^2.0.7", "rfdc": "^1.3.0", "secure-json-parse": "^2.7.0", @@ -7329,6 +7329,11 @@ "toad-cache": "^3.3.0" } }, + "node_modules/fastify/node_modules/process-warning": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/process-warning/-/process-warning-3.0.0.tgz", + "integrity": "sha512-mqn0kFRl0EoqhnL0GQ0veqFHyIN1yig9RHh/InzORTUiZHFRAur+aMtRkELNwGs9aNwKS6tg/An4NYBPGwvtzQ==" + }, "node_modules/fastq": { "version": "1.15.0", "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", @@ -16907,7 +16912,7 @@ "version": "0.6.0", "license": "MIT", "dependencies": { - "fastify": "4.24.3", + "fastify": "4.25.0", "pino": "8.17.0" }, "bin": { diff --git a/packages/server/package.json b/packages/server/package.json index b0b6f0d3..d3cd2e2c 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -26,7 +26,7 @@ "start": "node --import tsx/esm ./src/server.ts" }, "dependencies": { - "fastify": "4.24.3", + "fastify": "4.25.0", "pino": "8.17.0" }, "devDependencies": { From 087f3c396d7ff99a435b036202c670db9bb1caaf Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 13 Dec 2023 22:56:32 +0000 Subject: [PATCH 026/458] Bump the definitely-typed group with 1 update (#218) --- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- package-lock.json | 10 +++++----- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 175142ce..d604c144 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -26,7 +26,7 @@ "@next/eslint-plugin-next": "14.0.5-canary.0", "@playwright/test": "1.40.1", "@types/node": "20.10.4", - "@types/react": "18.2.43", + "@types/react": "18.2.45", "@types/react-dom": "18.2.17", "dotenv-cli": "7.3.0", "eslint-config-neshca": "*", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index c679f8a9..13478d33 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -20,7 +20,7 @@ "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.0.4", "@types/node": "20.10.4", - "@types/react": "18.2.43", + "@types/react": "18.2.45", "@types/react-dom": "18.2.17", "eslint-config-neshca": "*", "typescript": "5.3.3" diff --git a/package-lock.json b/package-lock.json index 84cc95fa..ed7c2292 100644 --- a/package-lock.json +++ b/package-lock.json @@ -47,7 +47,7 @@ "@next/eslint-plugin-next": "14.0.5-canary.0", "@playwright/test": "1.40.1", "@types/node": "20.10.4", - "@types/react": "18.2.43", + "@types/react": "18.2.45", "@types/react-dom": "18.2.17", "dotenv-cli": "7.3.0", "eslint-config-neshca": "*", @@ -127,7 +127,7 @@ "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.0.4", "@types/node": "20.10.4", - "@types/react": "18.2.43", + "@types/react": "18.2.45", "@types/react-dom": "18.2.17", "eslint-config-neshca": "*", "typescript": "5.3.3" @@ -3154,9 +3154,9 @@ "integrity": "sha512-ga8y9v9uyeiLdpKddhxYQkxNDrfvuPrlFb0N1qnZZByvcElJaXthF1UhvCh9TLWJBEHeNtdnbysW7Y6Uq8CVng==" }, "node_modules/@types/react": { - "version": "18.2.43", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.43.tgz", - "integrity": "sha512-nvOV01ZdBdd/KW6FahSbcNplt2jCJfyWdTos61RYHV+FVv5L/g9AOX1bmbVcWcLFL8+KHQfh1zVIQrud6ihyQA==", + "version": "18.2.45", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.45.tgz", + "integrity": "sha512-TtAxCNrlrBp8GoeEp1npd5g+d/OejJHFxS3OWmrPBMFaVQMSN0OFySozJio5BHxTuTeug00AVXVAjfDSfk+lUg==", "dependencies": { "@types/prop-types": "*", "@types/scheduler": "*", From b2ce55dd5d5858f59b0c32d3c9d8b14c64781360 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 15 Dec 2023 13:21:46 +0300 Subject: [PATCH 027/458] Bump the pino group with 2 updates (#221) Bumps the pino group with 2 updates: [pino](https://github.com/pinojs/pino) and [pino-pretty](https://github.com/pinojs/pino-pretty). Updates `pino` from 8.17.0 to 8.17.1 - [Release notes](https://github.com/pinojs/pino/releases) - [Commits](https://github.com/pinojs/pino/compare/v8.17.0...v8.17.1) Updates `pino-pretty` from 10.2.3 to 10.3.0 - [Release notes](https://github.com/pinojs/pino-pretty/releases) - [Commits](https://github.com/pinojs/pino-pretty/compare/v10.2.3...v10.3.0) --- updated-dependencies: - dependency-name: pino dependency-type: direct:production update-type: version-update:semver-patch dependency-group: pino - dependency-name: pino-pretty dependency-type: direct:development update-type: version-update:semver-minor dependency-group: pino ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- internal/backend/package.json | 4 +- package-lock.json | 92 ++++++----------------------------- packages/server/package.json | 2 +- 3 files changed, 17 insertions(+), 81 deletions(-) diff --git a/internal/backend/package.json b/internal/backend/package.json index 70d91ae0..d5adf0d1 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -12,13 +12,13 @@ }, "dependencies": { "fastify": "4.25.0", - "pino": "8.17.0" + "pino": "8.17.1" }, "devDependencies": { "@neshca/tsconfig": "*", "@types/node": "20.10.4", "eslint-config-neshca": "*", - "pino-pretty": "10.2.3", + "pino-pretty": "10.3.0", "rimraf": "5.0.5", "tsx": "4.6.2", "typescript": "5.3.3" diff --git a/package-lock.json b/package-lock.json index ed7c2292..cd81127b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -257,13 +257,13 @@ "license": "MIT", "dependencies": { "fastify": "4.25.0", - "pino": "8.17.0" + "pino": "8.17.1" }, "devDependencies": { "@neshca/tsconfig": "*", "@types/node": "20.10.4", "eslint-config-neshca": "*", - "pino-pretty": "10.2.3", + "pino-pretty": "10.3.0", "rimraf": "5.0.5", "tsx": "4.6.2", "typescript": "5.3.3" @@ -8442,68 +8442,10 @@ "integrity": "sha512-2bsegYkkHO+h/9MGbn6KWcE45cHZgPANo5LXF7EvWdT0yT2EguSVO1nDgU5c8+ZOPwp2vMNa7YFsJhVcDR9Sdg==" }, "node_modules/help-me": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/help-me/-/help-me-4.2.0.tgz", - "integrity": "sha512-TAOnTB8Tz5Dw8penUuzHVrKNKlCIbwwbHnXraNJxPwf8LRtE2HlM84RYuezMFcwOJmoYOCWVDyJ8TQGxn9PgxA==", - "dev": true, - "dependencies": { - "glob": "^8.0.0", - "readable-stream": "^3.6.0" - } - }, - "node_modules/help-me/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/help-me/node_modules/glob": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz", - "integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==", - "dev": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^5.0.1", - "once": "^1.3.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/help-me/node_modules/minimatch": { - "version": "5.1.6", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", - "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", - "dev": true, - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/help-me/node_modules/readable-stream": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", - "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", - "dev": true, - "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - }, - "engines": { - "node": ">= 6" - } + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/help-me/-/help-me-5.0.0.tgz", + "integrity": "sha512-7xgomUX6ADmcYzFik0HzAxh/73YlKR9bmFzf51CZwR+b6YtzU2m0u49hQCqV6SvlqIqsaxovfwdvbnsw3b/zpg==", + "dev": true }, "node_modules/hosted-git-info": { "version": "2.8.9", @@ -12097,9 +12039,9 @@ } }, "node_modules/pino": { - "version": "8.17.0", - "resolved": "https://registry.npmjs.org/pino/-/pino-8.17.0.tgz", - "integrity": "sha512-ey+Mku+PVPhvxglLXMg1l1zQMwSHuNrKC3MD40EDZbkckJmmuY7DYZLIOwwjZ8ix/Nvhe9dZt5H99cgkot9bAw==", + "version": "8.17.1", + "resolved": "https://registry.npmjs.org/pino/-/pino-8.17.1.tgz", + "integrity": "sha512-YoN7/NJgnsJ+fkADZqjhRt96iepWBndQHeClmSBH0sQWCb8zGD74t00SK4eOtKFi/f8TUmQnfmgglEhd2kI1RQ==", "dependencies": { "atomic-sleep": "^1.0.0", "fast-redact": "^3.1.1", @@ -12127,16 +12069,16 @@ } }, "node_modules/pino-pretty": { - "version": "10.2.3", - "resolved": "https://registry.npmjs.org/pino-pretty/-/pino-pretty-10.2.3.tgz", - "integrity": "sha512-4jfIUc8TC1GPUfDyMSlW1STeORqkoxec71yhxIpLDQapUu8WOuoz2TTCoidrIssyz78LZC69whBMPIKCMbi3cw==", + "version": "10.3.0", + "resolved": "https://registry.npmjs.org/pino-pretty/-/pino-pretty-10.3.0.tgz", + "integrity": "sha512-JthvQW289q3454mhM3/38wFYGWPiBMR28T3CpDNABzoTQOje9UKS7XCJQSnjWF9LQGQkGd8D7h0oq+qwiM3jFA==", "dev": true, "dependencies": { "colorette": "^2.0.7", "dateformat": "^4.6.3", "fast-copy": "^3.0.0", "fast-safe-stringify": "^2.1.1", - "help-me": "^4.0.1", + "help-me": "^5.0.0", "joycon": "^3.1.1", "minimist": "^1.2.6", "on-exit-leak-free": "^2.1.0", @@ -16115,12 +16057,6 @@ "punycode": "^2.1.0" } }, - "node_modules/util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", - "dev": true - }, "node_modules/uuid": { "version": "8.3.2", "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", @@ -16913,7 +16849,7 @@ "license": "MIT", "dependencies": { "fastify": "4.25.0", - "pino": "8.17.0" + "pino": "8.17.1" }, "bin": { "next-cache-server": "dist/server.js" diff --git a/packages/server/package.json b/packages/server/package.json index d3cd2e2c..2950caed 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -27,7 +27,7 @@ }, "dependencies": { "fastify": "4.25.0", - "pino": "8.17.0" + "pino": "8.17.1" }, "devDependencies": { "@neshca/next-common": "*", From da1d49051eb92f8aa2dfaae4b2d9e68e82696374 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 18 Dec 2023 14:48:13 +0300 Subject: [PATCH 028/458] Bump fastify from 4.25.0 to 4.25.1 (#222) Bumps [fastify](https://github.com/fastify/fastify) from 4.25.0 to 4.25.1. - [Release notes](https://github.com/fastify/fastify/releases) - [Commits](https://github.com/fastify/fastify/compare/v4.25.0...v4.25.1) --- updated-dependencies: - dependency-name: fastify dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- internal/backend/package.json | 2 +- package-lock.json | 12 ++++++------ packages/server/package.json | 2 +- 4 files changed, 9 insertions(+), 9 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index d604c144..4b8d691c 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -30,7 +30,7 @@ "@types/react-dom": "18.2.17", "dotenv-cli": "7.3.0", "eslint-config-neshca": "*", - "fastify": "4.25.0", + "fastify": "4.25.1", "pm2": "5.3.0", "redis": "4.6.11", "rimraf": "5.0.5", diff --git a/internal/backend/package.json b/internal/backend/package.json index d5adf0d1..ef87c11d 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -11,7 +11,7 @@ "start": "node --import tsx/esm ./src/backend.ts" }, "dependencies": { - "fastify": "4.25.0", + "fastify": "4.25.1", "pino": "8.17.1" }, "devDependencies": { diff --git a/package-lock.json b/package-lock.json index cd81127b..67f86941 100644 --- a/package-lock.json +++ b/package-lock.json @@ -51,7 +51,7 @@ "@types/react-dom": "18.2.17", "dotenv-cli": "7.3.0", "eslint-config-neshca": "*", - "fastify": "4.25.0", + "fastify": "4.25.1", "pm2": "5.3.0", "redis": "4.6.11", "rimraf": "5.0.5", @@ -256,7 +256,7 @@ "version": "0.0.0", "license": "MIT", "dependencies": { - "fastify": "4.25.0", + "fastify": "4.25.1", "pino": "8.17.1" }, "devDependencies": { @@ -7307,9 +7307,9 @@ "integrity": "sha512-eel5UKGn369gGEWOqBShmFJWfq/xSJvsgDzgLYC845GneayWvXBf0lJCBn5qTABfewy1ZDPoaR5OZCP+kssfuw==" }, "node_modules/fastify": { - "version": "4.25.0", - "resolved": "https://registry.npmjs.org/fastify/-/fastify-4.25.0.tgz", - "integrity": "sha512-2XANZZDadl/PccnVbmrIC8BmUtb16MO5Hyfnqv1cZIslvf7GYTVwlPuVxLKL23NNxWRc5BikY8HyhWj+NJvokA==", + "version": "4.25.1", + "resolved": "https://registry.npmjs.org/fastify/-/fastify-4.25.1.tgz", + "integrity": "sha512-D8d0rv61TwqoAS7lom2tvIlgVMlx88lLsiwXyWNjA7CU/LC/mx/Gp2WAlC0S/ABq19U+y/aRvYFG5xLUu2aMrg==", "dependencies": { "@fastify/ajv-compiler": "^3.5.0", "@fastify/error": "^3.4.0", @@ -16848,7 +16848,7 @@ "version": "0.6.0", "license": "MIT", "dependencies": { - "fastify": "4.25.0", + "fastify": "4.25.1", "pino": "8.17.1" }, "bin": { diff --git a/packages/server/package.json b/packages/server/package.json index 2950caed..1c1176cf 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -26,7 +26,7 @@ "start": "node --import tsx/esm ./src/server.ts" }, "dependencies": { - "fastify": "4.25.0", + "fastify": "4.25.1", "pino": "8.17.1" }, "devDependencies": { From 8de5ff8545e91b6f29208fb6b7e7f3231a834144 Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Mon, 18 Dec 2023 15:19:25 +0300 Subject: [PATCH 029/458] Add troubleshooting step for using third-party libraries with `unstable_cache` (#225) --- apps/cache-testing/package.json | 4 +- .../src/pages/troubleshooting.mdx | 2 + internal/next-common/package.json | 2 +- package-lock.json | 675 +++++++++--------- 4 files changed, 345 insertions(+), 338 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 4b8d691c..ea254167 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -15,7 +15,7 @@ "start": "dotenv -e .env.local -v SERVER_STARTED=1 node .next/standalone/apps/cache-testing/server.js" }, "dependencies": { - "next": "14.0.5-canary.0", + "next": "14.0.5-canary.17", "react": "18.2.0", "react-dom": "18.2.0" }, @@ -23,7 +23,7 @@ "@neshca/cache-handler": "*", "@neshca/json-replacer-reviver": "*", "@neshca/tsconfig": "*", - "@next/eslint-plugin-next": "14.0.5-canary.0", + "@next/eslint-plugin-next": "14.0.5-canary.17", "@playwright/test": "1.40.1", "@types/node": "20.10.4", "@types/react": "18.2.45", diff --git a/docs/cache-handler-docs/src/pages/troubleshooting.mdx b/docs/cache-handler-docs/src/pages/troubleshooting.mdx index 7c4d3d04..4788831d 100644 --- a/docs/cache-handler-docs/src/pages/troubleshooting.mdx +++ b/docs/cache-handler-docs/src/pages/troubleshooting.mdx @@ -73,3 +73,5 @@ If the cache handler is not active: ``` When you build or run your application, `NEXT_PRIVATE_DEBUG_CACHE 1` should appear in your console. + +3. If you're using a third-party library to retrieve data or database records (e.g., `axios`, `node-fetch`, `pg`) within the App directory, ensure you're using the [`unstable_cache`](https://nextjs.org/docs/app/api-reference/functions/unstable_cache). By default, Next.js will cache only native fetch calls. diff --git a/internal/next-common/package.json b/internal/next-common/package.json index f8112db8..e4a17ebf 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -12,7 +12,7 @@ "lint": "eslint ." }, "dependencies": { - "next": "14.0.5-canary.0" + "next": "14.0.5-canary.17" }, "devDependencies": { "@neshca/tsconfig": "*", diff --git a/package-lock.json b/package-lock.json index 67f86941..db039300 100644 --- a/package-lock.json +++ b/package-lock.json @@ -36,7 +36,7 @@ "version": "0.0.0", "license": "MIT", "dependencies": { - "next": "14.0.5-canary.0", + "next": "14.0.5-canary.17", "react": "18.2.0", "react-dom": "18.2.0" }, @@ -44,7 +44,7 @@ "@neshca/cache-handler": "*", "@neshca/json-replacer-reviver": "*", "@neshca/tsconfig": "*", - "@next/eslint-plugin-next": "14.0.5-canary.0", + "@next/eslint-plugin-next": "14.0.5-canary.17", "@playwright/test": "1.40.1", "@types/node": "20.10.4", "@types/react": "18.2.45", @@ -69,11 +69,11 @@ } }, "apps/cache-testing/node_modules/next": { - "version": "14.0.5-canary.0", - "resolved": "https://registry.npmjs.org/next/-/next-14.0.5-canary.0.tgz", - "integrity": "sha512-gaIH3kv48t6PFrX48Y7RHWgSGKD43A3nB1ejHMLI5D3bjM1cuQFJGB6DHZ6RVMQhLeFRwcbOfenelP5qqG2EGQ==", + "version": "14.0.5-canary.17", + "resolved": "https://registry.npmjs.org/next/-/next-14.0.5-canary.17.tgz", + "integrity": "sha512-qetVXiLdRjbfvAbZW8MXlY/R0N2BvhkHhNOB2mGmAdOtp4YWDqM1XlYdBwoDhv1LO9sA7WGREczZIp8qyBQxVg==", "dependencies": { - "@next/env": "14.0.5-canary.0", + "@next/env": "14.0.5-canary.17", "@swc/helpers": "0.5.2", "busboy": "1.6.0", "caniuse-lite": "^1.0.30001406", @@ -89,15 +89,15 @@ "node": ">=18.17.0" }, "optionalDependencies": { - "@next/swc-darwin-arm64": "14.0.5-canary.0", - "@next/swc-darwin-x64": "14.0.5-canary.0", - "@next/swc-linux-arm64-gnu": "14.0.5-canary.0", - "@next/swc-linux-arm64-musl": "14.0.5-canary.0", - "@next/swc-linux-x64-gnu": "14.0.5-canary.0", - "@next/swc-linux-x64-musl": "14.0.5-canary.0", - "@next/swc-win32-arm64-msvc": "14.0.5-canary.0", - "@next/swc-win32-ia32-msvc": "14.0.5-canary.0", - "@next/swc-win32-x64-msvc": "14.0.5-canary.0" + "@next/swc-darwin-arm64": "14.0.5-canary.17", + "@next/swc-darwin-x64": "14.0.5-canary.17", + "@next/swc-linux-arm64-gnu": "14.0.5-canary.17", + "@next/swc-linux-arm64-musl": "14.0.5-canary.17", + "@next/swc-linux-x64-gnu": "14.0.5-canary.17", + "@next/swc-linux-x64-musl": "14.0.5-canary.17", + "@next/swc-win32-arm64-msvc": "14.0.5-canary.17", + "@next/swc-win32-ia32-msvc": "14.0.5-canary.17", + "@next/swc-win32-x64-msvc": "14.0.5-canary.17" }, "peerDependencies": { "@opentelemetry/api": "^1.1.0", @@ -374,7 +374,7 @@ "version": "0.0.0", "license": "MIT", "dependencies": { - "next": "14.0.5-canary.0" + "next": "14.0.5-canary.17" }, "devDependencies": { "@neshca/tsconfig": "*", @@ -394,11 +394,11 @@ } }, "internal/next-common/node_modules/next": { - "version": "14.0.5-canary.0", - "resolved": "https://registry.npmjs.org/next/-/next-14.0.5-canary.0.tgz", - "integrity": "sha512-gaIH3kv48t6PFrX48Y7RHWgSGKD43A3nB1ejHMLI5D3bjM1cuQFJGB6DHZ6RVMQhLeFRwcbOfenelP5qqG2EGQ==", + "version": "14.0.5-canary.17", + "resolved": "https://registry.npmjs.org/next/-/next-14.0.5-canary.17.tgz", + "integrity": "sha512-qetVXiLdRjbfvAbZW8MXlY/R0N2BvhkHhNOB2mGmAdOtp4YWDqM1XlYdBwoDhv1LO9sA7WGREczZIp8qyBQxVg==", "dependencies": { - "@next/env": "14.0.5-canary.0", + "@next/env": "14.0.5-canary.17", "@swc/helpers": "0.5.2", "busboy": "1.6.0", "caniuse-lite": "^1.0.30001406", @@ -414,15 +414,15 @@ "node": ">=18.17.0" }, "optionalDependencies": { - "@next/swc-darwin-arm64": "14.0.5-canary.0", - "@next/swc-darwin-x64": "14.0.5-canary.0", - "@next/swc-linux-arm64-gnu": "14.0.5-canary.0", - "@next/swc-linux-arm64-musl": "14.0.5-canary.0", - "@next/swc-linux-x64-gnu": "14.0.5-canary.0", - "@next/swc-linux-x64-musl": "14.0.5-canary.0", - "@next/swc-win32-arm64-msvc": "14.0.5-canary.0", - "@next/swc-win32-ia32-msvc": "14.0.5-canary.0", - "@next/swc-win32-x64-msvc": "14.0.5-canary.0" + "@next/swc-darwin-arm64": "14.0.5-canary.17", + "@next/swc-darwin-x64": "14.0.5-canary.17", + "@next/swc-linux-arm64-gnu": "14.0.5-canary.17", + "@next/swc-linux-arm64-musl": "14.0.5-canary.17", + "@next/swc-linux-x64-gnu": "14.0.5-canary.17", + "@next/swc-linux-x64-musl": "14.0.5-canary.17", + "@next/swc-win32-arm64-msvc": "14.0.5-canary.17", + "@next/swc-win32-ia32-msvc": "14.0.5-canary.17", + "@next/swc-win32-x64-msvc": "14.0.5-canary.17" }, "peerDependencies": { "@opentelemetry/api": "^1.1.0", @@ -624,21 +624,21 @@ } }, "node_modules/@babel/core": { - "version": "7.23.5", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.23.5.tgz", - "integrity": "sha512-Cwc2XjUrG4ilcfOw4wBAK+enbdgwAcAJCfGUItPBKR7Mjw4aEfAFYrLxeRp4jWgtNIKn3n2AlBOfwwafl+42/g==", + "version": "7.23.6", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.23.6.tgz", + "integrity": "sha512-FxpRyGjrMJXh7X3wGLGhNDCRiwpWEF74sKjTLDJSG5Kyvow3QZaG0Adbqzi9ZrVjTWpsX+2cxWXD71NMg93kdw==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.2.0", "@babel/code-frame": "^7.23.5", - "@babel/generator": "^7.23.5", - "@babel/helper-compilation-targets": "^7.22.15", + "@babel/generator": "^7.23.6", + "@babel/helper-compilation-targets": "^7.23.6", "@babel/helper-module-transforms": "^7.23.3", - "@babel/helpers": "^7.23.5", - "@babel/parser": "^7.23.5", + "@babel/helpers": "^7.23.6", + "@babel/parser": "^7.23.6", "@babel/template": "^7.22.15", - "@babel/traverse": "^7.23.5", - "@babel/types": "^7.23.5", + "@babel/traverse": "^7.23.6", + "@babel/types": "^7.23.6", "convert-source-map": "^2.0.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -699,12 +699,12 @@ } }, "node_modules/@babel/generator": { - "version": "7.23.5", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.23.5.tgz", - "integrity": "sha512-BPssCHrBD+0YrxviOa3QzpqwhNIXKEtOa2jQrm4FlmkC2apYgRnQcmPWiGZDlGxiNtltnUFolMe8497Esry+jA==", + "version": "7.23.6", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.23.6.tgz", + "integrity": "sha512-qrSfCYxYQB5owCmGLbl8XRpX1ytXlpueOb0N0UmQwA073KZxejgQTzAmJezxvpwQD9uGtK2shHdi55QT+MbjIw==", "dev": true, "dependencies": { - "@babel/types": "^7.23.5", + "@babel/types": "^7.23.6", "@jridgewell/gen-mapping": "^0.3.2", "@jridgewell/trace-mapping": "^0.3.17", "jsesc": "^2.5.1" @@ -714,14 +714,14 @@ } }, "node_modules/@babel/helper-compilation-targets": { - "version": "7.22.15", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.15.tgz", - "integrity": "sha512-y6EEzULok0Qvz8yyLkCvVX+02ic+By2UdOhylwUOvOn9dvYc9mKICJuuU1n1XBI02YWsNsnrY1kc6DVbjcXbtw==", + "version": "7.23.6", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.23.6.tgz", + "integrity": "sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ==", "dev": true, "dependencies": { - "@babel/compat-data": "^7.22.9", - "@babel/helper-validator-option": "^7.22.15", - "browserslist": "^4.21.9", + "@babel/compat-data": "^7.23.5", + "@babel/helper-validator-option": "^7.23.5", + "browserslist": "^4.22.2", "lru-cache": "^5.1.1", "semver": "^6.3.1" }, @@ -869,14 +869,14 @@ } }, "node_modules/@babel/helpers": { - "version": "7.23.5", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.23.5.tgz", - "integrity": "sha512-oO7us8FzTEsG3U6ag9MfdF1iA/7Z6dz+MtFhifZk8C8o453rGJFFWUP1t+ULM9TUIAzC9uxXEiXjOiVMyd7QPg==", + "version": "7.23.6", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.23.6.tgz", + "integrity": "sha512-wCfsbN4nBidDRhpDhvcKlzHWCTlgJYUUdSJfzXb2NuBssDSIjc3xcb+znA7l+zYsFljAcGM0aFkN40cR3lXiGA==", "dev": true, "dependencies": { "@babel/template": "^7.22.15", - "@babel/traverse": "^7.23.5", - "@babel/types": "^7.23.5" + "@babel/traverse": "^7.23.6", + "@babel/types": "^7.23.6" }, "engines": { "node": ">=6.9.0" @@ -896,9 +896,9 @@ } }, "node_modules/@babel/parser": { - "version": "7.23.5", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.5.tgz", - "integrity": "sha512-hOOqoiNXrmGdFbhgCzu6GiURxUgM27Xwd/aPuu8RfHEZPBzL1Z54okAHAQjXfcQNwvrlkAmAp4SlRTZ45vlthQ==", + "version": "7.23.6", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.6.tgz", + "integrity": "sha512-Z2uID7YJ7oNvAI20O9X0bblw7Qqs8Q2hFy0R9tAfnfLkp5MW0UH9eUvnDSnFwKZ0AvgS1ucqR4KzvVHgnke1VQ==", "dev": true, "bin": { "parser": "bin/babel-parser.js" @@ -908,9 +908,9 @@ } }, "node_modules/@babel/runtime": { - "version": "7.23.5", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.23.5.tgz", - "integrity": "sha512-NdUTHcPe4C99WxPub+K9l9tK5/lV4UXIoaHSYgzco9BCyjKAAwzdBI+wWtYqHt7LJdbo74ZjRPJgzVweq1sz0w==", + "version": "7.23.6", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.23.6.tgz", + "integrity": "sha512-zHd0eUrf5GZoOWVCXp6koAKQTfZV07eit6bGPmJgnZdnSAvvZee6zniW2XMF7Cmc4ISOOnPy3QaSiIJGJkVEDQ==", "dependencies": { "regenerator-runtime": "^0.14.0" }, @@ -933,20 +933,20 @@ } }, "node_modules/@babel/traverse": { - "version": "7.23.5", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.23.5.tgz", - "integrity": "sha512-czx7Xy5a6sapWWRx61m1Ke1Ra4vczu1mCTtJam5zRTBOonfdJ+S/B6HYmGYu3fJtr8GGET3si6IhgWVBhJ/m8w==", + "version": "7.23.6", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.23.6.tgz", + "integrity": "sha512-czastdK1e8YByZqezMPFiZ8ahwVMh/ESl9vPgvgdB9AmFMGP5jfpFax74AQgl5zj4XHzqeYAg2l8PuUeRS1MgQ==", "dev": true, "dependencies": { "@babel/code-frame": "^7.23.5", - "@babel/generator": "^7.23.5", + "@babel/generator": "^7.23.6", "@babel/helper-environment-visitor": "^7.22.20", "@babel/helper-function-name": "^7.23.0", "@babel/helper-hoist-variables": "^7.22.5", "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/parser": "^7.23.5", - "@babel/types": "^7.23.5", - "debug": "^4.1.0", + "@babel/parser": "^7.23.6", + "@babel/types": "^7.23.6", + "debug": "^4.3.1", "globals": "^11.1.0" }, "engines": { @@ -963,9 +963,9 @@ } }, "node_modules/@babel/types": { - "version": "7.23.5", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.23.5.tgz", - "integrity": "sha512-ON5kSOJwVO6xXVRTvOI0eOnWe7VdUcIpsovGo9U/Br4Ie4UVFQTboO2cYnDhAGU6Fp+UxSiT+pMft0SMHfuq6w==", + "version": "7.23.6", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.23.6.tgz", + "integrity": "sha512-+uarb83brBzPKN38NX1MkB6vb6+mwvR6amUulqAE7ccQw1pEl+bCia9TbdG1lsnFP7lZySvUn37CHyXQdfTwzg==", "dev": true, "dependencies": { "@babel/helper-string-parser": "^7.23.4", @@ -1221,9 +1221,9 @@ } }, "node_modules/@esbuild/android-arm": { - "version": "0.19.8", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.19.8.tgz", - "integrity": "sha512-31E2lxlGM1KEfivQl8Yf5aYU/mflz9g06H6S15ITUFQueMFtFjESRMoDSkvMo8thYvLBax+VKTPlpnx+sPicOA==", + "version": "0.19.9", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.19.9.tgz", + "integrity": "sha512-jkYjjq7SdsWuNI6b5quymW0oC83NN5FdRPuCbs9HZ02mfVdAP8B8eeqLSYU3gb6OJEaY5CQabtTFbqBf26H3GA==", "cpu": [ "arm" ], @@ -1237,9 +1237,9 @@ } }, "node_modules/@esbuild/android-arm64": { - "version": "0.19.8", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.19.8.tgz", - "integrity": "sha512-B8JbS61bEunhfx8kasogFENgQfr/dIp+ggYXwTqdbMAgGDhRa3AaPpQMuQU0rNxDLECj6FhDzk1cF9WHMVwrtA==", + "version": "0.19.9", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.19.9.tgz", + "integrity": "sha512-q4cR+6ZD0938R19MyEW3jEsMzbb/1rulLXiNAJQADD/XYp7pT+rOS5JGxvpRW8dFDEfjW4wLgC/3FXIw4zYglQ==", "cpu": [ "arm64" ], @@ -1253,9 +1253,9 @@ } }, "node_modules/@esbuild/android-x64": { - "version": "0.19.8", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.19.8.tgz", - "integrity": "sha512-rdqqYfRIn4jWOp+lzQttYMa2Xar3OK9Yt2fhOhzFXqg0rVWEfSclJvZq5fZslnz6ypHvVf3CT7qyf0A5pM682A==", + "version": "0.19.9", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.19.9.tgz", + "integrity": "sha512-KOqoPntWAH6ZxDwx1D6mRntIgZh9KodzgNOy5Ebt9ghzffOk9X2c1sPwtM9P+0eXbefnDhqYfkh5PLP5ULtWFA==", "cpu": [ "x64" ], @@ -1269,9 +1269,9 @@ } }, "node_modules/@esbuild/darwin-arm64": { - "version": "0.19.8", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.19.8.tgz", - "integrity": "sha512-RQw9DemMbIq35Bprbboyf8SmOr4UXsRVxJ97LgB55VKKeJOOdvsIPy0nFyF2l8U+h4PtBx/1kRf0BelOYCiQcw==", + "version": "0.19.9", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.19.9.tgz", + "integrity": "sha512-KBJ9S0AFyLVx2E5D8W0vExqRW01WqRtczUZ8NRu+Pi+87opZn5tL4Y0xT0mA4FtHctd0ZgwNoN639fUUGlNIWw==", "cpu": [ "arm64" ], @@ -1285,9 +1285,9 @@ } }, "node_modules/@esbuild/darwin-x64": { - "version": "0.19.8", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.19.8.tgz", - "integrity": "sha512-3sur80OT9YdeZwIVgERAysAbwncom7b4bCI2XKLjMfPymTud7e/oY4y+ci1XVp5TfQp/bppn7xLw1n/oSQY3/Q==", + "version": "0.19.9", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.19.9.tgz", + "integrity": "sha512-vE0VotmNTQaTdX0Q9dOHmMTao6ObjyPm58CHZr1UK7qpNleQyxlFlNCaHsHx6Uqv86VgPmR4o2wdNq3dP1qyDQ==", "cpu": [ "x64" ], @@ -1301,9 +1301,9 @@ } }, "node_modules/@esbuild/freebsd-arm64": { - "version": "0.19.8", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.19.8.tgz", - "integrity": "sha512-WAnPJSDattvS/XtPCTj1tPoTxERjcTpH6HsMr6ujTT+X6rylVe8ggxk8pVxzf5U1wh5sPODpawNicF5ta/9Tmw==", + "version": "0.19.9", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.19.9.tgz", + "integrity": "sha512-uFQyd/o1IjiEk3rUHSwUKkqZwqdvuD8GevWF065eqgYfexcVkxh+IJgwTaGZVu59XczZGcN/YMh9uF1fWD8j1g==", "cpu": [ "arm64" ], @@ -1317,9 +1317,9 @@ } }, "node_modules/@esbuild/freebsd-x64": { - "version": "0.19.8", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.19.8.tgz", - "integrity": "sha512-ICvZyOplIjmmhjd6mxi+zxSdpPTKFfyPPQMQTK/w+8eNK6WV01AjIztJALDtwNNfFhfZLux0tZLC+U9nSyA5Zg==", + "version": "0.19.9", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.19.9.tgz", + "integrity": "sha512-WMLgWAtkdTbTu1AWacY7uoj/YtHthgqrqhf1OaEWnZb7PQgpt8eaA/F3LkV0E6K/Lc0cUr/uaVP/49iE4M4asA==", "cpu": [ "x64" ], @@ -1333,9 +1333,9 @@ } }, "node_modules/@esbuild/linux-arm": { - "version": "0.19.8", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.19.8.tgz", - "integrity": "sha512-H4vmI5PYqSvosPaTJuEppU9oz1dq2A7Mr2vyg5TF9Ga+3+MGgBdGzcyBP7qK9MrwFQZlvNyJrvz6GuCaj3OukQ==", + "version": "0.19.9", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.19.9.tgz", + "integrity": "sha512-C/ChPohUYoyUaqn1h17m/6yt6OB14hbXvT8EgM1ZWaiiTYz7nWZR0SYmMnB5BzQA4GXl3BgBO1l8MYqL/He3qw==", "cpu": [ "arm" ], @@ -1349,9 +1349,9 @@ } }, "node_modules/@esbuild/linux-arm64": { - "version": "0.19.8", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.19.8.tgz", - "integrity": "sha512-z1zMZivxDLHWnyGOctT9JP70h0beY54xDDDJt4VpTX+iwA77IFsE1vCXWmprajJGa+ZYSqkSbRQ4eyLCpCmiCQ==", + "version": "0.19.9", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.19.9.tgz", + "integrity": "sha512-PiPblfe1BjK7WDAKR1Cr9O7VVPqVNpwFcPWgfn4xu0eMemzRp442hXyzF/fSwgrufI66FpHOEJk0yYdPInsmyQ==", "cpu": [ "arm64" ], @@ -1365,9 +1365,9 @@ } }, "node_modules/@esbuild/linux-ia32": { - "version": "0.19.8", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.19.8.tgz", - "integrity": "sha512-1a8suQiFJmZz1khm/rDglOc8lavtzEMRo0v6WhPgxkrjcU0LkHj+TwBrALwoz/OtMExvsqbbMI0ChyelKabSvQ==", + "version": "0.19.9", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.19.9.tgz", + "integrity": "sha512-f37i/0zE0MjDxijkPSQw1CO/7C27Eojqb+r3BbHVxMLkj8GCa78TrBZzvPyA/FNLUMzP3eyHCVkAopkKVja+6Q==", "cpu": [ "ia32" ], @@ -1381,9 +1381,9 @@ } }, "node_modules/@esbuild/linux-loong64": { - "version": "0.19.8", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.19.8.tgz", - "integrity": "sha512-fHZWS2JJxnXt1uYJsDv9+b60WCc2RlvVAy1F76qOLtXRO+H4mjt3Tr6MJ5l7Q78X8KgCFudnTuiQRBhULUyBKQ==", + "version": "0.19.9", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.19.9.tgz", + "integrity": "sha512-t6mN147pUIf3t6wUt3FeumoOTPfmv9Cc6DQlsVBpB7eCpLOqQDyWBP1ymXn1lDw4fNUSb/gBcKAmvTP49oIkaA==", "cpu": [ "loong64" ], @@ -1397,9 +1397,9 @@ } }, "node_modules/@esbuild/linux-mips64el": { - "version": "0.19.8", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.19.8.tgz", - "integrity": "sha512-Wy/z0EL5qZYLX66dVnEg9riiwls5IYnziwuju2oUiuxVc+/edvqXa04qNtbrs0Ukatg5HEzqT94Zs7J207dN5Q==", + "version": "0.19.9", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.19.9.tgz", + "integrity": "sha512-jg9fujJTNTQBuDXdmAg1eeJUL4Jds7BklOTkkH80ZgQIoCTdQrDaHYgbFZyeTq8zbY+axgptncko3v9p5hLZtw==", "cpu": [ "mips64el" ], @@ -1413,9 +1413,9 @@ } }, "node_modules/@esbuild/linux-ppc64": { - "version": "0.19.8", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.19.8.tgz", - "integrity": "sha512-ETaW6245wK23YIEufhMQ3HSeHO7NgsLx8gygBVldRHKhOlD1oNeNy/P67mIh1zPn2Hr2HLieQrt6tWrVwuqrxg==", + "version": "0.19.9", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.19.9.tgz", + "integrity": "sha512-tkV0xUX0pUUgY4ha7z5BbDS85uI7ABw3V1d0RNTii7E9lbmV8Z37Pup2tsLV46SQWzjOeyDi1Q7Wx2+QM8WaCQ==", "cpu": [ "ppc64" ], @@ -1429,9 +1429,9 @@ } }, "node_modules/@esbuild/linux-riscv64": { - "version": "0.19.8", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.19.8.tgz", - "integrity": "sha512-T2DRQk55SgoleTP+DtPlMrxi/5r9AeFgkhkZ/B0ap99zmxtxdOixOMI570VjdRCs9pE4Wdkz7JYrsPvsl7eESg==", + "version": "0.19.9", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.19.9.tgz", + "integrity": "sha512-DfLp8dj91cufgPZDXr9p3FoR++m3ZJ6uIXsXrIvJdOjXVREtXuQCjfMfvmc3LScAVmLjcfloyVtpn43D56JFHg==", "cpu": [ "riscv64" ], @@ -1445,9 +1445,9 @@ } }, "node_modules/@esbuild/linux-s390x": { - "version": "0.19.8", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.19.8.tgz", - "integrity": "sha512-NPxbdmmo3Bk7mbNeHmcCd7R7fptJaczPYBaELk6NcXxy7HLNyWwCyDJ/Xx+/YcNH7Im5dHdx9gZ5xIwyliQCbg==", + "version": "0.19.9", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.19.9.tgz", + "integrity": "sha512-zHbglfEdC88KMgCWpOl/zc6dDYJvWGLiUtmPRsr1OgCViu3z5GncvNVdf+6/56O2Ca8jUU+t1BW261V6kp8qdw==", "cpu": [ "s390x" ], @@ -1461,9 +1461,9 @@ } }, "node_modules/@esbuild/linux-x64": { - "version": "0.19.8", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.19.8.tgz", - "integrity": "sha512-lytMAVOM3b1gPypL2TRmZ5rnXl7+6IIk8uB3eLsV1JwcizuolblXRrc5ShPrO9ls/b+RTp+E6gbsuLWHWi2zGg==", + "version": "0.19.9", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.19.9.tgz", + "integrity": "sha512-JUjpystGFFmNrEHQnIVG8hKwvA2DN5o7RqiO1CVX8EN/F/gkCjkUMgVn6hzScpwnJtl2mPR6I9XV1oW8k9O+0A==", "cpu": [ "x64" ], @@ -1477,9 +1477,9 @@ } }, "node_modules/@esbuild/netbsd-x64": { - "version": "0.19.8", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.19.8.tgz", - "integrity": "sha512-hvWVo2VsXz/8NVt1UhLzxwAfo5sioj92uo0bCfLibB0xlOmimU/DeAEsQILlBQvkhrGjamP0/el5HU76HAitGw==", + "version": "0.19.9", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.19.9.tgz", + "integrity": "sha512-GThgZPAwOBOsheA2RUlW5UeroRfESwMq/guy8uEe3wJlAOjpOXuSevLRd70NZ37ZrpO6RHGHgEHvPg1h3S1Jug==", "cpu": [ "x64" ], @@ -1493,9 +1493,9 @@ } }, "node_modules/@esbuild/openbsd-x64": { - "version": "0.19.8", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.19.8.tgz", - "integrity": "sha512-/7Y7u77rdvmGTxR83PgaSvSBJCC2L3Kb1M/+dmSIvRvQPXXCuC97QAwMugBNG0yGcbEGfFBH7ojPzAOxfGNkwQ==", + "version": "0.19.9", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.19.9.tgz", + "integrity": "sha512-Ki6PlzppaFVbLnD8PtlVQfsYw4S9n3eQl87cqgeIw+O3sRr9IghpfSKY62mggdt1yCSZ8QWvTZ9jo9fjDSg9uw==", "cpu": [ "x64" ], @@ -1509,9 +1509,9 @@ } }, "node_modules/@esbuild/sunos-x64": { - "version": "0.19.8", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.19.8.tgz", - "integrity": "sha512-9Lc4s7Oi98GqFA4HzA/W2JHIYfnXbUYgekUP/Sm4BG9sfLjyv6GKKHKKVs83SMicBF2JwAX6A1PuOLMqpD001w==", + "version": "0.19.9", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.19.9.tgz", + "integrity": "sha512-MLHj7k9hWh4y1ddkBpvRj2b9NCBhfgBt3VpWbHQnXRedVun/hC7sIyTGDGTfsGuXo4ebik2+3ShjcPbhtFwWDw==", "cpu": [ "x64" ], @@ -1525,9 +1525,9 @@ } }, "node_modules/@esbuild/win32-arm64": { - "version": "0.19.8", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.19.8.tgz", - "integrity": "sha512-rq6WzBGjSzihI9deW3fC2Gqiak68+b7qo5/3kmB6Gvbh/NYPA0sJhrnp7wgV4bNwjqM+R2AApXGxMO7ZoGhIJg==", + "version": "0.19.9", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.19.9.tgz", + "integrity": "sha512-GQoa6OrQ8G08guMFgeXPH7yE/8Dt0IfOGWJSfSH4uafwdC7rWwrfE6P9N8AtPGIjUzdo2+7bN8Xo3qC578olhg==", "cpu": [ "arm64" ], @@ -1541,9 +1541,9 @@ } }, "node_modules/@esbuild/win32-ia32": { - "version": "0.19.8", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.19.8.tgz", - "integrity": "sha512-AIAbverbg5jMvJznYiGhrd3sumfwWs8572mIJL5NQjJa06P8KfCPWZQ0NwZbPQnbQi9OWSZhFVSUWjjIrn4hSw==", + "version": "0.19.9", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.19.9.tgz", + "integrity": "sha512-UOozV7Ntykvr5tSOlGCrqU3NBr3d8JqPes0QWN2WOXfvkWVGRajC+Ym0/Wj88fUgecUCLDdJPDF0Nna2UK3Qtg==", "cpu": [ "ia32" ], @@ -1557,9 +1557,9 @@ } }, "node_modules/@esbuild/win32-x64": { - "version": "0.19.8", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.19.8.tgz", - "integrity": "sha512-bfZ0cQ1uZs2PqpulNL5j/3w+GDhP36k1K5c38QdQg+Swy51jFZWWeIkteNsufkQxp986wnqRRsb/bHbY1WQ7TA==", + "version": "0.19.9", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.19.9.tgz", + "integrity": "sha512-oxoQgglOP7RH6iasDrhY+R/3cHrfwIDvRlT4CGChflq6twk8iENeVvMJjmvBb94Ik1Z+93iGO27err7w6l54GQ==", "cpu": [ "x64" ], @@ -2215,14 +2215,14 @@ "link": true }, "node_modules/@next/env": { - "version": "14.0.5-canary.0", - "resolved": "https://registry.npmjs.org/@next/env/-/env-14.0.5-canary.0.tgz", - "integrity": "sha512-Z4U5vldVFpHh9RcXJSXb67vySJQ5lwIG51tAltr6mdgJ3YJBlK53THU1fd1+/y8sfKZ7+FJcEQEIYzE6ivxdJA==" + "version": "14.0.5-canary.17", + "resolved": "https://registry.npmjs.org/@next/env/-/env-14.0.5-canary.17.tgz", + "integrity": "sha512-YdmiBGjz18ArskwnPB7U7AwTUO7KjJ1Vn64AdAuE4pQqfRzwIyfz2VL83dsB12njoskhN95XOUBstOYUv2RF4A==" }, "node_modules/@next/eslint-plugin-next": { - "version": "14.0.5-canary.0", - "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.0.5-canary.0.tgz", - "integrity": "sha512-NjuGT+hutksNncKRbVnQF8gGcNToubkhOiHn2xIQKlQoG/4eSrGR/kGcvHc20VhQgEzegEdTlehBqBZ8HgF4EQ==", + "version": "14.0.5-canary.17", + "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.0.5-canary.17.tgz", + "integrity": "sha512-lQ6+KbGjrkxwvmUtcfVsN3dgcNqP82h0Pt2xIN+tmUUD/uo3iMEs9mjljH2UxBpD4LJgPdUZ7SyLD9cuWvezAg==", "dev": true, "dependencies": { "glob": "7.1.7" @@ -2249,9 +2249,9 @@ } }, "node_modules/@next/swc-darwin-arm64": { - "version": "14.0.5-canary.0", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.0.5-canary.0.tgz", - "integrity": "sha512-MZzTiLWAGqSOnwGNFaPpyf1gOJartSkMiS+TtOucTGMpHddGUf+fWV4P5OSFV0PfO9rfbNbbxwz+3SwlWKrcsw==", + "version": "14.0.5-canary.17", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.0.5-canary.17.tgz", + "integrity": "sha512-/sqYvmmSV4388UVGmJrOwcTeKosUPYWBcTQ+YYS7i9gVY2aPaMlZcCXEXsuwOg5Tyav/jd0URWXuh7N9fpVqbw==", "cpu": [ "arm64" ], @@ -2264,9 +2264,9 @@ } }, "node_modules/@next/swc-darwin-x64": { - "version": "14.0.5-canary.0", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.0.5-canary.0.tgz", - "integrity": "sha512-zpvPHrSTi8H+RZWDAIwSXIvRBGe+1S/VvOGRWIovuT/vQd5WcDWqWA3UKm5I+X0bufIGqzEKLHSJG+ErgzmKPQ==", + "version": "14.0.5-canary.17", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.0.5-canary.17.tgz", + "integrity": "sha512-JjXrN7q6R1ys3hWUEtyfvjiB2hCxFeAtSq4GVkpugPQH9J4jLXgaxEcTV54ebU5Oh5Fhnazrw6iEJ3Kte9PZZQ==", "cpu": [ "x64" ], @@ -2279,9 +2279,9 @@ } }, "node_modules/@next/swc-linux-arm64-gnu": { - "version": "14.0.5-canary.0", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.0.5-canary.0.tgz", - "integrity": "sha512-LjJGBK9ZbbvfGrMfLAngMl2dBH/QxTOZQgGuGfnMIKf8nev0eKUYQEnxfU8rFchm+yoXbSR2+62/PD0tlvk0gA==", + "version": "14.0.5-canary.17", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.0.5-canary.17.tgz", + "integrity": "sha512-HTF4ib0YytW8VTcGe6+dqnJt4fE505HjN9z9U1e/OSiYcMs0xd9z5a7f/VVdez3tCt7JYbmdt5aSRebyghk/1A==", "cpu": [ "arm64" ], @@ -2294,9 +2294,9 @@ } }, "node_modules/@next/swc-linux-arm64-musl": { - "version": "14.0.5-canary.0", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.0.5-canary.0.tgz", - "integrity": "sha512-KQ2Sbeyyg1KBUeza2stPG6WMLqSolVw4YBdzvnkG5qKqhDepYU1Yp+66q3U6FyJbjRI1yGdnpo0TvlyUsDpYPg==", + "version": "14.0.5-canary.17", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.0.5-canary.17.tgz", + "integrity": "sha512-KPiZw8nvlU94MJtlXMyN5tNPJkJbRy0obHwm69LevAg/AkS7V5RJ/p/4UESPzFJ6qRfLa2kuT6X9xQPwHleGzQ==", "cpu": [ "arm64" ], @@ -2309,9 +2309,9 @@ } }, "node_modules/@next/swc-linux-x64-gnu": { - "version": "14.0.5-canary.0", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.0.5-canary.0.tgz", - "integrity": "sha512-rLi2f2lSugazPcxhP+vlKrHv17D4HmHj+dRY8uDm7tcqoRQ/hAMwligiXjNPqFlqX41do8IDOlijzXwLCeDZAg==", + "version": "14.0.5-canary.17", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.0.5-canary.17.tgz", + "integrity": "sha512-B0sw8r+Tg/C9uPYFNiEdGnNIOYZgnb2hnLZrsYrcho8IN+ZpMqckaJg9CmJd/y7ABEGy2IeuVIyG3xUv/RxrMg==", "cpu": [ "x64" ], @@ -2324,9 +2324,9 @@ } }, "node_modules/@next/swc-linux-x64-musl": { - "version": "14.0.5-canary.0", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.0.5-canary.0.tgz", - "integrity": "sha512-WK85aY0rkBjIS92Z4SyRNxOn6fG+kdhOsLKKO5WQDWZZPoK8BZA64tjhcWHgRkqHl+D2MIDVlB+T6y4vJLsnIQ==", + "version": "14.0.5-canary.17", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.0.5-canary.17.tgz", + "integrity": "sha512-Nj+xxWoe9weA8Q9+tJFFARDT7fHg+Ep2PPEo+Wyh/o74K2VKfoChAm/1VwT5QcDKOmK+2zA5L1yA+oaRHayDnQ==", "cpu": [ "x64" ], @@ -2339,9 +2339,9 @@ } }, "node_modules/@next/swc-win32-arm64-msvc": { - "version": "14.0.5-canary.0", - "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.0.5-canary.0.tgz", - "integrity": "sha512-3qgTPqrPcBQP2pgwenkzLeCgnqbTiNsWAFKaVCov9wQeE6v+JRQHeVssOVEKQfxTBXMX57CyrJtxkp+QWDcy5g==", + "version": "14.0.5-canary.17", + "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.0.5-canary.17.tgz", + "integrity": "sha512-DiTRhyWIIRnkllHbCcjC8gz8igtu7r9/XmnQItgCTHJLpudyQewJ+kq64NKqPzbpO07kN8D6Q+cdOE279z24UQ==", "cpu": [ "arm64" ], @@ -2354,9 +2354,9 @@ } }, "node_modules/@next/swc-win32-ia32-msvc": { - "version": "14.0.5-canary.0", - "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.0.5-canary.0.tgz", - "integrity": "sha512-Jzr5d9qWa9sIqIt0Xv0AdGUXxbsjQN+iLy5cPJC+f/PoM7x+q1jJj/JwVlCcKWD99Q1lA6keombn4oqlEy5Clw==", + "version": "14.0.5-canary.17", + "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.0.5-canary.17.tgz", + "integrity": "sha512-cfrb2fvzIrYFQMj10xssDD5iRULG3S6EjyqKWUjNChXqqj3xSQoKx4LMOqEQTl0IBVJjHhmDny5xZLwO6F6+aQ==", "cpu": [ "ia32" ], @@ -2369,9 +2369,9 @@ } }, "node_modules/@next/swc-win32-x64-msvc": { - "version": "14.0.5-canary.0", - "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.0.5-canary.0.tgz", - "integrity": "sha512-XTahlDCNPJxD6nHxt60Qsm0K0K/U+mNhtFSLggRuOmOKk+mOi2cFTO+Y6iFLVvFE5sD/iuWnB2LOgc7BH/2FKw==", + "version": "14.0.5-canary.17", + "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.0.5-canary.17.tgz", + "integrity": "sha512-Vc1djW4hEpoc9G63ekNzpFoDq0Zv9XKY3YMyUUP5aKFQgpe72T2GXCSFlVIcTgwoVKiTuDl9wyxEeYpjbMxbWw==", "cpu": [ "x64" ], @@ -2819,9 +2819,9 @@ } }, "node_modules/@rollup/rollup-android-arm-eabi": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.7.0.tgz", - "integrity": "sha512-rGku10pL1StFlFvXX5pEv88KdGW6DHUghsxyP/aRYb9eH+74jTGJ3U0S/rtlsQ4yYq1Hcc7AMkoJOb1xu29Fxw==", + "version": "4.9.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.9.1.tgz", + "integrity": "sha512-6vMdBZqtq1dVQ4CWdhFwhKZL6E4L1dV6jUjuBvsavvNJSppzi6dLBbuV+3+IyUREaj9ZFvQefnQm28v4OCXlig==", "cpu": [ "arm" ], @@ -2832,9 +2832,9 @@ ] }, "node_modules/@rollup/rollup-android-arm64": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.7.0.tgz", - "integrity": "sha512-/EBw0cuJ/KVHiU2qyVYUhogXz7W2vXxBzeE9xtVIMC+RyitlY2vvaoysMUqASpkUtoNIHlnKTu/l7mXOPgnKOA==", + "version": "4.9.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.9.1.tgz", + "integrity": "sha512-Jto9Fl3YQ9OLsTDWtLFPtaIMSL2kwGyGoVCmPC8Gxvym9TCZm4Sie+cVeblPO66YZsYH8MhBKDMGZ2NDxuk/XQ==", "cpu": [ "arm64" ], @@ -2845,9 +2845,9 @@ ] }, "node_modules/@rollup/rollup-darwin-arm64": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.7.0.tgz", - "integrity": "sha512-4VXG1bgvClJdbEYYjQ85RkOtwN8sqI3uCxH0HC5w9fKdqzRzgG39K7GAehATGS8jghA7zNoS5CjSKkDEqWmNZg==", + "version": "4.9.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.9.1.tgz", + "integrity": "sha512-LtYcLNM+bhsaKAIGwVkh5IOWhaZhjTfNOkGzGqdHvhiCUVuJDalvDxEdSnhFzAn+g23wgsycmZk1vbnaibZwwA==", "cpu": [ "arm64" ], @@ -2858,9 +2858,9 @@ ] }, "node_modules/@rollup/rollup-darwin-x64": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.7.0.tgz", - "integrity": "sha512-/ImhO+T/RWJ96hUbxiCn2yWI0/MeQZV/aeukQQfhxiSXuZJfyqtdHPUPrc84jxCfXTxbJLmg4q+GBETeb61aNw==", + "version": "4.9.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.9.1.tgz", + "integrity": "sha512-KyP/byeXu9V+etKO6Lw3E4tW4QdcnzDG/ake031mg42lob5tN+5qfr+lkcT/SGZaH2PdW4Z1NX9GHEkZ8xV7og==", "cpu": [ "x64" ], @@ -2871,9 +2871,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm-gnueabihf": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.7.0.tgz", - "integrity": "sha512-zhye8POvTyUXlKbfPBVqoHy3t43gIgffY+7qBFqFxNqVtltQLtWeHNAbrMnXiLIfYmxcoL/feuLDote2tx+Qbg==", + "version": "4.9.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.9.1.tgz", + "integrity": "sha512-Yqz/Doumf3QTKplwGNrCHe/B2p9xqDghBZSlAY0/hU6ikuDVQuOUIpDP/YcmoT+447tsZTmirmjgG3znvSCR0Q==", "cpu": [ "arm" ], @@ -2884,9 +2884,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-gnu": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.7.0.tgz", - "integrity": "sha512-RAdr3OJnUum6Vs83cQmKjxdTg31zJnLLTkjhcFt0auxM6jw00GD6IPFF42uasYPr/wGC6TRm7FsQiJyk0qIEfg==", + "version": "4.9.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.9.1.tgz", + "integrity": "sha512-u3XkZVvxcvlAOlQJ3UsD1rFvLWqu4Ef/Ggl40WAVCuogf4S1nJPHh5RTgqYFpCOvuGJ7H5yGHabjFKEZGExk5Q==", "cpu": [ "arm64" ], @@ -2897,9 +2897,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-musl": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.7.0.tgz", - "integrity": "sha512-nhWwYsiJwZGq7SyR3afS3EekEOsEAlrNMpPC4ZDKn5ooYSEjDLe9W/xGvoIV8/F/+HNIY6jY8lIdXjjxfxopXw==", + "version": "4.9.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.9.1.tgz", + "integrity": "sha512-0XSYN/rfWShW+i+qjZ0phc6vZ7UWI8XWNz4E/l+6edFt+FxoEghrJHjX1EY/kcUGCnZzYYRCl31SNdfOi450Aw==", "cpu": [ "arm64" ], @@ -2910,9 +2910,9 @@ ] }, "node_modules/@rollup/rollup-linux-riscv64-gnu": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.7.0.tgz", - "integrity": "sha512-rlfy5RnQG1aop1BL/gjdH42M2geMUyVQqd52GJVirqYc787A/XVvl3kQ5NG/43KXgOgE9HXgCaEH05kzQ+hLoA==", + "version": "4.9.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.9.1.tgz", + "integrity": "sha512-LmYIO65oZVfFt9t6cpYkbC4d5lKHLYv5B4CSHRpnANq0VZUQXGcCPXHzbCXCz4RQnx7jvlYB1ISVNCE/omz5cw==", "cpu": [ "riscv64" ], @@ -2923,9 +2923,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-gnu": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.7.0.tgz", - "integrity": "sha512-cCkoGlGWfBobdDtiiypxf79q6k3/iRVGu1HVLbD92gWV5WZbmuWJCgRM4x2N6i7ljGn1cGytPn9ZAfS8UwF6vg==", + "version": "4.9.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.9.1.tgz", + "integrity": "sha512-kr8rEPQ6ns/Lmr/hiw8sEVj9aa07gh1/tQF2Y5HrNCCEPiCBGnBUt9tVusrcBBiJfIt1yNaXN6r1CCmpbFEDpg==", "cpu": [ "x64" ], @@ -2936,9 +2936,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-musl": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.7.0.tgz", - "integrity": "sha512-R2oBf2p/Arc1m+tWmiWbpHBjEcJnHVnv6bsypu4tcKdrYTpDfl1UT9qTyfkIL1iiii5D4WHxUHCg5X0pzqmxFg==", + "version": "4.9.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.9.1.tgz", + "integrity": "sha512-t4QSR7gN+OEZLG0MiCgPqMWZGwmeHhsM4AkegJ0Kiy6TnJ9vZ8dEIwHw1LcZKhbHxTY32hp9eVCMdR3/I8MGRw==", "cpu": [ "x64" ], @@ -2949,9 +2949,9 @@ ] }, "node_modules/@rollup/rollup-win32-arm64-msvc": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.7.0.tgz", - "integrity": "sha512-CPtgaQL1aaPc80m8SCVEoxFGHxKYIt3zQYC3AccL/SqqiWXblo3pgToHuBwR8eCP2Toa+X1WmTR/QKFMykws7g==", + "version": "4.9.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.9.1.tgz", + "integrity": "sha512-7XI4ZCBN34cb+BH557FJPmh0kmNz2c25SCQeT9OiFWEgf8+dL6ZwJ8f9RnUIit+j01u07Yvrsuu1rZGxJCc51g==", "cpu": [ "arm64" ], @@ -2962,9 +2962,9 @@ ] }, "node_modules/@rollup/rollup-win32-ia32-msvc": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.7.0.tgz", - "integrity": "sha512-pmioUlttNh9GXF5x2CzNa7Z8kmRTyhEzzAC+2WOOapjewMbl+3tGuAnxbwc5JyG8Jsz2+hf/QD/n5VjimOZ63g==", + "version": "4.9.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.9.1.tgz", + "integrity": "sha512-yE5c2j1lSWOH5jp+Q0qNL3Mdhr8WuqCNVjc6BxbVfS5cAS6zRmdiw7ktb8GNpDCEUJphILY6KACoFoRtKoqNQg==", "cpu": [ "ia32" ], @@ -2975,9 +2975,9 @@ ] }, "node_modules/@rollup/rollup-win32-x64-msvc": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.7.0.tgz", - "integrity": "sha512-SeZzC2QhhdBQUm3U0c8+c/P6UlRyBcLL2Xp5KX7z46WXZxzR8RJSIWL9wSUeBTgxog5LTPJuPj0WOT9lvrtP7Q==", + "version": "4.9.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.9.1.tgz", + "integrity": "sha512-PyJsSsafjmIhVgaI1Zdj7m8BB8mMckFah/xbpplObyHfiXzKcI5UOUXRyOdHW7nz4DpMCuzLnF7v5IWHenCwYA==", "cpu": [ "x64" ], @@ -2988,9 +2988,9 @@ ] }, "node_modules/@rushstack/eslint-patch": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.6.0.tgz", - "integrity": "sha512-2/U3GXA6YiPYQDLGwtGlnNgKYBSwCFIHf8Y9LUY5VATHdtbLlU0Y1R3QoBnT0aB4qv/BEiVVsj7LJXoQCgJ2vA==", + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.6.1.tgz", + "integrity": "sha512-UY+FGM/2jjMkzQLn8pxcHGMaVLh9aEitG3zY2CiY7XHdLiz3bZOwa6oDxNqEMv7zZkV+cj5DOdz0cQ1BP5Hjgw==", "dev": true }, "node_modules/@swc/helpers": { @@ -3188,16 +3188,16 @@ "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "6.13.2", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.13.2.tgz", - "integrity": "sha512-3+9OGAWHhk4O1LlcwLBONbdXsAhLjyCFogJY/cWy2lxdVJ2JrcTF2pTGMaLl2AE7U1l31n8Py4a8bx5DLf/0dQ==", + "version": "6.14.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.14.0.tgz", + "integrity": "sha512-1ZJBykBCXaSHG94vMMKmiHoL0MhNHKSVlcHVYZNw+BKxufhqQVTOawNpwwI1P5nIFZ/4jLVop0mcY6mJJDFNaw==", "dev": true, "dependencies": { "@eslint-community/regexpp": "^4.5.1", - "@typescript-eslint/scope-manager": "6.13.2", - "@typescript-eslint/type-utils": "6.13.2", - "@typescript-eslint/utils": "6.13.2", - "@typescript-eslint/visitor-keys": "6.13.2", + "@typescript-eslint/scope-manager": "6.14.0", + "@typescript-eslint/type-utils": "6.14.0", + "@typescript-eslint/utils": "6.14.0", + "@typescript-eslint/visitor-keys": "6.14.0", "debug": "^4.3.4", "graphemer": "^1.4.0", "ignore": "^5.2.4", @@ -3223,15 +3223,15 @@ } }, "node_modules/@typescript-eslint/parser": { - "version": "6.13.2", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.13.2.tgz", - "integrity": "sha512-MUkcC+7Wt/QOGeVlM8aGGJZy1XV5YKjTpq9jK6r6/iLsGXhBVaGP5N0UYvFsu9BFlSpwY9kMretzdBH01rkRXg==", + "version": "6.14.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.14.0.tgz", + "integrity": "sha512-QjToC14CKacd4Pa7JK4GeB/vHmWFJckec49FR4hmIRf97+KXole0T97xxu9IFiPxVQ1DBWrQ5wreLwAGwWAVQA==", "dev": true, "dependencies": { - "@typescript-eslint/scope-manager": "6.13.2", - "@typescript-eslint/types": "6.13.2", - "@typescript-eslint/typescript-estree": "6.13.2", - "@typescript-eslint/visitor-keys": "6.13.2", + "@typescript-eslint/scope-manager": "6.14.0", + "@typescript-eslint/types": "6.14.0", + "@typescript-eslint/typescript-estree": "6.14.0", + "@typescript-eslint/visitor-keys": "6.14.0", "debug": "^4.3.4" }, "engines": { @@ -3251,13 +3251,13 @@ } }, "node_modules/@typescript-eslint/scope-manager": { - "version": "6.13.2", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.13.2.tgz", - "integrity": "sha512-CXQA0xo7z6x13FeDYCgBkjWzNqzBn8RXaE3QVQVIUm74fWJLkJkaHmHdKStrxQllGh6Q4eUGyNpMe0b1hMkXFA==", + "version": "6.14.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.14.0.tgz", + "integrity": "sha512-VT7CFWHbZipPncAZtuALr9y3EuzY1b1t1AEkIq2bTXUPKw+pHoXflGNG5L+Gv6nKul1cz1VH8fz16IThIU0tdg==", "dev": true, "dependencies": { - "@typescript-eslint/types": "6.13.2", - "@typescript-eslint/visitor-keys": "6.13.2" + "@typescript-eslint/types": "6.14.0", + "@typescript-eslint/visitor-keys": "6.14.0" }, "engines": { "node": "^16.0.0 || >=18.0.0" @@ -3268,13 +3268,13 @@ } }, "node_modules/@typescript-eslint/type-utils": { - "version": "6.13.2", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.13.2.tgz", - "integrity": "sha512-Qr6ssS1GFongzH2qfnWKkAQmMUyZSyOr0W54nZNU1MDfo+U4Mv3XveeLZzadc/yq8iYhQZHYT+eoXJqnACM1tw==", + "version": "6.14.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.14.0.tgz", + "integrity": "sha512-x6OC9Q7HfYKqjnuNu5a7kffIYs3No30isapRBJl1iCHLitD8O0lFbRcVGiOcuyN837fqXzPZ1NS10maQzZMKqw==", "dev": true, "dependencies": { - "@typescript-eslint/typescript-estree": "6.13.2", - "@typescript-eslint/utils": "6.13.2", + "@typescript-eslint/typescript-estree": "6.14.0", + "@typescript-eslint/utils": "6.14.0", "debug": "^4.3.4", "ts-api-utils": "^1.0.1" }, @@ -3295,9 +3295,9 @@ } }, "node_modules/@typescript-eslint/types": { - "version": "6.13.2", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.13.2.tgz", - "integrity": "sha512-7sxbQ+EMRubQc3wTfTsycgYpSujyVbI1xw+3UMRUcrhSy+pN09y/lWzeKDbvhoqcRbHdc+APLs/PWYi/cisLPg==", + "version": "6.14.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.14.0.tgz", + "integrity": "sha512-uty9H2K4Xs8E47z3SnXEPRNDfsis8JO27amp2GNCnzGETEW3yTqEIVg5+AI7U276oGF/tw6ZA+UesxeQ104ceA==", "dev": true, "engines": { "node": "^16.0.0 || >=18.0.0" @@ -3308,13 +3308,13 @@ } }, "node_modules/@typescript-eslint/typescript-estree": { - "version": "6.13.2", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.13.2.tgz", - "integrity": "sha512-SuD8YLQv6WHnOEtKv8D6HZUzOub855cfPnPMKvdM/Bh1plv1f7Q/0iFUDLKKlxHcEstQnaUU4QZskgQq74t+3w==", + "version": "6.14.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.14.0.tgz", + "integrity": "sha512-yPkaLwK0yH2mZKFE/bXkPAkkFgOv15GJAUzgUVonAbv0Hr4PK/N2yaA/4XQbTZQdygiDkpt5DkxPELqHguNvyw==", "dev": true, "dependencies": { - "@typescript-eslint/types": "6.13.2", - "@typescript-eslint/visitor-keys": "6.13.2", + "@typescript-eslint/types": "6.14.0", + "@typescript-eslint/visitor-keys": "6.14.0", "debug": "^4.3.4", "globby": "^11.1.0", "is-glob": "^4.0.3", @@ -3335,17 +3335,17 @@ } }, "node_modules/@typescript-eslint/utils": { - "version": "6.13.2", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.13.2.tgz", - "integrity": "sha512-b9Ptq4eAZUym4idijCRzl61oPCwwREcfDI8xGk751Vhzig5fFZR9CyzDz4Sp/nxSLBYxUPyh4QdIDqWykFhNmQ==", + "version": "6.14.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.14.0.tgz", + "integrity": "sha512-XwRTnbvRr7Ey9a1NT6jqdKX8y/atWG+8fAIu3z73HSP8h06i3r/ClMhmaF/RGWGW1tHJEwij1uEg2GbEmPYvYg==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.4.0", "@types/json-schema": "^7.0.12", "@types/semver": "^7.5.0", - "@typescript-eslint/scope-manager": "6.13.2", - "@typescript-eslint/types": "6.13.2", - "@typescript-eslint/typescript-estree": "6.13.2", + "@typescript-eslint/scope-manager": "6.14.0", + "@typescript-eslint/types": "6.14.0", + "@typescript-eslint/typescript-estree": "6.14.0", "semver": "^7.5.4" }, "engines": { @@ -3360,12 +3360,12 @@ } }, "node_modules/@typescript-eslint/visitor-keys": { - "version": "6.13.2", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.13.2.tgz", - "integrity": "sha512-OGznFs0eAQXJsp+xSd6k/O1UbFi/K/L7WjqeRoFE7vadjAF9y0uppXhYNQNEqygjou782maGClOoZwPqF0Drlw==", + "version": "6.14.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.14.0.tgz", + "integrity": "sha512-fB5cw6GRhJUz03MrROVuj5Zm/Q+XWlVdIsFj+Zb1Hvqouc8t+XP2H5y53QYU/MGtd2dPg6/vJJlhoX3xc2ehfw==", "dev": true, "dependencies": { - "@typescript-eslint/types": "6.13.2", + "@typescript-eslint/types": "6.14.0", "eslint-visitor-keys": "^3.4.1" }, "engines": { @@ -3908,9 +3908,9 @@ ] }, "node_modules/basic-ftp": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/basic-ftp/-/basic-ftp-5.0.3.tgz", - "integrity": "sha512-QHX8HLlncOLpy54mh+k/sWIFd0ThmRqwe9ZjELybGZK+tZ8rUb9VO0saKJUROTbE+KhzDUT7xziGpGrW8Kmd+g==", + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/basic-ftp/-/basic-ftp-5.0.4.tgz", + "integrity": "sha512-8PzkB0arJFV4jJWSGOYR+OEic6aeKMu/osRhBULN6RY0ykby6LKhbmuQ5ublvaas5BOwboah5D87nrHyuh8PPA==", "dev": true, "engines": { "node": ">=10.0.0" @@ -4182,9 +4182,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001566", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001566.tgz", - "integrity": "sha512-ggIhCsTxmITBAMmK8yZjEhCO5/47jKXPu6Dha/wuCS4JePVL+3uiDEBuhu2aIoT+bqTOR8L76Ip1ARL9xYsEJA==", + "version": "1.0.30001570", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001570.tgz", + "integrity": "sha512-+3e0ASu4sw1SWaoCtvPeyXp+5PsjigkSt8OXZbF9StH5pQWbxEjLAZE3n8Aup5udop1uRiKA7a4utUk/uoSpUw==", "funding": [ { "type": "opencollective", @@ -4718,9 +4718,9 @@ "dev": true }, "node_modules/cytoscape": { - "version": "3.27.0", - "resolved": "https://registry.npmjs.org/cytoscape/-/cytoscape-3.27.0.tgz", - "integrity": "sha512-pPZJilfX9BxESwujODz5pydeGi+FBrXq1rcaB1mfhFXXFJ9GjE6CNndAk+8jPzoXGD+16LtSS4xlYEIUiW4Abg==", + "version": "3.28.0", + "resolved": "https://registry.npmjs.org/cytoscape/-/cytoscape-3.28.0.tgz", + "integrity": "sha512-x7+BHQXN90Audv5xXvdOECmiKuZdeKeoqOmDuYoht4zDKSdObC0Z9AdJXFkXEQvXU8UndI6WnTz47TRI7duReg==", "dependencies": { "heap": "^0.2.6", "lodash": "^4.17.21" @@ -5680,9 +5680,9 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.608", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.608.tgz", - "integrity": "sha512-J2f/3iIIm3Mo0npneITZ2UPe4B1bg8fTNrFjD8715F/k1BvbviRuqYGkET1PgprrczXYTHFvotbBOmUp6KE0uA==", + "version": "1.4.614", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.614.tgz", + "integrity": "sha512-X4ze/9Sc3QWs6h92yerwqv7aB/uU8vCjZcrMjA8N9R1pjMFRe44dLsck5FzLilOYvcXuDn93B+bpGYyufc70gQ==", "dev": true }, "node_modules/elkjs": { @@ -5870,9 +5870,9 @@ } }, "node_modules/esbuild": { - "version": "0.19.8", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.19.8.tgz", - "integrity": "sha512-l7iffQpT2OrZfH2rXIp7/FkmaeZM0vxbxN9KfiCwGYuZqzMg/JdvX26R31Zxn/Pxvsrg3Y9N6XTcnknqDyyv4w==", + "version": "0.19.9", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.19.9.tgz", + "integrity": "sha512-U9CHtKSy+EpPsEBa+/A2gMs/h3ylBC0H0KSqIg7tpztHerLi6nrrcoUJAkNCEPumx8yJ+Byic4BVwHgRbN0TBg==", "dev": true, "hasInstallScript": true, "bin": { @@ -5882,28 +5882,28 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.19.8", - "@esbuild/android-arm64": "0.19.8", - "@esbuild/android-x64": "0.19.8", - "@esbuild/darwin-arm64": "0.19.8", - "@esbuild/darwin-x64": "0.19.8", - "@esbuild/freebsd-arm64": "0.19.8", - "@esbuild/freebsd-x64": "0.19.8", - "@esbuild/linux-arm": "0.19.8", - "@esbuild/linux-arm64": "0.19.8", - "@esbuild/linux-ia32": "0.19.8", - "@esbuild/linux-loong64": "0.19.8", - "@esbuild/linux-mips64el": "0.19.8", - "@esbuild/linux-ppc64": "0.19.8", - "@esbuild/linux-riscv64": "0.19.8", - "@esbuild/linux-s390x": "0.19.8", - "@esbuild/linux-x64": "0.19.8", - "@esbuild/netbsd-x64": "0.19.8", - "@esbuild/openbsd-x64": "0.19.8", - "@esbuild/sunos-x64": "0.19.8", - "@esbuild/win32-arm64": "0.19.8", - "@esbuild/win32-ia32": "0.19.8", - "@esbuild/win32-x64": "0.19.8" + "@esbuild/android-arm": "0.19.9", + "@esbuild/android-arm64": "0.19.9", + "@esbuild/android-x64": "0.19.9", + "@esbuild/darwin-arm64": "0.19.9", + "@esbuild/darwin-x64": "0.19.9", + "@esbuild/freebsd-arm64": "0.19.9", + "@esbuild/freebsd-x64": "0.19.9", + "@esbuild/linux-arm": "0.19.9", + "@esbuild/linux-arm64": "0.19.9", + "@esbuild/linux-ia32": "0.19.9", + "@esbuild/linux-loong64": "0.19.9", + "@esbuild/linux-mips64el": "0.19.9", + "@esbuild/linux-ppc64": "0.19.9", + "@esbuild/linux-riscv64": "0.19.9", + "@esbuild/linux-s390x": "0.19.9", + "@esbuild/linux-x64": "0.19.9", + "@esbuild/netbsd-x64": "0.19.9", + "@esbuild/openbsd-x64": "0.19.9", + "@esbuild/sunos-x64": "0.19.9", + "@esbuild/win32-arm64": "0.19.9", + "@esbuild/win32-ia32": "0.19.9", + "@esbuild/win32-x64": "0.19.9" } }, "node_modules/escalade": { @@ -6151,9 +6151,9 @@ } }, "node_modules/eslint-plugin-import": { - "version": "2.29.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.29.0.tgz", - "integrity": "sha512-QPOO5NO6Odv5lpoTkddtutccQjysJuFxoPS7fAHO+9m9udNHvTCPSAMW9zGAYj8lAIdr40I8yPCdUYrncXtrwg==", + "version": "2.29.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.29.1.tgz", + "integrity": "sha512-BbPC0cuExzhiMo4Ff1BTVwHpjjv28C5R+btTOGaCRC7UEz801up0JadwkeSk5Ued6TG34uaczuVuH6qyy5YUxw==", "dev": true, "dependencies": { "array-includes": "^3.1.7", @@ -6172,7 +6172,7 @@ "object.groupby": "^1.0.1", "object.values": "^1.1.7", "semver": "^6.3.1", - "tsconfig-paths": "^3.14.2" + "tsconfig-paths": "^3.15.0" }, "engines": { "node": ">=4" @@ -7329,11 +7329,6 @@ "toad-cache": "^3.3.0" } }, - "node_modules/fastify/node_modules/process-warning": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/process-warning/-/process-warning-3.0.0.tgz", - "integrity": "sha512-mqn0kFRl0EoqhnL0GQ0veqFHyIN1yig9RHh/InzORTUiZHFRAur+aMtRkELNwGs9aNwKS6tg/An4NYBPGwvtzQ==" - }, "node_modules/fastq": { "version": "1.15.0", "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", @@ -7852,9 +7847,9 @@ } }, "node_modules/globals": { - "version": "13.23.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.23.0.tgz", - "integrity": "sha512-XAmF0RjlrjY23MA51q3HltdlGxUpXPvg0GioKiD9X6HD28iMjo2dKC8Vqwm7lne4GNr78+RHTfliktR6ZH09wA==", + "version": "13.24.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", + "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", "dev": true, "dependencies": { "type-fest": "^0.20.2" @@ -9445,6 +9440,11 @@ "set-cookie-parser": "^2.4.1" } }, + "node_modules/light-my-request/node_modules/process-warning": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/process-warning/-/process-warning-2.3.2.tgz", + "integrity": "sha512-n9wh8tvBe5sFmsqlg+XQhaQLumwpqoAUruLwjCopgTmUBjJ/fjtBsJzKleCaIGBOMXYEhp1YfKl4d7rJ5ZKJGA==" + }, "node_modules/lilconfig": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-3.0.0.tgz", @@ -11700,9 +11700,9 @@ } }, "node_modules/openai": { - "version": "4.20.1", - "resolved": "https://registry.npmjs.org/openai/-/openai-4.20.1.tgz", - "integrity": "sha512-Dd3q8EvINfganZFtg6V36HjrMaihqRgIcKiHua4Nq9aw/PxOP48dhbsk8x5klrxajt5Lpnc1KTOG5i1S6BKAJA==", + "version": "4.23.0", + "resolved": "https://registry.npmjs.org/openai/-/openai-4.23.0.tgz", + "integrity": "sha512-ey2CXh1OTcTUa0AWZWuTpgA9t5GuAG3DVU1MofCRUI7fQJij8XJ3Sr0VtgxoAE69C9wbHBMCux8Z/IQZfSwHiA==", "peer": true, "dependencies": { "@types/node": "^18.11.18", @@ -12098,6 +12098,11 @@ "resolved": "https://registry.npmjs.org/pino-std-serializers/-/pino-std-serializers-6.2.2.tgz", "integrity": "sha512-cHjPPsE+vhj/tnhCy/wiMh3M3z3h/j15zHQX+S9GkTBgqJuTuJzYJ4gUyACLhDaJ7kk9ba9iRDmbH2tJU03OiA==" }, + "node_modules/pino/node_modules/process-warning": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/process-warning/-/process-warning-2.3.2.tgz", + "integrity": "sha512-n9wh8tvBe5sFmsqlg+XQhaQLumwpqoAUruLwjCopgTmUBjJ/fjtBsJzKleCaIGBOMXYEhp1YfKl4d7rJ5ZKJGA==" + }, "node_modules/pirates": { "version": "4.0.6", "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz", @@ -12569,9 +12574,9 @@ } }, "node_modules/process-warning": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/process-warning/-/process-warning-2.3.2.tgz", - "integrity": "sha512-n9wh8tvBe5sFmsqlg+XQhaQLumwpqoAUruLwjCopgTmUBjJ/fjtBsJzKleCaIGBOMXYEhp1YfKl4d7rJ5ZKJGA==" + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/process-warning/-/process-warning-3.0.0.tgz", + "integrity": "sha512-mqn0kFRl0EoqhnL0GQ0veqFHyIN1yig9RHh/InzORTUiZHFRAur+aMtRkELNwGs9aNwKS6tg/An4NYBPGwvtzQ==" }, "node_modules/promptly": { "version": "2.2.0", @@ -12810,9 +12815,9 @@ } }, "node_modules/readable-stream": { - "version": "4.4.2", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.4.2.tgz", - "integrity": "sha512-Lk/fICSyIhodxy1IDK2HazkeGjSmezAWX2egdtJnYhtzKEsBPJowlI6F6LPb5tqIQILrMbx22S5o3GuJavPusA==", + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.5.0.tgz", + "integrity": "sha512-AeYh93VyUwnNI/HCB4XdAaP4N/yGgg3rci3ISEUSM0jN95yWpbL9tSuRIwHzCq7e6TzYwJ6Vn7viUYTsfIxBlQ==", "dependencies": { "abort-controller": "^3.0.0", "buffer": "^6.0.3", @@ -12895,9 +12900,9 @@ } }, "node_modules/regenerator-runtime": { - "version": "0.14.0", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.0.tgz", - "integrity": "sha512-srw17NI0TUWHuGa5CFGGmhfNIeja30WMBfbslPNhf6JrqQlLN5gcrvig1oqPxiVaXb0oW0XRKtH6Nngs5lKCIA==" + "version": "0.14.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz", + "integrity": "sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==" }, "node_modules/regexp-tree": { "version": "0.1.27", @@ -13346,9 +13351,9 @@ "integrity": "sha512-IXgzBWvWQwE6PrDI05OvmXUIruQTcoMDzRsOd5CDvHCVLcLHMTSYvOK5Cm46kWqlV3yAbuSpBZdJ5oP5OUoStg==" }, "node_modules/rollup": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.7.0.tgz", - "integrity": "sha512-7Kw0dUP4BWH78zaZCqF1rPyQ8D5DSU6URG45v1dqS/faNsx9WXyess00uTOZxKr7oR/4TOjO1CPudT8L1UsEgw==", + "version": "4.9.1", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.9.1.tgz", + "integrity": "sha512-pgPO9DWzLoW/vIhlSoDByCzcpX92bKEorbgXuZrqxByte3JFk2xSW2JEeAcyLc9Ru9pqcNNW+Ob7ntsk2oT/Xw==", "dev": true, "bin": { "rollup": "dist/bin/rollup" @@ -13358,19 +13363,19 @@ "npm": ">=8.0.0" }, "optionalDependencies": { - "@rollup/rollup-android-arm-eabi": "4.7.0", - "@rollup/rollup-android-arm64": "4.7.0", - "@rollup/rollup-darwin-arm64": "4.7.0", - "@rollup/rollup-darwin-x64": "4.7.0", - "@rollup/rollup-linux-arm-gnueabihf": "4.7.0", - "@rollup/rollup-linux-arm64-gnu": "4.7.0", - "@rollup/rollup-linux-arm64-musl": "4.7.0", - "@rollup/rollup-linux-riscv64-gnu": "4.7.0", - "@rollup/rollup-linux-x64-gnu": "4.7.0", - "@rollup/rollup-linux-x64-musl": "4.7.0", - "@rollup/rollup-win32-arm64-msvc": "4.7.0", - "@rollup/rollup-win32-ia32-msvc": "4.7.0", - "@rollup/rollup-win32-x64-msvc": "4.7.0", + "@rollup/rollup-android-arm-eabi": "4.9.1", + "@rollup/rollup-android-arm64": "4.9.1", + "@rollup/rollup-darwin-arm64": "4.9.1", + "@rollup/rollup-darwin-x64": "4.9.1", + "@rollup/rollup-linux-arm-gnueabihf": "4.9.1", + "@rollup/rollup-linux-arm64-gnu": "4.9.1", + "@rollup/rollup-linux-arm64-musl": "4.9.1", + "@rollup/rollup-linux-riscv64-gnu": "4.9.1", + "@rollup/rollup-linux-x64-gnu": "4.9.1", + "@rollup/rollup-linux-x64-musl": "4.9.1", + "@rollup/rollup-win32-arm64-msvc": "4.9.1", + "@rollup/rollup-win32-ia32-msvc": "4.9.1", + "@rollup/rollup-win32-x64-msvc": "4.9.1", "fsevents": "~2.3.2" } }, @@ -13705,9 +13710,9 @@ } }, "node_modules/shiki": { - "version": "0.14.6", - "resolved": "https://registry.npmjs.org/shiki/-/shiki-0.14.6.tgz", - "integrity": "sha512-R4koBBlQP33cC8cpzX0hAoOURBHJILp4Aaduh2eYi+Vj8ZBqtK/5SWNEHBS3qwUMu8dqOtI/ftno3ESfNeVW9g==", + "version": "0.14.7", + "resolved": "https://registry.npmjs.org/shiki/-/shiki-0.14.7.tgz", + "integrity": "sha512-dNPAPrxSc87ua2sKJ3H5dQ/6ZaY8RNnaAqK+t0eG7p0Soi2ydiqbGOTaZCqaYvA/uZYfS1LJnemt3Q+mSfcPCg==", "dependencies": { "ansi-sequence-parser": "^1.1.0", "jsonc-parser": "^3.2.0", @@ -14795,9 +14800,9 @@ "dev": true }, "node_modules/tsconfig-paths": { - "version": "3.14.2", - "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.14.2.tgz", - "integrity": "sha512-o/9iXgCYc5L/JxCHPe3Hvh8Q/2xm5Z+p18PESBU6Ff33695QnCHBEjcytY2q19ua7Mbl/DavtBOLq+oG0RCL+g==", + "version": "3.15.0", + "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.15.0.tgz", + "integrity": "sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==", "dev": true, "dependencies": { "@types/json5": "^0.0.29", From afa5593db33cd4f669cffea7c6c14f59bac083a6 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 19 Dec 2023 06:29:28 +0300 Subject: [PATCH 030/458] Bump redis from 4.6.11 to 4.6.12 (#228) Bumps [redis](https://github.com/redis/node-redis) from 4.6.11 to 4.6.12. - [Release notes](https://github.com/redis/node-redis/releases) - [Changelog](https://github.com/redis/node-redis/blob/master/CHANGELOG.md) - [Commits](https://github.com/redis/node-redis/compare/redis@4.6.11...redis@4.6.12) --- updated-dependencies: - dependency-name: redis dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- package-lock.json | 16 ++++++++-------- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index ea254167..0dc5c551 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -32,7 +32,7 @@ "eslint-config-neshca": "*", "fastify": "4.25.1", "pm2": "5.3.0", - "redis": "4.6.11", + "redis": "4.6.12", "rimraf": "5.0.5", "tsx": "4.6.2", "typescript": "5.3.3" diff --git a/package-lock.json b/package-lock.json index db039300..42b61362 100644 --- a/package-lock.json +++ b/package-lock.json @@ -53,7 +53,7 @@ "eslint-config-neshca": "*", "fastify": "4.25.1", "pm2": "5.3.0", - "redis": "4.6.11", + "redis": "4.6.12", "rimraf": "5.0.5", "tsx": "4.6.2", "typescript": "5.3.3" @@ -2774,9 +2774,9 @@ } }, "node_modules/@redis/client": { - "version": "1.5.12", - "resolved": "https://registry.npmjs.org/@redis/client/-/client-1.5.12.tgz", - "integrity": "sha512-/ZjE18HRzMd80eXIIUIPcH81UoZpwulbo8FmbElrjPqH0QC0SeIKu1BOU49bO5trM5g895kAjhvalt5h77q+4A==", + "version": "1.5.13", + "resolved": "https://registry.npmjs.org/@redis/client/-/client-1.5.13.tgz", + "integrity": "sha512-epkUM9D0Sdmt93/8Ozk43PNjLi36RZzG+d/T1Gdu5AI8jvghonTeLYV69WVWdilvFo+PYxbP0TZ0saMvr6nscQ==", "dependencies": { "cluster-key-slot": "1.1.2", "generic-pool": "3.9.0", @@ -12867,12 +12867,12 @@ } }, "node_modules/redis": { - "version": "4.6.11", - "resolved": "https://registry.npmjs.org/redis/-/redis-4.6.11.tgz", - "integrity": "sha512-kg1Lt4NZLYkAjPOj/WcyIGWfZfnyfKo1Wg9YKVSlzhFwxpFIl3LYI8BWy1Ab963LLDsTz2+OwdsesHKljB3WMQ==", + "version": "4.6.12", + "resolved": "https://registry.npmjs.org/redis/-/redis-4.6.12.tgz", + "integrity": "sha512-41Xuuko6P4uH4VPe5nE3BqXHB7a9lkFL0J29AlxKaIfD6eWO8VO/5PDF9ad2oS+mswMsfFxaM5DlE3tnXT+P8Q==", "dependencies": { "@redis/bloom": "1.2.0", - "@redis/client": "1.5.12", + "@redis/client": "1.5.13", "@redis/graph": "1.1.1", "@redis/json": "1.0.6", "@redis/search": "1.1.6", From e62c4bdff5de96daa9df4195488bcc7565e2b109 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 19 Dec 2023 06:48:06 +0300 Subject: [PATCH 031/458] Bump eslint from 8.55.0 to 8.56.0 (#229) Bumps [eslint](https://github.com/eslint/eslint) from 8.55.0 to 8.56.0. - [Release notes](https://github.com/eslint/eslint/releases) - [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md) - [Commits](https://github.com/eslint/eslint/compare/v8.55.0...v8.56.0) --- updated-dependencies: - dependency-name: eslint dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 16 ++++++++-------- package.json | 2 +- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/package-lock.json b/package-lock.json index 42b61362..5f71ec48 100644 --- a/package-lock.json +++ b/package-lock.json @@ -22,7 +22,7 @@ "@neshca/prettier-config": "*", "@neshca/tsconfig": "*", "diffscribe": "*", - "eslint": "8.55.0", + "eslint": "8.56.0", "glob": "10.3.10", "prettier": "3.1.1", "turbo": "1.10.16" @@ -1638,9 +1638,9 @@ } }, "node_modules/@eslint/js": { - "version": "8.55.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.55.0.tgz", - "integrity": "sha512-qQfo2mxH5yVom1kacMtZZJFVdW+E70mqHMJvVg6WTLo+VBuQJ4TojZlfWBjK0ve5BdEeNAVxOsl/nvNMpJOaJA==", + "version": "8.56.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.56.0.tgz", + "integrity": "sha512-gMsVel9D7f2HLkBma9VbtzZRehRogVRfbr++f06nL2vnCGCNlzOD+/MUov/F4p8myyAHspEhVobgjpX64q5m6A==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -5957,15 +5957,15 @@ } }, "node_modules/eslint": { - "version": "8.55.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.55.0.tgz", - "integrity": "sha512-iyUUAM0PCKj5QpwGfmCAG9XXbZCWsqP/eWAWrG/W0umvjuLRBECwSFdt+rCntju0xEH7teIABPwXpahftIaTdA==", + "version": "8.56.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.56.0.tgz", + "integrity": "sha512-Go19xM6T9puCOWntie1/P997aXxFsOi37JIHRWI514Hc6ZnaHGKY9xFhrU65RT6CcBEzZoGG1e6Nq+DT04ZtZQ==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.6.1", "@eslint/eslintrc": "^2.1.4", - "@eslint/js": "8.55.0", + "@eslint/js": "8.56.0", "@humanwhocodes/config-array": "^0.11.13", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", diff --git a/package.json b/package.json index 22a8d808..a03703b5 100644 --- a/package.json +++ b/package.json @@ -36,7 +36,7 @@ "@neshca/prettier-config": "*", "@neshca/tsconfig": "*", "diffscribe": "*", - "eslint": "8.55.0", + "eslint": "8.56.0", "glob": "10.3.10", "prettier": "3.1.1", "turbo": "1.10.16" From 0001420ac4a6c4f4e97958921ab89b77c9e56cf0 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 19 Dec 2023 07:05:49 +0300 Subject: [PATCH 032/458] Bump the definitely-typed group with 2 updates (#227) Bumps the definitely-typed group with 2 updates: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) and [@types/react-dom](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react-dom). Updates `@types/node` from 20.10.4 to 20.10.5 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) Updates `@types/react-dom` from 18.2.17 to 18.2.18 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react-dom) --- updated-dependencies: - dependency-name: "@types/node" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed - dependency-name: "@types/react-dom" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 4 +- docs/cache-handler-docs/package.json | 4 +- internal/backend/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 123 ++++---------------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 10 files changed, 36 insertions(+), 109 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 0dc5c551..e0b2c118 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -25,9 +25,9 @@ "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.0.5-canary.17", "@playwright/test": "1.40.1", - "@types/node": "20.10.4", + "@types/node": "20.10.5", "@types/react": "18.2.45", - "@types/react-dom": "18.2.17", + "@types/react-dom": "18.2.18", "dotenv-cli": "7.3.0", "eslint-config-neshca": "*", "fastify": "4.25.1", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 13478d33..b4ed41ae 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -19,9 +19,9 @@ "devDependencies": { "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.0.4", - "@types/node": "20.10.4", + "@types/node": "20.10.5", "@types/react": "18.2.45", - "@types/react-dom": "18.2.17", + "@types/react-dom": "18.2.18", "eslint-config-neshca": "*", "typescript": "5.3.3" } diff --git a/internal/backend/package.json b/internal/backend/package.json index ef87c11d..0f6af1de 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -16,7 +16,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.10.4", + "@types/node": "20.10.5", "eslint-config-neshca": "*", "pino-pretty": "10.3.0", "rimraf": "5.0.5", diff --git a/internal/next-common/package.json b/internal/next-common/package.json index e4a17ebf..ab7fbfc8 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -16,7 +16,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.10.4", + "@types/node": "20.10.5", "eslint-config-neshca": "*", "rimraf": "5.0.5", "typescript": "5.3.3" diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index 437041b2..909c3e3f 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -17,7 +17,7 @@ "devDependencies": { "@neshca/next-common": "*", "@neshca/tsconfig": "*", - "@types/node": "20.10.4", + "@types/node": "20.10.5", "eslint-config-neshca": "*", "rimraf": "5.0.5", "typescript": "5.3.3" diff --git a/package-lock.json b/package-lock.json index 5f71ec48..70caa1b3 100644 --- a/package-lock.json +++ b/package-lock.json @@ -46,9 +46,9 @@ "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.0.5-canary.17", "@playwright/test": "1.40.1", - "@types/node": "20.10.4", + "@types/node": "20.10.5", "@types/react": "18.2.45", - "@types/react-dom": "18.2.17", + "@types/react-dom": "18.2.18", "dotenv-cli": "7.3.0", "eslint-config-neshca": "*", "fastify": "4.25.1", @@ -59,15 +59,6 @@ "typescript": "5.3.3" } }, - "apps/cache-testing/node_modules/@types/node": { - "version": "20.10.4", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.4.tgz", - "integrity": "sha512-D08YG6rr8X90YB56tSIuBaddy/UXAA9RKJoFvrsnogAum/0pmjkgi4+2nx96A330FmioegBWmEYQ+syqCFaveg==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "apps/cache-testing/node_modules/next": { "version": "14.0.5-canary.17", "resolved": "https://registry.npmjs.org/next/-/next-14.0.5-canary.17.tgz", @@ -126,9 +117,9 @@ "devDependencies": { "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.0.4", - "@types/node": "20.10.4", + "@types/node": "20.10.5", "@types/react": "18.2.45", - "@types/react-dom": "18.2.17", + "@types/react-dom": "18.2.18", "eslint-config-neshca": "*", "typescript": "5.3.3" } @@ -142,15 +133,6 @@ "glob": "7.1.7" } }, - "docs/cache-handler-docs/node_modules/@types/node": { - "version": "20.10.4", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.4.tgz", - "integrity": "sha512-D08YG6rr8X90YB56tSIuBaddy/UXAA9RKJoFvrsnogAum/0pmjkgi4+2nx96A330FmioegBWmEYQ+syqCFaveg==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "docs/cache-handler-docs/node_modules/glob": { "version": "7.1.7", "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", @@ -261,7 +243,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.10.4", + "@types/node": "20.10.5", "eslint-config-neshca": "*", "pino-pretty": "10.3.0", "rimraf": "5.0.5", @@ -269,15 +251,6 @@ "typescript": "5.3.3" } }, - "internal/backend/node_modules/@types/node": { - "version": "20.10.4", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.4.tgz", - "integrity": "sha512-D08YG6rr8X90YB56tSIuBaddy/UXAA9RKJoFvrsnogAum/0pmjkgi4+2nx96A330FmioegBWmEYQ+syqCFaveg==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "internal/eslint-config-neshca": { "version": "0.0.0", "license": "MIT", @@ -378,21 +351,12 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.10.4", + "@types/node": "20.10.5", "eslint-config-neshca": "*", "rimraf": "5.0.5", "typescript": "5.3.3" } }, - "internal/next-common/node_modules/@types/node": { - "version": "20.10.4", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.4.tgz", - "integrity": "sha512-D08YG6rr8X90YB56tSIuBaddy/UXAA9RKJoFvrsnogAum/0pmjkgi4+2nx96A330FmioegBWmEYQ+syqCFaveg==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "internal/next-common/node_modules/next": { "version": "14.0.5-canary.17", "resolved": "https://registry.npmjs.org/next/-/next-14.0.5-canary.17.tgz", @@ -449,21 +413,12 @@ "devDependencies": { "@neshca/next-common": "*", "@neshca/tsconfig": "*", - "@types/node": "20.10.4", + "@types/node": "20.10.5", "eslint-config-neshca": "*", "rimraf": "5.0.5", "typescript": "5.3.3" } }, - "internal/next-lru-cache/node_modules/@types/node": { - "version": "20.10.4", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.4.tgz", - "integrity": "sha512-D08YG6rr8X90YB56tSIuBaddy/UXAA9RKJoFvrsnogAum/0pmjkgi4+2nx96A330FmioegBWmEYQ+syqCFaveg==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "internal/prettier-config": { "name": "@neshca/prettier-config", "version": "0.0.0", @@ -1854,6 +1809,11 @@ "fs-extra": "^8.1.0" } }, + "node_modules/@manypkg/find-root/node_modules/@types/node": { + "version": "12.20.55", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", + "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" + }, "node_modules/@manypkg/find-root/node_modules/fs-extra": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", @@ -3129,9 +3089,12 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "12.20.55", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", - "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" + "version": "20.10.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.5.tgz", + "integrity": "sha512-nNPsNE65wjMxEKI93yOP+NPGGBJz/PoN3kZsVLee0XMiJolxSekEVD8wRwBUBqkwc7UWop0edW50yrCQW4CyRw==", + "dependencies": { + "undici-types": "~5.26.4" + } }, "node_modules/@types/node-fetch": { "version": "2.6.9", @@ -3164,9 +3127,9 @@ } }, "node_modules/@types/react-dom": { - "version": "18.2.17", - "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.2.17.tgz", - "integrity": "sha512-rvrT/M7Df5eykWFxn6MYt5Pem/Dbyc1N8Y0S9Mrkw2WFCRiqUgw9P7ul2NpwsXCSM1DVdENzdG9J5SreqfAIWg==", + "version": "18.2.18", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.2.18.tgz", + "integrity": "sha512-TJxDm6OfAX2KJWJdMEVTwWke5Sc/E/RlnPGvGfS0W7+6ocy2xhDVQVh/KvC2Uf7kACs+gDytdusDSdWfWkaNzw==", "dev": true, "dependencies": { "@types/react": "*" @@ -16777,7 +16740,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@neshca/tsconfig": "*", - "@types/node": "20.10.4", + "@types/node": "20.10.5", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", @@ -16788,15 +16751,6 @@ "redis": ">=4.6" } }, - "packages/cache-handler/node_modules/@types/node": { - "version": "20.10.4", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.4.tgz", - "integrity": "sha512-D08YG6rr8X90YB56tSIuBaddy/UXAA9RKJoFvrsnogAum/0pmjkgi4+2nx96A330FmioegBWmEYQ+syqCFaveg==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "packages/diffscribe": { "version": "0.2.1", "license": "MIT", @@ -16805,7 +16759,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.10.4", + "@types/node": "20.10.5", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", @@ -16816,22 +16770,13 @@ "openai": "^4.12.3" } }, - "packages/diffscribe/node_modules/@types/node": { - "version": "20.10.4", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.4.tgz", - "integrity": "sha512-D08YG6rr8X90YB56tSIuBaddy/UXAA9RKJoFvrsnogAum/0pmjkgi4+2nx96A330FmioegBWmEYQ+syqCFaveg==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "packages/json-replacer-reviver": { "name": "@neshca/json-replacer-reviver", "version": "1.1.0", "license": "MIT", "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.10.4", + "@types/node": "20.10.5", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", @@ -16839,15 +16784,6 @@ "typescript": "5.3.3" } }, - "packages/json-replacer-reviver/node_modules/@types/node": { - "version": "20.10.4", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.4.tgz", - "integrity": "sha512-D08YG6rr8X90YB56tSIuBaddy/UXAA9RKJoFvrsnogAum/0pmjkgi4+2nx96A330FmioegBWmEYQ+syqCFaveg==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "packages/server": { "name": "@neshca/server", "version": "0.6.0", @@ -16863,22 +16799,13 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@neshca/tsconfig": "*", - "@types/node": "20.10.4", + "@types/node": "20.10.5", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", "tsx": "4.6.2", "typescript": "5.3.3" } - }, - "packages/server/node_modules/@types/node": { - "version": "20.10.4", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.4.tgz", - "integrity": "sha512-D08YG6rr8X90YB56tSIuBaddy/UXAA9RKJoFvrsnogAum/0pmjkgi4+2nx96A330FmioegBWmEYQ+syqCFaveg==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } } } } diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index f638310d..e8b2433f 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -59,7 +59,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@neshca/tsconfig": "*", - "@types/node": "20.10.4", + "@types/node": "20.10.5", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index 5e8c22a2..03d78b17 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -26,7 +26,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.10.4", + "@types/node": "20.10.5", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 4febec84..6cf72bc1 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -29,7 +29,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.10.4", + "@types/node": "20.10.5", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", diff --git a/packages/server/package.json b/packages/server/package.json index 1c1176cf..0f8f3717 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -33,7 +33,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@neshca/tsconfig": "*", - "@types/node": "20.10.4", + "@types/node": "20.10.5", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", From f918062877c11d1c8d7fabbe3d60e6a2708e5ad0 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 20 Dec 2023 15:08:59 +0300 Subject: [PATCH 033/458] Bump tsx from 4.6.2 to 4.7.0 (#232) Bumps [tsx](https://github.com/privatenumber/tsx) from 4.6.2 to 4.7.0. - [Release notes](https://github.com/privatenumber/tsx/releases) - [Changelog](https://github.com/privatenumber/tsx/blob/develop/release.config.cjs) - [Commits](https://github.com/privatenumber/tsx/compare/v4.6.2...v4.7.0) --- updated-dependencies: - dependency-name: tsx dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- internal/backend/package.json | 2 +- package-lock.json | 604 ++++---------------- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 5 files changed, 120 insertions(+), 492 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index e0b2c118..4f06610b 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -34,7 +34,7 @@ "pm2": "5.3.0", "redis": "4.6.12", "rimraf": "5.0.5", - "tsx": "4.6.2", + "tsx": "4.7.0", "typescript": "5.3.3" } } diff --git a/internal/backend/package.json b/internal/backend/package.json index 0f6af1de..a658a62f 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -20,7 +20,7 @@ "eslint-config-neshca": "*", "pino-pretty": "10.3.0", "rimraf": "5.0.5", - "tsx": "4.6.2", + "tsx": "4.7.0", "typescript": "5.3.3" } } diff --git a/package-lock.json b/package-lock.json index 70caa1b3..aa97cf97 100644 --- a/package-lock.json +++ b/package-lock.json @@ -55,7 +55,7 @@ "pm2": "5.3.0", "redis": "4.6.12", "rimraf": "5.0.5", - "tsx": "4.6.2", + "tsx": "4.7.0", "typescript": "5.3.3" } }, @@ -247,7 +247,7 @@ "eslint-config-neshca": "*", "pino-pretty": "10.3.0", "rimraf": "5.0.5", - "tsx": "4.6.2", + "tsx": "4.7.0", "typescript": "5.3.3" } }, @@ -1175,10 +1175,26 @@ "url": "https://github.com/prettier/prettier?sponsor=1" } }, + "node_modules/@esbuild/aix-ppc64": { + "version": "0.19.10", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.19.10.tgz", + "integrity": "sha512-Q+mk96KJ+FZ30h9fsJl+67IjNJm3x2eX+GBWGmocAKgzp27cowCOOqSdscX80s0SpdFXZnIv/+1xD1EctFx96Q==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=12" + } + }, "node_modules/@esbuild/android-arm": { - "version": "0.19.9", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.19.9.tgz", - "integrity": "sha512-jkYjjq7SdsWuNI6b5quymW0oC83NN5FdRPuCbs9HZ02mfVdAP8B8eeqLSYU3gb6OJEaY5CQabtTFbqBf26H3GA==", + "version": "0.19.10", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.19.10.tgz", + "integrity": "sha512-7W0bK7qfkw1fc2viBfrtAEkDKHatYfHzr/jKAHNr9BvkYDXPcC6bodtm8AyLJNNuqClLNaeTLuwURt4PRT9d7w==", "cpu": [ "arm" ], @@ -1192,9 +1208,9 @@ } }, "node_modules/@esbuild/android-arm64": { - "version": "0.19.9", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.19.9.tgz", - "integrity": "sha512-q4cR+6ZD0938R19MyEW3jEsMzbb/1rulLXiNAJQADD/XYp7pT+rOS5JGxvpRW8dFDEfjW4wLgC/3FXIw4zYglQ==", + "version": "0.19.10", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.19.10.tgz", + "integrity": "sha512-1X4CClKhDgC3by7k8aOWZeBXQX8dHT5QAMCAQDArCLaYfkppoARvh0fit3X2Qs+MXDngKcHv6XXyQCpY0hkK1Q==", "cpu": [ "arm64" ], @@ -1208,9 +1224,9 @@ } }, "node_modules/@esbuild/android-x64": { - "version": "0.19.9", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.19.9.tgz", - "integrity": "sha512-KOqoPntWAH6ZxDwx1D6mRntIgZh9KodzgNOy5Ebt9ghzffOk9X2c1sPwtM9P+0eXbefnDhqYfkh5PLP5ULtWFA==", + "version": "0.19.10", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.19.10.tgz", + "integrity": "sha512-O/nO/g+/7NlitUxETkUv/IvADKuZXyH4BHf/g/7laqKC4i/7whLpB0gvpPc2zpF0q9Q6FXS3TS75QHac9MvVWw==", "cpu": [ "x64" ], @@ -1224,9 +1240,9 @@ } }, "node_modules/@esbuild/darwin-arm64": { - "version": "0.19.9", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.19.9.tgz", - "integrity": "sha512-KBJ9S0AFyLVx2E5D8W0vExqRW01WqRtczUZ8NRu+Pi+87opZn5tL4Y0xT0mA4FtHctd0ZgwNoN639fUUGlNIWw==", + "version": "0.19.10", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.19.10.tgz", + "integrity": "sha512-YSRRs2zOpwypck+6GL3wGXx2gNP7DXzetmo5pHXLrY/VIMsS59yKfjPizQ4lLt5vEI80M41gjm2BxrGZ5U+VMA==", "cpu": [ "arm64" ], @@ -1240,9 +1256,9 @@ } }, "node_modules/@esbuild/darwin-x64": { - "version": "0.19.9", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.19.9.tgz", - "integrity": "sha512-vE0VotmNTQaTdX0Q9dOHmMTao6ObjyPm58CHZr1UK7qpNleQyxlFlNCaHsHx6Uqv86VgPmR4o2wdNq3dP1qyDQ==", + "version": "0.19.10", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.19.10.tgz", + "integrity": "sha512-alfGtT+IEICKtNE54hbvPg13xGBe4GkVxyGWtzr+yHO7HIiRJppPDhOKq3zstTcVf8msXb/t4eavW3jCDpMSmA==", "cpu": [ "x64" ], @@ -1256,9 +1272,9 @@ } }, "node_modules/@esbuild/freebsd-arm64": { - "version": "0.19.9", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.19.9.tgz", - "integrity": "sha512-uFQyd/o1IjiEk3rUHSwUKkqZwqdvuD8GevWF065eqgYfexcVkxh+IJgwTaGZVu59XczZGcN/YMh9uF1fWD8j1g==", + "version": "0.19.10", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.19.10.tgz", + "integrity": "sha512-dMtk1wc7FSH8CCkE854GyGuNKCewlh+7heYP/sclpOG6Cectzk14qdUIY5CrKDbkA/OczXq9WesqnPl09mj5dg==", "cpu": [ "arm64" ], @@ -1272,9 +1288,9 @@ } }, "node_modules/@esbuild/freebsd-x64": { - "version": "0.19.9", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.19.9.tgz", - "integrity": "sha512-WMLgWAtkdTbTu1AWacY7uoj/YtHthgqrqhf1OaEWnZb7PQgpt8eaA/F3LkV0E6K/Lc0cUr/uaVP/49iE4M4asA==", + "version": "0.19.10", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.19.10.tgz", + "integrity": "sha512-G5UPPspryHu1T3uX8WiOEUa6q6OlQh6gNl4CO4Iw5PS+Kg5bVggVFehzXBJY6X6RSOMS8iXDv2330VzaObm4Ag==", "cpu": [ "x64" ], @@ -1288,9 +1304,9 @@ } }, "node_modules/@esbuild/linux-arm": { - "version": "0.19.9", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.19.9.tgz", - "integrity": "sha512-C/ChPohUYoyUaqn1h17m/6yt6OB14hbXvT8EgM1ZWaiiTYz7nWZR0SYmMnB5BzQA4GXl3BgBO1l8MYqL/He3qw==", + "version": "0.19.10", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.19.10.tgz", + "integrity": "sha512-j6gUW5aAaPgD416Hk9FHxn27On28H4eVI9rJ4az7oCGTFW48+LcgNDBN+9f8rKZz7EEowo889CPKyeaD0iw9Kg==", "cpu": [ "arm" ], @@ -1304,9 +1320,9 @@ } }, "node_modules/@esbuild/linux-arm64": { - "version": "0.19.9", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.19.9.tgz", - "integrity": "sha512-PiPblfe1BjK7WDAKR1Cr9O7VVPqVNpwFcPWgfn4xu0eMemzRp442hXyzF/fSwgrufI66FpHOEJk0yYdPInsmyQ==", + "version": "0.19.10", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.19.10.tgz", + "integrity": "sha512-QxaouHWZ+2KWEj7cGJmvTIHVALfhpGxo3WLmlYfJ+dA5fJB6lDEIg+oe/0//FuyVHuS3l79/wyBxbHr0NgtxJQ==", "cpu": [ "arm64" ], @@ -1320,9 +1336,9 @@ } }, "node_modules/@esbuild/linux-ia32": { - "version": "0.19.9", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.19.9.tgz", - "integrity": "sha512-f37i/0zE0MjDxijkPSQw1CO/7C27Eojqb+r3BbHVxMLkj8GCa78TrBZzvPyA/FNLUMzP3eyHCVkAopkKVja+6Q==", + "version": "0.19.10", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.19.10.tgz", + "integrity": "sha512-4ub1YwXxYjj9h1UIZs2hYbnTZBtenPw5NfXCRgEkGb0b6OJ2gpkMvDqRDYIDRjRdWSe/TBiZltm3Y3Q8SN1xNg==", "cpu": [ "ia32" ], @@ -1336,9 +1352,9 @@ } }, "node_modules/@esbuild/linux-loong64": { - "version": "0.19.9", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.19.9.tgz", - "integrity": "sha512-t6mN147pUIf3t6wUt3FeumoOTPfmv9Cc6DQlsVBpB7eCpLOqQDyWBP1ymXn1lDw4fNUSb/gBcKAmvTP49oIkaA==", + "version": "0.19.10", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.19.10.tgz", + "integrity": "sha512-lo3I9k+mbEKoxtoIbM0yC/MZ1i2wM0cIeOejlVdZ3D86LAcFXFRdeuZmh91QJvUTW51bOK5W2BznGNIl4+mDaA==", "cpu": [ "loong64" ], @@ -1352,9 +1368,9 @@ } }, "node_modules/@esbuild/linux-mips64el": { - "version": "0.19.9", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.19.9.tgz", - "integrity": "sha512-jg9fujJTNTQBuDXdmAg1eeJUL4Jds7BklOTkkH80ZgQIoCTdQrDaHYgbFZyeTq8zbY+axgptncko3v9p5hLZtw==", + "version": "0.19.10", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.19.10.tgz", + "integrity": "sha512-J4gH3zhHNbdZN0Bcr1QUGVNkHTdpijgx5VMxeetSk6ntdt+vR1DqGmHxQYHRmNb77tP6GVvD+K0NyO4xjd7y4A==", "cpu": [ "mips64el" ], @@ -1368,9 +1384,9 @@ } }, "node_modules/@esbuild/linux-ppc64": { - "version": "0.19.9", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.19.9.tgz", - "integrity": "sha512-tkV0xUX0pUUgY4ha7z5BbDS85uI7ABw3V1d0RNTii7E9lbmV8Z37Pup2tsLV46SQWzjOeyDi1Q7Wx2+QM8WaCQ==", + "version": "0.19.10", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.19.10.tgz", + "integrity": "sha512-tgT/7u+QhV6ge8wFMzaklOY7KqiyitgT1AUHMApau32ZlvTB/+efeCtMk4eXS+uEymYK249JsoiklZN64xt6oQ==", "cpu": [ "ppc64" ], @@ -1384,9 +1400,9 @@ } }, "node_modules/@esbuild/linux-riscv64": { - "version": "0.19.9", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.19.9.tgz", - "integrity": "sha512-DfLp8dj91cufgPZDXr9p3FoR++m3ZJ6uIXsXrIvJdOjXVREtXuQCjfMfvmc3LScAVmLjcfloyVtpn43D56JFHg==", + "version": "0.19.10", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.19.10.tgz", + "integrity": "sha512-0f/spw0PfBMZBNqtKe5FLzBDGo0SKZKvMl5PHYQr3+eiSscfJ96XEknCe+JoOayybWUFQbcJTrk946i3j9uYZA==", "cpu": [ "riscv64" ], @@ -1400,9 +1416,9 @@ } }, "node_modules/@esbuild/linux-s390x": { - "version": "0.19.9", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.19.9.tgz", - "integrity": "sha512-zHbglfEdC88KMgCWpOl/zc6dDYJvWGLiUtmPRsr1OgCViu3z5GncvNVdf+6/56O2Ca8jUU+t1BW261V6kp8qdw==", + "version": "0.19.10", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.19.10.tgz", + "integrity": "sha512-pZFe0OeskMHzHa9U38g+z8Yx5FNCLFtUnJtQMpwhS+r4S566aK2ci3t4NCP4tjt6d5j5uo4h7tExZMjeKoehAA==", "cpu": [ "s390x" ], @@ -1416,9 +1432,9 @@ } }, "node_modules/@esbuild/linux-x64": { - "version": "0.19.9", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.19.9.tgz", - "integrity": "sha512-JUjpystGFFmNrEHQnIVG8hKwvA2DN5o7RqiO1CVX8EN/F/gkCjkUMgVn6hzScpwnJtl2mPR6I9XV1oW8k9O+0A==", + "version": "0.19.10", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.19.10.tgz", + "integrity": "sha512-SpYNEqg/6pZYoc+1zLCjVOYvxfZVZj6w0KROZ3Fje/QrM3nfvT2llI+wmKSrWuX6wmZeTapbarvuNNK/qepSgA==", "cpu": [ "x64" ], @@ -1432,9 +1448,9 @@ } }, "node_modules/@esbuild/netbsd-x64": { - "version": "0.19.9", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.19.9.tgz", - "integrity": "sha512-GThgZPAwOBOsheA2RUlW5UeroRfESwMq/guy8uEe3wJlAOjpOXuSevLRd70NZ37ZrpO6RHGHgEHvPg1h3S1Jug==", + "version": "0.19.10", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.19.10.tgz", + "integrity": "sha512-ACbZ0vXy9zksNArWlk2c38NdKg25+L9pr/mVaj9SUq6lHZu/35nx2xnQVRGLrC1KKQqJKRIB0q8GspiHI3J80Q==", "cpu": [ "x64" ], @@ -1448,9 +1464,9 @@ } }, "node_modules/@esbuild/openbsd-x64": { - "version": "0.19.9", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.19.9.tgz", - "integrity": "sha512-Ki6PlzppaFVbLnD8PtlVQfsYw4S9n3eQl87cqgeIw+O3sRr9IghpfSKY62mggdt1yCSZ8QWvTZ9jo9fjDSg9uw==", + "version": "0.19.10", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.19.10.tgz", + "integrity": "sha512-PxcgvjdSjtgPMiPQrM3pwSaG4kGphP+bLSb+cihuP0LYdZv1epbAIecHVl5sD3npkfYBZ0ZnOjR878I7MdJDFg==", "cpu": [ "x64" ], @@ -1464,9 +1480,9 @@ } }, "node_modules/@esbuild/sunos-x64": { - "version": "0.19.9", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.19.9.tgz", - "integrity": "sha512-MLHj7k9hWh4y1ddkBpvRj2b9NCBhfgBt3VpWbHQnXRedVun/hC7sIyTGDGTfsGuXo4ebik2+3ShjcPbhtFwWDw==", + "version": "0.19.10", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.19.10.tgz", + "integrity": "sha512-ZkIOtrRL8SEJjr+VHjmW0znkPs+oJXhlJbNwfI37rvgeMtk3sxOQevXPXjmAPZPigVTncvFqLMd+uV0IBSEzqA==", "cpu": [ "x64" ], @@ -1480,9 +1496,9 @@ } }, "node_modules/@esbuild/win32-arm64": { - "version": "0.19.9", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.19.9.tgz", - "integrity": "sha512-GQoa6OrQ8G08guMFgeXPH7yE/8Dt0IfOGWJSfSH4uafwdC7rWwrfE6P9N8AtPGIjUzdo2+7bN8Xo3qC578olhg==", + "version": "0.19.10", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.19.10.tgz", + "integrity": "sha512-+Sa4oTDbpBfGpl3Hn3XiUe4f8TU2JF7aX8cOfqFYMMjXp6ma6NJDztl5FDG8Ezx0OjwGikIHw+iA54YLDNNVfw==", "cpu": [ "arm64" ], @@ -1496,9 +1512,9 @@ } }, "node_modules/@esbuild/win32-ia32": { - "version": "0.19.9", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.19.9.tgz", - "integrity": "sha512-UOozV7Ntykvr5tSOlGCrqU3NBr3d8JqPes0QWN2WOXfvkWVGRajC+Ym0/Wj88fUgecUCLDdJPDF0Nna2UK3Qtg==", + "version": "0.19.10", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.19.10.tgz", + "integrity": "sha512-EOGVLK1oWMBXgfttJdPHDTiivYSjX6jDNaATeNOaCOFEVcfMjtbx7WVQwPSE1eIfCp/CaSF2nSrDtzc4I9f8TQ==", "cpu": [ "ia32" ], @@ -1512,9 +1528,9 @@ } }, "node_modules/@esbuild/win32-x64": { - "version": "0.19.9", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.19.9.tgz", - "integrity": "sha512-oxoQgglOP7RH6iasDrhY+R/3cHrfwIDvRlT4CGChflq6twk8iENeVvMJjmvBb94Ik1Z+93iGO27err7w6l54GQ==", + "version": "0.19.10", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.19.10.tgz", + "integrity": "sha512-whqLG6Sc70AbU73fFYvuYzaE4MNMBIlR1Y/IrUeOXFrWHxBEjjbZaQ3IXIQS8wJdAzue2GwYZCjOrgrU1oUHoA==", "cpu": [ "x64" ], @@ -5833,9 +5849,9 @@ } }, "node_modules/esbuild": { - "version": "0.19.9", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.19.9.tgz", - "integrity": "sha512-U9CHtKSy+EpPsEBa+/A2gMs/h3ylBC0H0KSqIg7tpztHerLi6nrrcoUJAkNCEPumx8yJ+Byic4BVwHgRbN0TBg==", + "version": "0.19.10", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.19.10.tgz", + "integrity": "sha512-S1Y27QGt/snkNYrRcswgRFqZjaTG5a5xM3EQo97uNBnH505pdzSNe/HLBq1v0RO7iK/ngdbhJB6mDAp0OK+iUA==", "dev": true, "hasInstallScript": true, "bin": { @@ -5845,28 +5861,29 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.19.9", - "@esbuild/android-arm64": "0.19.9", - "@esbuild/android-x64": "0.19.9", - "@esbuild/darwin-arm64": "0.19.9", - "@esbuild/darwin-x64": "0.19.9", - "@esbuild/freebsd-arm64": "0.19.9", - "@esbuild/freebsd-x64": "0.19.9", - "@esbuild/linux-arm": "0.19.9", - "@esbuild/linux-arm64": "0.19.9", - "@esbuild/linux-ia32": "0.19.9", - "@esbuild/linux-loong64": "0.19.9", - "@esbuild/linux-mips64el": "0.19.9", - "@esbuild/linux-ppc64": "0.19.9", - "@esbuild/linux-riscv64": "0.19.9", - "@esbuild/linux-s390x": "0.19.9", - "@esbuild/linux-x64": "0.19.9", - "@esbuild/netbsd-x64": "0.19.9", - "@esbuild/openbsd-x64": "0.19.9", - "@esbuild/sunos-x64": "0.19.9", - "@esbuild/win32-arm64": "0.19.9", - "@esbuild/win32-ia32": "0.19.9", - "@esbuild/win32-x64": "0.19.9" + "@esbuild/aix-ppc64": "0.19.10", + "@esbuild/android-arm": "0.19.10", + "@esbuild/android-arm64": "0.19.10", + "@esbuild/android-x64": "0.19.10", + "@esbuild/darwin-arm64": "0.19.10", + "@esbuild/darwin-x64": "0.19.10", + "@esbuild/freebsd-arm64": "0.19.10", + "@esbuild/freebsd-x64": "0.19.10", + "@esbuild/linux-arm": "0.19.10", + "@esbuild/linux-arm64": "0.19.10", + "@esbuild/linux-ia32": "0.19.10", + "@esbuild/linux-loong64": "0.19.10", + "@esbuild/linux-mips64el": "0.19.10", + "@esbuild/linux-ppc64": "0.19.10", + "@esbuild/linux-riscv64": "0.19.10", + "@esbuild/linux-s390x": "0.19.10", + "@esbuild/linux-x64": "0.19.10", + "@esbuild/netbsd-x64": "0.19.10", + "@esbuild/openbsd-x64": "0.19.10", + "@esbuild/sunos-x64": "0.19.10", + "@esbuild/win32-arm64": "0.19.10", + "@esbuild/win32-ia32": "0.19.10", + "@esbuild/win32-x64": "0.19.10" } }, "node_modules/escalade": { @@ -14965,12 +14982,12 @@ "dev": true }, "node_modules/tsx": { - "version": "4.6.2", - "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.6.2.tgz", - "integrity": "sha512-QPpBdJo+ZDtqZgAnq86iY/PD2KYCUPSUGIunHdGwyII99GKH+f3z3FZ8XNFLSGQIA4I365ui8wnQpl8OKLqcsg==", + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.7.0.tgz", + "integrity": "sha512-I+t79RYPlEYlHn9a+KzwrvEwhJg35h/1zHsLC2JXvhC2mdynMv6Zxzvhv5EMV6VF5qJlLlkSnMVvdZV3PSIGcg==", "dev": true, "dependencies": { - "esbuild": "~0.18.20", + "esbuild": "~0.19.10", "get-tsconfig": "^4.7.2" }, "bin": { @@ -14983,395 +15000,6 @@ "fsevents": "~2.3.3" } }, - "node_modules/tsx/node_modules/@esbuild/android-arm": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.18.20.tgz", - "integrity": "sha512-fyi7TDI/ijKKNZTUJAQqiG5T7YjJXgnzkURqmGj13C6dCqckZBLdl4h7bkhHt/t0WP+zO9/zwroDvANaOqO5Sw==", - "cpu": [ - "arm" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/tsx/node_modules/@esbuild/android-arm64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.18.20.tgz", - "integrity": "sha512-Nz4rJcchGDtENV0eMKUNa6L12zz2zBDXuhj/Vjh18zGqB44Bi7MBMSXjgunJgjRhCmKOjnPuZp4Mb6OKqtMHLQ==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/tsx/node_modules/@esbuild/android-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.18.20.tgz", - "integrity": "sha512-8GDdlePJA8D6zlZYJV/jnrRAi6rOiNaCC/JclcXpB+KIuvfBN4owLtgzY2bsxnx666XjJx2kDPUmnTtR8qKQUg==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/tsx/node_modules/@esbuild/darwin-arm64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.18.20.tgz", - "integrity": "sha512-bxRHW5kHU38zS2lPTPOyuyTm+S+eobPUnTNkdJEfAddYgEcll4xkT8DB9d2008DtTbl7uJag2HuE5NZAZgnNEA==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/tsx/node_modules/@esbuild/darwin-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.18.20.tgz", - "integrity": "sha512-pc5gxlMDxzm513qPGbCbDukOdsGtKhfxD1zJKXjCCcU7ju50O7MeAZ8c4krSJcOIJGFR+qx21yMMVYwiQvyTyQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/tsx/node_modules/@esbuild/freebsd-arm64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.18.20.tgz", - "integrity": "sha512-yqDQHy4QHevpMAaxhhIwYPMv1NECwOvIpGCZkECn8w2WFHXjEwrBn3CeNIYsibZ/iZEUemj++M26W3cNR5h+Tw==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/tsx/node_modules/@esbuild/freebsd-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.18.20.tgz", - "integrity": "sha512-tgWRPPuQsd3RmBZwarGVHZQvtzfEBOreNuxEMKFcd5DaDn2PbBxfwLcj4+aenoh7ctXcbXmOQIn8HI6mCSw5MQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/tsx/node_modules/@esbuild/linux-arm": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.18.20.tgz", - "integrity": "sha512-/5bHkMWnq1EgKr1V+Ybz3s1hWXok7mDFUMQ4cG10AfW3wL02PSZi5kFpYKrptDsgb2WAJIvRcDm+qIvXf/apvg==", - "cpu": [ - "arm" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/tsx/node_modules/@esbuild/linux-arm64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.18.20.tgz", - "integrity": "sha512-2YbscF+UL7SQAVIpnWvYwM+3LskyDmPhe31pE7/aoTMFKKzIc9lLbyGUpmmb8a8AixOL61sQ/mFh3jEjHYFvdA==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/tsx/node_modules/@esbuild/linux-ia32": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.18.20.tgz", - "integrity": "sha512-P4etWwq6IsReT0E1KHU40bOnzMHoH73aXp96Fs8TIT6z9Hu8G6+0SHSw9i2isWrD2nbx2qo5yUqACgdfVGx7TA==", - "cpu": [ - "ia32" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/tsx/node_modules/@esbuild/linux-loong64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.18.20.tgz", - "integrity": "sha512-nXW8nqBTrOpDLPgPY9uV+/1DjxoQ7DoB2N8eocyq8I9XuqJ7BiAMDMf9n1xZM9TgW0J8zrquIb/A7s3BJv7rjg==", - "cpu": [ - "loong64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/tsx/node_modules/@esbuild/linux-mips64el": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.18.20.tgz", - "integrity": "sha512-d5NeaXZcHp8PzYy5VnXV3VSd2D328Zb+9dEq5HE6bw6+N86JVPExrA6O68OPwobntbNJ0pzCpUFZTo3w0GyetQ==", - "cpu": [ - "mips64el" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/tsx/node_modules/@esbuild/linux-ppc64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.18.20.tgz", - "integrity": "sha512-WHPyeScRNcmANnLQkq6AfyXRFr5D6N2sKgkFo2FqguP44Nw2eyDlbTdZwd9GYk98DZG9QItIiTlFLHJHjxP3FA==", - "cpu": [ - "ppc64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/tsx/node_modules/@esbuild/linux-riscv64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.18.20.tgz", - "integrity": "sha512-WSxo6h5ecI5XH34KC7w5veNnKkju3zBRLEQNY7mv5mtBmrP/MjNBCAlsM2u5hDBlS3NGcTQpoBvRzqBcRtpq1A==", - "cpu": [ - "riscv64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/tsx/node_modules/@esbuild/linux-s390x": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.18.20.tgz", - "integrity": "sha512-+8231GMs3mAEth6Ja1iK0a1sQ3ohfcpzpRLH8uuc5/KVDFneH6jtAJLFGafpzpMRO6DzJ6AvXKze9LfFMrIHVQ==", - "cpu": [ - "s390x" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/tsx/node_modules/@esbuild/linux-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.18.20.tgz", - "integrity": "sha512-UYqiqemphJcNsFEskc73jQ7B9jgwjWrSayxawS6UVFZGWrAAtkzjxSqnoclCXxWtfwLdzU+vTpcNYhpn43uP1w==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/tsx/node_modules/@esbuild/netbsd-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.18.20.tgz", - "integrity": "sha512-iO1c++VP6xUBUmltHZoMtCUdPlnPGdBom6IrO4gyKPFFVBKioIImVooR5I83nTew5UOYrk3gIJhbZh8X44y06A==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "netbsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/tsx/node_modules/@esbuild/openbsd-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.18.20.tgz", - "integrity": "sha512-e5e4YSsuQfX4cxcygw/UCPIEP6wbIL+se3sxPdCiMbFLBWu0eiZOJ7WoD+ptCLrmjZBK1Wk7I6D/I3NglUGOxg==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "openbsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/tsx/node_modules/@esbuild/sunos-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.18.20.tgz", - "integrity": "sha512-kDbFRFp0YpTQVVrqUd5FTYmWo45zGaXe0X8E1G/LKFC0v8x0vWrhOWSLITcCn63lmZIxfOMXtCfti/RxN/0wnQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "sunos" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/tsx/node_modules/@esbuild/win32-arm64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.18.20.tgz", - "integrity": "sha512-ddYFR6ItYgoaq4v4JmQQaAI5s7npztfV4Ag6NrhiaW0RrnOXqBkgwZLofVTlq1daVTQNhtI5oieTvkRPfZrePg==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/tsx/node_modules/@esbuild/win32-ia32": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.18.20.tgz", - "integrity": "sha512-Wv7QBi3ID/rROT08SABTS7eV4hX26sVduqDOTe1MvGMjNd3EjOz4b7zeexIR62GTIEKrfJXKL9LFxTYgkyeu7g==", - "cpu": [ - "ia32" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/tsx/node_modules/@esbuild/win32-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.18.20.tgz", - "integrity": "sha512-kTdfRcSiDfQca/y9QIkng02avJ+NCaQvrMejlsB3RRv5sE9rRoeBPISaZpKxHELzRxZyLvNts1P27W3wV+8geQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/tsx/node_modules/esbuild": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.18.20.tgz", - "integrity": "sha512-ceqxoedUrcayh7Y7ZX6NdbbDzGROiyVBgC4PriJThBKSVPWnnFHZAkfI1lJT8QFkOwH4qOS2SJkS4wvpGl8BpA==", - "dev": true, - "hasInstallScript": true, - "bin": { - "esbuild": "bin/esbuild" - }, - "engines": { - "node": ">=12" - }, - "optionalDependencies": { - "@esbuild/android-arm": "0.18.20", - "@esbuild/android-arm64": "0.18.20", - "@esbuild/android-x64": "0.18.20", - "@esbuild/darwin-arm64": "0.18.20", - "@esbuild/darwin-x64": "0.18.20", - "@esbuild/freebsd-arm64": "0.18.20", - "@esbuild/freebsd-x64": "0.18.20", - "@esbuild/linux-arm": "0.18.20", - "@esbuild/linux-arm64": "0.18.20", - "@esbuild/linux-ia32": "0.18.20", - "@esbuild/linux-loong64": "0.18.20", - "@esbuild/linux-mips64el": "0.18.20", - "@esbuild/linux-ppc64": "0.18.20", - "@esbuild/linux-riscv64": "0.18.20", - "@esbuild/linux-s390x": "0.18.20", - "@esbuild/linux-x64": "0.18.20", - "@esbuild/netbsd-x64": "0.18.20", - "@esbuild/openbsd-x64": "0.18.20", - "@esbuild/sunos-x64": "0.18.20", - "@esbuild/win32-arm64": "0.18.20", - "@esbuild/win32-ia32": "0.18.20", - "@esbuild/win32-x64": "0.18.20" - } - }, "node_modules/tsx/node_modules/fsevents": { "version": "2.3.3", "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", @@ -16780,7 +16408,7 @@ "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", - "tsx": "4.6.2", + "tsx": "4.7.0", "typescript": "5.3.3" } }, @@ -16803,7 +16431,7 @@ "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", - "tsx": "4.6.2", + "tsx": "4.7.0", "typescript": "5.3.3" } } diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 6cf72bc1..a88f19f5 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -33,7 +33,7 @@ "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", - "tsx": "4.6.2", + "tsx": "4.7.0", "typescript": "5.3.3" } } diff --git a/packages/server/package.json b/packages/server/package.json index 0f8f3717..6415634a 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -37,7 +37,7 @@ "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", - "tsx": "4.6.2", + "tsx": "4.7.0", "typescript": "5.3.3" }, "distTags": [ From fb2a5ce556f29c7055b1c0c0b215771b5334135f Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Thu, 21 Dec 2023 15:02:55 +0300 Subject: [PATCH 034/458] Refactor the functionality of the cache layers (#233) This pull request refactors the functionality of cache layers. - centrolized error handling the layers - explicit debug logs with `NEXT_PRIVATE_DEBUG_CACHE` environment variable - `timeoutMs` option to `redis-stack` and `redis-strings` Handlers - named Handlers Fix #230 --- .changeset/chilled-camels-admire.md | 16 ++ .changeset/sweet-worms-fry.md | 11 + .../cache-handler-redis-stack.js | 6 +- .../cache-handler-redis-strings.js | 2 +- .../src/pages/configuration/cache.mdx | 8 + .../src/pages/configuration/on-creation.mdx | 5 + .../src/pages/configuration/ttl.mdx | 22 +- .../pages/configuration/use-file-system.mdx | 1 - .../src/pages/redis-stack-custom.mdx | 104 +++++---- .../src/pages/redis-stack.mdx | 3 + .../src/pages/redis-strings-custom.mdx | 112 +++++----- .../src/pages/redis-strings.mdx | 3 + .../src/pages/troubleshooting.mdx | 3 +- package-lock.json | 204 ++++++++++++------ packages/cache-handler/package.json | 5 +- packages/cache-handler/src/cache-handler.ts | 157 ++++++++++++-- packages/cache-handler/src/common-types.ts | 7 - .../cache-handler/src/handlers/local-lru.ts | 42 +--- .../cache-handler/src/handlers/redis-stack.ts | 128 +++++------ .../src/handlers/redis-strings.ts | 99 ++++----- packages/cache-handler/src/handlers/server.ts | 173 ++++++--------- .../cache-handler/src/is-tags-manifest.ts | 7 +- .../cache-handler/src/with-timeout.test.ts | 33 +++ packages/cache-handler/src/with-timeout.ts | 19 ++ 24 files changed, 701 insertions(+), 469 deletions(-) create mode 100644 .changeset/chilled-camels-admire.md create mode 100644 .changeset/sweet-worms-fry.md create mode 100644 packages/cache-handler/src/with-timeout.test.ts create mode 100644 packages/cache-handler/src/with-timeout.ts diff --git a/.changeset/chilled-camels-admire.md b/.changeset/chilled-camels-admire.md new file mode 100644 index 00000000..e8f52ccb --- /dev/null +++ b/.changeset/chilled-camels-admire.md @@ -0,0 +1,16 @@ +--- +'@neshca/cache-handler': patch +--- + +Refactored the functionality of cache layers + +#### Features + +- removed `unstable__logErrors` option +- introduced `name` property for Handlers for easier debugging +- introduced explicit cache debug logs using `process.env.NEXT_PRIVATE_DEBUG_CACHE` +- added a new `timeoutMs` option to the Redis Handlers + +#### Fixes + +- Made pre-configured Redis Handler not cause page loading to hang diff --git a/.changeset/sweet-worms-fry.md b/.changeset/sweet-worms-fry.md new file mode 100644 index 00000000..f92c3a26 --- /dev/null +++ b/.changeset/sweet-worms-fry.md @@ -0,0 +1,11 @@ +--- +'cache-handler-docs': patch +--- + +Updated the docs. + +#### What's Changed + +- Added information about the `timeoutMs` option for Redis Handlers. +- Added information about the `name` property for `cache` objects. +- Improved the debugging section. diff --git a/apps/cache-testing/cache-handler-redis-stack.js b/apps/cache-testing/cache-handler-redis-stack.js index 76bf4f76..566502e7 100644 --- a/apps/cache-testing/cache-handler-redis-stack.js +++ b/apps/cache-testing/cache-handler-redis-stack.js @@ -8,7 +8,7 @@ if (!process.env.REDIS_URL) { console.warn('Make sure that REDIS_URL is added to the .env.local file and loaded properly.'); } -const CONNECT_TIMEOUT_MS = 5 * 50 * 1000; +const CONNECT_TIMEOUT_MS = 5 * 60 * 1000; // 5 minutes const client = createClient({ url: process.env.REDIS_URL, @@ -18,8 +18,8 @@ const client = createClient({ }, }); -client.on('error', (error) => { - console.error('Redis error:', error); +client.on('error', (_error) => { + // console.error('Redis error:', error); }); IncrementalCache.onCreation(async () => { diff --git a/apps/cache-testing/cache-handler-redis-strings.js b/apps/cache-testing/cache-handler-redis-strings.js index b1e6bc9f..7361178a 100644 --- a/apps/cache-testing/cache-handler-redis-strings.js +++ b/apps/cache-testing/cache-handler-redis-strings.js @@ -8,7 +8,7 @@ if (!process.env.REDIS_URL) { } const PREFIX = 'string:'; -const CONNECT_TIMEOUT_MS = 5 * 50 * 1000; +const CONNECT_TIMEOUT_MS = 5 * 60 * 1000; const client = createClient({ url: process.env.REDIS_URL, diff --git a/docs/cache-handler-docs/src/pages/configuration/cache.mdx b/docs/cache-handler-docs/src/pages/configuration/cache.mdx index 1f37586c..f027c1bc 100644 --- a/docs/cache-handler-docs/src/pages/configuration/cache.mdx +++ b/docs/cache-handler-docs/src/pages/configuration/cache.mdx @@ -13,6 +13,7 @@ IncrementalCache.onCreation(async () => { const cacheStore = new Map(); const cache = { + name: 'custom-map-cache', async get(key) { return cacheStore.get(key); }, @@ -30,6 +31,12 @@ IncrementalCache.onCreation(async () => { module.exports = IncrementalCache; ``` + + Don't suppress errors when implementing the `get`, `set`, `getRevalidatedTags`, and `revalidateTag` methods. + Instead, throw errors and let `IncrementalCache` class handle them. Refer to the [debugging cache + article](/troubleshooting#method-2-debug-mode) for more information. + + ## Advanced Cache Configuration: Custom Revalidation When you are using built-in Handlers like [`redis-stack`](/redis-stack) there is no need in configuring revalidation. However, if you crafting your own cache handler, you need to implement revalidation logic. @@ -42,6 +49,7 @@ For control over the revalidation process, implement `getRevalidatedTags` and `r const revalidateTags = {}; const cache = { + name: 'custom-map-cache', async get(key) { return cacheStore.get(key); }, diff --git a/docs/cache-handler-docs/src/pages/configuration/on-creation.mdx b/docs/cache-handler-docs/src/pages/configuration/on-creation.mdx index 05986034..32eefd29 100644 --- a/docs/cache-handler-docs/src/pages/configuration/on-creation.mdx +++ b/docs/cache-handler-docs/src/pages/configuration/on-creation.mdx @@ -122,6 +122,11 @@ In these examples, the `onCreation` hook configures the cache behavior based on - The method returns the `RevalidatedTags` from the first cache layer where they are found. 4. **`revalidateTag(tag, revalidatedAt)`: Updating Revalidation Status Across Layers** + - Similar to the `set` method, `revalidateTag` concurrently updates the revalidation status of a tag in all cache layers. - It marks the specified `tag` as revalidated with the provided timestamp (`revalidatedAt`) in both the `primaryCache` and `secondaryCache`. - It uses `Promise.allSettled` under the hood, ensuring that the revalidation status is consistently updated across all layers. + +5. **`name`: A descriptive name for the cache handler instance.** + + - This is used for logging and debugging purposes. diff --git a/docs/cache-handler-docs/src/pages/configuration/ttl.mdx b/docs/cache-handler-docs/src/pages/configuration/ttl.mdx index b91efda4..ecab0cea 100644 --- a/docs/cache-handler-docs/src/pages/configuration/ttl.mdx +++ b/docs/cache-handler-docs/src/pages/configuration/ttl.mdx @@ -54,12 +54,8 @@ IncrementalCache.onCreation(async () => { // ... other cache methods ... async set(key, value, ttl) { - try { - // Serialize value and set TTL using Redis 'EX' option - await client.set(key, JSON.stringify(value), typeof ttl === 'number' ? { EX: ttl } : undefined); - } catch (error) { - console.error('cache.set', error); - } + // Serialize value and set TTL using Redis 'EX' option + await client.set(key, JSON.stringify(value), typeof ttl === 'number' ? { EX: ttl } : undefined); }, // ... other cache methods ... @@ -81,15 +77,11 @@ IncrementalCache.onCreation(async () => { // ... other cache methods ... async set(key, value, ttl) { - try { - await client.json.set(key, '.', value); - - if (typeof ttl === 'number') { - // Set TTL using Redis 'EXPIRE' command - await client.expire(key, ttl); - } - } catch (error) { - console.error('cache.set', error); + await client.json.set(key, '.', value); + + if (typeof ttl === 'number') { + // Set TTL using Redis 'EXPIRE' command + await client.expire(key, ttl); } }, diff --git a/docs/cache-handler-docs/src/pages/configuration/use-file-system.mdx b/docs/cache-handler-docs/src/pages/configuration/use-file-system.mdx index a19c23ce..6f122a13 100644 --- a/docs/cache-handler-docs/src/pages/configuration/use-file-system.mdx +++ b/docs/cache-handler-docs/src/pages/configuration/use-file-system.mdx @@ -73,7 +73,6 @@ IncrementalCache.onCreation(async (context) => { const lruCache = createLruCache({ maxItemsNumber: 10000, // Limit to 10000 items maxItemSizeBytes: 1024 * 1024 * 500, // Limit to 500 MB - unstable__logErrors: true, }); return { diff --git a/docs/cache-handler-docs/src/pages/redis-stack-custom.mdx b/docs/cache-handler-docs/src/pages/redis-stack-custom.mdx index ac6ab2df..81f7a34c 100644 --- a/docs/cache-handler-docs/src/pages/redis-stack-custom.mdx +++ b/docs/cache-handler-docs/src/pages/redis-stack-custom.mdx @@ -11,6 +11,7 @@ Create a file called `cache-handler.js` next to you `next.config.js` with the fo ```js filename="cache-handler.js" copy const { IncrementalCache } = require('@neshca/cache-handler'); +const createLruCache = require('@neshca/cache-handler/local-lru').default; const { createClient } = require('redis'); const REVALIDATED_TAGS_KEY = 'sharedRevalidatedTags'; @@ -24,12 +25,19 @@ client.on('error', (error) => { }); IncrementalCache.onCreation(async () => { + await client.connect(); + // read more about TTL limitations https://caching-tools.github.io/next-shared-cache/configuration/ttl const useTtl = false; - await client.connect(); + function assertClientIsReady() { + if (!client.isReady) { + throw new Error('Redis client is not ready'); + } + } + + assertClientIsReady(); - // Create the shared RevalidatedTags if it doesn't exist await client.json.set( REVALIDATED_TAGS_KEY, '.', @@ -39,52 +47,56 @@ IncrementalCache.onCreation(async () => { }, ); + const localCache = createLruCache({ + useTtl, + }); + + const redisCache = { + name: 'custom-redis-stack', + async get(key) { + assertClientIsReady(); + + const cacheValue = (await client.json.get(key)) ?? null; + + if (cacheValue?.value?.kind === 'ROUTE') { + cacheValue.value.body = Buffer.from(cacheValue.value.body, 'base64'); + } + + return cacheValue; + }, + async set(key, cacheValue, ttl) { + assertClientIsReady(); + + let preparedCacheValue = cacheValue; + + if (cacheValue.value?.kind === 'ROUTE') { + preparedCacheValue = structuredClone(cacheValue); + preparedCacheValue.value.body = cacheValue.value.body.toString('base64'); + } + + await client.json.set(key, '.', preparedCacheValue); + + if (useTtl && typeof ttl === 'number') { + await client.expire(key, ttl); + } + }, + async getRevalidatedTags() { + assertClientIsReady(); + + const sharedRevalidatedTags = (await client.json.get(REVALIDATED_TAGS_KEY)) ?? undefined; + + return sharedRevalidatedTags; + }, + async revalidateTag(tag, revalidatedAt) { + assertClientIsReady(); + + await client.json.set(REVALIDATED_TAGS_KEY, `.${tag}`, revalidatedAt); + }, + }; + return { + cache: [redisCache, localCache], useFileSystem: !useTtl, - cache: { - async get(key) { - try { - const cacheValue = (await client.json.get(key)) ?? null; - - if (cacheValue && cacheValue.value?.kind === 'ROUTE' && cacheValue.value.body.type === 'Buffer') { - cacheValue.value.body = Buffer.from(cacheValue.value.body); - } - - return cacheValue; - } catch (error) { - console.error('cache.get', error); - - return null; - } - }, - async set(key, value, ttl) { - try { - await client.json.set(key, '.', value); - - if (useTtl && typeof ttl === 'number') { - await client.expire(key, ttl); - } - } catch (error) { - console.error('cache.set', error); - } - }, - async getRevalidatedTags() { - try { - const sharedRevalidatedTags = (await client.json.get(REVALIDATED_TAGS_KEY)) ?? undefined; - - return sharedRevalidatedTags; - } catch (error) { - console.error('cache.getRevalidatedTags', error); - } - }, - async revalidateTag(tag, revalidatedAt) { - try { - await client.json.set(REVALIDATED_TAGS_KEY, `.${tag}`, revalidatedAt); - } catch (error) { - console.error('cache.revalidateTag', error); - } - }, - }, }; }); diff --git a/docs/cache-handler-docs/src/pages/redis-stack.mdx b/docs/cache-handler-docs/src/pages/redis-stack.mdx index ca8356b7..dd1b0f36 100644 --- a/docs/cache-handler-docs/src/pages/redis-stack.mdx +++ b/docs/cache-handler-docs/src/pages/redis-stack.mdx @@ -32,6 +32,9 @@ IncrementalCache.onCreation(async () => { const redisCache = await createRedisCache({ client, useTtl, + // timeout for the Redis client operations like `get` and `set` + // afeter this timeout, the operation will be considered failed and the `localCache` will be used + timeoutMs: 5000, }); const localCache = createLruCache({ diff --git a/docs/cache-handler-docs/src/pages/redis-strings-custom.mdx b/docs/cache-handler-docs/src/pages/redis-strings-custom.mdx index ccef8e34..c4e021a4 100644 --- a/docs/cache-handler-docs/src/pages/redis-strings-custom.mdx +++ b/docs/cache-handler-docs/src/pages/redis-strings-custom.mdx @@ -16,8 +16,9 @@ npm i -D @neshca/json-replacer-reviver Create a file called `cache-handler.js` next to your `next.config.js` with the following contents: ```js filename="cache-handler.js" copy -const { reviveFromBase64Representation, replaceJsonWithBase64 } = require('@neshca/json-replacer-reviver'); const { IncrementalCache } = require('@neshca/cache-handler'); +const createLruCache = require('@neshca/cache-handler/local-lru').default; +const { reviveFromBase64Representation, replaceJsonWithBase64 } = require('@neshca/json-replacer-reviver'); const { createClient } = require('redis'); const REVALIDATED_TAGS_KEY = 'sharedRevalidatedTags'; @@ -36,62 +37,63 @@ IncrementalCache.onCreation(async () => { await client.connect(); + const localCache = createLruCache({ + useTtl, + }); + + function assertClientIsReady() { + if (!client.isReady) { + throw new Error('Redis client is not ready'); + } + } + const redisCache = { + name: 'custom-redis-strings', + async get(key) { + assertClientIsReady(); + + const result = await client.get(key); + + if (!result) { + return null; + } + + return JSON.parse(result, reviveFromBase64Representation); + }, + async set(key, value, ttl) { + assertClientIsReady(); + + await client.set( + key, + JSON.stringify(value, replaceJsonWithBase64), + useTtl && typeof ttl === 'number' ? { EX: ttl } : undefined, + ); + }, + async getRevalidatedTags() { + assertClientIsReady(); + + const sharedRevalidatedTags = await client.hGetAll(REVALIDATED_TAGS_KEY); + + const entries = Object.entries(sharedRevalidatedTags); + + const revalidatedTags = entries.reduce((acc, [tag, revalidatedAt]) => { + acc[tag] = Number(revalidatedAt); + return acc; + }, {}); + + return revalidatedTags; + }, + async revalidateTag(tag, revalidatedAt) { + assertClientIsReady(); + + await client.hSet(REVALIDATED_TAGS_KEY, { + [tag]: revalidatedAt, + }); + }, + }; + return { + cache: [redisCache, localCache], useFileSystem: !useTtl, - cache: { - async get(key) { - try { - const result = (await client.get(key)) ?? null; - - if (!result) { - return null; - } - - // use reviveFromBase64Representation to restore binary data from Base64 - return JSON.parse(result, reviveFromBase64Representation); - } catch (error) { - console.error('cache.get', error); - - return null; - } - }, - async set(key, value, ttl) { - try { - await client.set( - key, - // use replaceJsonWithBase64 to store binary data in Base64 and save space - JSON.stringify(value, replaceJsonWithBase64), - useTtl && typeof ttl === 'number' ? { EX: ttl } : undefined, - ); - } catch (error) { - console.error('cache.set', error); - } - }, - async getRevalidatedTags() { - try { - const sharedRevalidatedTags = await client.hGetAll(REVALIDATED_TAGS_KEY); - - const entries = Object.entries(sharedRevalidatedTags); - - const revalidatedTags = Object.fromEntries( - entries.map(([tag, revalidatedAt]) => [tag, Number(revalidatedAt)]), - ); - - return revalidatedTags; - } catch (error) { - console.error('cache.getRevalidatedTags', error); - } - }, - async revalidateTag(tag, revalidatedAt) { - try { - await client.hSet(REVALIDATED_TAGS_KEY, { - [tag]: revalidatedAt, - }); - } catch (error) { - console.error('cache.revalidateTag', error); - } - }, - }, }; }); diff --git a/docs/cache-handler-docs/src/pages/redis-strings.mdx b/docs/cache-handler-docs/src/pages/redis-strings.mdx index b9f4f3a8..ef2c1611 100644 --- a/docs/cache-handler-docs/src/pages/redis-strings.mdx +++ b/docs/cache-handler-docs/src/pages/redis-strings.mdx @@ -32,6 +32,9 @@ IncrementalCache.onCreation(async () => { const redisCache = await createRedisCache({ client, useTtl, + // timeout for the Redis client operations like `get` and `set` + // afeter this timeout, the operation will be considered failed and the `localCache` will be used + timeoutMs: 5000, }); const localCache = createLruCache({ diff --git a/docs/cache-handler-docs/src/pages/troubleshooting.mdx b/docs/cache-handler-docs/src/pages/troubleshooting.mdx index 4788831d..a77f929a 100644 --- a/docs/cache-handler-docs/src/pages/troubleshooting.mdx +++ b/docs/cache-handler-docs/src/pages/troubleshooting.mdx @@ -56,7 +56,8 @@ Verbose output should appear in your console when the application starts and any ``` using custom cache handler @neshca/cache-handler with 1 Handlers and file system caching -using custom cache handler @neshca/cache-handler with 1 Handlers and file system caching +get from "redis-stack" ba7bea0a3991dc2cbf8e068da71c2a2aa8c0e6f902fe695c1badf1e994acc43a false +set to external cache store 8f058e8d96c4010b07abddd0f9f26ebd9ed71e2ccfb18eca348fc57a6e86f986 ``` Note: During the build stage, it's normal to see `@neshca/cache-handler is not configured yet` several times. diff --git a/package-lock.json b/package-lock.json index aa97cf97..ac7bd6c5 100644 --- a/package-lock.json +++ b/package-lock.json @@ -59,6 +59,15 @@ "typescript": "5.3.3" } }, + "apps/cache-testing/node_modules/@types/node": { + "version": "20.10.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.5.tgz", + "integrity": "sha512-nNPsNE65wjMxEKI93yOP+NPGGBJz/PoN3kZsVLee0XMiJolxSekEVD8wRwBUBqkwc7UWop0edW50yrCQW4CyRw==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "apps/cache-testing/node_modules/next": { "version": "14.0.5-canary.17", "resolved": "https://registry.npmjs.org/next/-/next-14.0.5-canary.17.tgz", @@ -133,6 +142,15 @@ "glob": "7.1.7" } }, + "docs/cache-handler-docs/node_modules/@types/node": { + "version": "20.10.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.5.tgz", + "integrity": "sha512-nNPsNE65wjMxEKI93yOP+NPGGBJz/PoN3kZsVLee0XMiJolxSekEVD8wRwBUBqkwc7UWop0edW50yrCQW4CyRw==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "docs/cache-handler-docs/node_modules/glob": { "version": "7.1.7", "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", @@ -251,6 +269,15 @@ "typescript": "5.3.3" } }, + "internal/backend/node_modules/@types/node": { + "version": "20.10.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.5.tgz", + "integrity": "sha512-nNPsNE65wjMxEKI93yOP+NPGGBJz/PoN3kZsVLee0XMiJolxSekEVD8wRwBUBqkwc7UWop0edW50yrCQW4CyRw==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "internal/eslint-config-neshca": { "version": "0.0.0", "license": "MIT", @@ -357,6 +384,15 @@ "typescript": "5.3.3" } }, + "internal/next-common/node_modules/@types/node": { + "version": "20.10.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.5.tgz", + "integrity": "sha512-nNPsNE65wjMxEKI93yOP+NPGGBJz/PoN3kZsVLee0XMiJolxSekEVD8wRwBUBqkwc7UWop0edW50yrCQW4CyRw==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "internal/next-common/node_modules/next": { "version": "14.0.5-canary.17", "resolved": "https://registry.npmjs.org/next/-/next-14.0.5-canary.17.tgz", @@ -419,6 +455,15 @@ "typescript": "5.3.3" } }, + "internal/next-lru-cache/node_modules/@types/node": { + "version": "20.10.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.5.tgz", + "integrity": "sha512-nNPsNE65wjMxEKI93yOP+NPGGBJz/PoN3kZsVLee0XMiJolxSekEVD8wRwBUBqkwc7UWop0edW50yrCQW4CyRw==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "internal/prettier-config": { "name": "@neshca/prettier-config", "version": "0.0.0", @@ -1825,11 +1870,6 @@ "fs-extra": "^8.1.0" } }, - "node_modules/@manypkg/find-root/node_modules/@types/node": { - "version": "12.20.55", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", - "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" - }, "node_modules/@manypkg/find-root/node_modules/fs-extra": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", @@ -3105,12 +3145,9 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "20.10.5", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.5.tgz", - "integrity": "sha512-nNPsNE65wjMxEKI93yOP+NPGGBJz/PoN3kZsVLee0XMiJolxSekEVD8wRwBUBqkwc7UWop0edW50yrCQW4CyRw==", - "dependencies": { - "undici-types": "~5.26.4" - } + "version": "12.20.55", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", + "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" }, "node_modules/@types/node-fetch": { "version": "2.6.9", @@ -3167,16 +3204,16 @@ "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "6.14.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.14.0.tgz", - "integrity": "sha512-1ZJBykBCXaSHG94vMMKmiHoL0MhNHKSVlcHVYZNw+BKxufhqQVTOawNpwwI1P5nIFZ/4jLVop0mcY6mJJDFNaw==", + "version": "6.15.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.15.0.tgz", + "integrity": "sha512-j5qoikQqPccq9QoBAupOP+CBu8BaJ8BLjaXSioDISeTZkVO3ig7oSIKh3H+rEpee7xCXtWwSB4KIL5l6hWZzpg==", "dev": true, "dependencies": { "@eslint-community/regexpp": "^4.5.1", - "@typescript-eslint/scope-manager": "6.14.0", - "@typescript-eslint/type-utils": "6.14.0", - "@typescript-eslint/utils": "6.14.0", - "@typescript-eslint/visitor-keys": "6.14.0", + "@typescript-eslint/scope-manager": "6.15.0", + "@typescript-eslint/type-utils": "6.15.0", + "@typescript-eslint/utils": "6.15.0", + "@typescript-eslint/visitor-keys": "6.15.0", "debug": "^4.3.4", "graphemer": "^1.4.0", "ignore": "^5.2.4", @@ -3202,15 +3239,15 @@ } }, "node_modules/@typescript-eslint/parser": { - "version": "6.14.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.14.0.tgz", - "integrity": "sha512-QjToC14CKacd4Pa7JK4GeB/vHmWFJckec49FR4hmIRf97+KXole0T97xxu9IFiPxVQ1DBWrQ5wreLwAGwWAVQA==", + "version": "6.15.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.15.0.tgz", + "integrity": "sha512-MkgKNnsjC6QwcMdlNAel24jjkEO/0hQaMDLqP4S9zq5HBAUJNQB6y+3DwLjX7b3l2b37eNAxMPLwb3/kh8VKdA==", "dev": true, "dependencies": { - "@typescript-eslint/scope-manager": "6.14.0", - "@typescript-eslint/types": "6.14.0", - "@typescript-eslint/typescript-estree": "6.14.0", - "@typescript-eslint/visitor-keys": "6.14.0", + "@typescript-eslint/scope-manager": "6.15.0", + "@typescript-eslint/types": "6.15.0", + "@typescript-eslint/typescript-estree": "6.15.0", + "@typescript-eslint/visitor-keys": "6.15.0", "debug": "^4.3.4" }, "engines": { @@ -3230,13 +3267,13 @@ } }, "node_modules/@typescript-eslint/scope-manager": { - "version": "6.14.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.14.0.tgz", - "integrity": "sha512-VT7CFWHbZipPncAZtuALr9y3EuzY1b1t1AEkIq2bTXUPKw+pHoXflGNG5L+Gv6nKul1cz1VH8fz16IThIU0tdg==", + "version": "6.15.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.15.0.tgz", + "integrity": "sha512-+BdvxYBltqrmgCNu4Li+fGDIkW9n//NrruzG9X1vBzaNK+ExVXPoGB71kneaVw/Jp+4rH/vaMAGC6JfMbHstVg==", "dev": true, "dependencies": { - "@typescript-eslint/types": "6.14.0", - "@typescript-eslint/visitor-keys": "6.14.0" + "@typescript-eslint/types": "6.15.0", + "@typescript-eslint/visitor-keys": "6.15.0" }, "engines": { "node": "^16.0.0 || >=18.0.0" @@ -3247,13 +3284,13 @@ } }, "node_modules/@typescript-eslint/type-utils": { - "version": "6.14.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.14.0.tgz", - "integrity": "sha512-x6OC9Q7HfYKqjnuNu5a7kffIYs3No30isapRBJl1iCHLitD8O0lFbRcVGiOcuyN837fqXzPZ1NS10maQzZMKqw==", + "version": "6.15.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.15.0.tgz", + "integrity": "sha512-CnmHKTfX6450Bo49hPg2OkIm/D/TVYV7jO1MCfPYGwf6x3GO0VU8YMO5AYMn+u3X05lRRxA4fWCz87GFQV6yVQ==", "dev": true, "dependencies": { - "@typescript-eslint/typescript-estree": "6.14.0", - "@typescript-eslint/utils": "6.14.0", + "@typescript-eslint/typescript-estree": "6.15.0", + "@typescript-eslint/utils": "6.15.0", "debug": "^4.3.4", "ts-api-utils": "^1.0.1" }, @@ -3274,9 +3311,9 @@ } }, "node_modules/@typescript-eslint/types": { - "version": "6.14.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.14.0.tgz", - "integrity": "sha512-uty9H2K4Xs8E47z3SnXEPRNDfsis8JO27amp2GNCnzGETEW3yTqEIVg5+AI7U276oGF/tw6ZA+UesxeQ104ceA==", + "version": "6.15.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.15.0.tgz", + "integrity": "sha512-yXjbt//E4T/ee8Ia1b5mGlbNj9fB9lJP4jqLbZualwpP2BCQ5is6BcWwxpIsY4XKAhmdv3hrW92GdtJbatC6dQ==", "dev": true, "engines": { "node": "^16.0.0 || >=18.0.0" @@ -3287,13 +3324,13 @@ } }, "node_modules/@typescript-eslint/typescript-estree": { - "version": "6.14.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.14.0.tgz", - "integrity": "sha512-yPkaLwK0yH2mZKFE/bXkPAkkFgOv15GJAUzgUVonAbv0Hr4PK/N2yaA/4XQbTZQdygiDkpt5DkxPELqHguNvyw==", + "version": "6.15.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.15.0.tgz", + "integrity": "sha512-7mVZJN7Hd15OmGuWrp2T9UvqR2Ecg+1j/Bp1jXUEY2GZKV6FXlOIoqVDmLpBiEiq3katvj/2n2mR0SDwtloCew==", "dev": true, "dependencies": { - "@typescript-eslint/types": "6.14.0", - "@typescript-eslint/visitor-keys": "6.14.0", + "@typescript-eslint/types": "6.15.0", + "@typescript-eslint/visitor-keys": "6.15.0", "debug": "^4.3.4", "globby": "^11.1.0", "is-glob": "^4.0.3", @@ -3314,17 +3351,17 @@ } }, "node_modules/@typescript-eslint/utils": { - "version": "6.14.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.14.0.tgz", - "integrity": "sha512-XwRTnbvRr7Ey9a1NT6jqdKX8y/atWG+8fAIu3z73HSP8h06i3r/ClMhmaF/RGWGW1tHJEwij1uEg2GbEmPYvYg==", + "version": "6.15.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.15.0.tgz", + "integrity": "sha512-eF82p0Wrrlt8fQSRL0bGXzK5nWPRV2dYQZdajcfzOD9+cQz9O7ugifrJxclB+xVOvWvagXfqS4Es7vpLP4augw==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.4.0", "@types/json-schema": "^7.0.12", "@types/semver": "^7.5.0", - "@typescript-eslint/scope-manager": "6.14.0", - "@typescript-eslint/types": "6.14.0", - "@typescript-eslint/typescript-estree": "6.14.0", + "@typescript-eslint/scope-manager": "6.15.0", + "@typescript-eslint/types": "6.15.0", + "@typescript-eslint/typescript-estree": "6.15.0", "semver": "^7.5.4" }, "engines": { @@ -3339,12 +3376,12 @@ } }, "node_modules/@typescript-eslint/visitor-keys": { - "version": "6.14.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.14.0.tgz", - "integrity": "sha512-fB5cw6GRhJUz03MrROVuj5Zm/Q+XWlVdIsFj+Zb1Hvqouc8t+XP2H5y53QYU/MGtd2dPg6/vJJlhoX3xc2ehfw==", + "version": "6.15.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.15.0.tgz", + "integrity": "sha512-1zvtdC1a9h5Tb5jU9x3ADNXO9yjP8rXlaoChu0DQX40vf5ACVpYIVIZhIMZ6d5sDXH7vq4dsZBT1fEGj8D2n2w==", "dev": true, "dependencies": { - "@typescript-eslint/types": "6.14.0", + "@typescript-eslint/types": "6.15.0", "eslint-visitor-keys": "^3.4.1" }, "engines": { @@ -5659,9 +5696,9 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.614", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.614.tgz", - "integrity": "sha512-X4ze/9Sc3QWs6h92yerwqv7aB/uU8vCjZcrMjA8N9R1pjMFRe44dLsck5FzLilOYvcXuDn93B+bpGYyufc70gQ==", + "version": "1.4.615", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.615.tgz", + "integrity": "sha512-/bKPPcgZVUziECqDc+0HkT87+0zhaWSZHNXqF8FLd2lQcptpmUFwoCSWjCdOng9Gdq+afKArPdEg/0ZW461Eng==", "dev": true }, "node_modules/elkjs": { @@ -7310,9 +7347,9 @@ } }, "node_modules/fastq": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", - "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", + "version": "1.16.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.16.0.tgz", + "integrity": "sha512-ifCoaXsDrsdkWTtiNJX5uzHDsrck5TzfKKDcuFFTIrrc/BS076qgEIfoIy1VeZqViznfKiysPYTh/QeHtnIsYA==", "dependencies": { "reusify": "^1.0.4" } @@ -11680,9 +11717,9 @@ } }, "node_modules/openai": { - "version": "4.23.0", - "resolved": "https://registry.npmjs.org/openai/-/openai-4.23.0.tgz", - "integrity": "sha512-ey2CXh1OTcTUa0AWZWuTpgA9t5GuAG3DVU1MofCRUI7fQJij8XJ3Sr0VtgxoAE69C9wbHBMCux8Z/IQZfSwHiA==", + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/openai/-/openai-4.24.0.tgz", + "integrity": "sha512-h8fsas4lu0ul18oDzFIZpEQryh2SJEUJWanyfEwjME/klcKWZM/blDz2cKiT+aFBqPJzcYdCUj/8E7n20f0jEw==", "peer": true, "dependencies": { "@types/node": "^18.11.18", @@ -12795,9 +12832,9 @@ } }, "node_modules/readable-stream": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.5.0.tgz", - "integrity": "sha512-AeYh93VyUwnNI/HCB4XdAaP4N/yGgg3rci3ISEUSM0jN95yWpbL9tSuRIwHzCq7e6TzYwJ6Vn7viUYTsfIxBlQ==", + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.5.1.tgz", + "integrity": "sha512-uQjbf34vmf/asGnOHQEw07Q4llgMACQZTWWa4MmICS0IKJoHbLwKCy71H3eR99Dw5iYejc6W+pqZZEeqRtUFAw==", "dependencies": { "abort-controller": "^3.0.0", "buffer": "^6.0.3", @@ -16372,6 +16409,7 @@ "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", + "tsx": "4.7.0", "typescript": "5.3.3" }, "peerDependencies": { @@ -16379,6 +16417,15 @@ "redis": ">=4.6" } }, + "packages/cache-handler/node_modules/@types/node": { + "version": "20.10.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.5.tgz", + "integrity": "sha512-nNPsNE65wjMxEKI93yOP+NPGGBJz/PoN3kZsVLee0XMiJolxSekEVD8wRwBUBqkwc7UWop0edW50yrCQW4CyRw==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "packages/diffscribe": { "version": "0.2.1", "license": "MIT", @@ -16398,6 +16445,15 @@ "openai": "^4.12.3" } }, + "packages/diffscribe/node_modules/@types/node": { + "version": "20.10.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.5.tgz", + "integrity": "sha512-nNPsNE65wjMxEKI93yOP+NPGGBJz/PoN3kZsVLee0XMiJolxSekEVD8wRwBUBqkwc7UWop0edW50yrCQW4CyRw==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "packages/json-replacer-reviver": { "name": "@neshca/json-replacer-reviver", "version": "1.1.0", @@ -16412,6 +16468,15 @@ "typescript": "5.3.3" } }, + "packages/json-replacer-reviver/node_modules/@types/node": { + "version": "20.10.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.5.tgz", + "integrity": "sha512-nNPsNE65wjMxEKI93yOP+NPGGBJz/PoN3kZsVLee0XMiJolxSekEVD8wRwBUBqkwc7UWop0edW50yrCQW4CyRw==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "packages/server": { "name": "@neshca/server", "version": "0.6.0", @@ -16434,6 +16499,15 @@ "tsx": "4.7.0", "typescript": "5.3.3" } + }, + "packages/server/node_modules/@types/node": { + "version": "20.10.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.5.tgz", + "integrity": "sha512-nNPsNE65wjMxEKI93yOP+NPGGBJz/PoN3kZsVLee0XMiJolxSekEVD8wRwBUBqkwc7UWop0edW50yrCQW4CyRw==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } } } } diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index e8b2433f..77d83a92 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -49,7 +49,9 @@ "build": "tsup --dts-resolve", "clean": "rimraf ./dist ./.turbo ./node_modules", "dev": "tsup --watch", - "lint": "eslint ." + "lint": "eslint .", + "test": "node --test --import tsx/esm **/*.test.ts", + "test:watch": "node --watch --test --import tsx/esm **/*.test.ts" }, "dependencies": { "@neshca/json-replacer-reviver": "*", @@ -63,6 +65,7 @@ "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", + "tsx": "4.7.0", "typescript": "5.3.3" }, "peerDependencies": { diff --git a/packages/cache-handler/src/cache-handler.ts b/packages/cache-handler/src/cache-handler.ts index 6c00985a..923ea8a5 100644 --- a/packages/cache-handler/src/cache-handler.ts +++ b/packages/cache-handler/src/cache-handler.ts @@ -29,6 +29,10 @@ export type RevalidatedTags = Record; * Represents a custom cache implementation. This interface defines essential methods for cache operations. */ export type Cache = { + /** + * A descriptive name for the cache handler instance. + */ + name?: string; /** * Retrieves the value associated with the given key from the cache. * @@ -53,9 +57,11 @@ export type Cache = { /** * Retrieves the {@link RevalidatedTags} object. * - * @returns A Promise that resolves to a {@link RevalidatedTags} object or `undefined` for using a locally maintained {@link RevalidatedTags}. + * @returns A Promise that resolves to a {@link RevalidatedTags} object + * or either `null` or `undefined` for using tags from the next cache layer + * or a locally maintained {@link RevalidatedTags}. */ - getRevalidatedTags?: () => Promise; + getRevalidatedTags?: () => Promise; /** * Marks a specific cache tag as revalidated. Useful for cache invalidation strategies. * @@ -66,6 +72,13 @@ export type Cache = { revalidateTag?: (tag: string, revalidatedAt: number) => Promise; }; +type NamedCache = Cache & { + /** + * A descriptive name or an index for the cache instance. + */ + name: string; +}; + /** * Configuration options for cache behavior. */ @@ -236,6 +249,8 @@ export class IncrementalCache implements CacheHandler { static #revalidatedTags: RevalidatedTags = {}; + static #debug = Boolean(process.env.NEXT_PRIVATE_DEBUG_CACHE); + static onCreationHook: OnCreationHook; /** @@ -300,15 +315,18 @@ export class IncrementalCache implements CacheHandler { // If the file doesn't exist, use the default tagsManifest } - if (!Array.isArray(cache)) { - this.#cache = cache; - - this.#cacheListLength = 1; - - return; - } + const cacheList: NamedCache[] = Array.isArray(cache) + ? cache.reduce((items, cacheItem, index) => { + if (cacheItem) { + items.push({ + ...cacheItem, + name: cacheItem.name || index.toString(), + }); + } - const cacheList = cache.filter((cacheItem): cacheItem is Cache => Boolean(cacheItem)); + return items; + }, []) + : [{ name: '0', ...cache }]; this.#cacheListLength = cacheList.length; @@ -322,27 +340,82 @@ export class IncrementalCache implements CacheHandler { this.#cache = { async get(key) { for await (const cacheItem of cacheList) { - const value = await cacheItem.get(key); - - if (value) { - return value; + try { + const cacheValue = await cacheItem.get(key); + + if (IncrementalCache.#debug) { + // eslint-disable-next-line no-console -- we want to log this + console.log(`get from "${cacheItem.name}"`, key, Boolean(cacheValue)); + } + + return cacheValue; + } catch (error) { + if (IncrementalCache.#debug) { + // eslint-disable-next-line no-console -- we want to log this + console.warn( + `Cache handler "${cacheItem.name}" failed to get value for key "${key}".`, + error, + ); + } + + continue; } } + + return null; }, async set(key, value, ttl) { - await Promise.allSettled(cacheList.map((cacheItem) => cacheItem.set(key, value, ttl))); + await Promise.allSettled( + cacheList.map((cacheItem) => { + try { + return cacheItem.set(key, value, ttl); + } catch (error) { + if (IncrementalCache.#debug) { + // eslint-disable-next-line no-console -- we want to log this + console.warn( + `Cache handler "${cacheItem.name}" failed to set value for key "${key}".`, + error, + ); + } + } + + return Promise.resolve(); + }), + ); }, async getRevalidatedTags() { for await (const cacheItem of cacheList) { - const remoteRevalidatedTags = await cacheItem.getRevalidatedTags?.(); + try { + const revalidatedTags = await cacheItem.getRevalidatedTags?.(); - if (remoteRevalidatedTags) { - return remoteRevalidatedTags; + return revalidatedTags; + } catch (error) { + if (IncrementalCache.#debug) { + // eslint-disable-next-line no-console -- we want to log this + console.warn(`Cache handler "${cacheItem.name}" failed to get revalidated tags.`, error); + } + continue; } } }, async revalidateTag(tag, revalidatedAt) { - await Promise.allSettled(cacheList.map((cacheItem) => cacheItem.revalidateTag?.(tag, revalidatedAt))); + await Promise.allSettled( + cacheList.map((cacheItem) => { + try { + return cacheItem.revalidateTag?.(tag, revalidatedAt); + } catch (error) { + if (IncrementalCache.#debug) { + // eslint-disable-next-line no-console -- we want to log this + console.warn( + `Cache handler "${cacheItem.name}" failed to revalidate tag "${tag}".`, + error, + ); + } + } + + return Promise.resolve(); + }), + ); }, }; } @@ -434,12 +507,16 @@ export class IncrementalCache implements CacheHandler { }; if (cachedData.value?.kind === 'FETCH') { - const storedTags = cachedData.value.tags; + const cachedTags = cachedData.value.tags; // update stored tags if a new one is being added // TODO: remove this when we can send the tags // via header on GET same as SET - if (!tags?.every((tag) => storedTags?.includes(tag))) { + if (!tags?.every((tag) => cachedTags?.includes(tag))) { + if (IncrementalCache.#debug) { + // eslint-disable-next-line no-console -- we want to log this + console.log('tags vs cachedTags mismatch', tags, cachedTags); + } await this.set(cacheKey, cachedData.value, { tags }); } } @@ -553,6 +630,11 @@ export class IncrementalCache implements CacheHandler { if (!cachedData && IncrementalCache.#useFileSystem) { cachedData = await this.readCacheFromFileSystem(cacheKey, kindHint, tags); + if (IncrementalCache.#debug) { + // eslint-disable-next-line no-console -- we want to log this + console.log('get from file system', cacheKey, tags, kindHint, Boolean(cachedData)); + } + if (cachedData) { await IncrementalCache.#cache.set(cacheKey, cachedData); } @@ -645,20 +727,45 @@ export class IncrementalCache implements CacheHandler { typeof revalidate === 'number' ? revalidate : undefined, ); + if (IncrementalCache.#debug) { + // eslint-disable-next-line no-console -- we want to log this + console.log('set to external cache store', cacheKey); + } + if (data && IncrementalCache.#useFileSystem) { await this.writeCacheToFileSystem(data, cacheKey, tags); + + if (IncrementalCache.#debug) { + // eslint-disable-next-line no-console -- we want to log this + console.log('set to file system', cacheKey); + } } } public async revalidateTag(...args: CacheHandlerParametersRevalidateTag): Promise { const [tag] = args; + if (IncrementalCache.#debug) { + // eslint-disable-next-line no-console -- we want to log this + console.log('revalidateTag', tag); + } + await IncrementalCache.#creationPromise; await IncrementalCache.#cache.revalidateTag?.(tag, Date.now()); + if (IncrementalCache.#debug) { + // eslint-disable-next-line no-console -- we want to log this + console.log('updated external revalidated tags'); + } + IncrementalCache.#revalidatedTags[tag] = Date.now(); + if (IncrementalCache.#debug) { + // eslint-disable-next-line no-console -- we want to log this + console.log('updated local revalidated tags'); + } + try { const tagsManifest = Object.entries(IncrementalCache.#revalidatedTags).reduce( (acc, [revalidatedTag, revalidatedAt]) => { @@ -675,9 +782,13 @@ export class IncrementalCache implements CacheHandler { ); await fsPromises.writeFile(IncrementalCache.#tagsManifestPath, JSON.stringify(tagsManifest)); - } catch (err) { + if (IncrementalCache.#debug) { + // eslint-disable-next-line no-console -- we want to log this + console.log('updated tags manifest file'); + } + } catch (error) { // eslint-disable-next-line no-console -- we want to log this - console.warn('Failed to update tags manifest.', err); + console.warn('failed to update tags manifest.', error); } } diff --git a/packages/cache-handler/src/common-types.ts b/packages/cache-handler/src/common-types.ts index d80ce4de..74f021ca 100644 --- a/packages/cache-handler/src/common-types.ts +++ b/packages/cache-handler/src/common-types.ts @@ -1,10 +1,3 @@ import type { RedisClientType } from 'redis'; export type RedisJSON = Parameters['2']; - -export type CacheHandlerOptions = { - /** - * Optional. If set to true, logs errors to the console. Defaults to false. - */ - unstable__logErrors?: boolean; -}; diff --git a/packages/cache-handler/src/handlers/local-lru.ts b/packages/cache-handler/src/handlers/local-lru.ts index d27a34a4..e5140609 100644 --- a/packages/cache-handler/src/handlers/local-lru.ts +++ b/packages/cache-handler/src/handlers/local-lru.ts @@ -1,18 +1,14 @@ /* eslint-disable import/no-default-export -- use default here */ -/* eslint-disable camelcase -- unstable__* */ -/* eslint-disable no-console -- log errors */ import type { LruCacheOptions } from '@neshca/next-lru-cache/next-cache-handler-value'; import { createCache } from '@neshca/next-lru-cache/next-cache-handler-value'; import type { Cache } from '../cache-handler'; -import type { CacheHandlerOptions } from '../common-types'; -export type LruCacheHandlerOptions = CacheHandlerOptions & - LruCacheOptions & { - /** - * Optional. Enables ttl support. Defaults to `false`. - */ - useTtl?: boolean; - }; +export type LruCacheHandlerOptions = LruCacheOptions & { + /** + * Optional. Enables ttl support. Defaults to `false`. + */ + useTtl?: boolean; +}; /** * Creates an LRU (Least Recently Used) cache handler. @@ -31,40 +27,22 @@ export type LruCacheHandlerOptions = CacheHandlerOptions & * const lruCache = createLruCache({ * maxItemsNumber: 10000, // 10000 items * maxItemSizeBytes: 1024 * 1024 * 500, // 500 MB - * unstable__logErrors: true * }); * ``` * * @remarks * Use this Handler as a fallback for Redis Handler instead of the filesystem when you use only the App router. */ -export default function createLruCache({ - unstable__logErrors, - useTtl, - ...lruOptions -}: LruCacheHandlerOptions = {}): Cache { +export default function createLruCache({ useTtl, ...lruOptions }: LruCacheHandlerOptions = {}): Cache { const lruCache = createCache(lruOptions); return { + name: 'local-lru', get(key) { - try { - return Promise.resolve(lruCache.get(key)); - } catch (error) { - if (unstable__logErrors) { - console.error('cache.get', error); - } - - return Promise.resolve(null); - } + return Promise.resolve(lruCache.get(key)); }, set(key, value, ttl = 0) { - try { - lruCache.set(key, value, useTtl ? { ttl: ttl * 1000 } : undefined); - } catch (error) { - if (unstable__logErrors) { - console.error('cache.set', error); - } - } + lruCache.set(key, value, useTtl ? { ttl: ttl * 1000 } : undefined); return Promise.resolve(); }, diff --git a/packages/cache-handler/src/handlers/redis-stack.ts b/packages/cache-handler/src/handlers/redis-stack.ts index 005d4382..f1bc8bc8 100644 --- a/packages/cache-handler/src/handlers/redis-stack.ts +++ b/packages/cache-handler/src/handlers/redis-stack.ts @@ -1,16 +1,15 @@ /* eslint-disable import/no-default-export -- use default here */ -/* eslint-disable camelcase -- unstable__* */ -/* eslint-disable no-console -- log errors */ -import type { RedisClientType, RedisClusterType } from 'redis'; +import type { RedisClientType } from 'redis'; import type { RevalidatedTags, CacheHandlerValue, Cache } from '../cache-handler'; -import type { CacheHandlerOptions, RedisJSON } from '../common-types'; +import type { RedisJSON } from '../common-types'; +import { withTimeout } from '../with-timeout'; /** * The configuration options for the Redis Handler */ -export type RedisCacheHandlerOptions = CacheHandlerOptions & { +export type RedisCacheHandlerOptions = { /** - * The Redis client instance, either `RedisClient` or `RedisCluster`. + * The Redis client instance. */ client: T; /** @@ -36,13 +35,17 @@ export type RedisCacheHandlerOptions = CacheHandlerOptions & { * More details on this limitation can be found in the file system cache configuration documentation. */ useTtl?: boolean; + /** + * Timeout in milliseconds for Redis operations. + */ + timeoutMs?: number; }; /** * Creates a Handler using Redis client. * * This function initializes a Handler for managing cache operations using Redis. - * It supports both Redis Client and Redis Cluster types. The handler includes + * It supports Redis Client. The handler includes * methods to get, set, and manage cache values and revalidated tags. * * @param options - The configuration options for the Redis Handler. See {@link RedisCacheHandlerOptions}. @@ -55,8 +58,7 @@ export type RedisCacheHandlerOptions = CacheHandlerOptions & { * const cache = await createCache({ * client: redisClient, * keyPrefix: 'myApp:', - * revalidatedTagsKey: 'myRevalidatedTags', - * unstable__logErrors: true + * revalidatedTagsKey: 'myRevalidatedTags' * }); * ``` * @@ -67,14 +69,22 @@ export type RedisCacheHandlerOptions = CacheHandlerOptions & { * * The `getRevalidatedTags` and `revalidateTag` methods are used for handling tag-based cache revalidation. */ -export default async function createCache({ +export default async function createCache({ client, keyPrefix = '', revalidatedTagsKey = '__sharedRevalidatedTags__', useTtl = false, - unstable__logErrors = false, + timeoutMs, }: RedisCacheHandlerOptions): Promise { - await client.json.set( + function assertClientIsReady(): void { + if (!client.isReady) { + throw new Error('Redis client is not ready'); + } + } + + assertClientIsReady(); + + const setInitialRevalidatedTags = client.json.set( keyPrefix + revalidatedTagsKey, '.', {}, @@ -83,63 +93,61 @@ export default async function createCache({ +export default function createCache({ client, keyPrefix = '', revalidatedTagsKey = '__sharedRevalidatedTags__', useTtl = false, - unstable__logErrors, + timeoutMs, }: RedisCacheHandlerOptions): Cache { + function assertClientIsReady(): void { + if (!client.isReady) { + throw new Error('Redis client is not ready'); + } + } + return { + name: 'redis-strings', async get(key) { - try { - const result = (await client.get(keyPrefix + key)) ?? null; + assertClientIsReady(); - if (!result) { - return null; - } + const getOperation = client.get(keyPrefix + key); - // use reviveFromBase64Representation to restore binary data from Base64 - return JSON.parse(result, reviveFromBase64Representation) as CacheHandlerValue | null; - } catch (error) { - if (unstable__logErrors) { - console.error('cache.get', error); - } + const result = await withTimeout(getOperation, timeoutMs); + if (!result) { return null; } + + // use reviveFromBase64Representation to restore binary data from Base64 + return JSON.parse(result, reviveFromBase64Representation) as CacheHandlerValue | null; }, async set(key, value, ttl) { - try { - // use replaceJsonWithBase64 to store binary data in Base64 and save space - await client.set( - keyPrefix + key, - JSON.stringify(value, replaceJsonWithBase64), - useTtl && typeof ttl === 'number' ? { EX: ttl } : undefined, - ); - } catch (error) { - if (unstable__logErrors) { - console.error('cache.set', error); - } - } + assertClientIsReady(); + + // use replaceJsonWithBase64 to store binary data in Base64 and save space + const setOperation = client.set( + keyPrefix + key, + JSON.stringify(value, replaceJsonWithBase64), + useTtl && typeof ttl === 'number' ? { EX: ttl } : undefined, + ); + + await withTimeout(setOperation, timeoutMs); }, async getRevalidatedTags() { - try { - const sharedRevalidatedTags = await client.hGetAll(keyPrefix + revalidatedTagsKey); + assertClientIsReady(); - const entries = Object.entries(sharedRevalidatedTags); + const getOperation = client.hGetAll(keyPrefix + revalidatedTagsKey); - const revalidatedTags = entries.reduce((acc, [tag, revalidatedAt]) => { - acc[tag] = Number(revalidatedAt); + const sharedRevalidatedTags = await withTimeout(getOperation, timeoutMs); - return acc; - }, {}); + const entries = Object.entries(sharedRevalidatedTags); - return revalidatedTags; - } catch (error) { - if (unstable__logErrors) { - console.error('cache.getRevalidatedTags', error); - } - } + const revalidatedTags = entries.reduce((acc, [tag, revalidatedAt]) => { + acc[tag] = Number(revalidatedAt); + + return acc; + }, {}); + + return revalidatedTags; }, async revalidateTag(tag, revalidatedAt) { - try { - await client.hSet(keyPrefix + revalidatedTagsKey, { - [tag]: revalidatedAt, - }); - } catch (error) { - if (unstable__logErrors) { - console.error('cache.revalidateTag', error); - } - } + assertClientIsReady(); + + const setOperation = client.hSet(keyPrefix + revalidatedTagsKey, { + [tag]: revalidatedAt, + }); + + await withTimeout(setOperation, timeoutMs); }, }; } diff --git a/packages/cache-handler/src/handlers/server.ts b/packages/cache-handler/src/handlers/server.ts index 274d82bd..6cd1444a 100644 --- a/packages/cache-handler/src/handlers/server.ts +++ b/packages/cache-handler/src/handlers/server.ts @@ -1,11 +1,8 @@ /* eslint-disable import/no-default-export -- use default here */ -/* eslint-disable camelcase -- unstable__* */ -/* eslint-disable no-console -- log errors */ import { reviveFromBase64Representation, replaceJsonWithBase64 } from '@neshca/json-replacer-reviver'; import type { CacheHandlerValue, Cache, RevalidatedTags } from '../cache-handler'; -import type { CacheHandlerOptions } from '../common-types'; -export type ServerCacheHandlerOptions = CacheHandlerOptions & { +export type ServerCacheHandlerOptions = { /** * The base URL of the cache store server. */ @@ -27,127 +24,97 @@ export type ServerCacheHandlerOptions = CacheHandlerOptions & { * ```js * const serverCache = createCache({ * baseUrl: 'http://localhost:8080/', - * unstable__logErrors: true * }); * ``` * * @remarks - * The `get` method retrieves a value from the server cache. If the server response is not OK, it returns `null`. - * - * The `set` method allows setting a value in the server cache. - * - * The `getRevalidatedTags` method retrieves revalidated tags from the server. - * - * The `revalidateTag` method updates the revalidation time for a specific tag in the server cache. - * - * Error handling: If `unstable__logErrors` is true, errors during cache operations are logged to the console. + * - the `get` method retrieves a value from the server cache. If the server response is not OK, it returns `null`. + * - the `set` method allows setting a value in the server cache. + * - the `getRevalidatedTags` method retrieves revalidated tags from the server. + * - the `revalidateTag` method updates the revalidation time for a specific tag in the server cache. */ -export default function createCache({ baseUrl, unstable__logErrors }: ServerCacheHandlerOptions): Cache { +export default function createCache({ baseUrl }: ServerCacheHandlerOptions): Cache { return { + name: 'server', async get(key) { - try { - const url = new URL('/get', baseUrl); + const url = new URL('/get', baseUrl); - url.searchParams.set('key', key); + url.searchParams.set('key', key); - const response = await fetch(url, { - // @ts-expect-error -- act as an internal fetch call - next: { - internal: true, - }, - }); + const response = await fetch(url, { + // @ts-expect-error -- act as an internal fetch call + next: { + internal: true, + }, + }); - if (!response.ok) { - return null; - } - - if (response.status > 500 && response.status < 600) { - throw new Error(`Server error: ${response.status}`); - } + if (response.status === 404) { + return null; + } - const string = await response.text(); + if (!response.ok) { + throw new Error(`Server error: ${response.status}`); + } - return JSON.parse(string, reviveFromBase64Representation) as CacheHandlerValue; - } catch (error) { - if (unstable__logErrors) { - console.error('cache.get', error); - } + const string = await response.text(); - return null; - } + return JSON.parse(string, reviveFromBase64Representation) as CacheHandlerValue; }, async set(key, value, ttl) { - try { - const url = new URL('/set', baseUrl); - const response = await fetch(url, { - method: 'POST', - body: JSON.stringify([key, JSON.stringify(value, replaceJsonWithBase64), ttl]), - headers: { - 'Content-Type': 'application/json', - }, - // @ts-expect-error -- act as an internal fetch call - next: { - internal: true, - }, - }); - - if (response.status > 500 && response.status < 600) { - throw new Error(`Server error: ${response.status}`); - } - } catch (error) { - if (unstable__logErrors) { - console.error('cache.set', error); - } + const url = new URL('/set', baseUrl); + + const response = await fetch(url, { + method: 'POST', + body: JSON.stringify([key, JSON.stringify(value, replaceJsonWithBase64), ttl]), + headers: { + 'Content-Type': 'application/json', + }, + // @ts-expect-error -- act as an internal fetch call + next: { + internal: true, + }, + }); + + if (!response.ok) { + throw new Error(`Server error: ${response.status}`); } }, async getRevalidatedTags() { - try { - const url = new URL('/getRevalidatedTags', baseUrl); - - const response = await fetch(url, { - // @ts-expect-error -- act as an internal fetch call - next: { - internal: true, - }, - }); - - if (!response.ok) { - throw new Error(`Server error.`, { cause: response }); - } - - const json = (await response.json()) as RevalidatedTags; - - return json; - } catch (error) { - if (unstable__logErrors) { - console.error('cache.getRevalidatedTags', error); - } + const url = new URL('/getRevalidatedTags', baseUrl); + + const response = await fetch(url, { + // @ts-expect-error -- act as an internal fetch call + next: { + internal: true, + }, + }); + + if (!response.ok) { + throw new Error(`Server error.`, { cause: response }); } + + const json = (await response.json()) as RevalidatedTags; + + return json; }, async revalidateTag(tag, revalidatedAt) { - try { - const url = new URL('/revalidateTag', baseUrl); - - const response = await fetch(url, { - method: 'POST', - body: JSON.stringify([tag, revalidatedAt]), - headers: { - 'Content-Type': 'application/json', - }, - // @ts-expect-error -- act as an internal fetch call - next: { - internal: true, - }, - }); - - if (response.status > 500 && response.status < 600) { - throw new Error(`Server error: ${response.status}`); - } - } catch (error) { - if (unstable__logErrors) { - console.error('cache.revalidateTag', error); - } + const url = new URL('/revalidateTag', baseUrl); + + const response = await fetch(url, { + method: 'POST', + body: JSON.stringify([tag, revalidatedAt]), + headers: { + 'Content-Type': 'application/json', + }, + // @ts-expect-error -- act as an internal fetch call + next: { + internal: true, + }, + }); + + if (response.status > 500 && response.status < 600) { + throw new Error(`Server error: ${response.status}`); } }, }; diff --git a/packages/cache-handler/src/is-tags-manifest.ts b/packages/cache-handler/src/is-tags-manifest.ts index bbec5274..bcd1f52b 100644 --- a/packages/cache-handler/src/is-tags-manifest.ts +++ b/packages/cache-handler/src/is-tags-manifest.ts @@ -1,10 +1,10 @@ import type { TagsManifest } from '@neshca/next-common'; -function hasItems(object: object): object is { items: object } { +function hasItems(object: object): object is { items: unknown } { return Object.hasOwn(object, 'items'); } -function hasVersion(object: object): object is { version: number } { +function hasVersion(object: object): object is { version: unknown } { return Object.hasOwn(object, 'version'); } @@ -13,9 +13,8 @@ export function isTagsManifest(object: unknown): object is TagsManifest { typeof object === 'object' && object !== null && hasItems(object) && - typeof object.items === 'object' && - object.items !== null && hasVersion(object) && + typeof object.version === 'number' && object.version === 1 ); } diff --git a/packages/cache-handler/src/with-timeout.test.ts b/packages/cache-handler/src/with-timeout.test.ts new file mode 100644 index 00000000..3cbfa0fe --- /dev/null +++ b/packages/cache-handler/src/with-timeout.test.ts @@ -0,0 +1,33 @@ +import { test } from 'node:test'; +import assert from 'node:assert'; +import { withTimeout } from './with-timeout'; + +function simulateOperation(duration: number): Promise { + return new Promise((resolve) => { + setTimeout(resolve, duration, 'completed'); + }); +} + +await test('should resolve if operation finishes before timeout', async () => { + const fastOperation = simulateOperation(100); + const result = await withTimeout(fastOperation, 200); + assert.strictEqual(result, 'completed'); +}); + +await test('should reject if operation times out', async () => { + const slowOperation = simulateOperation(300); + try { + await withTimeout(slowOperation, 100); + assert.fail('Expected operation to time out'); + } catch (error) { + if (error instanceof Error) { + assert.match(error.message, /timed out/); + } + } +}); + +await test('should allow operation without timeout when timeoutMs is undefined', async () => { + const operation = simulateOperation(100); + const result = await withTimeout(operation); + assert.strictEqual(result, 'completed'); +}); diff --git a/packages/cache-handler/src/with-timeout.ts b/packages/cache-handler/src/with-timeout.ts new file mode 100644 index 00000000..7c575c0d --- /dev/null +++ b/packages/cache-handler/src/with-timeout.ts @@ -0,0 +1,19 @@ +export function withTimeout(operation: Promise, timeoutMs?: number): Promise { + if (typeof timeoutMs !== 'number' || isNaN(timeoutMs) || timeoutMs <= 0) { + return operation; + } + + return new Promise((resolve, reject) => { + const timeoutHandle = setTimeout(reject, timeoutMs, new Error(`Operation timed out after ${timeoutMs} ms`)); + + operation + .then((result) => { + clearTimeout(timeoutHandle); + resolve(result); + }) + .catch((error) => { + clearTimeout(timeoutHandle); + reject(error); + }); + }); +} From 19361439a147366afe360b4289d69db071c40624 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Thu, 21 Dec 2023 15:08:51 +0300 Subject: [PATCH 035/458] Version Packages (#234) Co-authored-by: github-actions[bot] --- .changeset/chilled-camels-admire.md | 16 ----- .changeset/sweet-worms-fry.md | 11 --- docs/cache-handler-docs/CHANGELOG.md | 26 +++++-- docs/cache-handler-docs/package.json | 2 +- packages/cache-handler/CHANGELOG.md | 101 ++++++++++++++++----------- packages/cache-handler/package.json | 2 +- 6 files changed, 80 insertions(+), 78 deletions(-) delete mode 100644 .changeset/chilled-camels-admire.md delete mode 100644 .changeset/sweet-worms-fry.md diff --git a/.changeset/chilled-camels-admire.md b/.changeset/chilled-camels-admire.md deleted file mode 100644 index e8f52ccb..00000000 --- a/.changeset/chilled-camels-admire.md +++ /dev/null @@ -1,16 +0,0 @@ ---- -'@neshca/cache-handler': patch ---- - -Refactored the functionality of cache layers - -#### Features - -- removed `unstable__logErrors` option -- introduced `name` property for Handlers for easier debugging -- introduced explicit cache debug logs using `process.env.NEXT_PRIVATE_DEBUG_CACHE` -- added a new `timeoutMs` option to the Redis Handlers - -#### Fixes - -- Made pre-configured Redis Handler not cause page loading to hang diff --git a/.changeset/sweet-worms-fry.md b/.changeset/sweet-worms-fry.md deleted file mode 100644 index f92c3a26..00000000 --- a/.changeset/sweet-worms-fry.md +++ /dev/null @@ -1,11 +0,0 @@ ---- -'cache-handler-docs': patch ---- - -Updated the docs. - -#### What's Changed - -- Added information about the `timeoutMs` option for Redis Handlers. -- Added information about the `name` property for `cache` objects. -- Improved the debugging section. diff --git a/docs/cache-handler-docs/CHANGELOG.md b/docs/cache-handler-docs/CHANGELOG.md index bffa5c1e..03516240 100644 --- a/docs/cache-handler-docs/CHANGELOG.md +++ b/docs/cache-handler-docs/CHANGELOG.md @@ -1,43 +1,55 @@ # cache-handler-docs +## 0.6.2 + +### Patch Changes + +- fb2a5ce: Updated the docs. + + #### What's Changed + + - Added information about the `timeoutMs` option for Redis Handlers. + - Added information about the `name` property for `cache` objects. + - Improved the debugging section. + ## 0.6.1 ### Patch Changes -- d9c5d09: Added the `name` static field to the `IncrementalCache` class and updated the documentation to reflect this in troubleshooting section. +- d9c5d09: Added the `name` static field to the `IncrementalCache` class and updated the documentation to reflect this in troubleshooting section. ## 0.6.0 ### Minor Changes -- 60dab2a: Made the documentation complete. +- 60dab2a: Made the documentation complete. ## 0.5.4 ### Patch Changes -- cdcf136: Fix redis-stack-custom example +- cdcf136: Fix redis-stack-custom example ## 0.5.3 ### Patch Changes -- 571435b: Fix types and improve naming +- 571435b: Fix types and improve naming ## 0.5.2 ### Patch Changes -- a18f2bb: Add async onCreation hook and async Handlers +- a18f2bb: Add async onCreation hook and async Handlers ## 0.5.1 ### Patch Changes -- 9a970af: Add new HTTP Handler and an example to docs +- 9a970af: Add new HTTP Handler and an example to docs ## 0.5.0 ### Minor Changes -- 954a21e: Add docs for new `handlers` API +- 954a21e: Add docs for new `handlers` API diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index b4ed41ae..3ffbf5ee 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -1,6 +1,6 @@ { "name": "cache-handler-docs", - "version": "0.6.1", + "version": "0.6.2", "private": true, "scripts": { "build:docs": "next build", diff --git a/packages/cache-handler/CHANGELOG.md b/packages/cache-handler/CHANGELOG.md index b476679b..8a4db36f 100644 --- a/packages/cache-handler/CHANGELOG.md +++ b/packages/cache-handler/CHANGELOG.md @@ -1,164 +1,181 @@ # @neshca/cache-handler +## 0.6.2 + +### Patch Changes + +- fb2a5ce: Refactored the functionality of cache layers + + #### Features + + - removed `unstable__logErrors` option + - introduced `name` property for Handlers for easier debugging + - introduced explicit cache debug logs using `process.env.NEXT_PRIVATE_DEBUG_CACHE` + - added a new `timeoutMs` option to the Redis Handlers + + #### Fixes + + - Made pre-configured Redis Handler not cause page loading to hang + ## 0.6.1 ### Patch Changes -- d9c5d09: Added the `name` static field to the `IncrementalCache` class and updated the documentation to reflect this in troubleshooting section. +- d9c5d09: Added the `name` static field to the `IncrementalCache` class and updated the documentation to reflect this in troubleshooting section. ## 0.6.0 ### Minor Changes -- 60dab2a: This release introduces a colossal refactoring and new features to the `@neshca/cache-handler` package. +- 60dab2a: This release introduces a colossal refactoring and new features to the `@neshca/cache-handler` package. - #### Breaking Changes + #### Breaking Changes - - Changed the Handlers API; - - `onCreation` now can accept multiple Handlers for cache layering; - - Dropped `diskAccessMode` option; - - Dropped `defaultLruCacheOptions` option; - - Dropped the default LRU cache; - - Renamed `getTagsManifest` cache method to `getRevalidatedTags`; - - Changed the return type of `getRevalidatedTags` cache method; - - Made Handlers to be exported as default exports. + - Changed the Handlers API; + - `onCreation` now can accept multiple Handlers for cache layering; + - Dropped `diskAccessMode` option; + - Dropped `defaultLruCacheOptions` option; + - Dropped the default LRU cache; + - Renamed `getTagsManifest` cache method to `getRevalidatedTags`; + - Changed the return type of `getRevalidatedTags` cache method; + - Made Handlers to be exported as default exports. - #### Features + #### Features - - Added `buildId` to `onCreationHook` context argument; - - Introduced `useFileSystem` option; - - Made the LRU cache an independent Handler like Redis or Server; - - Made `getRevalidatedTags` and `revalidateTag` cache methods to be optional. + - Added `buildId` to `onCreationHook` context argument; + - Introduced `useFileSystem` option; + - Made the LRU cache an independent Handler like Redis or Server; + - Made `getRevalidatedTags` and `revalidateTag` cache methods to be optional. - #### Misc + #### Misc - - Added TSDoc comments to the codebase. + - Added TSDoc comments to the codebase. ## 0.5.4 ### Patch Changes -- 915ecef: Fix Pages router for older Next.js versions +- 915ecef: Fix Pages router for older Next.js versions ## 0.5.3 ### Patch Changes -- 571435b: Fix types and improve naming +- 571435b: Fix types and improve naming ## 0.5.2 ### Patch Changes -- a18f2bb: Add async onCreation hook and async Handlers +- a18f2bb: Add async onCreation hook and async Handlers ## 0.5.1 ### Patch Changes -- 9a970af: Add new HTTP Handler and an example to docs +- 9a970af: Add new HTTP Handler and an example to docs ## 0.5.0 ### Minor Changes -- 954a21e: Use `exports` instead of `main` and `module` in `package.json` +- 954a21e: Use `exports` instead of `main` and `module` in `package.json` - New `handlers` API: + New `handlers` API: - - Add `redis-stack` and `redis-strings` handlers; + - Add `redis-stack` and `redis-strings` handlers; ### Patch Changes -- Updated dependencies [954a21e] - - @neshca/json-replacer-reviver@1.1.0 +- Updated dependencies [954a21e] + - @neshca/json-replacer-reviver@1.1.0 ## 0.4.4 ### Patch Changes -- bd1d48a: Add link to the official Next.js template in the README.md +- bd1d48a: Add link to the official Next.js template in the README.md ## 0.4.3 ### Patch Changes -- e6869ea: Fix usage of `cache-handler` in dev environment +- e6869ea: Fix usage of `cache-handler` in dev environment ## 0.4.2 ### Patch Changes -- a89c527: Update Redis cache handler example and docs +- a89c527: Update Redis cache handler example and docs ## 0.4.1 ### Patch Changes -- cc5323d: Add next14.0.1 to dist tags +- cc5323d: Add next14.0.1 to dist tags ## 0.4.0 ### Minor Changes -- b811b66: Upgrade to Next.js v14.0.0 +- b811b66: Upgrade to Next.js v14.0.0 ## 0.3.12 ### Patch Changes -- d83d9fe: Fix TagsManifest type export +- d83d9fe: Fix TagsManifest type export ## 0.3.11 ### Patch Changes -- 334890f: Add next13.5.6 in distTags +- 334890f: Add next13.5.6 in distTags ## 0.3.10 ### Patch Changes -- be8d389: Improve documentation +- be8d389: Improve documentation ## 0.3.9 ### Patch Changes -- a52f32e: Update README and fix paths to docs +- a52f32e: Update README and fix paths to docs ## 0.3.8 ### Patch Changes -- 6a33283: Rewrite README to be more clear +- 6a33283: Rewrite README to be more clear ## 0.3.7 ### Patch Changes -- a6862db: Add test for app restarting functionality +- a6862db: Add test for app restarting functionality ## 0.3.6 ### Patch Changes -- 892c741: Fix publishing +- 892c741: Fix publishing ## 0.3.5 ### Patch Changes -- 8abe6ea: Add supported Next.js versions to distTags +- 8abe6ea: Add supported Next.js versions to distTags ## 0.3.4 ### Patch Changes -- 577ea45: Automatically add dist-tags to npm packages +- 577ea45: Automatically add dist-tags to npm packages ## 0.3.3 ### Patch Changes -- 32bc1d6: Add changeset configuration for versioning +- 32bc1d6: Add changeset configuration for versioning diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 77d83a92..24dc9880 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -1,6 +1,6 @@ { "name": "@neshca/cache-handler", - "version": "0.6.1", + "version": "0.6.2", "description": "Flexible API to replace the default Next.js cache, accommodating custom cache solutions for multi-instance deployments.", "keywords": [ "cache", From 2fcfa4471b3bf2cf9b7b4db96173b200be15d589 Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Thu, 21 Dec 2023 17:29:06 +0300 Subject: [PATCH 036/458] Update docs and readme (#235) --- docs/cache-handler-docs/theme.config.jsx | 5 ++--- package-lock.json | 4 ++-- packages/cache-handler/README.md | 2 +- 3 files changed, 5 insertions(+), 6 deletions(-) diff --git a/docs/cache-handler-docs/theme.config.jsx b/docs/cache-handler-docs/theme.config.jsx index a8ce0116..38831000 100644 --- a/docs/cache-handler-docs/theme.config.jsx +++ b/docs/cache-handler-docs/theme.config.jsx @@ -52,9 +52,8 @@ export default { banner: { key: '0.6.0-release', text: ( - - 🎉 Version 0.6.0 is out, featuring significant refactoring and an API breaking change. However, the new - docs provide guidance on the new multi-layered cache configuration! + + 🎉 Version 0.6.2 is out, offering named Handlers and explicit logs for improved debugging experience. ), }, diff --git a/package-lock.json b/package-lock.json index ac7bd6c5..9158731f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -115,7 +115,7 @@ } }, "docs/cache-handler-docs": { - "version": "0.6.1", + "version": "0.6.2", "dependencies": { "next": "14.0.4", "nextra": "2.13.2", @@ -16395,7 +16395,7 @@ }, "packages/cache-handler": { "name": "@neshca/cache-handler", - "version": "0.6.1", + "version": "0.6.2", "license": "MIT", "dependencies": { "@neshca/json-replacer-reviver": "*", diff --git a/packages/cache-handler/README.md b/packages/cache-handler/README.md index 58acd508..11e01d11 100644 --- a/packages/cache-handler/README.md +++ b/packages/cache-handler/README.md @@ -2,7 +2,7 @@ **Flexible API to replace the default Next.js cache, accommodating custom cache solutions for multi-instance self-hosted deployments** -🎉 Version 0.6.0 is out, featuring significant refactoring and an API breaking change. However, [the new docs ↗](https://caching-tools.github.io/next-shared-cache/configuration/on-creation) provide guidance on the new multi-layered cache configuration! +🎉 Version 0.6.2 is out, offering named Handlers and explicit logs for improved debugging experience. Check out the [changelog](https://github.com/caching-tools/next-shared-cache/blob/canary/packages/cache-handler/CHANGELOG.md) From 29150a3eb41f34a0261c99612f63a57e9f921e9d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 26 Dec 2023 12:14:59 +0300 Subject: [PATCH 037/458] Bump fastify from 4.25.1 to 4.25.2 (#239) Bumps [fastify](https://github.com/fastify/fastify) from 4.25.1 to 4.25.2. - [Release notes](https://github.com/fastify/fastify/releases) - [Commits](https://github.com/fastify/fastify/compare/v4.25.1...v4.25.2) --- updated-dependencies: - dependency-name: fastify dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- internal/backend/package.json | 2 +- package-lock.json | 12 ++++++------ packages/server/package.json | 2 +- 4 files changed, 9 insertions(+), 9 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 4f06610b..6244867b 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -30,7 +30,7 @@ "@types/react-dom": "18.2.18", "dotenv-cli": "7.3.0", "eslint-config-neshca": "*", - "fastify": "4.25.1", + "fastify": "4.25.2", "pm2": "5.3.0", "redis": "4.6.12", "rimraf": "5.0.5", diff --git a/internal/backend/package.json b/internal/backend/package.json index a658a62f..a7a3686b 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -11,7 +11,7 @@ "start": "node --import tsx/esm ./src/backend.ts" }, "dependencies": { - "fastify": "4.25.1", + "fastify": "4.25.2", "pino": "8.17.1" }, "devDependencies": { diff --git a/package-lock.json b/package-lock.json index 9158731f..06a5ea94 100644 --- a/package-lock.json +++ b/package-lock.json @@ -51,7 +51,7 @@ "@types/react-dom": "18.2.18", "dotenv-cli": "7.3.0", "eslint-config-neshca": "*", - "fastify": "4.25.1", + "fastify": "4.25.2", "pm2": "5.3.0", "redis": "4.6.12", "rimraf": "5.0.5", @@ -256,7 +256,7 @@ "version": "0.0.0", "license": "MIT", "dependencies": { - "fastify": "4.25.1", + "fastify": "4.25.2", "pino": "8.17.1" }, "devDependencies": { @@ -7324,9 +7324,9 @@ "integrity": "sha512-eel5UKGn369gGEWOqBShmFJWfq/xSJvsgDzgLYC845GneayWvXBf0lJCBn5qTABfewy1ZDPoaR5OZCP+kssfuw==" }, "node_modules/fastify": { - "version": "4.25.1", - "resolved": "https://registry.npmjs.org/fastify/-/fastify-4.25.1.tgz", - "integrity": "sha512-D8d0rv61TwqoAS7lom2tvIlgVMlx88lLsiwXyWNjA7CU/LC/mx/Gp2WAlC0S/ABq19U+y/aRvYFG5xLUu2aMrg==", + "version": "4.25.2", + "resolved": "https://registry.npmjs.org/fastify/-/fastify-4.25.2.tgz", + "integrity": "sha512-SywRouGleDHvRh054onj+lEZnbC1sBCLkR0UY3oyJwjD4BdZJUrxBqfkfCaqn74pVCwBaRHGuL3nEWeHbHzAfw==", "dependencies": { "@fastify/ajv-compiler": "^3.5.0", "@fastify/error": "^3.4.0", @@ -16482,7 +16482,7 @@ "version": "0.6.0", "license": "MIT", "dependencies": { - "fastify": "4.25.1", + "fastify": "4.25.2", "pino": "8.17.1" }, "bin": { diff --git a/packages/server/package.json b/packages/server/package.json index 6415634a..9b76eedf 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -26,7 +26,7 @@ "start": "node --import tsx/esm ./src/server.ts" }, "dependencies": { - "fastify": "4.25.1", + "fastify": "4.25.2", "pino": "8.17.1" }, "devDependencies": { From e36a16e7dd304d1a46fb78e4339232c42029b43a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 27 Dec 2023 00:42:09 +0300 Subject: [PATCH 038/458] Bump the pino group with 1 update (#241) Bumps the pino group with 1 update: [pino](https://github.com/pinojs/pino). Updates `pino` from 8.17.1 to 8.17.2 - [Release notes](https://github.com/pinojs/pino/releases) - [Commits](https://github.com/pinojs/pino/compare/v8.17.1...v8.17.2) --- updated-dependencies: - dependency-name: pino dependency-type: direct:production update-type: version-update:semver-patch dependency-group: pino ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- internal/backend/package.json | 2 +- package-lock.json | 17 ++++++----------- packages/server/package.json | 2 +- 3 files changed, 8 insertions(+), 13 deletions(-) diff --git a/internal/backend/package.json b/internal/backend/package.json index a7a3686b..3a114ed8 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -12,7 +12,7 @@ }, "dependencies": { "fastify": "4.25.2", - "pino": "8.17.1" + "pino": "8.17.2" }, "devDependencies": { "@neshca/tsconfig": "*", diff --git a/package-lock.json b/package-lock.json index 06a5ea94..6fddbbab 100644 --- a/package-lock.json +++ b/package-lock.json @@ -257,7 +257,7 @@ "license": "MIT", "dependencies": { "fastify": "4.25.2", - "pino": "8.17.1" + "pino": "8.17.2" }, "devDependencies": { "@neshca/tsconfig": "*", @@ -12056,16 +12056,16 @@ } }, "node_modules/pino": { - "version": "8.17.1", - "resolved": "https://registry.npmjs.org/pino/-/pino-8.17.1.tgz", - "integrity": "sha512-YoN7/NJgnsJ+fkADZqjhRt96iepWBndQHeClmSBH0sQWCb8zGD74t00SK4eOtKFi/f8TUmQnfmgglEhd2kI1RQ==", + "version": "8.17.2", + "resolved": "https://registry.npmjs.org/pino/-/pino-8.17.2.tgz", + "integrity": "sha512-LA6qKgeDMLr2ux2y/YiUt47EfgQ+S9LznBWOJdN3q1dx2sv0ziDLUBeVpyVv17TEcGCBuWf0zNtg3M5m1NhhWQ==", "dependencies": { "atomic-sleep": "^1.0.0", "fast-redact": "^3.1.1", "on-exit-leak-free": "^2.1.0", "pino-abstract-transport": "v1.1.0", "pino-std-serializers": "^6.0.0", - "process-warning": "^2.0.0", + "process-warning": "^3.0.0", "quick-format-unescaped": "^4.0.3", "real-require": "^0.2.0", "safe-stable-stringify": "^2.3.1", @@ -12115,11 +12115,6 @@ "resolved": "https://registry.npmjs.org/pino-std-serializers/-/pino-std-serializers-6.2.2.tgz", "integrity": "sha512-cHjPPsE+vhj/tnhCy/wiMh3M3z3h/j15zHQX+S9GkTBgqJuTuJzYJ4gUyACLhDaJ7kk9ba9iRDmbH2tJU03OiA==" }, - "node_modules/pino/node_modules/process-warning": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/process-warning/-/process-warning-2.3.2.tgz", - "integrity": "sha512-n9wh8tvBe5sFmsqlg+XQhaQLumwpqoAUruLwjCopgTmUBjJ/fjtBsJzKleCaIGBOMXYEhp1YfKl4d7rJ5ZKJGA==" - }, "node_modules/pirates": { "version": "4.0.6", "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz", @@ -16483,7 +16478,7 @@ "license": "MIT", "dependencies": { "fastify": "4.25.2", - "pino": "8.17.1" + "pino": "8.17.2" }, "bin": { "next-cache-server": "dist/server.js" diff --git a/packages/server/package.json b/packages/server/package.json index 9b76eedf..ee19d8c3 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -27,7 +27,7 @@ }, "dependencies": { "fastify": "4.25.2", - "pino": "8.17.1" + "pino": "8.17.2" }, "devDependencies": { "@neshca/next-common": "*", From ec35167b31ffa12e2e9cb7da8fb0c550e818634f Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Wed, 27 Dec 2023 16:30:59 +0300 Subject: [PATCH 039/458] Add Redis stack testing workflow (#238) --- .github/workflows/tests.yml | 29 +++- .gitignore | 4 + apps/cache-testing/.env.example | 2 + .../cache-handler-redis-stack.js | 6 +- apps/cache-testing/next.config.js | 4 +- apps/cache-testing/package.json | 4 +- docs/contributing/monorepo.md | 24 ++++ internal/next-common/package.json | 2 +- package-lock.json | 124 +++++++++--------- turbo.json | 9 +- 10 files changed, 132 insertions(+), 76 deletions(-) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 0c9a087f..e28583d2 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -6,10 +6,22 @@ on: branches: [canary] jobs: test: - name: 'Test all' + name: 'redis-stack' + timeout-minutes: 10 runs-on: ubuntu-latest - container: - image: mcr.microsoft.com/playwright:v1.40.1-jammy + env: + HANDLER_PATH: ./cache-handler-redis-stack + REDIS_URL: redis://localhost:6379 + services: + redis: + image: redis/redis-stack-server:latest + options: >- + --health-cmd "redis-cli ping" + --health-interval 10s + --health-timeout 5s + --health-retries 5 + ports: + - 6379:6379 steps: - uses: actions/checkout@v4 - uses: actions/setup-node@v4 @@ -17,15 +29,22 @@ jobs: node-version-file: '.nvmrc' - name: Install dependencies run: npm ci + - name: Install Playwright Browsers + run: cd apps/cache-testing && npx playwright install --with-deps - name: Build run: npm run build - name: Lint run: npm run lint - name: Run unit tests run: npm test - - name: Build Next.js app and run tests + - name: Run e2e tests run: | npm run start -w backend & - npm run start -w @neshca/server & npm run build:app npm run e2e + - uses: actions/upload-artifact@v4 + if: always() + with: + name: playwright-report + path: apps/cache-testing/playwright-report/ + retention-days: 7 diff --git a/.gitignore b/.gitignore index 91eceaaf..d6f71a03 100644 --- a/.gitignore +++ b/.gitignore @@ -43,3 +43,7 @@ dist # typescript *.tsbuildinfo next-env.d.ts + +# act +.actrc +.act.json \ No newline at end of file diff --git a/apps/cache-testing/.env.example b/apps/cache-testing/.env.example index 69ce03bd..e80641f9 100644 --- a/apps/cache-testing/.env.example +++ b/apps/cache-testing/.env.example @@ -2,3 +2,5 @@ REDIS_URL=redis://localhost:6379 REMOTE_CACHE_SERVER_BASE_URL=http://localhost:8080 HOSTNAME=localhost PPR_ENABLED=false +NEXT_PRIVATE_DEBUG_CACHE=1 +HANDLER_PATH=./cache-handler-redis-stack diff --git a/apps/cache-testing/cache-handler-redis-stack.js b/apps/cache-testing/cache-handler-redis-stack.js index 566502e7..b0c0e10b 100644 --- a/apps/cache-testing/cache-handler-redis-stack.js +++ b/apps/cache-testing/cache-handler-redis-stack.js @@ -18,12 +18,14 @@ const client = createClient({ }, }); -client.on('error', (_error) => { - // console.error('Redis error:', error); +client.on('error', (error) => { + console.error('Redis error:', error); }); IncrementalCache.onCreation(async () => { + console.log('Connecting Redis client...'); await client.connect(); + console.log('Redis client connected.'); const redisCache = await createRedisCache({ client, diff --git a/apps/cache-testing/next.config.js b/apps/cache-testing/next.config.js index 02be70a7..bf8d8ab2 100644 --- a/apps/cache-testing/next.config.js +++ b/apps/cache-testing/next.config.js @@ -1,8 +1,6 @@ const path = require('node:path'); -const incrementalCacheHandlerPath = require.resolve( - process.env.CI ? './cache-handler-server' : './cache-handler-redis-stack', -); +const incrementalCacheHandlerPath = require.resolve(process.env.HANDLER_PATH); /** @type {import('next').NextConfig} */ const nextConfig = { diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 6244867b..fa579cd0 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -15,7 +15,7 @@ "start": "dotenv -e .env.local -v SERVER_STARTED=1 node .next/standalone/apps/cache-testing/server.js" }, "dependencies": { - "next": "14.0.5-canary.17", + "next": "14.0.5-canary.28", "react": "18.2.0", "react-dom": "18.2.0" }, @@ -23,7 +23,7 @@ "@neshca/cache-handler": "*", "@neshca/json-replacer-reviver": "*", "@neshca/tsconfig": "*", - "@next/eslint-plugin-next": "14.0.5-canary.17", + "@next/eslint-plugin-next": "14.0.5-canary.28", "@playwright/test": "1.40.1", "@types/node": "20.10.5", "@types/react": "18.2.45", diff --git a/docs/contributing/monorepo.md b/docs/contributing/monorepo.md index 1798f703..ac2846b4 100644 --- a/docs/contributing/monorepo.md +++ b/docs/contributing/monorepo.md @@ -28,6 +28,30 @@ npm run i **Note**: Don't be alarmed if you notice updates in the `package-lock.json` file after this step. These changes are expected and can be safely committed to your version control. +### 4. Running Tests locally + +Install `act` globally using the official [installation instructions](https://github.com/nektos/act?tab=readme-ov-file#installation-through-package-managers). + +Create a `.actrc` file in the root of the project with the following contents: + +```bash +-e .act.json +``` + +Then, create `.act.json` file near the `.actrc` file with the following contents: + +```json +{ + "act": true +} +``` + +Finally, run the tests locally with: + +```bash +act pull_request +``` + ## Contribution Guidelines To maintain code consistency and quality, follow our coding and style guidelines. Run required checks before committing: diff --git a/internal/next-common/package.json b/internal/next-common/package.json index ab7fbfc8..9362bf1a 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -12,7 +12,7 @@ "lint": "eslint ." }, "dependencies": { - "next": "14.0.5-canary.17" + "next": "14.0.5-canary.28" }, "devDependencies": { "@neshca/tsconfig": "*", diff --git a/package-lock.json b/package-lock.json index 6fddbbab..9d32dab4 100644 --- a/package-lock.json +++ b/package-lock.json @@ -36,7 +36,7 @@ "version": "0.0.0", "license": "MIT", "dependencies": { - "next": "14.0.5-canary.17", + "next": "14.0.5-canary.28", "react": "18.2.0", "react-dom": "18.2.0" }, @@ -44,7 +44,7 @@ "@neshca/cache-handler": "*", "@neshca/json-replacer-reviver": "*", "@neshca/tsconfig": "*", - "@next/eslint-plugin-next": "14.0.5-canary.17", + "@next/eslint-plugin-next": "14.0.5-canary.28", "@playwright/test": "1.40.1", "@types/node": "20.10.5", "@types/react": "18.2.45", @@ -69,11 +69,11 @@ } }, "apps/cache-testing/node_modules/next": { - "version": "14.0.5-canary.17", - "resolved": "https://registry.npmjs.org/next/-/next-14.0.5-canary.17.tgz", - "integrity": "sha512-qetVXiLdRjbfvAbZW8MXlY/R0N2BvhkHhNOB2mGmAdOtp4YWDqM1XlYdBwoDhv1LO9sA7WGREczZIp8qyBQxVg==", + "version": "14.0.5-canary.28", + "resolved": "https://registry.npmjs.org/next/-/next-14.0.5-canary.28.tgz", + "integrity": "sha512-yOYNfSTK1Id2WGro0TGt0Q5zfEJGduISIGYeOEYWIUtSZDOqi8llx5iP/tzWUYwRfSrswgnNurDiZd8KT9XbqA==", "dependencies": { - "@next/env": "14.0.5-canary.17", + "@next/env": "14.0.5-canary.28", "@swc/helpers": "0.5.2", "busboy": "1.6.0", "caniuse-lite": "^1.0.30001406", @@ -89,15 +89,15 @@ "node": ">=18.17.0" }, "optionalDependencies": { - "@next/swc-darwin-arm64": "14.0.5-canary.17", - "@next/swc-darwin-x64": "14.0.5-canary.17", - "@next/swc-linux-arm64-gnu": "14.0.5-canary.17", - "@next/swc-linux-arm64-musl": "14.0.5-canary.17", - "@next/swc-linux-x64-gnu": "14.0.5-canary.17", - "@next/swc-linux-x64-musl": "14.0.5-canary.17", - "@next/swc-win32-arm64-msvc": "14.0.5-canary.17", - "@next/swc-win32-ia32-msvc": "14.0.5-canary.17", - "@next/swc-win32-x64-msvc": "14.0.5-canary.17" + "@next/swc-darwin-arm64": "14.0.5-canary.28", + "@next/swc-darwin-x64": "14.0.5-canary.28", + "@next/swc-linux-arm64-gnu": "14.0.5-canary.28", + "@next/swc-linux-arm64-musl": "14.0.5-canary.28", + "@next/swc-linux-x64-gnu": "14.0.5-canary.28", + "@next/swc-linux-x64-musl": "14.0.5-canary.28", + "@next/swc-win32-arm64-msvc": "14.0.5-canary.28", + "@next/swc-win32-ia32-msvc": "14.0.5-canary.28", + "@next/swc-win32-x64-msvc": "14.0.5-canary.28" }, "peerDependencies": { "@opentelemetry/api": "^1.1.0", @@ -374,7 +374,7 @@ "version": "0.0.0", "license": "MIT", "dependencies": { - "next": "14.0.5-canary.17" + "next": "14.0.5-canary.28" }, "devDependencies": { "@neshca/tsconfig": "*", @@ -394,11 +394,11 @@ } }, "internal/next-common/node_modules/next": { - "version": "14.0.5-canary.17", - "resolved": "https://registry.npmjs.org/next/-/next-14.0.5-canary.17.tgz", - "integrity": "sha512-qetVXiLdRjbfvAbZW8MXlY/R0N2BvhkHhNOB2mGmAdOtp4YWDqM1XlYdBwoDhv1LO9sA7WGREczZIp8qyBQxVg==", + "version": "14.0.5-canary.28", + "resolved": "https://registry.npmjs.org/next/-/next-14.0.5-canary.28.tgz", + "integrity": "sha512-yOYNfSTK1Id2WGro0TGt0Q5zfEJGduISIGYeOEYWIUtSZDOqi8llx5iP/tzWUYwRfSrswgnNurDiZd8KT9XbqA==", "dependencies": { - "@next/env": "14.0.5-canary.17", + "@next/env": "14.0.5-canary.28", "@swc/helpers": "0.5.2", "busboy": "1.6.0", "caniuse-lite": "^1.0.30001406", @@ -414,15 +414,15 @@ "node": ">=18.17.0" }, "optionalDependencies": { - "@next/swc-darwin-arm64": "14.0.5-canary.17", - "@next/swc-darwin-x64": "14.0.5-canary.17", - "@next/swc-linux-arm64-gnu": "14.0.5-canary.17", - "@next/swc-linux-arm64-musl": "14.0.5-canary.17", - "@next/swc-linux-x64-gnu": "14.0.5-canary.17", - "@next/swc-linux-x64-musl": "14.0.5-canary.17", - "@next/swc-win32-arm64-msvc": "14.0.5-canary.17", - "@next/swc-win32-ia32-msvc": "14.0.5-canary.17", - "@next/swc-win32-x64-msvc": "14.0.5-canary.17" + "@next/swc-darwin-arm64": "14.0.5-canary.28", + "@next/swc-darwin-x64": "14.0.5-canary.28", + "@next/swc-linux-arm64-gnu": "14.0.5-canary.28", + "@next/swc-linux-arm64-musl": "14.0.5-canary.28", + "@next/swc-linux-x64-gnu": "14.0.5-canary.28", + "@next/swc-linux-x64-musl": "14.0.5-canary.28", + "@next/swc-win32-arm64-msvc": "14.0.5-canary.28", + "@next/swc-win32-ia32-msvc": "14.0.5-canary.28", + "@next/swc-win32-x64-msvc": "14.0.5-canary.28" }, "peerDependencies": { "@opentelemetry/api": "^1.1.0", @@ -2231,14 +2231,14 @@ "link": true }, "node_modules/@next/env": { - "version": "14.0.5-canary.17", - "resolved": "https://registry.npmjs.org/@next/env/-/env-14.0.5-canary.17.tgz", - "integrity": "sha512-YdmiBGjz18ArskwnPB7U7AwTUO7KjJ1Vn64AdAuE4pQqfRzwIyfz2VL83dsB12njoskhN95XOUBstOYUv2RF4A==" + "version": "14.0.5-canary.28", + "resolved": "https://registry.npmjs.org/@next/env/-/env-14.0.5-canary.28.tgz", + "integrity": "sha512-qDD1MypbRDWPtYEf5FcwnPQXYSmAKx5sNAnq+3nKGmBdu0GbH3GXJToFJZn6ble6dIngJklAsn/w7xo9en2gQw==" }, "node_modules/@next/eslint-plugin-next": { - "version": "14.0.5-canary.17", - "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.0.5-canary.17.tgz", - "integrity": "sha512-lQ6+KbGjrkxwvmUtcfVsN3dgcNqP82h0Pt2xIN+tmUUD/uo3iMEs9mjljH2UxBpD4LJgPdUZ7SyLD9cuWvezAg==", + "version": "14.0.5-canary.28", + "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.0.5-canary.28.tgz", + "integrity": "sha512-zyC2sXN6kVho1m3b1Ub12L+GfY+loXfPBCPC+5AXWQ+ckouaN5w5FtWDUHsIJYcmNo7qzkHz2vxgRHUFYtRwcA==", "dev": true, "dependencies": { "glob": "7.1.7" @@ -2265,9 +2265,9 @@ } }, "node_modules/@next/swc-darwin-arm64": { - "version": "14.0.5-canary.17", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.0.5-canary.17.tgz", - "integrity": "sha512-/sqYvmmSV4388UVGmJrOwcTeKosUPYWBcTQ+YYS7i9gVY2aPaMlZcCXEXsuwOg5Tyav/jd0URWXuh7N9fpVqbw==", + "version": "14.0.5-canary.28", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.0.5-canary.28.tgz", + "integrity": "sha512-835xTkuQ8Y1SUip9WLEZcxfdc5cbGG8Ot0H+QtELgnPxTWBuA3U/v7jIxLYUXitFUwzmWQaWluHFtE/FKCqAtQ==", "cpu": [ "arm64" ], @@ -2280,9 +2280,9 @@ } }, "node_modules/@next/swc-darwin-x64": { - "version": "14.0.5-canary.17", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.0.5-canary.17.tgz", - "integrity": "sha512-JjXrN7q6R1ys3hWUEtyfvjiB2hCxFeAtSq4GVkpugPQH9J4jLXgaxEcTV54ebU5Oh5Fhnazrw6iEJ3Kte9PZZQ==", + "version": "14.0.5-canary.28", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.0.5-canary.28.tgz", + "integrity": "sha512-VsRQfyudlPL77KkjWq4HuYBbd32pteVt8Q5BdNw6pNGAfQsOtZ5axAfOuAwRlelYHVlKjB3pxpTKlEpht1nfXg==", "cpu": [ "x64" ], @@ -2295,9 +2295,9 @@ } }, "node_modules/@next/swc-linux-arm64-gnu": { - "version": "14.0.5-canary.17", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.0.5-canary.17.tgz", - "integrity": "sha512-HTF4ib0YytW8VTcGe6+dqnJt4fE505HjN9z9U1e/OSiYcMs0xd9z5a7f/VVdez3tCt7JYbmdt5aSRebyghk/1A==", + "version": "14.0.5-canary.28", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.0.5-canary.28.tgz", + "integrity": "sha512-dIPclhG0ICnVqinsyjBQRBB7WHVLhI7M/dwSR5QKSp6q9pi86O+aXbH2wxs29pg6clFPlEy4XH4sCgJgNHTY7g==", "cpu": [ "arm64" ], @@ -2310,9 +2310,9 @@ } }, "node_modules/@next/swc-linux-arm64-musl": { - "version": "14.0.5-canary.17", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.0.5-canary.17.tgz", - "integrity": "sha512-KPiZw8nvlU94MJtlXMyN5tNPJkJbRy0obHwm69LevAg/AkS7V5RJ/p/4UESPzFJ6qRfLa2kuT6X9xQPwHleGzQ==", + "version": "14.0.5-canary.28", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.0.5-canary.28.tgz", + "integrity": "sha512-WRNWalDdnKk8GxeQ3loRfm5UJNZzVhAmXeG8XfsLTwJrDiO9V10IH4cxKuTID7Na7zpv/D8zZFs4xnLUl2KynQ==", "cpu": [ "arm64" ], @@ -2325,9 +2325,9 @@ } }, "node_modules/@next/swc-linux-x64-gnu": { - "version": "14.0.5-canary.17", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.0.5-canary.17.tgz", - "integrity": "sha512-B0sw8r+Tg/C9uPYFNiEdGnNIOYZgnb2hnLZrsYrcho8IN+ZpMqckaJg9CmJd/y7ABEGy2IeuVIyG3xUv/RxrMg==", + "version": "14.0.5-canary.28", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.0.5-canary.28.tgz", + "integrity": "sha512-KYMz7jJ8rhq6sfbUtWXR5QdngIOTcB+Pu2s/gWOODlrlCv/ifMV+Jr/WWkfgwpxv235515oEqYpXjIArwI/j9w==", "cpu": [ "x64" ], @@ -2340,9 +2340,9 @@ } }, "node_modules/@next/swc-linux-x64-musl": { - "version": "14.0.5-canary.17", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.0.5-canary.17.tgz", - "integrity": "sha512-Nj+xxWoe9weA8Q9+tJFFARDT7fHg+Ep2PPEo+Wyh/o74K2VKfoChAm/1VwT5QcDKOmK+2zA5L1yA+oaRHayDnQ==", + "version": "14.0.5-canary.28", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.0.5-canary.28.tgz", + "integrity": "sha512-GBqfGCgBuy9SwDvLH+a6X9DRb7l0UMw1F2k1Bm/KXr8yxxfxMmzYVBCTXTB1hzvBvRviLTqPgedaQfqEvCKrnA==", "cpu": [ "x64" ], @@ -2355,9 +2355,9 @@ } }, "node_modules/@next/swc-win32-arm64-msvc": { - "version": "14.0.5-canary.17", - "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.0.5-canary.17.tgz", - "integrity": "sha512-DiTRhyWIIRnkllHbCcjC8gz8igtu7r9/XmnQItgCTHJLpudyQewJ+kq64NKqPzbpO07kN8D6Q+cdOE279z24UQ==", + "version": "14.0.5-canary.28", + "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.0.5-canary.28.tgz", + "integrity": "sha512-wdFExeiSuov0502SQSxmMpns2R8OkY37IL9AnQnJ7/rOSwFY95G919dCUHxfulozPgbJqYej78aomKmk+ovxsA==", "cpu": [ "arm64" ], @@ -2370,9 +2370,9 @@ } }, "node_modules/@next/swc-win32-ia32-msvc": { - "version": "14.0.5-canary.17", - "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.0.5-canary.17.tgz", - "integrity": "sha512-cfrb2fvzIrYFQMj10xssDD5iRULG3S6EjyqKWUjNChXqqj3xSQoKx4LMOqEQTl0IBVJjHhmDny5xZLwO6F6+aQ==", + "version": "14.0.5-canary.28", + "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.0.5-canary.28.tgz", + "integrity": "sha512-n7vDtTbEYXkYCo/j8vsymKMygt5mMqd5YY3xC7RWDhQsuRjrA7a78GEIuVvViAHe7ckrpXjlbdb5gtjWV9LBnQ==", "cpu": [ "ia32" ], @@ -2385,9 +2385,9 @@ } }, "node_modules/@next/swc-win32-x64-msvc": { - "version": "14.0.5-canary.17", - "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.0.5-canary.17.tgz", - "integrity": "sha512-Vc1djW4hEpoc9G63ekNzpFoDq0Zv9XKY3YMyUUP5aKFQgpe72T2GXCSFlVIcTgwoVKiTuDl9wyxEeYpjbMxbWw==", + "version": "14.0.5-canary.28", + "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.0.5-canary.28.tgz", + "integrity": "sha512-5QQpjuoYbUI609HfgMqA3vn9ffxozMc2nRa05SdQR5+V05AVWocziwNUf3bN7db0VYvcbV3o7COrpreizcINGg==", "cpu": [ "x64" ], diff --git a/turbo.json b/turbo.json index 147a19c5..7e468ed5 100644 --- a/turbo.json +++ b/turbo.json @@ -5,7 +5,14 @@ "pipeline": { "build": { "dependsOn": ["^build"], - "env": ["REDIS_URL", "REMOTE_CACHE_SERVER_BASE_URL", "SERVER_STARTED", "PORT", "PPR_ENABLED"], + "env": [ + "REDIS_URL", + "REMOTE_CACHE_SERVER_BASE_URL", + "SERVER_STARTED", + "PORT", + "PPR_ENABLED", + "HANDLER_PATH" + ], "outputs": [".next/**", "!.next/cache/**", "dist/**", "out/**"] }, "build:docs": { From 43fe784e16fa7a1dd514f6f94d667770b3dabf4c Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Wed, 27 Dec 2023 19:09:49 +0300 Subject: [PATCH 040/458] Fix lint (#242) --- apps/cache-testing/next.config.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/cache-testing/next.config.js b/apps/cache-testing/next.config.js index bf8d8ab2..a820bf80 100644 --- a/apps/cache-testing/next.config.js +++ b/apps/cache-testing/next.config.js @@ -1,6 +1,6 @@ const path = require('node:path'); -const incrementalCacheHandlerPath = require.resolve(process.env.HANDLER_PATH); +const incrementalCacheHandlerPath = require.resolve(process.env.HANDLER_PATH ?? './cache-handler-redis-stack'); /** @type {import('next').NextConfig} */ const nextConfig = { From 72d2b3a1f67165bc814d02b4343c5c6db163a48b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 28 Dec 2023 16:00:05 +0300 Subject: [PATCH 041/458] Bump the pino group with 1 update (#243) Bumps the pino group with 1 update: [pino-pretty](https://github.com/pinojs/pino-pretty). Updates `pino-pretty` from 10.3.0 to 10.3.1 - [Release notes](https://github.com/pinojs/pino-pretty/releases) - [Commits](https://github.com/pinojs/pino-pretty/compare/v10.3.0...v10.3.1) --- updated-dependencies: - dependency-name: pino-pretty dependency-type: direct:development update-type: version-update:semver-patch dependency-group: pino ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- internal/backend/package.json | 2 +- package-lock.json | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/internal/backend/package.json b/internal/backend/package.json index 3a114ed8..32320a7e 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -18,7 +18,7 @@ "@neshca/tsconfig": "*", "@types/node": "20.10.5", "eslint-config-neshca": "*", - "pino-pretty": "10.3.0", + "pino-pretty": "10.3.1", "rimraf": "5.0.5", "tsx": "4.7.0", "typescript": "5.3.3" diff --git a/package-lock.json b/package-lock.json index 9d32dab4..a91c3a74 100644 --- a/package-lock.json +++ b/package-lock.json @@ -263,7 +263,7 @@ "@neshca/tsconfig": "*", "@types/node": "20.10.5", "eslint-config-neshca": "*", - "pino-pretty": "10.3.0", + "pino-pretty": "10.3.1", "rimraf": "5.0.5", "tsx": "4.7.0", "typescript": "5.3.3" @@ -12086,9 +12086,9 @@ } }, "node_modules/pino-pretty": { - "version": "10.3.0", - "resolved": "https://registry.npmjs.org/pino-pretty/-/pino-pretty-10.3.0.tgz", - "integrity": "sha512-JthvQW289q3454mhM3/38wFYGWPiBMR28T3CpDNABzoTQOje9UKS7XCJQSnjWF9LQGQkGd8D7h0oq+qwiM3jFA==", + "version": "10.3.1", + "resolved": "https://registry.npmjs.org/pino-pretty/-/pino-pretty-10.3.1.tgz", + "integrity": "sha512-az8JbIYeN/1iLj2t0jR9DV48/LQ3RC6hZPpapKPkb84Q+yTidMCpgWxIT3N0flnBDilyBQ1luWNpOeJptjdp/g==", "dev": true, "dependencies": { "colorette": "^2.0.7", From 26a4f72bfdf56ac2c340a5f7c06d088368b45048 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 31 Dec 2023 01:57:25 +0300 Subject: [PATCH 042/458] Bump the definitely-typed group with 1 update (#244) Bumps the definitely-typed group with 1 update: [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react). Updates `@types/react` from 18.2.45 to 18.2.46 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react) --- updated-dependencies: - dependency-name: "@types/react" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- package-lock.json | 10 +++++----- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index fa579cd0..2a4ae111 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -26,7 +26,7 @@ "@next/eslint-plugin-next": "14.0.5-canary.28", "@playwright/test": "1.40.1", "@types/node": "20.10.5", - "@types/react": "18.2.45", + "@types/react": "18.2.46", "@types/react-dom": "18.2.18", "dotenv-cli": "7.3.0", "eslint-config-neshca": "*", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 3ffbf5ee..a76bb8a0 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -20,7 +20,7 @@ "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.0.4", "@types/node": "20.10.5", - "@types/react": "18.2.45", + "@types/react": "18.2.46", "@types/react-dom": "18.2.18", "eslint-config-neshca": "*", "typescript": "5.3.3" diff --git a/package-lock.json b/package-lock.json index a91c3a74..b0ab949b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -47,7 +47,7 @@ "@next/eslint-plugin-next": "14.0.5-canary.28", "@playwright/test": "1.40.1", "@types/node": "20.10.5", - "@types/react": "18.2.45", + "@types/react": "18.2.46", "@types/react-dom": "18.2.18", "dotenv-cli": "7.3.0", "eslint-config-neshca": "*", @@ -127,7 +127,7 @@ "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.0.4", "@types/node": "20.10.5", - "@types/react": "18.2.45", + "@types/react": "18.2.46", "@types/react-dom": "18.2.18", "eslint-config-neshca": "*", "typescript": "5.3.3" @@ -3170,9 +3170,9 @@ "integrity": "sha512-ga8y9v9uyeiLdpKddhxYQkxNDrfvuPrlFb0N1qnZZByvcElJaXthF1UhvCh9TLWJBEHeNtdnbysW7Y6Uq8CVng==" }, "node_modules/@types/react": { - "version": "18.2.45", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.45.tgz", - "integrity": "sha512-TtAxCNrlrBp8GoeEp1npd5g+d/OejJHFxS3OWmrPBMFaVQMSN0OFySozJio5BHxTuTeug00AVXVAjfDSfk+lUg==", + "version": "18.2.46", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.46.tgz", + "integrity": "sha512-nNCvVBcZlvX4NU1nRRNV/mFl1nNRuTuslAJglQsq+8ldXe5Xv0Wd2f7WTE3jOxhLH2BFfiZGC6GCp+kHQbgG+w==", "dependencies": { "@types/prop-types": "*", "@types/scheduler": "*", From c330429a8b9b378a5b9af5e664dacc4201f16df5 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 9 Jan 2024 10:13:50 +0300 Subject: [PATCH 043/458] Bump the definitely-typed group with 2 updates (#247) Bumps the definitely-typed group with 2 updates: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) and [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react). Updates `@types/node` from 20.10.5 to 20.10.7 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) Updates `@types/react` from 18.2.46 to 18.2.47 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react) --- updated-dependencies: - dependency-name: "@types/node" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed - dependency-name: "@types/react" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 4 +- docs/cache-handler-docs/package.json | 4 +- internal/backend/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 123 ++++---------------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 10 files changed, 36 insertions(+), 109 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 2a4ae111..8ed40ff3 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -25,8 +25,8 @@ "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.0.5-canary.28", "@playwright/test": "1.40.1", - "@types/node": "20.10.5", - "@types/react": "18.2.46", + "@types/node": "20.10.7", + "@types/react": "18.2.47", "@types/react-dom": "18.2.18", "dotenv-cli": "7.3.0", "eslint-config-neshca": "*", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index a76bb8a0..507ebbcc 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -19,8 +19,8 @@ "devDependencies": { "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.0.4", - "@types/node": "20.10.5", - "@types/react": "18.2.46", + "@types/node": "20.10.7", + "@types/react": "18.2.47", "@types/react-dom": "18.2.18", "eslint-config-neshca": "*", "typescript": "5.3.3" diff --git a/internal/backend/package.json b/internal/backend/package.json index 32320a7e..bad08bfe 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -16,7 +16,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.10.5", + "@types/node": "20.10.7", "eslint-config-neshca": "*", "pino-pretty": "10.3.1", "rimraf": "5.0.5", diff --git a/internal/next-common/package.json b/internal/next-common/package.json index 9362bf1a..ee25694e 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -16,7 +16,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.10.5", + "@types/node": "20.10.7", "eslint-config-neshca": "*", "rimraf": "5.0.5", "typescript": "5.3.3" diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index 909c3e3f..c6755d5b 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -17,7 +17,7 @@ "devDependencies": { "@neshca/next-common": "*", "@neshca/tsconfig": "*", - "@types/node": "20.10.5", + "@types/node": "20.10.7", "eslint-config-neshca": "*", "rimraf": "5.0.5", "typescript": "5.3.3" diff --git a/package-lock.json b/package-lock.json index b0ab949b..b334c326 100644 --- a/package-lock.json +++ b/package-lock.json @@ -46,8 +46,8 @@ "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.0.5-canary.28", "@playwright/test": "1.40.1", - "@types/node": "20.10.5", - "@types/react": "18.2.46", + "@types/node": "20.10.7", + "@types/react": "18.2.47", "@types/react-dom": "18.2.18", "dotenv-cli": "7.3.0", "eslint-config-neshca": "*", @@ -59,15 +59,6 @@ "typescript": "5.3.3" } }, - "apps/cache-testing/node_modules/@types/node": { - "version": "20.10.5", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.5.tgz", - "integrity": "sha512-nNPsNE65wjMxEKI93yOP+NPGGBJz/PoN3kZsVLee0XMiJolxSekEVD8wRwBUBqkwc7UWop0edW50yrCQW4CyRw==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "apps/cache-testing/node_modules/next": { "version": "14.0.5-canary.28", "resolved": "https://registry.npmjs.org/next/-/next-14.0.5-canary.28.tgz", @@ -126,8 +117,8 @@ "devDependencies": { "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.0.4", - "@types/node": "20.10.5", - "@types/react": "18.2.46", + "@types/node": "20.10.7", + "@types/react": "18.2.47", "@types/react-dom": "18.2.18", "eslint-config-neshca": "*", "typescript": "5.3.3" @@ -142,15 +133,6 @@ "glob": "7.1.7" } }, - "docs/cache-handler-docs/node_modules/@types/node": { - "version": "20.10.5", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.5.tgz", - "integrity": "sha512-nNPsNE65wjMxEKI93yOP+NPGGBJz/PoN3kZsVLee0XMiJolxSekEVD8wRwBUBqkwc7UWop0edW50yrCQW4CyRw==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "docs/cache-handler-docs/node_modules/glob": { "version": "7.1.7", "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", @@ -261,7 +243,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.10.5", + "@types/node": "20.10.7", "eslint-config-neshca": "*", "pino-pretty": "10.3.1", "rimraf": "5.0.5", @@ -269,15 +251,6 @@ "typescript": "5.3.3" } }, - "internal/backend/node_modules/@types/node": { - "version": "20.10.5", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.5.tgz", - "integrity": "sha512-nNPsNE65wjMxEKI93yOP+NPGGBJz/PoN3kZsVLee0XMiJolxSekEVD8wRwBUBqkwc7UWop0edW50yrCQW4CyRw==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "internal/eslint-config-neshca": { "version": "0.0.0", "license": "MIT", @@ -378,21 +351,12 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.10.5", + "@types/node": "20.10.7", "eslint-config-neshca": "*", "rimraf": "5.0.5", "typescript": "5.3.3" } }, - "internal/next-common/node_modules/@types/node": { - "version": "20.10.5", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.5.tgz", - "integrity": "sha512-nNPsNE65wjMxEKI93yOP+NPGGBJz/PoN3kZsVLee0XMiJolxSekEVD8wRwBUBqkwc7UWop0edW50yrCQW4CyRw==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "internal/next-common/node_modules/next": { "version": "14.0.5-canary.28", "resolved": "https://registry.npmjs.org/next/-/next-14.0.5-canary.28.tgz", @@ -449,21 +413,12 @@ "devDependencies": { "@neshca/next-common": "*", "@neshca/tsconfig": "*", - "@types/node": "20.10.5", + "@types/node": "20.10.7", "eslint-config-neshca": "*", "rimraf": "5.0.5", "typescript": "5.3.3" } }, - "internal/next-lru-cache/node_modules/@types/node": { - "version": "20.10.5", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.5.tgz", - "integrity": "sha512-nNPsNE65wjMxEKI93yOP+NPGGBJz/PoN3kZsVLee0XMiJolxSekEVD8wRwBUBqkwc7UWop0edW50yrCQW4CyRw==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "internal/prettier-config": { "name": "@neshca/prettier-config", "version": "0.0.0", @@ -1870,6 +1825,11 @@ "fs-extra": "^8.1.0" } }, + "node_modules/@manypkg/find-root/node_modules/@types/node": { + "version": "12.20.55", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", + "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" + }, "node_modules/@manypkg/find-root/node_modules/fs-extra": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", @@ -3145,9 +3105,12 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "12.20.55", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", - "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" + "version": "20.10.7", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.7.tgz", + "integrity": "sha512-fRbIKb8C/Y2lXxB5eVMj4IU7xpdox0Lh8bUPEdtLysaylsml1hOOx1+STloRs/B9nf7C6kPRmmg/V7aQW7usNg==", + "dependencies": { + "undici-types": "~5.26.4" + } }, "node_modules/@types/node-fetch": { "version": "2.6.9", @@ -3170,9 +3133,9 @@ "integrity": "sha512-ga8y9v9uyeiLdpKddhxYQkxNDrfvuPrlFb0N1qnZZByvcElJaXthF1UhvCh9TLWJBEHeNtdnbysW7Y6Uq8CVng==" }, "node_modules/@types/react": { - "version": "18.2.46", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.46.tgz", - "integrity": "sha512-nNCvVBcZlvX4NU1nRRNV/mFl1nNRuTuslAJglQsq+8ldXe5Xv0Wd2f7WTE3jOxhLH2BFfiZGC6GCp+kHQbgG+w==", + "version": "18.2.47", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.47.tgz", + "integrity": "sha512-xquNkkOirwyCgoClNk85BjP+aqnIS+ckAJ8i37gAbDs14jfW/J23f2GItAf33oiUPQnqNMALiFeoM9Y5mbjpVQ==", "dependencies": { "@types/prop-types": "*", "@types/scheduler": "*", @@ -16400,7 +16363,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@neshca/tsconfig": "*", - "@types/node": "20.10.5", + "@types/node": "20.10.7", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", @@ -16412,15 +16375,6 @@ "redis": ">=4.6" } }, - "packages/cache-handler/node_modules/@types/node": { - "version": "20.10.5", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.5.tgz", - "integrity": "sha512-nNPsNE65wjMxEKI93yOP+NPGGBJz/PoN3kZsVLee0XMiJolxSekEVD8wRwBUBqkwc7UWop0edW50yrCQW4CyRw==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "packages/diffscribe": { "version": "0.2.1", "license": "MIT", @@ -16429,7 +16383,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.10.5", + "@types/node": "20.10.7", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", @@ -16440,22 +16394,13 @@ "openai": "^4.12.3" } }, - "packages/diffscribe/node_modules/@types/node": { - "version": "20.10.5", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.5.tgz", - "integrity": "sha512-nNPsNE65wjMxEKI93yOP+NPGGBJz/PoN3kZsVLee0XMiJolxSekEVD8wRwBUBqkwc7UWop0edW50yrCQW4CyRw==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "packages/json-replacer-reviver": { "name": "@neshca/json-replacer-reviver", "version": "1.1.0", "license": "MIT", "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.10.5", + "@types/node": "20.10.7", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", @@ -16463,15 +16408,6 @@ "typescript": "5.3.3" } }, - "packages/json-replacer-reviver/node_modules/@types/node": { - "version": "20.10.5", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.5.tgz", - "integrity": "sha512-nNPsNE65wjMxEKI93yOP+NPGGBJz/PoN3kZsVLee0XMiJolxSekEVD8wRwBUBqkwc7UWop0edW50yrCQW4CyRw==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "packages/server": { "name": "@neshca/server", "version": "0.6.0", @@ -16487,22 +16423,13 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@neshca/tsconfig": "*", - "@types/node": "20.10.5", + "@types/node": "20.10.7", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", "tsx": "4.7.0", "typescript": "5.3.3" } - }, - "packages/server/node_modules/@types/node": { - "version": "20.10.5", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.5.tgz", - "integrity": "sha512-nNPsNE65wjMxEKI93yOP+NPGGBJz/PoN3kZsVLee0XMiJolxSekEVD8wRwBUBqkwc7UWop0edW50yrCQW4CyRw==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } } } } diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 24dc9880..f84915c5 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -61,7 +61,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@neshca/tsconfig": "*", - "@types/node": "20.10.5", + "@types/node": "20.10.7", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index 03d78b17..0f121fd6 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -26,7 +26,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.10.5", + "@types/node": "20.10.7", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index a88f19f5..0a5202d5 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -29,7 +29,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.10.5", + "@types/node": "20.10.7", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", diff --git a/packages/server/package.json b/packages/server/package.json index ee19d8c3..286d49a3 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -33,7 +33,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@neshca/tsconfig": "*", - "@types/node": "20.10.5", + "@types/node": "20.10.7", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", From 835f995612a37b6f3d899296028f911b59625a8b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 9 Jan 2024 13:56:51 +0300 Subject: [PATCH 044/458] Bump follow-redirects from 1.15.3 to 1.15.4 (#248) Bumps [follow-redirects](https://github.com/follow-redirects/follow-redirects) from 1.15.3 to 1.15.4. - [Release notes](https://github.com/follow-redirects/follow-redirects/releases) - [Commits](https://github.com/follow-redirects/follow-redirects/compare/v1.15.3...v1.15.4) --- updated-dependencies: - dependency-name: follow-redirects dependency-type: indirect ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index b334c326..c8f9ce36 100644 --- a/package-lock.json +++ b/package-lock.json @@ -7446,9 +7446,9 @@ "integrity": "sha512-Rwix9pBtC1Nuy5wysTmKy+UjbDJpIfg8eHjw0rjZ1mX4GNLz1Bmd16uDpI3Gk1i70Fgcs8Csg2lPm8HULFg9DQ==" }, "node_modules/follow-redirects": { - "version": "1.15.3", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.3.tgz", - "integrity": "sha512-1VzOtuEM8pC9SFU1E+8KfTjZyMztRsgEfwQl44z8A25uy13jSzTj6dyK2Df52iV0vgHCfBwLhDWevLn95w5v6Q==", + "version": "1.15.4", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.4.tgz", + "integrity": "sha512-Cr4D/5wlrb0z9dgERpUL3LrmPKVDsETIJhaCMeDfuFYcqa5bldGV6wBsAN6X/vxlXQtFBMrXdXxdL8CbDTGniw==", "dev": true, "funding": [ { From 8d1e15f8777b5493e69d7950ca1656e8762c5a3a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 10 Jan 2024 00:13:36 +0300 Subject: [PATCH 045/458] Bump the definitely-typed group with 1 update (#250) Bumps the definitely-typed group with 1 update: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node). Updates `@types/node` from 20.10.7 to 20.10.8 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) --- updated-dependencies: - dependency-name: "@types/node" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- internal/backend/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 24 ++++++++++----------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 10 files changed, 21 insertions(+), 21 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 8ed40ff3..e2daecd0 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -25,7 +25,7 @@ "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.0.5-canary.28", "@playwright/test": "1.40.1", - "@types/node": "20.10.7", + "@types/node": "20.10.8", "@types/react": "18.2.47", "@types/react-dom": "18.2.18", "dotenv-cli": "7.3.0", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 507ebbcc..6ba37d92 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -19,7 +19,7 @@ "devDependencies": { "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.0.4", - "@types/node": "20.10.7", + "@types/node": "20.10.8", "@types/react": "18.2.47", "@types/react-dom": "18.2.18", "eslint-config-neshca": "*", diff --git a/internal/backend/package.json b/internal/backend/package.json index bad08bfe..08ad1a86 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -16,7 +16,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.10.7", + "@types/node": "20.10.8", "eslint-config-neshca": "*", "pino-pretty": "10.3.1", "rimraf": "5.0.5", diff --git a/internal/next-common/package.json b/internal/next-common/package.json index ee25694e..acd5ce4b 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -16,7 +16,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.10.7", + "@types/node": "20.10.8", "eslint-config-neshca": "*", "rimraf": "5.0.5", "typescript": "5.3.3" diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index c6755d5b..9b7bbef5 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -17,7 +17,7 @@ "devDependencies": { "@neshca/next-common": "*", "@neshca/tsconfig": "*", - "@types/node": "20.10.7", + "@types/node": "20.10.8", "eslint-config-neshca": "*", "rimraf": "5.0.5", "typescript": "5.3.3" diff --git a/package-lock.json b/package-lock.json index c8f9ce36..5baa8570 100644 --- a/package-lock.json +++ b/package-lock.json @@ -46,7 +46,7 @@ "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.0.5-canary.28", "@playwright/test": "1.40.1", - "@types/node": "20.10.7", + "@types/node": "20.10.8", "@types/react": "18.2.47", "@types/react-dom": "18.2.18", "dotenv-cli": "7.3.0", @@ -117,7 +117,7 @@ "devDependencies": { "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.0.4", - "@types/node": "20.10.7", + "@types/node": "20.10.8", "@types/react": "18.2.47", "@types/react-dom": "18.2.18", "eslint-config-neshca": "*", @@ -243,7 +243,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.10.7", + "@types/node": "20.10.8", "eslint-config-neshca": "*", "pino-pretty": "10.3.1", "rimraf": "5.0.5", @@ -351,7 +351,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.10.7", + "@types/node": "20.10.8", "eslint-config-neshca": "*", "rimraf": "5.0.5", "typescript": "5.3.3" @@ -413,7 +413,7 @@ "devDependencies": { "@neshca/next-common": "*", "@neshca/tsconfig": "*", - "@types/node": "20.10.7", + "@types/node": "20.10.8", "eslint-config-neshca": "*", "rimraf": "5.0.5", "typescript": "5.3.3" @@ -3105,9 +3105,9 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "20.10.7", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.7.tgz", - "integrity": "sha512-fRbIKb8C/Y2lXxB5eVMj4IU7xpdox0Lh8bUPEdtLysaylsml1hOOx1+STloRs/B9nf7C6kPRmmg/V7aQW7usNg==", + "version": "20.10.8", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.8.tgz", + "integrity": "sha512-f8nQs3cLxbAFc00vEU59yf9UyGUftkPaLGfvbVOIDdx2i1b8epBqj2aNGyP19fiyXWvlmZ7qC1XLjAzw/OKIeA==", "dependencies": { "undici-types": "~5.26.4" } @@ -16363,7 +16363,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@neshca/tsconfig": "*", - "@types/node": "20.10.7", + "@types/node": "20.10.8", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", @@ -16383,7 +16383,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.10.7", + "@types/node": "20.10.8", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", @@ -16400,7 +16400,7 @@ "license": "MIT", "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.10.7", + "@types/node": "20.10.8", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", @@ -16423,7 +16423,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@neshca/tsconfig": "*", - "@types/node": "20.10.7", + "@types/node": "20.10.8", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index f84915c5..0bcdad41 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -61,7 +61,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@neshca/tsconfig": "*", - "@types/node": "20.10.7", + "@types/node": "20.10.8", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index 0f121fd6..c0740c4d 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -26,7 +26,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.10.7", + "@types/node": "20.10.8", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 0a5202d5..397a6590 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -29,7 +29,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.10.7", + "@types/node": "20.10.8", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", diff --git a/packages/server/package.json b/packages/server/package.json index 286d49a3..11d1147c 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -33,7 +33,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@neshca/tsconfig": "*", - "@types/node": "20.10.7", + "@types/node": "20.10.8", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", From 277865afd87ed85ccf86351c8b8e5cbb3a95e248 Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Wed, 10 Jan 2024 20:42:41 +0300 Subject: [PATCH 046/458] Updated cache-handler documentation and added support for stale-while-revalidate strategy in useTtl option (#249) --- .changeset/honest-ducks-pull.md | 5 + .changeset/neat-moons-sin.md | 5 + .../src/pages/configuration/ttl.mdx | 67 +- docs/cache-handler-docs/theme.config.jsx | 2 +- docs/contributing/monorepo.md | 2 +- package-lock.json | 1153 +++++++---------- package.json | 7 +- packages/cache-handler/README.md | 2 +- packages/cache-handler/package.json | 8 +- packages/cache-handler/src/cache-handler.ts | 19 +- packages/cache-handler/src/common-types.ts | 30 + packages/cache-handler/src/constants.ts | 1 + .../cache-handler/src/handlers/local-lru.ts | 22 +- .../cache-handler/src/handlers/redis-stack.ts | 49 +- .../src/handlers/redis-strings.ts | 17 +- .../helpers/calculate-eviction-delay.test.ts | 99 ++ .../src/helpers/calculate-eviction-delay.ts | 41 + packages/cache-handler/src/helpers/helpers.ts | 2 + .../src/{ => helpers}/is-tags-manifest.ts | 0 .../src/helpers/promise-with-timeout.test.ts | 72 + .../src/helpers/promise-with-timeout.ts | 34 + .../cache-handler/src/with-timeout.test.ts | 33 - packages/cache-handler/src/with-timeout.ts | 19 - packages/cache-handler/tsup.config.ts | 2 +- 24 files changed, 843 insertions(+), 848 deletions(-) create mode 100644 .changeset/honest-ducks-pull.md create mode 100644 .changeset/neat-moons-sin.md create mode 100644 packages/cache-handler/src/constants.ts create mode 100644 packages/cache-handler/src/helpers/calculate-eviction-delay.test.ts create mode 100644 packages/cache-handler/src/helpers/calculate-eviction-delay.ts create mode 100644 packages/cache-handler/src/helpers/helpers.ts rename packages/cache-handler/src/{ => helpers}/is-tags-manifest.ts (100%) create mode 100644 packages/cache-handler/src/helpers/promise-with-timeout.test.ts create mode 100644 packages/cache-handler/src/helpers/promise-with-timeout.ts delete mode 100644 packages/cache-handler/src/with-timeout.test.ts delete mode 100644 packages/cache-handler/src/with-timeout.ts diff --git a/.changeset/honest-ducks-pull.md b/.changeset/honest-ducks-pull.md new file mode 100644 index 00000000..aef8e01b --- /dev/null +++ b/.changeset/honest-ducks-pull.md @@ -0,0 +1,5 @@ +--- +'@neshca/cache-handler': patch +--- + +Added support for stale-while-revalidate strategy in `useTtl` option. diff --git a/.changeset/neat-moons-sin.md b/.changeset/neat-moons-sin.md new file mode 100644 index 00000000..0b21ecff --- /dev/null +++ b/.changeset/neat-moons-sin.md @@ -0,0 +1,5 @@ +--- +'cache-handler-docs': patch +--- + +Updated docs in `Using TTL` section. diff --git a/docs/cache-handler-docs/src/pages/configuration/ttl.mdx b/docs/cache-handler-docs/src/pages/configuration/ttl.mdx index ecab0cea..96a564d8 100644 --- a/docs/cache-handler-docs/src/pages/configuration/ttl.mdx +++ b/docs/cache-handler-docs/src/pages/configuration/ttl.mdx @@ -15,16 +15,21 @@ To effectively implement TTL, consider the following: In Next.js, ISR allows routes to be incrementally updated through the [`revalidate` ↗](https://nextjs.org/docs/app/building-your-application/data-fetching/fetching-caching-and-revalidating#time-based-revalidation) property in `fetch` or inside the `page` or `route` file. -### Implementing TTL in Preconfigured Handlers +### Using TTL in Preconfigured Handlers -Here's how to implement TTL in preconfigured Handlers: +Here's how to use TTL in preconfigured Handlers: ```js filename="cache-handler.js" copy IncrementalCache.onCreation(async () => { - const useTtl = true; - await client.connect(); + // In this example, we emulate a stale-while-revalidate cache strategy + // After the `maxAge` the cache entry will be treated as stale and will be revalidated + // And if the revalidation fails, it will be removed from the cache after `maxAge * 1.5` + function useTtl(maxAge) { + return maxAge * 1.5; + } + const redisCache = await createRedisCache({ client, useTtl, // Enable TTL for Redis cache @@ -45,17 +50,21 @@ IncrementalCache.onCreation(async () => { For custom cache handlers, here are examples for Redis: -**Redis Strings Example:** +#### Redis Strings Example -```js -// Filename: cache-handler.js +```js filename="cache-handler.js" copy IncrementalCache.onCreation(async () => { const cache = { // ... other cache methods ... - async set(key, value, ttl) { + async set(key, value, maxAge) { // Serialize value and set TTL using Redis 'EX' option - await client.set(key, JSON.stringify(value), typeof ttl === 'number' ? { EX: ttl } : undefined); + await client.set( + key, + JSON.stringify(value, replaceJsonWithBase64), + // Delete key when they become stale + typeof maxAge === 'number' ? { EX: maxAge } : undefined, + ); }, // ... other cache methods ... @@ -68,20 +77,20 @@ IncrementalCache.onCreation(async () => { }); ``` -**Redis Stack Example:** +#### Redis Stack Example -```js -// Filename: cache-handler.js +```js filename="cache-handler.js" copy IncrementalCache.onCreation(async () => { const cache = { // ... other cache methods ... - async set(key, value, ttl) { + async set(key, value, maxAge) { await client.json.set(key, '.', value); - if (typeof ttl === 'number') { + if (typeof maxAge === 'number') { + // Delete key when they become stale // Set TTL using Redis 'EXPIRE' command - await client.expire(key, ttl); + await client.expire(key, maxAge); } }, @@ -94,3 +103,31 @@ IncrementalCache.onCreation(async () => { }; }); ``` + +#### Stale While Revalidate Example + +```js filename="cache-handler.js" copy +const { calculateEvictionDelay } = require('@neshca/cache-handler/helpers'); + +// ... + +IncrementalCache.onCreation(async () => { + const cache = { + // ... other cache methods ... + + async set(key, value, maxAge) { + const EX = calculateEvictionDelay(maxAgeSeconds, useTtl); + // Serialize value and set TTL using Redis 'EX' option + // Delete key with a delay when they become stale + await client.set(key, JSON.stringify(value, replaceJsonWithBase64), EX ? { EX } : undefined); + }, + + // ... other cache methods ... + }; + + return { + useFileSystem: false, // Disable file system cache for TTL efficiency + cache, + }; +}); +``` diff --git a/docs/cache-handler-docs/theme.config.jsx b/docs/cache-handler-docs/theme.config.jsx index 38831000..3bd4b6de 100644 --- a/docs/cache-handler-docs/theme.config.jsx +++ b/docs/cache-handler-docs/theme.config.jsx @@ -53,7 +53,7 @@ export default { key: '0.6.0-release', text: ( - 🎉 Version 0.6.2 is out, offering named Handlers and explicit logs for improved debugging experience. + 🎉 Version 0.6.3 is out, offering stale-while-revalidate strategy emulation! ), }, diff --git a/docs/contributing/monorepo.md b/docs/contributing/monorepo.md index ac2846b4..4d632a14 100644 --- a/docs/contributing/monorepo.md +++ b/docs/contributing/monorepo.md @@ -61,7 +61,7 @@ To maintain code consistency and quality, follow our coding and style guidelines Maintaining a uniform code style throughout the project is essential. Use the command below to format your code according to our standards automatically: ```bash -npm run format +npm run format:fix ``` ### 2. Lint Checks diff --git a/package-lock.json b/package-lock.json index 5baa8570..07f19037 100644 --- a/package-lock.json +++ b/package-lock.json @@ -59,6 +59,15 @@ "typescript": "5.3.3" } }, + "apps/cache-testing/node_modules/@types/node": { + "version": "20.10.8", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.8.tgz", + "integrity": "sha512-f8nQs3cLxbAFc00vEU59yf9UyGUftkPaLGfvbVOIDdx2i1b8epBqj2aNGyP19fiyXWvlmZ7qC1XLjAzw/OKIeA==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "apps/cache-testing/node_modules/next": { "version": "14.0.5-canary.28", "resolved": "https://registry.npmjs.org/next/-/next-14.0.5-canary.28.tgz", @@ -133,6 +142,15 @@ "glob": "7.1.7" } }, + "docs/cache-handler-docs/node_modules/@types/node": { + "version": "20.10.8", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.8.tgz", + "integrity": "sha512-f8nQs3cLxbAFc00vEU59yf9UyGUftkPaLGfvbVOIDdx2i1b8epBqj2aNGyP19fiyXWvlmZ7qC1XLjAzw/OKIeA==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "docs/cache-handler-docs/node_modules/glob": { "version": "7.1.7", "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", @@ -251,6 +269,15 @@ "typescript": "5.3.3" } }, + "internal/backend/node_modules/@types/node": { + "version": "20.10.8", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.8.tgz", + "integrity": "sha512-f8nQs3cLxbAFc00vEU59yf9UyGUftkPaLGfvbVOIDdx2i1b8epBqj2aNGyP19fiyXWvlmZ7qC1XLjAzw/OKIeA==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "internal/eslint-config-neshca": { "version": "0.0.0", "license": "MIT", @@ -357,6 +384,15 @@ "typescript": "5.3.3" } }, + "internal/next-common/node_modules/@types/node": { + "version": "20.10.8", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.8.tgz", + "integrity": "sha512-f8nQs3cLxbAFc00vEU59yf9UyGUftkPaLGfvbVOIDdx2i1b8epBqj2aNGyP19fiyXWvlmZ7qC1XLjAzw/OKIeA==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "internal/next-common/node_modules/next": { "version": "14.0.5-canary.28", "resolved": "https://registry.npmjs.org/next/-/next-14.0.5-canary.28.tgz", @@ -419,6 +455,15 @@ "typescript": "5.3.3" } }, + "internal/next-lru-cache/node_modules/@types/node": { + "version": "20.10.8", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.8.tgz", + "integrity": "sha512-f8nQs3cLxbAFc00vEU59yf9UyGUftkPaLGfvbVOIDdx2i1b8epBqj2aNGyP19fiyXWvlmZ7qC1XLjAzw/OKIeA==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "internal/prettier-config": { "name": "@neshca/prettier-config", "version": "0.0.0", @@ -579,9 +624,9 @@ } }, "node_modules/@babel/core": { - "version": "7.23.6", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.23.6.tgz", - "integrity": "sha512-FxpRyGjrMJXh7X3wGLGhNDCRiwpWEF74sKjTLDJSG5Kyvow3QZaG0Adbqzi9ZrVjTWpsX+2cxWXD71NMg93kdw==", + "version": "7.23.7", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.23.7.tgz", + "integrity": "sha512-+UpDgowcmqe36d4NwqvKsyPMlOLNGMsfMmQ5WGCu+siCe3t3dfe9njrzGfdN4qq+bcNUt0+Vw6haRxBOycs4dw==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.2.0", @@ -589,10 +634,10 @@ "@babel/generator": "^7.23.6", "@babel/helper-compilation-targets": "^7.23.6", "@babel/helper-module-transforms": "^7.23.3", - "@babel/helpers": "^7.23.6", + "@babel/helpers": "^7.23.7", "@babel/parser": "^7.23.6", "@babel/template": "^7.22.15", - "@babel/traverse": "^7.23.6", + "@babel/traverse": "^7.23.7", "@babel/types": "^7.23.6", "convert-source-map": "^2.0.0", "debug": "^4.1.0", @@ -824,13 +869,13 @@ } }, "node_modules/@babel/helpers": { - "version": "7.23.6", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.23.6.tgz", - "integrity": "sha512-wCfsbN4nBidDRhpDhvcKlzHWCTlgJYUUdSJfzXb2NuBssDSIjc3xcb+znA7l+zYsFljAcGM0aFkN40cR3lXiGA==", + "version": "7.23.8", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.23.8.tgz", + "integrity": "sha512-KDqYz4PiOWvDFrdHLPhKtCThtIcKVy6avWD2oG4GEvyQ+XDZwHD4YQd+H2vNMnq2rkdxsDkU82T+Vk8U/WXHRQ==", "dev": true, "dependencies": { "@babel/template": "^7.22.15", - "@babel/traverse": "^7.23.6", + "@babel/traverse": "^7.23.7", "@babel/types": "^7.23.6" }, "engines": { @@ -863,9 +908,9 @@ } }, "node_modules/@babel/runtime": { - "version": "7.23.6", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.23.6.tgz", - "integrity": "sha512-zHd0eUrf5GZoOWVCXp6koAKQTfZV07eit6bGPmJgnZdnSAvvZee6zniW2XMF7Cmc4ISOOnPy3QaSiIJGJkVEDQ==", + "version": "7.23.8", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.23.8.tgz", + "integrity": "sha512-Y7KbAP984rn1VGMbGqKmBLio9V7y5Je9GvU4rQPCPinCyNfUcToxIXl06d59URp/F3LwinvODxab5N/G6qggkw==", "dependencies": { "regenerator-runtime": "^0.14.0" }, @@ -888,9 +933,9 @@ } }, "node_modules/@babel/traverse": { - "version": "7.23.6", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.23.6.tgz", - "integrity": "sha512-czastdK1e8YByZqezMPFiZ8ahwVMh/ESl9vPgvgdB9AmFMGP5jfpFax74AQgl5zj4XHzqeYAg2l8PuUeRS1MgQ==", + "version": "7.23.7", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.23.7.tgz", + "integrity": "sha512-tY3mM8rH9jM0YHFGyfC0/xf+SB5eKUu7HPj7/k3fpi9dAlsMc5YbQvDi0Sh2QTPXqMhyaAtzAr807TIyfQrmyg==", "dev": true, "dependencies": { "@babel/code-frame": "^7.23.5", @@ -1176,9 +1221,9 @@ } }, "node_modules/@esbuild/aix-ppc64": { - "version": "0.19.10", - "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.19.10.tgz", - "integrity": "sha512-Q+mk96KJ+FZ30h9fsJl+67IjNJm3x2eX+GBWGmocAKgzp27cowCOOqSdscX80s0SpdFXZnIv/+1xD1EctFx96Q==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.19.11.tgz", + "integrity": "sha512-FnzU0LyE3ySQk7UntJO4+qIiQgI7KoODnZg5xzXIrFJlKd2P2gwHsHY4927xj9y5PJmJSzULiUCWmv7iWnNa7g==", "cpu": [ "ppc64" ], @@ -1192,9 +1237,9 @@ } }, "node_modules/@esbuild/android-arm": { - "version": "0.19.10", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.19.10.tgz", - "integrity": "sha512-7W0bK7qfkw1fc2viBfrtAEkDKHatYfHzr/jKAHNr9BvkYDXPcC6bodtm8AyLJNNuqClLNaeTLuwURt4PRT9d7w==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.19.11.tgz", + "integrity": "sha512-5OVapq0ClabvKvQ58Bws8+wkLCV+Rxg7tUVbo9xu034Nm536QTII4YzhaFriQ7rMrorfnFKUsArD2lqKbFY4vw==", "cpu": [ "arm" ], @@ -1208,9 +1253,9 @@ } }, "node_modules/@esbuild/android-arm64": { - "version": "0.19.10", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.19.10.tgz", - "integrity": "sha512-1X4CClKhDgC3by7k8aOWZeBXQX8dHT5QAMCAQDArCLaYfkppoARvh0fit3X2Qs+MXDngKcHv6XXyQCpY0hkK1Q==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.19.11.tgz", + "integrity": "sha512-aiu7K/5JnLj//KOnOfEZ0D90obUkRzDMyqd/wNAUQ34m4YUPVhRZpnqKV9uqDGxT7cToSDnIHsGooyIczu9T+Q==", "cpu": [ "arm64" ], @@ -1224,9 +1269,9 @@ } }, "node_modules/@esbuild/android-x64": { - "version": "0.19.10", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.19.10.tgz", - "integrity": "sha512-O/nO/g+/7NlitUxETkUv/IvADKuZXyH4BHf/g/7laqKC4i/7whLpB0gvpPc2zpF0q9Q6FXS3TS75QHac9MvVWw==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.19.11.tgz", + "integrity": "sha512-eccxjlfGw43WYoY9QgB82SgGgDbibcqyDTlk3l3C0jOVHKxrjdc9CTwDUQd0vkvYg5um0OH+GpxYvp39r+IPOg==", "cpu": [ "x64" ], @@ -1240,9 +1285,9 @@ } }, "node_modules/@esbuild/darwin-arm64": { - "version": "0.19.10", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.19.10.tgz", - "integrity": "sha512-YSRRs2zOpwypck+6GL3wGXx2gNP7DXzetmo5pHXLrY/VIMsS59yKfjPizQ4lLt5vEI80M41gjm2BxrGZ5U+VMA==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.19.11.tgz", + "integrity": "sha512-ETp87DRWuSt9KdDVkqSoKoLFHYTrkyz2+65fj9nfXsaV3bMhTCjtQfw3y+um88vGRKRiF7erPrh/ZuIdLUIVxQ==", "cpu": [ "arm64" ], @@ -1256,9 +1301,9 @@ } }, "node_modules/@esbuild/darwin-x64": { - "version": "0.19.10", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.19.10.tgz", - "integrity": "sha512-alfGtT+IEICKtNE54hbvPg13xGBe4GkVxyGWtzr+yHO7HIiRJppPDhOKq3zstTcVf8msXb/t4eavW3jCDpMSmA==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.19.11.tgz", + "integrity": "sha512-fkFUiS6IUK9WYUO/+22omwetaSNl5/A8giXvQlcinLIjVkxwTLSktbF5f/kJMftM2MJp9+fXqZ5ezS7+SALp4g==", "cpu": [ "x64" ], @@ -1272,9 +1317,9 @@ } }, "node_modules/@esbuild/freebsd-arm64": { - "version": "0.19.10", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.19.10.tgz", - "integrity": "sha512-dMtk1wc7FSH8CCkE854GyGuNKCewlh+7heYP/sclpOG6Cectzk14qdUIY5CrKDbkA/OczXq9WesqnPl09mj5dg==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.19.11.tgz", + "integrity": "sha512-lhoSp5K6bxKRNdXUtHoNc5HhbXVCS8V0iZmDvyWvYq9S5WSfTIHU2UGjcGt7UeS6iEYp9eeymIl5mJBn0yiuxA==", "cpu": [ "arm64" ], @@ -1288,9 +1333,9 @@ } }, "node_modules/@esbuild/freebsd-x64": { - "version": "0.19.10", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.19.10.tgz", - "integrity": "sha512-G5UPPspryHu1T3uX8WiOEUa6q6OlQh6gNl4CO4Iw5PS+Kg5bVggVFehzXBJY6X6RSOMS8iXDv2330VzaObm4Ag==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.19.11.tgz", + "integrity": "sha512-JkUqn44AffGXitVI6/AbQdoYAq0TEullFdqcMY/PCUZ36xJ9ZJRtQabzMA+Vi7r78+25ZIBosLTOKnUXBSi1Kw==", "cpu": [ "x64" ], @@ -1304,9 +1349,9 @@ } }, "node_modules/@esbuild/linux-arm": { - "version": "0.19.10", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.19.10.tgz", - "integrity": "sha512-j6gUW5aAaPgD416Hk9FHxn27On28H4eVI9rJ4az7oCGTFW48+LcgNDBN+9f8rKZz7EEowo889CPKyeaD0iw9Kg==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.19.11.tgz", + "integrity": "sha512-3CRkr9+vCV2XJbjwgzjPtO8T0SZUmRZla+UL1jw+XqHZPkPgZiyWvbDvl9rqAN8Zl7qJF0O/9ycMtjU67HN9/Q==", "cpu": [ "arm" ], @@ -1320,9 +1365,9 @@ } }, "node_modules/@esbuild/linux-arm64": { - "version": "0.19.10", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.19.10.tgz", - "integrity": "sha512-QxaouHWZ+2KWEj7cGJmvTIHVALfhpGxo3WLmlYfJ+dA5fJB6lDEIg+oe/0//FuyVHuS3l79/wyBxbHr0NgtxJQ==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.19.11.tgz", + "integrity": "sha512-LneLg3ypEeveBSMuoa0kwMpCGmpu8XQUh+mL8XXwoYZ6Be2qBnVtcDI5azSvh7vioMDhoJFZzp9GWp9IWpYoUg==", "cpu": [ "arm64" ], @@ -1336,9 +1381,9 @@ } }, "node_modules/@esbuild/linux-ia32": { - "version": "0.19.10", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.19.10.tgz", - "integrity": "sha512-4ub1YwXxYjj9h1UIZs2hYbnTZBtenPw5NfXCRgEkGb0b6OJ2gpkMvDqRDYIDRjRdWSe/TBiZltm3Y3Q8SN1xNg==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.19.11.tgz", + "integrity": "sha512-caHy++CsD8Bgq2V5CodbJjFPEiDPq8JJmBdeyZ8GWVQMjRD0sU548nNdwPNvKjVpamYYVL40AORekgfIubwHoA==", "cpu": [ "ia32" ], @@ -1352,9 +1397,9 @@ } }, "node_modules/@esbuild/linux-loong64": { - "version": "0.19.10", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.19.10.tgz", - "integrity": "sha512-lo3I9k+mbEKoxtoIbM0yC/MZ1i2wM0cIeOejlVdZ3D86LAcFXFRdeuZmh91QJvUTW51bOK5W2BznGNIl4+mDaA==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.19.11.tgz", + "integrity": "sha512-ppZSSLVpPrwHccvC6nQVZaSHlFsvCQyjnvirnVjbKSHuE5N24Yl8F3UwYUUR1UEPaFObGD2tSvVKbvR+uT1Nrg==", "cpu": [ "loong64" ], @@ -1368,9 +1413,9 @@ } }, "node_modules/@esbuild/linux-mips64el": { - "version": "0.19.10", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.19.10.tgz", - "integrity": "sha512-J4gH3zhHNbdZN0Bcr1QUGVNkHTdpijgx5VMxeetSk6ntdt+vR1DqGmHxQYHRmNb77tP6GVvD+K0NyO4xjd7y4A==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.19.11.tgz", + "integrity": "sha512-B5x9j0OgjG+v1dF2DkH34lr+7Gmv0kzX6/V0afF41FkPMMqaQ77pH7CrhWeR22aEeHKaeZVtZ6yFwlxOKPVFyg==", "cpu": [ "mips64el" ], @@ -1384,9 +1429,9 @@ } }, "node_modules/@esbuild/linux-ppc64": { - "version": "0.19.10", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.19.10.tgz", - "integrity": "sha512-tgT/7u+QhV6ge8wFMzaklOY7KqiyitgT1AUHMApau32ZlvTB/+efeCtMk4eXS+uEymYK249JsoiklZN64xt6oQ==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.19.11.tgz", + "integrity": "sha512-MHrZYLeCG8vXblMetWyttkdVRjQlQUb/oMgBNurVEnhj4YWOr4G5lmBfZjHYQHHN0g6yDmCAQRR8MUHldvvRDA==", "cpu": [ "ppc64" ], @@ -1400,9 +1445,9 @@ } }, "node_modules/@esbuild/linux-riscv64": { - "version": "0.19.10", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.19.10.tgz", - "integrity": "sha512-0f/spw0PfBMZBNqtKe5FLzBDGo0SKZKvMl5PHYQr3+eiSscfJ96XEknCe+JoOayybWUFQbcJTrk946i3j9uYZA==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.19.11.tgz", + "integrity": "sha512-f3DY++t94uVg141dozDu4CCUkYW+09rWtaWfnb3bqe4w5NqmZd6nPVBm+qbz7WaHZCoqXqHz5p6CM6qv3qnSSQ==", "cpu": [ "riscv64" ], @@ -1416,9 +1461,9 @@ } }, "node_modules/@esbuild/linux-s390x": { - "version": "0.19.10", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.19.10.tgz", - "integrity": "sha512-pZFe0OeskMHzHa9U38g+z8Yx5FNCLFtUnJtQMpwhS+r4S566aK2ci3t4NCP4tjt6d5j5uo4h7tExZMjeKoehAA==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.19.11.tgz", + "integrity": "sha512-A5xdUoyWJHMMlcSMcPGVLzYzpcY8QP1RtYzX5/bS4dvjBGVxdhuiYyFwp7z74ocV7WDc0n1harxmpq2ePOjI0Q==", "cpu": [ "s390x" ], @@ -1432,9 +1477,9 @@ } }, "node_modules/@esbuild/linux-x64": { - "version": "0.19.10", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.19.10.tgz", - "integrity": "sha512-SpYNEqg/6pZYoc+1zLCjVOYvxfZVZj6w0KROZ3Fje/QrM3nfvT2llI+wmKSrWuX6wmZeTapbarvuNNK/qepSgA==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.19.11.tgz", + "integrity": "sha512-grbyMlVCvJSfxFQUndw5mCtWs5LO1gUlwP4CDi4iJBbVpZcqLVT29FxgGuBJGSzyOxotFG4LoO5X+M1350zmPA==", "cpu": [ "x64" ], @@ -1448,9 +1493,9 @@ } }, "node_modules/@esbuild/netbsd-x64": { - "version": "0.19.10", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.19.10.tgz", - "integrity": "sha512-ACbZ0vXy9zksNArWlk2c38NdKg25+L9pr/mVaj9SUq6lHZu/35nx2xnQVRGLrC1KKQqJKRIB0q8GspiHI3J80Q==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.19.11.tgz", + "integrity": "sha512-13jvrQZJc3P230OhU8xgwUnDeuC/9egsjTkXN49b3GcS5BKvJqZn86aGM8W9pd14Kd+u7HuFBMVtrNGhh6fHEQ==", "cpu": [ "x64" ], @@ -1464,9 +1509,9 @@ } }, "node_modules/@esbuild/openbsd-x64": { - "version": "0.19.10", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.19.10.tgz", - "integrity": "sha512-PxcgvjdSjtgPMiPQrM3pwSaG4kGphP+bLSb+cihuP0LYdZv1epbAIecHVl5sD3npkfYBZ0ZnOjR878I7MdJDFg==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.19.11.tgz", + "integrity": "sha512-ysyOGZuTp6SNKPE11INDUeFVVQFrhcNDVUgSQVDzqsqX38DjhPEPATpid04LCoUr2WXhQTEZ8ct/EgJCUDpyNw==", "cpu": [ "x64" ], @@ -1480,9 +1525,9 @@ } }, "node_modules/@esbuild/sunos-x64": { - "version": "0.19.10", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.19.10.tgz", - "integrity": "sha512-ZkIOtrRL8SEJjr+VHjmW0znkPs+oJXhlJbNwfI37rvgeMtk3sxOQevXPXjmAPZPigVTncvFqLMd+uV0IBSEzqA==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.19.11.tgz", + "integrity": "sha512-Hf+Sad9nVwvtxy4DXCZQqLpgmRTQqyFyhT3bZ4F2XlJCjxGmRFF0Shwn9rzhOYRB61w9VMXUkxlBy56dk9JJiQ==", "cpu": [ "x64" ], @@ -1496,9 +1541,9 @@ } }, "node_modules/@esbuild/win32-arm64": { - "version": "0.19.10", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.19.10.tgz", - "integrity": "sha512-+Sa4oTDbpBfGpl3Hn3XiUe4f8TU2JF7aX8cOfqFYMMjXp6ma6NJDztl5FDG8Ezx0OjwGikIHw+iA54YLDNNVfw==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.19.11.tgz", + "integrity": "sha512-0P58Sbi0LctOMOQbpEOvOL44Ne0sqbS0XWHMvvrg6NE5jQ1xguCSSw9jQeUk2lfrXYsKDdOe6K+oZiwKPilYPQ==", "cpu": [ "arm64" ], @@ -1512,9 +1557,9 @@ } }, "node_modules/@esbuild/win32-ia32": { - "version": "0.19.10", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.19.10.tgz", - "integrity": "sha512-EOGVLK1oWMBXgfttJdPHDTiivYSjX6jDNaATeNOaCOFEVcfMjtbx7WVQwPSE1eIfCp/CaSF2nSrDtzc4I9f8TQ==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.19.11.tgz", + "integrity": "sha512-6YOrWS+sDJDmshdBIQU+Uoyh7pQKrdykdefC1avn76ss5c+RN6gut3LZA4E2cH5xUEp5/cA0+YxRaVtRAb0xBg==", "cpu": [ "ia32" ], @@ -1528,9 +1573,9 @@ } }, "node_modules/@esbuild/win32-x64": { - "version": "0.19.10", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.19.10.tgz", - "integrity": "sha512-whqLG6Sc70AbU73fFYvuYzaE4MNMBIlR1Y/IrUeOXFrWHxBEjjbZaQ3IXIQS8wJdAzue2GwYZCjOrgrU1oUHoA==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.19.11.tgz", + "integrity": "sha512-vfkhltrjCAb603XaFhqhAF4LGDi2M4OrCRrFusyQ+iTLQ/o60QQXxc9cZC/FFpihBI9N1Grn6SMKVJ4KP7Fuiw==", "cpu": [ "x64" ], @@ -1675,10 +1720,11 @@ } }, "node_modules/@headlessui/react": { - "version": "1.7.17", - "resolved": "https://registry.npmjs.org/@headlessui/react/-/react-1.7.17.tgz", - "integrity": "sha512-4am+tzvkqDSSgiwrsEpGWqgGo9dz8qU5M3znCkC4PgkpY4HcCZzEDEvozltGGGHIKl9jbXbZPSH5TWn4sWJdow==", + "version": "1.7.18", + "resolved": "https://registry.npmjs.org/@headlessui/react/-/react-1.7.18.tgz", + "integrity": "sha512-4i5DOrzwN4qSgNsL4Si61VMkUcWbcSKueUV7sFhpHzQcSShdlHENE5+QBntMSRvHt8NyoFO2AGG8si9lq+w4zQ==", "dependencies": { + "@tanstack/react-virtual": "^3.0.0-beta.60", "client-only": "^0.0.1" }, "engines": { @@ -1825,11 +1871,6 @@ "fs-extra": "^8.1.0" } }, - "node_modules/@manypkg/find-root/node_modules/@types/node": { - "version": "12.20.55", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", - "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" - }, "node_modules/@manypkg/find-root/node_modules/fs-extra": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", @@ -2515,19 +2556,11 @@ "node": ">=14" } }, - "node_modules/@pkgr/utils": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/@pkgr/utils/-/utils-2.4.2.tgz", - "integrity": "sha512-POgTXhjrTfbTV63DiFXav4lBHiICLKKwDeaKn9Nphwj7WH6m0hMMCaJkMyRWjgtPFyRKRVoMXXjczsTQRDEhYw==", + "node_modules/@pkgr/core": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/@pkgr/core/-/core-0.1.0.tgz", + "integrity": "sha512-Zwq5OCzuwJC2jwqmpEQt7Ds1DTi6BWSwoGkbb1n9pO3hzb35BoJELx7c0T23iDkBGkh2e7tvOtjF3tr3OaQHDQ==", "dev": true, - "dependencies": { - "cross-spawn": "^7.0.3", - "fast-glob": "^3.3.0", - "is-glob": "^4.0.3", - "open": "^9.1.0", - "picocolors": "^1.0.0", - "tslib": "^2.6.0" - }, "engines": { "node": "^12.20.0 || ^14.18.0 || >=16.0.0" }, @@ -2795,9 +2828,9 @@ } }, "node_modules/@rollup/rollup-android-arm-eabi": { - "version": "4.9.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.9.1.tgz", - "integrity": "sha512-6vMdBZqtq1dVQ4CWdhFwhKZL6E4L1dV6jUjuBvsavvNJSppzi6dLBbuV+3+IyUREaj9ZFvQefnQm28v4OCXlig==", + "version": "4.9.4", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.9.4.tgz", + "integrity": "sha512-ub/SN3yWqIv5CWiAZPHVS1DloyZsJbtXmX4HxUTIpS0BHm9pW5iYBo2mIZi+hE3AeiTzHz33blwSnhdUo+9NpA==", "cpu": [ "arm" ], @@ -2808,9 +2841,9 @@ ] }, "node_modules/@rollup/rollup-android-arm64": { - "version": "4.9.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.9.1.tgz", - "integrity": "sha512-Jto9Fl3YQ9OLsTDWtLFPtaIMSL2kwGyGoVCmPC8Gxvym9TCZm4Sie+cVeblPO66YZsYH8MhBKDMGZ2NDxuk/XQ==", + "version": "4.9.4", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.9.4.tgz", + "integrity": "sha512-ehcBrOR5XTl0W0t2WxfTyHCR/3Cq2jfb+I4W+Ch8Y9b5G+vbAecVv0Fx/J1QKktOrgUYsIKxWAKgIpvw56IFNA==", "cpu": [ "arm64" ], @@ -2821,9 +2854,9 @@ ] }, "node_modules/@rollup/rollup-darwin-arm64": { - "version": "4.9.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.9.1.tgz", - "integrity": "sha512-LtYcLNM+bhsaKAIGwVkh5IOWhaZhjTfNOkGzGqdHvhiCUVuJDalvDxEdSnhFzAn+g23wgsycmZk1vbnaibZwwA==", + "version": "4.9.4", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.9.4.tgz", + "integrity": "sha512-1fzh1lWExwSTWy8vJPnNbNM02WZDS8AW3McEOb7wW+nPChLKf3WG2aG7fhaUmfX5FKw9zhsF5+MBwArGyNM7NA==", "cpu": [ "arm64" ], @@ -2834,9 +2867,9 @@ ] }, "node_modules/@rollup/rollup-darwin-x64": { - "version": "4.9.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.9.1.tgz", - "integrity": "sha512-KyP/byeXu9V+etKO6Lw3E4tW4QdcnzDG/ake031mg42lob5tN+5qfr+lkcT/SGZaH2PdW4Z1NX9GHEkZ8xV7og==", + "version": "4.9.4", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.9.4.tgz", + "integrity": "sha512-Gc6cukkF38RcYQ6uPdiXi70JB0f29CwcQ7+r4QpfNpQFVHXRd0DfWFidoGxjSx1DwOETM97JPz1RXL5ISSB0pA==", "cpu": [ "x64" ], @@ -2847,9 +2880,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm-gnueabihf": { - "version": "4.9.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.9.1.tgz", - "integrity": "sha512-Yqz/Doumf3QTKplwGNrCHe/B2p9xqDghBZSlAY0/hU6ikuDVQuOUIpDP/YcmoT+447tsZTmirmjgG3znvSCR0Q==", + "version": "4.9.4", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.9.4.tgz", + "integrity": "sha512-g21RTeFzoTl8GxosHbnQZ0/JkuFIB13C3T7Y0HtKzOXmoHhewLbVTFBQZu+z5m9STH6FZ7L/oPgU4Nm5ErN2fw==", "cpu": [ "arm" ], @@ -2860,9 +2893,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-gnu": { - "version": "4.9.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.9.1.tgz", - "integrity": "sha512-u3XkZVvxcvlAOlQJ3UsD1rFvLWqu4Ef/Ggl40WAVCuogf4S1nJPHh5RTgqYFpCOvuGJ7H5yGHabjFKEZGExk5Q==", + "version": "4.9.4", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.9.4.tgz", + "integrity": "sha512-TVYVWD/SYwWzGGnbfTkrNpdE4HON46orgMNHCivlXmlsSGQOx/OHHYiQcMIOx38/GWgwr/po2LBn7wypkWw/Mg==", "cpu": [ "arm64" ], @@ -2873,9 +2906,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-musl": { - "version": "4.9.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.9.1.tgz", - "integrity": "sha512-0XSYN/rfWShW+i+qjZ0phc6vZ7UWI8XWNz4E/l+6edFt+FxoEghrJHjX1EY/kcUGCnZzYYRCl31SNdfOi450Aw==", + "version": "4.9.4", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.9.4.tgz", + "integrity": "sha512-XcKvuendwizYYhFxpvQ3xVpzje2HHImzg33wL9zvxtj77HvPStbSGI9czrdbfrf8DGMcNNReH9pVZv8qejAQ5A==", "cpu": [ "arm64" ], @@ -2886,9 +2919,9 @@ ] }, "node_modules/@rollup/rollup-linux-riscv64-gnu": { - "version": "4.9.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.9.1.tgz", - "integrity": "sha512-LmYIO65oZVfFt9t6cpYkbC4d5lKHLYv5B4CSHRpnANq0VZUQXGcCPXHzbCXCz4RQnx7jvlYB1ISVNCE/omz5cw==", + "version": "4.9.4", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.9.4.tgz", + "integrity": "sha512-LFHS/8Q+I9YA0yVETyjonMJ3UA+DczeBd/MqNEzsGSTdNvSJa1OJZcSH8GiXLvcizgp9AlHs2walqRcqzjOi3A==", "cpu": [ "riscv64" ], @@ -2899,9 +2932,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-gnu": { - "version": "4.9.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.9.1.tgz", - "integrity": "sha512-kr8rEPQ6ns/Lmr/hiw8sEVj9aa07gh1/tQF2Y5HrNCCEPiCBGnBUt9tVusrcBBiJfIt1yNaXN6r1CCmpbFEDpg==", + "version": "4.9.4", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.9.4.tgz", + "integrity": "sha512-dIYgo+j1+yfy81i0YVU5KnQrIJZE8ERomx17ReU4GREjGtDW4X+nvkBak2xAUpyqLs4eleDSj3RrV72fQos7zw==", "cpu": [ "x64" ], @@ -2912,9 +2945,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-musl": { - "version": "4.9.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.9.1.tgz", - "integrity": "sha512-t4QSR7gN+OEZLG0MiCgPqMWZGwmeHhsM4AkegJ0Kiy6TnJ9vZ8dEIwHw1LcZKhbHxTY32hp9eVCMdR3/I8MGRw==", + "version": "4.9.4", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.9.4.tgz", + "integrity": "sha512-RoaYxjdHQ5TPjaPrLsfKqR3pakMr3JGqZ+jZM0zP2IkDtsGa4CqYaWSfQmZVgFUCgLrTnzX+cnHS3nfl+kB6ZQ==", "cpu": [ "x64" ], @@ -2925,9 +2958,9 @@ ] }, "node_modules/@rollup/rollup-win32-arm64-msvc": { - "version": "4.9.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.9.1.tgz", - "integrity": "sha512-7XI4ZCBN34cb+BH557FJPmh0kmNz2c25SCQeT9OiFWEgf8+dL6ZwJ8f9RnUIit+j01u07Yvrsuu1rZGxJCc51g==", + "version": "4.9.4", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.9.4.tgz", + "integrity": "sha512-T8Q3XHV+Jjf5e49B4EAaLKV74BbX7/qYBRQ8Wop/+TyyU0k+vSjiLVSHNWdVd1goMjZcbhDmYZUYW5RFqkBNHQ==", "cpu": [ "arm64" ], @@ -2938,9 +2971,9 @@ ] }, "node_modules/@rollup/rollup-win32-ia32-msvc": { - "version": "4.9.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.9.1.tgz", - "integrity": "sha512-yE5c2j1lSWOH5jp+Q0qNL3Mdhr8WuqCNVjc6BxbVfS5cAS6zRmdiw7ktb8GNpDCEUJphILY6KACoFoRtKoqNQg==", + "version": "4.9.4", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.9.4.tgz", + "integrity": "sha512-z+JQ7JirDUHAsMecVydnBPWLwJjbppU+7LZjffGf+Jvrxq+dVjIE7By163Sc9DKc3ADSU50qPVw0KonBS+a+HQ==", "cpu": [ "ia32" ], @@ -2951,9 +2984,9 @@ ] }, "node_modules/@rollup/rollup-win32-x64-msvc": { - "version": "4.9.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.9.1.tgz", - "integrity": "sha512-PyJsSsafjmIhVgaI1Zdj7m8BB8mMckFah/xbpplObyHfiXzKcI5UOUXRyOdHW7nz4DpMCuzLnF7v5IWHenCwYA==", + "version": "4.9.4", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.9.4.tgz", + "integrity": "sha512-LfdGXCV9rdEify1oxlN9eamvDSjv9md9ZVMAbNHA87xqIfFCxImxan9qZ8+Un54iK2nnqPlbnSi4R54ONtbWBw==", "cpu": [ "x64" ], @@ -2977,6 +3010,31 @@ "tslib": "^2.4.0" } }, + "node_modules/@tanstack/react-virtual": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@tanstack/react-virtual/-/react-virtual-3.0.1.tgz", + "integrity": "sha512-IFOFuRUTaiM/yibty9qQ9BfycQnYXIDHGP2+cU+0LrFFGNhVxCXSQnaY6wkX8uJVteFEBjUondX0Hmpp7TNcag==", + "dependencies": { + "@tanstack/virtual-core": "3.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/tannerlinsley" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0", + "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0" + } + }, + "node_modules/@tanstack/virtual-core": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@tanstack/virtual-core/-/virtual-core-3.0.0.tgz", + "integrity": "sha512-SYXOBTjJb05rXa2vl55TTwO40A6wKu0R5i1qQwhJYNDIqaIGF7D0HsLw+pJAyi2OvntlEIVusx3xtbbgSUi6zg==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/tannerlinsley" + } + }, "node_modules/@theguild/remark-mermaid": { "version": "0.0.5", "resolved": "https://registry.npmjs.org/@theguild/remark-mermaid/-/remark-mermaid-0.0.5.tgz", @@ -3052,9 +3110,9 @@ } }, "node_modules/@types/hast": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-2.3.8.tgz", - "integrity": "sha512-aMIqAlFd2wTIDZuvLbhUT+TGvMxrNC8ECUIVtH6xxy0sQLs3iu6NO8Kp/VT5je7i5ufnebXzdV1dNDMnvaH6IQ==", + "version": "2.3.9", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-2.3.9.tgz", + "integrity": "sha512-pTHyNlaMD/oKJmS+ZZUyFUcsZeBZpC0lmGquw98CqRVNgAdJZJeD7GoeLiT6Xbx5rU9VCjSt0RwEvDgzh4obFw==", "dependencies": { "@types/unist": "^2" } @@ -3105,17 +3163,14 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "20.10.8", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.8.tgz", - "integrity": "sha512-f8nQs3cLxbAFc00vEU59yf9UyGUftkPaLGfvbVOIDdx2i1b8epBqj2aNGyP19fiyXWvlmZ7qC1XLjAzw/OKIeA==", - "dependencies": { - "undici-types": "~5.26.4" - } + "version": "12.20.55", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", + "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" }, "node_modules/@types/node-fetch": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/@types/node-fetch/-/node-fetch-2.6.9.tgz", - "integrity": "sha512-bQVlnMLFJ2d35DkPNjEPmd9ueO/rh5EiaZt2bhqiSarPjZIuIV6bPQVqcrEyvNo+AfTrRGVazle1tl597w3gfA==", + "version": "2.6.10", + "resolved": "https://registry.npmjs.org/@types/node-fetch/-/node-fetch-2.6.10.tgz", + "integrity": "sha512-PPpPK6F9ALFTn59Ka3BaL+qGuipRfxNE8qVgkp0bVixeiR2c2/L+IVOiBdu9JhhT22sWnQEp6YyHGI2b2+CMcA==", "peer": true, "dependencies": { "@types/node": "*", @@ -3167,16 +3222,16 @@ "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "6.15.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.15.0.tgz", - "integrity": "sha512-j5qoikQqPccq9QoBAupOP+CBu8BaJ8BLjaXSioDISeTZkVO3ig7oSIKh3H+rEpee7xCXtWwSB4KIL5l6hWZzpg==", + "version": "6.18.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.18.1.tgz", + "integrity": "sha512-nISDRYnnIpk7VCFrGcu1rnZfM1Dh9LRHnfgdkjcbi/l7g16VYRri3TjXi9Ir4lOZSw5N/gnV/3H7jIPQ8Q4daA==", "dev": true, "dependencies": { "@eslint-community/regexpp": "^4.5.1", - "@typescript-eslint/scope-manager": "6.15.0", - "@typescript-eslint/type-utils": "6.15.0", - "@typescript-eslint/utils": "6.15.0", - "@typescript-eslint/visitor-keys": "6.15.0", + "@typescript-eslint/scope-manager": "6.18.1", + "@typescript-eslint/type-utils": "6.18.1", + "@typescript-eslint/utils": "6.18.1", + "@typescript-eslint/visitor-keys": "6.18.1", "debug": "^4.3.4", "graphemer": "^1.4.0", "ignore": "^5.2.4", @@ -3202,15 +3257,15 @@ } }, "node_modules/@typescript-eslint/parser": { - "version": "6.15.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.15.0.tgz", - "integrity": "sha512-MkgKNnsjC6QwcMdlNAel24jjkEO/0hQaMDLqP4S9zq5HBAUJNQB6y+3DwLjX7b3l2b37eNAxMPLwb3/kh8VKdA==", + "version": "6.18.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.18.1.tgz", + "integrity": "sha512-zct/MdJnVaRRNy9e84XnVtRv9Vf91/qqe+hZJtKanjojud4wAVy/7lXxJmMyX6X6J+xc6c//YEWvpeif8cAhWA==", "dev": true, "dependencies": { - "@typescript-eslint/scope-manager": "6.15.0", - "@typescript-eslint/types": "6.15.0", - "@typescript-eslint/typescript-estree": "6.15.0", - "@typescript-eslint/visitor-keys": "6.15.0", + "@typescript-eslint/scope-manager": "6.18.1", + "@typescript-eslint/types": "6.18.1", + "@typescript-eslint/typescript-estree": "6.18.1", + "@typescript-eslint/visitor-keys": "6.18.1", "debug": "^4.3.4" }, "engines": { @@ -3230,13 +3285,13 @@ } }, "node_modules/@typescript-eslint/scope-manager": { - "version": "6.15.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.15.0.tgz", - "integrity": "sha512-+BdvxYBltqrmgCNu4Li+fGDIkW9n//NrruzG9X1vBzaNK+ExVXPoGB71kneaVw/Jp+4rH/vaMAGC6JfMbHstVg==", + "version": "6.18.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.18.1.tgz", + "integrity": "sha512-BgdBwXPFmZzaZUuw6wKiHKIovms97a7eTImjkXCZE04TGHysG+0hDQPmygyvgtkoB/aOQwSM/nWv3LzrOIQOBw==", "dev": true, "dependencies": { - "@typescript-eslint/types": "6.15.0", - "@typescript-eslint/visitor-keys": "6.15.0" + "@typescript-eslint/types": "6.18.1", + "@typescript-eslint/visitor-keys": "6.18.1" }, "engines": { "node": "^16.0.0 || >=18.0.0" @@ -3247,13 +3302,13 @@ } }, "node_modules/@typescript-eslint/type-utils": { - "version": "6.15.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.15.0.tgz", - "integrity": "sha512-CnmHKTfX6450Bo49hPg2OkIm/D/TVYV7jO1MCfPYGwf6x3GO0VU8YMO5AYMn+u3X05lRRxA4fWCz87GFQV6yVQ==", + "version": "6.18.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.18.1.tgz", + "integrity": "sha512-wyOSKhuzHeU/5pcRDP2G2Ndci+4g653V43gXTpt4nbyoIOAASkGDA9JIAgbQCdCkcr1MvpSYWzxTz0olCn8+/Q==", "dev": true, "dependencies": { - "@typescript-eslint/typescript-estree": "6.15.0", - "@typescript-eslint/utils": "6.15.0", + "@typescript-eslint/typescript-estree": "6.18.1", + "@typescript-eslint/utils": "6.18.1", "debug": "^4.3.4", "ts-api-utils": "^1.0.1" }, @@ -3274,9 +3329,9 @@ } }, "node_modules/@typescript-eslint/types": { - "version": "6.15.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.15.0.tgz", - "integrity": "sha512-yXjbt//E4T/ee8Ia1b5mGlbNj9fB9lJP4jqLbZualwpP2BCQ5is6BcWwxpIsY4XKAhmdv3hrW92GdtJbatC6dQ==", + "version": "6.18.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.18.1.tgz", + "integrity": "sha512-4TuMAe+tc5oA7wwfqMtB0Y5OrREPF1GeJBAjqwgZh1lEMH5PJQgWgHGfYufVB51LtjD+peZylmeyxUXPfENLCw==", "dev": true, "engines": { "node": "^16.0.0 || >=18.0.0" @@ -3287,16 +3342,17 @@ } }, "node_modules/@typescript-eslint/typescript-estree": { - "version": "6.15.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.15.0.tgz", - "integrity": "sha512-7mVZJN7Hd15OmGuWrp2T9UvqR2Ecg+1j/Bp1jXUEY2GZKV6FXlOIoqVDmLpBiEiq3katvj/2n2mR0SDwtloCew==", + "version": "6.18.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.18.1.tgz", + "integrity": "sha512-fv9B94UAhywPRhUeeV/v+3SBDvcPiLxRZJw/xZeeGgRLQZ6rLMG+8krrJUyIf6s1ecWTzlsbp0rlw7n9sjufHA==", "dev": true, "dependencies": { - "@typescript-eslint/types": "6.15.0", - "@typescript-eslint/visitor-keys": "6.15.0", + "@typescript-eslint/types": "6.18.1", + "@typescript-eslint/visitor-keys": "6.18.1", "debug": "^4.3.4", "globby": "^11.1.0", "is-glob": "^4.0.3", + "minimatch": "9.0.3", "semver": "^7.5.4", "ts-api-utils": "^1.0.1" }, @@ -3313,18 +3369,42 @@ } } }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/minimatch": { + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", + "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/@typescript-eslint/utils": { - "version": "6.15.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.15.0.tgz", - "integrity": "sha512-eF82p0Wrrlt8fQSRL0bGXzK5nWPRV2dYQZdajcfzOD9+cQz9O7ugifrJxclB+xVOvWvagXfqS4Es7vpLP4augw==", + "version": "6.18.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.18.1.tgz", + "integrity": "sha512-zZmTuVZvD1wpoceHvoQpOiewmWu3uP9FuTWo8vqpy2ffsmfCE8mklRPi+vmnIYAIk9t/4kOThri2QCDgor+OpQ==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.4.0", "@types/json-schema": "^7.0.12", "@types/semver": "^7.5.0", - "@typescript-eslint/scope-manager": "6.15.0", - "@typescript-eslint/types": "6.15.0", - "@typescript-eslint/typescript-estree": "6.15.0", + "@typescript-eslint/scope-manager": "6.18.1", + "@typescript-eslint/types": "6.18.1", + "@typescript-eslint/typescript-estree": "6.18.1", "semver": "^7.5.4" }, "engines": { @@ -3339,12 +3419,12 @@ } }, "node_modules/@typescript-eslint/visitor-keys": { - "version": "6.15.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.15.0.tgz", - "integrity": "sha512-1zvtdC1a9h5Tb5jU9x3ADNXO9yjP8rXlaoChu0DQX40vf5ACVpYIVIZhIMZ6d5sDXH7vq4dsZBT1fEGj8D2n2w==", + "version": "6.18.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.18.1.tgz", + "integrity": "sha512-/kvt0C5lRqGoCfsbmm7/CwMqoSkY3zzHLIjdhHZQW3VFrnz7ATecOHR7nb7V+xn4286MBxfnQfQhAmCI0u+bJA==", "dev": true, "dependencies": { - "@typescript-eslint/types": "6.15.0", + "@typescript-eslint/types": "6.18.1", "eslint-visitor-keys": "^3.4.1" }, "engines": { @@ -3377,9 +3457,9 @@ "integrity": "sha512-2BjRTZxTPvheOvGbBslFSYOUkr+SjPtOnrLP33f+VIWLzezQpZcqVg7ja3L4dBXmzzgwT+a029jRx5PCi3JuiA==" }, "node_modules/acorn": { - "version": "8.11.2", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.2.tgz", - "integrity": "sha512-nc0Axzp/0FILLEVsm4fNwLCwMttvhEI263QtVPQcbpfZZ3ts0hLsZGOpE6czNlid7CJ9MlyH8reXkpsf3YUY4w==", + "version": "8.11.3", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.3.tgz", + "integrity": "sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==", "bin": { "acorn": "bin/acorn" }, @@ -3906,15 +3986,6 @@ "node": ">=4" } }, - "node_modules/big-integer": { - "version": "1.6.52", - "resolved": "https://registry.npmjs.org/big-integer/-/big-integer-1.6.52.tgz", - "integrity": "sha512-QxD8cf2eVqJOOz63z6JIN9BzvVs/dlySa5HGSBH5xtR8dPteIRQnBxxKqkNTiT6jbDTF6jAfrd4oMcND9RGbQg==", - "dev": true, - "engines": { - "node": ">=0.6" - } - }, "node_modules/binary-extensions": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", @@ -3942,18 +4013,6 @@ "integrity": "sha512-Ylo+MAo5BDUq1KA3f3R/MFhh+g8cnHmo8bz3YPGhI1znrMaf77ol1sfvYJzsw3nTE+Y2GryfDxBaR+AqpAkEHQ==", "dev": true }, - "node_modules/bplist-parser": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/bplist-parser/-/bplist-parser-0.2.0.tgz", - "integrity": "sha512-z0M+byMThzQmD9NILRniCUXYsYpjwnlO8N5uCFaCqIOpqRsJCrQL9NK3JsD67CN5a08nF5oIL2bD6loTdHOuKw==", - "dev": true, - "dependencies": { - "big-integer": "^1.6.44" - }, - "engines": { - "node": ">= 5.10.0" - } - }, "node_modules/brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", @@ -4056,21 +4115,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/bundle-name": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/bundle-name/-/bundle-name-3.0.0.tgz", - "integrity": "sha512-PKA4BeSvBpQKQ8iPOGCSiell+N8P+Tf1DlwqmYhpe2gAhKPHn8EYOxVT+ShuGmhg8lN8XiSlS80yiExKXrURlw==", - "dev": true, - "dependencies": { - "run-applescript": "^5.0.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/bundle-require": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/bundle-require/-/bundle-require-4.0.2.tgz", @@ -4161,9 +4205,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001570", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001570.tgz", - "integrity": "sha512-+3e0ASu4sw1SWaoCtvPeyXp+5PsjigkSt8OXZbF9StH5pQWbxEjLAZE3n8Aup5udop1uRiKA7a4utUk/uoSpUw==", + "version": "1.0.30001576", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001576.tgz", + "integrity": "sha512-ff5BdakGe2P3SQsMsiqmt1Lc8221NR1VzHj5jXN5vBny9A6fpze94HiVV/n7XRosOlsShJcvMv5mdnpjOGCEgg==", "funding": [ { "type": "opencollective", @@ -4521,9 +4565,9 @@ } }, "node_modules/clsx": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/clsx/-/clsx-2.0.0.tgz", - "integrity": "sha512-rQ1+kcj+ttHG0MKVGBUXwayCCF1oh39BF5COIpRzuCEv8Mwjv0XucrI2ExNTOn9IlLifGClWQcU9BrZORvtw6Q==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/clsx/-/clsx-2.1.0.tgz", + "integrity": "sha512-m3iNNWpd9rl3jvvcBnu70ylMdrXt8Vlq4HYadnU5fwcOtvkSQWPmj7amUcDT2qYI7risszBjI5AUIUox9D16pg==", "engines": { "node": ">=6" } @@ -4697,9 +4741,9 @@ "dev": true }, "node_modules/cytoscape": { - "version": "3.28.0", - "resolved": "https://registry.npmjs.org/cytoscape/-/cytoscape-3.28.0.tgz", - "integrity": "sha512-x7+BHQXN90Audv5xXvdOECmiKuZdeKeoqOmDuYoht4zDKSdObC0Z9AdJXFkXEQvXU8UndI6WnTz47TRI7duReg==", + "version": "3.28.1", + "resolved": "https://registry.npmjs.org/cytoscape/-/cytoscape-3.28.1.tgz", + "integrity": "sha512-xyItz4O/4zp9/239wCcH8ZcFuuZooEeF8KHRmzjDfGdXsj3OG9MFSMA0pJE0uX3uCN/ygof6hHf4L7lst+JaDg==", "dependencies": { "heap": "^0.2.6", "lodash": "^4.17.21" @@ -5270,180 +5314,6 @@ "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", "dev": true }, - "node_modules/default-browser": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/default-browser/-/default-browser-4.0.0.tgz", - "integrity": "sha512-wX5pXO1+BrhMkSbROFsyxUm0i/cJEScyNhA4PPxc41ICuv05ZZB/MX28s8aZx6xjmatvebIapF6hLEKEcpneUA==", - "dev": true, - "dependencies": { - "bundle-name": "^3.0.0", - "default-browser-id": "^3.0.0", - "execa": "^7.1.1", - "titleize": "^3.0.0" - }, - "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/default-browser-id": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/default-browser-id/-/default-browser-id-3.0.0.tgz", - "integrity": "sha512-OZ1y3y0SqSICtE8DE4S8YOE9UZOJ8wO16fKWVP5J1Qz42kV9jcnMVFrEE/noXb/ss3Q4pZIH79kxofzyNNtUNA==", - "dev": true, - "dependencies": { - "bplist-parser": "^0.2.0", - "untildify": "^4.0.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/default-browser/node_modules/execa": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-7.2.0.tgz", - "integrity": "sha512-UduyVP7TLB5IcAQl+OzLyLcS/l32W/GLg+AhHJ+ow40FOk2U3SAllPwR44v4vmdFwIWqpdwxxpQbF1n5ta9seA==", - "dev": true, - "dependencies": { - "cross-spawn": "^7.0.3", - "get-stream": "^6.0.1", - "human-signals": "^4.3.0", - "is-stream": "^3.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^5.1.0", - "onetime": "^6.0.0", - "signal-exit": "^3.0.7", - "strip-final-newline": "^3.0.0" - }, - "engines": { - "node": "^14.18.0 || ^16.14.0 || >=18.0.0" - }, - "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" - } - }, - "node_modules/default-browser/node_modules/get-stream": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", - "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/default-browser/node_modules/human-signals": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-4.3.1.tgz", - "integrity": "sha512-nZXjEF2nbo7lIw3mgYjItAfgQXog3OjJogSbKa2CQIIvSGWcKgeJnQlNXip6NglNzYH45nSRiEVimMvYL8DDqQ==", - "dev": true, - "engines": { - "node": ">=14.18.0" - } - }, - "node_modules/default-browser/node_modules/is-stream": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz", - "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==", - "dev": true, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/default-browser/node_modules/mimic-fn": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz", - "integrity": "sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/default-browser/node_modules/npm-run-path": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.1.0.tgz", - "integrity": "sha512-sJOdmRGrY2sjNTRMbSvluQqg+8X7ZK61yvzBEIDhz4f8z1TZFYABsqjjCBd/0PUNE9M6QDgHJXQkGUEm7Q+l9Q==", - "dev": true, - "dependencies": { - "path-key": "^4.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/default-browser/node_modules/onetime": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz", - "integrity": "sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==", - "dev": true, - "dependencies": { - "mimic-fn": "^4.0.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/default-browser/node_modules/path-key": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz", - "integrity": "sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/default-browser/node_modules/signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "dev": true - }, - "node_modules/default-browser/node_modules/strip-final-newline": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz", - "integrity": "sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/default-browser/node_modules/titleize": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/titleize/-/titleize-3.0.0.tgz", - "integrity": "sha512-KxVu8EYHDPBdUYdKZdKtU2aj2XfEx9AfjXxE/Aj0vT06w2icA09Vus1rh6eSu1y01akYg6BjIK/hxyLJINoMLQ==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/defaults": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.4.tgz", @@ -5468,18 +5338,6 @@ "node": ">= 0.4" } }, - "node_modules/define-lazy-prop": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-3.0.0.tgz", - "integrity": "sha512-N+MeXYoqr3pOgn8xfyRPREN7gHakLYjhsHhWGT3fWAiL4IkAt0iDw14QiiEm2bE30c5XX5q0FtAA3CK5f9/BUg==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/define-properties": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", @@ -5613,9 +5471,9 @@ } }, "node_modules/dompurify": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-3.0.6.tgz", - "integrity": "sha512-ilkD8YEnnGh1zJ240uJsW7AzE+2qpbOUYjacomn3AvJ6J4JhKGSZ2nh4wUIXPZrEPppaCLx5jFe8T89Rk8tQ7w==" + "version": "3.0.8", + "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-3.0.8.tgz", + "integrity": "sha512-b7uwreMYL2eZhrSCRC4ahLTeZcPZxSmYfmcQGXGkXiZSNW1X85v+SDM5KsWcpivIiUBH47Ji7NtyUdpLeF5JZQ==" }, "node_modules/dotenv": { "version": "16.3.1", @@ -5659,9 +5517,9 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.615", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.615.tgz", - "integrity": "sha512-/bKPPcgZVUziECqDc+0HkT87+0zhaWSZHNXqF8FLd2lQcptpmUFwoCSWjCdOng9Gdq+afKArPdEg/0ZW461Eng==", + "version": "1.4.626", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.626.tgz", + "integrity": "sha512-f7/be56VjRRQk+Ric6PmIrEtPcIqsn3tElyAu9Sh6egha2VLJ82qwkcOdcnT06W+Pb6RUulV1ckzrGbKzVcTHg==", "dev": true }, "node_modules/elkjs": { @@ -5849,9 +5707,9 @@ } }, "node_modules/esbuild": { - "version": "0.19.10", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.19.10.tgz", - "integrity": "sha512-S1Y27QGt/snkNYrRcswgRFqZjaTG5a5xM3EQo97uNBnH505pdzSNe/HLBq1v0RO7iK/ngdbhJB6mDAp0OK+iUA==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.19.11.tgz", + "integrity": "sha512-HJ96Hev2hX/6i5cDVwcqiJBBtuo9+FeIJOtZ9W1kA5M6AMJRHUZlpYZ1/SbEwtO0ioNAW8rUooVpC/WehY2SfA==", "dev": true, "hasInstallScript": true, "bin": { @@ -5861,29 +5719,29 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/aix-ppc64": "0.19.10", - "@esbuild/android-arm": "0.19.10", - "@esbuild/android-arm64": "0.19.10", - "@esbuild/android-x64": "0.19.10", - "@esbuild/darwin-arm64": "0.19.10", - "@esbuild/darwin-x64": "0.19.10", - "@esbuild/freebsd-arm64": "0.19.10", - "@esbuild/freebsd-x64": "0.19.10", - "@esbuild/linux-arm": "0.19.10", - "@esbuild/linux-arm64": "0.19.10", - "@esbuild/linux-ia32": "0.19.10", - "@esbuild/linux-loong64": "0.19.10", - "@esbuild/linux-mips64el": "0.19.10", - "@esbuild/linux-ppc64": "0.19.10", - "@esbuild/linux-riscv64": "0.19.10", - "@esbuild/linux-s390x": "0.19.10", - "@esbuild/linux-x64": "0.19.10", - "@esbuild/netbsd-x64": "0.19.10", - "@esbuild/openbsd-x64": "0.19.10", - "@esbuild/sunos-x64": "0.19.10", - "@esbuild/win32-arm64": "0.19.10", - "@esbuild/win32-ia32": "0.19.10", - "@esbuild/win32-x64": "0.19.10" + "@esbuild/aix-ppc64": "0.19.11", + "@esbuild/android-arm": "0.19.11", + "@esbuild/android-arm64": "0.19.11", + "@esbuild/android-x64": "0.19.11", + "@esbuild/darwin-arm64": "0.19.11", + "@esbuild/darwin-x64": "0.19.11", + "@esbuild/freebsd-arm64": "0.19.11", + "@esbuild/freebsd-x64": "0.19.11", + "@esbuild/linux-arm": "0.19.11", + "@esbuild/linux-arm64": "0.19.11", + "@esbuild/linux-ia32": "0.19.11", + "@esbuild/linux-loong64": "0.19.11", + "@esbuild/linux-mips64el": "0.19.11", + "@esbuild/linux-ppc64": "0.19.11", + "@esbuild/linux-riscv64": "0.19.11", + "@esbuild/linux-s390x": "0.19.11", + "@esbuild/linux-x64": "0.19.11", + "@esbuild/netbsd-x64": "0.19.11", + "@esbuild/openbsd-x64": "0.19.11", + "@esbuild/sunos-x64": "0.19.11", + "@esbuild/win32-arm64": "0.19.11", + "@esbuild/win32-ia32": "0.19.11", + "@esbuild/win32-x64": "0.19.11" } }, "node_modules/escalade": { @@ -6192,9 +6050,9 @@ } }, "node_modules/eslint-plugin-jest": { - "version": "27.6.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-jest/-/eslint-plugin-jest-27.6.0.tgz", - "integrity": "sha512-MTlusnnDMChbElsszJvrwD1dN3x6nZl//s4JD23BxB6MgR66TZlL064su24xEIS3VACfAoHV1vgyMgPw8nkdng==", + "version": "27.6.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-jest/-/eslint-plugin-jest-27.6.2.tgz", + "integrity": "sha512-CI1AlKrsNhYFoP48VU8BVWOi7+qHTq4bRxyUlGjeU8SfFt8abjXhjOuDzUoMp68DoXIx17KpNpIkMrl4s4ZW0g==", "dev": true, "dependencies": { "@typescript-eslint/utils": "^5.10.0" @@ -7220,9 +7078,9 @@ "dev": true }, "node_modules/fast-json-stringify": { - "version": "5.9.1", - "resolved": "https://registry.npmjs.org/fast-json-stringify/-/fast-json-stringify-5.9.1.tgz", - "integrity": "sha512-NMrf+uU9UJnTzfxaumMDXK1NWqtPCfGoM9DYIE+ESlaTQqjlANFBy0VAbsm6FB88Mx0nceyi18zTo5kIEUlzxg==", + "version": "5.10.0", + "resolved": "https://registry.npmjs.org/fast-json-stringify/-/fast-json-stringify-5.10.0.tgz", + "integrity": "sha512-fu1BhzPzgOdvK+sVhSPFzm06DQl0Dwbo+NQxWm21k03ili2wsJExXbGZ9qsD4Lsn7zFGltF8h9I1fuhk4JPnrQ==", "dependencies": { "@fastify/deepmerge": "^1.0.0", "ajv": "^8.10.0", @@ -7436,9 +7294,9 @@ "dev": true }, "node_modules/flexsearch": { - "version": "0.7.31", - "resolved": "https://registry.npmjs.org/flexsearch/-/flexsearch-0.7.31.tgz", - "integrity": "sha512-XGozTsMPYkm+6b5QL3Z9wQcJjNYxp0CYn3U1gO7dwD6PAqU1SVWZxI9CCg3z+ml3YfqdPnrBehaBrnH2AGKbNA==" + "version": "0.7.43", + "resolved": "https://registry.npmjs.org/flexsearch/-/flexsearch-0.7.43.tgz", + "integrity": "sha512-c5o/+Um8aqCSOXGcZoqZOm+NqtVwNsvVpWv6lfmSclU954O3wvQKxxK8zj74fPaSJbXpSLTs4PRhh+wnoCXnKg==" }, "node_modules/focus-visible": { "version": "5.2.0", @@ -8791,21 +8649,6 @@ "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/is-docker": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-3.0.0.tgz", - "integrity": "sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ==", - "dev": true, - "bin": { - "is-docker": "cli.js" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/is-extendable": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", @@ -8877,24 +8720,6 @@ "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/is-inside-container": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-inside-container/-/is-inside-container-1.0.0.tgz", - "integrity": "sha512-KIYLCCJghfHZxqjYBE7rEy0OBuTd5xCHS7tHVgvCLkx7StIoaxwNW3hCALgEUjFfeRk+MG/Qxmp/vtETEF3tRA==", - "dev": true, - "dependencies": { - "is-docker": "^3.0.0" - }, - "bin": { - "is-inside-container": "cli.js" - }, - "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/is-map": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.2.tgz", @@ -9118,33 +8943,6 @@ "node": ">=0.10.0" } }, - "node_modules/is-wsl": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", - "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", - "dev": true, - "dependencies": { - "is-docker": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-wsl/node_modules/is-docker": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", - "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", - "dev": true, - "bin": { - "is-docker": "cli.js" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/isarray": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", @@ -11661,28 +11459,10 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/open": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/open/-/open-9.1.0.tgz", - "integrity": "sha512-OS+QTnw1/4vrf+9hh1jc1jnYjzSG4ttTBB8UxOwAnInG3Uo4ssetzC1ihqaIHjLJnA5GGlRl6QlZXOTQhRBUvg==", - "dev": true, - "dependencies": { - "default-browser": "^4.0.0", - "define-lazy-prop": "^3.0.0", - "is-inside-container": "^1.0.0", - "is-wsl": "^2.2.0" - }, - "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/openai": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/openai/-/openai-4.24.0.tgz", - "integrity": "sha512-h8fsas4lu0ul18oDzFIZpEQryh2SJEUJWanyfEwjME/klcKWZM/blDz2cKiT+aFBqPJzcYdCUj/8E7n20f0jEw==", + "version": "4.24.2", + "resolved": "https://registry.npmjs.org/openai/-/openai-4.24.2.tgz", + "integrity": "sha512-Np5zFPAYsBRmsfgPS8cMM25r1wVO5NCTdmeoYDNEUhJn/rw6jNXU0CFSFwhbWsjIkYhdv31pPIzQ0xChHCvltQ==", "peer": true, "dependencies": { "@types/node": "^18.11.18", @@ -11700,9 +11480,9 @@ } }, "node_modules/openai/node_modules/@types/node": { - "version": "18.19.3", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.3.tgz", - "integrity": "sha512-k5fggr14DwAytoA/t8rPrIz++lXK7/DqckthCmoZOKNsEbJkId4Z//BqgApXBUGrGddrigYa1oqheo/7YmW4rg==", + "version": "18.19.6", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.6.tgz", + "integrity": "sha512-X36s5CXMrrJOs2lQCdDF68apW4Rfx9ixYMawlepwmE4Anezv/AV2LSpKD1Ub8DAc+urp5bk0BGZ6NtmBitfnsg==", "peer": true, "dependencies": { "undici-types": "~5.26.4" @@ -12523,13 +12303,13 @@ } }, "node_modules/prettier-plugin-packagejson": { - "version": "2.4.7", - "resolved": "https://registry.npmjs.org/prettier-plugin-packagejson/-/prettier-plugin-packagejson-2.4.7.tgz", - "integrity": "sha512-/n1HGcBbuJyTlD3tb2/tW1mT5WIR6FCo+bAijHF6pNoSBf8YoxoskawjSY2ku9/8d6mdzci7oMchziI7CYEWYg==", + "version": "2.4.9", + "resolved": "https://registry.npmjs.org/prettier-plugin-packagejson/-/prettier-plugin-packagejson-2.4.9.tgz", + "integrity": "sha512-b3Q7agXVqxK3UpYEJr0xLD51SxriYXESWUCjmxOBUGqnPFZOg9jZGZ+Ptzq252I6OqzXN2rj1tJIFq6KOGLLJw==", "dev": true, "dependencies": { "sort-package-json": "2.6.0", - "synckit": "0.8.6" + "synckit": "0.9.0" }, "peerDependencies": { "prettier": ">= 1.16.0" @@ -12790,9 +12570,9 @@ } }, "node_modules/readable-stream": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.5.1.tgz", - "integrity": "sha512-uQjbf34vmf/asGnOHQEw07Q4llgMACQZTWWa4MmICS0IKJoHbLwKCy71H3eR99Dw5iYejc6W+pqZZEeqRtUFAw==", + "version": "4.5.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.5.2.tgz", + "integrity": "sha512-yjavECdqeZ3GLXNgRXgeQEdz9fvDDkNKyHnbHRFtOr7/LcfgBcmct7t/ET+HaCTqfh06OzoAxrkN/IfjJBVe+g==", "dependencies": { "abort-controller": "^3.0.0", "buffer": "^6.0.3", @@ -13326,10 +13106,13 @@ "integrity": "sha512-IXgzBWvWQwE6PrDI05OvmXUIruQTcoMDzRsOd5CDvHCVLcLHMTSYvOK5Cm46kWqlV3yAbuSpBZdJ5oP5OUoStg==" }, "node_modules/rollup": { - "version": "4.9.1", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.9.1.tgz", - "integrity": "sha512-pgPO9DWzLoW/vIhlSoDByCzcpX92bKEorbgXuZrqxByte3JFk2xSW2JEeAcyLc9Ru9pqcNNW+Ob7ntsk2oT/Xw==", + "version": "4.9.4", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.9.4.tgz", + "integrity": "sha512-2ztU7pY/lrQyXSCnnoU4ICjT/tCG9cdH3/G25ERqE3Lst6vl2BCM5hL2Nw+sslAvAf+ccKsAq1SkKQALyqhR7g==", "dev": true, + "dependencies": { + "@types/estree": "1.0.5" + }, "bin": { "rollup": "dist/bin/rollup" }, @@ -13338,102 +13121,22 @@ "npm": ">=8.0.0" }, "optionalDependencies": { - "@rollup/rollup-android-arm-eabi": "4.9.1", - "@rollup/rollup-android-arm64": "4.9.1", - "@rollup/rollup-darwin-arm64": "4.9.1", - "@rollup/rollup-darwin-x64": "4.9.1", - "@rollup/rollup-linux-arm-gnueabihf": "4.9.1", - "@rollup/rollup-linux-arm64-gnu": "4.9.1", - "@rollup/rollup-linux-arm64-musl": "4.9.1", - "@rollup/rollup-linux-riscv64-gnu": "4.9.1", - "@rollup/rollup-linux-x64-gnu": "4.9.1", - "@rollup/rollup-linux-x64-musl": "4.9.1", - "@rollup/rollup-win32-arm64-msvc": "4.9.1", - "@rollup/rollup-win32-ia32-msvc": "4.9.1", - "@rollup/rollup-win32-x64-msvc": "4.9.1", + "@rollup/rollup-android-arm-eabi": "4.9.4", + "@rollup/rollup-android-arm64": "4.9.4", + "@rollup/rollup-darwin-arm64": "4.9.4", + "@rollup/rollup-darwin-x64": "4.9.4", + "@rollup/rollup-linux-arm-gnueabihf": "4.9.4", + "@rollup/rollup-linux-arm64-gnu": "4.9.4", + "@rollup/rollup-linux-arm64-musl": "4.9.4", + "@rollup/rollup-linux-riscv64-gnu": "4.9.4", + "@rollup/rollup-linux-x64-gnu": "4.9.4", + "@rollup/rollup-linux-x64-musl": "4.9.4", + "@rollup/rollup-win32-arm64-msvc": "4.9.4", + "@rollup/rollup-win32-ia32-msvc": "4.9.4", + "@rollup/rollup-win32-x64-msvc": "4.9.4", "fsevents": "~2.3.2" } }, - "node_modules/run-applescript": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/run-applescript/-/run-applescript-5.0.0.tgz", - "integrity": "sha512-XcT5rBksx1QdIhlFOCtgZkB99ZEouFZ1E2Kc2LHqNW13U3/74YGdkQRmThTwxy4QIyookibDKYZOPqX//6BlAg==", - "dev": true, - "dependencies": { - "execa": "^5.0.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/run-applescript/node_modules/execa": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", - "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", - "dev": true, - "dependencies": { - "cross-spawn": "^7.0.3", - "get-stream": "^6.0.0", - "human-signals": "^2.1.0", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.1", - "onetime": "^5.1.2", - "signal-exit": "^3.0.3", - "strip-final-newline": "^2.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" - } - }, - "node_modules/run-applescript/node_modules/get-stream": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", - "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/run-applescript/node_modules/is-stream": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", - "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", - "dev": true, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/run-applescript/node_modules/npm-run-path": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", - "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", - "dev": true, - "dependencies": { - "path-key": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/run-applescript/node_modules/signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "dev": true - }, "node_modules/run-parallel": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", @@ -13529,14 +13232,17 @@ ] }, "node_modules/safe-regex-test": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz", - "integrity": "sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.1.tgz", + "integrity": "sha512-Y5NejJTTliTyY4H7sipGqY+RX5P87i3F7c4Rcepy72nq+mNLhIsD0W4c7kEmduMDQCSqtPsXPlSTsFhh2LQv+g==", "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.3", + "call-bind": "^1.0.5", + "get-intrinsic": "^1.2.2", "is-regex": "^1.1.4" }, + "engines": { + "node": ">= 0.4" + }, "funding": { "url": "https://github.com/sponsors/ljharb" } @@ -13895,9 +13601,9 @@ "dev": true }, "node_modules/sonic-boom": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/sonic-boom/-/sonic-boom-3.7.0.tgz", - "integrity": "sha512-IudtNvSqA/ObjN97tfgNmOKyDOs4dNcg4cUUsHDebqsgb8wGBBwb31LIgShNO8fye0dFI52X1+tFoKKI6Rq1Gg==", + "version": "3.8.0", + "resolved": "https://registry.npmjs.org/sonic-boom/-/sonic-boom-3.8.0.tgz", + "integrity": "sha512-ybz6OYOUjoQQCQ/i4LU8kaToD8ACtYP+Cj5qd2AO36bwbdewxWJ3ArmJ2cr6AvxlL2o0PqnCcPGUgkILbfkaCA==", "dependencies": { "atomic-sleep": "^1.0.0" } @@ -14431,19 +14137,19 @@ } }, "node_modules/stylis": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.3.0.tgz", - "integrity": "sha512-E87pIogpwUsUwXw7dNyU4QDjdgVMy52m+XEOPEKUn161cCzWjjhPSQhByfd1CcNvrOLnXQ6OnnZDwnJrz/Z4YQ==" + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.3.1.tgz", + "integrity": "sha512-EQepAV+wMsIaGVGX1RECzgrcqRRU/0sYOHkeLsZ3fzHaHXZy4DaOOX0vOlGQdlsjkh3mFHAIlVimpwAs4dslyQ==" }, "node_modules/sucrase": { - "version": "3.34.0", - "resolved": "https://registry.npmjs.org/sucrase/-/sucrase-3.34.0.tgz", - "integrity": "sha512-70/LQEZ07TEcxiU2dz51FKaE6hCTWC6vr7FOk3Gr0U60C3shtAN+H+BFr9XlYe5xqf3RA8nrc+VIwzCfnxuXJw==", + "version": "3.35.0", + "resolved": "https://registry.npmjs.org/sucrase/-/sucrase-3.35.0.tgz", + "integrity": "sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==", "dev": true, "dependencies": { "@jridgewell/gen-mapping": "^0.3.2", "commander": "^4.0.0", - "glob": "7.1.6", + "glob": "^10.3.10", "lines-and-columns": "^1.1.6", "mz": "^2.7.0", "pirates": "^4.0.1", @@ -14454,7 +14160,7 @@ "sucrase-node": "bin/sucrase-node" }, "engines": { - "node": ">=8" + "node": ">=16 || 14 >=14.17" } }, "node_modules/sucrase/node_modules/commander": { @@ -14466,26 +14172,6 @@ "node": ">= 6" } }, - "node_modules/sucrase/node_modules/glob": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", - "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", - "dev": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, "node_modules/supports-color": { "version": "5.5.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", @@ -14509,12 +14195,12 @@ } }, "node_modules/synckit": { - "version": "0.8.6", - "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.8.6.tgz", - "integrity": "sha512-laHF2savN6sMeHCjLRkheIU4wo3Zg9Ln5YOjOo7sZ5dVQW8yF5pPE5SIw1dsPhq3TRp1jisKRCdPhfs/1WMqDA==", + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.9.0.tgz", + "integrity": "sha512-7RnqIMq572L8PeEzKeBINYEJDDxpcH8JEgLwUqBd3TkofhFRbkq4QLR0u+36avGAhCRbk2nnmjcW9SE531hPDg==", "dev": true, "dependencies": { - "@pkgr/utils": "^2.4.2", + "@pkgr/core": "^0.1.0", "tslib": "^2.6.2" }, "engines": { @@ -14525,9 +14211,9 @@ } }, "node_modules/systeminformation": { - "version": "5.21.20", - "resolved": "https://registry.npmjs.org/systeminformation/-/systeminformation-5.21.20.tgz", - "integrity": "sha512-AyS1fNc+MDoAJtFknFbbo587H8h6yejJwM+H9rVusnOToIEkiMehMyD5JM7o3j55Cto20MawIZrcgNMgd4BfOQ==", + "version": "5.21.22", + "resolved": "https://registry.npmjs.org/systeminformation/-/systeminformation-5.21.22.tgz", + "integrity": "sha512-gNHloAJSyS+sKWkwvmvozZ1eHrdVTEsynWMTY6lvLGBB70gflkBQFw8drXXr1oEXY84+Vr9tOOrN8xHZLJSycA==", "dev": true, "optional": true, "os": [ @@ -14700,9 +14386,9 @@ } }, "node_modules/toad-cache": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/toad-cache/-/toad-cache-3.4.1.tgz", - "integrity": "sha512-T0m3MxP3wcqW0LaV3dF1mHBU294sgYSm4FOpa5eEJaYO7PqJZBOjZEQI1y4YaKNnih1FXCEYTWDS9osCoTUefg==", + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/toad-cache/-/toad-cache-3.7.0.tgz", + "integrity": "sha512-/m8M+2BJUpoJdgAHoG+baCwBT+tf2VraSfkBgl0Y00qIWt41DJ8R5B8nsEw0I58YwF5IZH6z24/2TobDKnqSWw==", "engines": { "node": ">=12" } @@ -15601,15 +15287,6 @@ "node": ">= 4.0.0" } }, - "node_modules/untildify": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/untildify/-/untildify-4.0.0.tgz", - "integrity": "sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw==", - "dev": true, - "engines": { - "node": ">=8" - } - }, "node_modules/update-browserslist-db": { "version": "1.0.13", "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", @@ -15923,18 +15600,18 @@ } }, "node_modules/web-streams-polyfill": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-3.2.1.tgz", - "integrity": "sha512-e0MO3wdXWKrLbL0DgGnUV7WHVuw9OUvL4hjgnPkIeEvESk74gAITi5G606JtZPp39cd8HA9VQzCIvA49LpPN5Q==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-3.3.2.tgz", + "integrity": "sha512-3pRGuxRF5gpuZc0W+EpwQRmCD7gRqcDOMt688KmdlDAgAyaB1XlN0zq2njfDNm44XVdIouE7pZ6GzbdyH47uIQ==", "peer": true, "engines": { "node": ">= 8" } }, "node_modules/web-worker": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/web-worker/-/web-worker-1.2.0.tgz", - "integrity": "sha512-PgF341avzqyx60neE9DD+XS26MMNMoUQRz9NOZwW32nPQrF6p77f1htcnjBSEV8BGMKZ16choqUG4hyI0Hx7mA==" + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/web-worker/-/web-worker-1.3.0.tgz", + "integrity": "sha512-BSR9wyRsy/KOValMgd5kMyr3JzpdeoR9KVId8u5GVlTTAtNChlsE4yTxeY7zMdNSyOmoKBv8NH2qeRY9Tg+IaA==" }, "node_modules/webidl-conversions": { "version": "3.0.1", @@ -16375,6 +16052,15 @@ "redis": ">=4.6" } }, + "packages/cache-handler/node_modules/@types/node": { + "version": "20.10.8", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.8.tgz", + "integrity": "sha512-f8nQs3cLxbAFc00vEU59yf9UyGUftkPaLGfvbVOIDdx2i1b8epBqj2aNGyP19fiyXWvlmZ7qC1XLjAzw/OKIeA==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "packages/diffscribe": { "version": "0.2.1", "license": "MIT", @@ -16394,6 +16080,15 @@ "openai": "^4.12.3" } }, + "packages/diffscribe/node_modules/@types/node": { + "version": "20.10.8", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.8.tgz", + "integrity": "sha512-f8nQs3cLxbAFc00vEU59yf9UyGUftkPaLGfvbVOIDdx2i1b8epBqj2aNGyP19fiyXWvlmZ7qC1XLjAzw/OKIeA==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "packages/json-replacer-reviver": { "name": "@neshca/json-replacer-reviver", "version": "1.1.0", @@ -16408,6 +16103,15 @@ "typescript": "5.3.3" } }, + "packages/json-replacer-reviver/node_modules/@types/node": { + "version": "20.10.8", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.8.tgz", + "integrity": "sha512-f8nQs3cLxbAFc00vEU59yf9UyGUftkPaLGfvbVOIDdx2i1b8epBqj2aNGyP19fiyXWvlmZ7qC1XLjAzw/OKIeA==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "packages/server": { "name": "@neshca/server", "version": "0.6.0", @@ -16430,6 +16134,15 @@ "tsx": "4.7.0", "typescript": "5.3.3" } + }, + "packages/server/node_modules/@types/node": { + "version": "20.10.8", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.8.tgz", + "integrity": "sha512-f8nQs3cLxbAFc00vEU59yf9UyGUftkPaLGfvbVOIDdx2i1b8epBqj2aNGyP19fiyXWvlmZ7qC1XLjAzw/OKIeA==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } } } } diff --git a/package.json b/package.json index a03703b5..69b6de99 100644 --- a/package.json +++ b/package.json @@ -19,14 +19,15 @@ "dev:backend": "FORCE_COLOR=1 turbo run dev --log-prefix=none --filter=backend", "dev:with-redis": "FORCE_COLOR=1 turbo run dev --log-prefix=none --filter=!@neshca/server --filter=!diffscribe", "e2e": "FORCE_COLOR=1 turbo run e2e --log-prefix=none", - "format": "prettier --write .", - "lint": "FORCE_COLOR=1 turbo run lint", + "format:check": "prettier --check .", + "format:fix": "prettier --write .", + "lint": "FORCE_COLOR=1 turbo run lint && npm run format:check", "release": "npm run build && npm run lint && changeset publish", "start": "FORCE_COLOR=1 turbo run start --log-prefix=none --filter=!./apps/* --filter=!./docs/*", "start:app": "FORCE_COLOR=1 turbo run start --log-prefix=none --filter=cache-testing", "start:backend": "FORCE_COLOR=1 turbo run start --log-prefix=none --filter=backend", "test": "FORCE_COLOR=1 turbo run test", - "version-packages": "changeset version && npm run format" + "version-packages": "changeset version && npm run format:fix" }, "dependencies": { "@changesets/cli": "2.27.1" diff --git a/packages/cache-handler/README.md b/packages/cache-handler/README.md index 11e01d11..6cbe5881 100644 --- a/packages/cache-handler/README.md +++ b/packages/cache-handler/README.md @@ -2,7 +2,7 @@ **Flexible API to replace the default Next.js cache, accommodating custom cache solutions for multi-instance self-hosted deployments** -🎉 Version 0.6.2 is out, offering named Handlers and explicit logs for improved debugging experience. +🎉 Version 0.6.3 is out, offering stale-while-revalidate strategy emulation! Check out the [changelog](https://github.com/caching-tools/next-shared-cache/blob/canary/packages/cache-handler/CHANGELOG.md) diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 0bcdad41..f098f1bb 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -24,6 +24,7 @@ "type": "module", "exports": { ".": "./dist/cache-handler.cjs", + "./helpers": "./dist/helpers/helpers.cjs", "./*": "./dist/handlers/*.cjs" }, "typesVersions": { @@ -31,6 +32,9 @@ "*": [ "dist/cache-handler.d.cts" ], + "helpers": [ + "dist/helpers/helpers.d.cts" + ], "redis-stack": [ "dist/handlers/redis-stack.d.cts" ], @@ -50,8 +54,8 @@ "clean": "rimraf ./dist ./.turbo ./node_modules", "dev": "tsup --watch", "lint": "eslint .", - "test": "node --test --import tsx/esm **/*.test.ts", - "test:watch": "node --watch --test --import tsx/esm **/*.test.ts" + "test": "node --test --import tsx/esm src/**/*.test.ts", + "test:watch": "node --watch --test --import tsx/esm src/**/*.test.ts" }, "dependencies": { "@neshca/json-replacer-reviver": "*", diff --git a/packages/cache-handler/src/cache-handler.ts b/packages/cache-handler/src/cache-handler.ts index 923ea8a5..623b0fb7 100644 --- a/packages/cache-handler/src/cache-handler.ts +++ b/packages/cache-handler/src/cache-handler.ts @@ -14,7 +14,7 @@ import type { IncrementalCacheValue, TagsManifest, } from '@neshca/next-common'; -import { isTagsManifest } from './is-tags-manifest'; +import { isTagsManifest } from './helpers/is-tags-manifest'; const RSC_PREFETCH_SUFFIX = '.prefetch.rsc'; const RSC_SUFFIX = '.rsc'; @@ -42,18 +42,21 @@ export type Cache = { */ get: (key: string) => Promise; /** - * Adds or updates a value in the cache. Use `ttl` only if you don't use Pages directory. + * Sets or updates a value in the cache store. * * @param key - The unique string identifier for the cache entry. * * @param value - The value to be stored in the cache. * - * @param ttl - Optional. The time-to-live in seconds. - * If not provided, the cache entry persists based on default cache behavior or until manually removed. + * @param maxAgeSeconds - Optional. Delay in seconds before the cache entry becomes stale. + * If undefined, the cache entry will not become stale. * * @returns A Promise with no value. + * + * @remarks + * Use `maxAgeSeconds` only if you don't use Pages directory. */ - set: (key: string, value: CacheHandlerValue, ttl?: number) => Promise; + set: (key: string, value: CacheHandlerValue, maxAgeSeconds?: number) => Promise; /** * Retrieves the {@link RevalidatedTags} object. * @@ -364,11 +367,11 @@ export class IncrementalCache implements CacheHandler { return null; }, - async set(key, value, ttl) { + async set(key, value, maxAgeSeconds) { await Promise.allSettled( cacheList.map((cacheItem) => { try { - return cacheItem.set(key, value, ttl); + return cacheItem.set(key, value, maxAgeSeconds); } catch (error) { if (IncrementalCache.#debug) { // eslint-disable-next-line no-console -- we want to log this @@ -724,7 +727,7 @@ export class IncrementalCache implements CacheHandler { value: data, lastModified: Date.now(), }, - typeof revalidate === 'number' ? revalidate : undefined, + revalidate || undefined, ); if (IncrementalCache.#debug) { diff --git a/packages/cache-handler/src/common-types.ts b/packages/cache-handler/src/common-types.ts index 74f021ca..9c813cd4 100644 --- a/packages/cache-handler/src/common-types.ts +++ b/packages/cache-handler/src/common-types.ts @@ -1,3 +1,33 @@ import type { RedisClientType } from 'redis'; export type RedisJSON = Parameters['2']; + +export type UseTtlOptions = { + /** + * Optional. Boolean or function that returns a delay after which the cache entry must be deleted. + * + * Function receives the `maxAge` from the Next.js as a parameter. + * This can be used to emulate the behavior of the stale-while-revalidate strategy. + * + * @example + * + * ```js + * const lruCache = createLruCache({ + * // emulate the behavior of the stale-while-revalidate strategy + * useTtl: (maxAge) => maxAge * 1.5 + * }); + * ``` + * + * @remarks + * - **File System Cache**: Ensure that the file system cache is disabled + * by setting `useFileSystem: false` in your cache handler configuration. + * This is crucial for the TTL feature to work correctly. + * If the file system cache is enabled, + * the cache entries will HIT from the file system cache when expired in remote cache store. + * - **Pages Directory Limitation**: Due to a known issue in Next.js, + * disabling the file system cache may not function properly within the Pages directory. + * It is recommended to use TTL primarily with the App directory. + * More details on this limitation can be found in the file system cache configuration documentation. + */ + useTtl?: boolean | ((ttl: number) => number); +}; diff --git a/packages/cache-handler/src/constants.ts b/packages/cache-handler/src/constants.ts new file mode 100644 index 00000000..e3c0e5a2 --- /dev/null +++ b/packages/cache-handler/src/constants.ts @@ -0,0 +1 @@ +export const MAX_INT32 = Math.pow(2, 31) - 1; diff --git a/packages/cache-handler/src/handlers/local-lru.ts b/packages/cache-handler/src/handlers/local-lru.ts index e5140609..3d7e46fe 100644 --- a/packages/cache-handler/src/handlers/local-lru.ts +++ b/packages/cache-handler/src/handlers/local-lru.ts @@ -2,13 +2,11 @@ import type { LruCacheOptions } from '@neshca/next-lru-cache/next-cache-handler-value'; import { createCache } from '@neshca/next-lru-cache/next-cache-handler-value'; import type { Cache } from '../cache-handler'; +import { calculateEvictionDelay } from '../helpers/calculate-eviction-delay'; +import type { UseTtlOptions } from '../common-types'; +import { MAX_INT32 } from '../constants'; -export type LruCacheHandlerOptions = LruCacheOptions & { - /** - * Optional. Enables ttl support. Defaults to `false`. - */ - useTtl?: boolean; -}; +export type LruCacheHandlerOptions = LruCacheOptions & UseTtlOptions; /** * Creates an LRU (Least Recently Used) cache handler. @@ -27,13 +25,15 @@ export type LruCacheHandlerOptions = LruCacheOptions & { * const lruCache = createLruCache({ * maxItemsNumber: 10000, // 10000 items * maxItemSizeBytes: 1024 * 1024 * 500, // 500 MB + * useTtl: (maxAge) => maxAge * 1.5 * }); * ``` * * @remarks - * Use this Handler as a fallback for Redis Handler instead of the filesystem when you use only the App router. + * - Use this Handler as a fallback for any remote store Handler instead of the filesystem when you use only the App router. + * - The max TTL value is 2147483.647 seconds (24.8 days) due to a `setTimeout` limitation. */ -export default function createLruCache({ useTtl, ...lruOptions }: LruCacheHandlerOptions = {}): Cache { +export default function createLruCache({ useTtl = false, ...lruOptions }: LruCacheHandlerOptions = {}): Cache { const lruCache = createCache(lruOptions); return { @@ -41,8 +41,10 @@ export default function createLruCache({ useTtl, ...lruOptions }: LruCacheHandle get(key) { return Promise.resolve(lruCache.get(key)); }, - set(key, value, ttl = 0) { - lruCache.set(key, value, useTtl ? { ttl: ttl * 1000 } : undefined); + set(key, value, maxAgeSeconds = 0) { + const evictionDelay = calculateEvictionDelay(maxAgeSeconds * 1000, useTtl); + + lruCache.set(key, value, evictionDelay ? { ttl: Math.min(evictionDelay, MAX_INT32) } : undefined); return Promise.resolve(); }, diff --git a/packages/cache-handler/src/handlers/redis-stack.ts b/packages/cache-handler/src/handlers/redis-stack.ts index f1bc8bc8..991d8b84 100644 --- a/packages/cache-handler/src/handlers/redis-stack.ts +++ b/packages/cache-handler/src/handlers/redis-stack.ts @@ -1,13 +1,14 @@ /* eslint-disable import/no-default-export -- use default here */ import type { RedisClientType } from 'redis'; import type { RevalidatedTags, CacheHandlerValue, Cache } from '../cache-handler'; -import type { RedisJSON } from '../common-types'; -import { withTimeout } from '../with-timeout'; +import type { RedisJSON, UseTtlOptions } from '../common-types'; +import { promiseWithTimeout } from '../helpers/promise-with-timeout'; +import { calculateEvictionDelay } from '../helpers/calculate-eviction-delay'; /** * The configuration options for the Redis Handler */ -export type RedisCacheHandlerOptions = { +export type RedisCacheHandlerOptions = UseTtlOptions & { /** * The Redis client instance. */ @@ -20,21 +21,6 @@ export type RedisCacheHandlerOptions = { * Optional. Key to store the `RevalidatedTags`. Defaults to `__sharedRevalidatedTags__`. */ revalidatedTagsKey?: string; - /** - * Optional. Enables ttl support. Defaults to `false`. - * - * @remarks - * - **File System Cache**: Ensure that the file system cache is disabled - * by setting `useFileSystem: false` in your cache handler configuration. - * This is crucial for the TTL feature to work correctly. - * If the file system cache is enabled, - * the cache entries will HIT from the file system cache when expired in Redis. - * - **Pages Directory Limitation**: Due to a known issue in Next.js, - * disabling the file system cache may not function properly within the Pages directory. - * It is recommended to use TTL primarily in the App directory. - * More details on this limitation can be found in the file system cache configuration documentation. - */ - useTtl?: boolean; /** * Timeout in milliseconds for Redis operations. */ @@ -93,7 +79,7 @@ export default async function createCache({ }, ); - await withTimeout(setInitialRevalidatedTags, timeoutMs); + await promiseWithTimeout(setInitialRevalidatedTags, timeoutMs); return { name: 'redis-stack', @@ -102,7 +88,8 @@ export default async function createCache({ const getCacheValue = client.json.get(keyPrefix + key); - const cacheValue = ((await withTimeout(getCacheValue, timeoutMs)) ?? null) as CacheHandlerValue | null; + const cacheValue = ((await promiseWithTimeout(getCacheValue, timeoutMs)) ?? + null) as CacheHandlerValue | null; if (cacheValue?.value?.kind === 'ROUTE') { cacheValue.value.body = Buffer.from(cacheValue.value.body as unknown as string, 'base64'); @@ -110,7 +97,7 @@ export default async function createCache({ return cacheValue; }, - async set(key, cacheValue, ttl) { + async set(key, cacheValue, maxAgeSeconds) { assertClientIsReady(); let preparedCacheValue = cacheValue; @@ -123,20 +110,28 @@ export default async function createCache({ const setCacheValue = client.json.set(keyPrefix + key, '.', preparedCacheValue as unknown as RedisJSON); - await withTimeout(setCacheValue, timeoutMs); + await promiseWithTimeout(setCacheValue, timeoutMs); + + if (typeof maxAgeSeconds !== 'number') { + return; + } - if (useTtl && typeof ttl === 'number') { - const setExpire = client.expire(keyPrefix + key, ttl); + const evictionDelay = calculateEvictionDelay(maxAgeSeconds, useTtl); - await withTimeout(setExpire, timeoutMs); + if (!evictionDelay) { + return; } + + const setExpire = client.expire(keyPrefix + key, evictionDelay); + + await promiseWithTimeout(setExpire, timeoutMs); }, async getRevalidatedTags() { assertClientIsReady(); const getRevalidatedTags = client.json.get(keyPrefix + revalidatedTagsKey); - const sharedRevalidatedTags = ((await withTimeout(getRevalidatedTags, timeoutMs)) ?? undefined) as + const sharedRevalidatedTags = ((await promiseWithTimeout(getRevalidatedTags, timeoutMs)) ?? undefined) as | RevalidatedTags | undefined; @@ -147,7 +142,7 @@ export default async function createCache({ const setRevalidatedTags = client.json.set(keyPrefix + revalidatedTagsKey, `.${tag}`, revalidatedAt); - await withTimeout(setRevalidatedTags, timeoutMs); + await promiseWithTimeout(setRevalidatedTags, timeoutMs); }, }; } diff --git a/packages/cache-handler/src/handlers/redis-strings.ts b/packages/cache-handler/src/handlers/redis-strings.ts index 10c38233..da1b02b0 100644 --- a/packages/cache-handler/src/handlers/redis-strings.ts +++ b/packages/cache-handler/src/handlers/redis-strings.ts @@ -1,8 +1,9 @@ /* eslint-disable import/no-default-export -- use default here */ import { reviveFromBase64Representation, replaceJsonWithBase64 } from '@neshca/json-replacer-reviver'; import type { RedisClientType } from 'redis'; -import { withTimeout } from '../with-timeout'; +import { promiseWithTimeout } from '../helpers/promise-with-timeout'; import type { RevalidatedTags, CacheHandlerValue, Cache } from '../cache-handler'; +import { calculateEvictionDelay } from '../helpers/calculate-eviction-delay'; import type { RedisCacheHandlerOptions } from './redis-stack'; /** @@ -53,7 +54,7 @@ export default function createCache({ const getOperation = client.get(keyPrefix + key); - const result = await withTimeout(getOperation, timeoutMs); + const result = await promiseWithTimeout(getOperation, timeoutMs); if (!result) { return null; @@ -62,24 +63,26 @@ export default function createCache({ // use reviveFromBase64Representation to restore binary data from Base64 return JSON.parse(result, reviveFromBase64Representation) as CacheHandlerValue | null; }, - async set(key, value, ttl) { + async set(key, value, maxAgeSeconds) { assertClientIsReady(); + const evictionDelay = calculateEvictionDelay(maxAgeSeconds, useTtl); + // use replaceJsonWithBase64 to store binary data in Base64 and save space const setOperation = client.set( keyPrefix + key, JSON.stringify(value, replaceJsonWithBase64), - useTtl && typeof ttl === 'number' ? { EX: ttl } : undefined, + evictionDelay ? { EX: evictionDelay } : undefined, ); - await withTimeout(setOperation, timeoutMs); + await promiseWithTimeout(setOperation, timeoutMs); }, async getRevalidatedTags() { assertClientIsReady(); const getOperation = client.hGetAll(keyPrefix + revalidatedTagsKey); - const sharedRevalidatedTags = await withTimeout(getOperation, timeoutMs); + const sharedRevalidatedTags = await promiseWithTimeout(getOperation, timeoutMs); const entries = Object.entries(sharedRevalidatedTags); @@ -98,7 +101,7 @@ export default function createCache({ [tag]: revalidatedAt, }); - await withTimeout(setOperation, timeoutMs); + await promiseWithTimeout(setOperation, timeoutMs); }, }; } diff --git a/packages/cache-handler/src/helpers/calculate-eviction-delay.test.ts b/packages/cache-handler/src/helpers/calculate-eviction-delay.test.ts new file mode 100644 index 00000000..42c0d227 --- /dev/null +++ b/packages/cache-handler/src/helpers/calculate-eviction-delay.test.ts @@ -0,0 +1,99 @@ +import { test } from 'node:test'; +import assert from 'node:assert'; +import { calculateEvictionDelay } from './calculate-eviction-delay'; + +await test('should return undefined if originalTtl is not provided', () => { + const result = calculateEvictionDelay(undefined, true); + assert.strictEqual(result, undefined); +}); + +await test('should return originalTtl if useTtl is not a function', () => { + const result = calculateEvictionDelay(100, true); + assert.strictEqual(result, 100); +}); + +await test('should return computedTtl if useTtl is a function', () => { + const result = calculateEvictionDelay(100, (ttl) => ttl * 2); + assert.strictEqual(result, 200); +}); + +await test('should return undefined if originalTtl is null', () => { + const result = calculateEvictionDelay(null as unknown as undefined, true); + assert.strictEqual(result, undefined); +}); + +await test('should return originalTtl if useTtl is null', () => { + const result = calculateEvictionDelay(100, null as unknown as boolean); + assert.strictEqual(result, 100); +}); + +await test('should return originalTtl if useTtl is undefined', () => { + const result = calculateEvictionDelay(100, undefined as unknown as boolean); + assert.strictEqual(result, 100); +}); + +await test('should throw error if computedTtl is not a number', () => { + try { + calculateEvictionDelay(100, () => 'not a number' as unknown as number); + assert.fail('Expected to throw error'); + } catch (error) { + if (error instanceof Error) { + assert.match(error.message, /Invalid eviction delay/); + } + } +}); + +await test('should throw error if computedTtl is NaN', () => { + try { + calculateEvictionDelay(100, () => NaN); + assert.fail('Expected to throw error'); + } catch (error) { + if (error instanceof Error) { + assert.match(error.message, /Invalid eviction delay/); + } + } +}); + +await test('should throw error if computedTtl is equal to 0', () => { + try { + calculateEvictionDelay(100, () => 0); + assert.fail('Expected to throw error'); + } catch (error) { + if (error instanceof Error) { + assert.match(error.message, /Invalid eviction delay/); + } + } +}); + +await test('should throw error if computedTtl is a negative number', () => { + try { + calculateEvictionDelay(100, () => -50); + assert.fail('Expected to throw error'); + } catch (error) { + if (error instanceof Error) { + assert.match(error.message, /Invalid eviction delay/); + } + } +}); + +await test('should throw error if computedTtl is Infinity', () => { + try { + calculateEvictionDelay(100, () => Infinity); + assert.fail('Expected to throw error'); + } catch (error) { + if (error instanceof Error) { + assert.match(error.message, /Invalid eviction delay/); + } + } +}); + +await test('should throw error if computedTtl is -Infinity', () => { + try { + calculateEvictionDelay(100, () => -Infinity); + assert.fail('Expected to throw error'); + } catch (error) { + if (error instanceof Error) { + assert.match(error.message, /Invalid eviction delay/); + } + } +}); diff --git a/packages/cache-handler/src/helpers/calculate-eviction-delay.ts b/packages/cache-handler/src/helpers/calculate-eviction-delay.ts new file mode 100644 index 00000000..671adc6f --- /dev/null +++ b/packages/cache-handler/src/helpers/calculate-eviction-delay.ts @@ -0,0 +1,41 @@ +/** + * Calculates the delay after which the cache entry must be deleted. + * + * @param maxAge - The original `maxAge` delay from the Next.js after which the cache entry will be treated as stale. + * @param useTtl - The function or boolean value used to compute the delay after which the cache entry must be deleted. + * @returns The calculated delay after which the cache entry must be deleted. + * + * @throws If the computed delay is invalid (not a number, NaN, less than `maxAge`, not an integer or not finite). + * + * @remarks + * - If `useTtl` is `false` or `undefined`, the cache entry will never be deleted. + * - If `useTtl` is `true`, the cache entry will be deleted after `maxAge` delay. + * - If `useTtl` is a function, the cache entry will be deleted after the delay returned by the function. + */ +export function calculateEvictionDelay( + maxAge: number | undefined, + useTtl: boolean | ((maxAge: number) => number) | undefined | null, +): number | undefined { + if (!maxAge || useTtl === false) { + return undefined; + } + + if (useTtl === true || !useTtl) { + return maxAge; + } + + const computedEvictionDelay = Math.ceil(useTtl(maxAge)); + + if ( + typeof computedEvictionDelay !== 'number' || + isNaN(computedEvictionDelay) || + computedEvictionDelay <= 0 || + !isFinite(computedEvictionDelay) + ) { + throw new Error( + `Invalid eviction delay "${computedEvictionDelay}" returned from useTtl function. Expected a positive integer. Received: ${computedEvictionDelay}`, + ); + } + + return computedEvictionDelay; +} diff --git a/packages/cache-handler/src/helpers/helpers.ts b/packages/cache-handler/src/helpers/helpers.ts new file mode 100644 index 00000000..9b7e1d32 --- /dev/null +++ b/packages/cache-handler/src/helpers/helpers.ts @@ -0,0 +1,2 @@ +export { calculateEvictionDelay } from './calculate-eviction-delay'; +export { promiseWithTimeout } from './promise-with-timeout'; diff --git a/packages/cache-handler/src/is-tags-manifest.ts b/packages/cache-handler/src/helpers/is-tags-manifest.ts similarity index 100% rename from packages/cache-handler/src/is-tags-manifest.ts rename to packages/cache-handler/src/helpers/is-tags-manifest.ts diff --git a/packages/cache-handler/src/helpers/promise-with-timeout.test.ts b/packages/cache-handler/src/helpers/promise-with-timeout.test.ts new file mode 100644 index 00000000..c06aac4a --- /dev/null +++ b/packages/cache-handler/src/helpers/promise-with-timeout.test.ts @@ -0,0 +1,72 @@ +import { test } from 'node:test'; +import assert from 'node:assert'; +import { promiseWithTimeout } from './promise-with-timeout'; + +function simulateOperation(duration: number): Promise { + return new Promise((resolve) => { + setTimeout(resolve, duration, 'completed'); + }); +} + +await test('should resolve if operation finishes before timeout', async () => { + const fastOperation = simulateOperation(100); + const result = await promiseWithTimeout(fastOperation, 200); + assert.strictEqual(result, 'completed'); +}); + +await test('should reject if operation times out', async () => { + const slowOperation = simulateOperation(300); + try { + await promiseWithTimeout(slowOperation, 100); + assert.fail('Expected operation to time out'); + } catch (error) { + if (error instanceof Error) { + assert.match(error.message, /timed out/); + } + } +}); + +await test('should allow operation without timeout when timeoutMs is undefined', async () => { + const operation = simulateOperation(100); + const result = await promiseWithTimeout(operation); + assert.strictEqual(result, 'completed'); +}); + +await test('should return original operation if timeoutMs is not a number', async () => { + const operation = simulateOperation(100); + const result = await promiseWithTimeout(operation, 'not a number' as unknown as number); + assert.strictEqual(result, 'completed'); +}); + +await test('should return original operation if timeoutMs is NaN', async () => { + const operation = simulateOperation(100); + const result = await promiseWithTimeout(operation, NaN); + assert.strictEqual(result, 'completed'); +}); + +await test('should return original operation if timeoutMs is less than or equal to 0', async () => { + const operation = simulateOperation(100); + const result = await promiseWithTimeout(operation, 0); + assert.strictEqual(result, 'completed'); +}); + +await test('should return original operation if timeoutMs is greater than MAX_INT32', async () => { + const operation = simulateOperation(100); + const result = await promiseWithTimeout(operation, Number.MAX_SAFE_INTEGER); + assert.strictEqual(result, 'completed'); +}); + +await test('should reject if operation throws an error', async () => { + const errorOperation = new Promise((_, reject) => { + setTimeout(reject, 100, new Error('Operation error')); + }); + + try { + await promiseWithTimeout(errorOperation, 200); + assert.fail('Expected operation to throw an error'); + } catch (error) { + if (error instanceof Error) { + assert.match(error.message, /Operation error/); + } + } +}); diff --git a/packages/cache-handler/src/helpers/promise-with-timeout.ts b/packages/cache-handler/src/helpers/promise-with-timeout.ts new file mode 100644 index 00000000..e1102506 --- /dev/null +++ b/packages/cache-handler/src/helpers/promise-with-timeout.ts @@ -0,0 +1,34 @@ +import { MAX_INT32 } from '../constants'; + +/** + * Wraps a Promise with a timeout, rejecting the Promise if it does not resolve within the specified time. + * + * @param operation - The Promise to wrap with a timeout. + * @param timeoutMs - Optional. The timeout period in milliseconds. + * If this is not a positive number, the function will simply return the original Promise. + * + * @returns A new Promise that behaves like the original Promise, + * but will be rejected if the original Promise does not resolve within the specified timeout. + * + * @throws If the operation does not complete within the specified timeout, + * the returned Promise will be rejected with an Error that has a message indicating the timeout period. + */ +export function promiseWithTimeout(operation: Promise, timeoutMs?: number): Promise { + if (typeof timeoutMs !== 'number' || isNaN(timeoutMs) || timeoutMs <= 0 || timeoutMs > MAX_INT32) { + return operation; + } + + return new Promise((resolve, reject) => { + const timeoutId = setTimeout(reject, timeoutMs, new Error(`Operation timed out after ${timeoutMs} ms`)); + + operation + .then((result) => { + clearTimeout(timeoutId); + resolve(result); + }) + .catch((error) => { + clearTimeout(timeoutId); + reject(error); + }); + }); +} diff --git a/packages/cache-handler/src/with-timeout.test.ts b/packages/cache-handler/src/with-timeout.test.ts deleted file mode 100644 index 3cbfa0fe..00000000 --- a/packages/cache-handler/src/with-timeout.test.ts +++ /dev/null @@ -1,33 +0,0 @@ -import { test } from 'node:test'; -import assert from 'node:assert'; -import { withTimeout } from './with-timeout'; - -function simulateOperation(duration: number): Promise { - return new Promise((resolve) => { - setTimeout(resolve, duration, 'completed'); - }); -} - -await test('should resolve if operation finishes before timeout', async () => { - const fastOperation = simulateOperation(100); - const result = await withTimeout(fastOperation, 200); - assert.strictEqual(result, 'completed'); -}); - -await test('should reject if operation times out', async () => { - const slowOperation = simulateOperation(300); - try { - await withTimeout(slowOperation, 100); - assert.fail('Expected operation to time out'); - } catch (error) { - if (error instanceof Error) { - assert.match(error.message, /timed out/); - } - } -}); - -await test('should allow operation without timeout when timeoutMs is undefined', async () => { - const operation = simulateOperation(100); - const result = await withTimeout(operation); - assert.strictEqual(result, 'completed'); -}); diff --git a/packages/cache-handler/src/with-timeout.ts b/packages/cache-handler/src/with-timeout.ts deleted file mode 100644 index 7c575c0d..00000000 --- a/packages/cache-handler/src/with-timeout.ts +++ /dev/null @@ -1,19 +0,0 @@ -export function withTimeout(operation: Promise, timeoutMs?: number): Promise { - if (typeof timeoutMs !== 'number' || isNaN(timeoutMs) || timeoutMs <= 0) { - return operation; - } - - return new Promise((resolve, reject) => { - const timeoutHandle = setTimeout(reject, timeoutMs, new Error(`Operation timed out after ${timeoutMs} ms`)); - - operation - .then((result) => { - clearTimeout(timeoutHandle); - resolve(result); - }) - .catch((error) => { - clearTimeout(timeoutHandle); - reject(error); - }); - }); -} diff --git a/packages/cache-handler/tsup.config.ts b/packages/cache-handler/tsup.config.ts index 2668e740..a390f7cd 100644 --- a/packages/cache-handler/tsup.config.ts +++ b/packages/cache-handler/tsup.config.ts @@ -2,7 +2,7 @@ import { defineConfig } from 'tsup'; export const tsup = defineConfig({ name: 'Build cache-handler', - entry: ['src/cache-handler.ts', 'src/handlers/*.ts'], + entry: ['src/cache-handler.ts', 'src/handlers/*.ts', 'src/helpers/helpers.ts'], splitting: false, outDir: 'dist', clean: false, From 58b4d58f3b7696206375f68dce819de195f93c60 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Wed, 10 Jan 2024 21:09:30 +0300 Subject: [PATCH 047/458] Version Packages (#251) Co-authored-by: github-actions[bot] --- .changeset/honest-ducks-pull.md | 5 ----- .changeset/neat-moons-sin.md | 5 ----- docs/cache-handler-docs/CHANGELOG.md | 6 ++++++ docs/cache-handler-docs/package.json | 2 +- packages/cache-handler/CHANGELOG.md | 6 ++++++ packages/cache-handler/package.json | 2 +- 6 files changed, 14 insertions(+), 12 deletions(-) delete mode 100644 .changeset/honest-ducks-pull.md delete mode 100644 .changeset/neat-moons-sin.md diff --git a/.changeset/honest-ducks-pull.md b/.changeset/honest-ducks-pull.md deleted file mode 100644 index aef8e01b..00000000 --- a/.changeset/honest-ducks-pull.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@neshca/cache-handler': patch ---- - -Added support for stale-while-revalidate strategy in `useTtl` option. diff --git a/.changeset/neat-moons-sin.md b/.changeset/neat-moons-sin.md deleted file mode 100644 index 0b21ecff..00000000 --- a/.changeset/neat-moons-sin.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'cache-handler-docs': patch ---- - -Updated docs in `Using TTL` section. diff --git a/docs/cache-handler-docs/CHANGELOG.md b/docs/cache-handler-docs/CHANGELOG.md index 03516240..e668fb5e 100644 --- a/docs/cache-handler-docs/CHANGELOG.md +++ b/docs/cache-handler-docs/CHANGELOG.md @@ -1,5 +1,11 @@ # cache-handler-docs +## 0.6.3 + +### Patch Changes + +- 277865a: Updated docs in `Using TTL` section. + ## 0.6.2 ### Patch Changes diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 6ba37d92..38bba52a 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -1,6 +1,6 @@ { "name": "cache-handler-docs", - "version": "0.6.2", + "version": "0.6.3", "private": true, "scripts": { "build:docs": "next build", diff --git a/packages/cache-handler/CHANGELOG.md b/packages/cache-handler/CHANGELOG.md index 8a4db36f..f7a21575 100644 --- a/packages/cache-handler/CHANGELOG.md +++ b/packages/cache-handler/CHANGELOG.md @@ -1,5 +1,11 @@ # @neshca/cache-handler +## 0.6.3 + +### Patch Changes + +- 277865a: Added support for stale-while-revalidate strategy in `useTtl` option. + ## 0.6.2 ### Patch Changes diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index f098f1bb..6338a916 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -1,6 +1,6 @@ { "name": "@neshca/cache-handler", - "version": "0.6.2", + "version": "0.6.3", "description": "Flexible API to replace the default Next.js cache, accommodating custom cache solutions for multi-instance deployments.", "keywords": [ "cache", From 9dcb3935942c0e48e803bbf884fe04590811a704 Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Thu, 11 Jan 2024 14:30:10 +0300 Subject: [PATCH 048/458] Refactor `lru-cache` Handler to overcome ttl limitations (#252) --- .changeset/nice-moose-type.md | 5 +++ apps/cache-testing/cache-handler-server.js | 9 +---- apps/cache-testing/run-app-instances.ts | 9 +---- apps/cache-testing/tests/app.spec.ts | 9 +---- docs/cache-handler-docs/theme.config.jsx | 2 +- .../cache-types/next-cache-handler-value.ts | 4 +- packages/cache-handler/README.md | 2 +- .../cache-handler/src/handlers/local-lru.ts | 37 +++++++++++++++---- packages/cache-handler/src/handlers/server.ts | 10 ++++- 9 files changed, 54 insertions(+), 33 deletions(-) create mode 100644 .changeset/nice-moose-type.md diff --git a/.changeset/nice-moose-type.md b/.changeset/nice-moose-type.md new file mode 100644 index 00000000..81b87823 --- /dev/null +++ b/.changeset/nice-moose-type.md @@ -0,0 +1,5 @@ +--- +'@neshca/cache-handler': patch +--- + +Refactored `lru-cache` Handler to overcome ttl via setTimeout limitations. Added `timeoutMs` option to `server` Handler. diff --git a/apps/cache-testing/cache-handler-server.js b/apps/cache-testing/cache-handler-server.js index 7358c60d..43ed7b92 100644 --- a/apps/cache-testing/cache-handler-server.js +++ b/apps/cache-testing/cache-handler-server.js @@ -1,17 +1,12 @@ +const { scheduler } = require('node:timers/promises'); const { IncrementalCache } = require('@neshca/cache-handler'); const createServerCache = require('@neshca/cache-handler/server').default; const createLruCache = require('@neshca/cache-handler/local-lru').default; const baseUrl = process.env.REMOTE_CACHE_SERVER_BASE_URL ?? 'http://localhost:8080'; -async function wait(ms) { - return new Promise((resolve) => { - setTimeout(resolve, ms); - }); -} - IncrementalCache.onCreation(async () => { - await wait(); + await scheduler.wait(1000); const httpCache = createServerCache({ baseUrl, diff --git a/apps/cache-testing/run-app-instances.ts b/apps/cache-testing/run-app-instances.ts index 64136b67..08cfb0c2 100644 --- a/apps/cache-testing/run-app-instances.ts +++ b/apps/cache-testing/run-app-instances.ts @@ -2,15 +2,10 @@ /* eslint-disable import/no-named-as-default-member -- pm2 does't have named exports */ import process from 'node:process'; +import { scheduler } from 'node:timers/promises'; import Fastify from 'fastify'; import pm2 from 'pm2'; -function wait(delay: number): Promise { - return new Promise((resolve) => { - setTimeout(resolve, delay); - }); -} - const args = process.argv.slice(2).reduce>((acc, arg) => { const [key, value] = arg.split('='); @@ -74,7 +69,7 @@ app.get('/restart/:port', async (request, reply) => { } // workaround for unstable tests - void wait(1000).then(async () => { + void scheduler.wait(1000).then(async () => { await reply.code(200).send({ restarted: name }); }); }); diff --git a/apps/cache-testing/tests/app.spec.ts b/apps/cache-testing/tests/app.spec.ts index 41543367..4ed9110c 100644 --- a/apps/cache-testing/tests/app.spec.ts +++ b/apps/cache-testing/tests/app.spec.ts @@ -1,11 +1,6 @@ +import { scheduler } from 'node:timers/promises'; import { test, expect } from '@playwright/test'; -function wait(ms: number): Promise { - return new Promise((resolve) => { - setTimeout(resolve, ms); - }); -} - const paths = [ '/app/with-params/dynamic-true/200', // '/app/with-params/dynamic-false/200', // this fails with native next.js cache @@ -146,7 +141,7 @@ test.describe('Time-based revalidation', () => { await expect(page.getByTestId('cache-state')).toContainText('stale', { timeout: 7500 }); // Temporary workaround: Addressing intermittent test failures observed in GitHub Actions. - await wait(1000); + await scheduler.wait(1000); await page.reload(); diff --git a/docs/cache-handler-docs/theme.config.jsx b/docs/cache-handler-docs/theme.config.jsx index 3bd4b6de..58c7c431 100644 --- a/docs/cache-handler-docs/theme.config.jsx +++ b/docs/cache-handler-docs/theme.config.jsx @@ -53,7 +53,7 @@ export default { key: '0.6.0-release', text: ( - 🎉 Version 0.6.3 is out, offering stale-while-revalidate strategy emulation! + 🎉 Version 0.6.4 is out, offering stale-while-revalidate strategy emulation! ), }, diff --git a/internal/next-lru-cache/src/cache-types/next-cache-handler-value.ts b/internal/next-lru-cache/src/cache-types/next-cache-handler-value.ts index bbb9fef7..4daac9f1 100644 --- a/internal/next-lru-cache/src/cache-types/next-cache-handler-value.ts +++ b/internal/next-lru-cache/src/cache-types/next-cache-handler-value.ts @@ -35,6 +35,8 @@ function calculateObjectSize({ value }: CacheHandlerValue): number { export type { LruCacheOptions }; -export function createCache(options?: LruCacheOptions): LRUCache { +export function createCache( + options?: LruCacheOptions, +): LRUCache { return createConfiguredCache(calculateObjectSize, options); } diff --git a/packages/cache-handler/README.md b/packages/cache-handler/README.md index 6cbe5881..905896f3 100644 --- a/packages/cache-handler/README.md +++ b/packages/cache-handler/README.md @@ -2,7 +2,7 @@ **Flexible API to replace the default Next.js cache, accommodating custom cache solutions for multi-instance self-hosted deployments** -🎉 Version 0.6.3 is out, offering stale-while-revalidate strategy emulation! +🎉 Version 0.6.4 is out, offering stale-while-revalidate strategy emulation! Check out the [changelog](https://github.com/caching-tools/next-shared-cache/blob/canary/packages/cache-handler/CHANGELOG.md) diff --git a/packages/cache-handler/src/handlers/local-lru.ts b/packages/cache-handler/src/handlers/local-lru.ts index 3d7e46fe..c4cae037 100644 --- a/packages/cache-handler/src/handlers/local-lru.ts +++ b/packages/cache-handler/src/handlers/local-lru.ts @@ -1,10 +1,9 @@ /* eslint-disable import/no-default-export -- use default here */ import type { LruCacheOptions } from '@neshca/next-lru-cache/next-cache-handler-value'; import { createCache } from '@neshca/next-lru-cache/next-cache-handler-value'; -import type { Cache } from '../cache-handler'; +import type { Cache, CacheHandlerValue } from '../cache-handler'; import { calculateEvictionDelay } from '../helpers/calculate-eviction-delay'; import type { UseTtlOptions } from '../common-types'; -import { MAX_INT32 } from '../constants'; export type LruCacheHandlerOptions = LruCacheOptions & UseTtlOptions; @@ -31,7 +30,6 @@ export type LruCacheHandlerOptions = LruCacheOptions & UseTtlOptions; * * @remarks * - Use this Handler as a fallback for any remote store Handler instead of the filesystem when you use only the App router. - * - The max TTL value is 2147483.647 seconds (24.8 days) due to a `setTimeout` limitation. */ export default function createLruCache({ useTtl = false, ...lruOptions }: LruCacheHandlerOptions = {}): Cache { const lruCache = createCache(lruOptions); @@ -39,12 +37,35 @@ export default function createLruCache({ useTtl = false, ...lruOptions }: LruCac return { name: 'local-lru', get(key) { - return Promise.resolve(lruCache.get(key)); - }, - set(key, value, maxAgeSeconds = 0) { - const evictionDelay = calculateEvictionDelay(maxAgeSeconds * 1000, useTtl); + const cacheValue = lruCache.get(key); + + if (!cacheValue) { + return Promise.resolve(null); + } + + const { lastModified, maxAgeSeconds } = cacheValue; + + if (!useTtl || !maxAgeSeconds) { + return Promise.resolve(cacheValue as CacheHandlerValue); + } + + const ageSeconds = lastModified ? Math.floor((Date.now() - lastModified) / 1000) : 0; - lruCache.set(key, value, evictionDelay ? { ttl: Math.min(evictionDelay, MAX_INT32) } : undefined); + const evictionAge = calculateEvictionDelay(maxAgeSeconds, useTtl); + + if (!evictionAge || evictionAge > ageSeconds) { + return Promise.resolve(cacheValue as CacheHandlerValue); + } + + lruCache.delete(key); + + return Promise.resolve(null); + }, + set(key, value, maxAgeSeconds) { + lruCache.set(key, { + ...value, + maxAgeSeconds, + }); return Promise.resolve(); }, diff --git a/packages/cache-handler/src/handlers/server.ts b/packages/cache-handler/src/handlers/server.ts index 6cd1444a..4b434be1 100644 --- a/packages/cache-handler/src/handlers/server.ts +++ b/packages/cache-handler/src/handlers/server.ts @@ -7,6 +7,10 @@ export type ServerCacheHandlerOptions = { * The base URL of the cache store server. */ baseUrl: URL | string; + /** + * Timeout in milliseconds for remote cache store operations. + */ + timeoutMs?: number; }; /** @@ -33,7 +37,7 @@ export type ServerCacheHandlerOptions = { * - the `getRevalidatedTags` method retrieves revalidated tags from the server. * - the `revalidateTag` method updates the revalidation time for a specific tag in the server cache. */ -export default function createCache({ baseUrl }: ServerCacheHandlerOptions): Cache { +export default function createCache({ baseUrl, timeoutMs }: ServerCacheHandlerOptions): Cache { return { name: 'server', async get(key) { @@ -42,6 +46,7 @@ export default function createCache({ baseUrl }: ServerCacheHandlerOptions): Cac url.searchParams.set('key', key); const response = await fetch(url, { + signal: timeoutMs ? AbortSignal.timeout(timeoutMs) : undefined, // @ts-expect-error -- act as an internal fetch call next: { internal: true, @@ -69,6 +74,7 @@ export default function createCache({ baseUrl }: ServerCacheHandlerOptions): Cac headers: { 'Content-Type': 'application/json', }, + signal: timeoutMs ? AbortSignal.timeout(timeoutMs) : undefined, // @ts-expect-error -- act as an internal fetch call next: { internal: true, @@ -84,6 +90,7 @@ export default function createCache({ baseUrl }: ServerCacheHandlerOptions): Cac const url = new URL('/getRevalidatedTags', baseUrl); const response = await fetch(url, { + signal: timeoutMs ? AbortSignal.timeout(timeoutMs) : undefined, // @ts-expect-error -- act as an internal fetch call next: { internal: true, @@ -107,6 +114,7 @@ export default function createCache({ baseUrl }: ServerCacheHandlerOptions): Cac headers: { 'Content-Type': 'application/json', }, + signal: timeoutMs ? AbortSignal.timeout(timeoutMs) : undefined, // @ts-expect-error -- act as an internal fetch call next: { internal: true, From caadc4331d65d123dedb095aab900b931266f36f Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Thu, 11 Jan 2024 15:16:55 +0300 Subject: [PATCH 049/458] Version Packages (#253) Co-authored-by: github-actions[bot] --- .changeset/nice-moose-type.md | 5 ----- packages/cache-handler/CHANGELOG.md | 6 ++++++ packages/cache-handler/package.json | 2 +- 3 files changed, 7 insertions(+), 6 deletions(-) delete mode 100644 .changeset/nice-moose-type.md diff --git a/.changeset/nice-moose-type.md b/.changeset/nice-moose-type.md deleted file mode 100644 index 81b87823..00000000 --- a/.changeset/nice-moose-type.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@neshca/cache-handler': patch ---- - -Refactored `lru-cache` Handler to overcome ttl via setTimeout limitations. Added `timeoutMs` option to `server` Handler. diff --git a/packages/cache-handler/CHANGELOG.md b/packages/cache-handler/CHANGELOG.md index f7a21575..a560c2b0 100644 --- a/packages/cache-handler/CHANGELOG.md +++ b/packages/cache-handler/CHANGELOG.md @@ -1,5 +1,11 @@ # @neshca/cache-handler +## 0.6.4 + +### Patch Changes + +- 9dcb393: Refactored `lru-cache` Handler to overcome ttl via setTimeout limitations. Added `timeoutMs` option to `server` Handler. + ## 0.6.3 ### Patch Changes diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 6338a916..22ccedeb 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -1,6 +1,6 @@ { "name": "@neshca/cache-handler", - "version": "0.6.3", + "version": "0.6.4", "description": "Flexible API to replace the default Next.js cache, accommodating custom cache solutions for multi-instance deployments.", "keywords": [ "cache", From 8b63abe93bd028cae9842126684481d05c1b6ba3 Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Thu, 11 Jan 2024 16:38:46 +0300 Subject: [PATCH 050/458] Refactor promiseWithTimeout tests (#254) --- package-lock.json | 4 ++-- .../src/helpers/promise-with-timeout.test.ts | 22 +++++++++++-------- 2 files changed, 15 insertions(+), 11 deletions(-) diff --git a/package-lock.json b/package-lock.json index 07f19037..3b38ad16 100644 --- a/package-lock.json +++ b/package-lock.json @@ -115,7 +115,7 @@ } }, "docs/cache-handler-docs": { - "version": "0.6.2", + "version": "0.6.3", "dependencies": { "next": "14.0.4", "nextra": "2.13.2", @@ -16030,7 +16030,7 @@ }, "packages/cache-handler": { "name": "@neshca/cache-handler", - "version": "0.6.2", + "version": "0.6.4", "license": "MIT", "dependencies": { "@neshca/json-replacer-reviver": "*", diff --git a/packages/cache-handler/src/helpers/promise-with-timeout.test.ts b/packages/cache-handler/src/helpers/promise-with-timeout.test.ts index c06aac4a..16fa6f05 100644 --- a/packages/cache-handler/src/helpers/promise-with-timeout.test.ts +++ b/packages/cache-handler/src/helpers/promise-with-timeout.test.ts @@ -1,11 +1,18 @@ import { test } from 'node:test'; +import Timers from 'node:timers/promises'; import assert from 'node:assert'; import { promiseWithTimeout } from './promise-with-timeout'; -function simulateOperation(duration: number): Promise { - return new Promise((resolve) => { - setTimeout(resolve, duration, 'completed'); - }); +async function simulateOperation(duration: number): Promise { + await Timers.scheduler.wait(duration); + + return 'completed'; +} + +async function simulateOperationError(duration: number): Promise { + await Timers.scheduler.wait(duration); + + throw new Error('Operation error'); } await test('should resolve if operation finishes before timeout', async () => { @@ -57,12 +64,9 @@ await test('should return original operation if timeoutMs is greater than MAX_IN }); await test('should reject if operation throws an error', async () => { - const errorOperation = new Promise((_, reject) => { - setTimeout(reject, 100, new Error('Operation error')); - }); - try { - await promiseWithTimeout(errorOperation, 200); + const operationError = simulateOperationError(100); + await promiseWithTimeout(operationError, 200); assert.fail('Expected operation to throw an error'); } catch (error) { if (error instanceof Error) { From 6e2a5ddde88175fe6356487cc24768939ea97ae6 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 12 Jan 2024 00:19:02 +0300 Subject: [PATCH 051/458] Bump the definitely-typed group with 1 update (#255) Bumps the definitely-typed group with 1 update: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node). Updates `@types/node` from 20.10.8 to 20.11.0 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) --- updated-dependencies: - dependency-name: "@types/node" dependency-type: direct:development update-type: version-update:semver-minor dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- internal/backend/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 113 ++++---------------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 10 files changed, 29 insertions(+), 102 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index e2daecd0..69a30825 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -25,7 +25,7 @@ "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.0.5-canary.28", "@playwright/test": "1.40.1", - "@types/node": "20.10.8", + "@types/node": "20.11.0", "@types/react": "18.2.47", "@types/react-dom": "18.2.18", "dotenv-cli": "7.3.0", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 38bba52a..77813684 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -19,7 +19,7 @@ "devDependencies": { "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.0.4", - "@types/node": "20.10.8", + "@types/node": "20.11.0", "@types/react": "18.2.47", "@types/react-dom": "18.2.18", "eslint-config-neshca": "*", diff --git a/internal/backend/package.json b/internal/backend/package.json index 08ad1a86..d58b7532 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -16,7 +16,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.10.8", + "@types/node": "20.11.0", "eslint-config-neshca": "*", "pino-pretty": "10.3.1", "rimraf": "5.0.5", diff --git a/internal/next-common/package.json b/internal/next-common/package.json index acd5ce4b..415cd3c7 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -16,7 +16,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.10.8", + "@types/node": "20.11.0", "eslint-config-neshca": "*", "rimraf": "5.0.5", "typescript": "5.3.3" diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index 9b7bbef5..bc00e605 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -17,7 +17,7 @@ "devDependencies": { "@neshca/next-common": "*", "@neshca/tsconfig": "*", - "@types/node": "20.10.8", + "@types/node": "20.11.0", "eslint-config-neshca": "*", "rimraf": "5.0.5", "typescript": "5.3.3" diff --git a/package-lock.json b/package-lock.json index 3b38ad16..34794e63 100644 --- a/package-lock.json +++ b/package-lock.json @@ -46,7 +46,7 @@ "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.0.5-canary.28", "@playwright/test": "1.40.1", - "@types/node": "20.10.8", + "@types/node": "20.11.0", "@types/react": "18.2.47", "@types/react-dom": "18.2.18", "dotenv-cli": "7.3.0", @@ -59,15 +59,6 @@ "typescript": "5.3.3" } }, - "apps/cache-testing/node_modules/@types/node": { - "version": "20.10.8", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.8.tgz", - "integrity": "sha512-f8nQs3cLxbAFc00vEU59yf9UyGUftkPaLGfvbVOIDdx2i1b8epBqj2aNGyP19fiyXWvlmZ7qC1XLjAzw/OKIeA==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "apps/cache-testing/node_modules/next": { "version": "14.0.5-canary.28", "resolved": "https://registry.npmjs.org/next/-/next-14.0.5-canary.28.tgz", @@ -126,7 +117,7 @@ "devDependencies": { "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.0.4", - "@types/node": "20.10.8", + "@types/node": "20.11.0", "@types/react": "18.2.47", "@types/react-dom": "18.2.18", "eslint-config-neshca": "*", @@ -142,15 +133,6 @@ "glob": "7.1.7" } }, - "docs/cache-handler-docs/node_modules/@types/node": { - "version": "20.10.8", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.8.tgz", - "integrity": "sha512-f8nQs3cLxbAFc00vEU59yf9UyGUftkPaLGfvbVOIDdx2i1b8epBqj2aNGyP19fiyXWvlmZ7qC1XLjAzw/OKIeA==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "docs/cache-handler-docs/node_modules/glob": { "version": "7.1.7", "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", @@ -261,7 +243,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.10.8", + "@types/node": "20.11.0", "eslint-config-neshca": "*", "pino-pretty": "10.3.1", "rimraf": "5.0.5", @@ -269,15 +251,6 @@ "typescript": "5.3.3" } }, - "internal/backend/node_modules/@types/node": { - "version": "20.10.8", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.8.tgz", - "integrity": "sha512-f8nQs3cLxbAFc00vEU59yf9UyGUftkPaLGfvbVOIDdx2i1b8epBqj2aNGyP19fiyXWvlmZ7qC1XLjAzw/OKIeA==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "internal/eslint-config-neshca": { "version": "0.0.0", "license": "MIT", @@ -378,21 +351,12 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.10.8", + "@types/node": "20.11.0", "eslint-config-neshca": "*", "rimraf": "5.0.5", "typescript": "5.3.3" } }, - "internal/next-common/node_modules/@types/node": { - "version": "20.10.8", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.8.tgz", - "integrity": "sha512-f8nQs3cLxbAFc00vEU59yf9UyGUftkPaLGfvbVOIDdx2i1b8epBqj2aNGyP19fiyXWvlmZ7qC1XLjAzw/OKIeA==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "internal/next-common/node_modules/next": { "version": "14.0.5-canary.28", "resolved": "https://registry.npmjs.org/next/-/next-14.0.5-canary.28.tgz", @@ -449,21 +413,12 @@ "devDependencies": { "@neshca/next-common": "*", "@neshca/tsconfig": "*", - "@types/node": "20.10.8", + "@types/node": "20.11.0", "eslint-config-neshca": "*", "rimraf": "5.0.5", "typescript": "5.3.3" } }, - "internal/next-lru-cache/node_modules/@types/node": { - "version": "20.10.8", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.8.tgz", - "integrity": "sha512-f8nQs3cLxbAFc00vEU59yf9UyGUftkPaLGfvbVOIDdx2i1b8epBqj2aNGyP19fiyXWvlmZ7qC1XLjAzw/OKIeA==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "internal/prettier-config": { "name": "@neshca/prettier-config", "version": "0.0.0", @@ -1871,6 +1826,11 @@ "fs-extra": "^8.1.0" } }, + "node_modules/@manypkg/find-root/node_modules/@types/node": { + "version": "12.20.55", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", + "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" + }, "node_modules/@manypkg/find-root/node_modules/fs-extra": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", @@ -3163,9 +3123,12 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "12.20.55", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", - "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" + "version": "20.11.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.0.tgz", + "integrity": "sha512-o9bjXmDNcF7GbM4CNQpmi+TutCgap/K3w1JyKgxAjqx41zp9qlIAVFi0IhCNsJcXolEqLWhbFbEeL0PvYm4pcQ==", + "dependencies": { + "undici-types": "~5.26.4" + } }, "node_modules/@types/node-fetch": { "version": "2.6.10", @@ -16040,7 +16003,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@neshca/tsconfig": "*", - "@types/node": "20.10.8", + "@types/node": "20.11.0", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", @@ -16052,15 +16015,6 @@ "redis": ">=4.6" } }, - "packages/cache-handler/node_modules/@types/node": { - "version": "20.10.8", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.8.tgz", - "integrity": "sha512-f8nQs3cLxbAFc00vEU59yf9UyGUftkPaLGfvbVOIDdx2i1b8epBqj2aNGyP19fiyXWvlmZ7qC1XLjAzw/OKIeA==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "packages/diffscribe": { "version": "0.2.1", "license": "MIT", @@ -16069,7 +16023,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.10.8", + "@types/node": "20.11.0", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", @@ -16080,22 +16034,13 @@ "openai": "^4.12.3" } }, - "packages/diffscribe/node_modules/@types/node": { - "version": "20.10.8", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.8.tgz", - "integrity": "sha512-f8nQs3cLxbAFc00vEU59yf9UyGUftkPaLGfvbVOIDdx2i1b8epBqj2aNGyP19fiyXWvlmZ7qC1XLjAzw/OKIeA==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "packages/json-replacer-reviver": { "name": "@neshca/json-replacer-reviver", "version": "1.1.0", "license": "MIT", "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.10.8", + "@types/node": "20.11.0", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", @@ -16103,15 +16048,6 @@ "typescript": "5.3.3" } }, - "packages/json-replacer-reviver/node_modules/@types/node": { - "version": "20.10.8", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.8.tgz", - "integrity": "sha512-f8nQs3cLxbAFc00vEU59yf9UyGUftkPaLGfvbVOIDdx2i1b8epBqj2aNGyP19fiyXWvlmZ7qC1XLjAzw/OKIeA==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "packages/server": { "name": "@neshca/server", "version": "0.6.0", @@ -16127,22 +16063,13 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@neshca/tsconfig": "*", - "@types/node": "20.10.8", + "@types/node": "20.11.0", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", "tsx": "4.7.0", "typescript": "5.3.3" } - }, - "packages/server/node_modules/@types/node": { - "version": "20.10.8", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.8.tgz", - "integrity": "sha512-f8nQs3cLxbAFc00vEU59yf9UyGUftkPaLGfvbVOIDdx2i1b8epBqj2aNGyP19fiyXWvlmZ7qC1XLjAzw/OKIeA==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } } } } diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 22ccedeb..32951cc9 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -65,7 +65,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@neshca/tsconfig": "*", - "@types/node": "20.10.8", + "@types/node": "20.11.0", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index c0740c4d..352414b3 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -26,7 +26,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.10.8", + "@types/node": "20.11.0", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 397a6590..1d4743e2 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -29,7 +29,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.10.8", + "@types/node": "20.11.0", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", diff --git a/packages/server/package.json b/packages/server/package.json index 11d1147c..8fdf6c47 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -33,7 +33,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@neshca/tsconfig": "*", - "@types/node": "20.10.8", + "@types/node": "20.11.0", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", From a0b23aedfc74ac9e21a605eef1f5c57bef10f642 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 13 Jan 2024 00:32:02 +0300 Subject: [PATCH 052/458] Bump prettier from 3.1.1 to 3.2.1 (#256) Bumps [prettier](https://github.com/prettier/prettier) from 3.1.1 to 3.2.1. - [Release notes](https://github.com/prettier/prettier/releases) - [Changelog](https://github.com/prettier/prettier/blob/main/CHANGELOG.md) - [Commits](https://github.com/prettier/prettier/compare/3.1.1...3.2.1) --- updated-dependencies: - dependency-name: prettier dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 8 ++++---- package.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package-lock.json b/package-lock.json index 34794e63..9cfb81b0 100644 --- a/package-lock.json +++ b/package-lock.json @@ -24,7 +24,7 @@ "diffscribe": "*", "eslint": "8.56.0", "glob": "10.3.10", - "prettier": "3.1.1", + "prettier": "3.2.1", "turbo": "1.10.16" }, "engines": { @@ -12251,9 +12251,9 @@ } }, "node_modules/prettier": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.1.1.tgz", - "integrity": "sha512-22UbSzg8luF4UuZtzgiUOfcGM8s4tjBv6dJRT7j275NXsy2jb4aJa4NNveul5x4eqlF1wuhuR2RElK71RvmVaw==", + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.2.1.tgz", + "integrity": "sha512-qSUWshj1IobVbKc226Gw2pync27t0Kf0EdufZa9j7uBSJay1CC+B3K5lAAZoqgX3ASiKuWsk6OmzKRetXNObWg==", "dev": true, "bin": { "prettier": "bin/prettier.cjs" diff --git a/package.json b/package.json index 69b6de99..9d0e6685 100644 --- a/package.json +++ b/package.json @@ -39,7 +39,7 @@ "diffscribe": "*", "eslint": "8.56.0", "glob": "10.3.10", - "prettier": "3.1.1", + "prettier": "3.2.1", "turbo": "1.10.16" }, "engines": { From c62c986b33b901b50bf7f7cd26d44cabff980796 Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Sat, 13 Jan 2024 16:20:35 +0300 Subject: [PATCH 053/458] Refactor Redis Handlers timeout handling (#257) --- .changeset/hip-taxis-listen.md | 10 ++++ .../cache-handler-redis-stack.js | 8 +-- .../cache-handler-redis-strings.js | 8 +-- docs/cache-handler-docs/theme.config.jsx | 2 +- docs/contributing/cache-handler.md | 2 +- packages/cache-handler/README.md | 2 +- .../cache-handler/src/handlers/redis-stack.ts | 58 ++++++++++--------- .../src/handlers/redis-strings.ts | 30 +++++----- .../get-timeout-redis-command-options.ts | 7 +++ 9 files changed, 69 insertions(+), 58 deletions(-) create mode 100644 .changeset/hip-taxis-listen.md create mode 100644 packages/cache-handler/src/helpers/get-timeout-redis-command-options.ts diff --git a/.changeset/hip-taxis-listen.md b/.changeset/hip-taxis-listen.md new file mode 100644 index 00000000..2c55a5e8 --- /dev/null +++ b/.changeset/hip-taxis-listen.md @@ -0,0 +1,10 @@ +--- +'@neshca/cache-handler': patch +--- + +Refactored Redis Handlers timeout handling + +#### Changes + +- Refactored Redis Handlers to use `AbortSignal` instead of promisifying `setTimeout`. +- Set default Redis Handlers `timeoutMs` option to 5000 ms. diff --git a/apps/cache-testing/cache-handler-redis-stack.js b/apps/cache-testing/cache-handler-redis-stack.js index b0c0e10b..031273eb 100644 --- a/apps/cache-testing/cache-handler-redis-stack.js +++ b/apps/cache-testing/cache-handler-redis-stack.js @@ -8,14 +8,9 @@ if (!process.env.REDIS_URL) { console.warn('Make sure that REDIS_URL is added to the .env.local file and loaded properly.'); } -const CONNECT_TIMEOUT_MS = 5 * 60 * 1000; // 5 minutes - const client = createClient({ url: process.env.REDIS_URL, name: `cache-handler:${process.env.PORT ?? process.pid}`, - socket: { - connectTimeout: CONNECT_TIMEOUT_MS, - }, }); client.on('error', (error) => { @@ -30,9 +25,10 @@ IncrementalCache.onCreation(async () => { const redisCache = await createRedisCache({ client, keyPrefix: 'JSON:', + timeoutMs: 1000, }); - const redisStringsCache = createRedisStringsCache({ client, keyPrefix: 'strings:' }); + const redisStringsCache = createRedisStringsCache({ client, keyPrefix: 'strings:', timeoutMs: 1000 }); const localCache = createLruCache(); diff --git a/apps/cache-testing/cache-handler-redis-strings.js b/apps/cache-testing/cache-handler-redis-strings.js index 7361178a..90731ff0 100644 --- a/apps/cache-testing/cache-handler-redis-strings.js +++ b/apps/cache-testing/cache-handler-redis-strings.js @@ -8,14 +8,10 @@ if (!process.env.REDIS_URL) { } const PREFIX = 'string:'; -const CONNECT_TIMEOUT_MS = 5 * 60 * 1000; const client = createClient({ url: process.env.REDIS_URL, name: `cache-handler:${PREFIX}${process.env.PORT ?? process.pid}`, - socket: { - connectTimeout: CONNECT_TIMEOUT_MS, - }, }); client.on('error', (error) => { @@ -23,9 +19,11 @@ client.on('error', (error) => { }); IncrementalCache.onCreation(async () => { + console.log('Connecting Redis client...'); await client.connect(); + console.log('Redis client connected.'); - const redisCache = await createRedisCache({ + const redisCache = createRedisCache({ client, keyPrefix: PREFIX, }); diff --git a/docs/cache-handler-docs/theme.config.jsx b/docs/cache-handler-docs/theme.config.jsx index 58c7c431..a51ca0b1 100644 --- a/docs/cache-handler-docs/theme.config.jsx +++ b/docs/cache-handler-docs/theme.config.jsx @@ -53,7 +53,7 @@ export default { key: '0.6.0-release', text: ( - 🎉 Version 0.6.4 is out, offering stale-while-revalidate strategy emulation! + 🎉 Version 0.6.5 is out, offering stale-while-revalidate strategy emulation and codebase improvements! ), }, diff --git a/docs/contributing/cache-handler.md b/docs/contributing/cache-handler.md index f9591e30..9f49b846 100644 --- a/docs/contributing/cache-handler.md +++ b/docs/contributing/cache-handler.md @@ -50,7 +50,7 @@ npm run e2e:ui -w @neshca/cache-testing **Important**: Clear the Redis DB before executing tests: ```bash -docker exec -it redis-stack redis-cli +docker exec -it cache-handler-redis redis-cli 127.0.0.1:6379> flushall OK ``` diff --git a/packages/cache-handler/README.md b/packages/cache-handler/README.md index 905896f3..23de2d0e 100644 --- a/packages/cache-handler/README.md +++ b/packages/cache-handler/README.md @@ -2,7 +2,7 @@ **Flexible API to replace the default Next.js cache, accommodating custom cache solutions for multi-instance self-hosted deployments** -🎉 Version 0.6.4 is out, offering stale-while-revalidate strategy emulation! +🎉 Version 0.6.5 is out, offering stale-while-revalidate strategy emulation and codebase improvements! Check out the [changelog](https://github.com/caching-tools/next-shared-cache/blob/canary/packages/cache-handler/CHANGELOG.md) diff --git a/packages/cache-handler/src/handlers/redis-stack.ts b/packages/cache-handler/src/handlers/redis-stack.ts index 991d8b84..1490c0bf 100644 --- a/packages/cache-handler/src/handlers/redis-stack.ts +++ b/packages/cache-handler/src/handlers/redis-stack.ts @@ -2,8 +2,8 @@ import type { RedisClientType } from 'redis'; import type { RevalidatedTags, CacheHandlerValue, Cache } from '../cache-handler'; import type { RedisJSON, UseTtlOptions } from '../common-types'; -import { promiseWithTimeout } from '../helpers/promise-with-timeout'; import { calculateEvictionDelay } from '../helpers/calculate-eviction-delay'; +import { getTimeoutRedisCommandOptions } from '../helpers/get-timeout-redis-command-options'; /** * The configuration options for the Redis Handler @@ -22,7 +22,7 @@ export type RedisCacheHandlerOptions = UseTtlOptions & { */ revalidatedTagsKey?: string; /** - * Timeout in milliseconds for Redis operations. + * Timeout in milliseconds for Redis operations. Defaults to 5000. */ timeoutMs?: number; }; @@ -60,7 +60,7 @@ export default async function createCache({ keyPrefix = '', revalidatedTagsKey = '__sharedRevalidatedTags__', useTtl = false, - timeoutMs, + timeoutMs = 5000, }: RedisCacheHandlerOptions): Promise { function assertClientIsReady(): void { if (!client.isReady) { @@ -70,7 +70,8 @@ export default async function createCache({ assertClientIsReady(); - const setInitialRevalidatedTags = client.json.set( + await client.json.set( + getTimeoutRedisCommandOptions(timeoutMs), keyPrefix + revalidatedTagsKey, '.', {}, @@ -79,17 +80,15 @@ export default async function createCache({ }, ); - await promiseWithTimeout(setInitialRevalidatedTags, timeoutMs); - return { name: 'redis-stack', async get(key) { assertClientIsReady(); - const getCacheValue = client.json.get(keyPrefix + key); - - const cacheValue = ((await promiseWithTimeout(getCacheValue, timeoutMs)) ?? - null) as CacheHandlerValue | null; + const cacheValue = (await client.json.get( + getTimeoutRedisCommandOptions(timeoutMs), + keyPrefix + key, + )) as CacheHandlerValue | null; if (cacheValue?.value?.kind === 'ROUTE') { cacheValue.value.body = Buffer.from(cacheValue.value.body as unknown as string, 'base64'); @@ -108,41 +107,44 @@ export default async function createCache({ preparedCacheValue.value.body = cacheValue.value.body.toString('base64') as unknown as Buffer; } - const setCacheValue = client.json.set(keyPrefix + key, '.', preparedCacheValue as unknown as RedisJSON); + const options = getTimeoutRedisCommandOptions(timeoutMs); - await promiseWithTimeout(setCacheValue, timeoutMs); + const setCacheValue = client.json.set( + options, + keyPrefix + key, + '.', + preparedCacheValue as unknown as RedisJSON, + ); - if (typeof maxAgeSeconds !== 'number') { - return; - } + const commands: Promise[] = [setCacheValue]; const evictionDelay = calculateEvictionDelay(maxAgeSeconds, useTtl); - if (!evictionDelay) { - return; + if (evictionDelay) { + commands.push(client.expire(options, keyPrefix + key, evictionDelay)); } - const setExpire = client.expire(keyPrefix + key, evictionDelay); - - await promiseWithTimeout(setExpire, timeoutMs); + await Promise.all(commands); }, async getRevalidatedTags() { assertClientIsReady(); - const getRevalidatedTags = client.json.get(keyPrefix + revalidatedTagsKey); - - const sharedRevalidatedTags = ((await promiseWithTimeout(getRevalidatedTags, timeoutMs)) ?? undefined) as - | RevalidatedTags - | undefined; + const sharedRevalidatedTags = (await client.json.get( + getTimeoutRedisCommandOptions(timeoutMs), + keyPrefix + revalidatedTagsKey, + )) as RevalidatedTags | undefined; return sharedRevalidatedTags; }, async revalidateTag(tag, revalidatedAt) { assertClientIsReady(); - const setRevalidatedTags = client.json.set(keyPrefix + revalidatedTagsKey, `.${tag}`, revalidatedAt); - - await promiseWithTimeout(setRevalidatedTags, timeoutMs); + await client.json.set( + getTimeoutRedisCommandOptions(timeoutMs), + keyPrefix + revalidatedTagsKey, + `.${tag}`, + revalidatedAt, + ); }, }; } diff --git a/packages/cache-handler/src/handlers/redis-strings.ts b/packages/cache-handler/src/handlers/redis-strings.ts index da1b02b0..e1932479 100644 --- a/packages/cache-handler/src/handlers/redis-strings.ts +++ b/packages/cache-handler/src/handlers/redis-strings.ts @@ -1,9 +1,9 @@ /* eslint-disable import/no-default-export -- use default here */ -import { reviveFromBase64Representation, replaceJsonWithBase64 } from '@neshca/json-replacer-reviver'; +import { replaceJsonWithBase64, reviveFromBase64Representation } from '@neshca/json-replacer-reviver'; import type { RedisClientType } from 'redis'; -import { promiseWithTimeout } from '../helpers/promise-with-timeout'; -import type { RevalidatedTags, CacheHandlerValue, Cache } from '../cache-handler'; +import type { Cache, CacheHandlerValue, RevalidatedTags } from '../cache-handler'; import { calculateEvictionDelay } from '../helpers/calculate-eviction-delay'; +import { getTimeoutRedisCommandOptions } from '../helpers/get-timeout-redis-command-options'; import type { RedisCacheHandlerOptions } from './redis-stack'; /** @@ -39,11 +39,11 @@ export default function createCache({ keyPrefix = '', revalidatedTagsKey = '__sharedRevalidatedTags__', useTtl = false, - timeoutMs, + timeoutMs = 5000, }: RedisCacheHandlerOptions): Cache { function assertClientIsReady(): void { if (!client.isReady) { - throw new Error('Redis client is not ready'); + throw new Error('Redis client is not ready yet or connection is lost. Keep trying...'); } } @@ -52,9 +52,9 @@ export default function createCache({ async get(key) { assertClientIsReady(); - const getOperation = client.get(keyPrefix + key); + const getOperation = client.get(getTimeoutRedisCommandOptions(timeoutMs), keyPrefix + key); - const result = await promiseWithTimeout(getOperation, timeoutMs); + const result = await getOperation; if (!result) { return null; @@ -69,20 +69,20 @@ export default function createCache({ const evictionDelay = calculateEvictionDelay(maxAgeSeconds, useTtl); // use replaceJsonWithBase64 to store binary data in Base64 and save space - const setOperation = client.set( + await client.set( + getTimeoutRedisCommandOptions(timeoutMs), keyPrefix + key, JSON.stringify(value, replaceJsonWithBase64), evictionDelay ? { EX: evictionDelay } : undefined, ); - - await promiseWithTimeout(setOperation, timeoutMs); }, async getRevalidatedTags() { assertClientIsReady(); - const getOperation = client.hGetAll(keyPrefix + revalidatedTagsKey); - - const sharedRevalidatedTags = await promiseWithTimeout(getOperation, timeoutMs); + const sharedRevalidatedTags = await client.hGetAll( + getTimeoutRedisCommandOptions(timeoutMs), + keyPrefix + revalidatedTagsKey, + ); const entries = Object.entries(sharedRevalidatedTags); @@ -97,11 +97,9 @@ export default function createCache({ async revalidateTag(tag, revalidatedAt) { assertClientIsReady(); - const setOperation = client.hSet(keyPrefix + revalidatedTagsKey, { + await client.hSet(getTimeoutRedisCommandOptions(timeoutMs), keyPrefix + revalidatedTagsKey, { [tag]: revalidatedAt, }); - - await promiseWithTimeout(setOperation, timeoutMs); }, }; } diff --git a/packages/cache-handler/src/helpers/get-timeout-redis-command-options.ts b/packages/cache-handler/src/helpers/get-timeout-redis-command-options.ts new file mode 100644 index 00000000..477ab487 --- /dev/null +++ b/packages/cache-handler/src/helpers/get-timeout-redis-command-options.ts @@ -0,0 +1,7 @@ +import { commandOptions } from 'redis'; + +type CommandOptions = ReturnType; + +export function getTimeoutRedisCommandOptions(timeoutMs: number): CommandOptions { + return commandOptions({ signal: AbortSignal.timeout(timeoutMs) }); +} From ad4b63d2cc60b94a8cd969efbe81defc09033ceb Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Sun, 14 Jan 2024 00:55:15 +0300 Subject: [PATCH 054/458] Version Packages (#258) Co-authored-by: github-actions[bot] --- .changeset/hip-taxis-listen.md | 10 ---------- packages/cache-handler/CHANGELOG.md | 11 +++++++++++ packages/cache-handler/package.json | 2 +- 3 files changed, 12 insertions(+), 11 deletions(-) delete mode 100644 .changeset/hip-taxis-listen.md diff --git a/.changeset/hip-taxis-listen.md b/.changeset/hip-taxis-listen.md deleted file mode 100644 index 2c55a5e8..00000000 --- a/.changeset/hip-taxis-listen.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -'@neshca/cache-handler': patch ---- - -Refactored Redis Handlers timeout handling - -#### Changes - -- Refactored Redis Handlers to use `AbortSignal` instead of promisifying `setTimeout`. -- Set default Redis Handlers `timeoutMs` option to 5000 ms. diff --git a/packages/cache-handler/CHANGELOG.md b/packages/cache-handler/CHANGELOG.md index a560c2b0..79669c93 100644 --- a/packages/cache-handler/CHANGELOG.md +++ b/packages/cache-handler/CHANGELOG.md @@ -1,5 +1,16 @@ # @neshca/cache-handler +## 0.6.5 + +### Patch Changes + +- c62c986: Refactored Redis Handlers timeout handling + + #### Changes + + - Refactored Redis Handlers to use `AbortSignal` instead of promisifying `setTimeout`. + - Set default Redis Handlers `timeoutMs` option to 5000 ms. + ## 0.6.4 ### Patch Changes diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 32951cc9..9a92746a 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -1,6 +1,6 @@ { "name": "@neshca/cache-handler", - "version": "0.6.4", + "version": "0.6.5", "description": "Flexible API to replace the default Next.js cache, accommodating custom cache solutions for multi-instance deployments.", "keywords": [ "cache", From bcbe35c374e1d697a359952947e72664995e0d29 Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Mon, 15 Jan 2024 21:36:32 +0300 Subject: [PATCH 055/458] Add `import/order` rule to the monorepo (#259) --- apps/cache-testing/package.json | 5 +- .../src/app/api/revalidate-app/route.ts | 1 + .../no-params/dynamic-false/[slug]/page.tsx | 3 +- .../no-params/dynamic-true/[slug]/page.tsx | 3 +- .../src/app/app/no-params/ssr/200/page.tsx | 3 +- apps/cache-testing/src/app/app/ppr/page.tsx | 3 +- .../src/app/app/randomHex/[length]/page.tsx | 3 +- .../with-params/dynamic-false/[slug]/page.tsx | 3 +- .../with-params/dynamic-true/[slug]/page.tsx | 3 +- apps/cache-testing/src/app/layout.tsx | 3 +- apps/cache-testing/src/pages/_app.tsx | 1 + .../src/pages/api/revalidate-pages.ts | 1 + apps/cache-testing/src/pages/layout.tsx | 1 + .../no-paths/fallback-blocking/[slug].tsx | 3 +- .../pages/no-paths/fallback-false/[slug].tsx | 3 +- .../pages/no-paths/fallback-true/[slug].tsx | 3 +- .../src/pages/pages/randomHex/[length].tsx | 3 +- .../with-paths/fallback-blocking/[slug].tsx | 3 +- .../with-paths/fallback-false/[slug].tsx | 3 +- .../pages/with-paths/fallback-true/[slug].tsx | 3 +- .../src/utils/common-app-page.tsx | 4 +- .../src/utils/common-pages-page.tsx | 3 +- .../create-pages-get-get-server-side-props.ts | 1 + .../utils/create-pages-get-static-props.ts | 1 + internal/backend/package.json | 1 + internal/backend/src/backend.ts | 1 + internal/eslint-config-neshca/library.js | 7 + internal/eslint-config-neshca/next.js | 7 + internal/next-common/package.json | 5 +- internal/next-common/src/next-common.ts | 3 +- internal/next-lru-cache/package.json | 3 +- .../src/cache-types/cache-string-value.ts | 1 + .../cache-types/next-cache-handler-value.ts | 3 +- package-lock.json | 549 +++++++++++------- package.json | 1 + packages/cache-handler/package.json | 1 + packages/cache-handler/src/cache-handler.ts | 4 +- .../cache-handler/src/handlers/local-lru.ts | 3 +- .../cache-handler/src/handlers/redis-stack.ts | 2 + .../src/handlers/redis-strings.ts | 2 + packages/cache-handler/src/handlers/server.ts | 1 + .../helpers/calculate-eviction-delay.test.ts | 3 +- .../src/helpers/promise-with-timeout.test.ts | 3 +- .../src/helpers/promise-with-timeout.ts | 2 +- packages/diffscribe/package.json | 3 +- packages/diffscribe/src/diffscribe.ts | 1 + packages/json-replacer-reviver/package.json | 1 + .../src/json-replacer-reviver.test.ts | 3 +- packages/server/package.json | 1 + packages/server/src/server.ts | 4 +- turbo.json | 7 +- 51 files changed, 426 insertions(+), 259 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 69a30825..cac5b2e7 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -12,10 +12,11 @@ "e2e": "playwright test --config=./playwright.config.ts", "e2e:ui": "playwright test --ui --config=./playwright.config.ts", "lint": "next lint", + "lint:fix": "next lint --fix", "start": "dotenv -e .env.local -v SERVER_STARTED=1 node .next/standalone/apps/cache-testing/server.js" }, "dependencies": { - "next": "14.0.5-canary.28", + "next": "14.0.5-canary.58", "react": "18.2.0", "react-dom": "18.2.0" }, @@ -23,7 +24,7 @@ "@neshca/cache-handler": "*", "@neshca/json-replacer-reviver": "*", "@neshca/tsconfig": "*", - "@next/eslint-plugin-next": "14.0.5-canary.28", + "@next/eslint-plugin-next": "14.0.5-canary.58", "@playwright/test": "1.40.1", "@types/node": "20.11.0", "@types/react": "18.2.47", diff --git a/apps/cache-testing/src/app/api/revalidate-app/route.ts b/apps/cache-testing/src/app/api/revalidate-app/route.ts index dce36c6a..e8524a58 100644 --- a/apps/cache-testing/src/app/api/revalidate-app/route.ts +++ b/apps/cache-testing/src/app/api/revalidate-app/route.ts @@ -1,6 +1,7 @@ import { revalidatePath, revalidateTag } from 'next/cache'; import type { NextRequest } from 'next/server'; import { NextResponse } from 'next/server'; + import { formatTime } from 'cache-testing/utils/format-time'; export function GET(request: NextRequest): Promise { diff --git a/apps/cache-testing/src/app/app/no-params/dynamic-false/[slug]/page.tsx b/apps/cache-testing/src/app/app/no-params/dynamic-false/[slug]/page.tsx index c626fc33..4e94c605 100644 --- a/apps/cache-testing/src/app/app/no-params/dynamic-false/[slug]/page.tsx +++ b/apps/cache-testing/src/app/app/no-params/dynamic-false/[slug]/page.tsx @@ -1,6 +1,7 @@ import { notFound } from 'next/navigation'; -import { createGetData } from 'cache-testing/utils/create-get-data'; + import { CommonAppPage } from 'cache-testing/utils/common-app-page'; +import { createGetData } from 'cache-testing/utils/create-get-data'; export const dynamicParams = false; diff --git a/apps/cache-testing/src/app/app/no-params/dynamic-true/[slug]/page.tsx b/apps/cache-testing/src/app/app/no-params/dynamic-true/[slug]/page.tsx index 0b940013..37f773a1 100644 --- a/apps/cache-testing/src/app/app/no-params/dynamic-true/[slug]/page.tsx +++ b/apps/cache-testing/src/app/app/no-params/dynamic-true/[slug]/page.tsx @@ -1,6 +1,7 @@ import { notFound } from 'next/navigation'; -import { createGetData } from 'cache-testing/utils/create-get-data'; + import { CommonAppPage } from 'cache-testing/utils/common-app-page'; +import { createGetData } from 'cache-testing/utils/create-get-data'; export const dynamicParams = true; diff --git a/apps/cache-testing/src/app/app/no-params/ssr/200/page.tsx b/apps/cache-testing/src/app/app/no-params/ssr/200/page.tsx index 15238616..7df17aec 100644 --- a/apps/cache-testing/src/app/app/no-params/ssr/200/page.tsx +++ b/apps/cache-testing/src/app/app/no-params/ssr/200/page.tsx @@ -1,6 +1,7 @@ import { notFound } from 'next/navigation'; -import { createGetData } from 'cache-testing/utils/create-get-data'; + import { CommonAppPage } from 'cache-testing/utils/common-app-page'; +import { createGetData } from 'cache-testing/utils/create-get-data'; const getData = createGetData('app/no-params/ssr', undefined, 'no-store'); diff --git a/apps/cache-testing/src/app/app/ppr/page.tsx b/apps/cache-testing/src/app/app/ppr/page.tsx index 954d230e..62544942 100644 --- a/apps/cache-testing/src/app/app/ppr/page.tsx +++ b/apps/cache-testing/src/app/app/ppr/page.tsx @@ -1,5 +1,6 @@ -import { Suspense } from 'react'; import { unstable_noStore as noStore } from 'next/cache'; +import { Suspense } from 'react'; + import { formatTime } from 'cache-testing/utils/format-time'; import type { TimeBackendApiResponseJson } from 'cache-testing/utils/types'; diff --git a/apps/cache-testing/src/app/app/randomHex/[length]/page.tsx b/apps/cache-testing/src/app/app/randomHex/[length]/page.tsx index 84f1698f..4ef6db7b 100644 --- a/apps/cache-testing/src/app/app/randomHex/[length]/page.tsx +++ b/apps/cache-testing/src/app/app/randomHex/[length]/page.tsx @@ -1,8 +1,9 @@ import { notFound } from 'next/navigation'; import { Suspense } from 'react'; -import type { RandomHexPageProps } from 'cache-testing/utils/types'; + import { CacheStateWatcher } from 'cache-testing/components/cache-state-watcher'; import { PreRenderedAt } from 'cache-testing/components/pre-rendered-at'; +import type { RandomHexPageProps } from 'cache-testing/utils/types'; const lengthSteps = new Array(5).fill(0).map((_, i) => 10 ** (i + 1)); diff --git a/apps/cache-testing/src/app/app/with-params/dynamic-false/[slug]/page.tsx b/apps/cache-testing/src/app/app/with-params/dynamic-false/[slug]/page.tsx index e8ff8ae2..42533612 100644 --- a/apps/cache-testing/src/app/app/with-params/dynamic-false/[slug]/page.tsx +++ b/apps/cache-testing/src/app/app/with-params/dynamic-false/[slug]/page.tsx @@ -1,6 +1,7 @@ import { notFound } from 'next/navigation'; -import { createGetData } from 'cache-testing/utils/create-get-data'; + import { CommonAppPage } from 'cache-testing/utils/common-app-page'; +import { createGetData } from 'cache-testing/utils/create-get-data'; type PageParams = { params: { slug: string } }; diff --git a/apps/cache-testing/src/app/app/with-params/dynamic-true/[slug]/page.tsx b/apps/cache-testing/src/app/app/with-params/dynamic-true/[slug]/page.tsx index f8c2f484..86054662 100644 --- a/apps/cache-testing/src/app/app/with-params/dynamic-true/[slug]/page.tsx +++ b/apps/cache-testing/src/app/app/with-params/dynamic-true/[slug]/page.tsx @@ -1,6 +1,7 @@ import { notFound } from 'next/navigation'; -import { createGetData } from 'cache-testing/utils/create-get-data'; + import { CommonAppPage } from 'cache-testing/utils/common-app-page'; +import { createGetData } from 'cache-testing/utils/create-get-data'; type PageParams = { params: { slug: string } }; diff --git a/apps/cache-testing/src/app/layout.tsx b/apps/cache-testing/src/app/layout.tsx index 799ee556..c470bef5 100644 --- a/apps/cache-testing/src/app/layout.tsx +++ b/apps/cache-testing/src/app/layout.tsx @@ -1,7 +1,8 @@ import type { PropsWithChildren } from 'react'; import { Suspense } from 'react'; -import { RevalidateButton } from 'cache-testing/components/revalidate-button'; + import { RestartButton } from 'cache-testing/components/restart-button'; +import { RevalidateButton } from 'cache-testing/components/revalidate-button'; import 'cache-testing/globals.css'; export const metadata = { diff --git a/apps/cache-testing/src/pages/_app.tsx b/apps/cache-testing/src/pages/_app.tsx index f919cf0d..ad9cbede 100644 --- a/apps/cache-testing/src/pages/_app.tsx +++ b/apps/cache-testing/src/pages/_app.tsx @@ -1,4 +1,5 @@ import type { AppProps } from 'next/app'; + import Layout from './layout'; export default function MyApp({ Component, pageProps }: AppProps): JSX.Element { diff --git a/apps/cache-testing/src/pages/api/revalidate-pages.ts b/apps/cache-testing/src/pages/api/revalidate-pages.ts index eff62d9a..2c442b63 100644 --- a/apps/cache-testing/src/pages/api/revalidate-pages.ts +++ b/apps/cache-testing/src/pages/api/revalidate-pages.ts @@ -1,4 +1,5 @@ import type { NextApiRequest, NextApiResponse } from 'next'; + import { formatTime } from 'cache-testing/utils/format-time'; export default async function handler(request: NextApiRequest, result: NextApiResponse): Promise { diff --git a/apps/cache-testing/src/pages/layout.tsx b/apps/cache-testing/src/pages/layout.tsx index e56e17af..77dcb453 100644 --- a/apps/cache-testing/src/pages/layout.tsx +++ b/apps/cache-testing/src/pages/layout.tsx @@ -1,4 +1,5 @@ import type { PropsWithChildren } from 'react'; + import { RestartButton } from 'cache-testing/components/restart-button'; import { RevalidateButton } from 'cache-testing/components/revalidate-button'; import 'cache-testing/globals.css'; diff --git a/apps/cache-testing/src/pages/pages/no-paths/fallback-blocking/[slug].tsx b/apps/cache-testing/src/pages/pages/no-paths/fallback-blocking/[slug].tsx index 8bcc5b1a..f46e7978 100644 --- a/apps/cache-testing/src/pages/pages/no-paths/fallback-blocking/[slug].tsx +++ b/apps/cache-testing/src/pages/pages/no-paths/fallback-blocking/[slug].tsx @@ -1,6 +1,7 @@ import type { GetStaticPathsResult } from 'next'; -import { createPagesGetStaticProps } from 'cache-testing/utils/create-pages-get-static-props'; + import { CommonPagesPage } from 'cache-testing/utils/common-pages-page'; +import { createPagesGetStaticProps } from 'cache-testing/utils/create-pages-get-static-props'; export const getStaticProps = createPagesGetStaticProps('pages/no-paths/fallback-blocking'); diff --git a/apps/cache-testing/src/pages/pages/no-paths/fallback-false/[slug].tsx b/apps/cache-testing/src/pages/pages/no-paths/fallback-false/[slug].tsx index 308acf76..c7ddbb8b 100644 --- a/apps/cache-testing/src/pages/pages/no-paths/fallback-false/[slug].tsx +++ b/apps/cache-testing/src/pages/pages/no-paths/fallback-false/[slug].tsx @@ -1,6 +1,7 @@ import type { GetStaticPathsResult } from 'next'; -import { createPagesGetStaticProps } from 'cache-testing/utils/create-pages-get-static-props'; + import { CommonPagesPage } from 'cache-testing/utils/common-pages-page'; +import { createPagesGetStaticProps } from 'cache-testing/utils/create-pages-get-static-props'; export const getStaticProps = createPagesGetStaticProps('pages/no-paths/fallback-false'); diff --git a/apps/cache-testing/src/pages/pages/no-paths/fallback-true/[slug].tsx b/apps/cache-testing/src/pages/pages/no-paths/fallback-true/[slug].tsx index 0ca71af1..178b4052 100644 --- a/apps/cache-testing/src/pages/pages/no-paths/fallback-true/[slug].tsx +++ b/apps/cache-testing/src/pages/pages/no-paths/fallback-true/[slug].tsx @@ -1,6 +1,7 @@ import type { GetStaticPathsResult } from 'next'; -import { createPagesGetStaticProps } from 'cache-testing/utils/create-pages-get-static-props'; + import { CommonPagesPage } from 'cache-testing/utils/common-pages-page'; +import { createPagesGetStaticProps } from 'cache-testing/utils/create-pages-get-static-props'; export const getStaticProps = createPagesGetStaticProps('pages/no-paths/fallback-true'); diff --git a/apps/cache-testing/src/pages/pages/randomHex/[length].tsx b/apps/cache-testing/src/pages/pages/randomHex/[length].tsx index f463c64f..aa17e73b 100644 --- a/apps/cache-testing/src/pages/pages/randomHex/[length].tsx +++ b/apps/cache-testing/src/pages/pages/randomHex/[length].tsx @@ -1,7 +1,8 @@ import type { GetStaticPathsResult, GetStaticPropsContext, GetStaticPropsResult } from 'next'; -import type { RandomHexPageProps } from 'cache-testing/utils/types'; + import { CacheStateWatcher } from 'cache-testing/components/cache-state-watcher'; import { PreRenderedAt } from 'cache-testing/components/pre-rendered-at'; +import type { RandomHexPageProps } from 'cache-testing/utils/types'; const lengthSteps = new Array(5).fill(0).map((_, i) => 10 ** (i + 1)); diff --git a/apps/cache-testing/src/pages/pages/with-paths/fallback-blocking/[slug].tsx b/apps/cache-testing/src/pages/pages/with-paths/fallback-blocking/[slug].tsx index d3cee4fc..da19b1e8 100644 --- a/apps/cache-testing/src/pages/pages/with-paths/fallback-blocking/[slug].tsx +++ b/apps/cache-testing/src/pages/pages/with-paths/fallback-blocking/[slug].tsx @@ -1,6 +1,7 @@ import type { GetStaticPathsResult } from 'next'; -import { createPagesGetStaticProps } from 'cache-testing/utils/create-pages-get-static-props'; + import { CommonPagesPage } from 'cache-testing/utils/common-pages-page'; +import { createPagesGetStaticProps } from 'cache-testing/utils/create-pages-get-static-props'; export const getStaticProps = createPagesGetStaticProps('pages/with-paths/fallback-blocking'); diff --git a/apps/cache-testing/src/pages/pages/with-paths/fallback-false/[slug].tsx b/apps/cache-testing/src/pages/pages/with-paths/fallback-false/[slug].tsx index 400f77e8..8f690bf3 100644 --- a/apps/cache-testing/src/pages/pages/with-paths/fallback-false/[slug].tsx +++ b/apps/cache-testing/src/pages/pages/with-paths/fallback-false/[slug].tsx @@ -1,6 +1,7 @@ import type { GetStaticPathsResult } from 'next'; -import { createPagesGetStaticProps } from 'cache-testing/utils/create-pages-get-static-props'; + import { CommonPagesPage } from 'cache-testing/utils/common-pages-page'; +import { createPagesGetStaticProps } from 'cache-testing/utils/create-pages-get-static-props'; export const getStaticProps = createPagesGetStaticProps('pages/with-paths/fallback-false'); diff --git a/apps/cache-testing/src/pages/pages/with-paths/fallback-true/[slug].tsx b/apps/cache-testing/src/pages/pages/with-paths/fallback-true/[slug].tsx index 8741e68d..4de025ce 100644 --- a/apps/cache-testing/src/pages/pages/with-paths/fallback-true/[slug].tsx +++ b/apps/cache-testing/src/pages/pages/with-paths/fallback-true/[slug].tsx @@ -1,6 +1,7 @@ import type { GetStaticPathsResult } from 'next'; -import { createPagesGetStaticProps } from 'cache-testing/utils/create-pages-get-static-props'; + import { CommonPagesPage } from 'cache-testing/utils/common-pages-page'; +import { createPagesGetStaticProps } from 'cache-testing/utils/create-pages-get-static-props'; export const getStaticProps = createPagesGetStaticProps('pages/with-paths/fallback-true'); diff --git a/apps/cache-testing/src/utils/common-app-page.tsx b/apps/cache-testing/src/utils/common-app-page.tsx index 1f7526c0..d12255d9 100644 --- a/apps/cache-testing/src/utils/common-app-page.tsx +++ b/apps/cache-testing/src/utils/common-app-page.tsx @@ -1,7 +1,9 @@ import { Suspense } from 'react'; + +import type { PageProps } from './types'; + import { CacheStateWatcher } from 'cache-testing/components/cache-state-watcher'; import { PreRenderedAt } from 'cache-testing/components/pre-rendered-at'; -import type { PageProps } from './types'; export function CommonAppPage({ count, revalidateAfter, time, path }: PageProps): JSX.Element { return ( diff --git a/apps/cache-testing/src/utils/common-pages-page.tsx b/apps/cache-testing/src/utils/common-pages-page.tsx index caa113a4..0d3e7995 100644 --- a/apps/cache-testing/src/utils/common-pages-page.tsx +++ b/apps/cache-testing/src/utils/common-pages-page.tsx @@ -1,6 +1,7 @@ +import type { PageProps } from './types'; + import { CacheStateWatcher } from 'cache-testing/components/cache-state-watcher'; import { PreRenderedAt } from 'cache-testing/components/pre-rendered-at'; -import type { PageProps } from './types'; export function CommonPagesPage({ count, revalidateAfter, time, path }: PageProps): JSX.Element { return ( diff --git a/apps/cache-testing/src/utils/create-pages-get-get-server-side-props.ts b/apps/cache-testing/src/utils/create-pages-get-get-server-side-props.ts index 8554d027..dcc295c2 100644 --- a/apps/cache-testing/src/utils/create-pages-get-get-server-side-props.ts +++ b/apps/cache-testing/src/utils/create-pages-get-get-server-side-props.ts @@ -1,4 +1,5 @@ import type { GetServerSidePropsContext, GetServerSidePropsResult } from 'next'; + import type { CountBackendApiResponseJson, PageProps } from './types'; export function createPagesGetServerSideProps( diff --git a/apps/cache-testing/src/utils/create-pages-get-static-props.ts b/apps/cache-testing/src/utils/create-pages-get-static-props.ts index 24186a84..5dd365fa 100644 --- a/apps/cache-testing/src/utils/create-pages-get-static-props.ts +++ b/apps/cache-testing/src/utils/create-pages-get-static-props.ts @@ -1,4 +1,5 @@ import type { GetStaticPropsContext, GetStaticPropsResult } from 'next'; + import type { CountBackendApiResponseJson, PageProps } from './types'; const revalidate = 5; diff --git a/internal/backend/package.json b/internal/backend/package.json index d58b7532..e6a25b65 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -8,6 +8,7 @@ "clean": "rimraf ./.turbo ./node_modules", "dev": "node --watch --import tsx/esm ./src/backend.ts", "lint": "eslint .", + "lint:fix": "eslint --fix .", "start": "node --import tsx/esm ./src/backend.ts" }, "dependencies": { diff --git a/internal/backend/src/backend.ts b/internal/backend/src/backend.ts index c3a93e9f..73d8e1cb 100644 --- a/internal/backend/src/backend.ts +++ b/internal/backend/src/backend.ts @@ -1,6 +1,7 @@ #!/usr/bin/env node import { randomBytes } from 'node:crypto'; + import Fastify from 'fastify'; import { pino } from 'pino'; diff --git a/internal/eslint-config-neshca/library.js b/internal/eslint-config-neshca/library.js index aa924eb8..c1ac5e73 100644 --- a/internal/eslint-config-neshca/library.js +++ b/internal/eslint-config-neshca/library.js @@ -23,5 +23,12 @@ module.exports = { rules: { '@typescript-eslint/consistent-type-definitions': ['error', 'type'], '@typescript-eslint/no-unnecessary-condition': 'off', + 'import/order': [ + 'error', + { + 'newlines-between': 'always', + alphabetize: { order: 'asc', orderImportKind: 'asc', caseInsensitive: true }, + }, + ], }, }; diff --git a/internal/eslint-config-neshca/next.js b/internal/eslint-config-neshca/next.js index 50a401df..f4b4a2c4 100644 --- a/internal/eslint-config-neshca/next.js +++ b/internal/eslint-config-neshca/next.js @@ -40,5 +40,12 @@ module.exports = { 'no-console': 'off', '@typescript-eslint/consistent-type-definitions': ['error', 'type'], 'import/no-extraneous-dependencies': ['error', { includeTypes: true }], + 'import/order': [ + 'error', + { + 'newlines-between': 'always', + alphabetize: { order: 'asc', orderImportKind: 'asc', caseInsensitive: true }, + }, + ], }, }; diff --git a/internal/next-common/package.json b/internal/next-common/package.json index 415cd3c7..21a60159 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -9,10 +9,11 @@ }, "scripts": { "clean": "rimraf ./.turbo ./node_modules", - "lint": "eslint ." + "lint": "eslint .", + "lint:fix": "eslint --fix ." }, "dependencies": { - "next": "14.0.5-canary.28" + "next": "14.0.5-canary.58" }, "devDependencies": { "@neshca/tsconfig": "*", diff --git a/internal/next-common/src/next-common.ts b/internal/next-common/src/next-common.ts index d7737c66..6f33b16f 100644 --- a/internal/next-common/src/next-common.ts +++ b/internal/next-common/src/next-common.ts @@ -1,9 +1,10 @@ /* eslint-disable @typescript-eslint/method-signature-style -- to use a method style */ // eslint-disable-next-line unicorn/prefer-node-protocol -- to overcome tsup's limitations import type { OutgoingHttpHeaders } from 'http'; + +import type { RouteMetadata as NextRouteMetadata } from 'next/dist/export/routes/types'; import type { CacheHandler } from 'next/dist/server/lib/incremental-cache'; import type IncrementalCache from 'next/dist/server/lib/incremental-cache/file-system-cache'; -import type { RouteMetadata as NextRouteMetadata } from 'next/dist/export/routes/types'; export type { CacheHandler, CacheHandlerContext, CacheHandlerValue } from 'next/dist/server/lib/incremental-cache'; export type { diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index bc00e605..201d3891 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -9,7 +9,8 @@ }, "scripts": { "clean": "rimraf ./.turbo ./node_modules", - "lint": "eslint ." + "lint": "eslint .", + "lint:fix": "eslint --fix ." }, "dependencies": { "lru-cache": "10.1.0" diff --git a/internal/next-lru-cache/src/cache-types/cache-string-value.ts b/internal/next-lru-cache/src/cache-types/cache-string-value.ts index 91431dda..9dba6077 100644 --- a/internal/next-lru-cache/src/cache-types/cache-string-value.ts +++ b/internal/next-lru-cache/src/cache-types/cache-string-value.ts @@ -1,4 +1,5 @@ import type { LRUCache } from 'lru-cache'; + import type { LruCacheOptions } from '../create-configured-cache'; import { createConfiguredCache } from '../create-configured-cache'; diff --git a/internal/next-lru-cache/src/cache-types/next-cache-handler-value.ts b/internal/next-lru-cache/src/cache-types/next-cache-handler-value.ts index 4daac9f1..66176664 100644 --- a/internal/next-lru-cache/src/cache-types/next-cache-handler-value.ts +++ b/internal/next-lru-cache/src/cache-types/next-cache-handler-value.ts @@ -1,5 +1,6 @@ -import type { LRUCache } from 'lru-cache'; import type { CacheHandlerValue } from '@neshca/next-common'; +import type { LRUCache } from 'lru-cache'; + import type { LruCacheOptions } from '../create-configured-cache'; import { createConfiguredCache } from '../create-configured-cache'; diff --git a/package-lock.json b/package-lock.json index 9cfb81b0..307a7e38 100644 --- a/package-lock.json +++ b/package-lock.json @@ -36,7 +36,7 @@ "version": "0.0.0", "license": "MIT", "dependencies": { - "next": "14.0.5-canary.28", + "next": "14.0.5-canary.58", "react": "18.2.0", "react-dom": "18.2.0" }, @@ -44,7 +44,7 @@ "@neshca/cache-handler": "*", "@neshca/json-replacer-reviver": "*", "@neshca/tsconfig": "*", - "@next/eslint-plugin-next": "14.0.5-canary.28", + "@next/eslint-plugin-next": "14.0.5-canary.58", "@playwright/test": "1.40.1", "@types/node": "20.11.0", "@types/react": "18.2.47", @@ -59,19 +59,27 @@ "typescript": "5.3.3" } }, + "apps/cache-testing/node_modules/@types/node": { + "version": "20.11.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.0.tgz", + "integrity": "sha512-o9bjXmDNcF7GbM4CNQpmi+TutCgap/K3w1JyKgxAjqx41zp9qlIAVFi0IhCNsJcXolEqLWhbFbEeL0PvYm4pcQ==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "apps/cache-testing/node_modules/next": { - "version": "14.0.5-canary.28", - "resolved": "https://registry.npmjs.org/next/-/next-14.0.5-canary.28.tgz", - "integrity": "sha512-yOYNfSTK1Id2WGro0TGt0Q5zfEJGduISIGYeOEYWIUtSZDOqi8llx5iP/tzWUYwRfSrswgnNurDiZd8KT9XbqA==", + "version": "14.0.5-canary.58", + "resolved": "https://registry.npmjs.org/next/-/next-14.0.5-canary.58.tgz", + "integrity": "sha512-xZjkkbIDHCnzlV2M//0ehB72Wcxkw0yYsKqDr6+8VX9/BqBx8Z7mP/8d2ezF+c3lVcje6UODsmZW29IXpc5wKQ==", "dependencies": { - "@next/env": "14.0.5-canary.28", + "@next/env": "14.0.5-canary.58", "@swc/helpers": "0.5.2", "busboy": "1.6.0", "caniuse-lite": "^1.0.30001406", "graceful-fs": "^4.2.11", "postcss": "8.4.31", - "styled-jsx": "5.1.1", - "watchpack": "2.4.0" + "styled-jsx": "5.1.1" }, "bin": { "next": "dist/bin/next" @@ -80,15 +88,15 @@ "node": ">=18.17.0" }, "optionalDependencies": { - "@next/swc-darwin-arm64": "14.0.5-canary.28", - "@next/swc-darwin-x64": "14.0.5-canary.28", - "@next/swc-linux-arm64-gnu": "14.0.5-canary.28", - "@next/swc-linux-arm64-musl": "14.0.5-canary.28", - "@next/swc-linux-x64-gnu": "14.0.5-canary.28", - "@next/swc-linux-x64-musl": "14.0.5-canary.28", - "@next/swc-win32-arm64-msvc": "14.0.5-canary.28", - "@next/swc-win32-ia32-msvc": "14.0.5-canary.28", - "@next/swc-win32-x64-msvc": "14.0.5-canary.28" + "@next/swc-darwin-arm64": "14.0.5-canary.58", + "@next/swc-darwin-x64": "14.0.5-canary.58", + "@next/swc-linux-arm64-gnu": "14.0.5-canary.58", + "@next/swc-linux-arm64-musl": "14.0.5-canary.58", + "@next/swc-linux-x64-gnu": "14.0.5-canary.58", + "@next/swc-linux-x64-musl": "14.0.5-canary.58", + "@next/swc-win32-arm64-msvc": "14.0.5-canary.58", + "@next/swc-win32-ia32-msvc": "14.0.5-canary.58", + "@next/swc-win32-x64-msvc": "14.0.5-canary.58" }, "peerDependencies": { "@opentelemetry/api": "^1.1.0", @@ -133,6 +141,15 @@ "glob": "7.1.7" } }, + "docs/cache-handler-docs/node_modules/@types/node": { + "version": "20.11.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.0.tgz", + "integrity": "sha512-o9bjXmDNcF7GbM4CNQpmi+TutCgap/K3w1JyKgxAjqx41zp9qlIAVFi0IhCNsJcXolEqLWhbFbEeL0PvYm4pcQ==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "docs/cache-handler-docs/node_modules/glob": { "version": "7.1.7", "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", @@ -251,6 +268,15 @@ "typescript": "5.3.3" } }, + "internal/backend/node_modules/@types/node": { + "version": "20.11.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.0.tgz", + "integrity": "sha512-o9bjXmDNcF7GbM4CNQpmi+TutCgap/K3w1JyKgxAjqx41zp9qlIAVFi0IhCNsJcXolEqLWhbFbEeL0PvYm4pcQ==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "internal/eslint-config-neshca": { "version": "0.0.0", "license": "MIT", @@ -347,7 +373,7 @@ "version": "0.0.0", "license": "MIT", "dependencies": { - "next": "14.0.5-canary.28" + "next": "14.0.5-canary.58" }, "devDependencies": { "@neshca/tsconfig": "*", @@ -357,19 +383,27 @@ "typescript": "5.3.3" } }, + "internal/next-common/node_modules/@types/node": { + "version": "20.11.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.0.tgz", + "integrity": "sha512-o9bjXmDNcF7GbM4CNQpmi+TutCgap/K3w1JyKgxAjqx41zp9qlIAVFi0IhCNsJcXolEqLWhbFbEeL0PvYm4pcQ==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "internal/next-common/node_modules/next": { - "version": "14.0.5-canary.28", - "resolved": "https://registry.npmjs.org/next/-/next-14.0.5-canary.28.tgz", - "integrity": "sha512-yOYNfSTK1Id2WGro0TGt0Q5zfEJGduISIGYeOEYWIUtSZDOqi8llx5iP/tzWUYwRfSrswgnNurDiZd8KT9XbqA==", + "version": "14.0.5-canary.58", + "resolved": "https://registry.npmjs.org/next/-/next-14.0.5-canary.58.tgz", + "integrity": "sha512-xZjkkbIDHCnzlV2M//0ehB72Wcxkw0yYsKqDr6+8VX9/BqBx8Z7mP/8d2ezF+c3lVcje6UODsmZW29IXpc5wKQ==", "dependencies": { - "@next/env": "14.0.5-canary.28", + "@next/env": "14.0.5-canary.58", "@swc/helpers": "0.5.2", "busboy": "1.6.0", "caniuse-lite": "^1.0.30001406", "graceful-fs": "^4.2.11", "postcss": "8.4.31", - "styled-jsx": "5.1.1", - "watchpack": "2.4.0" + "styled-jsx": "5.1.1" }, "bin": { "next": "dist/bin/next" @@ -378,15 +412,15 @@ "node": ">=18.17.0" }, "optionalDependencies": { - "@next/swc-darwin-arm64": "14.0.5-canary.28", - "@next/swc-darwin-x64": "14.0.5-canary.28", - "@next/swc-linux-arm64-gnu": "14.0.5-canary.28", - "@next/swc-linux-arm64-musl": "14.0.5-canary.28", - "@next/swc-linux-x64-gnu": "14.0.5-canary.28", - "@next/swc-linux-x64-musl": "14.0.5-canary.28", - "@next/swc-win32-arm64-msvc": "14.0.5-canary.28", - "@next/swc-win32-ia32-msvc": "14.0.5-canary.28", - "@next/swc-win32-x64-msvc": "14.0.5-canary.28" + "@next/swc-darwin-arm64": "14.0.5-canary.58", + "@next/swc-darwin-x64": "14.0.5-canary.58", + "@next/swc-linux-arm64-gnu": "14.0.5-canary.58", + "@next/swc-linux-arm64-musl": "14.0.5-canary.58", + "@next/swc-linux-x64-gnu": "14.0.5-canary.58", + "@next/swc-linux-x64-musl": "14.0.5-canary.58", + "@next/swc-win32-arm64-msvc": "14.0.5-canary.58", + "@next/swc-win32-ia32-msvc": "14.0.5-canary.58", + "@next/swc-win32-x64-msvc": "14.0.5-canary.58" }, "peerDependencies": { "@opentelemetry/api": "^1.1.0", @@ -419,6 +453,15 @@ "typescript": "5.3.3" } }, + "internal/next-lru-cache/node_modules/@types/node": { + "version": "20.11.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.0.tgz", + "integrity": "sha512-o9bjXmDNcF7GbM4CNQpmi+TutCgap/K3w1JyKgxAjqx41zp9qlIAVFi0IhCNsJcXolEqLWhbFbEeL0PvYm4pcQ==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "internal/prettier-config": { "name": "@neshca/prettier-config", "version": "0.0.0", @@ -1691,13 +1734,13 @@ } }, "node_modules/@humanwhocodes/config-array": { - "version": "0.11.13", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.13.tgz", - "integrity": "sha512-JSBDMiDKSzQVngfRjOdFXgFfklaXI4K9nLF49Auh21lmBWRLIK3+xTErTWD4KU54pb6coM6ESE7Awz/FNU3zgQ==", + "version": "0.11.14", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.14.tgz", + "integrity": "sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==", "dev": true, "dependencies": { - "@humanwhocodes/object-schema": "^2.0.1", - "debug": "^4.1.1", + "@humanwhocodes/object-schema": "^2.0.2", + "debug": "^4.3.1", "minimatch": "^3.0.5" }, "engines": { @@ -1718,9 +1761,9 @@ } }, "node_modules/@humanwhocodes/object-schema": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.1.tgz", - "integrity": "sha512-dvuCeX5fC9dXgJn9t+X5atfmgQAzUOWqS1254Gh0m6i8wKd10ebXkfNKiRK+1GWi/yTvvLDHpoxLr0xxxeslWw==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.2.tgz", + "integrity": "sha512-6EwiSjwWYP7pTckG6I5eyFANjPhmPjUX9JRLUSfNPC7FX7zK9gyZAfUEaECL6ALTpGX5AjnBq3C9XmVWPitNpw==", "dev": true }, "node_modules/@isaacs/cliui": { @@ -1806,9 +1849,9 @@ "dev": true }, "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.20", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.20.tgz", - "integrity": "sha512-R8LcPeWZol2zR8mmH3JeKQ6QRCFb7XgUhV9ZlGhHLGyg4wpPiPZNQOOWhFZhxKw8u//yTbNGI42Bx/3paXEQ+Q==", + "version": "0.3.21", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.21.tgz", + "integrity": "sha512-SRfKmRe1KvYnxjEMtxEr+J4HIeMX5YBg/qhRHpxEIGjhX1rshcHlnFUE9K0GazhVKWM7B+nARSkV8LuvJdJ5/g==", "dev": true, "dependencies": { "@jridgewell/resolve-uri": "^3.1.0", @@ -1826,11 +1869,6 @@ "fs-extra": "^8.1.0" } }, - "node_modules/@manypkg/find-root/node_modules/@types/node": { - "version": "12.20.55", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", - "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" - }, "node_modules/@manypkg/find-root/node_modules/fs-extra": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", @@ -2192,14 +2230,14 @@ "link": true }, "node_modules/@next/env": { - "version": "14.0.5-canary.28", - "resolved": "https://registry.npmjs.org/@next/env/-/env-14.0.5-canary.28.tgz", - "integrity": "sha512-qDD1MypbRDWPtYEf5FcwnPQXYSmAKx5sNAnq+3nKGmBdu0GbH3GXJToFJZn6ble6dIngJklAsn/w7xo9en2gQw==" + "version": "14.0.5-canary.58", + "resolved": "https://registry.npmjs.org/@next/env/-/env-14.0.5-canary.58.tgz", + "integrity": "sha512-HivKr1b1jXNZ/NsGlRaBucZTQIkwtE52QBJZLyygsxXLMPC7ng6oOY3DkWiiLxV4T38etNKKIrKVH8DZSjdWlQ==" }, "node_modules/@next/eslint-plugin-next": { - "version": "14.0.5-canary.28", - "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.0.5-canary.28.tgz", - "integrity": "sha512-zyC2sXN6kVho1m3b1Ub12L+GfY+loXfPBCPC+5AXWQ+ckouaN5w5FtWDUHsIJYcmNo7qzkHz2vxgRHUFYtRwcA==", + "version": "14.0.5-canary.58", + "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.0.5-canary.58.tgz", + "integrity": "sha512-0eEAkc70Rr/aAmcw2Gp0hNvU9YPURPr6e9ialJFknBLWkTtQvzQ+MM8x4MA259r41FwjtRa+BzQIxpAA0nFfFw==", "dev": true, "dependencies": { "glob": "7.1.7" @@ -2226,9 +2264,9 @@ } }, "node_modules/@next/swc-darwin-arm64": { - "version": "14.0.5-canary.28", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.0.5-canary.28.tgz", - "integrity": "sha512-835xTkuQ8Y1SUip9WLEZcxfdc5cbGG8Ot0H+QtELgnPxTWBuA3U/v7jIxLYUXitFUwzmWQaWluHFtE/FKCqAtQ==", + "version": "14.0.5-canary.58", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.0.5-canary.58.tgz", + "integrity": "sha512-FDmoxGMy1v0XREXDbdYutdn4xJ6edxOf/zg4piNbqxX3mHLfQiy4UZL1cd5wHMLZuWsOvb+DeivJhI+36oLfOQ==", "cpu": [ "arm64" ], @@ -2241,9 +2279,9 @@ } }, "node_modules/@next/swc-darwin-x64": { - "version": "14.0.5-canary.28", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.0.5-canary.28.tgz", - "integrity": "sha512-VsRQfyudlPL77KkjWq4HuYBbd32pteVt8Q5BdNw6pNGAfQsOtZ5axAfOuAwRlelYHVlKjB3pxpTKlEpht1nfXg==", + "version": "14.0.5-canary.58", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.0.5-canary.58.tgz", + "integrity": "sha512-dLvi37j6hxt3n/3HChkwo2Hms5y6VRQpO29b2Rw/uH61LARS9jcdHPvbfGKb9Bssy/MD0UkOIxR+73V2OHldqw==", "cpu": [ "x64" ], @@ -2256,9 +2294,9 @@ } }, "node_modules/@next/swc-linux-arm64-gnu": { - "version": "14.0.5-canary.28", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.0.5-canary.28.tgz", - "integrity": "sha512-dIPclhG0ICnVqinsyjBQRBB7WHVLhI7M/dwSR5QKSp6q9pi86O+aXbH2wxs29pg6clFPlEy4XH4sCgJgNHTY7g==", + "version": "14.0.5-canary.58", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.0.5-canary.58.tgz", + "integrity": "sha512-XDc/TGmSlu8KkVQex+z8OJqOu9J4It7+9b56bCRMHYuYaZrm0lUUTznw4DMsJExc+iwaW6XCTVeFYM4z6Ssj1w==", "cpu": [ "arm64" ], @@ -2271,9 +2309,9 @@ } }, "node_modules/@next/swc-linux-arm64-musl": { - "version": "14.0.5-canary.28", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.0.5-canary.28.tgz", - "integrity": "sha512-WRNWalDdnKk8GxeQ3loRfm5UJNZzVhAmXeG8XfsLTwJrDiO9V10IH4cxKuTID7Na7zpv/D8zZFs4xnLUl2KynQ==", + "version": "14.0.5-canary.58", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.0.5-canary.58.tgz", + "integrity": "sha512-zoPz3ry3mwn970CKFizLfGweimOit0YV2J3yMb43OwPgi2PHuHBaUswL6Akv1t8P1Ny5wccy1A7rkdg+ypqa1Q==", "cpu": [ "arm64" ], @@ -2286,9 +2324,9 @@ } }, "node_modules/@next/swc-linux-x64-gnu": { - "version": "14.0.5-canary.28", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.0.5-canary.28.tgz", - "integrity": "sha512-KYMz7jJ8rhq6sfbUtWXR5QdngIOTcB+Pu2s/gWOODlrlCv/ifMV+Jr/WWkfgwpxv235515oEqYpXjIArwI/j9w==", + "version": "14.0.5-canary.58", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.0.5-canary.58.tgz", + "integrity": "sha512-PF+lgu05TsS8bYiok6vW07r+46XPkTvJWBC44buoOP7dzA7h8EFjav/rnxtTW0nOtiEDtx7Z6bXhte2N8kIlXw==", "cpu": [ "x64" ], @@ -2301,9 +2339,9 @@ } }, "node_modules/@next/swc-linux-x64-musl": { - "version": "14.0.5-canary.28", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.0.5-canary.28.tgz", - "integrity": "sha512-GBqfGCgBuy9SwDvLH+a6X9DRb7l0UMw1F2k1Bm/KXr8yxxfxMmzYVBCTXTB1hzvBvRviLTqPgedaQfqEvCKrnA==", + "version": "14.0.5-canary.58", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.0.5-canary.58.tgz", + "integrity": "sha512-/vwqLbJlu/SfpntfLyeCPbUV9sUeSZjFqrjrmgQUoIJ2iKDcHh3USQe40Kj5yRR3V3y2mAoTQh4gnpv+OnB8mw==", "cpu": [ "x64" ], @@ -2316,9 +2354,9 @@ } }, "node_modules/@next/swc-win32-arm64-msvc": { - "version": "14.0.5-canary.28", - "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.0.5-canary.28.tgz", - "integrity": "sha512-wdFExeiSuov0502SQSxmMpns2R8OkY37IL9AnQnJ7/rOSwFY95G919dCUHxfulozPgbJqYej78aomKmk+ovxsA==", + "version": "14.0.5-canary.58", + "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.0.5-canary.58.tgz", + "integrity": "sha512-X8ptdLqjhPObaJuOGMy5SKY8vsXgJ9MRKMYmH5eGdq2bMYy1/uuH3nSigtmayAb6cvVNeT24FsI9g0P4KMWQTA==", "cpu": [ "arm64" ], @@ -2331,9 +2369,9 @@ } }, "node_modules/@next/swc-win32-ia32-msvc": { - "version": "14.0.5-canary.28", - "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.0.5-canary.28.tgz", - "integrity": "sha512-n7vDtTbEYXkYCo/j8vsymKMygt5mMqd5YY3xC7RWDhQsuRjrA7a78GEIuVvViAHe7ckrpXjlbdb5gtjWV9LBnQ==", + "version": "14.0.5-canary.58", + "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.0.5-canary.58.tgz", + "integrity": "sha512-iSjSss2j574aHzKw4dO46V8yPARVVYej0P9QH46gKGdcnY97XyW4MjzxLIbhlPR4GV4qXshdB1MoejLIaI1uoA==", "cpu": [ "ia32" ], @@ -2346,9 +2384,9 @@ } }, "node_modules/@next/swc-win32-x64-msvc": { - "version": "14.0.5-canary.28", - "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.0.5-canary.28.tgz", - "integrity": "sha512-5QQpjuoYbUI609HfgMqA3vn9ffxozMc2nRa05SdQR5+V05AVWocziwNUf3bN7db0VYvcbV3o7COrpreizcINGg==", + "version": "14.0.5-canary.58", + "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.0.5-canary.58.tgz", + "integrity": "sha512-AFl0lgpmLdqHkrBsc2vrZx6mE6zLvKJWonUDS17q5akYsnQ2o9tPrtzFvhU1SYtmt5XD49SbfArPBRmTseFq0A==", "cpu": [ "x64" ], @@ -2788,9 +2826,9 @@ } }, "node_modules/@rollup/rollup-android-arm-eabi": { - "version": "4.9.4", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.9.4.tgz", - "integrity": "sha512-ub/SN3yWqIv5CWiAZPHVS1DloyZsJbtXmX4HxUTIpS0BHm9pW5iYBo2mIZi+hE3AeiTzHz33blwSnhdUo+9NpA==", + "version": "4.9.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.9.5.tgz", + "integrity": "sha512-idWaG8xeSRCfRq9KpRysDHJ/rEHBEXcHuJ82XY0yYFIWnLMjZv9vF/7DOq8djQ2n3Lk6+3qfSH8AqlmHlmi1MA==", "cpu": [ "arm" ], @@ -2801,9 +2839,9 @@ ] }, "node_modules/@rollup/rollup-android-arm64": { - "version": "4.9.4", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.9.4.tgz", - "integrity": "sha512-ehcBrOR5XTl0W0t2WxfTyHCR/3Cq2jfb+I4W+Ch8Y9b5G+vbAecVv0Fx/J1QKktOrgUYsIKxWAKgIpvw56IFNA==", + "version": "4.9.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.9.5.tgz", + "integrity": "sha512-f14d7uhAMtsCGjAYwZGv6TwuS3IFaM4ZnGMUn3aCBgkcHAYErhV1Ad97WzBvS2o0aaDv4mVz+syiN0ElMyfBPg==", "cpu": [ "arm64" ], @@ -2814,9 +2852,9 @@ ] }, "node_modules/@rollup/rollup-darwin-arm64": { - "version": "4.9.4", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.9.4.tgz", - "integrity": "sha512-1fzh1lWExwSTWy8vJPnNbNM02WZDS8AW3McEOb7wW+nPChLKf3WG2aG7fhaUmfX5FKw9zhsF5+MBwArGyNM7NA==", + "version": "4.9.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.9.5.tgz", + "integrity": "sha512-ndoXeLx455FffL68OIUrVr89Xu1WLzAG4n65R8roDlCoYiQcGGg6MALvs2Ap9zs7AHg8mpHtMpwC8jBBjZrT/w==", "cpu": [ "arm64" ], @@ -2827,9 +2865,9 @@ ] }, "node_modules/@rollup/rollup-darwin-x64": { - "version": "4.9.4", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.9.4.tgz", - "integrity": "sha512-Gc6cukkF38RcYQ6uPdiXi70JB0f29CwcQ7+r4QpfNpQFVHXRd0DfWFidoGxjSx1DwOETM97JPz1RXL5ISSB0pA==", + "version": "4.9.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.9.5.tgz", + "integrity": "sha512-UmElV1OY2m/1KEEqTlIjieKfVwRg0Zwg4PLgNf0s3glAHXBN99KLpw5A5lrSYCa1Kp63czTpVll2MAqbZYIHoA==", "cpu": [ "x64" ], @@ -2840,9 +2878,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm-gnueabihf": { - "version": "4.9.4", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.9.4.tgz", - "integrity": "sha512-g21RTeFzoTl8GxosHbnQZ0/JkuFIB13C3T7Y0HtKzOXmoHhewLbVTFBQZu+z5m9STH6FZ7L/oPgU4Nm5ErN2fw==", + "version": "4.9.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.9.5.tgz", + "integrity": "sha512-Q0LcU61v92tQB6ae+udZvOyZ0wfpGojtAKrrpAaIqmJ7+psq4cMIhT/9lfV6UQIpeItnq/2QDROhNLo00lOD1g==", "cpu": [ "arm" ], @@ -2853,9 +2891,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-gnu": { - "version": "4.9.4", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.9.4.tgz", - "integrity": "sha512-TVYVWD/SYwWzGGnbfTkrNpdE4HON46orgMNHCivlXmlsSGQOx/OHHYiQcMIOx38/GWgwr/po2LBn7wypkWw/Mg==", + "version": "4.9.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.9.5.tgz", + "integrity": "sha512-dkRscpM+RrR2Ee3eOQmRWFjmV/payHEOrjyq1VZegRUa5OrZJ2MAxBNs05bZuY0YCtpqETDy1Ix4i/hRqX98cA==", "cpu": [ "arm64" ], @@ -2866,9 +2904,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-musl": { - "version": "4.9.4", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.9.4.tgz", - "integrity": "sha512-XcKvuendwizYYhFxpvQ3xVpzje2HHImzg33wL9zvxtj77HvPStbSGI9czrdbfrf8DGMcNNReH9pVZv8qejAQ5A==", + "version": "4.9.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.9.5.tgz", + "integrity": "sha512-QaKFVOzzST2xzY4MAmiDmURagWLFh+zZtttuEnuNn19AiZ0T3fhPyjPPGwLNdiDT82ZE91hnfJsUiDwF9DClIQ==", "cpu": [ "arm64" ], @@ -2879,9 +2917,9 @@ ] }, "node_modules/@rollup/rollup-linux-riscv64-gnu": { - "version": "4.9.4", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.9.4.tgz", - "integrity": "sha512-LFHS/8Q+I9YA0yVETyjonMJ3UA+DczeBd/MqNEzsGSTdNvSJa1OJZcSH8GiXLvcizgp9AlHs2walqRcqzjOi3A==", + "version": "4.9.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.9.5.tgz", + "integrity": "sha512-HeGqmRJuyVg6/X6MpE2ur7GbymBPS8Np0S/vQFHDmocfORT+Zt76qu+69NUoxXzGqVP1pzaY6QIi0FJWLC3OPA==", "cpu": [ "riscv64" ], @@ -2892,9 +2930,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-gnu": { - "version": "4.9.4", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.9.4.tgz", - "integrity": "sha512-dIYgo+j1+yfy81i0YVU5KnQrIJZE8ERomx17ReU4GREjGtDW4X+nvkBak2xAUpyqLs4eleDSj3RrV72fQos7zw==", + "version": "4.9.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.9.5.tgz", + "integrity": "sha512-Dq1bqBdLaZ1Gb/l2e5/+o3B18+8TI9ANlA1SkejZqDgdU/jK/ThYaMPMJpVMMXy2uRHvGKbkz9vheVGdq3cJfA==", "cpu": [ "x64" ], @@ -2905,9 +2943,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-musl": { - "version": "4.9.4", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.9.4.tgz", - "integrity": "sha512-RoaYxjdHQ5TPjaPrLsfKqR3pakMr3JGqZ+jZM0zP2IkDtsGa4CqYaWSfQmZVgFUCgLrTnzX+cnHS3nfl+kB6ZQ==", + "version": "4.9.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.9.5.tgz", + "integrity": "sha512-ezyFUOwldYpj7AbkwyW9AJ203peub81CaAIVvckdkyH8EvhEIoKzaMFJj0G4qYJ5sw3BpqhFrsCc30t54HV8vg==", "cpu": [ "x64" ], @@ -2918,9 +2956,9 @@ ] }, "node_modules/@rollup/rollup-win32-arm64-msvc": { - "version": "4.9.4", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.9.4.tgz", - "integrity": "sha512-T8Q3XHV+Jjf5e49B4EAaLKV74BbX7/qYBRQ8Wop/+TyyU0k+vSjiLVSHNWdVd1goMjZcbhDmYZUYW5RFqkBNHQ==", + "version": "4.9.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.9.5.tgz", + "integrity": "sha512-aHSsMnUw+0UETB0Hlv7B/ZHOGY5bQdwMKJSzGfDfvyhnpmVxLMGnQPGNE9wgqkLUs3+gbG1Qx02S2LLfJ5GaRQ==", "cpu": [ "arm64" ], @@ -2931,9 +2969,9 @@ ] }, "node_modules/@rollup/rollup-win32-ia32-msvc": { - "version": "4.9.4", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.9.4.tgz", - "integrity": "sha512-z+JQ7JirDUHAsMecVydnBPWLwJjbppU+7LZjffGf+Jvrxq+dVjIE7By163Sc9DKc3ADSU50qPVw0KonBS+a+HQ==", + "version": "4.9.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.9.5.tgz", + "integrity": "sha512-AiqiLkb9KSf7Lj/o1U3SEP9Zn+5NuVKgFdRIZkvd4N0+bYrTOovVd0+LmYCPQGbocT4kvFyK+LXCDiXPBF3fyA==", "cpu": [ "ia32" ], @@ -2944,9 +2982,9 @@ ] }, "node_modules/@rollup/rollup-win32-x64-msvc": { - "version": "4.9.4", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.9.4.tgz", - "integrity": "sha512-LfdGXCV9rdEify1oxlN9eamvDSjv9md9ZVMAbNHA87xqIfFCxImxan9qZ8+Un54iK2nnqPlbnSi4R54ONtbWBw==", + "version": "4.9.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.9.5.tgz", + "integrity": "sha512-1q+mykKE3Vot1kaFJIDoUFv5TuW+QQVaf2FmTT9krg86pQrGStOSJJ0Zil7CFagyxDuouTepzt5Y5TVzyajOdQ==", "cpu": [ "x64" ], @@ -3123,12 +3161,9 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "20.11.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.0.tgz", - "integrity": "sha512-o9bjXmDNcF7GbM4CNQpmi+TutCgap/K3w1JyKgxAjqx41zp9qlIAVFi0IhCNsJcXolEqLWhbFbEeL0PvYm4pcQ==", - "dependencies": { - "undici-types": "~5.26.4" - } + "version": "12.20.55", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", + "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" }, "node_modules/@types/node-fetch": { "version": "2.6.10", @@ -3185,16 +3220,16 @@ "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "6.18.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.18.1.tgz", - "integrity": "sha512-nISDRYnnIpk7VCFrGcu1rnZfM1Dh9LRHnfgdkjcbi/l7g16VYRri3TjXi9Ir4lOZSw5N/gnV/3H7jIPQ8Q4daA==", + "version": "6.19.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.19.0.tgz", + "integrity": "sha512-DUCUkQNklCQYnrBSSikjVChdc84/vMPDQSgJTHBZ64G9bA9w0Crc0rd2diujKbTdp6w2J47qkeHQLoi0rpLCdg==", "dev": true, "dependencies": { "@eslint-community/regexpp": "^4.5.1", - "@typescript-eslint/scope-manager": "6.18.1", - "@typescript-eslint/type-utils": "6.18.1", - "@typescript-eslint/utils": "6.18.1", - "@typescript-eslint/visitor-keys": "6.18.1", + "@typescript-eslint/scope-manager": "6.19.0", + "@typescript-eslint/type-utils": "6.19.0", + "@typescript-eslint/utils": "6.19.0", + "@typescript-eslint/visitor-keys": "6.19.0", "debug": "^4.3.4", "graphemer": "^1.4.0", "ignore": "^5.2.4", @@ -3220,15 +3255,15 @@ } }, "node_modules/@typescript-eslint/parser": { - "version": "6.18.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.18.1.tgz", - "integrity": "sha512-zct/MdJnVaRRNy9e84XnVtRv9Vf91/qqe+hZJtKanjojud4wAVy/7lXxJmMyX6X6J+xc6c//YEWvpeif8cAhWA==", + "version": "6.19.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.19.0.tgz", + "integrity": "sha512-1DyBLG5SH7PYCd00QlroiW60YJ4rWMuUGa/JBV0iZuqi4l4IK3twKPq5ZkEebmGqRjXWVgsUzfd3+nZveewgow==", "dev": true, "dependencies": { - "@typescript-eslint/scope-manager": "6.18.1", - "@typescript-eslint/types": "6.18.1", - "@typescript-eslint/typescript-estree": "6.18.1", - "@typescript-eslint/visitor-keys": "6.18.1", + "@typescript-eslint/scope-manager": "6.19.0", + "@typescript-eslint/types": "6.19.0", + "@typescript-eslint/typescript-estree": "6.19.0", + "@typescript-eslint/visitor-keys": "6.19.0", "debug": "^4.3.4" }, "engines": { @@ -3248,13 +3283,13 @@ } }, "node_modules/@typescript-eslint/scope-manager": { - "version": "6.18.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.18.1.tgz", - "integrity": "sha512-BgdBwXPFmZzaZUuw6wKiHKIovms97a7eTImjkXCZE04TGHysG+0hDQPmygyvgtkoB/aOQwSM/nWv3LzrOIQOBw==", + "version": "6.19.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.19.0.tgz", + "integrity": "sha512-dO1XMhV2ehBI6QN8Ufi7I10wmUovmLU0Oru3n5LVlM2JuzB4M+dVphCPLkVpKvGij2j/pHBWuJ9piuXx+BhzxQ==", "dev": true, "dependencies": { - "@typescript-eslint/types": "6.18.1", - "@typescript-eslint/visitor-keys": "6.18.1" + "@typescript-eslint/types": "6.19.0", + "@typescript-eslint/visitor-keys": "6.19.0" }, "engines": { "node": "^16.0.0 || >=18.0.0" @@ -3265,13 +3300,13 @@ } }, "node_modules/@typescript-eslint/type-utils": { - "version": "6.18.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.18.1.tgz", - "integrity": "sha512-wyOSKhuzHeU/5pcRDP2G2Ndci+4g653V43gXTpt4nbyoIOAASkGDA9JIAgbQCdCkcr1MvpSYWzxTz0olCn8+/Q==", + "version": "6.19.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.19.0.tgz", + "integrity": "sha512-mcvS6WSWbjiSxKCwBcXtOM5pRkPQ6kcDds/juxcy/727IQr3xMEcwr/YLHW2A2+Fp5ql6khjbKBzOyjuPqGi/w==", "dev": true, "dependencies": { - "@typescript-eslint/typescript-estree": "6.18.1", - "@typescript-eslint/utils": "6.18.1", + "@typescript-eslint/typescript-estree": "6.19.0", + "@typescript-eslint/utils": "6.19.0", "debug": "^4.3.4", "ts-api-utils": "^1.0.1" }, @@ -3292,9 +3327,9 @@ } }, "node_modules/@typescript-eslint/types": { - "version": "6.18.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.18.1.tgz", - "integrity": "sha512-4TuMAe+tc5oA7wwfqMtB0Y5OrREPF1GeJBAjqwgZh1lEMH5PJQgWgHGfYufVB51LtjD+peZylmeyxUXPfENLCw==", + "version": "6.19.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.19.0.tgz", + "integrity": "sha512-lFviGV/vYhOy3m8BJ/nAKoAyNhInTdXpftonhWle66XHAtT1ouBlkjL496b5H5hb8dWXHwtypTqgtb/DEa+j5A==", "dev": true, "engines": { "node": "^16.0.0 || >=18.0.0" @@ -3305,13 +3340,13 @@ } }, "node_modules/@typescript-eslint/typescript-estree": { - "version": "6.18.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.18.1.tgz", - "integrity": "sha512-fv9B94UAhywPRhUeeV/v+3SBDvcPiLxRZJw/xZeeGgRLQZ6rLMG+8krrJUyIf6s1ecWTzlsbp0rlw7n9sjufHA==", + "version": "6.19.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.19.0.tgz", + "integrity": "sha512-o/zefXIbbLBZ8YJ51NlkSAt2BamrK6XOmuxSR3hynMIzzyMY33KuJ9vuMdFSXW+H0tVvdF9qBPTHA91HDb4BIQ==", "dev": true, "dependencies": { - "@typescript-eslint/types": "6.18.1", - "@typescript-eslint/visitor-keys": "6.18.1", + "@typescript-eslint/types": "6.19.0", + "@typescript-eslint/visitor-keys": "6.19.0", "debug": "^4.3.4", "globby": "^11.1.0", "is-glob": "^4.0.3", @@ -3357,17 +3392,17 @@ } }, "node_modules/@typescript-eslint/utils": { - "version": "6.18.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.18.1.tgz", - "integrity": "sha512-zZmTuVZvD1wpoceHvoQpOiewmWu3uP9FuTWo8vqpy2ffsmfCE8mklRPi+vmnIYAIk9t/4kOThri2QCDgor+OpQ==", + "version": "6.19.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.19.0.tgz", + "integrity": "sha512-QR41YXySiuN++/dC9UArYOg4X86OAYP83OWTewpVx5ct1IZhjjgTLocj7QNxGhWoTqknsgpl7L+hGygCO+sdYw==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.4.0", "@types/json-schema": "^7.0.12", "@types/semver": "^7.5.0", - "@typescript-eslint/scope-manager": "6.18.1", - "@typescript-eslint/types": "6.18.1", - "@typescript-eslint/typescript-estree": "6.18.1", + "@typescript-eslint/scope-manager": "6.19.0", + "@typescript-eslint/types": "6.19.0", + "@typescript-eslint/typescript-estree": "6.19.0", "semver": "^7.5.4" }, "engines": { @@ -3382,12 +3417,12 @@ } }, "node_modules/@typescript-eslint/visitor-keys": { - "version": "6.18.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.18.1.tgz", - "integrity": "sha512-/kvt0C5lRqGoCfsbmm7/CwMqoSkY3zzHLIjdhHZQW3VFrnz7ATecOHR7nb7V+xn4286MBxfnQfQhAmCI0u+bJA==", + "version": "6.19.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.19.0.tgz", + "integrity": "sha512-hZaUCORLgubBvtGpp1JEFEazcuEdfxta9j4iUwdSAr7mEsYYAp3EAUyCZk3VEEqGj6W+AV4uWyrDGtrlawAsgQ==", "dev": true, "dependencies": { - "@typescript-eslint/types": "6.18.1", + "@typescript-eslint/types": "6.19.0", "eslint-visitor-keys": "^3.4.1" }, "engines": { @@ -5480,15 +5515,15 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.626", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.626.tgz", - "integrity": "sha512-f7/be56VjRRQk+Ric6PmIrEtPcIqsn3tElyAu9Sh6egha2VLJ82qwkcOdcnT06W+Pb6RUulV1ckzrGbKzVcTHg==", + "version": "1.4.630", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.630.tgz", + "integrity": "sha512-osHqhtjojpCsACVnuD11xO5g9xaCyw7Qqn/C2KParkMv42i8jrJJgx3g7mkHfpxwhy9MnOJr8+pKOdZ7qzgizg==", "dev": true }, "node_modules/elkjs": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/elkjs/-/elkjs-0.8.2.tgz", - "integrity": "sha512-L6uRgvZTH+4OF5NE/MBbzQx/WYpru1xCBE9respNj6qznEewGUIfhzmm7horWWxbNO2M0WckQypGctR8lH79xQ==" + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/elkjs/-/elkjs-0.9.1.tgz", + "integrity": "sha512-JWKDyqAdltuUcyxaECtYG6H4sqysXSLeoXuGUBfRNESMTkj+w+qdb0jya8Z/WI0jVd03WQtCGhS6FOFtlhD5FQ==" }, "node_modules/emitter-listener": { "version": "1.1.2", @@ -6013,9 +6048,9 @@ } }, "node_modules/eslint-plugin-jest": { - "version": "27.6.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-jest/-/eslint-plugin-jest-27.6.2.tgz", - "integrity": "sha512-CI1AlKrsNhYFoP48VU8BVWOi7+qHTq4bRxyUlGjeU8SfFt8abjXhjOuDzUoMp68DoXIx17KpNpIkMrl4s4ZW0g==", + "version": "27.6.3", + "resolved": "https://registry.npmjs.org/eslint-plugin-jest/-/eslint-plugin-jest-27.6.3.tgz", + "integrity": "sha512-+YsJFVH6R+tOiO3gCJon5oqn4KWc+mDq2leudk8mrp8RFubLOo9CVyi3cib4L7XMpxExmkmBZQTPDYVBzgpgOA==", "dev": true, "dependencies": { "@typescript-eslint/utils": "^5.10.0" @@ -7267,9 +7302,9 @@ "integrity": "sha512-Rwix9pBtC1Nuy5wysTmKy+UjbDJpIfg8eHjw0rjZ1mX4GNLz1Bmd16uDpI3Gk1i70Fgcs8Csg2lPm8HULFg9DQ==" }, "node_modules/follow-redirects": { - "version": "1.15.4", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.4.tgz", - "integrity": "sha512-Cr4D/5wlrb0z9dgERpUL3LrmPKVDsETIJhaCMeDfuFYcqa5bldGV6wBsAN6X/vxlXQtFBMrXdXxdL8CbDTGniw==", + "version": "1.15.5", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.5.tgz", + "integrity": "sha512-vSFWUON1B+yAw1VN4xMfxgn5fTUiaOzAJCKBwIIgT/+7CuGy9+r+5gITvP62j3RmaD5Ph65UaERdOSRGUzZtgw==", "dev": true, "funding": [ { @@ -9683,9 +9718,9 @@ } }, "node_modules/mdast-util-to-hast": { - "version": "13.0.2", - "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-13.0.2.tgz", - "integrity": "sha512-U5I+500EOOw9e3ZrclN3Is3fRpw8c19SMyNZlZ2IS+7vLsNzb2Om11VpIVOR+/0137GhZsFEF6YiKD5+0Hr2Og==", + "version": "13.1.0", + "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-13.1.0.tgz", + "integrity": "sha512-/e2l/6+OdGp/FB+ctrJ9Avz71AN/GRH3oi/3KAx/kMnoUsD6q0woXlDT8lLEeViVKE7oZxE7RXzvO3T8kF2/sA==", "dependencies": { "@types/hast": "^3.0.0", "@types/mdast": "^4.0.0", @@ -9694,7 +9729,8 @@ "micromark-util-sanitize-uri": "^2.0.0", "trim-lines": "^3.0.0", "unist-util-position": "^5.0.0", - "unist-util-visit": "^5.0.0" + "unist-util-visit": "^5.0.0", + "vfile": "^6.0.0" }, "funding": { "type": "opencollective", @@ -9818,6 +9854,32 @@ "url": "https://opencollective.com/unified" } }, + "node_modules/mdast-util-to-hast/node_modules/unist-util-stringify-position": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-4.0.0.tgz", + "integrity": "sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==", + "dependencies": { + "@types/unist": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-to-hast/node_modules/vfile": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.1.tgz", + "integrity": "sha512-1bYqc7pt6NIADBJ98UiG0Bn/CHIVOoZ/IyEkqIruLg0mE1BKzkOXY2D6CSqQIcKqgadppE5lrxgWXJmXd7zZJw==", + "dependencies": { + "@types/unist": "^3.0.0", + "unist-util-stringify-position": "^4.0.0", + "vfile-message": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, "node_modules/mdast-util-to-markdown": { "version": "1.5.0", "resolved": "https://registry.npmjs.org/mdast-util-to-markdown/-/mdast-util-to-markdown-1.5.0.tgz", @@ -9926,9 +9988,9 @@ } }, "node_modules/mermaid": { - "version": "10.6.1", - "resolved": "https://registry.npmjs.org/mermaid/-/mermaid-10.6.1.tgz", - "integrity": "sha512-Hky0/RpOw/1il9X8AvzOEChfJtVvmXm+y7JML5C//ePYMy0/9jCEmW1E1g86x9oDfW9+iVEdTV/i+M6KWRNs4A==", + "version": "10.7.0", + "resolved": "https://registry.npmjs.org/mermaid/-/mermaid-10.7.0.tgz", + "integrity": "sha512-PsvGupPCkN1vemAAjScyw4pw34p4/0dZkSrqvAB26hUvJulOWGIwt35FZWmT9wPIi4r0QLa5X0PB4YLIGn0/YQ==", "dependencies": { "@braintree/sanitize-url": "^6.0.1", "@types/d3-scale": "^4.0.3", @@ -9941,7 +10003,7 @@ "dagre-d3-es": "7.0.10", "dayjs": "^1.11.7", "dompurify": "^3.0.5", - "elkjs": "^0.8.2", + "elkjs": "^0.9.0", "khroma": "^2.0.0", "lodash-es": "^4.17.21", "mdast-util-from-markdown": "^1.3.0", @@ -11423,9 +11485,9 @@ } }, "node_modules/openai": { - "version": "4.24.2", - "resolved": "https://registry.npmjs.org/openai/-/openai-4.24.2.tgz", - "integrity": "sha512-Np5zFPAYsBRmsfgPS8cMM25r1wVO5NCTdmeoYDNEUhJn/rw6jNXU0CFSFwhbWsjIkYhdv31pPIzQ0xChHCvltQ==", + "version": "4.24.7", + "resolved": "https://registry.npmjs.org/openai/-/openai-4.24.7.tgz", + "integrity": "sha512-JUesECWPtsDHO0TlZGb6q73hnAmXUdzj9NrwgZeL4lqlRt/kR1sWrXoy8LocxN/6uOtitywvcJqe0O1PLkG45g==", "peer": true, "dependencies": { "@types/node": "^18.11.18", @@ -11443,9 +11505,9 @@ } }, "node_modules/openai/node_modules/@types/node": { - "version": "18.19.6", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.6.tgz", - "integrity": "sha512-X36s5CXMrrJOs2lQCdDF68apW4Rfx9ixYMawlepwmE4Anezv/AV2LSpKD1Ub8DAc+urp5bk0BGZ6NtmBitfnsg==", + "version": "18.19.7", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.7.tgz", + "integrity": "sha512-IGRJfoNX10N/PfrReRZ1br/7SQ+2vF/tK3KXNwzXz82D32z5dMQEoOlFew18nLSN+vMNcLY4GrKfzwi/yWI8/w==", "peer": true, "dependencies": { "undici-types": "~5.26.4" @@ -13069,9 +13131,9 @@ "integrity": "sha512-IXgzBWvWQwE6PrDI05OvmXUIruQTcoMDzRsOd5CDvHCVLcLHMTSYvOK5Cm46kWqlV3yAbuSpBZdJ5oP5OUoStg==" }, "node_modules/rollup": { - "version": "4.9.4", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.9.4.tgz", - "integrity": "sha512-2ztU7pY/lrQyXSCnnoU4ICjT/tCG9cdH3/G25ERqE3Lst6vl2BCM5hL2Nw+sslAvAf+ccKsAq1SkKQALyqhR7g==", + "version": "4.9.5", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.9.5.tgz", + "integrity": "sha512-E4vQW0H/mbNMw2yLSqJyjtkHY9dslf/p0zuT1xehNRqUTBOFMqEjguDvqhXr7N7r/4ttb2jr4T41d3dncmIgbQ==", "dev": true, "dependencies": { "@types/estree": "1.0.5" @@ -13084,19 +13146,19 @@ "npm": ">=8.0.0" }, "optionalDependencies": { - "@rollup/rollup-android-arm-eabi": "4.9.4", - "@rollup/rollup-android-arm64": "4.9.4", - "@rollup/rollup-darwin-arm64": "4.9.4", - "@rollup/rollup-darwin-x64": "4.9.4", - "@rollup/rollup-linux-arm-gnueabihf": "4.9.4", - "@rollup/rollup-linux-arm64-gnu": "4.9.4", - "@rollup/rollup-linux-arm64-musl": "4.9.4", - "@rollup/rollup-linux-riscv64-gnu": "4.9.4", - "@rollup/rollup-linux-x64-gnu": "4.9.4", - "@rollup/rollup-linux-x64-musl": "4.9.4", - "@rollup/rollup-win32-arm64-msvc": "4.9.4", - "@rollup/rollup-win32-ia32-msvc": "4.9.4", - "@rollup/rollup-win32-x64-msvc": "4.9.4", + "@rollup/rollup-android-arm-eabi": "4.9.5", + "@rollup/rollup-android-arm64": "4.9.5", + "@rollup/rollup-darwin-arm64": "4.9.5", + "@rollup/rollup-darwin-x64": "4.9.5", + "@rollup/rollup-linux-arm-gnueabihf": "4.9.5", + "@rollup/rollup-linux-arm64-gnu": "4.9.5", + "@rollup/rollup-linux-arm64-musl": "4.9.5", + "@rollup/rollup-linux-riscv64-gnu": "4.9.5", + "@rollup/rollup-linux-x64-gnu": "4.9.5", + "@rollup/rollup-linux-x64-musl": "4.9.5", + "@rollup/rollup-win32-arm64-msvc": "4.9.5", + "@rollup/rollup-win32-ia32-msvc": "4.9.5", + "@rollup/rollup-win32-x64-msvc": "4.9.5", "fsevents": "~2.3.2" } }, @@ -13159,12 +13221,12 @@ } }, "node_modules/safe-array-concat": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.0.1.tgz", - "integrity": "sha512-6XbUAseYE2KtOuGueyeobCySj9L4+66Tn6KQMOPQJrAJEowYKW/YR/MGJZl7FdydUdaFu4LYyDZjxf4/Nmo23Q==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.0.tgz", + "integrity": "sha512-ZdQ0Jeb9Ofti4hbt5lX3T2JcAamT9hfzYU1MNB+z/jaEbB6wfFfPIR/zEORmZqobkCCJhSjodobH6WHNmJ97dg==", "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.1", + "call-bind": "^1.0.5", + "get-intrinsic": "^1.2.2", "has-symbols": "^1.0.3", "isarray": "^2.0.5" }, @@ -13195,9 +13257,9 @@ ] }, "node_modules/safe-regex-test": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.1.tgz", - "integrity": "sha512-Y5NejJTTliTyY4H7sipGqY+RX5P87i3F7c4Rcepy72nq+mNLhIsD0W4c7kEmduMDQCSqtPsXPlSTsFhh2LQv+g==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.2.tgz", + "integrity": "sha512-83S9w6eFq12BBIJYvjMux6/dkirb8+4zJRA9cxNBVb7Wq5fJBW+Xze48WqR8pxua7bDuAaaAxtVVd4Idjp1dBQ==", "dependencies": { "call-bind": "^1.0.5", "get-intrinsic": "^1.2.2", @@ -13306,14 +13368,15 @@ "integrity": "sha512-RVnVQxTXuerk653XfuliOxBP81Sf0+qfQE73LIYKcyMYHG94AuH0kgrQpRDuTZnSmjpysHmzxJXKNfa6PjFhyQ==" }, "node_modules/set-function-length": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.1.1.tgz", - "integrity": "sha512-VoaqjbBJKiWtg4yRcKBQ7g7wnGnLV3M8oLvVWwOk2PdYY6PEFegR1vezXR0tw6fZGF9csVakIRjrJiy2veSBFQ==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.0.tgz", + "integrity": "sha512-4DBHDoyHlM1IRPGYcoxexgh67y4ueR53FKV1yyxwFMY7aCqcN/38M1+SwZ/qJQ8iLv7+ck385ot4CcisOAPT9w==", "dependencies": { "define-data-property": "^1.1.1", - "get-intrinsic": "^1.2.1", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.2", "gopd": "^1.0.1", - "has-property-descriptors": "^1.0.0" + "has-property-descriptors": "^1.0.1" }, "engines": { "node": ">= 0.4" @@ -15993,7 +16056,7 @@ }, "packages/cache-handler": { "name": "@neshca/cache-handler", - "version": "0.6.4", + "version": "0.6.5", "license": "MIT", "dependencies": { "@neshca/json-replacer-reviver": "*", @@ -16015,6 +16078,15 @@ "redis": ">=4.6" } }, + "packages/cache-handler/node_modules/@types/node": { + "version": "20.11.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.0.tgz", + "integrity": "sha512-o9bjXmDNcF7GbM4CNQpmi+TutCgap/K3w1JyKgxAjqx41zp9qlIAVFi0IhCNsJcXolEqLWhbFbEeL0PvYm4pcQ==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "packages/diffscribe": { "version": "0.2.1", "license": "MIT", @@ -16034,6 +16106,15 @@ "openai": "^4.12.3" } }, + "packages/diffscribe/node_modules/@types/node": { + "version": "20.11.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.0.tgz", + "integrity": "sha512-o9bjXmDNcF7GbM4CNQpmi+TutCgap/K3w1JyKgxAjqx41zp9qlIAVFi0IhCNsJcXolEqLWhbFbEeL0PvYm4pcQ==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "packages/json-replacer-reviver": { "name": "@neshca/json-replacer-reviver", "version": "1.1.0", @@ -16048,6 +16129,15 @@ "typescript": "5.3.3" } }, + "packages/json-replacer-reviver/node_modules/@types/node": { + "version": "20.11.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.0.tgz", + "integrity": "sha512-o9bjXmDNcF7GbM4CNQpmi+TutCgap/K3w1JyKgxAjqx41zp9qlIAVFi0IhCNsJcXolEqLWhbFbEeL0PvYm4pcQ==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "packages/server": { "name": "@neshca/server", "version": "0.6.0", @@ -16070,6 +16160,15 @@ "tsx": "4.7.0", "typescript": "5.3.3" } + }, + "packages/server/node_modules/@types/node": { + "version": "20.11.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.0.tgz", + "integrity": "sha512-o9bjXmDNcF7GbM4CNQpmi+TutCgap/K3w1JyKgxAjqx41zp9qlIAVFi0IhCNsJcXolEqLWhbFbEeL0PvYm4pcQ==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } } } } diff --git a/package.json b/package.json index 9d0e6685..8483bbfb 100644 --- a/package.json +++ b/package.json @@ -22,6 +22,7 @@ "format:check": "prettier --check .", "format:fix": "prettier --write .", "lint": "FORCE_COLOR=1 turbo run lint && npm run format:check", + "lint:fix": "FORCE_COLOR=1 turbo run lint:fix && npm run format:fix", "release": "npm run build && npm run lint && changeset publish", "start": "FORCE_COLOR=1 turbo run start --log-prefix=none --filter=!./apps/* --filter=!./docs/*", "start:app": "FORCE_COLOR=1 turbo run start --log-prefix=none --filter=cache-testing", diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 9a92746a..4a473ee5 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -54,6 +54,7 @@ "clean": "rimraf ./dist ./.turbo ./node_modules", "dev": "tsup --watch", "lint": "eslint .", + "lint:fix": "eslint --fix .", "test": "node --test --import tsx/esm src/**/*.test.ts", "test:watch": "node --watch --test --import tsx/esm src/**/*.test.ts" }, diff --git a/packages/cache-handler/src/cache-handler.ts b/packages/cache-handler/src/cache-handler.ts index 623b0fb7..676e15ed 100644 --- a/packages/cache-handler/src/cache-handler.ts +++ b/packages/cache-handler/src/cache-handler.ts @@ -1,5 +1,6 @@ -import path from 'node:path'; import fs, { promises as fsPromises } from 'node:fs'; +import path from 'node:path'; + import type { CacheHandler, CacheHandlerValue, @@ -14,6 +15,7 @@ import type { IncrementalCacheValue, TagsManifest, } from '@neshca/next-common'; + import { isTagsManifest } from './helpers/is-tags-manifest'; const RSC_PREFETCH_SUFFIX = '.prefetch.rsc'; diff --git a/packages/cache-handler/src/handlers/local-lru.ts b/packages/cache-handler/src/handlers/local-lru.ts index c4cae037..633756d2 100644 --- a/packages/cache-handler/src/handlers/local-lru.ts +++ b/packages/cache-handler/src/handlers/local-lru.ts @@ -1,9 +1,10 @@ /* eslint-disable import/no-default-export -- use default here */ import type { LruCacheOptions } from '@neshca/next-lru-cache/next-cache-handler-value'; import { createCache } from '@neshca/next-lru-cache/next-cache-handler-value'; + import type { Cache, CacheHandlerValue } from '../cache-handler'; -import { calculateEvictionDelay } from '../helpers/calculate-eviction-delay'; import type { UseTtlOptions } from '../common-types'; +import { calculateEvictionDelay } from '../helpers/calculate-eviction-delay'; export type LruCacheHandlerOptions = LruCacheOptions & UseTtlOptions; diff --git a/packages/cache-handler/src/handlers/redis-stack.ts b/packages/cache-handler/src/handlers/redis-stack.ts index 1490c0bf..6c352e54 100644 --- a/packages/cache-handler/src/handlers/redis-stack.ts +++ b/packages/cache-handler/src/handlers/redis-stack.ts @@ -1,5 +1,7 @@ /* eslint-disable import/no-default-export -- use default here */ + import type { RedisClientType } from 'redis'; + import type { RevalidatedTags, CacheHandlerValue, Cache } from '../cache-handler'; import type { RedisJSON, UseTtlOptions } from '../common-types'; import { calculateEvictionDelay } from '../helpers/calculate-eviction-delay'; diff --git a/packages/cache-handler/src/handlers/redis-strings.ts b/packages/cache-handler/src/handlers/redis-strings.ts index e1932479..044da332 100644 --- a/packages/cache-handler/src/handlers/redis-strings.ts +++ b/packages/cache-handler/src/handlers/redis-strings.ts @@ -1,9 +1,11 @@ /* eslint-disable import/no-default-export -- use default here */ import { replaceJsonWithBase64, reviveFromBase64Representation } from '@neshca/json-replacer-reviver'; import type { RedisClientType } from 'redis'; + import type { Cache, CacheHandlerValue, RevalidatedTags } from '../cache-handler'; import { calculateEvictionDelay } from '../helpers/calculate-eviction-delay'; import { getTimeoutRedisCommandOptions } from '../helpers/get-timeout-redis-command-options'; + import type { RedisCacheHandlerOptions } from './redis-stack'; /** diff --git a/packages/cache-handler/src/handlers/server.ts b/packages/cache-handler/src/handlers/server.ts index 4b434be1..d0f8941e 100644 --- a/packages/cache-handler/src/handlers/server.ts +++ b/packages/cache-handler/src/handlers/server.ts @@ -1,5 +1,6 @@ /* eslint-disable import/no-default-export -- use default here */ import { reviveFromBase64Representation, replaceJsonWithBase64 } from '@neshca/json-replacer-reviver'; + import type { CacheHandlerValue, Cache, RevalidatedTags } from '../cache-handler'; export type ServerCacheHandlerOptions = { diff --git a/packages/cache-handler/src/helpers/calculate-eviction-delay.test.ts b/packages/cache-handler/src/helpers/calculate-eviction-delay.test.ts index 42c0d227..770b30a8 100644 --- a/packages/cache-handler/src/helpers/calculate-eviction-delay.test.ts +++ b/packages/cache-handler/src/helpers/calculate-eviction-delay.test.ts @@ -1,5 +1,6 @@ -import { test } from 'node:test'; import assert from 'node:assert'; +import { test } from 'node:test'; + import { calculateEvictionDelay } from './calculate-eviction-delay'; await test('should return undefined if originalTtl is not provided', () => { diff --git a/packages/cache-handler/src/helpers/promise-with-timeout.test.ts b/packages/cache-handler/src/helpers/promise-with-timeout.test.ts index 16fa6f05..f1a455a7 100644 --- a/packages/cache-handler/src/helpers/promise-with-timeout.test.ts +++ b/packages/cache-handler/src/helpers/promise-with-timeout.test.ts @@ -1,6 +1,7 @@ +import assert from 'node:assert'; import { test } from 'node:test'; import Timers from 'node:timers/promises'; -import assert from 'node:assert'; + import { promiseWithTimeout } from './promise-with-timeout'; async function simulateOperation(duration: number): Promise { diff --git a/packages/cache-handler/src/helpers/promise-with-timeout.ts b/packages/cache-handler/src/helpers/promise-with-timeout.ts index e1102506..fbca433e 100644 --- a/packages/cache-handler/src/helpers/promise-with-timeout.ts +++ b/packages/cache-handler/src/helpers/promise-with-timeout.ts @@ -28,7 +28,7 @@ export function promiseWithTimeout(operation: Promise, timeoutMs?: number) }) .catch((error) => { clearTimeout(timeoutId); - reject(error); + reject(error as Error); }); }); } diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index 352414b3..7d740d86 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -22,7 +22,8 @@ "build": "tsup", "clean": "rimraf ./dist ./.turbo ./node_modules", "dev": "tsup --watch", - "lint": "eslint ." + "lint": "eslint .", + "lint:fix": "eslint --fix ." }, "devDependencies": { "@neshca/tsconfig": "*", diff --git a/packages/diffscribe/src/diffscribe.ts b/packages/diffscribe/src/diffscribe.ts index c0e47778..e3034667 100644 --- a/packages/diffscribe/src/diffscribe.ts +++ b/packages/diffscribe/src/diffscribe.ts @@ -2,6 +2,7 @@ import { execFileSync } from 'node:child_process'; import { createInterface } from 'node:readline/promises'; + import { OpenAI } from 'openai'; import 'dotenv/config'; diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 1d4743e2..991d9f93 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -24,6 +24,7 @@ "clean": "rimraf ./dist ./.turbo ./node_modules", "dev": "tsup --watch", "lint": "eslint .", + "lint:fix": "eslint --fix .", "test": "node --test --import tsx/esm **/*.test.ts", "test:watch": "node --watch --test --import tsx/esm **/*.test.ts" }, diff --git a/packages/json-replacer-reviver/src/json-replacer-reviver.test.ts b/packages/json-replacer-reviver/src/json-replacer-reviver.test.ts index 12870118..ca58cee4 100644 --- a/packages/json-replacer-reviver/src/json-replacer-reviver.test.ts +++ b/packages/json-replacer-reviver/src/json-replacer-reviver.test.ts @@ -1,5 +1,6 @@ -import { describe, it } from 'node:test'; import assert from 'node:assert'; +import { describe, it } from 'node:test'; + import { isBufferJsonRepresentation, replaceJsonWithBase64, diff --git a/packages/server/package.json b/packages/server/package.json index 8fdf6c47..d01bb7dc 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -23,6 +23,7 @@ "clean": "rimraf ./dist ./.turbo ./node_modules", "dev": "node --watch --import tsx/esm ./src/server.ts", "lint": "eslint .", + "lint:fix": "eslint --fix .", "start": "node --import tsx/esm ./src/server.ts" }, "dependencies": { diff --git a/packages/server/src/server.ts b/packages/server/src/server.ts index ca451c83..862f7ddc 100644 --- a/packages/server/src/server.ts +++ b/packages/server/src/server.ts @@ -1,8 +1,8 @@ #!/usr/bin/env node -import { pino } from 'pino'; -import Fastify from 'fastify'; import { createCache } from '@neshca/next-lru-cache/cache-string-value'; +import Fastify from 'fastify'; +import { pino } from 'pino'; const logger = pino({ transport: { diff --git a/turbo.json b/turbo.json index 7e468ed5..52d96768 100644 --- a/turbo.json +++ b/turbo.json @@ -19,7 +19,12 @@ "dependsOn": ["^build:docs"], "outputs": [".next/**", "!.next/cache/**", "out/**"] }, - "lint": {}, + "lint": { + "cache": false + }, + "lint:fix": { + "cache": false + }, "test": {}, "e2e": { "inputs": [".next/**", "!.next/cache/**", "tests/**"], From c946723299932145da429e2aaf8b196317e89b4c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 15 Jan 2024 23:47:20 +0300 Subject: [PATCH 056/458] Bump the definitely-typed group with 2 updates (#260) Bumps the definitely-typed group with 2 updates: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) and [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react). Updates `@types/node` from 20.11.0 to 20.11.2 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) Updates `@types/react` from 18.2.47 to 18.2.48 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react) --- updated-dependencies: - dependency-name: "@types/node" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed - dependency-name: "@types/react" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 4 +- docs/cache-handler-docs/package.json | 4 +- internal/backend/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 123 ++++---------------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 10 files changed, 36 insertions(+), 109 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index cac5b2e7..d6edf587 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -26,8 +26,8 @@ "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.0.5-canary.58", "@playwright/test": "1.40.1", - "@types/node": "20.11.0", - "@types/react": "18.2.47", + "@types/node": "20.11.2", + "@types/react": "18.2.48", "@types/react-dom": "18.2.18", "dotenv-cli": "7.3.0", "eslint-config-neshca": "*", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 77813684..a1c13ee1 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -19,8 +19,8 @@ "devDependencies": { "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.0.4", - "@types/node": "20.11.0", - "@types/react": "18.2.47", + "@types/node": "20.11.2", + "@types/react": "18.2.48", "@types/react-dom": "18.2.18", "eslint-config-neshca": "*", "typescript": "5.3.3" diff --git a/internal/backend/package.json b/internal/backend/package.json index e6a25b65..31fa1a84 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -17,7 +17,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.11.0", + "@types/node": "20.11.2", "eslint-config-neshca": "*", "pino-pretty": "10.3.1", "rimraf": "5.0.5", diff --git a/internal/next-common/package.json b/internal/next-common/package.json index 21a60159..06288a49 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -17,7 +17,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.11.0", + "@types/node": "20.11.2", "eslint-config-neshca": "*", "rimraf": "5.0.5", "typescript": "5.3.3" diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index 201d3891..afc523c7 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -18,7 +18,7 @@ "devDependencies": { "@neshca/next-common": "*", "@neshca/tsconfig": "*", - "@types/node": "20.11.0", + "@types/node": "20.11.2", "eslint-config-neshca": "*", "rimraf": "5.0.5", "typescript": "5.3.3" diff --git a/package-lock.json b/package-lock.json index 307a7e38..f7861f4f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -46,8 +46,8 @@ "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.0.5-canary.58", "@playwright/test": "1.40.1", - "@types/node": "20.11.0", - "@types/react": "18.2.47", + "@types/node": "20.11.2", + "@types/react": "18.2.48", "@types/react-dom": "18.2.18", "dotenv-cli": "7.3.0", "eslint-config-neshca": "*", @@ -59,15 +59,6 @@ "typescript": "5.3.3" } }, - "apps/cache-testing/node_modules/@types/node": { - "version": "20.11.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.0.tgz", - "integrity": "sha512-o9bjXmDNcF7GbM4CNQpmi+TutCgap/K3w1JyKgxAjqx41zp9qlIAVFi0IhCNsJcXolEqLWhbFbEeL0PvYm4pcQ==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "apps/cache-testing/node_modules/next": { "version": "14.0.5-canary.58", "resolved": "https://registry.npmjs.org/next/-/next-14.0.5-canary.58.tgz", @@ -125,8 +116,8 @@ "devDependencies": { "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.0.4", - "@types/node": "20.11.0", - "@types/react": "18.2.47", + "@types/node": "20.11.2", + "@types/react": "18.2.48", "@types/react-dom": "18.2.18", "eslint-config-neshca": "*", "typescript": "5.3.3" @@ -141,15 +132,6 @@ "glob": "7.1.7" } }, - "docs/cache-handler-docs/node_modules/@types/node": { - "version": "20.11.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.0.tgz", - "integrity": "sha512-o9bjXmDNcF7GbM4CNQpmi+TutCgap/K3w1JyKgxAjqx41zp9qlIAVFi0IhCNsJcXolEqLWhbFbEeL0PvYm4pcQ==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "docs/cache-handler-docs/node_modules/glob": { "version": "7.1.7", "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", @@ -260,7 +242,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.11.0", + "@types/node": "20.11.2", "eslint-config-neshca": "*", "pino-pretty": "10.3.1", "rimraf": "5.0.5", @@ -268,15 +250,6 @@ "typescript": "5.3.3" } }, - "internal/backend/node_modules/@types/node": { - "version": "20.11.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.0.tgz", - "integrity": "sha512-o9bjXmDNcF7GbM4CNQpmi+TutCgap/K3w1JyKgxAjqx41zp9qlIAVFi0IhCNsJcXolEqLWhbFbEeL0PvYm4pcQ==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "internal/eslint-config-neshca": { "version": "0.0.0", "license": "MIT", @@ -377,21 +350,12 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.11.0", + "@types/node": "20.11.2", "eslint-config-neshca": "*", "rimraf": "5.0.5", "typescript": "5.3.3" } }, - "internal/next-common/node_modules/@types/node": { - "version": "20.11.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.0.tgz", - "integrity": "sha512-o9bjXmDNcF7GbM4CNQpmi+TutCgap/K3w1JyKgxAjqx41zp9qlIAVFi0IhCNsJcXolEqLWhbFbEeL0PvYm4pcQ==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "internal/next-common/node_modules/next": { "version": "14.0.5-canary.58", "resolved": "https://registry.npmjs.org/next/-/next-14.0.5-canary.58.tgz", @@ -447,21 +411,12 @@ "devDependencies": { "@neshca/next-common": "*", "@neshca/tsconfig": "*", - "@types/node": "20.11.0", + "@types/node": "20.11.2", "eslint-config-neshca": "*", "rimraf": "5.0.5", "typescript": "5.3.3" } }, - "internal/next-lru-cache/node_modules/@types/node": { - "version": "20.11.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.0.tgz", - "integrity": "sha512-o9bjXmDNcF7GbM4CNQpmi+TutCgap/K3w1JyKgxAjqx41zp9qlIAVFi0IhCNsJcXolEqLWhbFbEeL0PvYm4pcQ==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "internal/prettier-config": { "name": "@neshca/prettier-config", "version": "0.0.0", @@ -1869,6 +1824,11 @@ "fs-extra": "^8.1.0" } }, + "node_modules/@manypkg/find-root/node_modules/@types/node": { + "version": "12.20.55", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", + "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" + }, "node_modules/@manypkg/find-root/node_modules/fs-extra": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", @@ -3161,9 +3121,12 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "12.20.55", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", - "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" + "version": "20.11.2", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.2.tgz", + "integrity": "sha512-cZShBaVa+UO1LjWWBPmWRR4+/eY/JR/UIEcDlVsw3okjWEu+rB7/mH6X3B/L+qJVHDLjk9QW/y2upp9wp1yDXA==", + "dependencies": { + "undici-types": "~5.26.4" + } }, "node_modules/@types/node-fetch": { "version": "2.6.10", @@ -3186,9 +3149,9 @@ "integrity": "sha512-ga8y9v9uyeiLdpKddhxYQkxNDrfvuPrlFb0N1qnZZByvcElJaXthF1UhvCh9TLWJBEHeNtdnbysW7Y6Uq8CVng==" }, "node_modules/@types/react": { - "version": "18.2.47", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.47.tgz", - "integrity": "sha512-xquNkkOirwyCgoClNk85BjP+aqnIS+ckAJ8i37gAbDs14jfW/J23f2GItAf33oiUPQnqNMALiFeoM9Y5mbjpVQ==", + "version": "18.2.48", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.48.tgz", + "integrity": "sha512-qboRCl6Ie70DQQG9hhNREz81jqC1cs9EVNcjQ1AU+jH6NFfSAhVVbrrY/+nSF+Bsk4AOwm9Qa61InvMCyV+H3w==", "dependencies": { "@types/prop-types": "*", "@types/scheduler": "*", @@ -16066,7 +16029,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@neshca/tsconfig": "*", - "@types/node": "20.11.0", + "@types/node": "20.11.2", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", @@ -16078,15 +16041,6 @@ "redis": ">=4.6" } }, - "packages/cache-handler/node_modules/@types/node": { - "version": "20.11.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.0.tgz", - "integrity": "sha512-o9bjXmDNcF7GbM4CNQpmi+TutCgap/K3w1JyKgxAjqx41zp9qlIAVFi0IhCNsJcXolEqLWhbFbEeL0PvYm4pcQ==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "packages/diffscribe": { "version": "0.2.1", "license": "MIT", @@ -16095,7 +16049,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.11.0", + "@types/node": "20.11.2", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", @@ -16106,22 +16060,13 @@ "openai": "^4.12.3" } }, - "packages/diffscribe/node_modules/@types/node": { - "version": "20.11.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.0.tgz", - "integrity": "sha512-o9bjXmDNcF7GbM4CNQpmi+TutCgap/K3w1JyKgxAjqx41zp9qlIAVFi0IhCNsJcXolEqLWhbFbEeL0PvYm4pcQ==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "packages/json-replacer-reviver": { "name": "@neshca/json-replacer-reviver", "version": "1.1.0", "license": "MIT", "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.11.0", + "@types/node": "20.11.2", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", @@ -16129,15 +16074,6 @@ "typescript": "5.3.3" } }, - "packages/json-replacer-reviver/node_modules/@types/node": { - "version": "20.11.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.0.tgz", - "integrity": "sha512-o9bjXmDNcF7GbM4CNQpmi+TutCgap/K3w1JyKgxAjqx41zp9qlIAVFi0IhCNsJcXolEqLWhbFbEeL0PvYm4pcQ==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "packages/server": { "name": "@neshca/server", "version": "0.6.0", @@ -16153,22 +16089,13 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@neshca/tsconfig": "*", - "@types/node": "20.11.0", + "@types/node": "20.11.2", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", "tsx": "4.7.0", "typescript": "5.3.3" } - }, - "packages/server/node_modules/@types/node": { - "version": "20.11.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.0.tgz", - "integrity": "sha512-o9bjXmDNcF7GbM4CNQpmi+TutCgap/K3w1JyKgxAjqx41zp9qlIAVFi0IhCNsJcXolEqLWhbFbEeL0PvYm4pcQ==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } } } } diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 4a473ee5..71cb5b15 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -66,7 +66,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@neshca/tsconfig": "*", - "@types/node": "20.11.0", + "@types/node": "20.11.2", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index 7d740d86..f0472678 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -27,7 +27,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.11.0", + "@types/node": "20.11.2", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 991d9f93..23bf798d 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -30,7 +30,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.11.0", + "@types/node": "20.11.2", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", diff --git a/packages/server/package.json b/packages/server/package.json index d01bb7dc..7fc1bdba 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -34,7 +34,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@neshca/tsconfig": "*", - "@types/node": "20.11.0", + "@types/node": "20.11.2", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", From 62f5e09923483133a2dd813a182d9328fedd510e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 16 Jan 2024 00:54:32 +0300 Subject: [PATCH 057/458] Bump prettier from 3.2.1 to 3.2.2 (#261) Bumps [prettier](https://github.com/prettier/prettier) from 3.2.1 to 3.2.2. - [Release notes](https://github.com/prettier/prettier/releases) - [Changelog](https://github.com/prettier/prettier/blob/main/CHANGELOG.md) - [Commits](https://github.com/prettier/prettier/compare/3.2.1...3.2.2) --- updated-dependencies: - dependency-name: prettier dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 8 ++++---- package.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package-lock.json b/package-lock.json index f7861f4f..d9aac839 100644 --- a/package-lock.json +++ b/package-lock.json @@ -24,7 +24,7 @@ "diffscribe": "*", "eslint": "8.56.0", "glob": "10.3.10", - "prettier": "3.2.1", + "prettier": "3.2.2", "turbo": "1.10.16" }, "engines": { @@ -12276,9 +12276,9 @@ } }, "node_modules/prettier": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.2.1.tgz", - "integrity": "sha512-qSUWshj1IobVbKc226Gw2pync27t0Kf0EdufZa9j7uBSJay1CC+B3K5lAAZoqgX3ASiKuWsk6OmzKRetXNObWg==", + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.2.2.tgz", + "integrity": "sha512-HTByuKZzw7utPiDO523Tt2pLtEyK7OibUD9suEJQrPUCYQqrHr74GGX6VidMrovbf/I50mPqr8j/II6oBAuc5A==", "dev": true, "bin": { "prettier": "bin/prettier.cjs" diff --git a/package.json b/package.json index 8483bbfb..0bb90aa7 100644 --- a/package.json +++ b/package.json @@ -40,7 +40,7 @@ "diffscribe": "*", "eslint": "8.56.0", "glob": "10.3.10", - "prettier": "3.2.1", + "prettier": "3.2.2", "turbo": "1.10.16" }, "engines": { From 232a3a27270b637cd35d564d65e44b45aa44c3e3 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 17 Jan 2024 00:03:55 +0300 Subject: [PATCH 058/458] Bump the definitely-typed group with 1 update (#262) Bumps the definitely-typed group with 1 update: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node). Updates `@types/node` from 20.11.2 to 20.11.4 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) --- updated-dependencies: - dependency-name: "@types/node" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- internal/backend/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 24 ++++++++++----------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 10 files changed, 21 insertions(+), 21 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index d6edf587..282da66a 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -26,7 +26,7 @@ "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.0.5-canary.58", "@playwright/test": "1.40.1", - "@types/node": "20.11.2", + "@types/node": "20.11.4", "@types/react": "18.2.48", "@types/react-dom": "18.2.18", "dotenv-cli": "7.3.0", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index a1c13ee1..38054a73 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -19,7 +19,7 @@ "devDependencies": { "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.0.4", - "@types/node": "20.11.2", + "@types/node": "20.11.4", "@types/react": "18.2.48", "@types/react-dom": "18.2.18", "eslint-config-neshca": "*", diff --git a/internal/backend/package.json b/internal/backend/package.json index 31fa1a84..afe2aa70 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -17,7 +17,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.11.2", + "@types/node": "20.11.4", "eslint-config-neshca": "*", "pino-pretty": "10.3.1", "rimraf": "5.0.5", diff --git a/internal/next-common/package.json b/internal/next-common/package.json index 06288a49..6f7ababd 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -17,7 +17,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.11.2", + "@types/node": "20.11.4", "eslint-config-neshca": "*", "rimraf": "5.0.5", "typescript": "5.3.3" diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index afc523c7..1f4d3253 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -18,7 +18,7 @@ "devDependencies": { "@neshca/next-common": "*", "@neshca/tsconfig": "*", - "@types/node": "20.11.2", + "@types/node": "20.11.4", "eslint-config-neshca": "*", "rimraf": "5.0.5", "typescript": "5.3.3" diff --git a/package-lock.json b/package-lock.json index d9aac839..9d39c740 100644 --- a/package-lock.json +++ b/package-lock.json @@ -46,7 +46,7 @@ "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.0.5-canary.58", "@playwright/test": "1.40.1", - "@types/node": "20.11.2", + "@types/node": "20.11.4", "@types/react": "18.2.48", "@types/react-dom": "18.2.18", "dotenv-cli": "7.3.0", @@ -116,7 +116,7 @@ "devDependencies": { "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.0.4", - "@types/node": "20.11.2", + "@types/node": "20.11.4", "@types/react": "18.2.48", "@types/react-dom": "18.2.18", "eslint-config-neshca": "*", @@ -242,7 +242,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.11.2", + "@types/node": "20.11.4", "eslint-config-neshca": "*", "pino-pretty": "10.3.1", "rimraf": "5.0.5", @@ -350,7 +350,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.11.2", + "@types/node": "20.11.4", "eslint-config-neshca": "*", "rimraf": "5.0.5", "typescript": "5.3.3" @@ -411,7 +411,7 @@ "devDependencies": { "@neshca/next-common": "*", "@neshca/tsconfig": "*", - "@types/node": "20.11.2", + "@types/node": "20.11.4", "eslint-config-neshca": "*", "rimraf": "5.0.5", "typescript": "5.3.3" @@ -3121,9 +3121,9 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "20.11.2", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.2.tgz", - "integrity": "sha512-cZShBaVa+UO1LjWWBPmWRR4+/eY/JR/UIEcDlVsw3okjWEu+rB7/mH6X3B/L+qJVHDLjk9QW/y2upp9wp1yDXA==", + "version": "20.11.4", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.4.tgz", + "integrity": "sha512-6I0fMH8Aoy2lOejL3s4LhyIYX34DPwY8bl5xlNjBvUEk8OHrcuzsFt+Ied4LvJihbtXPM+8zUqdydfIti86v9g==", "dependencies": { "undici-types": "~5.26.4" } @@ -16029,7 +16029,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@neshca/tsconfig": "*", - "@types/node": "20.11.2", + "@types/node": "20.11.4", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", @@ -16049,7 +16049,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.11.2", + "@types/node": "20.11.4", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", @@ -16066,7 +16066,7 @@ "license": "MIT", "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.11.2", + "@types/node": "20.11.4", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", @@ -16089,7 +16089,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@neshca/tsconfig": "*", - "@types/node": "20.11.2", + "@types/node": "20.11.4", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 71cb5b15..f156162a 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -66,7 +66,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@neshca/tsconfig": "*", - "@types/node": "20.11.2", + "@types/node": "20.11.4", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index f0472678..f31cfae2 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -27,7 +27,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.11.2", + "@types/node": "20.11.4", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 23bf798d..c6c734f8 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -30,7 +30,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.11.2", + "@types/node": "20.11.4", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", diff --git a/packages/server/package.json b/packages/server/package.json index 7fc1bdba..4dc00605 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -34,7 +34,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@neshca/tsconfig": "*", - "@types/node": "20.11.2", + "@types/node": "20.11.4", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", From ff606a53be34e1c0a9ab5103e3cfc75cbffd5c3a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 17 Jan 2024 00:17:10 +0300 Subject: [PATCH 059/458] Bump @playwright/test from 1.40.1 to 1.41.0 (#263) Bumps [@playwright/test](https://github.com/microsoft/playwright) from 1.40.1 to 1.41.0. - [Release notes](https://github.com/microsoft/playwright/releases) - [Commits](https://github.com/microsoft/playwright/compare/v1.40.1...v1.41.0) --- updated-dependencies: - dependency-name: "@playwright/test" dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- package-lock.json | 24 ++++++++++++------------ 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 282da66a..9b93508e 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -25,7 +25,7 @@ "@neshca/json-replacer-reviver": "*", "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.0.5-canary.58", - "@playwright/test": "1.40.1", + "@playwright/test": "1.41.0", "@types/node": "20.11.4", "@types/react": "18.2.48", "@types/react-dom": "18.2.18", diff --git a/package-lock.json b/package-lock.json index 9d39c740..3d3fc10f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -45,7 +45,7 @@ "@neshca/json-replacer-reviver": "*", "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.0.5-canary.58", - "@playwright/test": "1.40.1", + "@playwright/test": "1.41.0", "@types/node": "20.11.4", "@types/react": "18.2.48", "@types/react-dom": "18.2.18", @@ -2527,12 +2527,12 @@ } }, "node_modules/@playwright/test": { - "version": "1.40.1", - "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.40.1.tgz", - "integrity": "sha512-EaaawMTOeEItCRvfmkI9v6rBkF1svM8wjl/YPRrg2N2Wmp+4qJYkWtJsbew1szfKKDm6fPLy4YAanBhIlf9dWw==", + "version": "1.41.0", + "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.41.0.tgz", + "integrity": "sha512-Grvzj841THwtpBOrfiHOeYTJQxDRnKofMSzCiV8XeyLWu3o89qftQ4BCKfkziJhSUQRd0utKhrddtIsiraIwmw==", "dev": true, "dependencies": { - "playwright": "1.40.1" + "playwright": "1.41.0" }, "bin": { "playwright": "cli.js" @@ -11867,12 +11867,12 @@ } }, "node_modules/playwright": { - "version": "1.40.1", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.40.1.tgz", - "integrity": "sha512-2eHI7IioIpQ0bS1Ovg/HszsN/XKNwEG1kbzSDDmADpclKc7CyqkHw7Mg2JCz/bbCxg25QUPcjksoMW7JcIFQmw==", + "version": "1.41.0", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.41.0.tgz", + "integrity": "sha512-XOsfl5ZtAik/T9oek4V0jAypNlaCNzuKOwVhqhgYT3os6kH34PzbRb74F0VWcLYa5WFdnmxl7qyAHBXvPv7lqQ==", "dev": true, "dependencies": { - "playwright-core": "1.40.1" + "playwright-core": "1.41.0" }, "bin": { "playwright": "cli.js" @@ -11885,9 +11885,9 @@ } }, "node_modules/playwright-core": { - "version": "1.40.1", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.40.1.tgz", - "integrity": "sha512-+hkOycxPiV534c4HhpfX6yrlawqVUzITRKwHAmYfmsVreltEl6fAZJ3DPfLMOODw0H3s1Itd6MDCWmP1fl/QvQ==", + "version": "1.41.0", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.41.0.tgz", + "integrity": "sha512-UGKASUhXmvqm2Lxa1fNr8sFwAtqjpgBRr9jQ7XBI8Rn5uFiEowGUGwrruUQsVPIom4bk7Lt+oLGpXobnXzrBIw==", "dev": true, "bin": { "playwright-core": "cli.js" From bd5d6289d94f542fbe4d16f521d1f3833385c7a6 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 18 Jan 2024 02:20:44 +0300 Subject: [PATCH 060/458] Bump the definitely-typed group with 1 update (#265) Bumps the definitely-typed group with 1 update: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node). Updates `@types/node` from 20.11.4 to 20.11.5 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) --- updated-dependencies: - dependency-name: "@types/node" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- internal/backend/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 24 ++++++++++----------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 10 files changed, 21 insertions(+), 21 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 9b93508e..9b027e9f 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -26,7 +26,7 @@ "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.0.5-canary.58", "@playwright/test": "1.41.0", - "@types/node": "20.11.4", + "@types/node": "20.11.5", "@types/react": "18.2.48", "@types/react-dom": "18.2.18", "dotenv-cli": "7.3.0", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 38054a73..2fab25d0 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -19,7 +19,7 @@ "devDependencies": { "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.0.4", - "@types/node": "20.11.4", + "@types/node": "20.11.5", "@types/react": "18.2.48", "@types/react-dom": "18.2.18", "eslint-config-neshca": "*", diff --git a/internal/backend/package.json b/internal/backend/package.json index afe2aa70..de6c117c 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -17,7 +17,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.11.4", + "@types/node": "20.11.5", "eslint-config-neshca": "*", "pino-pretty": "10.3.1", "rimraf": "5.0.5", diff --git a/internal/next-common/package.json b/internal/next-common/package.json index 6f7ababd..f7961bf8 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -17,7 +17,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.11.4", + "@types/node": "20.11.5", "eslint-config-neshca": "*", "rimraf": "5.0.5", "typescript": "5.3.3" diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index 1f4d3253..34e11b7d 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -18,7 +18,7 @@ "devDependencies": { "@neshca/next-common": "*", "@neshca/tsconfig": "*", - "@types/node": "20.11.4", + "@types/node": "20.11.5", "eslint-config-neshca": "*", "rimraf": "5.0.5", "typescript": "5.3.3" diff --git a/package-lock.json b/package-lock.json index 3d3fc10f..4cc38a26 100644 --- a/package-lock.json +++ b/package-lock.json @@ -46,7 +46,7 @@ "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.0.5-canary.58", "@playwright/test": "1.41.0", - "@types/node": "20.11.4", + "@types/node": "20.11.5", "@types/react": "18.2.48", "@types/react-dom": "18.2.18", "dotenv-cli": "7.3.0", @@ -116,7 +116,7 @@ "devDependencies": { "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.0.4", - "@types/node": "20.11.4", + "@types/node": "20.11.5", "@types/react": "18.2.48", "@types/react-dom": "18.2.18", "eslint-config-neshca": "*", @@ -242,7 +242,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.11.4", + "@types/node": "20.11.5", "eslint-config-neshca": "*", "pino-pretty": "10.3.1", "rimraf": "5.0.5", @@ -350,7 +350,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.11.4", + "@types/node": "20.11.5", "eslint-config-neshca": "*", "rimraf": "5.0.5", "typescript": "5.3.3" @@ -411,7 +411,7 @@ "devDependencies": { "@neshca/next-common": "*", "@neshca/tsconfig": "*", - "@types/node": "20.11.4", + "@types/node": "20.11.5", "eslint-config-neshca": "*", "rimraf": "5.0.5", "typescript": "5.3.3" @@ -3121,9 +3121,9 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "20.11.4", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.4.tgz", - "integrity": "sha512-6I0fMH8Aoy2lOejL3s4LhyIYX34DPwY8bl5xlNjBvUEk8OHrcuzsFt+Ied4LvJihbtXPM+8zUqdydfIti86v9g==", + "version": "20.11.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.5.tgz", + "integrity": "sha512-g557vgQjUUfN76MZAN/dt1z3dzcUsimuysco0KeluHgrPdJXkP/XdAURgyO2W9fZWHRtRBiVKzKn8vyOAwlG+w==", "dependencies": { "undici-types": "~5.26.4" } @@ -16029,7 +16029,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@neshca/tsconfig": "*", - "@types/node": "20.11.4", + "@types/node": "20.11.5", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", @@ -16049,7 +16049,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.11.4", + "@types/node": "20.11.5", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", @@ -16066,7 +16066,7 @@ "license": "MIT", "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.11.4", + "@types/node": "20.11.5", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", @@ -16089,7 +16089,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@neshca/tsconfig": "*", - "@types/node": "20.11.4", + "@types/node": "20.11.5", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index f156162a..f0681981 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -66,7 +66,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@neshca/tsconfig": "*", - "@types/node": "20.11.4", + "@types/node": "20.11.5", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index f31cfae2..4380e3ff 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -27,7 +27,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.11.4", + "@types/node": "20.11.5", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index c6c734f8..9824f544 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -30,7 +30,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.11.4", + "@types/node": "20.11.5", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", diff --git a/packages/server/package.json b/packages/server/package.json index 4dc00605..21d7352a 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -34,7 +34,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@neshca/tsconfig": "*", - "@types/node": "20.11.4", + "@types/node": "20.11.5", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", From 1b6def4f558191d579ca325dc21c5eddb08b6b01 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 18 Jan 2024 03:13:25 +0300 Subject: [PATCH 061/458] Bump prettier from 3.2.2 to 3.2.4 (#266) * Bump prettier from 3.2.2 to 3.2.4 Bumps [prettier](https://github.com/prettier/prettier) from 3.2.2 to 3.2.4. - [Release notes](https://github.com/prettier/prettier/releases) - [Changelog](https://github.com/prettier/prettier/blob/main/CHANGELOG.md) - [Commits](https://github.com/prettier/prettier/compare/3.2.2...3.2.4) --- updated-dependencies: - dependency-name: prettier dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] * Fix `tsconfig` format --------- Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Arseny <132773930+better-salmon@users.noreply.github.com> --- apps/cache-testing/tsconfig.json | 6 +++--- docs/cache-handler-docs/tsconfig.json | 6 +++--- internal/backend/tsconfig.json | 2 +- internal/next-common/tsconfig.json | 2 +- internal/next-lru-cache/tsconfig.json | 2 +- package-lock.json | 8 ++++---- package.json | 2 +- packages/cache-handler/tsconfig.json | 8 ++++---- packages/diffscribe/tsconfig.json | 2 +- packages/json-replacer-reviver/tsconfig.json | 2 +- packages/server/tsconfig.json | 2 +- tsconfig.json | 2 +- 12 files changed, 22 insertions(+), 22 deletions(-) diff --git a/apps/cache-testing/tsconfig.json b/apps/cache-testing/tsconfig.json index 3bdaa7b9..ced5f8bf 100644 --- a/apps/cache-testing/tsconfig.json +++ b/apps/cache-testing/tsconfig.json @@ -2,10 +2,10 @@ "extends": "@neshca/tsconfig/nextjs.json", "compilerOptions": { "paths": { - "cache-testing/*": ["./src/*"] + "cache-testing/*": ["./src/*"], }, - "strictNullChecks": true + "strictNullChecks": true, }, "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx", ".next/types/**/*.ts", "run-app-instances.ts"], - "exclude": ["node_modules"] + "exclude": ["node_modules"], } diff --git a/docs/cache-handler-docs/tsconfig.json b/docs/cache-handler-docs/tsconfig.json index 39d78e21..b40a8e67 100644 --- a/docs/cache-handler-docs/tsconfig.json +++ b/docs/cache-handler-docs/tsconfig.json @@ -2,10 +2,10 @@ "extends": "@neshca/tsconfig/nextjs.json", "compilerOptions": { "paths": { - "cache-handler-docs/*": ["./src/*"] + "cache-handler-docs/*": ["./src/*"], }, - "strictNullChecks": true + "strictNullChecks": true, }, "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx", ".next/types/**/*.ts"], - "exclude": ["node_modules"] + "exclude": ["node_modules"], } diff --git a/internal/backend/tsconfig.json b/internal/backend/tsconfig.json index 6c195e98..fc4347bb 100644 --- a/internal/backend/tsconfig.json +++ b/internal/backend/tsconfig.json @@ -1,5 +1,5 @@ { "extends": "@neshca/tsconfig/node-packages.json", "include": ["."], - "exclude": ["dist", "node_modules"] + "exclude": ["dist", "node_modules"], } diff --git a/internal/next-common/tsconfig.json b/internal/next-common/tsconfig.json index 6c195e98..fc4347bb 100644 --- a/internal/next-common/tsconfig.json +++ b/internal/next-common/tsconfig.json @@ -1,5 +1,5 @@ { "extends": "@neshca/tsconfig/node-packages.json", "include": ["."], - "exclude": ["dist", "node_modules"] + "exclude": ["dist", "node_modules"], } diff --git a/internal/next-lru-cache/tsconfig.json b/internal/next-lru-cache/tsconfig.json index 6c195e98..fc4347bb 100644 --- a/internal/next-lru-cache/tsconfig.json +++ b/internal/next-lru-cache/tsconfig.json @@ -1,5 +1,5 @@ { "extends": "@neshca/tsconfig/node-packages.json", "include": ["."], - "exclude": ["dist", "node_modules"] + "exclude": ["dist", "node_modules"], } diff --git a/package-lock.json b/package-lock.json index 4cc38a26..775b94a0 100644 --- a/package-lock.json +++ b/package-lock.json @@ -24,7 +24,7 @@ "diffscribe": "*", "eslint": "8.56.0", "glob": "10.3.10", - "prettier": "3.2.2", + "prettier": "3.2.4", "turbo": "1.10.16" }, "engines": { @@ -12276,9 +12276,9 @@ } }, "node_modules/prettier": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.2.2.tgz", - "integrity": "sha512-HTByuKZzw7utPiDO523Tt2pLtEyK7OibUD9suEJQrPUCYQqrHr74GGX6VidMrovbf/I50mPqr8j/II6oBAuc5A==", + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.2.4.tgz", + "integrity": "sha512-FWu1oLHKCrtpO1ypU6J0SbK2d9Ckwysq6bHj/uaCP26DxrPpppCLQRGVuqAxSTvhF00AcvDRyYrLNW7ocBhFFQ==", "dev": true, "bin": { "prettier": "bin/prettier.cjs" diff --git a/package.json b/package.json index 0bb90aa7..f61a9266 100644 --- a/package.json +++ b/package.json @@ -40,7 +40,7 @@ "diffscribe": "*", "eslint": "8.56.0", "glob": "10.3.10", - "prettier": "3.2.2", + "prettier": "3.2.4", "turbo": "1.10.16" }, "engines": { diff --git a/packages/cache-handler/tsconfig.json b/packages/cache-handler/tsconfig.json index c5680c97..c54332b9 100644 --- a/packages/cache-handler/tsconfig.json +++ b/packages/cache-handler/tsconfig.json @@ -6,8 +6,8 @@ "paths": { "@neshca/next-common": ["../../internal/next-common/src/next-common.ts"], "@neshca/next-lru-cache/next-cache-handler-value": [ - "../../internal/next-lru-cache/src/cache-types/next-cache-handler-value.ts" - ] - } - } + "../../internal/next-lru-cache/src/cache-types/next-cache-handler-value.ts", + ], + }, + }, } diff --git a/packages/diffscribe/tsconfig.json b/packages/diffscribe/tsconfig.json index 6c195e98..fc4347bb 100644 --- a/packages/diffscribe/tsconfig.json +++ b/packages/diffscribe/tsconfig.json @@ -1,5 +1,5 @@ { "extends": "@neshca/tsconfig/node-packages.json", "include": ["."], - "exclude": ["dist", "node_modules"] + "exclude": ["dist", "node_modules"], } diff --git a/packages/json-replacer-reviver/tsconfig.json b/packages/json-replacer-reviver/tsconfig.json index 6c195e98..fc4347bb 100644 --- a/packages/json-replacer-reviver/tsconfig.json +++ b/packages/json-replacer-reviver/tsconfig.json @@ -1,5 +1,5 @@ { "extends": "@neshca/tsconfig/node-packages.json", "include": ["."], - "exclude": ["dist", "node_modules"] + "exclude": ["dist", "node_modules"], } diff --git a/packages/server/tsconfig.json b/packages/server/tsconfig.json index 6c195e98..fc4347bb 100644 --- a/packages/server/tsconfig.json +++ b/packages/server/tsconfig.json @@ -1,5 +1,5 @@ { "extends": "@neshca/tsconfig/node-packages.json", "include": ["."], - "exclude": ["dist", "node_modules"] + "exclude": ["dist", "node_modules"], } diff --git a/tsconfig.json b/tsconfig.json index 967c418c..67ce2f4b 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -1,3 +1,3 @@ { - "extends": "@neshca/tsconfig/base.json" + "extends": "@neshca/tsconfig/base.json", } From 85a22684ebdd8817904cae6b02c070464aca81b3 Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Thu, 18 Jan 2024 04:59:14 +0300 Subject: [PATCH 062/458] Update copyright year to 2024 (#268) --- LICENSE | 2 +- packages/cache-handler/LICENSE | 2 +- packages/diffscribe/LICENSE | 2 +- packages/json-replacer-reviver/LICENSE | 2 +- packages/server/LICENSE | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/LICENSE b/LICENSE index f8888cff..fbb67bf3 100644 --- a/LICENSE +++ b/LICENSE @@ -1,6 +1,6 @@ MIT License -Copyright (c) 2023 Arseny Kruglikov +Copyright (c) 2024 Arseny Kruglikov Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/packages/cache-handler/LICENSE b/packages/cache-handler/LICENSE index f8888cff..fbb67bf3 100644 --- a/packages/cache-handler/LICENSE +++ b/packages/cache-handler/LICENSE @@ -1,6 +1,6 @@ MIT License -Copyright (c) 2023 Arseny Kruglikov +Copyright (c) 2024 Arseny Kruglikov Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/packages/diffscribe/LICENSE b/packages/diffscribe/LICENSE index f8888cff..fbb67bf3 100644 --- a/packages/diffscribe/LICENSE +++ b/packages/diffscribe/LICENSE @@ -1,6 +1,6 @@ MIT License -Copyright (c) 2023 Arseny Kruglikov +Copyright (c) 2024 Arseny Kruglikov Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/packages/json-replacer-reviver/LICENSE b/packages/json-replacer-reviver/LICENSE index f8888cff..fbb67bf3 100644 --- a/packages/json-replacer-reviver/LICENSE +++ b/packages/json-replacer-reviver/LICENSE @@ -1,6 +1,6 @@ MIT License -Copyright (c) 2023 Arseny Kruglikov +Copyright (c) 2024 Arseny Kruglikov Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/packages/server/LICENSE b/packages/server/LICENSE index f8888cff..fbb67bf3 100644 --- a/packages/server/LICENSE +++ b/packages/server/LICENSE @@ -1,6 +1,6 @@ MIT License -Copyright (c) 2023 Arseny Kruglikov +Copyright (c) 2024 Arseny Kruglikov Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal From fea732913657115b9be8dfacb8d2bb623b5829d4 Mon Sep 17 00:00:00 2001 From: zecka Date: Thu, 18 Jan 2024 22:13:48 +0100 Subject: [PATCH 063/458] Fix typo on redis-strings.mdx (#269) --- docs/cache-handler-docs/src/pages/redis-strings.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/cache-handler-docs/src/pages/redis-strings.mdx b/docs/cache-handler-docs/src/pages/redis-strings.mdx index ef2c1611..7711cba6 100644 --- a/docs/cache-handler-docs/src/pages/redis-strings.mdx +++ b/docs/cache-handler-docs/src/pages/redis-strings.mdx @@ -1,6 +1,6 @@ import { Callout } from 'nextra/components'; -## Redis strigs example +## Redis strings example In this example, we assume that in your deployment, you have `REDIS_URL` environment variable set to the URL of your From 3d3fdf39f29cf0dcb238a00b14100fd88bd1037d Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Fri, 19 Jan 2024 00:22:46 +0300 Subject: [PATCH 064/458] Fix a type in redis-strings-custom.mdx (#270) --- docs/cache-handler-docs/src/pages/redis-strings-custom.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/cache-handler-docs/src/pages/redis-strings-custom.mdx b/docs/cache-handler-docs/src/pages/redis-strings-custom.mdx index c4e021a4..d8bbb106 100644 --- a/docs/cache-handler-docs/src/pages/redis-strings-custom.mdx +++ b/docs/cache-handler-docs/src/pages/redis-strings-custom.mdx @@ -1,6 +1,6 @@ import { Callout } from 'nextra/components'; -## Redis strigs example +## Custom Redis strings example Install `@neshca/json-replacer-reviver` to efficiently store Buffers in Redis strings From 5ba656ca1e35965fd0cf18ba9ac72f2bc8fb007b Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Fri, 19 Jan 2024 16:54:31 +0300 Subject: [PATCH 065/458] Update Next.js and cacheHandler configuration (#267) --- .changeset/eight-melons-judge.md | 5 + apps/cache-testing/next.config.js | 5 +- apps/cache-testing/package.json | 4 +- docs/cache-handler-docs/package.json | 4 +- .../configuration/development-environment.mdx | 12 +- .../src/pages/installation.mdx | 6 +- internal/next-common/package.json | 2 +- package-lock.json | 495 +++++++++--------- packages/cache-handler/src/cache-handler.ts | 4 + 9 files changed, 260 insertions(+), 277 deletions(-) create mode 100644 .changeset/eight-melons-judge.md diff --git a/.changeset/eight-melons-judge.md b/.changeset/eight-melons-judge.md new file mode 100644 index 00000000..9ef1d54c --- /dev/null +++ b/.changeset/eight-melons-judge.md @@ -0,0 +1,5 @@ +--- +'cache-handler-docs': patch +--- + +Updated installation documentation section with stabilized `cacheHandler` Next Config option. diff --git a/apps/cache-testing/next.config.js b/apps/cache-testing/next.config.js index a820bf80..f4166623 100644 --- a/apps/cache-testing/next.config.js +++ b/apps/cache-testing/next.config.js @@ -1,14 +1,15 @@ const path = require('node:path'); -const incrementalCacheHandlerPath = require.resolve(process.env.HANDLER_PATH ?? './cache-handler-redis-stack'); +const cacheHandler = require.resolve(process.env.HANDLER_PATH ?? './cache-handler-redis-stack'); /** @type {import('next').NextConfig} */ const nextConfig = { poweredByHeader: false, reactStrictMode: true, output: 'standalone', + cacheHandler: process.env.NODE_ENV !== 'development' ? cacheHandler : undefined, + cacheMaxMemorySize: 0, // disable default in-memory caching experimental: { - incrementalCacheHandlerPath: process.env.NODE_ENV !== 'development' ? incrementalCacheHandlerPath : undefined, // PPR should only be configured via the PPR_ENABLED env variable due to conditional logic in tests. ppr: process.env.PPR_ENABLED === 'true', largePageDataBytes: 1024 * 1024, // 1MB diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 9b027e9f..1774abd5 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -16,7 +16,7 @@ "start": "dotenv -e .env.local -v SERVER_STARTED=1 node .next/standalone/apps/cache-testing/server.js" }, "dependencies": { - "next": "14.0.5-canary.58", + "next": "14.1.1-canary.1", "react": "18.2.0", "react-dom": "18.2.0" }, @@ -24,7 +24,7 @@ "@neshca/cache-handler": "*", "@neshca/json-replacer-reviver": "*", "@neshca/tsconfig": "*", - "@next/eslint-plugin-next": "14.0.5-canary.58", + "@next/eslint-plugin-next": "14.1.1-canary.1", "@playwright/test": "1.41.0", "@types/node": "20.11.5", "@types/react": "18.2.48", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 2fab25d0..600cfdeb 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -10,7 +10,7 @@ "start:docs": "next start" }, "dependencies": { - "next": "14.0.4", + "next": "14.1.0", "nextra": "2.13.2", "nextra-theme-docs": "2.13.2", "react": "18.2.0", @@ -18,7 +18,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@next/eslint-plugin-next": "14.0.4", + "@next/eslint-plugin-next": "14.1.0", "@types/node": "20.11.5", "@types/react": "18.2.48", "@types/react-dom": "18.2.18", diff --git a/docs/cache-handler-docs/src/pages/configuration/development-environment.mdx b/docs/cache-handler-docs/src/pages/configuration/development-environment.mdx index 1f714301..52f5ac0f 100644 --- a/docs/cache-handler-docs/src/pages/configuration/development-environment.mdx +++ b/docs/cache-handler-docs/src/pages/configuration/development-environment.mdx @@ -6,11 +6,11 @@ The easiest way to turn off the cache handler in a development environment is to ```js filename="next.config.js" copy const nextConfig = { - /* ... */ - experimental: { - incrementalCacheHandlerPath: - process.env.NODE_ENV === 'development' ? undefined : require.resolve('./cache-handler'), - }, - /* ... */ + cacheHandler: process.env.NODE_ENV === 'production' ? require.resolve('./cache-handler') : undefined, + // Use `experimental` option instead of the `cacheHandler` property when using Next.js versions from 13.5.1 to 14.0.4 + /* experimental: { + incrementalCacheHandlerPath: + process.env.NODE_ENV === 'production' ? require.resolve('./cache-handler') : undefined, + }, */ }; ``` diff --git a/docs/cache-handler-docs/src/pages/installation.mdx b/docs/cache-handler-docs/src/pages/installation.mdx index 1c35d482..46e1cdf0 100644 --- a/docs/cache-handler-docs/src/pages/installation.mdx +++ b/docs/cache-handler-docs/src/pages/installation.mdx @@ -78,10 +78,12 @@ pnpm create next-app --example cache-handler-redis cache-handler-redis-app ```js filename="next.config.js" copy const nextConfig = { - experimental: { + cacheHandler: process.env.NODE_ENV === 'production' ? require.resolve('./cache-handler') : undefined, + // Use `experimental` option instead of the `cacheHandler` property when using Next.js versions from 13.5.1 to 14.0.4 + /* experimental: { incrementalCacheHandlerPath: process.env.NODE_ENV === 'production' ? require.resolve('./cache-handler') : undefined, - }, + }, */ }; module.exports = nextConfig; diff --git a/internal/next-common/package.json b/internal/next-common/package.json index f7961bf8..a105f676 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -13,7 +13,7 @@ "lint:fix": "eslint --fix ." }, "dependencies": { - "next": "14.0.5-canary.58" + "next": "14.1.1-canary.1" }, "devDependencies": { "@neshca/tsconfig": "*", diff --git a/package-lock.json b/package-lock.json index 775b94a0..3b3950d0 100644 --- a/package-lock.json +++ b/package-lock.json @@ -36,7 +36,7 @@ "version": "0.0.0", "license": "MIT", "dependencies": { - "next": "14.0.5-canary.58", + "next": "14.1.1-canary.1", "react": "18.2.0", "react-dom": "18.2.0" }, @@ -44,7 +44,7 @@ "@neshca/cache-handler": "*", "@neshca/json-replacer-reviver": "*", "@neshca/tsconfig": "*", - "@next/eslint-plugin-next": "14.0.5-canary.58", + "@next/eslint-plugin-next": "14.1.1-canary.1", "@playwright/test": "1.41.0", "@types/node": "20.11.5", "@types/react": "18.2.48", @@ -59,15 +59,24 @@ "typescript": "5.3.3" } }, + "apps/cache-testing/node_modules/@types/node": { + "version": "20.11.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.5.tgz", + "integrity": "sha512-g557vgQjUUfN76MZAN/dt1z3dzcUsimuysco0KeluHgrPdJXkP/XdAURgyO2W9fZWHRtRBiVKzKn8vyOAwlG+w==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "apps/cache-testing/node_modules/next": { - "version": "14.0.5-canary.58", - "resolved": "https://registry.npmjs.org/next/-/next-14.0.5-canary.58.tgz", - "integrity": "sha512-xZjkkbIDHCnzlV2M//0ehB72Wcxkw0yYsKqDr6+8VX9/BqBx8Z7mP/8d2ezF+c3lVcje6UODsmZW29IXpc5wKQ==", + "version": "14.1.1-canary.1", + "resolved": "https://registry.npmjs.org/next/-/next-14.1.1-canary.1.tgz", + "integrity": "sha512-17sG8plUzgT9xjdac11qFQUcF2JAgJ8h59U8ME1Ykaboy8sk7IkkD+HuOCJxREzsLtDh6Q8gqWxEAt+j9VuS/Q==", "dependencies": { - "@next/env": "14.0.5-canary.58", + "@next/env": "14.1.1-canary.1", "@swc/helpers": "0.5.2", "busboy": "1.6.0", - "caniuse-lite": "^1.0.30001406", + "caniuse-lite": "^1.0.30001579", "graceful-fs": "^4.2.11", "postcss": "8.4.31", "styled-jsx": "5.1.1" @@ -79,15 +88,15 @@ "node": ">=18.17.0" }, "optionalDependencies": { - "@next/swc-darwin-arm64": "14.0.5-canary.58", - "@next/swc-darwin-x64": "14.0.5-canary.58", - "@next/swc-linux-arm64-gnu": "14.0.5-canary.58", - "@next/swc-linux-arm64-musl": "14.0.5-canary.58", - "@next/swc-linux-x64-gnu": "14.0.5-canary.58", - "@next/swc-linux-x64-musl": "14.0.5-canary.58", - "@next/swc-win32-arm64-msvc": "14.0.5-canary.58", - "@next/swc-win32-ia32-msvc": "14.0.5-canary.58", - "@next/swc-win32-x64-msvc": "14.0.5-canary.58" + "@next/swc-darwin-arm64": "14.1.1-canary.1", + "@next/swc-darwin-x64": "14.1.1-canary.1", + "@next/swc-linux-arm64-gnu": "14.1.1-canary.1", + "@next/swc-linux-arm64-musl": "14.1.1-canary.1", + "@next/swc-linux-x64-gnu": "14.1.1-canary.1", + "@next/swc-linux-x64-musl": "14.1.1-canary.1", + "@next/swc-win32-arm64-msvc": "14.1.1-canary.1", + "@next/swc-win32-ia32-msvc": "14.1.1-canary.1", + "@next/swc-win32-x64-msvc": "14.1.1-canary.1" }, "peerDependencies": { "@opentelemetry/api": "^1.1.0", @@ -107,7 +116,7 @@ "docs/cache-handler-docs": { "version": "0.6.3", "dependencies": { - "next": "14.0.4", + "next": "14.1.0", "nextra": "2.13.2", "nextra-theme-docs": "2.13.2", "react": "18.2.0", @@ -115,7 +124,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@next/eslint-plugin-next": "14.0.4", + "@next/eslint-plugin-next": "14.1.0", "@types/node": "20.11.5", "@types/react": "18.2.48", "@types/react-dom": "18.2.18", @@ -124,32 +133,21 @@ } }, "docs/cache-handler-docs/node_modules/@next/eslint-plugin-next": { - "version": "14.0.4", - "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.0.4.tgz", - "integrity": "sha512-U3qMNHmEZoVmHA0j/57nRfi3AscXNvkOnxDmle/69Jz/G0o/gWjXTDdlgILZdrxQ0Lw/jv2mPW8PGy0EGIHXhQ==", + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.1.0.tgz", + "integrity": "sha512-x4FavbNEeXx/baD/zC/SdrvkjSby8nBn8KcCREqk6UuwvwoAPZmaV8TFCAuo/cpovBRTIY67mHhe86MQQm/68Q==", "dev": true, "dependencies": { - "glob": "7.1.7" + "glob": "10.3.10" } }, - "docs/cache-handler-docs/node_modules/glob": { - "version": "7.1.7", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", - "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==", + "docs/cache-handler-docs/node_modules/@types/node": { + "version": "20.11.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.5.tgz", + "integrity": "sha512-g557vgQjUUfN76MZAN/dt1z3dzcUsimuysco0KeluHgrPdJXkP/XdAURgyO2W9fZWHRtRBiVKzKn8vyOAwlG+w==", "dev": true, "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "undici-types": "~5.26.4" } }, "docs/cache-handler-docs/node_modules/nextra": { @@ -250,6 +248,15 @@ "typescript": "5.3.3" } }, + "internal/backend/node_modules/@types/node": { + "version": "20.11.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.5.tgz", + "integrity": "sha512-g557vgQjUUfN76MZAN/dt1z3dzcUsimuysco0KeluHgrPdJXkP/XdAURgyO2W9fZWHRtRBiVKzKn8vyOAwlG+w==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "internal/eslint-config-neshca": { "version": "0.0.0", "license": "MIT", @@ -259,14 +266,14 @@ } }, "internal/eslint-config-neshca/node_modules/@next/eslint-plugin-next": { - "version": "14.0.4", - "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.0.4.tgz", - "integrity": "sha512-U3qMNHmEZoVmHA0j/57nRfi3AscXNvkOnxDmle/69Jz/G0o/gWjXTDdlgILZdrxQ0Lw/jv2mPW8PGy0EGIHXhQ==", + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.1.0.tgz", + "integrity": "sha512-x4FavbNEeXx/baD/zC/SdrvkjSby8nBn8KcCREqk6UuwvwoAPZmaV8TFCAuo/cpovBRTIY67mHhe86MQQm/68Q==", "dev": true, "optional": true, "peer": true, "dependencies": { - "glob": "7.1.7" + "glob": "10.3.10" } }, "internal/eslint-config-neshca/node_modules/@vercel/style-guide": { @@ -319,34 +326,12 @@ } } }, - "internal/eslint-config-neshca/node_modules/glob": { - "version": "7.1.7", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", - "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==", - "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, "internal/next-common": { "name": "@neshca/next-common", "version": "0.0.0", "license": "MIT", "dependencies": { - "next": "14.0.5-canary.58" + "next": "14.1.1-canary.1" }, "devDependencies": { "@neshca/tsconfig": "*", @@ -356,15 +341,24 @@ "typescript": "5.3.3" } }, + "internal/next-common/node_modules/@types/node": { + "version": "20.11.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.5.tgz", + "integrity": "sha512-g557vgQjUUfN76MZAN/dt1z3dzcUsimuysco0KeluHgrPdJXkP/XdAURgyO2W9fZWHRtRBiVKzKn8vyOAwlG+w==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "internal/next-common/node_modules/next": { - "version": "14.0.5-canary.58", - "resolved": "https://registry.npmjs.org/next/-/next-14.0.5-canary.58.tgz", - "integrity": "sha512-xZjkkbIDHCnzlV2M//0ehB72Wcxkw0yYsKqDr6+8VX9/BqBx8Z7mP/8d2ezF+c3lVcje6UODsmZW29IXpc5wKQ==", + "version": "14.1.1-canary.1", + "resolved": "https://registry.npmjs.org/next/-/next-14.1.1-canary.1.tgz", + "integrity": "sha512-17sG8plUzgT9xjdac11qFQUcF2JAgJ8h59U8ME1Ykaboy8sk7IkkD+HuOCJxREzsLtDh6Q8gqWxEAt+j9VuS/Q==", "dependencies": { - "@next/env": "14.0.5-canary.58", + "@next/env": "14.1.1-canary.1", "@swc/helpers": "0.5.2", "busboy": "1.6.0", - "caniuse-lite": "^1.0.30001406", + "caniuse-lite": "^1.0.30001579", "graceful-fs": "^4.2.11", "postcss": "8.4.31", "styled-jsx": "5.1.1" @@ -376,15 +370,15 @@ "node": ">=18.17.0" }, "optionalDependencies": { - "@next/swc-darwin-arm64": "14.0.5-canary.58", - "@next/swc-darwin-x64": "14.0.5-canary.58", - "@next/swc-linux-arm64-gnu": "14.0.5-canary.58", - "@next/swc-linux-arm64-musl": "14.0.5-canary.58", - "@next/swc-linux-x64-gnu": "14.0.5-canary.58", - "@next/swc-linux-x64-musl": "14.0.5-canary.58", - "@next/swc-win32-arm64-msvc": "14.0.5-canary.58", - "@next/swc-win32-ia32-msvc": "14.0.5-canary.58", - "@next/swc-win32-x64-msvc": "14.0.5-canary.58" + "@next/swc-darwin-arm64": "14.1.1-canary.1", + "@next/swc-darwin-x64": "14.1.1-canary.1", + "@next/swc-linux-arm64-gnu": "14.1.1-canary.1", + "@next/swc-linux-arm64-musl": "14.1.1-canary.1", + "@next/swc-linux-x64-gnu": "14.1.1-canary.1", + "@next/swc-linux-x64-musl": "14.1.1-canary.1", + "@next/swc-win32-arm64-msvc": "14.1.1-canary.1", + "@next/swc-win32-ia32-msvc": "14.1.1-canary.1", + "@next/swc-win32-x64-msvc": "14.1.1-canary.1" }, "peerDependencies": { "@opentelemetry/api": "^1.1.0", @@ -417,6 +411,15 @@ "typescript": "5.3.3" } }, + "internal/next-lru-cache/node_modules/@types/node": { + "version": "20.11.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.5.tgz", + "integrity": "sha512-g557vgQjUUfN76MZAN/dt1z3dzcUsimuysco0KeluHgrPdJXkP/XdAURgyO2W9fZWHRtRBiVKzKn8vyOAwlG+w==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "internal/prettier-config": { "name": "@neshca/prettier-config", "version": "0.0.0", @@ -426,14 +429,14 @@ } }, "internal/prettier-config/node_modules/@next/eslint-plugin-next": { - "version": "14.0.4", - "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.0.4.tgz", - "integrity": "sha512-U3qMNHmEZoVmHA0j/57nRfi3AscXNvkOnxDmle/69Jz/G0o/gWjXTDdlgILZdrxQ0Lw/jv2mPW8PGy0EGIHXhQ==", + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.1.0.tgz", + "integrity": "sha512-x4FavbNEeXx/baD/zC/SdrvkjSby8nBn8KcCREqk6UuwvwoAPZmaV8TFCAuo/cpovBRTIY67mHhe86MQQm/68Q==", "dev": true, "optional": true, "peer": true, "dependencies": { - "glob": "7.1.7" + "glob": "10.3.10" } }, "internal/prettier-config/node_modules/@vercel/style-guide": { @@ -486,28 +489,6 @@ } } }, - "internal/prettier-config/node_modules/glob": { - "version": "7.1.7", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", - "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==", - "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, "internal/tsconfig": { "name": "@neshca/tsconfig", "version": "0.0.0", @@ -1824,11 +1805,6 @@ "fs-extra": "^8.1.0" } }, - "node_modules/@manypkg/find-root/node_modules/@types/node": { - "version": "12.20.55", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", - "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" - }, "node_modules/@manypkg/find-root/node_modules/fs-extra": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", @@ -2190,43 +2166,23 @@ "link": true }, "node_modules/@next/env": { - "version": "14.0.5-canary.58", - "resolved": "https://registry.npmjs.org/@next/env/-/env-14.0.5-canary.58.tgz", - "integrity": "sha512-HivKr1b1jXNZ/NsGlRaBucZTQIkwtE52QBJZLyygsxXLMPC7ng6oOY3DkWiiLxV4T38etNKKIrKVH8DZSjdWlQ==" + "version": "14.1.1-canary.1", + "resolved": "https://registry.npmjs.org/@next/env/-/env-14.1.1-canary.1.tgz", + "integrity": "sha512-hkxKhWvFieo9wYuRcsQtDtHzZrs+spjxglCU9QLdwpSsRwifr1oxm+UvuhCNTQ7V8qZZPSEnhU0FMWIv3oo6Eg==" }, "node_modules/@next/eslint-plugin-next": { - "version": "14.0.5-canary.58", - "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.0.5-canary.58.tgz", - "integrity": "sha512-0eEAkc70Rr/aAmcw2Gp0hNvU9YPURPr6e9ialJFknBLWkTtQvzQ+MM8x4MA259r41FwjtRa+BzQIxpAA0nFfFw==", - "dev": true, - "dependencies": { - "glob": "7.1.7" - } - }, - "node_modules/@next/eslint-plugin-next/node_modules/glob": { - "version": "7.1.7", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", - "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==", + "version": "14.1.1-canary.1", + "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.1.1-canary.1.tgz", + "integrity": "sha512-NerzDeqcUMbTuU/yc3NkDh7HOqZSEHNCEcUmmtEWhE17YLOt36necRQsfCbCFarRyWOWVJz2BMJbR2E8PqKrLw==", "dev": true, "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "glob": "10.3.10" } }, "node_modules/@next/swc-darwin-arm64": { - "version": "14.0.5-canary.58", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.0.5-canary.58.tgz", - "integrity": "sha512-FDmoxGMy1v0XREXDbdYutdn4xJ6edxOf/zg4piNbqxX3mHLfQiy4UZL1cd5wHMLZuWsOvb+DeivJhI+36oLfOQ==", + "version": "14.1.1-canary.1", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.1.1-canary.1.tgz", + "integrity": "sha512-HA5F+iKomodTwoHNd7ABsluFQ/I34PfEd1LUMBPMvERwwGj6NEUYRqv/4nSqpGAkHK6FR2tM2uWi+dYHWNTAwA==", "cpu": [ "arm64" ], @@ -2239,9 +2195,9 @@ } }, "node_modules/@next/swc-darwin-x64": { - "version": "14.0.5-canary.58", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.0.5-canary.58.tgz", - "integrity": "sha512-dLvi37j6hxt3n/3HChkwo2Hms5y6VRQpO29b2Rw/uH61LARS9jcdHPvbfGKb9Bssy/MD0UkOIxR+73V2OHldqw==", + "version": "14.1.1-canary.1", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.1.1-canary.1.tgz", + "integrity": "sha512-pWNXORRMVmA4G7LQRWBFTM4kM6TPFyQ+4NwySjpjZQqVAUb8jGh9npbjbd2XcCLbX/b/TbrHSERKpWekvmbvdQ==", "cpu": [ "x64" ], @@ -2254,9 +2210,9 @@ } }, "node_modules/@next/swc-linux-arm64-gnu": { - "version": "14.0.5-canary.58", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.0.5-canary.58.tgz", - "integrity": "sha512-XDc/TGmSlu8KkVQex+z8OJqOu9J4It7+9b56bCRMHYuYaZrm0lUUTznw4DMsJExc+iwaW6XCTVeFYM4z6Ssj1w==", + "version": "14.1.1-canary.1", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.1.1-canary.1.tgz", + "integrity": "sha512-l3fDk5m8rbYHdwywqOP8Om99gUZ4HSodG25IZQqooATYtoBG3MeVkTTFwfn2JPtsuq6+BAwWNjrxZsbpJ3JK+g==", "cpu": [ "arm64" ], @@ -2269,9 +2225,9 @@ } }, "node_modules/@next/swc-linux-arm64-musl": { - "version": "14.0.5-canary.58", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.0.5-canary.58.tgz", - "integrity": "sha512-zoPz3ry3mwn970CKFizLfGweimOit0YV2J3yMb43OwPgi2PHuHBaUswL6Akv1t8P1Ny5wccy1A7rkdg+ypqa1Q==", + "version": "14.1.1-canary.1", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.1.1-canary.1.tgz", + "integrity": "sha512-qOs7Sno0MVyQqV/M9oxv9UvpB71GdeYhftX7EHB3gqJ7FnRs55Nw7vfES1qsaZ9h8Yd5tHjmq0VnXZnvzf6svg==", "cpu": [ "arm64" ], @@ -2284,9 +2240,9 @@ } }, "node_modules/@next/swc-linux-x64-gnu": { - "version": "14.0.5-canary.58", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.0.5-canary.58.tgz", - "integrity": "sha512-PF+lgu05TsS8bYiok6vW07r+46XPkTvJWBC44buoOP7dzA7h8EFjav/rnxtTW0nOtiEDtx7Z6bXhte2N8kIlXw==", + "version": "14.1.1-canary.1", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.1.1-canary.1.tgz", + "integrity": "sha512-uq2dwhacwwxnOXl5NSFbsbvU6ldAKIRde0mD+7edYSldhQUwDWLJQjqhImWd4+zSTWoTmTnEgkMgFgsPzgJnhQ==", "cpu": [ "x64" ], @@ -2299,9 +2255,9 @@ } }, "node_modules/@next/swc-linux-x64-musl": { - "version": "14.0.5-canary.58", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.0.5-canary.58.tgz", - "integrity": "sha512-/vwqLbJlu/SfpntfLyeCPbUV9sUeSZjFqrjrmgQUoIJ2iKDcHh3USQe40Kj5yRR3V3y2mAoTQh4gnpv+OnB8mw==", + "version": "14.1.1-canary.1", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.1.1-canary.1.tgz", + "integrity": "sha512-fC4hAjpDU9JqQleqoozqbDUPT5QzvZO6RFVbolwQ8lPkY9mjcyICx/4DtQmoXy+GgWbPMqiMYRgnT6wGyvyreg==", "cpu": [ "x64" ], @@ -2314,9 +2270,9 @@ } }, "node_modules/@next/swc-win32-arm64-msvc": { - "version": "14.0.5-canary.58", - "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.0.5-canary.58.tgz", - "integrity": "sha512-X8ptdLqjhPObaJuOGMy5SKY8vsXgJ9MRKMYmH5eGdq2bMYy1/uuH3nSigtmayAb6cvVNeT24FsI9g0P4KMWQTA==", + "version": "14.1.1-canary.1", + "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.1.1-canary.1.tgz", + "integrity": "sha512-UkeFvu4o8Hnze9oyBn9HDxl2l4eo9MJvZHxzRidcwX7xO68EkzQp3c2lZzRhxp14YfSya+5VKrOcZcduZsXPOw==", "cpu": [ "arm64" ], @@ -2329,9 +2285,9 @@ } }, "node_modules/@next/swc-win32-ia32-msvc": { - "version": "14.0.5-canary.58", - "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.0.5-canary.58.tgz", - "integrity": "sha512-iSjSss2j574aHzKw4dO46V8yPARVVYej0P9QH46gKGdcnY97XyW4MjzxLIbhlPR4GV4qXshdB1MoejLIaI1uoA==", + "version": "14.1.1-canary.1", + "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.1.1-canary.1.tgz", + "integrity": "sha512-/QMAp34HyzYxT0VVaSvjgXmuUHSeJPRizm8SB4h0vG8M0/Pf8WPKsLf4TJVPOJkCjKd78f/EF8Hq7pngSDRihA==", "cpu": [ "ia32" ], @@ -2344,9 +2300,9 @@ } }, "node_modules/@next/swc-win32-x64-msvc": { - "version": "14.0.5-canary.58", - "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.0.5-canary.58.tgz", - "integrity": "sha512-AFl0lgpmLdqHkrBsc2vrZx6mE6zLvKJWonUDS17q5akYsnQ2o9tPrtzFvhU1SYtmt5XD49SbfArPBRmTseFq0A==", + "version": "14.1.1-canary.1", + "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.1.1-canary.1.tgz", + "integrity": "sha512-7TuIOK1saa9Ph61lmqUCEPbjuQOBio/U5VIjdP+/6Ux9ECzxmhMjnWamYKgLJXJ8Vn4AGmczHDPB25inJRKs1g==", "cpu": [ "x64" ], @@ -2515,9 +2471,9 @@ } }, "node_modules/@pkgr/core": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/@pkgr/core/-/core-0.1.0.tgz", - "integrity": "sha512-Zwq5OCzuwJC2jwqmpEQt7Ds1DTi6BWSwoGkbb1n9pO3hzb35BoJELx7c0T23iDkBGkh2e7tvOtjF3tr3OaQHDQ==", + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@pkgr/core/-/core-0.1.1.tgz", + "integrity": "sha512-cq8o4cWH0ibXh9VGi5P20Tu9XF/0fFXl9EUinr9QfTM7a7p0oTA4iJRCQWppXR1Pg8dSM0UCItCkPwsk9qWWYA==", "dev": true, "engines": { "node": "^12.20.0 || ^14.18.0 || >=16.0.0" @@ -2955,9 +2911,9 @@ ] }, "node_modules/@rushstack/eslint-patch": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.6.1.tgz", - "integrity": "sha512-UY+FGM/2jjMkzQLn8pxcHGMaVLh9aEitG3zY2CiY7XHdLiz3bZOwa6oDxNqEMv7zZkV+cj5DOdz0cQ1BP5Hjgw==", + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.7.0.tgz", + "integrity": "sha512-Jh4t/593gxs0lJZ/z3NnasKlplXT2f+4y/LZYuaKZW5KAaiVFL/fThhs+17EbUd53jUVJ0QudYCBGbN/psvaqg==", "dev": true }, "node_modules/@swc/helpers": { @@ -2969,9 +2925,9 @@ } }, "node_modules/@tanstack/react-virtual": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@tanstack/react-virtual/-/react-virtual-3.0.1.tgz", - "integrity": "sha512-IFOFuRUTaiM/yibty9qQ9BfycQnYXIDHGP2+cU+0LrFFGNhVxCXSQnaY6wkX8uJVteFEBjUondX0Hmpp7TNcag==", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@tanstack/react-virtual/-/react-virtual-3.0.2.tgz", + "integrity": "sha512-9XbRLPKgnhMwwmuQMnJMv+5a9sitGNCSEtf/AZXzmJdesYk7XsjYHaEDny+IrJzvPNwZliIIDwCRiaUqR3zzCA==", "dependencies": { "@tanstack/virtual-core": "3.0.0" }, @@ -3121,17 +3077,14 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "20.11.5", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.5.tgz", - "integrity": "sha512-g557vgQjUUfN76MZAN/dt1z3dzcUsimuysco0KeluHgrPdJXkP/XdAURgyO2W9fZWHRtRBiVKzKn8vyOAwlG+w==", - "dependencies": { - "undici-types": "~5.26.4" - } + "version": "12.20.55", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", + "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" }, "node_modules/@types/node-fetch": { - "version": "2.6.10", - "resolved": "https://registry.npmjs.org/@types/node-fetch/-/node-fetch-2.6.10.tgz", - "integrity": "sha512-PPpPK6F9ALFTn59Ka3BaL+qGuipRfxNE8qVgkp0bVixeiR2c2/L+IVOiBdu9JhhT22sWnQEp6YyHGI2b2+CMcA==", + "version": "2.6.11", + "resolved": "https://registry.npmjs.org/@types/node-fetch/-/node-fetch-2.6.11.tgz", + "integrity": "sha512-24xFj9R5+rfQJLRyM56qh+wnVSYhyXC2tkoBndtY0U+vubqNsYXGjufB2nn8Q6gt0LrARwL6UBtMCSVCwl4B1g==", "peer": true, "dependencies": { "@types/node": "*", @@ -4166,9 +4119,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001576", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001576.tgz", - "integrity": "sha512-ff5BdakGe2P3SQsMsiqmt1Lc8221NR1VzHj5jXN5vBny9A6fpze94HiVV/n7XRosOlsShJcvMv5mdnpjOGCEgg==", + "version": "1.0.30001579", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001579.tgz", + "integrity": "sha512-u5AUVkixruKHJjw/pj9wISlcMpgFWzSrczLZbrqBSxukQixmg0SJ5sZTpvaFvxU0HoQKd4yoyAogyrAz9pzJnA==", "funding": [ { "type": "opencollective", @@ -5478,9 +5431,9 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.630", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.630.tgz", - "integrity": "sha512-osHqhtjojpCsACVnuD11xO5g9xaCyw7Qqn/C2KParkMv42i8jrJJgx3g7mkHfpxwhy9MnOJr8+pKOdZ7qzgizg==", + "version": "1.4.639", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.639.tgz", + "integrity": "sha512-CkKf3ZUVZchr+zDpAlNLEEy2NJJ9T64ULWaDgy3THXXlPVPkLu3VOs9Bac44nebVtdwl2geSj6AxTtGDOxoXhg==", "dev": true }, "node_modules/elkjs": { @@ -7616,11 +7569,6 @@ "node": ">=10.13.0" } }, - "node_modules/glob-to-regexp": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", - "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==" - }, "node_modules/glob/node_modules/brace-expansion": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", @@ -9330,12 +9278,12 @@ } }, "node_modules/match-sorter": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/match-sorter/-/match-sorter-6.3.1.tgz", - "integrity": "sha512-mxybbo3pPNuA+ZuCUhm5bwNkXrJTbsk5VWbR5wiwz/GC6LIiegBGn2w3O08UG/jdbYLinw51fSQ5xNU1U3MgBw==", + "version": "6.3.3", + "resolved": "https://registry.npmjs.org/match-sorter/-/match-sorter-6.3.3.tgz", + "integrity": "sha512-sgiXxrRijEe0SzHKGX4HouCpfHRPnqteH42UdMEW7BlWy990ZkzcvonJGv4Uu9WE7Y1f8Yocm91+4qFPCbmNww==", "dependencies": { - "@babel/runtime": "^7.12.5", - "remove-accents": "0.4.2" + "@babel/runtime": "^7.23.8", + "remove-accents": "0.5.0" } }, "node_modules/md5": { @@ -10949,18 +10897,17 @@ } }, "node_modules/next": { - "version": "14.0.4", - "resolved": "https://registry.npmjs.org/next/-/next-14.0.4.tgz", - "integrity": "sha512-qbwypnM7327SadwFtxXnQdGiKpkuhaRLE2uq62/nRul9cj9KhQ5LhHmlziTNqUidZotw/Q1I9OjirBROdUJNgA==", + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/next/-/next-14.1.0.tgz", + "integrity": "sha512-wlzrsbfeSU48YQBjZhDzOwhWhGsy+uQycR8bHAOt1LY1bn3zZEcDyHQOEoN3aWzQ8LHCAJ1nqrWCc9XF2+O45Q==", "dependencies": { - "@next/env": "14.0.4", + "@next/env": "14.1.0", "@swc/helpers": "0.5.2", "busboy": "1.6.0", - "caniuse-lite": "^1.0.30001406", + "caniuse-lite": "^1.0.30001579", "graceful-fs": "^4.2.11", "postcss": "8.4.31", - "styled-jsx": "5.1.1", - "watchpack": "2.4.0" + "styled-jsx": "5.1.1" }, "bin": { "next": "dist/bin/next" @@ -10969,15 +10916,15 @@ "node": ">=18.17.0" }, "optionalDependencies": { - "@next/swc-darwin-arm64": "14.0.4", - "@next/swc-darwin-x64": "14.0.4", - "@next/swc-linux-arm64-gnu": "14.0.4", - "@next/swc-linux-arm64-musl": "14.0.4", - "@next/swc-linux-x64-gnu": "14.0.4", - "@next/swc-linux-x64-musl": "14.0.4", - "@next/swc-win32-arm64-msvc": "14.0.4", - "@next/swc-win32-ia32-msvc": "14.0.4", - "@next/swc-win32-x64-msvc": "14.0.4" + "@next/swc-darwin-arm64": "14.1.0", + "@next/swc-darwin-x64": "14.1.0", + "@next/swc-linux-arm64-gnu": "14.1.0", + "@next/swc-linux-arm64-musl": "14.1.0", + "@next/swc-linux-x64-gnu": "14.1.0", + "@next/swc-linux-x64-musl": "14.1.0", + "@next/swc-win32-arm64-msvc": "14.1.0", + "@next/swc-win32-ia32-msvc": "14.1.0", + "@next/swc-win32-x64-msvc": "14.1.0" }, "peerDependencies": { "@opentelemetry/api": "^1.1.0", @@ -11034,14 +10981,14 @@ } }, "node_modules/next/node_modules/@next/env": { - "version": "14.0.4", - "resolved": "https://registry.npmjs.org/@next/env/-/env-14.0.4.tgz", - "integrity": "sha512-irQnbMLbUNQpP1wcE5NstJtbuA/69kRfzBrpAD7Gsn8zm/CY6YQYc3HQBz8QPxwISG26tIm5afvvVbu508oBeQ==" + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/@next/env/-/env-14.1.0.tgz", + "integrity": "sha512-Py8zIo+02ht82brwwhTg36iogzFqGLPXlRGKQw5s+qP/kMNc4MAyDeEwBKDijk6zTIbegEgu8Qy7C1LboslQAw==" }, "node_modules/next/node_modules/@next/swc-darwin-arm64": { - "version": "14.0.4", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.0.4.tgz", - "integrity": "sha512-mF05E/5uPthWzyYDyptcwHptucf/jj09i2SXBPwNzbgBNc+XnwzrL0U6BmPjQeOL+FiB+iG1gwBeq7mlDjSRPg==", + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.1.0.tgz", + "integrity": "sha512-nUDn7TOGcIeyQni6lZHfzNoo9S0euXnu0jhsbMOmMJUBfgsnESdjN97kM7cBqQxZa8L/bM9om/S5/1dzCrW6wQ==", "cpu": [ "arm64" ], @@ -11054,9 +11001,9 @@ } }, "node_modules/next/node_modules/@next/swc-darwin-x64": { - "version": "14.0.4", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.0.4.tgz", - "integrity": "sha512-IZQ3C7Bx0k2rYtrZZxKKiusMTM9WWcK5ajyhOZkYYTCc8xytmwSzR1skU7qLgVT/EY9xtXDG0WhY6fyujnI3rw==", + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.1.0.tgz", + "integrity": "sha512-1jgudN5haWxiAl3O1ljUS2GfupPmcftu2RYJqZiMJmmbBT5M1XDffjUtRUzP4W3cBHsrvkfOFdQ71hAreNQP6g==", "cpu": [ "x64" ], @@ -11069,9 +11016,9 @@ } }, "node_modules/next/node_modules/@next/swc-linux-arm64-gnu": { - "version": "14.0.4", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.0.4.tgz", - "integrity": "sha512-VwwZKrBQo/MGb1VOrxJ6LrKvbpo7UbROuyMRvQKTFKhNaXjUmKTu7wxVkIuCARAfiI8JpaWAnKR+D6tzpCcM4w==", + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.1.0.tgz", + "integrity": "sha512-RHo7Tcj+jllXUbK7xk2NyIDod3YcCPDZxj1WLIYxd709BQ7WuRYl3OWUNG+WUfqeQBds6kvZYlc42NJJTNi4tQ==", "cpu": [ "arm64" ], @@ -11084,9 +11031,9 @@ } }, "node_modules/next/node_modules/@next/swc-linux-arm64-musl": { - "version": "14.0.4", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.0.4.tgz", - "integrity": "sha512-8QftwPEW37XxXoAwsn+nXlodKWHfpMaSvt81W43Wh8dv0gkheD+30ezWMcFGHLI71KiWmHK5PSQbTQGUiidvLQ==", + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.1.0.tgz", + "integrity": "sha512-v6kP8sHYxjO8RwHmWMJSq7VZP2nYCkRVQ0qolh2l6xroe9QjbgV8siTbduED4u0hlk0+tjS6/Tuy4n5XCp+l6g==", "cpu": [ "arm64" ], @@ -11099,9 +11046,9 @@ } }, "node_modules/next/node_modules/@next/swc-linux-x64-gnu": { - "version": "14.0.4", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.0.4.tgz", - "integrity": "sha512-/s/Pme3VKfZAfISlYVq2hzFS8AcAIOTnoKupc/j4WlvF6GQ0VouS2Q2KEgPuO1eMBwakWPB1aYFIA4VNVh667A==", + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.1.0.tgz", + "integrity": "sha512-zJ2pnoFYB1F4vmEVlb/eSe+VH679zT1VdXlZKX+pE66grOgjmKJHKacf82g/sWE4MQ4Rk2FMBCRnX+l6/TVYzQ==", "cpu": [ "x64" ], @@ -11114,9 +11061,9 @@ } }, "node_modules/next/node_modules/@next/swc-linux-x64-musl": { - "version": "14.0.4", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.0.4.tgz", - "integrity": "sha512-m8z/6Fyal4L9Bnlxde5g2Mfa1Z7dasMQyhEhskDATpqr+Y0mjOBZcXQ7G5U+vgL22cI4T7MfvgtrM2jdopqWaw==", + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.1.0.tgz", + "integrity": "sha512-rbaIYFt2X9YZBSbH/CwGAjbBG2/MrACCVu2X0+kSykHzHnYH5FjHxwXLkcoJ10cX0aWCEynpu+rP76x0914atg==", "cpu": [ "x64" ], @@ -11129,9 +11076,9 @@ } }, "node_modules/next/node_modules/@next/swc-win32-arm64-msvc": { - "version": "14.0.4", - "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.0.4.tgz", - "integrity": "sha512-7Wv4PRiWIAWbm5XrGz3D8HUkCVDMMz9igffZG4NB1p4u1KoItwx9qjATHz88kwCEal/HXmbShucaslXCQXUM5w==", + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.1.0.tgz", + "integrity": "sha512-o1N5TsYc8f/HpGt39OUQpQ9AKIGApd3QLueu7hXk//2xq5Z9OxmV6sQfNp8C7qYmiOlHYODOGqNNa0e9jvchGQ==", "cpu": [ "arm64" ], @@ -11144,9 +11091,9 @@ } }, "node_modules/next/node_modules/@next/swc-win32-ia32-msvc": { - "version": "14.0.4", - "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.0.4.tgz", - "integrity": "sha512-zLeNEAPULsl0phfGb4kdzF/cAVIfaC7hY+kt0/d+y9mzcZHsMS3hAS829WbJ31DkSlVKQeHEjZHIdhN+Pg7Gyg==", + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.1.0.tgz", + "integrity": "sha512-XXIuB1DBRCFwNO6EEzCTMHT5pauwaSj4SWs7CYnME57eaReAKBXCnkUE80p/pAZcewm7hs+vGvNqDPacEXHVkw==", "cpu": [ "ia32" ], @@ -11159,9 +11106,9 @@ } }, "node_modules/next/node_modules/@next/swc-win32-x64-msvc": { - "version": "14.0.4", - "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.0.4.tgz", - "integrity": "sha512-yEh2+R8qDlDCjxVpzOTEpBLQTEFAcP2A8fUFLaWNap9GitYKkKv1//y2S6XY6zsR4rCOPRpU7plYDR+az2n30A==", + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.1.0.tgz", + "integrity": "sha512-9WEbVRRAqJ3YFVqEZIxUqkiO8l1nool1LmNxygr5HWF8AcSYsEpneUDhmjUVJEzO2A04+oPtZdombzzPPkTtgg==", "cpu": [ "x64" ], @@ -11468,9 +11415,9 @@ } }, "node_modules/openai/node_modules/@types/node": { - "version": "18.19.7", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.7.tgz", - "integrity": "sha512-IGRJfoNX10N/PfrReRZ1br/7SQ+2vF/tK3KXNwzXz82D32z5dMQEoOlFew18nLSN+vMNcLY4GrKfzwi/yWI8/w==", + "version": "18.19.8", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.8.tgz", + "integrity": "sha512-g1pZtPhsvGVTwmeVoexWZLTQaOvXwoSq//pTL0DHeNzUDrFnir4fgETdhjhIxjVnN+hKOuh98+E1eMLnUXstFg==", "peer": true, "dependencies": { "undici-types": "~5.26.4" @@ -12976,9 +12923,9 @@ } }, "node_modules/remove-accents": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/remove-accents/-/remove-accents-0.4.2.tgz", - "integrity": "sha512-7pXIJqJOq5tFgG1A2Zxti3Ht8jJF337m4sowbuHsW30ZnkQFnDzy9qBNhgzX8ZLW4+UBcXiiR7SwR6pokHsxiA==" + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/remove-accents/-/remove-accents-0.5.0.tgz", + "integrity": "sha512-8g3/Otx1eJaVD12e31UbJj1YzdtVvzH85HV7t+9MJYk/u3XmkOUJ5Ys9wQrf9PCPK8+xn4ymzqYCiZl6QWKn+A==" }, "node_modules/require-directory": { "version": "2.1.1", @@ -15559,18 +15506,6 @@ "resolved": "https://registry.npmjs.org/vscode-textmate/-/vscode-textmate-8.0.0.tgz", "integrity": "sha512-AFbieoL7a5LMqcnOF04ji+rpXadgOXnZsxQr//r83kLPr7biP7am3g9zbaZIaBGwBRWeSvoMD4mgPdX3e4NWBg==" }, - "node_modules/watchpack": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz", - "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==", - "dependencies": { - "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.1.2" - }, - "engines": { - "node": ">=10.13.0" - } - }, "node_modules/wcwidth": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", @@ -16041,6 +15976,15 @@ "redis": ">=4.6" } }, + "packages/cache-handler/node_modules/@types/node": { + "version": "20.11.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.5.tgz", + "integrity": "sha512-g557vgQjUUfN76MZAN/dt1z3dzcUsimuysco0KeluHgrPdJXkP/XdAURgyO2W9fZWHRtRBiVKzKn8vyOAwlG+w==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "packages/diffscribe": { "version": "0.2.1", "license": "MIT", @@ -16060,6 +16004,15 @@ "openai": "^4.12.3" } }, + "packages/diffscribe/node_modules/@types/node": { + "version": "20.11.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.5.tgz", + "integrity": "sha512-g557vgQjUUfN76MZAN/dt1z3dzcUsimuysco0KeluHgrPdJXkP/XdAURgyO2W9fZWHRtRBiVKzKn8vyOAwlG+w==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "packages/json-replacer-reviver": { "name": "@neshca/json-replacer-reviver", "version": "1.1.0", @@ -16074,6 +16027,15 @@ "typescript": "5.3.3" } }, + "packages/json-replacer-reviver/node_modules/@types/node": { + "version": "20.11.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.5.tgz", + "integrity": "sha512-g557vgQjUUfN76MZAN/dt1z3dzcUsimuysco0KeluHgrPdJXkP/XdAURgyO2W9fZWHRtRBiVKzKn8vyOAwlG+w==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "packages/server": { "name": "@neshca/server", "version": "0.6.0", @@ -16096,6 +16058,15 @@ "tsx": "4.7.0", "typescript": "5.3.3" } + }, + "packages/server/node_modules/@types/node": { + "version": "20.11.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.5.tgz", + "integrity": "sha512-g557vgQjUUfN76MZAN/dt1z3dzcUsimuysco0KeluHgrPdJXkP/XdAURgyO2W9fZWHRtRBiVKzKn8vyOAwlG+w==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } } } } diff --git a/packages/cache-handler/src/cache-handler.ts b/packages/cache-handler/src/cache-handler.ts index 676e15ed..909cc753 100644 --- a/packages/cache-handler/src/cache-handler.ts +++ b/packages/cache-handler/src/cache-handler.ts @@ -845,4 +845,8 @@ export class IncrementalCache implements CacheHandler { throw new Error("Invariant: Can't determine file path kind"); } } + + resetRequestCache(): void { + // not implemented yet + } } From 3f020299a9f30a24ac5734f57e55e6510221376b Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Fri, 19 Jan 2024 19:42:40 +0300 Subject: [PATCH 066/458] Create changeset file for `@neshca/cache-handler` (#272) --- .changeset/dirty-rivers-flow.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 .changeset/dirty-rivers-flow.md diff --git a/.changeset/dirty-rivers-flow.md b/.changeset/dirty-rivers-flow.md new file mode 100644 index 00000000..1b184eef --- /dev/null +++ b/.changeset/dirty-rivers-flow.md @@ -0,0 +1,5 @@ +--- +'@neshca/cache-handler': patch +--- + +Added the `resetRequestCache` method to match with original `CacheHandler` class. From 187893cff7f25f8b329b61ec930f3fc0c9b7cf5b Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Fri, 19 Jan 2024 22:43:10 +0300 Subject: [PATCH 067/458] Update cache-handler readme and docs banner (#273) --- docs/cache-handler-docs/theme.config.jsx | 4 ++-- packages/cache-handler/README.md | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/cache-handler-docs/theme.config.jsx b/docs/cache-handler-docs/theme.config.jsx index a51ca0b1..cf26fa0e 100644 --- a/docs/cache-handler-docs/theme.config.jsx +++ b/docs/cache-handler-docs/theme.config.jsx @@ -52,8 +52,8 @@ export default { banner: { key: '0.6.0-release', text: ( - - 🎉 Version 0.6.5 is out, offering stale-while-revalidate strategy emulation and codebase improvements! + + 🎉 Next.js stabilized the API, and we are almost there, just a few steps before version 1.0.0! ), }, diff --git a/packages/cache-handler/README.md b/packages/cache-handler/README.md index 23de2d0e..cd999f63 100644 --- a/packages/cache-handler/README.md +++ b/packages/cache-handler/README.md @@ -2,7 +2,7 @@ **Flexible API to replace the default Next.js cache, accommodating custom cache solutions for multi-instance self-hosted deployments** -🎉 Version 0.6.5 is out, offering stale-while-revalidate strategy emulation and codebase improvements! +🎉 Next.js stabilized the API, and we are almost there, just a few steps before version 1.0.0! Check out the [changelog](https://github.com/caching-tools/next-shared-cache/blob/canary/packages/cache-handler/CHANGELOG.md) @@ -62,7 +62,7 @@ Discover the versatility of `@neshca/cache-handler` in the examples section, whe ## Project Status -This project is on its way to a stable release but will remain in beta until Next.js stabilizes [cacheHandler API](https://github.com/vercel/next.js/pull/57953). Any **breaking changes** made to the API will result in a **minor** version increase of the package until it reaches a stable version. You are welcome to try it out and provide feedback. +Next.js stabilized the API, and we are almost there. Any **breaking changes** made to the library will result in a **major** version increase of the package. You are welcome to try it out and provide feedback. ### Roadmap From 6e2bbd7e6e3307cc4f7d0a55553c4271f8cc8c57 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Fri, 19 Jan 2024 22:52:19 +0300 Subject: [PATCH 068/458] Version Packages (#271) Co-authored-by: github-actions[bot] --- .changeset/dirty-rivers-flow.md | 5 ----- .changeset/eight-melons-judge.md | 5 ----- docs/cache-handler-docs/CHANGELOG.md | 6 ++++++ docs/cache-handler-docs/package.json | 2 +- packages/cache-handler/CHANGELOG.md | 6 ++++++ packages/cache-handler/package.json | 2 +- 6 files changed, 14 insertions(+), 12 deletions(-) delete mode 100644 .changeset/dirty-rivers-flow.md delete mode 100644 .changeset/eight-melons-judge.md diff --git a/.changeset/dirty-rivers-flow.md b/.changeset/dirty-rivers-flow.md deleted file mode 100644 index 1b184eef..00000000 --- a/.changeset/dirty-rivers-flow.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@neshca/cache-handler': patch ---- - -Added the `resetRequestCache` method to match with original `CacheHandler` class. diff --git a/.changeset/eight-melons-judge.md b/.changeset/eight-melons-judge.md deleted file mode 100644 index 9ef1d54c..00000000 --- a/.changeset/eight-melons-judge.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'cache-handler-docs': patch ---- - -Updated installation documentation section with stabilized `cacheHandler` Next Config option. diff --git a/docs/cache-handler-docs/CHANGELOG.md b/docs/cache-handler-docs/CHANGELOG.md index e668fb5e..e1fc3e09 100644 --- a/docs/cache-handler-docs/CHANGELOG.md +++ b/docs/cache-handler-docs/CHANGELOG.md @@ -1,5 +1,11 @@ # cache-handler-docs +## 0.6.4 + +### Patch Changes + +- 5ba656c: Updated installation documentation section with stabilized `cacheHandler` Next Config option. + ## 0.6.3 ### Patch Changes diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 600cfdeb..6079eb54 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -1,6 +1,6 @@ { "name": "cache-handler-docs", - "version": "0.6.3", + "version": "0.6.4", "private": true, "scripts": { "build:docs": "next build", diff --git a/packages/cache-handler/CHANGELOG.md b/packages/cache-handler/CHANGELOG.md index 79669c93..0e3bf2f7 100644 --- a/packages/cache-handler/CHANGELOG.md +++ b/packages/cache-handler/CHANGELOG.md @@ -1,5 +1,11 @@ # @neshca/cache-handler +## 0.6.6 + +### Patch Changes + +- 3f02029: Added the `resetRequestCache` method to match with original `CacheHandler` class. + ## 0.6.5 ### Patch Changes diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index f0681981..fc414a13 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -1,6 +1,6 @@ { "name": "@neshca/cache-handler", - "version": "0.6.5", + "version": "0.6.6", "description": "Flexible API to replace the default Next.js cache, accommodating custom cache solutions for multi-instance deployments.", "keywords": [ "cache", From ddf957f268e3ec752b7001612c69e0f07a0c2890 Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Mon, 22 Jan 2024 10:54:05 +0300 Subject: [PATCH 069/458] Add support for ES Modules (#276) --- .changeset/tough-moles-sing.md | 5 +++ .changeset/wicked-games-switch.md | 5 +++ .github/workflows/tests.yml | 2 +- apps/cache-testing/cache-handler-local.js | 13 -------- apps/cache-testing/cache-handler-local.mjs | 13 ++++++++ ...stack.js => cache-handler-redis-stack.mjs} | 12 +++---- ...ngs.js => cache-handler-redis-strings.mjs} | 10 +++--- apps/cache-testing/cache-handler-server.js | 23 ------------- apps/cache-testing/cache-handler-server.mjs | 24 ++++++++++++++ apps/cache-testing/next.config.js | 2 +- .../configuration/development-environment.mdx | 4 +-- .../src/pages/installation.mdx | 33 +++++++++++++++++-- package-lock.json | 4 +-- packages/cache-handler/package.json | 27 ++++++++++----- packages/cache-handler/tsup.config.ts | 2 +- 15 files changed, 113 insertions(+), 66 deletions(-) create mode 100644 .changeset/tough-moles-sing.md create mode 100644 .changeset/wicked-games-switch.md delete mode 100644 apps/cache-testing/cache-handler-local.js create mode 100644 apps/cache-testing/cache-handler-local.mjs rename apps/cache-testing/{cache-handler-redis-stack.js => cache-handler-redis-stack.mjs} (69%) rename apps/cache-testing/{cache-handler-redis-strings.js => cache-handler-redis-strings.mjs} (72%) delete mode 100644 apps/cache-testing/cache-handler-server.js create mode 100644 apps/cache-testing/cache-handler-server.mjs diff --git a/.changeset/tough-moles-sing.md b/.changeset/tough-moles-sing.md new file mode 100644 index 00000000..bcaef1c4 --- /dev/null +++ b/.changeset/tough-moles-sing.md @@ -0,0 +1,5 @@ +--- +'cache-handler-docs': patch +--- + +Added a section with ES Modules example. diff --git a/.changeset/wicked-games-switch.md b/.changeset/wicked-games-switch.md new file mode 100644 index 00000000..afa7e62d --- /dev/null +++ b/.changeset/wicked-games-switch.md @@ -0,0 +1,5 @@ +--- +'@neshca/cache-handler': patch +--- + +Added support for ES Modules. diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index e28583d2..3fc1e160 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -10,7 +10,7 @@ jobs: timeout-minutes: 10 runs-on: ubuntu-latest env: - HANDLER_PATH: ./cache-handler-redis-stack + HANDLER_PATH: ./cache-handler-redis-stack.mjs REDIS_URL: redis://localhost:6379 services: redis: diff --git a/apps/cache-testing/cache-handler-local.js b/apps/cache-testing/cache-handler-local.js deleted file mode 100644 index 9072289e..00000000 --- a/apps/cache-testing/cache-handler-local.js +++ /dev/null @@ -1,13 +0,0 @@ -const { IncrementalCache } = require('@neshca/cache-handler'); -const createLruCache = require('@neshca/cache-handler/local-lru').default; - -IncrementalCache.onCreation(async () => { - const localCache = createLruCache(); - - return { - cache: localCache, - useFileSystem: true, - }; -}); - -module.exports = IncrementalCache; diff --git a/apps/cache-testing/cache-handler-local.mjs b/apps/cache-testing/cache-handler-local.mjs new file mode 100644 index 00000000..54fe25f0 --- /dev/null +++ b/apps/cache-testing/cache-handler-local.mjs @@ -0,0 +1,13 @@ +import { IncrementalCache } from '@neshca/cache-handler'; +import createLruCache from '@neshca/cache-handler/local-lru'; + +IncrementalCache.onCreation(async () => { + const localCache = createLruCache(); + + return { + cache: localCache, + useFileSystem: true, + }; +}); + +export default IncrementalCache; diff --git a/apps/cache-testing/cache-handler-redis-stack.js b/apps/cache-testing/cache-handler-redis-stack.mjs similarity index 69% rename from apps/cache-testing/cache-handler-redis-stack.js rename to apps/cache-testing/cache-handler-redis-stack.mjs index 031273eb..49c2b2ee 100644 --- a/apps/cache-testing/cache-handler-redis-stack.js +++ b/apps/cache-testing/cache-handler-redis-stack.mjs @@ -1,8 +1,8 @@ -const { IncrementalCache } = require('@neshca/cache-handler'); -const createRedisCache = require('@neshca/cache-handler/redis-stack').default; -const createRedisStringsCache = require('@neshca/cache-handler/redis-strings').default; -const createLruCache = require('@neshca/cache-handler/local-lru').default; -const { createClient } = require('redis'); +import { IncrementalCache } from '@neshca/cache-handler'; +import createLruCache from '@neshca/cache-handler/local-lru'; +import createRedisCache from '@neshca/cache-handler/redis-stack'; +import createRedisStringsCache from '@neshca/cache-handler/redis-strings'; +import { createClient } from 'redis'; if (!process.env.REDIS_URL) { console.warn('Make sure that REDIS_URL is added to the .env.local file and loaded properly.'); @@ -38,4 +38,4 @@ IncrementalCache.onCreation(async () => { }; }); -module.exports = IncrementalCache; +export default IncrementalCache; diff --git a/apps/cache-testing/cache-handler-redis-strings.js b/apps/cache-testing/cache-handler-redis-strings.mjs similarity index 72% rename from apps/cache-testing/cache-handler-redis-strings.js rename to apps/cache-testing/cache-handler-redis-strings.mjs index 90731ff0..23d6253b 100644 --- a/apps/cache-testing/cache-handler-redis-strings.js +++ b/apps/cache-testing/cache-handler-redis-strings.mjs @@ -1,7 +1,7 @@ -const { IncrementalCache } = require('@neshca/cache-handler'); -const createRedisCache = require('@neshca/cache-handler/redis-strings').default; -const createLruCache = require('@neshca/cache-handler/local-lru').default; -const { createClient } = require('redis'); +import { IncrementalCache } from '@neshca/cache-handler'; +import createLruCache from '@neshca/cache-handler/local-lru'; +import createRedisCache from '@neshca/cache-handler/redis-strings'; +import { createClient } from 'redis'; if (!process.env.REDIS_URL) { console.warn('Make sure that REDIS_URL is added to the .env.local file and loaded properly.'); @@ -36,4 +36,4 @@ IncrementalCache.onCreation(async () => { }; }); -module.exports = IncrementalCache; +export default IncrementalCache; diff --git a/apps/cache-testing/cache-handler-server.js b/apps/cache-testing/cache-handler-server.js deleted file mode 100644 index 43ed7b92..00000000 --- a/apps/cache-testing/cache-handler-server.js +++ /dev/null @@ -1,23 +0,0 @@ -const { scheduler } = require('node:timers/promises'); -const { IncrementalCache } = require('@neshca/cache-handler'); -const createServerCache = require('@neshca/cache-handler/server').default; -const createLruCache = require('@neshca/cache-handler/local-lru').default; - -const baseUrl = process.env.REMOTE_CACHE_SERVER_BASE_URL ?? 'http://localhost:8080'; - -IncrementalCache.onCreation(async () => { - await scheduler.wait(1000); - - const httpCache = createServerCache({ - baseUrl, - }); - - const localCache = createLruCache(); - - return { - cache: [httpCache, localCache], - useFileSystem: true, - }; -}); - -module.exports = IncrementalCache; diff --git a/apps/cache-testing/cache-handler-server.mjs b/apps/cache-testing/cache-handler-server.mjs new file mode 100644 index 00000000..c1486a24 --- /dev/null +++ b/apps/cache-testing/cache-handler-server.mjs @@ -0,0 +1,24 @@ +import Timers from 'node:timers/promises'; + +import { IncrementalCache } from '@neshca/cache-handler'; +import createLruCache from '@neshca/cache-handler/local-lru'; +import createServerCache from '@neshca/cache-handler/server'; + +const baseUrl = process.env.REMOTE_CACHE_SERVER_BASE_URL ?? 'http://localhost:8080'; + +IncrementalCache.onCreation(async () => { + await Timers.scheduler.wait(1000); + + const httpCache = createServerCache({ + baseUrl, + }); + + const localCache = createLruCache(); + + return { + cache: [httpCache, localCache], + useFileSystem: true, + }; +}); + +export default IncrementalCache; diff --git a/apps/cache-testing/next.config.js b/apps/cache-testing/next.config.js index f4166623..daf0dfd8 100644 --- a/apps/cache-testing/next.config.js +++ b/apps/cache-testing/next.config.js @@ -1,6 +1,6 @@ const path = require('node:path'); -const cacheHandler = require.resolve(process.env.HANDLER_PATH ?? './cache-handler-redis-stack'); +const cacheHandler = require.resolve(process.env.HANDLER_PATH ?? './cache-handler-redis-stack.mjs'); /** @type {import('next').NextConfig} */ const nextConfig = { diff --git a/docs/cache-handler-docs/src/pages/configuration/development-environment.mdx b/docs/cache-handler-docs/src/pages/configuration/development-environment.mdx index 52f5ac0f..886fb624 100644 --- a/docs/cache-handler-docs/src/pages/configuration/development-environment.mdx +++ b/docs/cache-handler-docs/src/pages/configuration/development-environment.mdx @@ -6,11 +6,11 @@ The easiest way to turn off the cache handler in a development environment is to ```js filename="next.config.js" copy const nextConfig = { - cacheHandler: process.env.NODE_ENV === 'production' ? require.resolve('./cache-handler') : undefined, + cacheHandler: process.env.NODE_ENV === 'production' ? require.resolve('./cache-handler.js') : undefined, // Use `experimental` option instead of the `cacheHandler` property when using Next.js versions from 13.5.1 to 14.0.4 /* experimental: { incrementalCacheHandlerPath: - process.env.NODE_ENV === 'production' ? require.resolve('./cache-handler') : undefined, + process.env.NODE_ENV === 'production' ? require.resolve('./cache-handler.js') : undefined, }, */ }; ``` diff --git a/docs/cache-handler-docs/src/pages/installation.mdx b/docs/cache-handler-docs/src/pages/installation.mdx index 46e1cdf0..47daae80 100644 --- a/docs/cache-handler-docs/src/pages/installation.mdx +++ b/docs/cache-handler-docs/src/pages/installation.mdx @@ -52,7 +52,7 @@ pnpm create next-app --example cache-handler-redis cache-handler-redis-app const { IncrementalCache } = require('@neshca/cache-handler'); IncrementalCache.onCreation(async () => { - // Don't do this in production. This is just an example. + // Don't use Map in production. This is just an example. const cacheStore = new Map(); const cache = { @@ -73,16 +73,43 @@ pnpm create next-app --example cache-handler-redis cache-handler-redis-app module.exports = IncrementalCache; ``` + EcmaScript modules can be used by adding the `.mjs` extension to the file and using an `import` statement instead of a `require` call: + + ```js filename="cache-handler.mjs" copy + import { IncrementalCache } from '@neshca/cache-handler'; + + IncrementalCache.onCreation(async () => { + const cacheStore = new Map(); + + const cache = { + async get(key) { + return cacheStore.get(key); + }, + async set(key, value) { + cacheStore.set(key, value); + }, + }; + + return { + cache, + useFileSystem: true, + }; + }); + + export default IncrementalCache; + ``` + 3. **Integrate with Next.js**: Update your `next.config.js` to utilize the cache handler, ensuring it's only active in production: ```js filename="next.config.js" copy const nextConfig = { - cacheHandler: process.env.NODE_ENV === 'production' ? require.resolve('./cache-handler') : undefined, + // './cache-handler.mjs' in case you're using EcmaScript modules. + cacheHandler: process.env.NODE_ENV === 'production' ? require.resolve('./cache-handler.js') : undefined, // Use `experimental` option instead of the `cacheHandler` property when using Next.js versions from 13.5.1 to 14.0.4 /* experimental: { incrementalCacheHandlerPath: - process.env.NODE_ENV === 'production' ? require.resolve('./cache-handler') : undefined, + process.env.NODE_ENV === 'production' ? require.resolve('./cache-handler.js') : undefined, }, */ }; diff --git a/package-lock.json b/package-lock.json index 3b3950d0..02028dc4 100644 --- a/package-lock.json +++ b/package-lock.json @@ -114,7 +114,7 @@ } }, "docs/cache-handler-docs": { - "version": "0.6.3", + "version": "0.6.4", "dependencies": { "next": "14.1.0", "nextra": "2.13.2", @@ -15954,7 +15954,7 @@ }, "packages/cache-handler": { "name": "@neshca/cache-handler", - "version": "0.6.5", + "version": "0.6.6", "license": "MIT", "dependencies": { "@neshca/json-replacer-reviver": "*", diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index fc414a13..d67e12a0 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -23,29 +23,38 @@ }, "type": "module", "exports": { - ".": "./dist/cache-handler.cjs", - "./helpers": "./dist/helpers/helpers.cjs", - "./*": "./dist/handlers/*.cjs" + ".": { + "require": "./dist/cache-handler.cjs", + "import": "./dist/cache-handler.js" + }, + "./helpers": { + "require": "./dist/helpers/helpers.cjs", + "import": "./dist/helpers/helpers.js" + }, + "./*": { + "require": "./dist/handlers/*.cjs", + "import": "./dist/handlers/*.js" + } }, "typesVersions": { "*": { "*": [ - "dist/cache-handler.d.cts" + "dist/cache-handler.d.ts" ], "helpers": [ - "dist/helpers/helpers.d.cts" + "dist/helpers/helpers.d.ts" ], "redis-stack": [ - "dist/handlers/redis-stack.d.cts" + "dist/handlers/redis-stack.d.ts" ], "redis-strings": [ - "dist/handlers/redis-strings.d.cts" + "dist/handlers/redis-strings.d.ts" ], "server": [ - "dist/handlers/server.d.cts" + "dist/handlers/server.d.ts" ], "local-lru": [ - "dist/handlers/local-lru.d.cts" + "dist/handlers/local-lru.d.ts" ] } }, diff --git a/packages/cache-handler/tsup.config.ts b/packages/cache-handler/tsup.config.ts index a390f7cd..d8d58220 100644 --- a/packages/cache-handler/tsup.config.ts +++ b/packages/cache-handler/tsup.config.ts @@ -6,7 +6,7 @@ export const tsup = defineConfig({ splitting: false, outDir: 'dist', clean: false, - format: ['cjs'], + format: ['cjs', 'esm'], dts: { resolve: true }, target: 'node18', noExternal: ['@neshca/json-replacer-reviver', 'lru-cache'], From 76a42c7b4267c8f0bf99889c2afffb28323d3022 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Mon, 22 Jan 2024 11:04:15 +0300 Subject: [PATCH 070/458] Version Packages (#277) Co-authored-by: github-actions[bot] --- .changeset/tough-moles-sing.md | 5 ----- .changeset/wicked-games-switch.md | 5 ----- docs/cache-handler-docs/CHANGELOG.md | 6 ++++++ docs/cache-handler-docs/package.json | 2 +- packages/cache-handler/CHANGELOG.md | 6 ++++++ packages/cache-handler/package.json | 2 +- 6 files changed, 14 insertions(+), 12 deletions(-) delete mode 100644 .changeset/tough-moles-sing.md delete mode 100644 .changeset/wicked-games-switch.md diff --git a/.changeset/tough-moles-sing.md b/.changeset/tough-moles-sing.md deleted file mode 100644 index bcaef1c4..00000000 --- a/.changeset/tough-moles-sing.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'cache-handler-docs': patch ---- - -Added a section with ES Modules example. diff --git a/.changeset/wicked-games-switch.md b/.changeset/wicked-games-switch.md deleted file mode 100644 index afa7e62d..00000000 --- a/.changeset/wicked-games-switch.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@neshca/cache-handler': patch ---- - -Added support for ES Modules. diff --git a/docs/cache-handler-docs/CHANGELOG.md b/docs/cache-handler-docs/CHANGELOG.md index e1fc3e09..8ba5f76c 100644 --- a/docs/cache-handler-docs/CHANGELOG.md +++ b/docs/cache-handler-docs/CHANGELOG.md @@ -1,5 +1,11 @@ # cache-handler-docs +## 0.6.5 + +### Patch Changes + +- ddf957f: Added a section with ES Modules example. + ## 0.6.4 ### Patch Changes diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 6079eb54..8f736c42 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -1,6 +1,6 @@ { "name": "cache-handler-docs", - "version": "0.6.4", + "version": "0.6.5", "private": true, "scripts": { "build:docs": "next build", diff --git a/packages/cache-handler/CHANGELOG.md b/packages/cache-handler/CHANGELOG.md index 0e3bf2f7..6e97903f 100644 --- a/packages/cache-handler/CHANGELOG.md +++ b/packages/cache-handler/CHANGELOG.md @@ -1,5 +1,11 @@ # @neshca/cache-handler +## 0.6.7 + +### Patch Changes + +- ddf957f: Added support for ES Modules. + ## 0.6.6 ### Patch Changes diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index d67e12a0..59cdd2e3 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -1,6 +1,6 @@ { "name": "@neshca/cache-handler", - "version": "0.6.6", + "version": "0.6.7", "description": "Flexible API to replace the default Next.js cache, accommodating custom cache solutions for multi-instance deployments.", "keywords": [ "cache", From ed605584bfe51e0afbfea5d6bb410b15cc9f3956 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 23 Jan 2024 05:13:21 +0300 Subject: [PATCH 071/458] Bump @playwright/test from 1.41.0 to 1.41.1 (#278) Bumps [@playwright/test](https://github.com/microsoft/playwright) from 1.41.0 to 1.41.1. - [Release notes](https://github.com/microsoft/playwright/releases) - [Commits](https://github.com/microsoft/playwright/compare/v1.41.0...v1.41.1) --- updated-dependencies: - dependency-name: "@playwright/test" dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- package-lock.json | 28 ++++++++++++++-------------- 2 files changed, 15 insertions(+), 15 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 1774abd5..f0b4001f 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -25,7 +25,7 @@ "@neshca/json-replacer-reviver": "*", "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.1.1-canary.1", - "@playwright/test": "1.41.0", + "@playwright/test": "1.41.1", "@types/node": "20.11.5", "@types/react": "18.2.48", "@types/react-dom": "18.2.18", diff --git a/package-lock.json b/package-lock.json index 02028dc4..165cb545 100644 --- a/package-lock.json +++ b/package-lock.json @@ -45,7 +45,7 @@ "@neshca/json-replacer-reviver": "*", "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.1.1-canary.1", - "@playwright/test": "1.41.0", + "@playwright/test": "1.41.1", "@types/node": "20.11.5", "@types/react": "18.2.48", "@types/react-dom": "18.2.18", @@ -114,7 +114,7 @@ } }, "docs/cache-handler-docs": { - "version": "0.6.4", + "version": "0.6.5", "dependencies": { "next": "14.1.0", "nextra": "2.13.2", @@ -2483,12 +2483,12 @@ } }, "node_modules/@playwright/test": { - "version": "1.41.0", - "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.41.0.tgz", - "integrity": "sha512-Grvzj841THwtpBOrfiHOeYTJQxDRnKofMSzCiV8XeyLWu3o89qftQ4BCKfkziJhSUQRd0utKhrddtIsiraIwmw==", + "version": "1.41.1", + "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.41.1.tgz", + "integrity": "sha512-9g8EWTjiQ9yFBXc6HjCWe41msLpxEX0KhmfmPl9RPLJdfzL4F0lg2BdJ91O9azFdl11y1pmpwdjBiSxvqc+btw==", "dev": true, "dependencies": { - "playwright": "1.41.0" + "playwright": "1.41.1" }, "bin": { "playwright": "cli.js" @@ -11814,12 +11814,12 @@ } }, "node_modules/playwright": { - "version": "1.41.0", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.41.0.tgz", - "integrity": "sha512-XOsfl5ZtAik/T9oek4V0jAypNlaCNzuKOwVhqhgYT3os6kH34PzbRb74F0VWcLYa5WFdnmxl7qyAHBXvPv7lqQ==", + "version": "1.41.1", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.41.1.tgz", + "integrity": "sha512-gdZAWG97oUnbBdRL3GuBvX3nDDmUOuqzV/D24dytqlKt+eI5KbwusluZRGljx1YoJKZ2NRPaeWiFTeGZO7SosQ==", "dev": true, "dependencies": { - "playwright-core": "1.41.0" + "playwright-core": "1.41.1" }, "bin": { "playwright": "cli.js" @@ -11832,9 +11832,9 @@ } }, "node_modules/playwright-core": { - "version": "1.41.0", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.41.0.tgz", - "integrity": "sha512-UGKASUhXmvqm2Lxa1fNr8sFwAtqjpgBRr9jQ7XBI8Rn5uFiEowGUGwrruUQsVPIom4bk7Lt+oLGpXobnXzrBIw==", + "version": "1.41.1", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.41.1.tgz", + "integrity": "sha512-/KPO5DzXSMlxSX77wy+HihKGOunh3hqndhqeo/nMxfigiKzogn8kfL0ZBDu0L1RKgan5XHCPmn6zXd2NUJgjhg==", "dev": true, "bin": { "playwright-core": "cli.js" @@ -15954,7 +15954,7 @@ }, "packages/cache-handler": { "name": "@neshca/cache-handler", - "version": "0.6.6", + "version": "0.6.7", "license": "MIT", "dependencies": { "@neshca/json-replacer-reviver": "*", From c1444bc1ae1cb919a601651d5f498fcde23ea275 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 23 Jan 2024 05:48:59 +0300 Subject: [PATCH 072/458] Bump pm2 from 5.3.0 to 5.3.1 (#280) Bumps [pm2](https://github.com/Unitech/pm2) from 5.3.0 to 5.3.1. - [Release notes](https://github.com/Unitech/pm2/releases) - [Changelog](https://github.com/Unitech/pm2/blob/master/CHANGELOG.md) - [Commits](https://github.com/Unitech/pm2/compare/5.3.0...v5.3.1) --- updated-dependencies: - dependency-name: pm2 dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- package-lock.json | 36 ++++++++++++++++----------------- 2 files changed, 19 insertions(+), 19 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index f0b4001f..faa3a2a6 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -32,7 +32,7 @@ "dotenv-cli": "7.3.0", "eslint-config-neshca": "*", "fastify": "4.25.2", - "pm2": "5.3.0", + "pm2": "5.3.1", "redis": "4.6.12", "rimraf": "5.0.5", "tsx": "4.7.0", diff --git a/package-lock.json b/package-lock.json index 165cb545..ff8ade68 100644 --- a/package-lock.json +++ b/package-lock.json @@ -52,7 +52,7 @@ "dotenv-cli": "7.3.0", "eslint-config-neshca": "*", "fastify": "4.25.2", - "pm2": "5.3.0", + "pm2": "5.3.1", "redis": "4.6.12", "rimraf": "5.0.5", "tsx": "4.7.0", @@ -2640,15 +2640,15 @@ "dev": true }, "node_modules/@pm2/js-api": { - "version": "0.6.7", - "resolved": "https://registry.npmjs.org/@pm2/js-api/-/js-api-0.6.7.tgz", - "integrity": "sha512-jiJUhbdsK+5C4zhPZNnyA3wRI01dEc6a2GhcQ9qI38DyIk+S+C8iC3fGjcjUbt/viLYKPjlAaE+hcT2/JMQPXw==", + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/@pm2/js-api/-/js-api-0.8.0.tgz", + "integrity": "sha512-nmWzrA/BQZik3VBz+npRcNIu01kdBhWL0mxKmP1ciF/gTcujPTQqt027N9fc1pK9ERM8RipFhymw7RcmCyOEYA==", "dev": true, "dependencies": { "async": "^2.6.3", - "axios": "^0.21.0", "debug": "~4.3.1", "eventemitter2": "^6.3.1", + "extrareqp2": "^1.0.0", "ws": "^7.0.0" }, "engines": { @@ -3818,15 +3818,6 @@ "node": ">=4" } }, - "node_modules/axios": { - "version": "0.21.4", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.4.tgz", - "integrity": "sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg==", - "dev": true, - "dependencies": { - "follow-redirects": "^1.14.0" - } - }, "node_modules/axobject-query": { "version": "3.2.1", "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-3.2.1.tgz", @@ -6932,6 +6923,15 @@ "node": ">=4" } }, + "node_modules/extrareqp2": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/extrareqp2/-/extrareqp2-1.0.0.tgz", + "integrity": "sha512-Gum0g1QYb6wpPJCVypWP3bbIuaibcFiJcpuPM10YSXp/tzqi84x9PJageob+eN4xVRIOto4wjSGNLyMD54D2xA==", + "dev": true, + "dependencies": { + "follow-redirects": "^1.14.0" + } + }, "node_modules/fast-content-type-parse": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/fast-content-type-parse/-/fast-content-type-parse-1.1.0.tgz", @@ -11853,14 +11853,14 @@ } }, "node_modules/pm2": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/pm2/-/pm2-5.3.0.tgz", - "integrity": "sha512-xscmQiAAf6ArVmKhjKTeeN8+Td7ZKnuZFFPw1DGkdFPR/0Iyx+m+1+OpCdf9+HQopX3VPc9/wqPQHqVOfHum9w==", + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/pm2/-/pm2-5.3.1.tgz", + "integrity": "sha512-DLVQHpSR1EegaTaRH3KbRXxpPVaqYwAp3uHSCtCsS++LSErvk07WSxuUnntFblBRqNU/w2KQyqs12mSq5wurkg==", "dev": true, "dependencies": { "@pm2/agent": "~2.0.0", "@pm2/io": "~5.0.0", - "@pm2/js-api": "~0.6.7", + "@pm2/js-api": "~0.8.0", "@pm2/pm2-version-check": "latest", "async": "~3.2.0", "blessed": "0.1.81", From a9775ec8ad4d4d55122e6dfe186e566309158b34 Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Tue, 23 Jan 2024 05:58:48 +0300 Subject: [PATCH 073/458] Ban Next.js auto updated (#282) --- .github/dependabot.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/dependabot.yml b/.github/dependabot.yml index 73141ae7..4ddead6b 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -10,9 +10,9 @@ updates: open-pull-requests-limit: 20 ignore: - dependency-name: 'next' - versions: ['14.0.x'] + versions: ['14.x.x'] - dependency-name: '@next/eslint-plugin-next' - versions: ['14.0.x'] + versions: ['14.x.x'] groups: next-js: patterns: From 1d38d8d4e19df6a84814215f05c8e03b8b15e591 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 25 Jan 2024 12:18:33 +0300 Subject: [PATCH 074/458] Bump the definitely-typed group with 1 update (#285) Bumps the definitely-typed group with 1 update: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node). Updates `@types/node` from 20.11.5 to 20.11.6 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) --- updated-dependencies: - dependency-name: "@types/node" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- internal/backend/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 113 ++++---------------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 10 files changed, 29 insertions(+), 102 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index faa3a2a6..2d3e1283 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -26,7 +26,7 @@ "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.1.1-canary.1", "@playwright/test": "1.41.1", - "@types/node": "20.11.5", + "@types/node": "20.11.6", "@types/react": "18.2.48", "@types/react-dom": "18.2.18", "dotenv-cli": "7.3.0", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 8f736c42..a3bbd655 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -19,7 +19,7 @@ "devDependencies": { "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.1.0", - "@types/node": "20.11.5", + "@types/node": "20.11.6", "@types/react": "18.2.48", "@types/react-dom": "18.2.18", "eslint-config-neshca": "*", diff --git a/internal/backend/package.json b/internal/backend/package.json index de6c117c..7435bf7a 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -17,7 +17,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.11.5", + "@types/node": "20.11.6", "eslint-config-neshca": "*", "pino-pretty": "10.3.1", "rimraf": "5.0.5", diff --git a/internal/next-common/package.json b/internal/next-common/package.json index a105f676..ca9b354a 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -17,7 +17,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.11.5", + "@types/node": "20.11.6", "eslint-config-neshca": "*", "rimraf": "5.0.5", "typescript": "5.3.3" diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index 34e11b7d..3423981b 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -18,7 +18,7 @@ "devDependencies": { "@neshca/next-common": "*", "@neshca/tsconfig": "*", - "@types/node": "20.11.5", + "@types/node": "20.11.6", "eslint-config-neshca": "*", "rimraf": "5.0.5", "typescript": "5.3.3" diff --git a/package-lock.json b/package-lock.json index ff8ade68..10b14089 100644 --- a/package-lock.json +++ b/package-lock.json @@ -46,7 +46,7 @@ "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.1.1-canary.1", "@playwright/test": "1.41.1", - "@types/node": "20.11.5", + "@types/node": "20.11.6", "@types/react": "18.2.48", "@types/react-dom": "18.2.18", "dotenv-cli": "7.3.0", @@ -59,15 +59,6 @@ "typescript": "5.3.3" } }, - "apps/cache-testing/node_modules/@types/node": { - "version": "20.11.5", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.5.tgz", - "integrity": "sha512-g557vgQjUUfN76MZAN/dt1z3dzcUsimuysco0KeluHgrPdJXkP/XdAURgyO2W9fZWHRtRBiVKzKn8vyOAwlG+w==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "apps/cache-testing/node_modules/next": { "version": "14.1.1-canary.1", "resolved": "https://registry.npmjs.org/next/-/next-14.1.1-canary.1.tgz", @@ -125,7 +116,7 @@ "devDependencies": { "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.1.0", - "@types/node": "20.11.5", + "@types/node": "20.11.6", "@types/react": "18.2.48", "@types/react-dom": "18.2.18", "eslint-config-neshca": "*", @@ -141,15 +132,6 @@ "glob": "10.3.10" } }, - "docs/cache-handler-docs/node_modules/@types/node": { - "version": "20.11.5", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.5.tgz", - "integrity": "sha512-g557vgQjUUfN76MZAN/dt1z3dzcUsimuysco0KeluHgrPdJXkP/XdAURgyO2W9fZWHRtRBiVKzKn8vyOAwlG+w==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "docs/cache-handler-docs/node_modules/nextra": { "version": "2.13.2", "resolved": "https://registry.npmjs.org/nextra/-/nextra-2.13.2.tgz", @@ -240,7 +222,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.11.5", + "@types/node": "20.11.6", "eslint-config-neshca": "*", "pino-pretty": "10.3.1", "rimraf": "5.0.5", @@ -248,15 +230,6 @@ "typescript": "5.3.3" } }, - "internal/backend/node_modules/@types/node": { - "version": "20.11.5", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.5.tgz", - "integrity": "sha512-g557vgQjUUfN76MZAN/dt1z3dzcUsimuysco0KeluHgrPdJXkP/XdAURgyO2W9fZWHRtRBiVKzKn8vyOAwlG+w==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "internal/eslint-config-neshca": { "version": "0.0.0", "license": "MIT", @@ -335,21 +308,12 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.11.5", + "@types/node": "20.11.6", "eslint-config-neshca": "*", "rimraf": "5.0.5", "typescript": "5.3.3" } }, - "internal/next-common/node_modules/@types/node": { - "version": "20.11.5", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.5.tgz", - "integrity": "sha512-g557vgQjUUfN76MZAN/dt1z3dzcUsimuysco0KeluHgrPdJXkP/XdAURgyO2W9fZWHRtRBiVKzKn8vyOAwlG+w==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "internal/next-common/node_modules/next": { "version": "14.1.1-canary.1", "resolved": "https://registry.npmjs.org/next/-/next-14.1.1-canary.1.tgz", @@ -405,21 +369,12 @@ "devDependencies": { "@neshca/next-common": "*", "@neshca/tsconfig": "*", - "@types/node": "20.11.5", + "@types/node": "20.11.6", "eslint-config-neshca": "*", "rimraf": "5.0.5", "typescript": "5.3.3" } }, - "internal/next-lru-cache/node_modules/@types/node": { - "version": "20.11.5", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.5.tgz", - "integrity": "sha512-g557vgQjUUfN76MZAN/dt1z3dzcUsimuysco0KeluHgrPdJXkP/XdAURgyO2W9fZWHRtRBiVKzKn8vyOAwlG+w==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "internal/prettier-config": { "name": "@neshca/prettier-config", "version": "0.0.0", @@ -1805,6 +1760,11 @@ "fs-extra": "^8.1.0" } }, + "node_modules/@manypkg/find-root/node_modules/@types/node": { + "version": "12.20.55", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", + "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" + }, "node_modules/@manypkg/find-root/node_modules/fs-extra": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", @@ -3077,9 +3037,12 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "12.20.55", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", - "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" + "version": "20.11.6", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.6.tgz", + "integrity": "sha512-+EOokTnksGVgip2PbYbr3xnR7kZigh4LbybAfBAw5BpnQ+FqBYUsvCEjYd70IXKlbohQ64mzEYmMtlWUY8q//Q==", + "dependencies": { + "undici-types": "~5.26.4" + } }, "node_modules/@types/node-fetch": { "version": "2.6.11", @@ -15964,7 +15927,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@neshca/tsconfig": "*", - "@types/node": "20.11.5", + "@types/node": "20.11.6", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", @@ -15976,15 +15939,6 @@ "redis": ">=4.6" } }, - "packages/cache-handler/node_modules/@types/node": { - "version": "20.11.5", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.5.tgz", - "integrity": "sha512-g557vgQjUUfN76MZAN/dt1z3dzcUsimuysco0KeluHgrPdJXkP/XdAURgyO2W9fZWHRtRBiVKzKn8vyOAwlG+w==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "packages/diffscribe": { "version": "0.2.1", "license": "MIT", @@ -15993,7 +15947,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.11.5", + "@types/node": "20.11.6", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", @@ -16004,22 +15958,13 @@ "openai": "^4.12.3" } }, - "packages/diffscribe/node_modules/@types/node": { - "version": "20.11.5", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.5.tgz", - "integrity": "sha512-g557vgQjUUfN76MZAN/dt1z3dzcUsimuysco0KeluHgrPdJXkP/XdAURgyO2W9fZWHRtRBiVKzKn8vyOAwlG+w==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "packages/json-replacer-reviver": { "name": "@neshca/json-replacer-reviver", "version": "1.1.0", "license": "MIT", "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.11.5", + "@types/node": "20.11.6", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", @@ -16027,15 +15972,6 @@ "typescript": "5.3.3" } }, - "packages/json-replacer-reviver/node_modules/@types/node": { - "version": "20.11.5", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.5.tgz", - "integrity": "sha512-g557vgQjUUfN76MZAN/dt1z3dzcUsimuysco0KeluHgrPdJXkP/XdAURgyO2W9fZWHRtRBiVKzKn8vyOAwlG+w==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "packages/server": { "name": "@neshca/server", "version": "0.6.0", @@ -16051,22 +15987,13 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@neshca/tsconfig": "*", - "@types/node": "20.11.5", + "@types/node": "20.11.6", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", "tsx": "4.7.0", "typescript": "5.3.3" } - }, - "packages/server/node_modules/@types/node": { - "version": "20.11.5", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.5.tgz", - "integrity": "sha512-g557vgQjUUfN76MZAN/dt1z3dzcUsimuysco0KeluHgrPdJXkP/XdAURgyO2W9fZWHRtRBiVKzKn8vyOAwlG+w==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } } } } diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 59cdd2e3..32aad26d 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -75,7 +75,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@neshca/tsconfig": "*", - "@types/node": "20.11.5", + "@types/node": "20.11.6", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index 4380e3ff..f85c8f64 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -27,7 +27,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.11.5", + "@types/node": "20.11.6", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 9824f544..df2543f0 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -30,7 +30,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.11.5", + "@types/node": "20.11.6", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", diff --git a/packages/server/package.json b/packages/server/package.json index 21d7352a..2f839b46 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -34,7 +34,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@neshca/tsconfig": "*", - "@types/node": "20.11.5", + "@types/node": "20.11.6", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", From f3b30a5424083151a96ae4e91f640e55d6e1ff69 Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Fri, 26 Jan 2024 13:52:11 +0300 Subject: [PATCH 075/458] Refactor redis-stack Handler to use Promise.allSettled for set callback (#286) --- .changeset/small-windows-poke.md | 5 +++++ packages/cache-handler/src/handlers/redis-stack.ts | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) create mode 100644 .changeset/small-windows-poke.md diff --git a/.changeset/small-windows-poke.md b/.changeset/small-windows-poke.md new file mode 100644 index 00000000..6af93b9c --- /dev/null +++ b/.changeset/small-windows-poke.md @@ -0,0 +1,5 @@ +--- +'@neshca/cache-handler': patch +--- + +Refactor `redis-stack` Handler to use `Promise.allSettled` for `set` callback. diff --git a/packages/cache-handler/src/handlers/redis-stack.ts b/packages/cache-handler/src/handlers/redis-stack.ts index 6c352e54..e8723e6d 100644 --- a/packages/cache-handler/src/handlers/redis-stack.ts +++ b/packages/cache-handler/src/handlers/redis-stack.ts @@ -126,7 +126,7 @@ export default async function createCache({ commands.push(client.expire(options, keyPrefix + key, evictionDelay)); } - await Promise.all(commands); + await Promise.allSettled(commands); }, async getRevalidatedTags() { assertClientIsReady(); From eeae9ca0ba37e0306832d6fd0bce1a174fdce772 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Fri, 26 Jan 2024 14:01:37 +0300 Subject: [PATCH 076/458] Version Packages (#287) Co-authored-by: github-actions[bot] --- .changeset/small-windows-poke.md | 5 ----- packages/cache-handler/CHANGELOG.md | 6 ++++++ packages/cache-handler/package.json | 2 +- 3 files changed, 7 insertions(+), 6 deletions(-) delete mode 100644 .changeset/small-windows-poke.md diff --git a/.changeset/small-windows-poke.md b/.changeset/small-windows-poke.md deleted file mode 100644 index 6af93b9c..00000000 --- a/.changeset/small-windows-poke.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@neshca/cache-handler': patch ---- - -Refactor `redis-stack` Handler to use `Promise.allSettled` for `set` callback. diff --git a/packages/cache-handler/CHANGELOG.md b/packages/cache-handler/CHANGELOG.md index 6e97903f..77bb2d80 100644 --- a/packages/cache-handler/CHANGELOG.md +++ b/packages/cache-handler/CHANGELOG.md @@ -1,5 +1,11 @@ # @neshca/cache-handler +## 0.6.8 + +### Patch Changes + +- f3b30a5: Refactor `redis-stack` Handler to use `Promise.allSettled` for `set` callback. + ## 0.6.7 ### Patch Changes diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 32aad26d..117751a3 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -1,6 +1,6 @@ { "name": "@neshca/cache-handler", - "version": "0.6.7", + "version": "0.6.8", "description": "Flexible API to replace the default Next.js cache, accommodating custom cache solutions for multi-instance deployments.", "keywords": [ "cache", From 9e95a9639846ae092c602d304e58ab7a2113a209 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 27 Jan 2024 11:16:25 +0300 Subject: [PATCH 077/458] Bump lru-cache from 10.1.0 to 10.2.0 (#289) Bumps [lru-cache](https://github.com/isaacs/node-lru-cache) from 10.1.0 to 10.2.0. - [Changelog](https://github.com/isaacs/node-lru-cache/blob/main/CHANGELOG.md) - [Commits](https://github.com/isaacs/node-lru-cache/compare/v10.1.0...v10.2.0) --- updated-dependencies: - dependency-name: lru-cache dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- internal/next-lru-cache/package.json | 2 +- package-lock.json | 12 ++++++------ packages/cache-handler/package.json | 2 +- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index 3423981b..720af4c2 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -13,7 +13,7 @@ "lint:fix": "eslint --fix ." }, "dependencies": { - "lru-cache": "10.1.0" + "lru-cache": "10.2.0" }, "devDependencies": { "@neshca/next-common": "*", diff --git a/package-lock.json b/package-lock.json index 10b14089..a864cdfb 100644 --- a/package-lock.json +++ b/package-lock.json @@ -364,7 +364,7 @@ "version": "0.0.0", "license": "MIT", "dependencies": { - "lru-cache": "10.1.0" + "lru-cache": "10.2.0" }, "devDependencies": { "@neshca/next-common": "*", @@ -9205,9 +9205,9 @@ } }, "node_modules/lru-cache": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.1.0.tgz", - "integrity": "sha512-/1clY/ui8CzjKFyjdvwPWJUYKiFVXG2I2cY0ssG7h4+hwk+XOIX7ZSG9Q7TW8TW3Kp3BUSqgFWBLgL4PJ+Blag==", + "version": "10.2.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.0.tgz", + "integrity": "sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q==", "engines": { "node": "14 || >=16.14" } @@ -15917,11 +15917,11 @@ }, "packages/cache-handler": { "name": "@neshca/cache-handler", - "version": "0.6.7", + "version": "0.6.8", "license": "MIT", "dependencies": { "@neshca/json-replacer-reviver": "*", - "lru-cache": "10.1.0" + "lru-cache": "10.2.0" }, "devDependencies": { "@neshca/next-common": "*", diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 117751a3..8e383275 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -69,7 +69,7 @@ }, "dependencies": { "@neshca/json-replacer-reviver": "*", - "lru-cache": "10.1.0" + "lru-cache": "10.2.0" }, "devDependencies": { "@neshca/next-common": "*", From dd18667e7d8c44e6c79235cc6c6554d575c24e41 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 27 Jan 2024 12:58:22 +0300 Subject: [PATCH 078/458] Bump the definitely-typed group with 1 update (#288) Bumps the definitely-typed group with 1 update: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node). Updates `@types/node` from 20.11.6 to 20.11.7 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) --- updated-dependencies: - dependency-name: "@types/node" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- internal/backend/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 24 ++++++++++----------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 10 files changed, 21 insertions(+), 21 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 2d3e1283..b752867a 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -26,7 +26,7 @@ "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.1.1-canary.1", "@playwright/test": "1.41.1", - "@types/node": "20.11.6", + "@types/node": "20.11.7", "@types/react": "18.2.48", "@types/react-dom": "18.2.18", "dotenv-cli": "7.3.0", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index a3bbd655..03179ece 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -19,7 +19,7 @@ "devDependencies": { "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.1.0", - "@types/node": "20.11.6", + "@types/node": "20.11.7", "@types/react": "18.2.48", "@types/react-dom": "18.2.18", "eslint-config-neshca": "*", diff --git a/internal/backend/package.json b/internal/backend/package.json index 7435bf7a..feba9e31 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -17,7 +17,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.11.6", + "@types/node": "20.11.7", "eslint-config-neshca": "*", "pino-pretty": "10.3.1", "rimraf": "5.0.5", diff --git a/internal/next-common/package.json b/internal/next-common/package.json index ca9b354a..3495f27a 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -17,7 +17,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.11.6", + "@types/node": "20.11.7", "eslint-config-neshca": "*", "rimraf": "5.0.5", "typescript": "5.3.3" diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index 720af4c2..8dea35c8 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -18,7 +18,7 @@ "devDependencies": { "@neshca/next-common": "*", "@neshca/tsconfig": "*", - "@types/node": "20.11.6", + "@types/node": "20.11.7", "eslint-config-neshca": "*", "rimraf": "5.0.5", "typescript": "5.3.3" diff --git a/package-lock.json b/package-lock.json index a864cdfb..3dcf59cd 100644 --- a/package-lock.json +++ b/package-lock.json @@ -46,7 +46,7 @@ "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.1.1-canary.1", "@playwright/test": "1.41.1", - "@types/node": "20.11.6", + "@types/node": "20.11.7", "@types/react": "18.2.48", "@types/react-dom": "18.2.18", "dotenv-cli": "7.3.0", @@ -116,7 +116,7 @@ "devDependencies": { "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.1.0", - "@types/node": "20.11.6", + "@types/node": "20.11.7", "@types/react": "18.2.48", "@types/react-dom": "18.2.18", "eslint-config-neshca": "*", @@ -222,7 +222,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.11.6", + "@types/node": "20.11.7", "eslint-config-neshca": "*", "pino-pretty": "10.3.1", "rimraf": "5.0.5", @@ -308,7 +308,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.11.6", + "@types/node": "20.11.7", "eslint-config-neshca": "*", "rimraf": "5.0.5", "typescript": "5.3.3" @@ -369,7 +369,7 @@ "devDependencies": { "@neshca/next-common": "*", "@neshca/tsconfig": "*", - "@types/node": "20.11.6", + "@types/node": "20.11.7", "eslint-config-neshca": "*", "rimraf": "5.0.5", "typescript": "5.3.3" @@ -3037,9 +3037,9 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "20.11.6", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.6.tgz", - "integrity": "sha512-+EOokTnksGVgip2PbYbr3xnR7kZigh4LbybAfBAw5BpnQ+FqBYUsvCEjYd70IXKlbohQ64mzEYmMtlWUY8q//Q==", + "version": "20.11.7", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.7.tgz", + "integrity": "sha512-GPmeN1C3XAyV5uybAf4cMLWT9fDWcmQhZVtMFu7OR32WjrqGG+Wnk2V1d0bmtUyE/Zy1QJ9BxyiTih9z8Oks8A==", "dependencies": { "undici-types": "~5.26.4" } @@ -15927,7 +15927,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@neshca/tsconfig": "*", - "@types/node": "20.11.6", + "@types/node": "20.11.7", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", @@ -15947,7 +15947,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.11.6", + "@types/node": "20.11.7", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", @@ -15964,7 +15964,7 @@ "license": "MIT", "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.11.6", + "@types/node": "20.11.7", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", @@ -15987,7 +15987,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@neshca/tsconfig": "*", - "@types/node": "20.11.6", + "@types/node": "20.11.7", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 8e383275..98c778d8 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -75,7 +75,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@neshca/tsconfig": "*", - "@types/node": "20.11.6", + "@types/node": "20.11.7", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index f85c8f64..60cd4393 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -27,7 +27,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.11.6", + "@types/node": "20.11.7", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index df2543f0..d4522d5c 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -30,7 +30,7 @@ }, "devDependencies": { "@neshca/tsconfig": "*", - "@types/node": "20.11.6", + "@types/node": "20.11.7", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", diff --git a/packages/server/package.json b/packages/server/package.json index 2f839b46..ae5b2a75 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -34,7 +34,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@neshca/tsconfig": "*", - "@types/node": "20.11.6", + "@types/node": "20.11.7", "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", From 8570f6e8737ee33159cf16535f8745cd0fe9e3d0 Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Sat, 27 Jan 2024 21:20:22 +0300 Subject: [PATCH 079/458] Refactor debug flag initialization in cache handler and update deps (#291) --- .changeset/dirty-doors-jump.md | 5 + package-lock.json | 749 +++++++++++--------- packages/cache-handler/src/cache-handler.ts | 2 +- 3 files changed, 417 insertions(+), 339 deletions(-) create mode 100644 .changeset/dirty-doors-jump.md diff --git a/.changeset/dirty-doors-jump.md b/.changeset/dirty-doors-jump.md new file mode 100644 index 00000000..00d3a0d2 --- /dev/null +++ b/.changeset/dirty-doors-jump.md @@ -0,0 +1,5 @@ +--- +'@neshca/cache-handler': patch +--- + +Refactor debug flag initialization in cache-handler.ts diff --git a/package-lock.json b/package-lock.json index 3dcf59cd..d00b409d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -59,6 +59,15 @@ "typescript": "5.3.3" } }, + "apps/cache-testing/node_modules/@types/node": { + "version": "20.11.7", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.7.tgz", + "integrity": "sha512-GPmeN1C3XAyV5uybAf4cMLWT9fDWcmQhZVtMFu7OR32WjrqGG+Wnk2V1d0bmtUyE/Zy1QJ9BxyiTih9z8Oks8A==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "apps/cache-testing/node_modules/next": { "version": "14.1.1-canary.1", "resolved": "https://registry.npmjs.org/next/-/next-14.1.1-canary.1.tgz", @@ -132,6 +141,15 @@ "glob": "10.3.10" } }, + "docs/cache-handler-docs/node_modules/@types/node": { + "version": "20.11.7", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.7.tgz", + "integrity": "sha512-GPmeN1C3XAyV5uybAf4cMLWT9fDWcmQhZVtMFu7OR32WjrqGG+Wnk2V1d0bmtUyE/Zy1QJ9BxyiTih9z8Oks8A==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "docs/cache-handler-docs/node_modules/nextra": { "version": "2.13.2", "resolved": "https://registry.npmjs.org/nextra/-/nextra-2.13.2.tgz", @@ -230,6 +248,15 @@ "typescript": "5.3.3" } }, + "internal/backend/node_modules/@types/node": { + "version": "20.11.7", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.7.tgz", + "integrity": "sha512-GPmeN1C3XAyV5uybAf4cMLWT9fDWcmQhZVtMFu7OR32WjrqGG+Wnk2V1d0bmtUyE/Zy1QJ9BxyiTih9z8Oks8A==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "internal/eslint-config-neshca": { "version": "0.0.0", "license": "MIT", @@ -314,6 +341,15 @@ "typescript": "5.3.3" } }, + "internal/next-common/node_modules/@types/node": { + "version": "20.11.7", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.7.tgz", + "integrity": "sha512-GPmeN1C3XAyV5uybAf4cMLWT9fDWcmQhZVtMFu7OR32WjrqGG+Wnk2V1d0bmtUyE/Zy1QJ9BxyiTih9z8Oks8A==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "internal/next-common/node_modules/next": { "version": "14.1.1-canary.1", "resolved": "https://registry.npmjs.org/next/-/next-14.1.1-canary.1.tgz", @@ -375,6 +411,15 @@ "typescript": "5.3.3" } }, + "internal/next-lru-cache/node_modules/@types/node": { + "version": "20.11.7", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.7.tgz", + "integrity": "sha512-GPmeN1C3XAyV5uybAf4cMLWT9fDWcmQhZVtMFu7OR32WjrqGG+Wnk2V1d0bmtUyE/Zy1QJ9BxyiTih9z8Oks8A==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "internal/prettier-config": { "name": "@neshca/prettier-config", "version": "0.0.0", @@ -513,9 +558,9 @@ } }, "node_modules/@babel/core": { - "version": "7.23.7", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.23.7.tgz", - "integrity": "sha512-+UpDgowcmqe36d4NwqvKsyPMlOLNGMsfMmQ5WGCu+siCe3t3dfe9njrzGfdN4qq+bcNUt0+Vw6haRxBOycs4dw==", + "version": "7.23.9", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.23.9.tgz", + "integrity": "sha512-5q0175NOjddqpvvzU+kDiSOAk4PfdO6FvwCWoQ6RO7rTzEe8vlo+4HVfcnAREhD4npMs0e9uZypjTwzZPCf/cw==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.2.0", @@ -523,11 +568,11 @@ "@babel/generator": "^7.23.6", "@babel/helper-compilation-targets": "^7.23.6", "@babel/helper-module-transforms": "^7.23.3", - "@babel/helpers": "^7.23.7", - "@babel/parser": "^7.23.6", - "@babel/template": "^7.22.15", - "@babel/traverse": "^7.23.7", - "@babel/types": "^7.23.6", + "@babel/helpers": "^7.23.9", + "@babel/parser": "^7.23.9", + "@babel/template": "^7.23.9", + "@babel/traverse": "^7.23.9", + "@babel/types": "^7.23.9", "convert-source-map": "^2.0.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -552,9 +597,9 @@ } }, "node_modules/@babel/eslint-parser": { - "version": "7.23.3", - "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.23.3.tgz", - "integrity": "sha512-9bTuNlyx7oSstodm1cR1bECj4fkiknsDa1YniISkJemMY3DGhJNYBECbe6QD/q54mp2J8VO66jW3/7uP//iFCw==", + "version": "7.23.9", + "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.23.9.tgz", + "integrity": "sha512-xPndlO7qxiJbn0ATvfXQBjCS7qApc9xmKHArgI/FTEFxXas5dnjC/VqM37lfZun9dclRYcn+YQAr6uDFy0bB2g==", "dev": true, "dependencies": { "@nicolo-ribaudo/eslint-scope-5-internals": "5.1.1-v1", @@ -758,14 +803,14 @@ } }, "node_modules/@babel/helpers": { - "version": "7.23.8", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.23.8.tgz", - "integrity": "sha512-KDqYz4PiOWvDFrdHLPhKtCThtIcKVy6avWD2oG4GEvyQ+XDZwHD4YQd+H2vNMnq2rkdxsDkU82T+Vk8U/WXHRQ==", + "version": "7.23.9", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.23.9.tgz", + "integrity": "sha512-87ICKgU5t5SzOT7sBMfCOZQ2rHjRU+Pcb9BoILMYz600W6DkVRLFBPwQ18gwUVvggqXivaUakpnxWQGbpywbBQ==", "dev": true, "dependencies": { - "@babel/template": "^7.22.15", - "@babel/traverse": "^7.23.7", - "@babel/types": "^7.23.6" + "@babel/template": "^7.23.9", + "@babel/traverse": "^7.23.9", + "@babel/types": "^7.23.9" }, "engines": { "node": ">=6.9.0" @@ -785,9 +830,9 @@ } }, "node_modules/@babel/parser": { - "version": "7.23.6", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.6.tgz", - "integrity": "sha512-Z2uID7YJ7oNvAI20O9X0bblw7Qqs8Q2hFy0R9tAfnfLkp5MW0UH9eUvnDSnFwKZ0AvgS1ucqR4KzvVHgnke1VQ==", + "version": "7.23.9", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.9.tgz", + "integrity": "sha512-9tcKgqKbs3xGJ+NtKF2ndOBBLVwPjl1SHxPQkd36r3Dlirw3xWUeGaTbqr7uGZcTaxkVNwc+03SVP7aCdWrTlA==", "dev": true, "bin": { "parser": "bin/babel-parser.js" @@ -797,9 +842,9 @@ } }, "node_modules/@babel/runtime": { - "version": "7.23.8", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.23.8.tgz", - "integrity": "sha512-Y7KbAP984rn1VGMbGqKmBLio9V7y5Je9GvU4rQPCPinCyNfUcToxIXl06d59URp/F3LwinvODxab5N/G6qggkw==", + "version": "7.23.9", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.23.9.tgz", + "integrity": "sha512-0CX6F+BI2s9dkUqr08KFrAIZgNFj75rdBU/DjCyYLIaV/quFjkk6T+EJ2LkZHyZTbEV4L5p97mNkUsHl2wLFAw==", "dependencies": { "regenerator-runtime": "^0.14.0" }, @@ -808,23 +853,23 @@ } }, "node_modules/@babel/template": { - "version": "7.22.15", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.15.tgz", - "integrity": "sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==", + "version": "7.23.9", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.23.9.tgz", + "integrity": "sha512-+xrD2BWLpvHKNmX2QbpdpsBaWnRxahMwJjO+KZk2JOElj5nSmKezyS1B4u+QbHMTX69t4ukm6hh9lsYQ7GHCKA==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.22.13", - "@babel/parser": "^7.22.15", - "@babel/types": "^7.22.15" + "@babel/code-frame": "^7.23.5", + "@babel/parser": "^7.23.9", + "@babel/types": "^7.23.9" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/traverse": { - "version": "7.23.7", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.23.7.tgz", - "integrity": "sha512-tY3mM8rH9jM0YHFGyfC0/xf+SB5eKUu7HPj7/k3fpi9dAlsMc5YbQvDi0Sh2QTPXqMhyaAtzAr807TIyfQrmyg==", + "version": "7.23.9", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.23.9.tgz", + "integrity": "sha512-I/4UJ9vs90OkBtY6iiiTORVMyIhJ4kAVmsKo9KFc8UOxMeUfi2hvtIBsET5u9GizXE6/GFSuKCTNfgCswuEjRg==", "dev": true, "dependencies": { "@babel/code-frame": "^7.23.5", @@ -833,8 +878,8 @@ "@babel/helper-function-name": "^7.23.0", "@babel/helper-hoist-variables": "^7.22.5", "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/parser": "^7.23.6", - "@babel/types": "^7.23.6", + "@babel/parser": "^7.23.9", + "@babel/types": "^7.23.9", "debug": "^4.3.1", "globals": "^11.1.0" }, @@ -852,9 +897,9 @@ } }, "node_modules/@babel/types": { - "version": "7.23.6", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.23.6.tgz", - "integrity": "sha512-+uarb83brBzPKN38NX1MkB6vb6+mwvR6amUulqAE7ccQw1pEl+bCia9TbdG1lsnFP7lZySvUn37CHyXQdfTwzg==", + "version": "7.23.9", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.23.9.tgz", + "integrity": "sha512-dQjSq/7HaSjRM43FFGnv5keM2HsxpmyV1PfaSVm0nzzjwwTmjOe6J4bC8e3+pTEIgHaHj+1ZlLThRJ2auc/w1Q==", "dev": true, "dependencies": { "@babel/helper-string-parser": "^7.23.4", @@ -1110,9 +1155,9 @@ } }, "node_modules/@esbuild/aix-ppc64": { - "version": "0.19.11", - "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.19.11.tgz", - "integrity": "sha512-FnzU0LyE3ySQk7UntJO4+qIiQgI7KoODnZg5xzXIrFJlKd2P2gwHsHY4927xj9y5PJmJSzULiUCWmv7iWnNa7g==", + "version": "0.19.12", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.19.12.tgz", + "integrity": "sha512-bmoCYyWdEL3wDQIVbcyzRyeKLgk2WtWLTWz1ZIAZF/EGbNOwSA6ew3PftJ1PqMiOOGu0OyFMzG53L0zqIpPeNA==", "cpu": [ "ppc64" ], @@ -1126,9 +1171,9 @@ } }, "node_modules/@esbuild/android-arm": { - "version": "0.19.11", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.19.11.tgz", - "integrity": "sha512-5OVapq0ClabvKvQ58Bws8+wkLCV+Rxg7tUVbo9xu034Nm536QTII4YzhaFriQ7rMrorfnFKUsArD2lqKbFY4vw==", + "version": "0.19.12", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.19.12.tgz", + "integrity": "sha512-qg/Lj1mu3CdQlDEEiWrlC4eaPZ1KztwGJ9B6J+/6G+/4ewxJg7gqj8eVYWvao1bXrqGiW2rsBZFSX3q2lcW05w==", "cpu": [ "arm" ], @@ -1142,9 +1187,9 @@ } }, "node_modules/@esbuild/android-arm64": { - "version": "0.19.11", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.19.11.tgz", - "integrity": "sha512-aiu7K/5JnLj//KOnOfEZ0D90obUkRzDMyqd/wNAUQ34m4YUPVhRZpnqKV9uqDGxT7cToSDnIHsGooyIczu9T+Q==", + "version": "0.19.12", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.19.12.tgz", + "integrity": "sha512-P0UVNGIienjZv3f5zq0DP3Nt2IE/3plFzuaS96vihvD0Hd6H/q4WXUGpCxD/E8YrSXfNyRPbpTq+T8ZQioSuPA==", "cpu": [ "arm64" ], @@ -1158,9 +1203,9 @@ } }, "node_modules/@esbuild/android-x64": { - "version": "0.19.11", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.19.11.tgz", - "integrity": "sha512-eccxjlfGw43WYoY9QgB82SgGgDbibcqyDTlk3l3C0jOVHKxrjdc9CTwDUQd0vkvYg5um0OH+GpxYvp39r+IPOg==", + "version": "0.19.12", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.19.12.tgz", + "integrity": "sha512-3k7ZoUW6Q6YqhdhIaq/WZ7HwBpnFBlW905Fa4s4qWJyiNOgT1dOqDiVAQFwBH7gBRZr17gLrlFCRzF6jFh7Kew==", "cpu": [ "x64" ], @@ -1174,9 +1219,9 @@ } }, "node_modules/@esbuild/darwin-arm64": { - "version": "0.19.11", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.19.11.tgz", - "integrity": "sha512-ETp87DRWuSt9KdDVkqSoKoLFHYTrkyz2+65fj9nfXsaV3bMhTCjtQfw3y+um88vGRKRiF7erPrh/ZuIdLUIVxQ==", + "version": "0.19.12", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.19.12.tgz", + "integrity": "sha512-B6IeSgZgtEzGC42jsI+YYu9Z3HKRxp8ZT3cqhvliEHovq8HSX2YX8lNocDn79gCKJXOSaEot9MVYky7AKjCs8g==", "cpu": [ "arm64" ], @@ -1190,9 +1235,9 @@ } }, "node_modules/@esbuild/darwin-x64": { - "version": "0.19.11", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.19.11.tgz", - "integrity": "sha512-fkFUiS6IUK9WYUO/+22omwetaSNl5/A8giXvQlcinLIjVkxwTLSktbF5f/kJMftM2MJp9+fXqZ5ezS7+SALp4g==", + "version": "0.19.12", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.19.12.tgz", + "integrity": "sha512-hKoVkKzFiToTgn+41qGhsUJXFlIjxI/jSYeZf3ugemDYZldIXIxhvwN6erJGlX4t5h417iFuheZ7l+YVn05N3A==", "cpu": [ "x64" ], @@ -1206,9 +1251,9 @@ } }, "node_modules/@esbuild/freebsd-arm64": { - "version": "0.19.11", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.19.11.tgz", - "integrity": "sha512-lhoSp5K6bxKRNdXUtHoNc5HhbXVCS8V0iZmDvyWvYq9S5WSfTIHU2UGjcGt7UeS6iEYp9eeymIl5mJBn0yiuxA==", + "version": "0.19.12", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.19.12.tgz", + "integrity": "sha512-4aRvFIXmwAcDBw9AueDQ2YnGmz5L6obe5kmPT8Vd+/+x/JMVKCgdcRwH6APrbpNXsPz+K653Qg8HB/oXvXVukA==", "cpu": [ "arm64" ], @@ -1222,9 +1267,9 @@ } }, "node_modules/@esbuild/freebsd-x64": { - "version": "0.19.11", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.19.11.tgz", - "integrity": "sha512-JkUqn44AffGXitVI6/AbQdoYAq0TEullFdqcMY/PCUZ36xJ9ZJRtQabzMA+Vi7r78+25ZIBosLTOKnUXBSi1Kw==", + "version": "0.19.12", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.19.12.tgz", + "integrity": "sha512-EYoXZ4d8xtBoVN7CEwWY2IN4ho76xjYXqSXMNccFSx2lgqOG/1TBPW0yPx1bJZk94qu3tX0fycJeeQsKovA8gg==", "cpu": [ "x64" ], @@ -1238,9 +1283,9 @@ } }, "node_modules/@esbuild/linux-arm": { - "version": "0.19.11", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.19.11.tgz", - "integrity": "sha512-3CRkr9+vCV2XJbjwgzjPtO8T0SZUmRZla+UL1jw+XqHZPkPgZiyWvbDvl9rqAN8Zl7qJF0O/9ycMtjU67HN9/Q==", + "version": "0.19.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.19.12.tgz", + "integrity": "sha512-J5jPms//KhSNv+LO1S1TX1UWp1ucM6N6XuL6ITdKWElCu8wXP72l9MM0zDTzzeikVyqFE6U8YAV9/tFyj0ti+w==", "cpu": [ "arm" ], @@ -1254,9 +1299,9 @@ } }, "node_modules/@esbuild/linux-arm64": { - "version": "0.19.11", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.19.11.tgz", - "integrity": "sha512-LneLg3ypEeveBSMuoa0kwMpCGmpu8XQUh+mL8XXwoYZ6Be2qBnVtcDI5azSvh7vioMDhoJFZzp9GWp9IWpYoUg==", + "version": "0.19.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.19.12.tgz", + "integrity": "sha512-EoTjyYyLuVPfdPLsGVVVC8a0p1BFFvtpQDB/YLEhaXyf/5bczaGeN15QkR+O4S5LeJ92Tqotve7i1jn35qwvdA==", "cpu": [ "arm64" ], @@ -1270,9 +1315,9 @@ } }, "node_modules/@esbuild/linux-ia32": { - "version": "0.19.11", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.19.11.tgz", - "integrity": "sha512-caHy++CsD8Bgq2V5CodbJjFPEiDPq8JJmBdeyZ8GWVQMjRD0sU548nNdwPNvKjVpamYYVL40AORekgfIubwHoA==", + "version": "0.19.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.19.12.tgz", + "integrity": "sha512-Thsa42rrP1+UIGaWz47uydHSBOgTUnwBwNq59khgIwktK6x60Hivfbux9iNR0eHCHzOLjLMLfUMLCypBkZXMHA==", "cpu": [ "ia32" ], @@ -1286,9 +1331,9 @@ } }, "node_modules/@esbuild/linux-loong64": { - "version": "0.19.11", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.19.11.tgz", - "integrity": "sha512-ppZSSLVpPrwHccvC6nQVZaSHlFsvCQyjnvirnVjbKSHuE5N24Yl8F3UwYUUR1UEPaFObGD2tSvVKbvR+uT1Nrg==", + "version": "0.19.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.19.12.tgz", + "integrity": "sha512-LiXdXA0s3IqRRjm6rV6XaWATScKAXjI4R4LoDlvO7+yQqFdlr1Bax62sRwkVvRIrwXxvtYEHHI4dm50jAXkuAA==", "cpu": [ "loong64" ], @@ -1302,9 +1347,9 @@ } }, "node_modules/@esbuild/linux-mips64el": { - "version": "0.19.11", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.19.11.tgz", - "integrity": "sha512-B5x9j0OgjG+v1dF2DkH34lr+7Gmv0kzX6/V0afF41FkPMMqaQ77pH7CrhWeR22aEeHKaeZVtZ6yFwlxOKPVFyg==", + "version": "0.19.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.19.12.tgz", + "integrity": "sha512-fEnAuj5VGTanfJ07ff0gOA6IPsvrVHLVb6Lyd1g2/ed67oU1eFzL0r9WL7ZzscD+/N6i3dWumGE1Un4f7Amf+w==", "cpu": [ "mips64el" ], @@ -1318,9 +1363,9 @@ } }, "node_modules/@esbuild/linux-ppc64": { - "version": "0.19.11", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.19.11.tgz", - "integrity": "sha512-MHrZYLeCG8vXblMetWyttkdVRjQlQUb/oMgBNurVEnhj4YWOr4G5lmBfZjHYQHHN0g6yDmCAQRR8MUHldvvRDA==", + "version": "0.19.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.19.12.tgz", + "integrity": "sha512-nYJA2/QPimDQOh1rKWedNOe3Gfc8PabU7HT3iXWtNUbRzXS9+vgB0Fjaqr//XNbd82mCxHzik2qotuI89cfixg==", "cpu": [ "ppc64" ], @@ -1334,9 +1379,9 @@ } }, "node_modules/@esbuild/linux-riscv64": { - "version": "0.19.11", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.19.11.tgz", - "integrity": "sha512-f3DY++t94uVg141dozDu4CCUkYW+09rWtaWfnb3bqe4w5NqmZd6nPVBm+qbz7WaHZCoqXqHz5p6CM6qv3qnSSQ==", + "version": "0.19.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.19.12.tgz", + "integrity": "sha512-2MueBrlPQCw5dVJJpQdUYgeqIzDQgw3QtiAHUC4RBz9FXPrskyyU3VI1hw7C0BSKB9OduwSJ79FTCqtGMWqJHg==", "cpu": [ "riscv64" ], @@ -1350,9 +1395,9 @@ } }, "node_modules/@esbuild/linux-s390x": { - "version": "0.19.11", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.19.11.tgz", - "integrity": "sha512-A5xdUoyWJHMMlcSMcPGVLzYzpcY8QP1RtYzX5/bS4dvjBGVxdhuiYyFwp7z74ocV7WDc0n1harxmpq2ePOjI0Q==", + "version": "0.19.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.19.12.tgz", + "integrity": "sha512-+Pil1Nv3Umes4m3AZKqA2anfhJiVmNCYkPchwFJNEJN5QxmTs1uzyy4TvmDrCRNT2ApwSari7ZIgrPeUx4UZDg==", "cpu": [ "s390x" ], @@ -1366,9 +1411,9 @@ } }, "node_modules/@esbuild/linux-x64": { - "version": "0.19.11", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.19.11.tgz", - "integrity": "sha512-grbyMlVCvJSfxFQUndw5mCtWs5LO1gUlwP4CDi4iJBbVpZcqLVT29FxgGuBJGSzyOxotFG4LoO5X+M1350zmPA==", + "version": "0.19.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.19.12.tgz", + "integrity": "sha512-B71g1QpxfwBvNrfyJdVDexenDIt1CiDN1TIXLbhOw0KhJzE78KIFGX6OJ9MrtC0oOqMWf+0xop4qEU8JrJTwCg==", "cpu": [ "x64" ], @@ -1382,9 +1427,9 @@ } }, "node_modules/@esbuild/netbsd-x64": { - "version": "0.19.11", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.19.11.tgz", - "integrity": "sha512-13jvrQZJc3P230OhU8xgwUnDeuC/9egsjTkXN49b3GcS5BKvJqZn86aGM8W9pd14Kd+u7HuFBMVtrNGhh6fHEQ==", + "version": "0.19.12", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.19.12.tgz", + "integrity": "sha512-3ltjQ7n1owJgFbuC61Oj++XhtzmymoCihNFgT84UAmJnxJfm4sYCiSLTXZtE00VWYpPMYc+ZQmB6xbSdVh0JWA==", "cpu": [ "x64" ], @@ -1398,9 +1443,9 @@ } }, "node_modules/@esbuild/openbsd-x64": { - "version": "0.19.11", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.19.11.tgz", - "integrity": "sha512-ysyOGZuTp6SNKPE11INDUeFVVQFrhcNDVUgSQVDzqsqX38DjhPEPATpid04LCoUr2WXhQTEZ8ct/EgJCUDpyNw==", + "version": "0.19.12", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.19.12.tgz", + "integrity": "sha512-RbrfTB9SWsr0kWmb9srfF+L933uMDdu9BIzdA7os2t0TXhCRjrQyCeOt6wVxr79CKD4c+p+YhCj31HBkYcXebw==", "cpu": [ "x64" ], @@ -1414,9 +1459,9 @@ } }, "node_modules/@esbuild/sunos-x64": { - "version": "0.19.11", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.19.11.tgz", - "integrity": "sha512-Hf+Sad9nVwvtxy4DXCZQqLpgmRTQqyFyhT3bZ4F2XlJCjxGmRFF0Shwn9rzhOYRB61w9VMXUkxlBy56dk9JJiQ==", + "version": "0.19.12", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.19.12.tgz", + "integrity": "sha512-HKjJwRrW8uWtCQnQOz9qcU3mUZhTUQvi56Q8DPTLLB+DawoiQdjsYq+j+D3s9I8VFtDr+F9CjgXKKC4ss89IeA==", "cpu": [ "x64" ], @@ -1430,9 +1475,9 @@ } }, "node_modules/@esbuild/win32-arm64": { - "version": "0.19.11", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.19.11.tgz", - "integrity": "sha512-0P58Sbi0LctOMOQbpEOvOL44Ne0sqbS0XWHMvvrg6NE5jQ1xguCSSw9jQeUk2lfrXYsKDdOe6K+oZiwKPilYPQ==", + "version": "0.19.12", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.19.12.tgz", + "integrity": "sha512-URgtR1dJnmGvX864pn1B2YUYNzjmXkuJOIqG2HdU62MVS4EHpU2946OZoTMnRUHklGtJdJZ33QfzdjGACXhn1A==", "cpu": [ "arm64" ], @@ -1446,9 +1491,9 @@ } }, "node_modules/@esbuild/win32-ia32": { - "version": "0.19.11", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.19.11.tgz", - "integrity": "sha512-6YOrWS+sDJDmshdBIQU+Uoyh7pQKrdykdefC1avn76ss5c+RN6gut3LZA4E2cH5xUEp5/cA0+YxRaVtRAb0xBg==", + "version": "0.19.12", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.19.12.tgz", + "integrity": "sha512-+ZOE6pUkMOJfmxmBZElNOx72NKpIa/HFOMGzu8fqzQJ5kgf6aTGrcJaFsNiVMH4JKpMipyK+7k0n2UXN7a8YKQ==", "cpu": [ "ia32" ], @@ -1462,9 +1507,9 @@ } }, "node_modules/@esbuild/win32-x64": { - "version": "0.19.11", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.19.11.tgz", - "integrity": "sha512-vfkhltrjCAb603XaFhqhAF4LGDi2M4OrCRrFusyQ+iTLQ/o60QQXxc9cZC/FFpihBI9N1Grn6SMKVJ4KP7Fuiw==", + "version": "0.19.12", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.19.12.tgz", + "integrity": "sha512-T1QyPSDCyMXaO3pzBkF96E8xMkiRYbUEZADd29SyPGabqxMViNoii+NcK7eWJAEoU6RZyEm5lVSIjTmcdoB9HA==", "cpu": [ "x64" ], @@ -1740,9 +1785,9 @@ "dev": true }, "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.21", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.21.tgz", - "integrity": "sha512-SRfKmRe1KvYnxjEMtxEr+J4HIeMX5YBg/qhRHpxEIGjhX1rshcHlnFUE9K0GazhVKWM7B+nARSkV8LuvJdJ5/g==", + "version": "0.3.22", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.22.tgz", + "integrity": "sha512-Wf963MzWtA2sjrNt+g18IAln9lKnlRp+K2eH4jjIoF1wYeq3aMREpG09xhlhdzS0EjwU7qmUJYangWa+151vZw==", "dev": true, "dependencies": { "@jridgewell/resolve-uri": "^3.1.0", @@ -1760,11 +1805,6 @@ "fs-extra": "^8.1.0" } }, - "node_modules/@manypkg/find-root/node_modules/@types/node": { - "version": "12.20.55", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", - "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" - }, "node_modules/@manypkg/find-root/node_modules/fs-extra": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", @@ -1912,30 +1952,30 @@ } }, "node_modules/@napi-rs/simple-git": { - "version": "0.1.9", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git/-/simple-git-0.1.9.tgz", - "integrity": "sha512-qKzDS0+VjMvVyU28px+C6zlD1HKy83NIdYzfMQWa/g/V1iG/Ic8uwrS2ihHfm7mp7X0PPrmINLiTTi6ieUIKfw==", + "version": "0.1.11", + "resolved": "https://registry.npmjs.org/@napi-rs/simple-git/-/simple-git-0.1.11.tgz", + "integrity": "sha512-z14cPCBrtDKKVJ3q4GS5gmXEithGUAt+U8sICgA9i3UFdxJKD4H5rCnO7BVC3htdE9g6OR2w2IcHAL56AjpFbg==", "engines": { "node": ">= 10" }, "optionalDependencies": { - "@napi-rs/simple-git-android-arm-eabi": "0.1.9", - "@napi-rs/simple-git-android-arm64": "0.1.9", - "@napi-rs/simple-git-darwin-arm64": "0.1.9", - "@napi-rs/simple-git-darwin-x64": "0.1.9", - "@napi-rs/simple-git-linux-arm-gnueabihf": "0.1.9", - "@napi-rs/simple-git-linux-arm64-gnu": "0.1.9", - "@napi-rs/simple-git-linux-arm64-musl": "0.1.9", - "@napi-rs/simple-git-linux-x64-gnu": "0.1.9", - "@napi-rs/simple-git-linux-x64-musl": "0.1.9", - "@napi-rs/simple-git-win32-arm64-msvc": "0.1.9", - "@napi-rs/simple-git-win32-x64-msvc": "0.1.9" + "@napi-rs/simple-git-android-arm-eabi": "0.1.11", + "@napi-rs/simple-git-android-arm64": "0.1.11", + "@napi-rs/simple-git-darwin-arm64": "0.1.11", + "@napi-rs/simple-git-darwin-x64": "0.1.11", + "@napi-rs/simple-git-linux-arm-gnueabihf": "0.1.11", + "@napi-rs/simple-git-linux-arm64-gnu": "0.1.11", + "@napi-rs/simple-git-linux-arm64-musl": "0.1.11", + "@napi-rs/simple-git-linux-x64-gnu": "0.1.11", + "@napi-rs/simple-git-linux-x64-musl": "0.1.11", + "@napi-rs/simple-git-win32-arm64-msvc": "0.1.11", + "@napi-rs/simple-git-win32-x64-msvc": "0.1.11" } }, "node_modules/@napi-rs/simple-git-android-arm-eabi": { - "version": "0.1.9", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-android-arm-eabi/-/simple-git-android-arm-eabi-0.1.9.tgz", - "integrity": "sha512-9D4JnfePMpgL4pg9aMUX7/TIWEUQ+Tgx8n3Pf8TNCMGjUbImJyYsDSLJzbcv9wH7srgn4GRjSizXFJHAPjzEug==", + "version": "0.1.11", + "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-android-arm-eabi/-/simple-git-android-arm-eabi-0.1.11.tgz", + "integrity": "sha512-wt4Wu9MxvKzEqT4iwodFs7Nrc31K73gR5hM7VnlO6iLELmUQZ5JVJkYoFWgzLQWtzIC48W2+zFMbBgY6+F2rZg==", "cpu": [ "arm" ], @@ -1948,9 +1988,9 @@ } }, "node_modules/@napi-rs/simple-git-android-arm64": { - "version": "0.1.9", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-android-arm64/-/simple-git-android-arm64-0.1.9.tgz", - "integrity": "sha512-Krilsw0gPrrASZzudNEl9pdLuNbhoTK0j7pUbfB8FRifpPdFB/zouwuEm0aSnsDXN4ftGrmGG82kuiR/2MeoPg==", + "version": "0.1.11", + "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-android-arm64/-/simple-git-android-arm64-0.1.11.tgz", + "integrity": "sha512-5/Aj6N44CxwhV3TZWRZ4vGqFj4wb2/a2gwvUZJo9Dwik9Spls7As8LaLe7pOptiGPH0GRP3H5kTT7I6twHNgqw==", "cpu": [ "arm64" ], @@ -1963,9 +2003,9 @@ } }, "node_modules/@napi-rs/simple-git-darwin-arm64": { - "version": "0.1.9", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-darwin-arm64/-/simple-git-darwin-arm64-0.1.9.tgz", - "integrity": "sha512-H/F09nDgYjv4gcFrZBgdTKkZEepqt0KLYcCJuUADuxkKupmjLdecMhypXLk13AzvLW4UQI7NlLTLDXUFLyr2BA==", + "version": "0.1.11", + "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-darwin-arm64/-/simple-git-darwin-arm64-0.1.11.tgz", + "integrity": "sha512-vdVsJUNcRsGVu0hBmLZdxxgwIbJA/Ias8NKWze8MZkZ3VyBwhg0uAzFgESEL3/USAgeCCHjF3uwVki8E+iPq1w==", "cpu": [ "arm64" ], @@ -1978,9 +2018,9 @@ } }, "node_modules/@napi-rs/simple-git-darwin-x64": { - "version": "0.1.9", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-darwin-x64/-/simple-git-darwin-x64-0.1.9.tgz", - "integrity": "sha512-jBR2xS9nVPqmHv0TWz874W0m/d453MGrMeLjB+boK5IPPLhg3AWIZj0aN9jy2Je1BGVAa0w3INIQJtBBeB6kFA==", + "version": "0.1.11", + "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-darwin-x64/-/simple-git-darwin-x64-0.1.11.tgz", + "integrity": "sha512-ufVuZxyJ3LpApk3V101X9qYNX91fnQ4isulz9lWjg90U7Xz0Cav4J3yyFZy6B/cJpYxuiy49R8wV1xDtTeGThA==", "cpu": [ "x64" ], @@ -1993,9 +2033,9 @@ } }, "node_modules/@napi-rs/simple-git-linux-arm-gnueabihf": { - "version": "0.1.9", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-arm-gnueabihf/-/simple-git-linux-arm-gnueabihf-0.1.9.tgz", - "integrity": "sha512-3n0+VpO4YfZxndZ0sCvsHIvsazd+JmbSjrlTRBCnJeAU1/sfos3skNZtKGZksZhjvd+3o+/GFM8L7Xnv01yggA==", + "version": "0.1.11", + "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-arm-gnueabihf/-/simple-git-linux-arm-gnueabihf-0.1.11.tgz", + "integrity": "sha512-rFafW0Qc/j5we2ghUecB7mFzGcNDtJ5lTiB4I7kffNeL8pEi6Yi7kST8hylswcCowia65d45xsyeNp1mFlFwcg==", "cpu": [ "arm" ], @@ -2008,9 +2048,9 @@ } }, "node_modules/@napi-rs/simple-git-linux-arm64-gnu": { - "version": "0.1.9", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-arm64-gnu/-/simple-git-linux-arm64-gnu-0.1.9.tgz", - "integrity": "sha512-lIzf0KHU2SKC12vMrWwCtysG2Sdt31VHRPMUiz9lD9t3xwVn8qhFSTn5yDkTeG3rgX6o0p5EKalfQN5BXsJq2w==", + "version": "0.1.11", + "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-arm64-gnu/-/simple-git-linux-arm64-gnu-0.1.11.tgz", + "integrity": "sha512-HZ4yaqpj/FQ3V9qNQrTGhtXb7pLAARXeRJrwoaGfz3eZ069y2bHReFcNR//5bsVhZ18JaS9EV47F8WjDxtpI5g==", "cpu": [ "arm64" ], @@ -2023,9 +2063,9 @@ } }, "node_modules/@napi-rs/simple-git-linux-arm64-musl": { - "version": "0.1.9", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-arm64-musl/-/simple-git-linux-arm64-musl-0.1.9.tgz", - "integrity": "sha512-KQozUoNXrxrB8k741ncWXSiMbjl1AGBGfZV21PANzUM8wH4Yem2bg3kfglYS/QIx3udspsT35I9abu49n7D1/w==", + "version": "0.1.11", + "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-arm64-musl/-/simple-git-linux-arm64-musl-0.1.11.tgz", + "integrity": "sha512-b39lJiC3n2+Y6Exjx6qwHoBF++D3k2hN4mZZkvQCFSdLXJ2xtalCatSRWW3pt+mHOHMOgbGektL5v5BYq52hxw==", "cpu": [ "arm64" ], @@ -2038,9 +2078,9 @@ } }, "node_modules/@napi-rs/simple-git-linux-x64-gnu": { - "version": "0.1.9", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-x64-gnu/-/simple-git-linux-x64-gnu-0.1.9.tgz", - "integrity": "sha512-O/Niui5mnHPcK3iYC3ui8wgERtJWsQ3Y74W/09t0bL/3dgzGMl4oQt0qTj9dWCsnoGsIEYHPzwCBp/2vqYp/pw==", + "version": "0.1.11", + "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-x64-gnu/-/simple-git-linux-x64-gnu-0.1.11.tgz", + "integrity": "sha512-9EPFvY7PZg+oqWi6Jft5WgSsQtvy9Ey1g4NG+LG8y1RbvaNKthxKbR5zgx196pnFVdcLtsuIdOv/OaQlbcTXkw==", "cpu": [ "x64" ], @@ -2053,9 +2093,9 @@ } }, "node_modules/@napi-rs/simple-git-linux-x64-musl": { - "version": "0.1.9", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-x64-musl/-/simple-git-linux-x64-musl-0.1.9.tgz", - "integrity": "sha512-L9n+e8Wn3hKr3RsIdY8GaB+ry4xZ4BaGwyKExgoB8nDGQuRUY9oP6p0WA4hWfJvJnU1H6hvo36a5UFPReyBO7A==", + "version": "0.1.11", + "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-x64-musl/-/simple-git-linux-x64-musl-0.1.11.tgz", + "integrity": "sha512-doIt1lPYIGL3UthlEQjdM9s1Wv0v8bz8LVAgbzJMS+UpVZzArwLWkanAJCy1HjgMTUMiE3AVJqACKIF3EfW/TQ==", "cpu": [ "x64" ], @@ -2068,9 +2108,9 @@ } }, "node_modules/@napi-rs/simple-git-win32-arm64-msvc": { - "version": "0.1.9", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-win32-arm64-msvc/-/simple-git-win32-arm64-msvc-0.1.9.tgz", - "integrity": "sha512-Z6Ja/SZK+lMvRWaxj7wjnvSbAsGrH006sqZo8P8nxKUdZfkVvoCaAWr1r0cfkk2Z3aijLLtD+vKeXGlUPH6gGQ==", + "version": "0.1.11", + "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-win32-arm64-msvc/-/simple-git-win32-arm64-msvc-0.1.11.tgz", + "integrity": "sha512-TK3Uvj3Q72ebxfxDT/eLFt8sxCNHo20QMvqJ5BHt4zP1Y9Fl1DXSPRUKLBIhJd0nPcI45ZOMRiZyoT8joxAC9g==", "cpu": [ "arm64" ], @@ -2083,9 +2123,9 @@ } }, "node_modules/@napi-rs/simple-git-win32-x64-msvc": { - "version": "0.1.9", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-win32-x64-msvc/-/simple-git-win32-x64-msvc-0.1.9.tgz", - "integrity": "sha512-VAZj1UvC+R2MjKOD3I/Y7dmQlHWAYy4omhReQJRpbCf+oGCBi9CWiIduGqeYEq723nLIKdxP7XjaO0wl1NnUww==", + "version": "0.1.11", + "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-win32-x64-msvc/-/simple-git-win32-x64-msvc-0.1.11.tgz", + "integrity": "sha512-XOgP6kFDXGmB2KCXFQEsCq70n/Do2h7W9o7qZu8APAD+Sc8JGKz4hKG7PKY2ot924v9nIoKSYbHnupnhXSoXkg==", "cpu": [ "x64" ], @@ -2702,9 +2742,9 @@ } }, "node_modules/@rollup/rollup-android-arm-eabi": { - "version": "4.9.5", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.9.5.tgz", - "integrity": "sha512-idWaG8xeSRCfRq9KpRysDHJ/rEHBEXcHuJ82XY0yYFIWnLMjZv9vF/7DOq8djQ2n3Lk6+3qfSH8AqlmHlmi1MA==", + "version": "4.9.6", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.9.6.tgz", + "integrity": "sha512-MVNXSSYN6QXOulbHpLMKYi60ppyO13W9my1qogeiAqtjb2yR4LSmfU2+POvDkLzhjYLXz9Rf9+9a3zFHW1Lecg==", "cpu": [ "arm" ], @@ -2715,9 +2755,9 @@ ] }, "node_modules/@rollup/rollup-android-arm64": { - "version": "4.9.5", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.9.5.tgz", - "integrity": "sha512-f14d7uhAMtsCGjAYwZGv6TwuS3IFaM4ZnGMUn3aCBgkcHAYErhV1Ad97WzBvS2o0aaDv4mVz+syiN0ElMyfBPg==", + "version": "4.9.6", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.9.6.tgz", + "integrity": "sha512-T14aNLpqJ5wzKNf5jEDpv5zgyIqcpn1MlwCrUXLrwoADr2RkWA0vOWP4XxbO9aiO3dvMCQICZdKeDrFl7UMClw==", "cpu": [ "arm64" ], @@ -2728,9 +2768,9 @@ ] }, "node_modules/@rollup/rollup-darwin-arm64": { - "version": "4.9.5", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.9.5.tgz", - "integrity": "sha512-ndoXeLx455FffL68OIUrVr89Xu1WLzAG4n65R8roDlCoYiQcGGg6MALvs2Ap9zs7AHg8mpHtMpwC8jBBjZrT/w==", + "version": "4.9.6", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.9.6.tgz", + "integrity": "sha512-CqNNAyhRkTbo8VVZ5R85X73H3R5NX9ONnKbXuHisGWC0qRbTTxnF1U4V9NafzJbgGM0sHZpdO83pLPzq8uOZFw==", "cpu": [ "arm64" ], @@ -2741,9 +2781,9 @@ ] }, "node_modules/@rollup/rollup-darwin-x64": { - "version": "4.9.5", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.9.5.tgz", - "integrity": "sha512-UmElV1OY2m/1KEEqTlIjieKfVwRg0Zwg4PLgNf0s3glAHXBN99KLpw5A5lrSYCa1Kp63czTpVll2MAqbZYIHoA==", + "version": "4.9.6", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.9.6.tgz", + "integrity": "sha512-zRDtdJuRvA1dc9Mp6BWYqAsU5oeLixdfUvkTHuiYOHwqYuQ4YgSmi6+/lPvSsqc/I0Omw3DdICx4Tfacdzmhog==", "cpu": [ "x64" ], @@ -2754,9 +2794,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm-gnueabihf": { - "version": "4.9.5", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.9.5.tgz", - "integrity": "sha512-Q0LcU61v92tQB6ae+udZvOyZ0wfpGojtAKrrpAaIqmJ7+psq4cMIhT/9lfV6UQIpeItnq/2QDROhNLo00lOD1g==", + "version": "4.9.6", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.9.6.tgz", + "integrity": "sha512-oNk8YXDDnNyG4qlNb6is1ojTOGL/tRhbbKeE/YuccItzerEZT68Z9gHrY3ROh7axDc974+zYAPxK5SH0j/G+QQ==", "cpu": [ "arm" ], @@ -2767,9 +2807,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-gnu": { - "version": "4.9.5", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.9.5.tgz", - "integrity": "sha512-dkRscpM+RrR2Ee3eOQmRWFjmV/payHEOrjyq1VZegRUa5OrZJ2MAxBNs05bZuY0YCtpqETDy1Ix4i/hRqX98cA==", + "version": "4.9.6", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.9.6.tgz", + "integrity": "sha512-Z3O60yxPtuCYobrtzjo0wlmvDdx2qZfeAWTyfOjEDqd08kthDKexLpV97KfAeUXPosENKd8uyJMRDfFMxcYkDQ==", "cpu": [ "arm64" ], @@ -2780,9 +2820,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-musl": { - "version": "4.9.5", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.9.5.tgz", - "integrity": "sha512-QaKFVOzzST2xzY4MAmiDmURagWLFh+zZtttuEnuNn19AiZ0T3fhPyjPPGwLNdiDT82ZE91hnfJsUiDwF9DClIQ==", + "version": "4.9.6", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.9.6.tgz", + "integrity": "sha512-gpiG0qQJNdYEVad+1iAsGAbgAnZ8j07FapmnIAQgODKcOTjLEWM9sRb+MbQyVsYCnA0Im6M6QIq6ax7liws6eQ==", "cpu": [ "arm64" ], @@ -2793,9 +2833,9 @@ ] }, "node_modules/@rollup/rollup-linux-riscv64-gnu": { - "version": "4.9.5", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.9.5.tgz", - "integrity": "sha512-HeGqmRJuyVg6/X6MpE2ur7GbymBPS8Np0S/vQFHDmocfORT+Zt76qu+69NUoxXzGqVP1pzaY6QIi0FJWLC3OPA==", + "version": "4.9.6", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.9.6.tgz", + "integrity": "sha512-+uCOcvVmFUYvVDr27aiyun9WgZk0tXe7ThuzoUTAukZJOwS5MrGbmSlNOhx1j80GdpqbOty05XqSl5w4dQvcOA==", "cpu": [ "riscv64" ], @@ -2806,9 +2846,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-gnu": { - "version": "4.9.5", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.9.5.tgz", - "integrity": "sha512-Dq1bqBdLaZ1Gb/l2e5/+o3B18+8TI9ANlA1SkejZqDgdU/jK/ThYaMPMJpVMMXy2uRHvGKbkz9vheVGdq3cJfA==", + "version": "4.9.6", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.9.6.tgz", + "integrity": "sha512-HUNqM32dGzfBKuaDUBqFB7tP6VMN74eLZ33Q9Y1TBqRDn+qDonkAUyKWwF9BR9unV7QUzffLnz9GrnKvMqC/fw==", "cpu": [ "x64" ], @@ -2819,9 +2859,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-musl": { - "version": "4.9.5", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.9.5.tgz", - "integrity": "sha512-ezyFUOwldYpj7AbkwyW9AJ203peub81CaAIVvckdkyH8EvhEIoKzaMFJj0G4qYJ5sw3BpqhFrsCc30t54HV8vg==", + "version": "4.9.6", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.9.6.tgz", + "integrity": "sha512-ch7M+9Tr5R4FK40FHQk8VnML0Szi2KRujUgHXd/HjuH9ifH72GUmw6lStZBo3c3GB82vHa0ZoUfjfcM7JiiMrQ==", "cpu": [ "x64" ], @@ -2832,9 +2872,9 @@ ] }, "node_modules/@rollup/rollup-win32-arm64-msvc": { - "version": "4.9.5", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.9.5.tgz", - "integrity": "sha512-aHSsMnUw+0UETB0Hlv7B/ZHOGY5bQdwMKJSzGfDfvyhnpmVxLMGnQPGNE9wgqkLUs3+gbG1Qx02S2LLfJ5GaRQ==", + "version": "4.9.6", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.9.6.tgz", + "integrity": "sha512-VD6qnR99dhmTQ1mJhIzXsRcTBvTjbfbGGwKAHcu+52cVl15AC/kplkhxzW/uT0Xl62Y/meBKDZvoJSJN+vTeGA==", "cpu": [ "arm64" ], @@ -2845,9 +2885,9 @@ ] }, "node_modules/@rollup/rollup-win32-ia32-msvc": { - "version": "4.9.5", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.9.5.tgz", - "integrity": "sha512-AiqiLkb9KSf7Lj/o1U3SEP9Zn+5NuVKgFdRIZkvd4N0+bYrTOovVd0+LmYCPQGbocT4kvFyK+LXCDiXPBF3fyA==", + "version": "4.9.6", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.9.6.tgz", + "integrity": "sha512-J9AFDq/xiRI58eR2NIDfyVmTYGyIZmRcvcAoJ48oDld/NTR8wyiPUu2X/v1navJ+N/FGg68LEbX3Ejd6l8B7MQ==", "cpu": [ "ia32" ], @@ -2858,9 +2898,9 @@ ] }, "node_modules/@rollup/rollup-win32-x64-msvc": { - "version": "4.9.5", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.9.5.tgz", - "integrity": "sha512-1q+mykKE3Vot1kaFJIDoUFv5TuW+QQVaf2FmTT9krg86pQrGStOSJJ0Zil7CFagyxDuouTepzt5Y5TVzyajOdQ==", + "version": "4.9.6", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.9.6.tgz", + "integrity": "sha512-jqzNLhNDvIZOrt69Ce4UjGRpXJBzhUBzawMwnaDAwyHriki3XollsewxWzOzz+4yOFDkuJHtTsZFwMxhYJWmLQ==", "cpu": [ "x64" ], @@ -2871,9 +2911,9 @@ ] }, "node_modules/@rushstack/eslint-patch": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.7.0.tgz", - "integrity": "sha512-Jh4t/593gxs0lJZ/z3NnasKlplXT2f+4y/LZYuaKZW5KAaiVFL/fThhs+17EbUd53jUVJ0QudYCBGbN/psvaqg==", + "version": "1.7.2", + "resolved": "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.7.2.tgz", + "integrity": "sha512-RbhOOTCNoCrbfkRyoXODZp75MlpiHMgbE5MEBZAnnnLyQNgrigEj4p0lzsMDyc1zVsJDLrivB58tgg3emX0eEA==", "dev": true }, "node_modules/@swc/helpers": { @@ -3037,12 +3077,9 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "20.11.7", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.7.tgz", - "integrity": "sha512-GPmeN1C3XAyV5uybAf4cMLWT9fDWcmQhZVtMFu7OR32WjrqGG+Wnk2V1d0bmtUyE/Zy1QJ9BxyiTih9z8Oks8A==", - "dependencies": { - "undici-types": "~5.26.4" - } + "version": "12.20.55", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", + "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" }, "node_modules/@types/node-fetch": { "version": "2.6.11", @@ -3099,16 +3136,16 @@ "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "6.19.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.19.0.tgz", - "integrity": "sha512-DUCUkQNklCQYnrBSSikjVChdc84/vMPDQSgJTHBZ64G9bA9w0Crc0rd2diujKbTdp6w2J47qkeHQLoi0rpLCdg==", + "version": "6.19.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.19.1.tgz", + "integrity": "sha512-roQScUGFruWod9CEyoV5KlCYrubC/fvG8/1zXuT0WTcxX87GnMMmnksMwSg99lo1xiKrBzw2icsJPMAw1OtKxg==", "dev": true, "dependencies": { "@eslint-community/regexpp": "^4.5.1", - "@typescript-eslint/scope-manager": "6.19.0", - "@typescript-eslint/type-utils": "6.19.0", - "@typescript-eslint/utils": "6.19.0", - "@typescript-eslint/visitor-keys": "6.19.0", + "@typescript-eslint/scope-manager": "6.19.1", + "@typescript-eslint/type-utils": "6.19.1", + "@typescript-eslint/utils": "6.19.1", + "@typescript-eslint/visitor-keys": "6.19.1", "debug": "^4.3.4", "graphemer": "^1.4.0", "ignore": "^5.2.4", @@ -3134,15 +3171,15 @@ } }, "node_modules/@typescript-eslint/parser": { - "version": "6.19.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.19.0.tgz", - "integrity": "sha512-1DyBLG5SH7PYCd00QlroiW60YJ4rWMuUGa/JBV0iZuqi4l4IK3twKPq5ZkEebmGqRjXWVgsUzfd3+nZveewgow==", + "version": "6.19.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.19.1.tgz", + "integrity": "sha512-WEfX22ziAh6pRE9jnbkkLGp/4RhTpffr2ZK5bJ18M8mIfA8A+k97U9ZyaXCEJRlmMHh7R9MJZWXp/r73DzINVQ==", "dev": true, "dependencies": { - "@typescript-eslint/scope-manager": "6.19.0", - "@typescript-eslint/types": "6.19.0", - "@typescript-eslint/typescript-estree": "6.19.0", - "@typescript-eslint/visitor-keys": "6.19.0", + "@typescript-eslint/scope-manager": "6.19.1", + "@typescript-eslint/types": "6.19.1", + "@typescript-eslint/typescript-estree": "6.19.1", + "@typescript-eslint/visitor-keys": "6.19.1", "debug": "^4.3.4" }, "engines": { @@ -3162,13 +3199,13 @@ } }, "node_modules/@typescript-eslint/scope-manager": { - "version": "6.19.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.19.0.tgz", - "integrity": "sha512-dO1XMhV2ehBI6QN8Ufi7I10wmUovmLU0Oru3n5LVlM2JuzB4M+dVphCPLkVpKvGij2j/pHBWuJ9piuXx+BhzxQ==", + "version": "6.19.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.19.1.tgz", + "integrity": "sha512-4CdXYjKf6/6aKNMSly/BP4iCSOpvMmqtDzRtqFyyAae3z5kkqEjKndR5vDHL8rSuMIIWP8u4Mw4VxLyxZW6D5w==", "dev": true, "dependencies": { - "@typescript-eslint/types": "6.19.0", - "@typescript-eslint/visitor-keys": "6.19.0" + "@typescript-eslint/types": "6.19.1", + "@typescript-eslint/visitor-keys": "6.19.1" }, "engines": { "node": "^16.0.0 || >=18.0.0" @@ -3179,13 +3216,13 @@ } }, "node_modules/@typescript-eslint/type-utils": { - "version": "6.19.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.19.0.tgz", - "integrity": "sha512-mcvS6WSWbjiSxKCwBcXtOM5pRkPQ6kcDds/juxcy/727IQr3xMEcwr/YLHW2A2+Fp5ql6khjbKBzOyjuPqGi/w==", + "version": "6.19.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.19.1.tgz", + "integrity": "sha512-0vdyld3ecfxJuddDjACUvlAeYNrHP/pDeQk2pWBR2ESeEzQhg52DF53AbI9QCBkYE23lgkhLCZNkHn2hEXXYIg==", "dev": true, "dependencies": { - "@typescript-eslint/typescript-estree": "6.19.0", - "@typescript-eslint/utils": "6.19.0", + "@typescript-eslint/typescript-estree": "6.19.1", + "@typescript-eslint/utils": "6.19.1", "debug": "^4.3.4", "ts-api-utils": "^1.0.1" }, @@ -3206,9 +3243,9 @@ } }, "node_modules/@typescript-eslint/types": { - "version": "6.19.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.19.0.tgz", - "integrity": "sha512-lFviGV/vYhOy3m8BJ/nAKoAyNhInTdXpftonhWle66XHAtT1ouBlkjL496b5H5hb8dWXHwtypTqgtb/DEa+j5A==", + "version": "6.19.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.19.1.tgz", + "integrity": "sha512-6+bk6FEtBhvfYvpHsDgAL3uo4BfvnTnoge5LrrCj2eJN8g3IJdLTD4B/jK3Q6vo4Ql/Hoip9I8aB6fF+6RfDqg==", "dev": true, "engines": { "node": "^16.0.0 || >=18.0.0" @@ -3219,13 +3256,13 @@ } }, "node_modules/@typescript-eslint/typescript-estree": { - "version": "6.19.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.19.0.tgz", - "integrity": "sha512-o/zefXIbbLBZ8YJ51NlkSAt2BamrK6XOmuxSR3hynMIzzyMY33KuJ9vuMdFSXW+H0tVvdF9qBPTHA91HDb4BIQ==", + "version": "6.19.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.19.1.tgz", + "integrity": "sha512-aFdAxuhzBFRWhy+H20nYu19+Km+gFfwNO4TEqyszkMcgBDYQjmPJ61erHxuT2ESJXhlhrO7I5EFIlZ+qGR8oVA==", "dev": true, "dependencies": { - "@typescript-eslint/types": "6.19.0", - "@typescript-eslint/visitor-keys": "6.19.0", + "@typescript-eslint/types": "6.19.1", + "@typescript-eslint/visitor-keys": "6.19.1", "debug": "^4.3.4", "globby": "^11.1.0", "is-glob": "^4.0.3", @@ -3271,17 +3308,17 @@ } }, "node_modules/@typescript-eslint/utils": { - "version": "6.19.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.19.0.tgz", - "integrity": "sha512-QR41YXySiuN++/dC9UArYOg4X86OAYP83OWTewpVx5ct1IZhjjgTLocj7QNxGhWoTqknsgpl7L+hGygCO+sdYw==", + "version": "6.19.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.19.1.tgz", + "integrity": "sha512-JvjfEZuP5WoMqwh9SPAPDSHSg9FBHHGhjPugSRxu5jMfjvBpq5/sGTD+9M9aQ5sh6iJ8AY/Kk/oUYVEMAPwi7w==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.4.0", "@types/json-schema": "^7.0.12", "@types/semver": "^7.5.0", - "@typescript-eslint/scope-manager": "6.19.0", - "@typescript-eslint/types": "6.19.0", - "@typescript-eslint/typescript-estree": "6.19.0", + "@typescript-eslint/scope-manager": "6.19.1", + "@typescript-eslint/types": "6.19.1", + "@typescript-eslint/typescript-estree": "6.19.1", "semver": "^7.5.4" }, "engines": { @@ -3296,12 +3333,12 @@ } }, "node_modules/@typescript-eslint/visitor-keys": { - "version": "6.19.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.19.0.tgz", - "integrity": "sha512-hZaUCORLgubBvtGpp1JEFEazcuEdfxta9j4iUwdSAr7mEsYYAp3EAUyCZk3VEEqGj6W+AV4uWyrDGtrlawAsgQ==", + "version": "6.19.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.19.1.tgz", + "integrity": "sha512-gkdtIO+xSO/SmI0W68DBg4u1KElmIUo3vXzgHyGPs6cxgB0sa3TlptRAAE0hUY1hM6FcDKEv7aIwiTGm76cXfQ==", "dev": true, "dependencies": { - "@typescript-eslint/types": "6.19.0", + "@typescript-eslint/types": "6.19.1", "eslint-visitor-keys": "^3.4.1" }, "engines": { @@ -3911,9 +3948,9 @@ } }, "node_modules/browserslist": { - "version": "4.22.2", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.22.2.tgz", - "integrity": "sha512-0UgcrvQmBDvZHFGdYUehrCNIazki7/lUP3kkoi/r3YB2amZbFM9J43ZRkJTXBUZK4gmx56+Sqk9+Vs9mwZx9+A==", + "version": "4.22.3", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.22.3.tgz", + "integrity": "sha512-UAp55yfwNv0klWNapjs/ktHoguxuQNGnOzxYmfnXIS+8AsRDZkSDxg7R1AX3GKzn078SBI5dzwzj/Yx0Or0e3A==", "dev": true, "funding": [ { @@ -3930,8 +3967,8 @@ } ], "dependencies": { - "caniuse-lite": "^1.0.30001565", - "electron-to-chromium": "^1.4.601", + "caniuse-lite": "^1.0.30001580", + "electron-to-chromium": "^1.4.648", "node-releases": "^2.0.14", "update-browserslist-db": "^1.0.13" }, @@ -4073,9 +4110,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001579", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001579.tgz", - "integrity": "sha512-u5AUVkixruKHJjw/pj9wISlcMpgFWzSrczLZbrqBSxukQixmg0SJ5sZTpvaFvxU0HoQKd4yoyAogyrAz9pzJnA==", + "version": "1.0.30001580", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001580.tgz", + "integrity": "sha512-mtj5ur2FFPZcCEpXFy8ADXbDACuNFXg6mxVDqp7tqooX6l3zwm+d8EPoeOSIFRDvHs8qu7/SLFOGniULkcH2iA==", "funding": [ { "type": "opencollective", @@ -5237,11 +5274,11 @@ } }, "node_modules/delaunator": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/delaunator/-/delaunator-5.0.0.tgz", - "integrity": "sha512-AyLvtyJdbv/U1GkiS6gUUzclRoAY4Gs75qkMygJJhU75LW4DNuSF2RMzpxs9jw9Oz1BobHjTdkG3zdP55VxAqw==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/delaunator/-/delaunator-5.0.1.tgz", + "integrity": "sha512-8nvh+XBe96aCESrGOqMp/84b13H9cdKbG5P2ejQCh4d4sK9RL4371qou9drQjMhvnPmhWl5hnmqbEE0fXr9Xnw==", "dependencies": { - "robust-predicates": "^3.0.0" + "robust-predicates": "^3.0.2" } }, "node_modules/delayed-stream": { @@ -5344,9 +5381,9 @@ "integrity": "sha512-b7uwreMYL2eZhrSCRC4ahLTeZcPZxSmYfmcQGXGkXiZSNW1X85v+SDM5KsWcpivIiUBH47Ji7NtyUdpLeF5JZQ==" }, "node_modules/dotenv": { - "version": "16.3.1", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.3.1.tgz", - "integrity": "sha512-IPzF4w4/Rd94bA9imS68tZBaYyBWSCE47V1RGuMrB94iyTOIEwRmVL2x/4An+6mETpLrKJ5hQkB8W4kFAadeIQ==", + "version": "16.4.1", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.4.1.tgz", + "integrity": "sha512-CjA3y+Dr3FyFDOAMnxZEGtnW9KBR2M0JvvUtXNW+dYJL5ROWxP9DUHCwgFqpMk0OXCc0ljhaNTr2w/kutYIcHQ==", "engines": { "node": ">=12" }, @@ -5385,9 +5422,9 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.639", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.639.tgz", - "integrity": "sha512-CkKf3ZUVZchr+zDpAlNLEEy2NJJ9T64ULWaDgy3THXXlPVPkLu3VOs9Bac44nebVtdwl2geSj6AxTtGDOxoXhg==", + "version": "1.4.648", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.648.tgz", + "integrity": "sha512-EmFMarXeqJp9cUKu/QEciEApn0S/xRcpZWuAm32U7NgoZCimjsilKXHRO9saeEW55eHZagIDg6XTUOv32w9pjg==", "dev": true }, "node_modules/elkjs": { @@ -5575,9 +5612,9 @@ } }, "node_modules/esbuild": { - "version": "0.19.11", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.19.11.tgz", - "integrity": "sha512-HJ96Hev2hX/6i5cDVwcqiJBBtuo9+FeIJOtZ9W1kA5M6AMJRHUZlpYZ1/SbEwtO0ioNAW8rUooVpC/WehY2SfA==", + "version": "0.19.12", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.19.12.tgz", + "integrity": "sha512-aARqgq8roFBj054KvQr5f1sFu0D65G+miZRCuJyJ0G13Zwx7vRar5Zhn2tkQNzIXcBrNVsv/8stehpj+GAjgbg==", "dev": true, "hasInstallScript": true, "bin": { @@ -5587,29 +5624,29 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/aix-ppc64": "0.19.11", - "@esbuild/android-arm": "0.19.11", - "@esbuild/android-arm64": "0.19.11", - "@esbuild/android-x64": "0.19.11", - "@esbuild/darwin-arm64": "0.19.11", - "@esbuild/darwin-x64": "0.19.11", - "@esbuild/freebsd-arm64": "0.19.11", - "@esbuild/freebsd-x64": "0.19.11", - "@esbuild/linux-arm": "0.19.11", - "@esbuild/linux-arm64": "0.19.11", - "@esbuild/linux-ia32": "0.19.11", - "@esbuild/linux-loong64": "0.19.11", - "@esbuild/linux-mips64el": "0.19.11", - "@esbuild/linux-ppc64": "0.19.11", - "@esbuild/linux-riscv64": "0.19.11", - "@esbuild/linux-s390x": "0.19.11", - "@esbuild/linux-x64": "0.19.11", - "@esbuild/netbsd-x64": "0.19.11", - "@esbuild/openbsd-x64": "0.19.11", - "@esbuild/sunos-x64": "0.19.11", - "@esbuild/win32-arm64": "0.19.11", - "@esbuild/win32-ia32": "0.19.11", - "@esbuild/win32-x64": "0.19.11" + "@esbuild/aix-ppc64": "0.19.12", + "@esbuild/android-arm": "0.19.12", + "@esbuild/android-arm64": "0.19.12", + "@esbuild/android-x64": "0.19.12", + "@esbuild/darwin-arm64": "0.19.12", + "@esbuild/darwin-x64": "0.19.12", + "@esbuild/freebsd-arm64": "0.19.12", + "@esbuild/freebsd-x64": "0.19.12", + "@esbuild/linux-arm": "0.19.12", + "@esbuild/linux-arm64": "0.19.12", + "@esbuild/linux-ia32": "0.19.12", + "@esbuild/linux-loong64": "0.19.12", + "@esbuild/linux-mips64el": "0.19.12", + "@esbuild/linux-ppc64": "0.19.12", + "@esbuild/linux-riscv64": "0.19.12", + "@esbuild/linux-s390x": "0.19.12", + "@esbuild/linux-x64": "0.19.12", + "@esbuild/netbsd-x64": "0.19.12", + "@esbuild/openbsd-x64": "0.19.12", + "@esbuild/sunos-x64": "0.19.12", + "@esbuild/win32-arm64": "0.19.12", + "@esbuild/win32-ia32": "0.19.12", + "@esbuild/win32-x64": "0.19.12" } }, "node_modules/escalade": { @@ -7045,9 +7082,9 @@ } }, "node_modules/fastq": { - "version": "1.16.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.16.0.tgz", - "integrity": "sha512-ifCoaXsDrsdkWTtiNJX5uzHDsrck5TzfKKDcuFFTIrrc/BS076qgEIfoIy1VeZqViznfKiysPYTh/QeHtnIsYA==", + "version": "1.17.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.0.tgz", + "integrity": "sha512-zGygtijUMT7jnk3h26kUms3BkSDp4IfIKjmnqI2tvx6nuBfiF1UqOxbnLfzdv+apBy+53oaImsKtMw/xYbW+1w==", "dependencies": { "reusify": "^1.0.4" } @@ -7954,9 +7991,9 @@ } }, "node_modules/hast-util-raw": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/hast-util-raw/-/hast-util-raw-9.0.1.tgz", - "integrity": "sha512-5m1gmba658Q+lO5uqL5YNGQWeh1MYWZbZmWrM5lncdcuiXuo5E2HT/CIOp0rLF8ksfSwiCVJ3twlgVRyTGThGA==", + "version": "9.0.2", + "resolved": "https://registry.npmjs.org/hast-util-raw/-/hast-util-raw-9.0.2.tgz", + "integrity": "sha512-PldBy71wO9Uq1kyaMch9AHIghtQvIwxBUkv823pKmkTM3oV1JxtsTNYdevMxvUHqcnOAuO65JKU2+0NOxc2ksA==", "dependencies": { "@types/hast": "^3.0.0", "@types/unist": "^3.0.0", @@ -8963,9 +9000,9 @@ } }, "node_modules/jsonc-parser": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.2.0.tgz", - "integrity": "sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w==" + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.2.1.tgz", + "integrity": "sha512-AilxAyFOAcK5wA1+LeaySVBrHsGQvUFCDWXKpZjzaL0PqW+xfBOttn8GNtWKFWqneyMZj41MWF9Kl6iPWLwgOA==" }, "node_modules/jsonfile": { "version": "4.0.0", @@ -11358,9 +11395,9 @@ } }, "node_modules/openai": { - "version": "4.24.7", - "resolved": "https://registry.npmjs.org/openai/-/openai-4.24.7.tgz", - "integrity": "sha512-JUesECWPtsDHO0TlZGb6q73hnAmXUdzj9NrwgZeL4lqlRt/kR1sWrXoy8LocxN/6uOtitywvcJqe0O1PLkG45g==", + "version": "4.26.0", + "resolved": "https://registry.npmjs.org/openai/-/openai-4.26.0.tgz", + "integrity": "sha512-HPC7tgYdeP38F3uHA5WgnoXZyGbAp9jgcIo23p6It+q/07u4C+NZ8xHKlMShsPbDDmFRpPsa3vdbXYpbhJH3eg==", "peer": true, "dependencies": { "@types/node": "^18.11.18", @@ -11378,9 +11415,9 @@ } }, "node_modules/openai/node_modules/@types/node": { - "version": "18.19.8", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.8.tgz", - "integrity": "sha512-g1pZtPhsvGVTwmeVoexWZLTQaOvXwoSq//pTL0DHeNzUDrFnir4fgETdhjhIxjVnN+hKOuh98+E1eMLnUXstFg==", + "version": "18.19.10", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.10.tgz", + "integrity": "sha512-IZD8kAM02AW1HRDTPOlz3npFava678pr8Ie9Vp8uRhBROXAv8MXT2pCnGZZAKYdromsNQLHQcfWQ6EOatVLtqA==", "peer": true, "dependencies": { "undici-types": "~5.26.4" @@ -12252,9 +12289,9 @@ } }, "node_modules/property-information": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/property-information/-/property-information-6.4.0.tgz", - "integrity": "sha512-9t5qARVofg2xQqKtytzt+lZ4d1Qvj8t5B8fEwXK6qOfgRLgH/b13QlgEyDh033NOS31nXeFbYv7CLUDG1CeifQ==", + "version": "6.4.1", + "resolved": "https://registry.npmjs.org/property-information/-/property-information-6.4.1.tgz", + "integrity": "sha512-OHYtXfu5aI2sS2LWFSN5rgJjrQ4pCy8i1jubJLe2QvMF8JJ++HXTUIVWFLfXJoaOfvYYjk2SN8J2wFUWIGXT4w==", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" @@ -12976,9 +13013,9 @@ } }, "node_modules/rfdc": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.3.0.tgz", - "integrity": "sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA==" + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.3.1.tgz", + "integrity": "sha512-r5a3l5HzYlIC68TpmYKlxWjmOP6wiPJ1vWv2HeLhNsRZMrCkxeqxiHlQ21oXmQ4F3SiryXBHhAD7JZqvOJjFmg==" }, "node_modules/rimraf": { "version": "5.0.5", @@ -13004,9 +13041,9 @@ "integrity": "sha512-IXgzBWvWQwE6PrDI05OvmXUIruQTcoMDzRsOd5CDvHCVLcLHMTSYvOK5Cm46kWqlV3yAbuSpBZdJ5oP5OUoStg==" }, "node_modules/rollup": { - "version": "4.9.5", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.9.5.tgz", - "integrity": "sha512-E4vQW0H/mbNMw2yLSqJyjtkHY9dslf/p0zuT1xehNRqUTBOFMqEjguDvqhXr7N7r/4ttb2jr4T41d3dncmIgbQ==", + "version": "4.9.6", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.9.6.tgz", + "integrity": "sha512-05lzkCS2uASX0CiLFybYfVkwNbKZG5NFQ6Go0VWyogFTXXbR039UVsegViTntkk4OglHBdF54ccApXRRuXRbsg==", "dev": true, "dependencies": { "@types/estree": "1.0.5" @@ -13019,19 +13056,19 @@ "npm": ">=8.0.0" }, "optionalDependencies": { - "@rollup/rollup-android-arm-eabi": "4.9.5", - "@rollup/rollup-android-arm64": "4.9.5", - "@rollup/rollup-darwin-arm64": "4.9.5", - "@rollup/rollup-darwin-x64": "4.9.5", - "@rollup/rollup-linux-arm-gnueabihf": "4.9.5", - "@rollup/rollup-linux-arm64-gnu": "4.9.5", - "@rollup/rollup-linux-arm64-musl": "4.9.5", - "@rollup/rollup-linux-riscv64-gnu": "4.9.5", - "@rollup/rollup-linux-x64-gnu": "4.9.5", - "@rollup/rollup-linux-x64-musl": "4.9.5", - "@rollup/rollup-win32-arm64-msvc": "4.9.5", - "@rollup/rollup-win32-ia32-msvc": "4.9.5", - "@rollup/rollup-win32-x64-msvc": "4.9.5", + "@rollup/rollup-android-arm-eabi": "4.9.6", + "@rollup/rollup-android-arm64": "4.9.6", + "@rollup/rollup-darwin-arm64": "4.9.6", + "@rollup/rollup-darwin-x64": "4.9.6", + "@rollup/rollup-linux-arm-gnueabihf": "4.9.6", + "@rollup/rollup-linux-arm64-gnu": "4.9.6", + "@rollup/rollup-linux-arm64-musl": "4.9.6", + "@rollup/rollup-linux-riscv64-gnu": "4.9.6", + "@rollup/rollup-linux-x64-gnu": "4.9.6", + "@rollup/rollup-linux-x64-musl": "4.9.6", + "@rollup/rollup-win32-arm64-msvc": "4.9.6", + "@rollup/rollup-win32-ia32-msvc": "4.9.6", + "@rollup/rollup-win32-x64-msvc": "4.9.6", "fsevents": "~2.3.2" } }, @@ -13730,9 +13767,9 @@ } }, "node_modules/spdx-exceptions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", - "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==" + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.4.0.tgz", + "integrity": "sha512-hcjppoJ68fhxA/cjbN4T8N6uCUejN8yFw69ttpqtBeCbF3u13n7mb31NB9jKwGTTWWnt9IbRA/mf1FprYS8wfw==" }, "node_modules/spdx-expression-parse": { "version": "3.0.1", @@ -14110,9 +14147,9 @@ } }, "node_modules/systeminformation": { - "version": "5.21.22", - "resolved": "https://registry.npmjs.org/systeminformation/-/systeminformation-5.21.22.tgz", - "integrity": "sha512-gNHloAJSyS+sKWkwvmvozZ1eHrdVTEsynWMTY6lvLGBB70gflkBQFw8drXXr1oEXY84+Vr9tOOrN8xHZLJSycA==", + "version": "5.21.24", + "resolved": "https://registry.npmjs.org/systeminformation/-/systeminformation-5.21.24.tgz", + "integrity": "sha512-xQada8ByGGFoRXJaUptGgddn3i7IjtSdqNdCKzB8xkzsM7pHnfLYBWxkPdGzhZ0Z/l+W1yo+aZQZ74d2isj8kw==", "dev": true, "optional": true, "os": [ @@ -15939,6 +15976,15 @@ "redis": ">=4.6" } }, + "packages/cache-handler/node_modules/@types/node": { + "version": "20.11.7", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.7.tgz", + "integrity": "sha512-GPmeN1C3XAyV5uybAf4cMLWT9fDWcmQhZVtMFu7OR32WjrqGG+Wnk2V1d0bmtUyE/Zy1QJ9BxyiTih9z8Oks8A==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "packages/diffscribe": { "version": "0.2.1", "license": "MIT", @@ -15958,6 +16004,15 @@ "openai": "^4.12.3" } }, + "packages/diffscribe/node_modules/@types/node": { + "version": "20.11.7", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.7.tgz", + "integrity": "sha512-GPmeN1C3XAyV5uybAf4cMLWT9fDWcmQhZVtMFu7OR32WjrqGG+Wnk2V1d0bmtUyE/Zy1QJ9BxyiTih9z8Oks8A==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "packages/json-replacer-reviver": { "name": "@neshca/json-replacer-reviver", "version": "1.1.0", @@ -15972,6 +16027,15 @@ "typescript": "5.3.3" } }, + "packages/json-replacer-reviver/node_modules/@types/node": { + "version": "20.11.7", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.7.tgz", + "integrity": "sha512-GPmeN1C3XAyV5uybAf4cMLWT9fDWcmQhZVtMFu7OR32WjrqGG+Wnk2V1d0bmtUyE/Zy1QJ9BxyiTih9z8Oks8A==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "packages/server": { "name": "@neshca/server", "version": "0.6.0", @@ -15994,6 +16058,15 @@ "tsx": "4.7.0", "typescript": "5.3.3" } + }, + "packages/server/node_modules/@types/node": { + "version": "20.11.7", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.7.tgz", + "integrity": "sha512-GPmeN1C3XAyV5uybAf4cMLWT9fDWcmQhZVtMFu7OR32WjrqGG+Wnk2V1d0bmtUyE/Zy1QJ9BxyiTih9z8Oks8A==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } } } } diff --git a/packages/cache-handler/src/cache-handler.ts b/packages/cache-handler/src/cache-handler.ts index 909cc753..acd7efbe 100644 --- a/packages/cache-handler/src/cache-handler.ts +++ b/packages/cache-handler/src/cache-handler.ts @@ -254,7 +254,7 @@ export class IncrementalCache implements CacheHandler { static #revalidatedTags: RevalidatedTags = {}; - static #debug = Boolean(process.env.NEXT_PRIVATE_DEBUG_CACHE); + static #debug = typeof process.env.NEXT_PRIVATE_DEBUG_CACHE !== 'undefined'; static onCreationHook: OnCreationHook; From 25082c8f4f175de6746e99bca4d17b9ed340aa5e Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Sat, 27 Jan 2024 21:57:31 +0300 Subject: [PATCH 080/458] Version Packages (#292) Co-authored-by: github-actions[bot] --- .changeset/dirty-doors-jump.md | 5 ----- packages/cache-handler/CHANGELOG.md | 6 ++++++ packages/cache-handler/package.json | 2 +- 3 files changed, 7 insertions(+), 6 deletions(-) delete mode 100644 .changeset/dirty-doors-jump.md diff --git a/.changeset/dirty-doors-jump.md b/.changeset/dirty-doors-jump.md deleted file mode 100644 index 00d3a0d2..00000000 --- a/.changeset/dirty-doors-jump.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@neshca/cache-handler': patch ---- - -Refactor debug flag initialization in cache-handler.ts diff --git a/packages/cache-handler/CHANGELOG.md b/packages/cache-handler/CHANGELOG.md index 77bb2d80..c8be6f42 100644 --- a/packages/cache-handler/CHANGELOG.md +++ b/packages/cache-handler/CHANGELOG.md @@ -1,5 +1,11 @@ # @neshca/cache-handler +## 0.6.9 + +### Patch Changes + +- 8570f6e: Refactor debug flag initialization in cache-handler.ts + ## 0.6.8 ### Patch Changes diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 98c778d8..6abf6359 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -1,6 +1,6 @@ { "name": "@neshca/cache-handler", - "version": "0.6.8", + "version": "0.6.9", "description": "Flexible API to replace the default Next.js cache, accommodating custom cache solutions for multi-instance deployments.", "keywords": [ "cache", From bb61a524c76f7b46fb417a42e005c96d920ed53e Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Tue, 30 Jan 2024 08:44:53 +0300 Subject: [PATCH 081/458] Implement new code style using Biome (#293) --- .changeset/poor-eels-cheer.md | 9 + .github/ISSUE_TEMPLATE/bug_report.md | 8 +- .../actions/add-dist-tags/add-dist-tags.js | 12 +- .github/workflows/tests.yml | 4 +- .prettierignore | 14 +- .prettierrc.json | 2 +- .vscode/extensions.json | 3 + .vscode/settings.json | 41 +- CONTRIBUTING.md | 14 +- apps/cache-testing/.eslintrc.js | 10 +- .../cache-handler-redis-stack.mjs | 8 +- .../cache-handler-redis-strings.mjs | 8 +- apps/cache-testing/package.json | 10 +- apps/cache-testing/run-app-instances.ts | 12 +- .../src/pages/api/revalidate-pages.ts | 2 +- .../create-pages-get-get-server-side-props.ts | 6 +- .../utils/create-pages-get-static-props.ts | 8 +- apps/cache-testing/tests/app.spec.ts | 2 +- apps/cache-testing/tests/pages.spec.ts | 2 +- apps/cache-testing/tsconfig.json | 7 +- biome.json | 56 +++ docs/cache-handler-docs/.eslintrc.js | 9 +- docs/cache-handler-docs/package.json | 9 +- .../configuration/build-id-as-prefix-key.mdx | 66 +-- .../src/pages/configuration/cache.mdx | 96 ++-- .../configuration/development-environment.mdx | 6 +- .../src/pages/configuration/on-creation.mdx | 96 ++-- .../configuration/opt-out-cache-on-build.mdx | 38 +- .../src/pages/configuration/ttl.mdx | 162 +++---- .../pages/configuration/use-file-system.mdx | 80 ++-- docs/cache-handler-docs/src/pages/index.mdx | 6 +- .../src/pages/installation.mdx | 156 +++---- .../src/pages/redis-stack-custom.mdx | 148 +++--- .../src/pages/redis-stack.mdx | 50 +- .../src/pages/redis-strings-custom.mdx | 126 ++--- .../src/pages/redis-strings.mdx | 50 +- docs/cache-handler-docs/src/pages/server.mdx | 20 +- .../src/pages/troubleshooting.mdx | 24 +- docs/cache-handler-docs/theme.config.jsx | 2 +- docs/cache-handler-docs/tsconfig.json | 11 +- docs/contributing/cache-handler.md | 34 +- docs/contributing/monorepo.md | 20 +- internal/backend/.eslintrc.cjs | 3 - internal/backend/package.json | 5 +- internal/backend/src/backend.ts | 11 +- internal/backend/tsconfig.json | 2 +- internal/eslint-config-neshca/README.md | 3 - internal/eslint-config-neshca/library.js | 34 -- internal/eslint-config-neshca/next.js | 51 -- internal/eslint-config-neshca/package.json | 10 - internal/eslint-config/README.md | 3 + internal/eslint-config/next.js | 39 ++ internal/eslint-config/package.json | 17 + internal/next-common/.eslintrc.cjs | 3 - internal/next-common/package.json | 7 +- internal/next-common/tsconfig.json | 2 +- internal/next-lru-cache/.eslintrc.cjs | 3 - internal/next-lru-cache/package.json | 7 +- .../cache-types/next-cache-handler-value.ts | 4 +- internal/next-lru-cache/tsconfig.json | 2 +- internal/prettier-config/index.js | 2 +- internal/prettier-config/package.json | 2 +- internal/tsconfig/node-packages.json | 7 - .../{tsconfig => typescript-config}/base.json | 21 +- internal/typescript-config/library.json | 11 + .../nextjs.json | 10 +- .../package.json | 2 +- package-lock.json | 442 ++++++++++++------ package.json | 24 +- packages/cache-handler/.eslintrc.cjs | 3 - packages/cache-handler/README.md | 34 +- packages/cache-handler/package.json | 5 +- packages/cache-handler/src/cache-handler.ts | 95 ++-- packages/cache-handler/src/constants.ts | 2 +- .../cache-handler/src/handlers/local-lru.ts | 1 - .../cache-handler/src/handlers/redis-stack.ts | 4 +- .../src/handlers/redis-strings.ts | 1 - packages/cache-handler/src/handlers/server.ts | 7 +- .../src/helpers/calculate-eviction-delay.ts | 4 +- .../src/helpers/promise-with-timeout.ts | 2 +- packages/cache-handler/tsconfig.json | 2 +- packages/diffscribe/.eslintrc.cjs | 3 - packages/diffscribe/CHANGELOG.md | 4 +- packages/diffscribe/README.md | 36 +- packages/diffscribe/package.json | 7 +- packages/diffscribe/src/diffscribe.ts | 14 +- packages/diffscribe/tsconfig.json | 2 +- packages/json-replacer-reviver/.eslintrc.cjs | 3 - packages/json-replacer-reviver/CHANGELOG.md | 8 +- packages/json-replacer-reviver/package.json | 5 +- .../src/json-replacer-reviver.test.ts | 4 +- .../src/json-replacer-reviver.ts | 6 +- packages/json-replacer-reviver/tsconfig.json | 2 +- packages/server/.eslintrc.cjs | 3 - packages/server/CHANGELOG.md | 32 +- packages/server/package.json | 5 +- packages/server/src/server.ts | 2 +- packages/server/tsconfig.json | 2 +- tsconfig.json | 2 +- turbo.json | 15 +- 100 files changed, 1349 insertions(+), 1140 deletions(-) create mode 100644 .changeset/poor-eels-cheer.md create mode 100644 .vscode/extensions.json create mode 100644 biome.json delete mode 100644 internal/backend/.eslintrc.cjs delete mode 100644 internal/eslint-config-neshca/README.md delete mode 100644 internal/eslint-config-neshca/library.js delete mode 100644 internal/eslint-config-neshca/next.js delete mode 100644 internal/eslint-config-neshca/package.json create mode 100644 internal/eslint-config/README.md create mode 100644 internal/eslint-config/next.js create mode 100644 internal/eslint-config/package.json delete mode 100644 internal/next-common/.eslintrc.cjs delete mode 100644 internal/next-lru-cache/.eslintrc.cjs delete mode 100644 internal/tsconfig/node-packages.json rename internal/{tsconfig => typescript-config}/base.json (58%) create mode 100644 internal/typescript-config/library.json rename internal/{tsconfig => typescript-config}/nextjs.json (60%) rename internal/{tsconfig => typescript-config}/package.json (76%) delete mode 100644 packages/cache-handler/.eslintrc.cjs delete mode 100644 packages/diffscribe/.eslintrc.cjs delete mode 100644 packages/json-replacer-reviver/.eslintrc.cjs delete mode 100644 packages/server/.eslintrc.cjs diff --git a/.changeset/poor-eels-cheer.md b/.changeset/poor-eels-cheer.md new file mode 100644 index 00000000..768d2012 --- /dev/null +++ b/.changeset/poor-eels-cheer.md @@ -0,0 +1,9 @@ +--- +'@neshca/json-replacer-reviver': patch +'cache-handler-docs': patch +'@neshca/cache-handler': patch +'diffscribe': patch +'@neshca/server': patch +--- + +Applied new code style. diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md index 8bd9f2ae..7be22d81 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.md +++ b/.github/ISSUE_TEMPLATE/bug_report.md @@ -29,10 +29,10 @@ If applicable, add screenshots or error logs to help explain your problem. **Environment:** -- OS: [e.g., MacOS, Windows, Linux] -- Node.js version: [e.g., 20.9.0] -- `@neshca/cache-handler` version: [e.g., 0.4.3] -- `next` version: [e.g., 14.0.2] +- OS: [e.g., MacOS, Windows, Linux] +- Node.js version: [e.g., 20.9.0] +- `@neshca/cache-handler` version: [e.g., 0.4.3] +- `next` version: [e.g., 14.0.2] **Dependencies and Versions** List any relevant dependencies and their versions. diff --git a/.github/actions/add-dist-tags/add-dist-tags.js b/.github/actions/add-dist-tags/add-dist-tags.js index 7963ad42..cd75433f 100644 --- a/.github/actions/add-dist-tags/add-dist-tags.js +++ b/.github/actions/add-dist-tags/add-dist-tags.js @@ -2,7 +2,7 @@ // @ts-check const core = require('@actions/core'); -const { execSync, execFileSync } = require('child_process'); +const { execFileSync } = require('child_process'); const { globSync } = require('glob'); const fs = require('fs'); @@ -33,13 +33,13 @@ function run() { for (const packagePath of packagesPaths) { const packageData = fs.readFileSync(packagePath, 'utf-8'); - const { name, version, private, distTags } = JSON.parse(packageData); + const { name, version, private: isPrivate, distTags } = JSON.parse(packageData); if (!Array.isArray(distTags)) { continue; } - if (private === true || private === 'true') { + if (isPrivate === true || isPrivate === 'true') { continue; } @@ -47,14 +47,14 @@ function run() { continue; } - const package = publishedPackages.find((pkg) => pkg.name === name); + const publishedPackage = publishedPackages.find((pkg) => pkg.name === name); - if (!package) { + if (!publishedPackage) { continue; } for (const tag of distTags) { - execFileSync('npm', ['dist-tag', 'add', `${package.name}@${package.version}`, tag], { + execFileSync('npm', ['dist-tag', 'add', `${publishedPackage.name}@${publishedPackage.version}`, tag], { stdio: 'inherit', }); } diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 3fc1e160..35416e04 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -33,8 +33,8 @@ jobs: run: cd apps/cache-testing && npx playwright install --with-deps - name: Build run: npm run build - - name: Lint - run: npm run lint + - name: Check code style + run: npm run codestyle:check - name: Run unit tests run: npm test - name: Run e2e tests diff --git a/.prettierignore b/.prettierignore index 3ed0497d..eae4c5fc 100644 --- a/.prettierignore +++ b/.prettierignore @@ -10,7 +10,7 @@ coverage # next.js .next/ out/ -build +build/ # turbo .turbo @@ -18,8 +18,14 @@ build # vercel .vercel -# monorepo -CHANGELOG.md - #packages dist + +# biome fromatted files +*.js +*.ts +*.tsx +*.jsx +*.cjs +*.mjs +*.mts diff --git a/.prettierrc.json b/.prettierrc.json index 1382ac74..be2a8ca1 100644 --- a/.prettierrc.json +++ b/.prettierrc.json @@ -1 +1 @@ -"@neshca/prettier-config" +"@repo/prettier-config" diff --git a/.vscode/extensions.json b/.vscode/extensions.json new file mode 100644 index 00000000..82701650 --- /dev/null +++ b/.vscode/extensions.json @@ -0,0 +1,3 @@ +{ + "recommendations": ["biomejs.biome", "dbaeumer.vscode-eslint", "esbenp.prettier-vscode", "unifiedjs.vscode-mdx"] +} diff --git a/.vscode/settings.json b/.vscode/settings.json index 1dfc223f..27bbd3e3 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -1,8 +1,37 @@ { - "eslint.workingDirectories": [ - { "pattern": "apps/*/" }, - { "pattern": "packages/*/" }, - { "pattern": "internal/*/" }, - { "pattern": "docs/*/" } - ] + "eslint.workingDirectories": [{ "pattern": "apps/*/" }, { "pattern": "docs/*/" }], + "editor.defaultFormatter": "biomejs.biome", + "[json]": { + "editor.defaultFormatter": "esbenp.prettier-vscode" + }, + "[md]": { + "editor.defaultFormatter": "esbenp.prettier-vscode" + }, + "[mdx]": { + "editor.defaultFormatter": "esbenp.prettier-vscode", + "editor.wordWrap": "on" + }, + "[yml]": { + "editor.defaultFormatter": "esbenp.prettier-vscode" + }, + "typescript.surveys.enabled": false, + "explorer.fileNesting.enabled": true, + "explorer.fileNesting.patterns": { + "*.ts": "$(capture).test.ts, $(capture).test.tsx", + "*.tsx": "$(capture).test.ts, $(capture).test.tsx" + }, + "cSpell.words": ["nextjs", "prerendered", "codestyle"], + "grammarly.selectors": [ + { + "language": "markdown", + "scheme": "file" + } + ], + "typescript.tsdk": "node_modules/typescript/lib", + "[markdown]": { + "editor.defaultFormatter": "esbenp.prettier-vscode" + }, + "[typescriptreact]": { + "editor.defaultFormatter": "biomejs.biome" + } } diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index f9a2616f..aa61d6d8 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -6,23 +6,23 @@ Firstly, thank you for considering contributing to our project! Your time and ex 1. **Familiarize Yourself with the project** - Spend time understanding the project's structure, codebase, and overarching goals. That will ensure that your contributions align well with our vision. + Spend time understanding the project's structure, codebase, and overarching goals. That will ensure that your contributions align well with our vision. 2. **Read the Monorepo Documentation** - I've structured our project as a monorepo. For a detailed understanding of our development practices and how to contribute within this structure, please refer to: + I've structured our project as a monorepo. For a detailed understanding of our development practices and how to contribute within this structure, please refer to: - - [Developing and Contributing in This Monorepo](./docs/contributing/monorepo.md) + - [Developing and Contributing in This Monorepo](./docs/contributing/monorepo.md) ## Tips for a Successful Contribution -- **Open Communication**: Before diving deep into coding, discussing your ideas or the changes you wish to make might. [Create an Issue](https://github.com/caching-tools/next-shared-cache/issues). +- **Open Communication**: Before diving deep into coding, discussing your ideas or the changes you wish to make might. [Create an Issue](https://github.com/caching-tools/next-shared-cache/issues). -- **Follow Coding Standards**: Consistency is key. Ensure your code follows the coding conventions and styles of the project. +- **Follow Coding Standards**: Consistency is key. Ensure your code follows the coding conventions and styles of the project. -- **Test Thoroughly**: Before submitting your contribution, test your changes thoroughly to ensure they don't introduce new bugs. +- **Test Thoroughly**: Before submitting your contribution, test your changes thoroughly to ensure they don't introduce new bugs. -- **Documentation**: Remember to update the documentation accordingly if your changes introduce new features or modify existing ones. +- **Documentation**: Remember to update the documentation accordingly if your changes introduce new features or modify existing ones. --- diff --git a/apps/cache-testing/.eslintrc.js b/apps/cache-testing/.eslintrc.js index 0cd1ac91..60546512 100644 --- a/apps/cache-testing/.eslintrc.js +++ b/apps/cache-testing/.eslintrc.js @@ -1,4 +1,10 @@ -/** @type {import('eslint').ESLint.ConfigData} */ +/** @type {import("eslint").Linter.Config} */ module.exports = { - extends: ['neshca/next'], + root: true, + extends: ['@repo/eslint-config/next.js'], + parser: '@typescript-eslint/parser', + parserOptions: { + project: true, + }, + ignorePatterns: ['*.mjs'], }; diff --git a/apps/cache-testing/cache-handler-redis-stack.mjs b/apps/cache-testing/cache-handler-redis-stack.mjs index 49c2b2ee..e1367e32 100644 --- a/apps/cache-testing/cache-handler-redis-stack.mjs +++ b/apps/cache-testing/cache-handler-redis-stack.mjs @@ -13,14 +13,12 @@ const client = createClient({ name: `cache-handler:${process.env.PORT ?? process.pid}`, }); -client.on('error', (error) => { - console.error('Redis error:', error); -}); +client.on('error', () => {}); IncrementalCache.onCreation(async () => { - console.log('Connecting Redis client...'); + console.info('Connecting Redis client...'); await client.connect(); - console.log('Redis client connected.'); + console.info('Redis client connected.'); const redisCache = await createRedisCache({ client, diff --git a/apps/cache-testing/cache-handler-redis-strings.mjs b/apps/cache-testing/cache-handler-redis-strings.mjs index 23d6253b..c4591a7a 100644 --- a/apps/cache-testing/cache-handler-redis-strings.mjs +++ b/apps/cache-testing/cache-handler-redis-strings.mjs @@ -14,14 +14,12 @@ const client = createClient({ name: `cache-handler:${PREFIX}${process.env.PORT ?? process.pid}`, }); -client.on('error', (error) => { - console.error('Redis error:', error); -}); +client.on('error', () => {}); IncrementalCache.onCreation(async () => { - console.log('Connecting Redis client...'); + console.info('Connecting Redis client...'); await client.connect(); - console.log('Redis client connected.'); + console.info('Redis client connected.'); const redisCache = createRedisCache({ client, diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index b752867a..48b5987d 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -11,8 +11,8 @@ "dev:app": "next dev", "e2e": "playwright test --config=./playwright.config.ts", "e2e:ui": "playwright test --ui --config=./playwright.config.ts", - "lint": "next lint", - "lint:fix": "next lint --fix", + "eslint:check": "next lint", + "eslint:fix": "next lint --fix", "start": "dotenv -e .env.local -v SERVER_STARTED=1 node .next/standalone/apps/cache-testing/server.js" }, "dependencies": { @@ -23,14 +23,16 @@ "devDependencies": { "@neshca/cache-handler": "*", "@neshca/json-replacer-reviver": "*", - "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.1.1-canary.1", "@playwright/test": "1.41.1", + "@repo/eslint-config": "*", + "@repo/typescript-config": "*", + "@types/eslint": "8.56.2", "@types/node": "20.11.7", "@types/react": "18.2.48", "@types/react-dom": "18.2.18", "dotenv-cli": "7.3.0", - "eslint-config-neshca": "*", + "eslint": "8.56.0", "fastify": "4.25.2", "pm2": "5.3.1", "redis": "4.6.12", diff --git a/apps/cache-testing/run-app-instances.ts b/apps/cache-testing/run-app-instances.ts index 08cfb0c2..6666f569 100644 --- a/apps/cache-testing/run-app-instances.ts +++ b/apps/cache-testing/run-app-instances.ts @@ -1,15 +1,17 @@ #!/usr/bin/env node -/* eslint-disable import/no-named-as-default-member -- pm2 does't have named exports */ -import process from 'node:process'; import { scheduler } from 'node:timers/promises'; import Fastify from 'fastify'; -import pm2 from 'pm2'; +import * as pm2Default from 'pm2'; + +const { default: pm2 } = pm2Default as unknown as { default: typeof import('pm2') }; const args = process.argv.slice(2).reduce>((acc, arg) => { const [key, value] = arg.split('='); - if (!key || !value) throw new Error(`Invalid argument: ${arg}`); + if (!key || !value) { + throw new Error(`Invalid argument: ${arg}`); + } acc[key] = value; return acc; @@ -82,5 +84,5 @@ app.listen({ port: 9000, host: 'localhost' }, (error, address) => { console.error(error); process.exit(1); } - console.log(`orchestration listening on ${address}`); + console.info(`orchestration listening on ${address}`); }); diff --git a/apps/cache-testing/src/pages/api/revalidate-pages.ts b/apps/cache-testing/src/pages/api/revalidate-pages.ts index 2c442b63..0f57beb3 100644 --- a/apps/cache-testing/src/pages/api/revalidate-pages.ts +++ b/apps/cache-testing/src/pages/api/revalidate-pages.ts @@ -21,7 +21,7 @@ export default async function handler(request: NextApiRequest, result: NextApiRe revalidated: true, now: formatTime(Date.now(), 3), }); - } catch (err) { + } catch (_error) { result.status(500).send('Error revalidating'); } } diff --git a/apps/cache-testing/src/utils/create-pages-get-get-server-side-props.ts b/apps/cache-testing/src/utils/create-pages-get-get-server-side-props.ts index dcc295c2..2a75e030 100644 --- a/apps/cache-testing/src/utils/create-pages-get-get-server-side-props.ts +++ b/apps/cache-testing/src/utils/create-pages-get-get-server-side-props.ts @@ -1,10 +1,8 @@ -import type { GetServerSidePropsContext, GetServerSidePropsResult } from 'next'; +import type { GetServerSideProps, GetServerSidePropsResult } from 'next'; import type { CountBackendApiResponseJson, PageProps } from './types'; -export function createPagesGetServerSideProps( - path: string, -): ({ params }: GetServerSidePropsContext) => Promise> { +export function createPagesGetServerSideProps(path: string): GetServerSideProps { return async function getServerSideProps(): Promise> { const pathAndTag = `/count/${path}`; diff --git a/apps/cache-testing/src/utils/create-pages-get-static-props.ts b/apps/cache-testing/src/utils/create-pages-get-static-props.ts index 5dd365fa..c940e6d1 100644 --- a/apps/cache-testing/src/utils/create-pages-get-static-props.ts +++ b/apps/cache-testing/src/utils/create-pages-get-static-props.ts @@ -1,12 +1,10 @@ -import type { GetStaticPropsContext, GetStaticPropsResult } from 'next'; +import type { GetStaticProps, GetStaticPropsContext, GetStaticPropsResult } from 'next'; import type { CountBackendApiResponseJson, PageProps } from './types'; const revalidate = 5; -export function createPagesGetStaticProps( - path: string, -): ({ params }: GetStaticPropsContext) => Promise> { +export function createPagesGetStaticProps(path: string): GetStaticProps { return async function getStaticProps({ params }: GetStaticPropsContext): Promise> { if (!params) { throw new Error('no params'); @@ -29,7 +27,7 @@ export function createPagesGetStaticProps( } const parsedResult = (await result.json()) as CountBackendApiResponseJson; - // + return { props: { count: parsedResult.count, diff --git a/apps/cache-testing/tests/app.spec.ts b/apps/cache-testing/tests/app.spec.ts index 4ed9110c..405a5984 100644 --- a/apps/cache-testing/tests/app.spec.ts +++ b/apps/cache-testing/tests/app.spec.ts @@ -1,5 +1,5 @@ import { scheduler } from 'node:timers/promises'; -import { test, expect } from '@playwright/test'; +import { expect, test } from '@playwright/test'; const paths = [ '/app/with-params/dynamic-true/200', diff --git a/apps/cache-testing/tests/pages.spec.ts b/apps/cache-testing/tests/pages.spec.ts index c8ba566c..5e51ef0c 100644 --- a/apps/cache-testing/tests/pages.spec.ts +++ b/apps/cache-testing/tests/pages.spec.ts @@ -1,4 +1,4 @@ -import { test, expect } from '@playwright/test'; +import { expect, test } from '@playwright/test'; const paths = [ '/pages/with-paths/fallback-blocking/200', diff --git a/apps/cache-testing/tsconfig.json b/apps/cache-testing/tsconfig.json index ced5f8bf..6e0a4c86 100644 --- a/apps/cache-testing/tsconfig.json +++ b/apps/cache-testing/tsconfig.json @@ -1,9 +1,14 @@ { - "extends": "@neshca/tsconfig/nextjs.json", + "extends": "@repo/typescript-config/nextjs.json", "compilerOptions": { "paths": { "cache-testing/*": ["./src/*"], }, + "plugins": [ + { + "name": "next", + }, + ], "strictNullChecks": true, }, "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx", ".next/types/**/*.ts", "run-app-instances.ts"], diff --git a/biome.json b/biome.json new file mode 100644 index 00000000..70dd7148 --- /dev/null +++ b/biome.json @@ -0,0 +1,56 @@ +{ + "$schema": "./node_modules/@biomejs/biome/configuration_schema.json", + "organizeImports": { + "enabled": true + }, + "linter": { + "enabled": true, + "rules": { + "recommended": true, + "suspicious": { + "noConsoleLog": "error", + "noApproximativeNumericConstant": "error", + "noMisrefactoredShorthandAssign": "error" + }, + "correctness": { + "noUndeclaredVariables": "error", + "noUnusedVariables": "error" + }, + "style": { + "noNamespace": "error", + "noNegationElse": "error", + "noParameterProperties": "error", + "noRestrictedGlobals": "error", + "noShoutyConstants": "error", + "useBlockStatements": "error", + "useCollapsedElseIf": "error", + "useShorthandArrayType": "error", + "useShorthandAssign": "error", + "useSingleCaseStatement": "error" + } + } + }, + "formatter": { + "enabled": true, + "lineWidth": 120, + "indentStyle": "space", + "indentWidth": 4 + }, + "vcs": { + "clientKind": "git", + "useIgnoreFile": true, + "defaultBranch": "canary", + "enabled": true + }, + "javascript": { + "formatter": { + "quoteStyle": "single" + }, + "globals": ["JSX"] + }, + "json": { + "formatter": { + "enabled": false + } + } +} diff --git a/docs/cache-handler-docs/.eslintrc.js b/docs/cache-handler-docs/.eslintrc.js index 0cd1ac91..941fbd6e 100644 --- a/docs/cache-handler-docs/.eslintrc.js +++ b/docs/cache-handler-docs/.eslintrc.js @@ -1,4 +1,9 @@ -/** @type {import('eslint').ESLint.ConfigData} */ +/** @type {import("eslint").Linter.Config} */ module.exports = { - extends: ['neshca/next'], + root: true, + extends: ['@repo/eslint-config/next.js'], + parser: '@typescript-eslint/parser', + parserOptions: { + project: true, + }, }; diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 03179ece..ec9bf872 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -6,7 +6,8 @@ "build:docs": "next build", "clean": "rimraf ./.next ./.turbo ./node_modules ./out", "dev:docs": "next dev", - "lint": "next lint", + "eslint:check": "next lint", + "eslint:fix": "next lint --fix", "start:docs": "next start" }, "dependencies": { @@ -17,12 +18,14 @@ "react-dom": "18.2.0" }, "devDependencies": { - "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.1.0", + "@repo/eslint-config": "*", + "@repo/typescript-config": "*", + "@types/eslint": "8.56.2", "@types/node": "20.11.7", "@types/react": "18.2.48", "@types/react-dom": "18.2.18", - "eslint-config-neshca": "*", + "eslint": "8.56.0", "typescript": "5.3.3" } } diff --git a/docs/cache-handler-docs/src/pages/configuration/build-id-as-prefix-key.mdx b/docs/cache-handler-docs/src/pages/configuration/build-id-as-prefix-key.mdx index f9b05303..5cae91ae 100644 --- a/docs/cache-handler-docs/src/pages/configuration/build-id-as-prefix-key.mdx +++ b/docs/cache-handler-docs/src/pages/configuration/build-id-as-prefix-key.mdx @@ -8,10 +8,10 @@ If you are rebuilding for each stage of your environment, you will need to gener ```js filename="next.config.js" copy const nextConfig = { - generateBuildId: async () => { - // This could be anything, using the latest git hash - return process.env.GIT_HASH; - }, + generateBuildId: async () => { + // This could be anything, using the latest git hash + return process.env.GIT_HASH; + }, }; ``` @@ -21,26 +21,26 @@ To use `buildId` for prefixing or namespacing the cache keys, use either of the ```js filename="next.config.js" copy const nextConfig = { - generateBuildId: async () => { - // This could be anything, using the latest git hash - return process.env.GIT_HASH; - }, + generateBuildId: async () => { + // This could be anything, using the latest git hash + return process.env.GIT_HASH; + }, }; ``` ```js filename="cache-handler.js" copy IncrementalCache.onCreation(async () => { - await client.connect(); + await client.connect(); - const redisCache = await createRedisCache({ - client, - keyPrefix: process.env.GIT_HASH, - }); + const redisCache = await createRedisCache({ + client, + keyPrefix: process.env.GIT_HASH, + }); - return { - cache: redisCache, - useFileSystem: true, - }; + return { + cache: redisCache, + useFileSystem: true, + }; }); ``` @@ -49,12 +49,12 @@ IncrementalCache.onCreation(async () => { #### Using without `generateBuildId` - In this case, you must build your app once and use the same build to deploy to all environments. + In this case, you must build your app once and use the same build to deploy to all environments. ```js filename="next.config.js" copy const nextConfig = { - output: 'standalone', + output: 'standalone', }; ``` @@ -64,26 +64,26 @@ const createRedisCache = require('@neshca/cache-handler/redis-stack').default; const createLruCache = require('@neshca/cache-handler/local-lru').default; IncrementalCache.onCreation(async ({ buildId }) => { - let redisCache; + let redisCache; - if (buildId) { - await client.connect(); + if (buildId) { + await client.connect(); - redisCache = await createRedisCache({ - client, - keyPrefix: `${buildId}:`, - }); - } + redisCache = await createRedisCache({ + client, + keyPrefix: `${buildId}:`, + }); + } - const localCache = createLruCache(); + const localCache = createLruCache(); - return { - cache: [redisCache, localCache], - useFileSystem: true, - }; + return { + cache: [redisCache, localCache], + useFileSystem: true, + }; }); ``` **Limitations:** -- Some cache values may be lost during the build process because the `buildId` is defined after some cache values have already been set. However, `buildId` will be defined from the beginning when you start your app. +- Some cache values may be lost during the build process because the `buildId` is defined after some cache values have already been set. However, `buildId` will be defined from the beginning when you start your app. diff --git a/docs/cache-handler-docs/src/pages/configuration/cache.mdx b/docs/cache-handler-docs/src/pages/configuration/cache.mdx index f027c1bc..1c32fdaa 100644 --- a/docs/cache-handler-docs/src/pages/configuration/cache.mdx +++ b/docs/cache-handler-docs/src/pages/configuration/cache.mdx @@ -10,31 +10,31 @@ The `onCreation` hook is used to configure a custom cache handler. The example b const { IncrementalCache } = require('@neshca/cache-handler'); IncrementalCache.onCreation(async () => { - const cacheStore = new Map(); - - const cache = { - name: 'custom-map-cache', - async get(key) { - return cacheStore.get(key); - }, - async set(key, value) { - cacheStore.set(key, value); - }, - }; - - return { - cache, - useFileSystem: true, - }; + const cacheStore = new Map(); + + const cache = { + name: 'custom-map-cache', + async get(key) { + return cacheStore.get(key); + }, + async set(key, value) { + cacheStore.set(key, value); + }, + }; + + return { + cache, + useFileSystem: true, + }; }); module.exports = IncrementalCache; ``` - Don't suppress errors when implementing the `get`, `set`, `getRevalidatedTags`, and `revalidateTag` methods. - Instead, throw errors and let `IncrementalCache` class handle them. Refer to the [debugging cache - article](/troubleshooting#method-2-debug-mode) for more information. + Don't suppress errors when implementing the `get`, `set`, `getRevalidatedTags`, and `revalidateTag` methods. Instead, + throw errors and let `IncrementalCache` class handle them. Refer to the [debugging cache + article](/troubleshooting#method-2-debug-mode) for more information. ## Advanced Cache Configuration: Custom Revalidation @@ -49,19 +49,19 @@ For control over the revalidation process, implement `getRevalidatedTags` and `r const revalidateTags = {}; const cache = { - name: 'custom-map-cache', - async get(key) { - return cacheStore.get(key); - }, - async set(key, value) { - cacheStore.set(key, value); - }, - async getRevalidatedTags() { - return revalidateTags; - }, - async revalidateTag(tag, revalidatedAt) { - revalidateTags[tag] = revalidatedAt; - }, + name: 'custom-map-cache', + async get(key) { + return cacheStore.get(key); + }, + async set(key, value) { + cacheStore.set(key, value); + }, + async getRevalidatedTags() { + return revalidateTags; + }, + async revalidateTag(tag, revalidatedAt) { + revalidateTags[tag] = revalidatedAt; + }, }; ``` @@ -69,16 +69,16 @@ Structure of the `RevalidatedTags` object: ```json filename="revalidateTags" { - "/": 1701897682816, - "/blog": 1701897532812, - "3058ccffeebc5674604d8dd3a0d1321b5948c5b820a32bb9089572db907edca1": 1701895635813, - "_N_T_/user/123": 1701897523542 + "/": 1701897682816, + "/blog": 1701897532812, + "3058ccffeebc5674604d8dd3a0d1321b5948c5b820a32bb9089572db907edca1": 1701895635813, + "_N_T_/user/123": 1701897523542 } ``` - For remote cache stores that don't support JavaScript objects directly, serialize the `revalidateTags` object before - storage and deserialize upon retrieval. + For remote cache stores that don't support JavaScript objects directly, serialize the `revalidateTags` object before + storage and deserialize upon retrieval. ## Handling Fetch in Next.js Cache Handlers @@ -89,16 +89,16 @@ Next.js modifies the global `fetch` function, which can lead to unexpected behav ```js filename="cache-handler.js" copy const cache = { - async get(key) { - const response = await fetch(url, { - next: { - // This option ensures that the fetch call is not affected by Next.js modifications - internal: true, - }, - }); - // Process the response as needed - }, - // Other cache methods... + async get(key) { + const response = await fetch(url, { + next: { + // This option ensures that the fetch call is not affected by Next.js modifications + internal: true, + }, + }); + // Process the response as needed + }, + // Other cache methods... }; ``` diff --git a/docs/cache-handler-docs/src/pages/configuration/development-environment.mdx b/docs/cache-handler-docs/src/pages/configuration/development-environment.mdx index 886fb624..69d1e4b5 100644 --- a/docs/cache-handler-docs/src/pages/configuration/development-environment.mdx +++ b/docs/cache-handler-docs/src/pages/configuration/development-environment.mdx @@ -6,9 +6,9 @@ The easiest way to turn off the cache handler in a development environment is to ```js filename="next.config.js" copy const nextConfig = { - cacheHandler: process.env.NODE_ENV === 'production' ? require.resolve('./cache-handler.js') : undefined, - // Use `experimental` option instead of the `cacheHandler` property when using Next.js versions from 13.5.1 to 14.0.4 - /* experimental: { + cacheHandler: process.env.NODE_ENV === 'production' ? require.resolve('./cache-handler.js') : undefined, + // Use `experimental` option instead of the `cacheHandler` property when using Next.js versions from 13.5.1 to 14.0.4 + /* experimental: { incrementalCacheHandlerPath: process.env.NODE_ENV === 'production' ? require.resolve('./cache-handler.js') : undefined, }, */ diff --git a/docs/cache-handler-docs/src/pages/configuration/on-creation.mdx b/docs/cache-handler-docs/src/pages/configuration/on-creation.mdx index 32eefd29..b3f67792 100644 --- a/docs/cache-handler-docs/src/pages/configuration/on-creation.mdx +++ b/docs/cache-handler-docs/src/pages/configuration/on-creation.mdx @@ -16,18 +16,18 @@ The `cacheCreationContext` argument is an object of type `CacheCreationContext`, 1. **`serverDistDir` (string):** - - Description: The absolute path to the Next.js server directory. - - Purpose: This path is critical for locating server-side resources and files that may be required by the cache implementation, such as directories for storing cache data in the file system. + - Description: The absolute path to the Next.js server directory. + - Purpose: This path is critical for locating server-side resources and files that may be required by the cache implementation, such as directories for storing cache data in the file system. 2. **`dev` (boolean, optional):** - - Description: Indicates whether the Next.js application is running in development mode. - - Purpose: This flag can be used to alter cache behavior based on the environment. + - Description: Indicates whether the Next.js application is running in development mode. + - Purpose: This flag can be used to alter cache behavior based on the environment. 3. **`buildId` (string, optional):** - - Description: A unique identifier for the current build of the Next.js application, generated during the `next build` process. - - Purpose: The `buildId` may be used as a prefix for namespacing cache keys, ensuring distinct and relevant cache data for each build of the application. + - Description: A unique identifier for the current build of the Next.js application, generated during the `next build` process. + - Purpose: The `buildId` may be used as a prefix for namespacing cache keys, ensuring distinct and relevant cache data for each build of the application. ### Usage of `onCreationHook` @@ -39,13 +39,13 @@ Here's a simplified example of how the `onCreation` method might be used: ```js filename="cache-handler.js" IncrementalCache.onCreation(async (context) => { - const customCacheLogic = { - // Define custom get, set, and other cache methods - }; + const customCacheLogic = { + // Define custom get, set, and other cache methods + }; - return { - cache: customCacheLogic, - }; + return { + cache: customCacheLogic, + }; }); ``` @@ -59,13 +59,13 @@ The `CacheConfig` object defines the configuration for the cache system. It typi 1. **`cache` (Cache | Cache[]):** - - Description: Represents the [custom cache](/configuration/cache) instance or an array of cache instances. These instances must conform to the `Cache` interface, as defined in the `@neshca/cache-handler` API. - - Usage: This is where you provide your custom cache implementation. If an array of caches is provided, it enables the use of multiple caching layers or strategies, offering more complex and tailored caching solutions. + - Description: Represents the [custom cache](/configuration/cache) instance or an array of cache instances. These instances must conform to the `Cache` interface, as defined in the `@neshca/cache-handler` API. + - Usage: This is where you provide your custom cache implementation. If an array of caches is provided, it enables the use of multiple caching layers or strategies, offering more complex and tailored caching solutions. 2. **`useFileSystem` (boolean, optional):** - - Description: Determines whether to utilize file system caching in addition to the custom cache implementation. - - Usage: This can be set to `true` to enable file system caching or `false` to rely solely on the custom cache logic provided. It's particularly useful in scenarios where persistent caching is needed across server restarts or deployments. + - Description: Determines whether to utilize file system caching in addition to the custom cache implementation. + - Usage: This can be set to `true` to enable file system caching or `false` to rely solely on the custom cache logic provided. It's particularly useful in scenarios where persistent caching is needed across server restarts or deployments. ### Example Usage and Return Value @@ -73,31 +73,31 @@ Here is an example of how the `onCreation` hook might be implemented and what th ```js filename="cache-handler.js" IncrementalCache.onCreation(async (context) => { - const customCache = { - // Custom cache methods like get, set, etc. - }; + const customCache = { + // Custom cache methods like get, set, etc. + }; - const cacheConfig = { - useFileSystem: false, // Example of disabling file system caching - cache: customCache, // Custom cache implementation - }; + const cacheConfig = { + useFileSystem: false, // Example of disabling file system caching + cache: customCache, // Custom cache implementation + }; - return cacheConfig; // Returning the CacheConfig object + return cacheConfig; // Returning the CacheConfig object }); // Or in a more complex scenario with multiple caches IncrementalCache.onCreation(async (context) => { - const primaryCache = { - /* ... */ - }; - const secondaryCache = { - /* ... */ - }; - - return { - useFileSystem: true, - cache: [primaryCache, secondaryCache], // Array of cache instances - }; + const primaryCache = { + /* ... */ + }; + const secondaryCache = { + /* ... */ + }; + + return { + useFileSystem: true, + cache: [primaryCache, secondaryCache], // Array of cache instances + }; }); ``` @@ -105,28 +105,28 @@ In these examples, the `onCreation` hook configures the cache behavior based on 1. **`get(key)`: Data Retrieval Across Layers** - - The `get` method iterates through each cache layer, starting with the `primaryCache`. - - It attempts to retrieve the value associated with `key` from the `primaryCache` first. - - If the `primaryCache` results in a cache miss (value not found), the system then checks the `secondaryCache`. - - The method returns the value as soon as it is found in any layer, ensuring that the main cache layer is always checked first. + - The `get` method iterates through each cache layer, starting with the `primaryCache`. + - It attempts to retrieve the value associated with `key` from the `primaryCache` first. + - If the `primaryCache` results in a cache miss (value not found), the system then checks the `secondaryCache`. + - The method returns the value as soon as it is found in any layer, ensuring that the main cache layer is always checked first. 2. **`set(key, value, ttl)`: Data Storage Across Layers** - - The `set` method concurrently updates or adds the value in all cache layers by iterating over each cache instance (`primaryCache` and `secondaryCache`). - - This ensures that the data is consistently stored across all layers, maintaining data integrity and availability. - - It uses `Promise.allSettled` under the hood, ensuring that the operation completes in all caches, regardless of whether one or more of the `set` operations fail or succeed. + - The `set` method concurrently updates or adds the value in all cache layers by iterating over each cache instance (`primaryCache` and `secondaryCache`). + - This ensures that the data is consistently stored across all layers, maintaining data integrity and availability. + - It uses `Promise.allSettled` under the hood, ensuring that the operation completes in all caches, regardless of whether one or more of the `set` operations fail or succeed. 3. **`getRevalidatedTags()`: Retrieving Revalidated Tags Across Layers** - - The search for revalidated tags begins with the `primaryCache` and, if not found, proceeds to the `secondaryCache`. - - The method returns the `RevalidatedTags` from the first cache layer where they are found. + - The search for revalidated tags begins with the `primaryCache` and, if not found, proceeds to the `secondaryCache`. + - The method returns the `RevalidatedTags` from the first cache layer where they are found. 4. **`revalidateTag(tag, revalidatedAt)`: Updating Revalidation Status Across Layers** - - Similar to the `set` method, `revalidateTag` concurrently updates the revalidation status of a tag in all cache layers. - - It marks the specified `tag` as revalidated with the provided timestamp (`revalidatedAt`) in both the `primaryCache` and `secondaryCache`. - - It uses `Promise.allSettled` under the hood, ensuring that the revalidation status is consistently updated across all layers. + - Similar to the `set` method, `revalidateTag` concurrently updates the revalidation status of a tag in all cache layers. + - It marks the specified `tag` as revalidated with the provided timestamp (`revalidatedAt`) in both the `primaryCache` and `secondaryCache`. + - It uses `Promise.allSettled` under the hood, ensuring that the revalidation status is consistently updated across all layers. 5. **`name`: A descriptive name for the cache handler instance.** - - This is used for logging and debugging purposes. + - This is used for logging and debugging purposes. diff --git a/docs/cache-handler-docs/src/pages/configuration/opt-out-cache-on-build.mdx b/docs/cache-handler-docs/src/pages/configuration/opt-out-cache-on-build.mdx index 1b581e58..8fa7b24e 100644 --- a/docs/cache-handler-docs/src/pages/configuration/opt-out-cache-on-build.mdx +++ b/docs/cache-handler-docs/src/pages/configuration/opt-out-cache-on-build.mdx @@ -6,28 +6,28 @@ There are scenarios, especially during deployment, where your Redis server may n 1. **Modify the `cache-handler.js` File**: Adjust the `onCreation` method in your `cache-handler.js` file to conditionally connect to the Redis cache. The modified code should look like this: - ```js filename="cache-handler.js" copy - IncrementalCache.onCreation(async () => { - let redisCache; + ```js filename="cache-handler.js" copy + IncrementalCache.onCreation(async () => { + let redisCache; - if (process.env.REDIS_AVAILABLE) { - await client.connect(); + if (process.env.REDIS_AVAILABLE) { + await client.connect(); - redisCache = await createRedisCache({ - client, - }); - } + redisCache = await createRedisCache({ + client, + }); + } - // The cache array can contain undefined values. The will be filtered out by IncrementalCache. - const cache = [redisCache]; + // The cache array can contain undefined values. The will be filtered out by IncrementalCache. + const cache = [redisCache]; - return { - cache, - // Always use the file system cache when building the app without any cache. - useFileSystem: !cache.some(Boolean), - }; - }); - ``` + return { + cache, + // Always use the file system cache when building the app without any cache. + useFileSystem: !cache.some(Boolean), + }; + }); + ``` 2. **Environment Variable Check**: The `process.env.REDIS_AVAILABLE` environment variable is used to determine if the server has already started. This ensures that the Redis client attempts a connection only when the server is up and running. @@ -35,4 +35,4 @@ There are scenarios, especially during deployment, where your Redis server may n ### Notes: -- This setup is particularly useful in continuous integration and deployment pipelines where the availability of external services like Redis might not be guaranteed at build time. +- This setup is particularly useful in continuous integration and deployment pipelines where the availability of external services like Redis might not be guaranteed at build time. diff --git a/docs/cache-handler-docs/src/pages/configuration/ttl.mdx b/docs/cache-handler-docs/src/pages/configuration/ttl.mdx index 96a564d8..0bc0b4a6 100644 --- a/docs/cache-handler-docs/src/pages/configuration/ttl.mdx +++ b/docs/cache-handler-docs/src/pages/configuration/ttl.mdx @@ -8,8 +8,8 @@ Time to Live (TTL) is a crucial feature in cache management. It automatically ex To effectively implement TTL, consider the following: -- **File System Cache Limitation**: Set `useFileSystem: false` in your cache configuration. This step is essential for TTL to function correctly. If the file system cache is enabled, it may cause cache entries to be retrieved from the file system cache even after they've expired in Redis of LRU. -- **Next.js Pages Directory Issue**: There is a known limitation with Next.js regarding the file system cache within the Pages directory. It's recommended to apply TTL only for the App directory pages. For more information, refer to the [file system cache configuration documentation](/configuration/use-file-system#configuring-access-to-the-file-system). +- **File System Cache Limitation**: Set `useFileSystem: false` in your cache configuration. This step is essential for TTL to function correctly. If the file system cache is enabled, it may cause cache entries to be retrieved from the file system cache even after they've expired in Redis of LRU. +- **Next.js Pages Directory Issue**: There is a known limitation with Next.js regarding the file system cache within the Pages directory. It's recommended to apply TTL only for the App directory pages. For more information, refer to the [file system cache configuration documentation](/configuration/use-file-system#configuring-access-to-the-file-system). ### TTL and Incremental Static Regeneration (ISR) @@ -21,28 +21,28 @@ Here's how to use TTL in preconfigured Handlers: ```js filename="cache-handler.js" copy IncrementalCache.onCreation(async () => { - await client.connect(); - - // In this example, we emulate a stale-while-revalidate cache strategy - // After the `maxAge` the cache entry will be treated as stale and will be revalidated - // And if the revalidation fails, it will be removed from the cache after `maxAge * 1.5` - function useTtl(maxAge) { - return maxAge * 1.5; - } - - const redisCache = await createRedisCache({ - client, - useTtl, // Enable TTL for Redis cache - }); - - const localCache = createLruCache({ - useTtl, // Enable TTL for local cache - }); - - return { - cache: [redisCache, localCache], - useFileSystem: !useTtl, // Disable file system cache to ensure TTL effectiveness - }; + await client.connect(); + + // In this example, we emulate a stale-while-revalidate cache strategy + // After the `maxAge` the cache entry will be treated as stale and will be revalidated + // And if the revalidation fails, it will be removed from the cache after `maxAge * 1.5` + function useTtl(maxAge) { + return maxAge * 1.5; + } + + const redisCache = await createRedisCache({ + client, + useTtl, // Enable TTL for Redis cache + }); + + const localCache = createLruCache({ + useTtl, // Enable TTL for local cache + }); + + return { + cache: [redisCache, localCache], + useFileSystem: !useTtl, // Disable file system cache to ensure TTL effectiveness + }; }); ``` @@ -54,26 +54,26 @@ For custom cache handlers, here are examples for Redis: ```js filename="cache-handler.js" copy IncrementalCache.onCreation(async () => { - const cache = { - // ... other cache methods ... - - async set(key, value, maxAge) { - // Serialize value and set TTL using Redis 'EX' option - await client.set( - key, - JSON.stringify(value, replaceJsonWithBase64), - // Delete key when they become stale - typeof maxAge === 'number' ? { EX: maxAge } : undefined, - ); - }, - - // ... other cache methods ... - }; - - return { - useFileSystem: false, // Disable file system cache for TTL efficiency - cache, - }; + const cache = { + // ... other cache methods ... + + async set(key, value, maxAge) { + // Serialize value and set TTL using Redis 'EX' option + await client.set( + key, + JSON.stringify(value, replaceJsonWithBase64), + // Delete key when they become stale + typeof maxAge === 'number' ? { EX: maxAge } : undefined, + ); + }, + + // ... other cache methods ... + }; + + return { + useFileSystem: false, // Disable file system cache for TTL efficiency + cache, + }; }); ``` @@ -81,26 +81,26 @@ IncrementalCache.onCreation(async () => { ```js filename="cache-handler.js" copy IncrementalCache.onCreation(async () => { - const cache = { - // ... other cache methods ... - - async set(key, value, maxAge) { - await client.json.set(key, '.', value); - - if (typeof maxAge === 'number') { - // Delete key when they become stale - // Set TTL using Redis 'EXPIRE' command - await client.expire(key, maxAge); - } - }, - - // ... other cache methods ... - }; - - return { - useFileSystem: false, // Disable file system cache for TTL efficiency - cache, - }; + const cache = { + // ... other cache methods ... + + async set(key, value, maxAge) { + await client.json.set(key, '.', value); + + if (typeof maxAge === 'number') { + // Delete key when they become stale + // Set TTL using Redis 'EXPIRE' command + await client.expire(key, maxAge); + } + }, + + // ... other cache methods ... + }; + + return { + useFileSystem: false, // Disable file system cache for TTL efficiency + cache, + }; }); ``` @@ -112,22 +112,22 @@ const { calculateEvictionDelay } = require('@neshca/cache-handler/helpers'); // ... IncrementalCache.onCreation(async () => { - const cache = { - // ... other cache methods ... - - async set(key, value, maxAge) { - const EX = calculateEvictionDelay(maxAgeSeconds, useTtl); - // Serialize value and set TTL using Redis 'EX' option - // Delete key with a delay when they become stale - await client.set(key, JSON.stringify(value, replaceJsonWithBase64), EX ? { EX } : undefined); - }, - - // ... other cache methods ... - }; - - return { - useFileSystem: false, // Disable file system cache for TTL efficiency - cache, - }; + const cache = { + // ... other cache methods ... + + async set(key, value, maxAge) { + const EX = calculateEvictionDelay(maxAgeSeconds, useTtl); + // Serialize value and set TTL using Redis 'EX' option + // Delete key with a delay when they become stale + await client.set(key, JSON.stringify(value, replaceJsonWithBase64), EX ? { EX } : undefined); + }, + + // ... other cache methods ... + }; + + return { + useFileSystem: false, // Disable file system cache for TTL efficiency + cache, + }; }); ``` diff --git a/docs/cache-handler-docs/src/pages/configuration/use-file-system.mdx b/docs/cache-handler-docs/src/pages/configuration/use-file-system.mdx index 6f122a13..b28607e8 100644 --- a/docs/cache-handler-docs/src/pages/configuration/use-file-system.mdx +++ b/docs/cache-handler-docs/src/pages/configuration/use-file-system.mdx @@ -10,32 +10,32 @@ The file system cache is enabled by default. You can disable it by setting `useF const { IncrementalCache } = require('@neshca/cache-handler'); IncrementalCache.onCreation(async () => { - const cacheStore = new Map(); - - const cache = { - async get(key) { - return cacheStore.get(key); - }, - async set(key, value) { - cacheStore.set(key, value); - }, - }; - - return { - cache, - // Disable it only if you are using only the App router. - // In this case you will gain some performance boost. - // Check out the warning below. - useFileSystem: false, - }; + const cacheStore = new Map(); + + const cache = { + async get(key) { + return cacheStore.get(key); + }, + async set(key, value) { + cacheStore.set(key, value); + }, + }; + + return { + cache, + // Disable it only if you are using only the App router. + // In this case you will gain some performance boost. + // Check out the warning below. + useFileSystem: false, + }; }); module.exports = IncrementalCache; ``` - There is a [bug ↗](https://github.com/vercel/next.js/issues/58094) in the Next.js' Pages router when disabling the - file system cache. Do not disable it if you are using Pages. + There is a [bug ↗](https://github.com/vercel/next.js/issues/58094) in the Next.js' Pages router when disabling the + file system cache. Do not disable it if you are using Pages. ## The usage of `local-lru` Handler instead of file system cache @@ -66,19 +66,19 @@ const createRedisCache = require('@neshca/cache-handler/redis-stack').default; const createLruCache = require('@neshca/cache-handler/local-lru').default; IncrementalCache.onCreation(async (context) => { - const createRedisCache = await createRedisCache({ - /* ... */ - }); - - const lruCache = createLruCache({ - maxItemsNumber: 10000, // Limit to 10000 items - maxItemSizeBytes: 1024 * 1024 * 500, // Limit to 500 MB - }); - - return { - cache: [createRedisCache, lruCache], // Array of cache instances - useFileSystem: false, // Disable file system cache - }; + const createRedisCache = await createRedisCache({ + /* ... */ + }); + + const lruCache = createLruCache({ + maxItemsNumber: 10000, // Limit to 10000 items + maxItemSizeBytes: 1024 * 1024 * 500, // Limit to 500 MB + }); + + return { + cache: [createRedisCache, lruCache], // Array of cache instances + useFileSystem: false, // Disable file system cache + }; }); ``` @@ -86,16 +86,16 @@ IncrementalCache.onCreation(async (context) => { 1. **`maxItemsNumber` (number, optional):** - - Description: Specifies the maximum number of items to be stored in the cache. - - Usage: This can be set to any positive integer. If not provided, the default value is 1000. + - Description: Specifies the maximum number of items to be stored in the cache. + - Usage: This can be set to any positive integer. If not provided, the default value is 1000. 2. **`maxItemSizeBytes` (number, optional):** - - Description: Defines the maximum size of an item in bytes. - - Usage: This can be set to any positive integer representing the maximum size in bytes. If not provided, the default value is 100 MB. + - Description: Defines the maximum size of an item in bytes. + - Usage: This can be set to any positive integer representing the maximum size in bytes. If not provided, the default value is 100 MB. ### Considerations -- It's recommended to use this Handler as a fallback for Redis Handler, particularly when using only the App router. -- Don't use this Handler if you are using shared file systems between application replicas. -- Be cautious of a known bug in Next.js' Pages router when disabling the file system cache. Do not disable it if you are using Pages, as mentioned in the preceding section. +- It's recommended to use this Handler as a fallback for Redis Handler, particularly when using only the App router. +- Don't use this Handler if you are using shared file systems between application replicas. +- Be cautious of a known bug in Next.js' Pages router when disabling the file system cache. Do not disable it if you are using Pages, as mentioned in the preceding section. diff --git a/docs/cache-handler-docs/src/pages/index.mdx b/docs/cache-handler-docs/src/pages/index.mdx index b3591e5a..9451a2aa 100644 --- a/docs/cache-handler-docs/src/pages/index.mdx +++ b/docs/cache-handler-docs/src/pages/index.mdx @@ -10,9 +10,9 @@ Next.js applications are often deployed in a self-hosted distributed environment `@neshca/cache-handler` elegantly addresses these challenges by offering: -- A straightforward API complemented by meticulously crafted Handlers. -- Comprehensive customization options. -- Simplified on-demand revalidation, akin to managing a single application instance. +- A straightforward API complemented by meticulously crafted Handlers. +- Comprehensive customization options. +- Simplified on-demand revalidation, akin to managing a single application instance. ## Kickstarting Your Custom Cache Solution diff --git a/docs/cache-handler-docs/src/pages/installation.mdx b/docs/cache-handler-docs/src/pages/installation.mdx index 47daae80..ca7579a8 100644 --- a/docs/cache-handler-docs/src/pages/installation.mdx +++ b/docs/cache-handler-docs/src/pages/installation.mdx @@ -6,9 +6,9 @@ This section guides you through the initial setup and basic usage of `@neshca/ca ### Prerequisites -- **Node.js:** Version 18.17 or newer. -- **Next.js:** Version 13.5.1 or newer. -- **Redis (optional):** Version 4.6.0 or newer. +- **Node.js:** Version 18.17 or newer. +- **Next.js:** Version 13.5.1 or newer. +- **Redis (optional):** Version 4.6.0 or newer. ### Quick Start Installation @@ -29,16 +29,16 @@ pnpm create next-app --example cache-handler-redis cache-handler-redis-app 1. **Install `@neshca/cache-handler`**: Execute this command in your Next.js project root directory: - ```sh npm2yarn copy - npm install -D @neshca/cache-handler - ``` + ```sh npm2yarn copy + npm install -D @neshca/cache-handler + ``` 2. **Optional Redis Installation**: Install Redis if you plan to use distributed caching across multiple server instances: - ```sh npm2yarn copy - npm install -D redis - ``` + ```sh npm2yarn copy + npm install -D redis + ``` ### Basic Custom Configuration @@ -48,77 +48,77 @@ pnpm create next-app --example cache-handler-redis cache-handler-redis-app 2. **Configure the Cache Handler**: Below is a basic setup example: - ```js filename="cache-handler.js" copy - const { IncrementalCache } = require('@neshca/cache-handler'); - - IncrementalCache.onCreation(async () => { - // Don't use Map in production. This is just an example. - const cacheStore = new Map(); - - const cache = { - async get(key) { - return cacheStore.get(key); - }, - async set(key, value) { - cacheStore.set(key, value); - }, - }; - - return { - cache, - useFileSystem: true, - }; - }); - - module.exports = IncrementalCache; - ``` - - EcmaScript modules can be used by adding the `.mjs` extension to the file and using an `import` statement instead of a `require` call: - - ```js filename="cache-handler.mjs" copy - import { IncrementalCache } from '@neshca/cache-handler'; - - IncrementalCache.onCreation(async () => { - const cacheStore = new Map(); - - const cache = { - async get(key) { - return cacheStore.get(key); - }, - async set(key, value) { - cacheStore.set(key, value); - }, - }; - - return { - cache, - useFileSystem: true, - }; - }); - - export default IncrementalCache; - ``` + ```js filename="cache-handler.js" copy + const { IncrementalCache } = require('@neshca/cache-handler'); + + IncrementalCache.onCreation(async () => { + // Don't use Map in production. This is just an example. + const cacheStore = new Map(); + + const cache = { + async get(key) { + return cacheStore.get(key); + }, + async set(key, value) { + cacheStore.set(key, value); + }, + }; + + return { + cache, + useFileSystem: true, + }; + }); + + module.exports = IncrementalCache; + ``` + + EcmaScript modules can be used by adding the `.mjs` extension to the file and using an `import` statement instead of a `require` call: + + ```js filename="cache-handler.mjs" copy + import { IncrementalCache } from '@neshca/cache-handler'; + + IncrementalCache.onCreation(async () => { + const cacheStore = new Map(); + + const cache = { + async get(key) { + return cacheStore.get(key); + }, + async set(key, value) { + cacheStore.set(key, value); + }, + }; + + return { + cache, + useFileSystem: true, + }; + }); + + export default IncrementalCache; + ``` 3. **Integrate with Next.js**: Update your `next.config.js` to utilize the cache handler, ensuring it's only active in production: - ```js filename="next.config.js" copy - const nextConfig = { - // './cache-handler.mjs' in case you're using EcmaScript modules. - cacheHandler: process.env.NODE_ENV === 'production' ? require.resolve('./cache-handler.js') : undefined, - // Use `experimental` option instead of the `cacheHandler` property when using Next.js versions from 13.5.1 to 14.0.4 - /* experimental: { - incrementalCacheHandlerPath: - process.env.NODE_ENV === 'production' ? require.resolve('./cache-handler.js') : undefined, - }, */ - }; - - module.exports = nextConfig; - ``` + ```js filename="next.config.js" copy + const nextConfig = { + // './cache-handler.mjs' in case you're using EcmaScript modules. + cacheHandler: process.env.NODE_ENV === 'production' ? require.resolve('./cache-handler.js') : undefined, + // Use `experimental` option instead of the `cacheHandler` property when using Next.js versions from 13.5.1 to 14.0.4 + /* experimental: { + incrementalCacheHandlerPath: + process.env.NODE_ENV === 'production' ? require.resolve('./cache-handler.js') : undefined, + }, */ + }; + + module.exports = nextConfig; + ``` - Do not import @neshca/cache-handler to your components or pages. It is only meant to be used in{' '} - cache-handler.js files. + Do not import @neshca/cache-handler to your components or pages. It is only meant to be used in{' '} + cache-handler.js files. ### Running Your Application @@ -135,7 +135,7 @@ pnpm create next-app --example cache-handler-redis cache-handler-redis-app With the setup complete, explore `@neshca/cache-handler`'s advanced features: -- Check out the [Redis Integration Example](/redis-stack); -- Learn [how to use the API](/configuration/on-creation) and craft your own cache handler configuration; -- Learn [how to use TTL](/configuration/ttl) for cache eviction. -- See how to [debug and troubleshoot](/troubleshooting) your cache handler configuration. +- Check out the [Redis Integration Example](/redis-stack); +- Learn [how to use the API](/configuration/on-creation) and craft your own cache handler configuration; +- Learn [how to use TTL](/configuration/ttl) for cache eviction. +- See how to [debug and troubleshoot](/troubleshooting) your cache handler configuration. diff --git a/docs/cache-handler-docs/src/pages/redis-stack-custom.mdx b/docs/cache-handler-docs/src/pages/redis-stack-custom.mdx index 81f7a34c..233a02b0 100644 --- a/docs/cache-handler-docs/src/pages/redis-stack-custom.mdx +++ b/docs/cache-handler-docs/src/pages/redis-stack-custom.mdx @@ -3,8 +3,8 @@ import { Callout } from 'nextra/components'; ## Redis Stack example - In this example, we assume that in your deployment, you have `REDIS_URL` environment variable set to the URL of your - Redis instance. You can use any other way to set the URL. + In this example, we assume that in your deployment, you have `REDIS_URL` environment variable set to the URL of your + Redis instance. You can use any other way to set the URL. Create a file called `cache-handler.js` next to you `next.config.js` with the following contents: @@ -17,87 +17,87 @@ const { createClient } = require('redis'); const REVALIDATED_TAGS_KEY = 'sharedRevalidatedTags'; const client = createClient({ - url: process.env.REDIS_URL ?? 'redis://localhost:6379', + url: process.env.REDIS_URL ?? 'redis://localhost:6379', }); client.on('error', (error) => { - console.error('Redis error:', error); + console.error('Redis error:', error); }); IncrementalCache.onCreation(async () => { - await client.connect(); + await client.connect(); - // read more about TTL limitations https://caching-tools.github.io/next-shared-cache/configuration/ttl - const useTtl = false; + // read more about TTL limitations https://caching-tools.github.io/next-shared-cache/configuration/ttl + const useTtl = false; - function assertClientIsReady() { - if (!client.isReady) { - throw new Error('Redis client is not ready'); - } + function assertClientIsReady() { + if (!client.isReady) { + throw new Error('Redis client is not ready'); } - - assertClientIsReady(); - - await client.json.set( - REVALIDATED_TAGS_KEY, - '.', - {}, - { - NX: true, - }, - ); - - const localCache = createLruCache({ - useTtl, - }); - - const redisCache = { - name: 'custom-redis-stack', - async get(key) { - assertClientIsReady(); - - const cacheValue = (await client.json.get(key)) ?? null; - - if (cacheValue?.value?.kind === 'ROUTE') { - cacheValue.value.body = Buffer.from(cacheValue.value.body, 'base64'); - } - - return cacheValue; - }, - async set(key, cacheValue, ttl) { - assertClientIsReady(); - - let preparedCacheValue = cacheValue; - - if (cacheValue.value?.kind === 'ROUTE') { - preparedCacheValue = structuredClone(cacheValue); - preparedCacheValue.value.body = cacheValue.value.body.toString('base64'); - } - - await client.json.set(key, '.', preparedCacheValue); - - if (useTtl && typeof ttl === 'number') { - await client.expire(key, ttl); - } - }, - async getRevalidatedTags() { - assertClientIsReady(); - - const sharedRevalidatedTags = (await client.json.get(REVALIDATED_TAGS_KEY)) ?? undefined; - - return sharedRevalidatedTags; - }, - async revalidateTag(tag, revalidatedAt) { - assertClientIsReady(); - - await client.json.set(REVALIDATED_TAGS_KEY, `.${tag}`, revalidatedAt); - }, - }; - - return { - cache: [redisCache, localCache], - useFileSystem: !useTtl, - }; + } + + assertClientIsReady(); + + await client.json.set( + REVALIDATED_TAGS_KEY, + '.', + {}, + { + NX: true, + }, + ); + + const localCache = createLruCache({ + useTtl, + }); + + const redisCache = { + name: 'custom-redis-stack', + async get(key) { + assertClientIsReady(); + + const cacheValue = (await client.json.get(key)) ?? null; + + if (cacheValue?.value?.kind === 'ROUTE') { + cacheValue.value.body = Buffer.from(cacheValue.value.body, 'base64'); + } + + return cacheValue; + }, + async set(key, cacheValue, ttl) { + assertClientIsReady(); + + let preparedCacheValue = cacheValue; + + if (cacheValue.value?.kind === 'ROUTE') { + preparedCacheValue = structuredClone(cacheValue); + preparedCacheValue.value.body = cacheValue.value.body.toString('base64'); + } + + await client.json.set(key, '.', preparedCacheValue); + + if (useTtl && typeof ttl === 'number') { + await client.expire(key, ttl); + } + }, + async getRevalidatedTags() { + assertClientIsReady(); + + const sharedRevalidatedTags = (await client.json.get(REVALIDATED_TAGS_KEY)) ?? undefined; + + return sharedRevalidatedTags; + }, + async revalidateTag(tag, revalidatedAt) { + assertClientIsReady(); + + await client.json.set(REVALIDATED_TAGS_KEY, `.${tag}`, revalidatedAt); + }, + }; + + return { + cache: [redisCache, localCache], + useFileSystem: !useTtl, + }; }); module.exports = IncrementalCache; diff --git a/docs/cache-handler-docs/src/pages/redis-stack.mdx b/docs/cache-handler-docs/src/pages/redis-stack.mdx index dd1b0f36..73cb1405 100644 --- a/docs/cache-handler-docs/src/pages/redis-stack.mdx +++ b/docs/cache-handler-docs/src/pages/redis-stack.mdx @@ -3,8 +3,8 @@ import { Callout } from 'nextra/components'; ## Redis Stack example - In this example, we assume that in your deployment, you have `REDIS_URL` environment variable set to the URL of your - Redis instance. You can use any other way to set the URL. + In this example, we assume that in your deployment, you have `REDIS_URL` environment variable set to the URL of your + Redis instance. You can use any other way to set the URL. Create a file called `cache-handler.js` next to you `next.config.js` with the following contents: @@ -16,35 +16,35 @@ const createLruCache = require('@neshca/cache-handler/local-lru').default; const { createClient } = require('redis'); const client = createClient({ - url: process.env.REDIS_URL ?? 'redis://localhost:6379', + url: process.env.REDIS_URL ?? 'redis://localhost:6379', }); client.on('error', (error) => { - console.error('Redis error:', error); + console.error('Redis error:', error); }); IncrementalCache.onCreation(async () => { - // read more about TTL limitations https://caching-tools.github.io/next-shared-cache/configuration/ttl - const useTtl = false; - - await client.connect(); - - const redisCache = await createRedisCache({ - client, - useTtl, - // timeout for the Redis client operations like `get` and `set` - // afeter this timeout, the operation will be considered failed and the `localCache` will be used - timeoutMs: 5000, - }); - - const localCache = createLruCache({ - useTtl, - }); - - return { - cache: [redisCache, localCache], - useFileSystem: !useTtl, - }; + // read more about TTL limitations https://caching-tools.github.io/next-shared-cache/configuration/ttl + const useTtl = false; + + await client.connect(); + + const redisCache = await createRedisCache({ + client, + useTtl, + // timeout for the Redis client operations like `get` and `set` + // afeter this timeout, the operation will be considered failed and the `localCache` will be used + timeoutMs: 5000, + }); + + const localCache = createLruCache({ + useTtl, + }); + + return { + cache: [redisCache, localCache], + useFileSystem: !useTtl, + }; }); module.exports = IncrementalCache; diff --git a/docs/cache-handler-docs/src/pages/redis-strings-custom.mdx b/docs/cache-handler-docs/src/pages/redis-strings-custom.mdx index d8bbb106..b990ed80 100644 --- a/docs/cache-handler-docs/src/pages/redis-strings-custom.mdx +++ b/docs/cache-handler-docs/src/pages/redis-strings-custom.mdx @@ -9,8 +9,8 @@ npm i -D @neshca/json-replacer-reviver ``` - In this example, we assume that in your deployment, you have `REDIS_URL` environment variable set to the URL of your - Redis instance. You can use any other way to set the URL. + In this example, we assume that in your deployment, you have `REDIS_URL` environment variable set to the URL of your + Redis instance. You can use any other way to set the URL. Create a file called `cache-handler.js` next to your `next.config.js` with the following contents: @@ -24,77 +24,77 @@ const { createClient } = require('redis'); const REVALIDATED_TAGS_KEY = 'sharedRevalidatedTags'; const client = createClient({ - url: process.env.REDIS_URL ?? 'redis://localhost:6379', + url: process.env.REDIS_URL ?? 'redis://localhost:6379', }); client.on('error', (error) => { - console.error('Redis error:', error); + console.error('Redis error:', error); }); IncrementalCache.onCreation(async () => { - // read more about TTL limitations https://caching-tools.github.io/next-shared-cache/configuration/ttl - const useTtl = false; + // read more about TTL limitations https://caching-tools.github.io/next-shared-cache/configuration/ttl + const useTtl = false; - await client.connect(); + await client.connect(); - const localCache = createLruCache({ - useTtl, - }); + const localCache = createLruCache({ + useTtl, + }); - function assertClientIsReady() { - if (!client.isReady) { - throw new Error('Redis client is not ready'); - } + function assertClientIsReady() { + if (!client.isReady) { + throw new Error('Redis client is not ready'); } - const redisCache = { - name: 'custom-redis-strings', - async get(key) { - assertClientIsReady(); - - const result = await client.get(key); - - if (!result) { - return null; - } - - return JSON.parse(result, reviveFromBase64Representation); - }, - async set(key, value, ttl) { - assertClientIsReady(); - - await client.set( - key, - JSON.stringify(value, replaceJsonWithBase64), - useTtl && typeof ttl === 'number' ? { EX: ttl } : undefined, - ); - }, - async getRevalidatedTags() { - assertClientIsReady(); - - const sharedRevalidatedTags = await client.hGetAll(REVALIDATED_TAGS_KEY); - - const entries = Object.entries(sharedRevalidatedTags); - - const revalidatedTags = entries.reduce((acc, [tag, revalidatedAt]) => { - acc[tag] = Number(revalidatedAt); - return acc; - }, {}); - - return revalidatedTags; - }, - async revalidateTag(tag, revalidatedAt) { - assertClientIsReady(); - - await client.hSet(REVALIDATED_TAGS_KEY, { - [tag]: revalidatedAt, - }); - }, - }; - - return { - cache: [redisCache, localCache], - useFileSystem: !useTtl, - }; + } + const redisCache = { + name: 'custom-redis-strings', + async get(key) { + assertClientIsReady(); + + const result = await client.get(key); + + if (!result) { + return null; + } + + return JSON.parse(result, reviveFromBase64Representation); + }, + async set(key, value, ttl) { + assertClientIsReady(); + + await client.set( + key, + JSON.stringify(value, replaceJsonWithBase64), + useTtl && typeof ttl === 'number' ? { EX: ttl } : undefined, + ); + }, + async getRevalidatedTags() { + assertClientIsReady(); + + const sharedRevalidatedTags = await client.hGetAll(REVALIDATED_TAGS_KEY); + + const entries = Object.entries(sharedRevalidatedTags); + + const revalidatedTags = entries.reduce((acc, [tag, revalidatedAt]) => { + acc[tag] = Number(revalidatedAt); + return acc; + }, {}); + + return revalidatedTags; + }, + async revalidateTag(tag, revalidatedAt) { + assertClientIsReady(); + + await client.hSet(REVALIDATED_TAGS_KEY, { + [tag]: revalidatedAt, + }); + }, + }; + + return { + cache: [redisCache, localCache], + useFileSystem: !useTtl, + }; }); module.exports = IncrementalCache; diff --git a/docs/cache-handler-docs/src/pages/redis-strings.mdx b/docs/cache-handler-docs/src/pages/redis-strings.mdx index 7711cba6..1143829d 100644 --- a/docs/cache-handler-docs/src/pages/redis-strings.mdx +++ b/docs/cache-handler-docs/src/pages/redis-strings.mdx @@ -3,8 +3,8 @@ import { Callout } from 'nextra/components'; ## Redis strings example - In this example, we assume that in your deployment, you have `REDIS_URL` environment variable set to the URL of your - Redis instance. You can use any other way to set the URL. + In this example, we assume that in your deployment, you have `REDIS_URL` environment variable set to the URL of your + Redis instance. You can use any other way to set the URL. Create a file called `cache-handler.js` next to your `next.config.js` with the following contents: @@ -16,35 +16,35 @@ const createLruCache = require('@neshca/cache-handler/local-lru').default; const { createClient } = require('redis'); const client = createClient({ - url: process.env.REDIS_URL ?? 'redis://localhost:6379', + url: process.env.REDIS_URL ?? 'redis://localhost:6379', }); client.on('error', (error) => { - console.error('Redis error:', error); + console.error('Redis error:', error); }); IncrementalCache.onCreation(async () => { - // read more about TTL limitations https://caching-tools.github.io/next-shared-cache/configuration/ttl - const useTtl = false; - - await client.connect(); - - const redisCache = await createRedisCache({ - client, - useTtl, - // timeout for the Redis client operations like `get` and `set` - // afeter this timeout, the operation will be considered failed and the `localCache` will be used - timeoutMs: 5000, - }); - - const localCache = createLruCache({ - useTtl, - }); - - return { - cache: [redisCache, localCache], - useFileSystem: !useTtl, - }; + // read more about TTL limitations https://caching-tools.github.io/next-shared-cache/configuration/ttl + const useTtl = false; + + await client.connect(); + + const redisCache = await createRedisCache({ + client, + useTtl, + // timeout for the Redis client operations like `get` and `set` + // afeter this timeout, the operation will be considered failed and the `localCache` will be used + timeoutMs: 5000, + }); + + const localCache = createLruCache({ + useTtl, + }); + + return { + cache: [redisCache, localCache], + useFileSystem: !useTtl, + }; }); module.exports = IncrementalCache; diff --git a/docs/cache-handler-docs/src/pages/server.mdx b/docs/cache-handler-docs/src/pages/server.mdx index fca0ff2c..2a8555cf 100644 --- a/docs/cache-handler-docs/src/pages/server.mdx +++ b/docs/cache-handler-docs/src/pages/server.mdx @@ -21,8 +21,8 @@ PORT=8080 HOST=localhost npx next-cache-server ### Configure Next.js to use the server: - In this example, we assume that in your deployment, you have `REMOTE_CACHE_SERVER_BASE_URL` environment variable set - to the URL of your `@neshca/server`. You can use any other way to set the URL. + In this example, we assume that in your deployment, you have `REMOTE_CACHE_SERVER_BASE_URL` environment variable set + to the URL of your `@neshca/server`. You can use any other way to set the URL. Create a file called `cache-handler.js` next to you `next.config.js` with the following contents: @@ -34,16 +34,16 @@ const { createHandler } = require('@neshca/cache-handler/server'); const baseUrl = process.env.REMOTE_CACHE_SERVER_BASE_URL ?? 'http://localhost:8080'; IncrementalCache.onCreation(() => { - const httpCache = createServerCache({ - baseUrl, - }); + const httpCache = createServerCache({ + baseUrl, + }); - const localCache = createLruCache(); + const localCache = createLruCache(); - return { - cache: [httpCache, localCache], - useFileSystem: true, - }; + return { + cache: [httpCache, localCache], + useFileSystem: true, + }; }); module.exports = IncrementalCache; diff --git a/docs/cache-handler-docs/src/pages/troubleshooting.mdx b/docs/cache-handler-docs/src/pages/troubleshooting.mdx index a77f929a..d68a9d98 100644 --- a/docs/cache-handler-docs/src/pages/troubleshooting.mdx +++ b/docs/cache-handler-docs/src/pages/troubleshooting.mdx @@ -9,14 +9,14 @@ Add `console.log` statements to your cache handler: ```js filename="cache-handler.js" /* ... */ const cache = { - async get(key) { - console.log('cache.get', key); - return cacheStore.get(key); - }, - async set(key, value) { - console.log('cache.set', key, value); - cacheStore.set(key, value); - }, + async get(key) { + console.log('cache.get', key); + return cacheStore.get(key); + }, + async set(key, value) { + console.log('cache.set', key, value); + cacheStore.set(key, value); + }, }; /* ... */ ``` @@ -69,10 +69,10 @@ If the cache handler is not active: 1. Verify that the cache handler has been correctly installed, imported, and configured. Refer to the [Installation and the First Steps](/installation) section for guidance. 2. Ensure that the `NEXT_PRIVATE_DEBUG_CACHE` environment variable is set. To verify, add the following to your `next.config.js` file: - ```js filename="next.config.js" copy - console.log('NEXT_PRIVATE_DEBUG_CACHE', process.env.NEXT_PRIVATE_DEBUG_CACHE); - ``` + ```js filename="next.config.js" copy + console.log('NEXT_PRIVATE_DEBUG_CACHE', process.env.NEXT_PRIVATE_DEBUG_CACHE); + ``` - When you build or run your application, `NEXT_PRIVATE_DEBUG_CACHE 1` should appear in your console. + When you build or run your application, `NEXT_PRIVATE_DEBUG_CACHE 1` should appear in your console. 3. If you're using a third-party library to retrieve data or database records (e.g., `axios`, `node-fetch`, `pg`) within the App directory, ensure you're using the [`unstable_cache`](https://nextjs.org/docs/app/api-reference/functions/unstable_cache). By default, Next.js will cache only native fetch calls. diff --git a/docs/cache-handler-docs/theme.config.jsx b/docs/cache-handler-docs/theme.config.jsx index cf26fa0e..921ae8f7 100644 --- a/docs/cache-handler-docs/theme.config.jsx +++ b/docs/cache-handler-docs/theme.config.jsx @@ -42,7 +42,7 @@ export default { text: ( MIT {new Date().getFullYear()} ©{' '} - + @neshca/cache-handler . diff --git a/docs/cache-handler-docs/tsconfig.json b/docs/cache-handler-docs/tsconfig.json index b40a8e67..70af0e0d 100644 --- a/docs/cache-handler-docs/tsconfig.json +++ b/docs/cache-handler-docs/tsconfig.json @@ -1,11 +1,16 @@ { - "extends": "@neshca/tsconfig/nextjs.json", + "extends": "@repo/typescript-config/nextjs.json", "compilerOptions": { "paths": { "cache-handler-docs/*": ["./src/*"], }, - "strictNullChecks": true, + "plugins": [ + { + "name": "next", + }, + ], }, - "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx", ".next/types/**/*.ts"], + "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx", ".next/types/**/*.ts", "run-app-instances.ts"], + "exclude": ["node_modules"], } diff --git a/docs/contributing/cache-handler.md b/docs/contributing/cache-handler.md index 9f49b846..7bb191c1 100644 --- a/docs/contributing/cache-handler.md +++ b/docs/contributing/cache-handler.md @@ -10,34 +10,34 @@ To integrate Redis as a cache store: 1. **Launch a Redis Instance using Docker**: - ```bash - docker run -d --name redis-stack -p 6379:6379 -p 8001:8001 redis/redis-stack:latest - ``` + ```bash + docker run -d --name redis-stack -p 6379:6379 -p 8001:8001 redis/redis-stack:latest + ``` 2. **Setting Up the Local Environment**: - Create a `.env.local` file in the `apps/cache-testing` directory and define the `REDIS_URL` environment variable: + Create a `.env.local` file in the `apps/cache-testing` directory and define the `REDIS_URL` environment variable: - ```bash - REDIS_URL=redis://localhost:6379 - ``` + ```bash + REDIS_URL=redis://localhost:6379 + ``` 3. **Starting Development Servers**: - To test changes in `@neshca/cache-handler`, utilize the `@neshca/cache-testing` app. Due to this app's implementation of SSG and ISR, initiate the local backend first: + To test changes in `@neshca/cache-handler`, utilize the `@neshca/cache-testing` app. Due to this app's implementation of SSG and ISR, initiate the local backend first: - ```bash - npm run dev:with-redis - ``` + ```bash + npm run dev:with-redis + ``` - Subsequently, in a distinct terminal, compile and launch the `@neshca/cache-testing` app: + Subsequently, in a distinct terminal, compile and launch the `@neshca/cache-testing` app: - ```bash - npm run build:app - npm run start:app - ``` + ```bash + npm run build:app + npm run start:app + ``` - **Note**: Always rebuild `@neshca/cache-testing` after every rebuild of `@neshca/cache-handler`. + **Note**: Always rebuild `@neshca/cache-testing` after every rebuild of `@neshca/cache-handler`. ### Running Tests Locally diff --git a/docs/contributing/monorepo.md b/docs/contributing/monorepo.md index 4d632a14..fb5fb567 100644 --- a/docs/contributing/monorepo.md +++ b/docs/contributing/monorepo.md @@ -42,7 +42,7 @@ Then, create `.act.json` file near the `.actrc` file with the following contents ```json { - "act": true + "act": true } ``` @@ -54,22 +54,8 @@ act pull_request ## Contribution Guidelines -To maintain code consistency and quality, follow our coding and style guidelines. Run required checks before committing: - -### 1. Code Formatting - -Maintaining a uniform code style throughout the project is essential. Use the command below to format your code according to our standards automatically: - -```bash -npm run format:fix -``` - -### 2. Lint Checks - -Linting identifies common errors and enforces our coding standards. Ensure your changes meet our lint checks with the following: +To ensure consistent and high-quality code, adhere to our coding and style guidelines. Run the required checks and fix errors and warnings before committing your code: ```bash -npm run lint +npm run codestyle:fix ``` - -Your adherence to these guidelines assists in maintaining a high-quality and consistent codebase. I appreciate your contributions! diff --git a/internal/backend/.eslintrc.cjs b/internal/backend/.eslintrc.cjs deleted file mode 100644 index e541adca..00000000 --- a/internal/backend/.eslintrc.cjs +++ /dev/null @@ -1,3 +0,0 @@ -module.exports = { - extends: ['neshca/library'], -}; diff --git a/internal/backend/package.json b/internal/backend/package.json index feba9e31..3b890d4d 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -7,8 +7,6 @@ "scripts": { "clean": "rimraf ./.turbo ./node_modules", "dev": "node --watch --import tsx/esm ./src/backend.ts", - "lint": "eslint .", - "lint:fix": "eslint --fix .", "start": "node --import tsx/esm ./src/backend.ts" }, "dependencies": { @@ -16,9 +14,8 @@ "pino": "8.17.2" }, "devDependencies": { - "@neshca/tsconfig": "*", + "@repo/typescript-config": "*", "@types/node": "20.11.7", - "eslint-config-neshca": "*", "pino-pretty": "10.3.1", "rimraf": "5.0.5", "tsx": "4.7.0", diff --git a/internal/backend/src/backend.ts b/internal/backend/src/backend.ts index 73d8e1cb..b4e30ce8 100644 --- a/internal/backend/src/backend.ts +++ b/internal/backend/src/backend.ts @@ -57,18 +57,21 @@ server.get('/count/:routerType/:preRendered:/:fallback/:page', async (request, r const result = { count, unixTimeMs: Date.now() }; switch (page) { - case '404': + case '404': { await reply.code(404).header('Content-Type', 'application/json; charset=utf-8').send(result); break; - case '200': + } + case '200': { await reply.code(200).header('Content-Type', 'application/json; charset=utf-8').send(result); break; - case 'alternate-200-404': + } + case 'alternate-200-404': { await reply .code(count % 2 === 0 ? 200 : 404) .header('Content-Type', 'application/json; charset=utf-8') .send(result); break; + } } }); @@ -91,7 +94,7 @@ server.get('/time', async (_request, reply): Promise => { server .listen({ port, host }) .then((address) => { - logger.info(`backend listening on %s`, address); + logger.info('backend listening on %s', address); }) .catch((err) => { logger.error(err); diff --git a/internal/backend/tsconfig.json b/internal/backend/tsconfig.json index fc4347bb..15bd4c30 100644 --- a/internal/backend/tsconfig.json +++ b/internal/backend/tsconfig.json @@ -1,5 +1,5 @@ { - "extends": "@neshca/tsconfig/node-packages.json", + "extends": "@repo/typescript-config/library.json", "include": ["."], "exclude": ["dist", "node_modules"], } diff --git a/internal/eslint-config-neshca/README.md b/internal/eslint-config-neshca/README.md deleted file mode 100644 index 8b42d901..00000000 --- a/internal/eslint-config-neshca/README.md +++ /dev/null @@ -1,3 +0,0 @@ -# `@turbo/eslint-config` - -Collection of internal eslint configurations. diff --git a/internal/eslint-config-neshca/library.js b/internal/eslint-config-neshca/library.js deleted file mode 100644 index c1ac5e73..00000000 --- a/internal/eslint-config-neshca/library.js +++ /dev/null @@ -1,34 +0,0 @@ -const { resolve } = require('node:path'); - -const project = resolve(process.cwd(), 'tsconfig.json'); - -/** @type {import('eslint').ESLint.ConfigData} */ -module.exports = { - extends: ['@vercel/style-guide/eslint/node', '@vercel/style-guide/eslint/typescript'].map(require.resolve), - parserOptions: { - project, - }, - globals: { - React: true, - JSX: true, - }, - settings: { - 'import/resolver': { - typescript: { - project, - }, - }, - }, - ignorePatterns: ['node_modules/', 'dist/'], - rules: { - '@typescript-eslint/consistent-type-definitions': ['error', 'type'], - '@typescript-eslint/no-unnecessary-condition': 'off', - 'import/order': [ - 'error', - { - 'newlines-between': 'always', - alphabetize: { order: 'asc', orderImportKind: 'asc', caseInsensitive: true }, - }, - ], - }, -}; diff --git a/internal/eslint-config-neshca/next.js b/internal/eslint-config-neshca/next.js deleted file mode 100644 index f4b4a2c4..00000000 --- a/internal/eslint-config-neshca/next.js +++ /dev/null @@ -1,51 +0,0 @@ -const { resolve } = require('node:path'); - -const project = resolve(process.cwd(), 'tsconfig.json'); - -/* - * This is a custom ESLint configuration for use with - * Next.js apps. - * - * This config extends the Vercel Engineering Style Guide. - * For more information, see https://github.com/vercel/style-guide - * - */ -/** @type {import('eslint').ESLint.ConfigData} */ -module.exports = { - extends: [ - '@vercel/style-guide/eslint/node', - '@vercel/style-guide/eslint/browser', - '@vercel/style-guide/eslint/typescript', - '@vercel/style-guide/eslint/react', - '@vercel/style-guide/eslint/next', - 'eslint-config-turbo', - ].map(require.resolve), - parserOptions: { - project, - }, - globals: { - React: true, - JSX: true, - }, - settings: { - 'import/resolver': { - typescript: { - project, - }, - }, - }, - ignorePatterns: ['node_modules/', 'dist/'], - rules: { - 'import/no-default-export': 'off', - 'no-console': 'off', - '@typescript-eslint/consistent-type-definitions': ['error', 'type'], - 'import/no-extraneous-dependencies': ['error', { includeTypes: true }], - 'import/order': [ - 'error', - { - 'newlines-between': 'always', - alphabetize: { order: 'asc', orderImportKind: 'asc', caseInsensitive: true }, - }, - ], - }, -}; diff --git a/internal/eslint-config-neshca/package.json b/internal/eslint-config-neshca/package.json deleted file mode 100644 index 4e3b6fcb..00000000 --- a/internal/eslint-config-neshca/package.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "name": "eslint-config-neshca", - "version": "0.0.0", - "private": true, - "license": "MIT", - "devDependencies": { - "@vercel/style-guide": "5.1.0", - "eslint-config-turbo": "1.10.16" - } -} diff --git a/internal/eslint-config/README.md b/internal/eslint-config/README.md new file mode 100644 index 00000000..a65f0864 --- /dev/null +++ b/internal/eslint-config/README.md @@ -0,0 +1,3 @@ +# `@repo/eslint-config` + +Collection of internal eslint configurations for Next.js apps. diff --git a/internal/eslint-config/next.js b/internal/eslint-config/next.js new file mode 100644 index 00000000..96d46470 --- /dev/null +++ b/internal/eslint-config/next.js @@ -0,0 +1,39 @@ +const { resolve } = require('node:path'); + +const project = resolve(process.cwd(), 'tsconfig.json'); + +/** @type {import("eslint").Linter.Config} */ +module.exports = { + extends: [ + 'eslint:recommended', + 'prettier', + require.resolve('@vercel/style-guide/eslint/next'), + 'eslint-config-turbo', + ], + globals: { + React: true, + JSX: true, + }, + env: { + node: true, + browser: true, + }, + plugins: ['only-warn'], + settings: { + 'import/resolver': { + typescript: { + project, + }, + }, + }, + ignorePatterns: [ + // Ignore dotfiles + '.*.js', + 'node_modules/', + ], + overrides: [{ files: ['*.js?(x)', '*.ts?(x)'] }], + rules: { + 'import/no-default-export': 'off', + 'no-console': 'off', + }, +}; diff --git a/internal/eslint-config/package.json b/internal/eslint-config/package.json new file mode 100644 index 00000000..0cc72f03 --- /dev/null +++ b/internal/eslint-config/package.json @@ -0,0 +1,17 @@ +{ + "name": "@repo/eslint-config", + "version": "0.0.0", + "private": true, + "files": [ + "next.js" + ], + "devDependencies": { + "@typescript-eslint/eslint-plugin": "6.19.1", + "@typescript-eslint/parser": "6.19.1", + "@vercel/style-guide": "5.1.0", + "eslint-config-prettier": "9.1.0", + "eslint-config-turbo": "1.11.3", + "eslint-plugin-only-warn": "1.1.0", + "typescript": "5.3.3" + } +} diff --git a/internal/next-common/.eslintrc.cjs b/internal/next-common/.eslintrc.cjs deleted file mode 100644 index e541adca..00000000 --- a/internal/next-common/.eslintrc.cjs +++ /dev/null @@ -1,3 +0,0 @@ -module.exports = { - extends: ['neshca/library'], -}; diff --git a/internal/next-common/package.json b/internal/next-common/package.json index 3495f27a..b0177fec 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -8,17 +8,14 @@ "types": "./src/next-common.ts" }, "scripts": { - "clean": "rimraf ./.turbo ./node_modules", - "lint": "eslint .", - "lint:fix": "eslint --fix ." + "clean": "rimraf ./.turbo ./node_modules" }, "dependencies": { "next": "14.1.1-canary.1" }, "devDependencies": { - "@neshca/tsconfig": "*", + "@repo/typescript-config": "*", "@types/node": "20.11.7", - "eslint-config-neshca": "*", "rimraf": "5.0.5", "typescript": "5.3.3" } diff --git a/internal/next-common/tsconfig.json b/internal/next-common/tsconfig.json index fc4347bb..15bd4c30 100644 --- a/internal/next-common/tsconfig.json +++ b/internal/next-common/tsconfig.json @@ -1,5 +1,5 @@ { - "extends": "@neshca/tsconfig/node-packages.json", + "extends": "@repo/typescript-config/library.json", "include": ["."], "exclude": ["dist", "node_modules"], } diff --git a/internal/next-lru-cache/.eslintrc.cjs b/internal/next-lru-cache/.eslintrc.cjs deleted file mode 100644 index e541adca..00000000 --- a/internal/next-lru-cache/.eslintrc.cjs +++ /dev/null @@ -1,3 +0,0 @@ -module.exports = { - extends: ['neshca/library'], -}; diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index 8dea35c8..00cd0f61 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -8,18 +8,15 @@ "./*": "./src/cache-types/*.ts" }, "scripts": { - "clean": "rimraf ./.turbo ./node_modules", - "lint": "eslint .", - "lint:fix": "eslint --fix ." + "clean": "rimraf ./.turbo ./node_modules" }, "dependencies": { "lru-cache": "10.2.0" }, "devDependencies": { "@neshca/next-common": "*", - "@neshca/tsconfig": "*", + "@repo/typescript-config": "*", "@types/node": "20.11.7", - "eslint-config-neshca": "*", "rimraf": "5.0.5", "typescript": "5.3.3" } diff --git a/internal/next-lru-cache/src/cache-types/next-cache-handler-value.ts b/internal/next-lru-cache/src/cache-types/next-cache-handler-value.ts index 66176664..ef9e1f68 100644 --- a/internal/next-lru-cache/src/cache-types/next-cache-handler-value.ts +++ b/internal/next-lru-cache/src/cache-types/next-cache-handler-value.ts @@ -6,7 +6,9 @@ import { createConfiguredCache } from '../create-configured-cache'; function calculateObjectSize({ value }: CacheHandlerValue): number { // Return default size if value is falsy - if (!value) return 25; + if (!value) { + return 25; + } switch (value.kind) { case 'REDIRECT': { diff --git a/internal/next-lru-cache/tsconfig.json b/internal/next-lru-cache/tsconfig.json index fc4347bb..15bd4c30 100644 --- a/internal/next-lru-cache/tsconfig.json +++ b/internal/next-lru-cache/tsconfig.json @@ -1,5 +1,5 @@ { - "extends": "@neshca/tsconfig/node-packages.json", + "extends": "@repo/typescript-config/library.json", "include": ["."], "exclude": ["dist", "node_modules"], } diff --git a/internal/prettier-config/index.js b/internal/prettier-config/index.js index dca187b5..02d9447b 100644 --- a/internal/prettier-config/index.js +++ b/internal/prettier-config/index.js @@ -7,7 +7,7 @@ module.exports = { singleQuote: true, overrides: [ { - files: '*.{yml,yaml}', + files: '*.{yml,yaml,md,mdx}', options: { tabWidth: 2, }, diff --git a/internal/prettier-config/package.json b/internal/prettier-config/package.json index e3c583df..0584dd73 100644 --- a/internal/prettier-config/package.json +++ b/internal/prettier-config/package.json @@ -1,5 +1,5 @@ { - "name": "@neshca/prettier-config", + "name": "@repo/prettier-config", "version": "0.0.0", "private": true, "license": "MIT", diff --git a/internal/tsconfig/node-packages.json b/internal/tsconfig/node-packages.json deleted file mode 100644 index 16f57f16..00000000 --- a/internal/tsconfig/node-packages.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "$schema": "https://json.schemastore.org/tsconfig", - "display": "Node packages", - "extends": "./base.json", - "include": ["src", "scripts"], - "exclude": ["node_modules"] -} diff --git a/internal/tsconfig/base.json b/internal/typescript-config/base.json similarity index 58% rename from internal/tsconfig/base.json rename to internal/typescript-config/base.json index 32ead33e..a29debcd 100644 --- a/internal/tsconfig/base.json +++ b/internal/typescript-config/base.json @@ -2,18 +2,19 @@ "$schema": "https://json.schemastore.org/tsconfig", "display": "Default", "compilerOptions": { + "declaration": true, + "declarationMap": true, "esModuleInterop": true, - "skipLibCheck": true, - "target": "es2022", - "resolveJsonModule": true, + "incremental": false, "isolatedModules": true, + "lib": ["es2022", "DOM", "DOM.Iterable"], + "module": "NodeNext", "moduleDetection": "force", - "strict": true, + "moduleResolution": "NodeNext", "noUncheckedIndexedAccess": true, - "moduleResolution": "Bundler", - "module": "ESNext", - "noEmit": true, - "lib": ["es2022", "dom", "dom.iterable"] - }, - "exclude": ["node_modules"] + "resolveJsonModule": true, + "skipLibCheck": true, + "strict": true, + "target": "ES2022" + } } diff --git a/internal/typescript-config/library.json b/internal/typescript-config/library.json new file mode 100644 index 00000000..441fa72a --- /dev/null +++ b/internal/typescript-config/library.json @@ -0,0 +1,11 @@ +{ + "$schema": "https://json.schemastore.org/tsconfig", + "display": "Next.js", + "extends": "./base.json", + "compilerOptions": { + "module": "ESNext", + "moduleResolution": "Bundler", + "allowJs": true, + "noEmit": true + } +} diff --git a/internal/tsconfig/nextjs.json b/internal/typescript-config/nextjs.json similarity index 60% rename from internal/tsconfig/nextjs.json rename to internal/typescript-config/nextjs.json index 1e117be0..c6b70c0d 100644 --- a/internal/tsconfig/nextjs.json +++ b/internal/typescript-config/nextjs.json @@ -4,10 +4,10 @@ "extends": "./base.json", "compilerOptions": { "plugins": [{ "name": "next" }], - "incremental": true, + "module": "ESNext", + "moduleResolution": "Bundler", "allowJs": true, - "jsx": "preserve" - }, - "include": ["src", "next-env.d.ts"], - "exclude": ["node_modules"] + "jsx": "preserve", + "noEmit": true + } } diff --git a/internal/tsconfig/package.json b/internal/typescript-config/package.json similarity index 76% rename from internal/tsconfig/package.json rename to internal/typescript-config/package.json index cdbba15c..607f9c94 100644 --- a/internal/tsconfig/package.json +++ b/internal/typescript-config/package.json @@ -1,5 +1,5 @@ { - "name": "@neshca/tsconfig", + "name": "@repo/typescript-config", "version": "0.0.0", "private": true, "license": "MIT", diff --git a/package-lock.json b/package-lock.json index d00b409d..20c887bb 100644 --- a/package-lock.json +++ b/package-lock.json @@ -19,13 +19,13 @@ }, "devDependencies": { "@actions/core": "1.10.1", - "@neshca/prettier-config": "*", - "@neshca/tsconfig": "*", + "@biomejs/biome": "1.5.3", + "@repo/prettier-config": "*", + "@repo/typescript-config": "*", "diffscribe": "*", - "eslint": "8.56.0", "glob": "10.3.10", "prettier": "3.2.4", - "turbo": "1.10.16" + "turbo": "1.11.3" }, "engines": { "node": ">=20.9.0", @@ -43,14 +43,16 @@ "devDependencies": { "@neshca/cache-handler": "*", "@neshca/json-replacer-reviver": "*", - "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.1.1-canary.1", "@playwright/test": "1.41.1", + "@repo/eslint-config": "*", + "@repo/typescript-config": "*", + "@types/eslint": "8.56.2", "@types/node": "20.11.7", "@types/react": "18.2.48", "@types/react-dom": "18.2.18", "dotenv-cli": "7.3.0", - "eslint-config-neshca": "*", + "eslint": "8.56.0", "fastify": "4.25.2", "pm2": "5.3.1", "redis": "4.6.12", @@ -123,12 +125,14 @@ "react-dom": "18.2.0" }, "devDependencies": { - "@neshca/tsconfig": "*", "@next/eslint-plugin-next": "14.1.0", + "@repo/eslint-config": "*", + "@repo/typescript-config": "*", + "@types/eslint": "8.56.2", "@types/node": "20.11.7", "@types/react": "18.2.48", "@types/react-dom": "18.2.18", - "eslint-config-neshca": "*", + "eslint": "8.56.0", "typescript": "5.3.3" } }, @@ -239,9 +243,8 @@ "pino": "8.17.2" }, "devDependencies": { - "@neshca/tsconfig": "*", + "@repo/typescript-config": "*", "@types/node": "20.11.7", - "eslint-config-neshca": "*", "pino-pretty": "10.3.1", "rimraf": "5.0.5", "tsx": "4.7.0", @@ -257,15 +260,20 @@ "undici-types": "~5.26.4" } }, - "internal/eslint-config-neshca": { + "internal/eslint-config": { + "name": "@repo/eslint-config", "version": "0.0.0", - "license": "MIT", "devDependencies": { + "@typescript-eslint/eslint-plugin": "6.19.1", + "@typescript-eslint/parser": "6.19.1", "@vercel/style-guide": "5.1.0", - "eslint-config-turbo": "1.10.16" + "eslint-config-prettier": "9.1.0", + "eslint-config-turbo": "1.11.3", + "eslint-plugin-only-warn": "1.1.0", + "typescript": "5.3.3" } }, - "internal/eslint-config-neshca/node_modules/@next/eslint-plugin-next": { + "internal/eslint-config/node_modules/@next/eslint-plugin-next": { "version": "14.1.0", "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.1.0.tgz", "integrity": "sha512-x4FavbNEeXx/baD/zC/SdrvkjSby8nBn8KcCREqk6UuwvwoAPZmaV8TFCAuo/cpovBRTIY67mHhe86MQQm/68Q==", @@ -276,7 +284,7 @@ "glob": "10.3.10" } }, - "internal/eslint-config-neshca/node_modules/@vercel/style-guide": { + "internal/eslint-config/node_modules/@vercel/style-guide": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/@vercel/style-guide/-/style-guide-5.1.0.tgz", "integrity": "sha512-L9lWYePIycm7vIOjDLj+mmMdmmPkW3/brHjgq+nJdvMOrL7Hdk/19w8X583HYSk0vWsq494o5Qkh6x5+uW7ljg==", @@ -334,9 +342,8 @@ "next": "14.1.1-canary.1" }, "devDependencies": { - "@neshca/tsconfig": "*", + "@repo/typescript-config": "*", "@types/node": "20.11.7", - "eslint-config-neshca": "*", "rimraf": "5.0.5", "typescript": "5.3.3" } @@ -404,9 +411,8 @@ }, "devDependencies": { "@neshca/next-common": "*", - "@neshca/tsconfig": "*", + "@repo/typescript-config": "*", "@types/node": "20.11.7", - "eslint-config-neshca": "*", "rimraf": "5.0.5", "typescript": "5.3.3" } @@ -421,7 +427,7 @@ } }, "internal/prettier-config": { - "name": "@neshca/prettier-config", + "name": "@repo/prettier-config", "version": "0.0.0", "license": "MIT", "devDependencies": { @@ -489,8 +495,8 @@ } } }, - "internal/tsconfig": { - "name": "@neshca/tsconfig", + "internal/typescript-config": { + "name": "@repo/typescript-config", "version": "0.0.0", "license": "MIT" }, @@ -910,6 +916,161 @@ "node": ">=6.9.0" } }, + "node_modules/@biomejs/biome": { + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/@biomejs/biome/-/biome-1.5.3.tgz", + "integrity": "sha512-yvZCa/g3akwTaAQ7PCwPWDCkZs3Qa5ONg/fgOUT9e6wAWsPftCjLQFPXBeGxPK30yZSSpgEmRCfpGTmVbUjGgg==", + "dev": true, + "hasInstallScript": true, + "bin": { + "biome": "bin/biome" + }, + "engines": { + "node": ">=14.*" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/biome" + }, + "optionalDependencies": { + "@biomejs/cli-darwin-arm64": "1.5.3", + "@biomejs/cli-darwin-x64": "1.5.3", + "@biomejs/cli-linux-arm64": "1.5.3", + "@biomejs/cli-linux-arm64-musl": "1.5.3", + "@biomejs/cli-linux-x64": "1.5.3", + "@biomejs/cli-linux-x64-musl": "1.5.3", + "@biomejs/cli-win32-arm64": "1.5.3", + "@biomejs/cli-win32-x64": "1.5.3" + } + }, + "node_modules/@biomejs/cli-darwin-arm64": { + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-1.5.3.tgz", + "integrity": "sha512-ImU7mh1HghEDyqNmxEZBoMPr8SxekkZuYcs+gynKlNW+TALQs7swkERiBLkG9NR0K1B3/2uVzlvYowXrmlW8hw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=14.*" + } + }, + "node_modules/@biomejs/cli-darwin-x64": { + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-x64/-/cli-darwin-x64-1.5.3.tgz", + "integrity": "sha512-vCdASqYnlpq/swErH7FD6nrFz0czFtK4k/iLgj0/+VmZVjineFPgevOb+Sr9vz0tk0GfdQO60bSpI74zU8M9Dw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=14.*" + } + }, + "node_modules/@biomejs/cli-linux-arm64": { + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64/-/cli-linux-arm64-1.5.3.tgz", + "integrity": "sha512-cupBQv0sNF1OKqBfx7EDWMSsKwRrBUZfjXawT4s6hKV6ALq7p0QzWlxr/sDmbKMLOaLQtw2Qgu/77N9rm+f9Rg==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=14.*" + } + }, + "node_modules/@biomejs/cli-linux-arm64-musl": { + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-1.5.3.tgz", + "integrity": "sha512-DYuMizUYUBYfS0IHGjDrOP1RGipqWfMGEvNEJ398zdtmCKLXaUvTimiox5dvx4X15mBK5M2m8wgWUgOP1giUpQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=14.*" + } + }, + "node_modules/@biomejs/cli-linux-x64": { + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64/-/cli-linux-x64-1.5.3.tgz", + "integrity": "sha512-YQrSArQvcv4FYsk7Q91Yv4uuu5F8hJyORVcv3zsjCLGkjIjx2RhjYLpTL733SNL7v33GmOlZY0eFR1ko38tuUw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=14.*" + } + }, + "node_modules/@biomejs/cli-linux-x64-musl": { + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-1.5.3.tgz", + "integrity": "sha512-UUHiAnlDqr2Y/LpvshBFhUYMWkl2/Jn+bi3U6jKuav0qWbbBKU/ByHgR4+NBxpKBYoCtWxhnmatfH1bpPIuZMw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=14.*" + } + }, + "node_modules/@biomejs/cli-win32-arm64": { + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-arm64/-/cli-win32-arm64-1.5.3.tgz", + "integrity": "sha512-HxatYH7vf/kX9nrD+pDYuV2GI9GV8EFo6cfKkahAecTuZLPxryHx1WEfJthp5eNsE0+09STGkKIKjirP0ufaZA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=14.*" + } + }, + "node_modules/@biomejs/cli-win32-x64": { + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-x64/-/cli-win32-x64-1.5.3.tgz", + "integrity": "sha512-fMvbSouZEASU7mZH8SIJSANDm5OqsjgtVXlbUqxwed6BP7uuHRSs396Aqwh2+VoW8fwTpp6ybIUoC9FrzB0kyA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=14.*" + } + }, "node_modules/@braintree/sanitize-url": { "version": "6.0.4", "resolved": "https://registry.npmjs.org/@braintree/sanitize-url/-/sanitize-url-6.0.4.tgz", @@ -1952,30 +2113,30 @@ } }, "node_modules/@napi-rs/simple-git": { - "version": "0.1.11", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git/-/simple-git-0.1.11.tgz", - "integrity": "sha512-z14cPCBrtDKKVJ3q4GS5gmXEithGUAt+U8sICgA9i3UFdxJKD4H5rCnO7BVC3htdE9g6OR2w2IcHAL56AjpFbg==", + "version": "0.1.15", + "resolved": "https://registry.npmjs.org/@napi-rs/simple-git/-/simple-git-0.1.15.tgz", + "integrity": "sha512-F9NBptiwOjhdXcBnDQmgxxZzBCj54zV3a337+OC4PPLT+8qnZP9v3Ty5owHl8VRMuGmRzkjC6YX8RKtvRf4L/w==", "engines": { "node": ">= 10" }, "optionalDependencies": { - "@napi-rs/simple-git-android-arm-eabi": "0.1.11", - "@napi-rs/simple-git-android-arm64": "0.1.11", - "@napi-rs/simple-git-darwin-arm64": "0.1.11", - "@napi-rs/simple-git-darwin-x64": "0.1.11", - "@napi-rs/simple-git-linux-arm-gnueabihf": "0.1.11", - "@napi-rs/simple-git-linux-arm64-gnu": "0.1.11", - "@napi-rs/simple-git-linux-arm64-musl": "0.1.11", - "@napi-rs/simple-git-linux-x64-gnu": "0.1.11", - "@napi-rs/simple-git-linux-x64-musl": "0.1.11", - "@napi-rs/simple-git-win32-arm64-msvc": "0.1.11", - "@napi-rs/simple-git-win32-x64-msvc": "0.1.11" + "@napi-rs/simple-git-android-arm-eabi": "0.1.15", + "@napi-rs/simple-git-android-arm64": "0.1.15", + "@napi-rs/simple-git-darwin-arm64": "0.1.15", + "@napi-rs/simple-git-darwin-x64": "0.1.15", + "@napi-rs/simple-git-linux-arm-gnueabihf": "0.1.15", + "@napi-rs/simple-git-linux-arm64-gnu": "0.1.15", + "@napi-rs/simple-git-linux-arm64-musl": "0.1.15", + "@napi-rs/simple-git-linux-x64-gnu": "0.1.15", + "@napi-rs/simple-git-linux-x64-musl": "0.1.15", + "@napi-rs/simple-git-win32-arm64-msvc": "0.1.15", + "@napi-rs/simple-git-win32-x64-msvc": "0.1.15" } }, "node_modules/@napi-rs/simple-git-android-arm-eabi": { - "version": "0.1.11", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-android-arm-eabi/-/simple-git-android-arm-eabi-0.1.11.tgz", - "integrity": "sha512-wt4Wu9MxvKzEqT4iwodFs7Nrc31K73gR5hM7VnlO6iLELmUQZ5JVJkYoFWgzLQWtzIC48W2+zFMbBgY6+F2rZg==", + "version": "0.1.15", + "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-android-arm-eabi/-/simple-git-android-arm-eabi-0.1.15.tgz", + "integrity": "sha512-hL6e0NdVOZPgeT3PdgRzTHiSi1JF2Zk3ZEC5IhrvAEnzP4Ep50/OjdZZIoOzmKmsgph7qyWsoHaDUtwm6DVawg==", "cpu": [ "arm" ], @@ -1988,9 +2149,9 @@ } }, "node_modules/@napi-rs/simple-git-android-arm64": { - "version": "0.1.11", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-android-arm64/-/simple-git-android-arm64-0.1.11.tgz", - "integrity": "sha512-5/Aj6N44CxwhV3TZWRZ4vGqFj4wb2/a2gwvUZJo9Dwik9Spls7As8LaLe7pOptiGPH0GRP3H5kTT7I6twHNgqw==", + "version": "0.1.15", + "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-android-arm64/-/simple-git-android-arm64-0.1.15.tgz", + "integrity": "sha512-SqV0dKbnnblgp8zERVfnr7kjqYdZzSrabZYX4fPlgDKkKYlPU3DnS0z8/47l/n9Wl2WrQSs86g6pvvPyuuyb4Q==", "cpu": [ "arm64" ], @@ -2003,9 +2164,9 @@ } }, "node_modules/@napi-rs/simple-git-darwin-arm64": { - "version": "0.1.11", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-darwin-arm64/-/simple-git-darwin-arm64-0.1.11.tgz", - "integrity": "sha512-vdVsJUNcRsGVu0hBmLZdxxgwIbJA/Ias8NKWze8MZkZ3VyBwhg0uAzFgESEL3/USAgeCCHjF3uwVki8E+iPq1w==", + "version": "0.1.15", + "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-darwin-arm64/-/simple-git-darwin-arm64-0.1.15.tgz", + "integrity": "sha512-vr5+o5cmoCTf0UMIFWMMnJ0+3AJBtTMvFkTPr675cIe/MAejS2XFnl8a+lGx6S8Q+mQrQ2BMrj6QZU1Vc7hpMg==", "cpu": [ "arm64" ], @@ -2018,9 +2179,9 @@ } }, "node_modules/@napi-rs/simple-git-darwin-x64": { - "version": "0.1.11", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-darwin-x64/-/simple-git-darwin-x64-0.1.11.tgz", - "integrity": "sha512-ufVuZxyJ3LpApk3V101X9qYNX91fnQ4isulz9lWjg90U7Xz0Cav4J3yyFZy6B/cJpYxuiy49R8wV1xDtTeGThA==", + "version": "0.1.15", + "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-darwin-x64/-/simple-git-darwin-x64-0.1.15.tgz", + "integrity": "sha512-X6bxPY69vNZyANeKDU1iPojpNN5Sged0HJoBbD18DPkLuGFYB/J2RKKzj9NOK4QijG/gchxU+a0PHcYM/Ib3Qw==", "cpu": [ "x64" ], @@ -2033,9 +2194,9 @@ } }, "node_modules/@napi-rs/simple-git-linux-arm-gnueabihf": { - "version": "0.1.11", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-arm-gnueabihf/-/simple-git-linux-arm-gnueabihf-0.1.11.tgz", - "integrity": "sha512-rFafW0Qc/j5we2ghUecB7mFzGcNDtJ5lTiB4I7kffNeL8pEi6Yi7kST8hylswcCowia65d45xsyeNp1mFlFwcg==", + "version": "0.1.15", + "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-arm-gnueabihf/-/simple-git-linux-arm-gnueabihf-0.1.15.tgz", + "integrity": "sha512-hunbmJD5CWoPTy6ZsPMfdkNwspkoIRqXjltFWYQJUO50ZYTZFnfZcuyFXzTVmqRh2tsxBbK09R4GrYqRI3Tf4w==", "cpu": [ "arm" ], @@ -2048,9 +2209,9 @@ } }, "node_modules/@napi-rs/simple-git-linux-arm64-gnu": { - "version": "0.1.11", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-arm64-gnu/-/simple-git-linux-arm64-gnu-0.1.11.tgz", - "integrity": "sha512-HZ4yaqpj/FQ3V9qNQrTGhtXb7pLAARXeRJrwoaGfz3eZ069y2bHReFcNR//5bsVhZ18JaS9EV47F8WjDxtpI5g==", + "version": "0.1.15", + "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-arm64-gnu/-/simple-git-linux-arm64-gnu-0.1.15.tgz", + "integrity": "sha512-55oZuvUKnPGl+E6mNUwp/YbKEK3VDnFXGP8r/aATcMUs1EtI4d8ZIoA/2Yo2hKbNhTtUzUi85UNB0Q6AdJnfdg==", "cpu": [ "arm64" ], @@ -2063,9 +2224,9 @@ } }, "node_modules/@napi-rs/simple-git-linux-arm64-musl": { - "version": "0.1.11", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-arm64-musl/-/simple-git-linux-arm64-musl-0.1.11.tgz", - "integrity": "sha512-b39lJiC3n2+Y6Exjx6qwHoBF++D3k2hN4mZZkvQCFSdLXJ2xtalCatSRWW3pt+mHOHMOgbGektL5v5BYq52hxw==", + "version": "0.1.15", + "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-arm64-musl/-/simple-git-linux-arm64-musl-0.1.15.tgz", + "integrity": "sha512-uhQ7HFQDdjd9Y3dUFOnxWi7FL7cjSQbb+YXZWX1+1NsRNm7x1DpeJI3gPsV8TECuyt5OR8IDPzgvTKTeyzLFRA==", "cpu": [ "arm64" ], @@ -2078,9 +2239,9 @@ } }, "node_modules/@napi-rs/simple-git-linux-x64-gnu": { - "version": "0.1.11", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-x64-gnu/-/simple-git-linux-x64-gnu-0.1.11.tgz", - "integrity": "sha512-9EPFvY7PZg+oqWi6Jft5WgSsQtvy9Ey1g4NG+LG8y1RbvaNKthxKbR5zgx196pnFVdcLtsuIdOv/OaQlbcTXkw==", + "version": "0.1.15", + "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-x64-gnu/-/simple-git-linux-x64-gnu-0.1.15.tgz", + "integrity": "sha512-6WyAo6rvdYrBonUSQxzhf2Wbx0hj4/x/KR1ETn9Fgv5ByJzstWkFYBC17v7hP8sddNMY0y46uKnt0axT3QIjmg==", "cpu": [ "x64" ], @@ -2093,9 +2254,9 @@ } }, "node_modules/@napi-rs/simple-git-linux-x64-musl": { - "version": "0.1.11", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-x64-musl/-/simple-git-linux-x64-musl-0.1.11.tgz", - "integrity": "sha512-doIt1lPYIGL3UthlEQjdM9s1Wv0v8bz8LVAgbzJMS+UpVZzArwLWkanAJCy1HjgMTUMiE3AVJqACKIF3EfW/TQ==", + "version": "0.1.15", + "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-x64-musl/-/simple-git-linux-x64-musl-0.1.15.tgz", + "integrity": "sha512-giP/zUiRZKt/0K0oEqK8MLgKohPcvCCm8khOTY7100m10DECewoUTEFrwjiC2ilcawA2lxzyvzUTwVinIC+20g==", "cpu": [ "x64" ], @@ -2108,9 +2269,9 @@ } }, "node_modules/@napi-rs/simple-git-win32-arm64-msvc": { - "version": "0.1.11", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-win32-arm64-msvc/-/simple-git-win32-arm64-msvc-0.1.11.tgz", - "integrity": "sha512-TK3Uvj3Q72ebxfxDT/eLFt8sxCNHo20QMvqJ5BHt4zP1Y9Fl1DXSPRUKLBIhJd0nPcI45ZOMRiZyoT8joxAC9g==", + "version": "0.1.15", + "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-win32-arm64-msvc/-/simple-git-win32-arm64-msvc-0.1.15.tgz", + "integrity": "sha512-7wScTudoh2OSc7ywKKoTZ39fJ6IfFy0WGU5MbcNCGlu7ApKUIxS2ky7FCz2LTpsgPuVvls6cwOnzPYfwykqJ8A==", "cpu": [ "arm64" ], @@ -2123,9 +2284,9 @@ } }, "node_modules/@napi-rs/simple-git-win32-x64-msvc": { - "version": "0.1.11", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-win32-x64-msvc/-/simple-git-win32-x64-msvc-0.1.11.tgz", - "integrity": "sha512-XOgP6kFDXGmB2KCXFQEsCq70n/Do2h7W9o7qZu8APAD+Sc8JGKz4hKG7PKY2ot924v9nIoKSYbHnupnhXSoXkg==", + "version": "0.1.15", + "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-win32-x64-msvc/-/simple-git-win32-x64-msvc-0.1.15.tgz", + "integrity": "sha512-5+PZ8Zdb4LM6ad8SvUR7C0GDrZVP54ocY9aZBllwD1TjNhGYbRor07ok1b2sf0IucqCGGhx4zHzFokdP/BkQTQ==", "cpu": [ "x64" ], @@ -2153,18 +2314,10 @@ "resolved": "internal/next-lru-cache", "link": true }, - "node_modules/@neshca/prettier-config": { - "resolved": "internal/prettier-config", - "link": true - }, "node_modules/@neshca/server": { "resolved": "packages/server", "link": true }, - "node_modules/@neshca/tsconfig": { - "resolved": "internal/tsconfig", - "link": true - }, "node_modules/@next/env": { "version": "14.1.1-canary.1", "resolved": "https://registry.npmjs.org/@next/env/-/env-14.1.1-canary.1.tgz", @@ -2741,6 +2894,18 @@ "@redis/client": "^1.0.0" } }, + "node_modules/@repo/eslint-config": { + "resolved": "internal/eslint-config", + "link": true + }, + "node_modules/@repo/prettier-config": { + "resolved": "internal/prettier-config", + "link": true + }, + "node_modules/@repo/typescript-config": { + "resolved": "internal/typescript-config", + "link": true + }, "node_modules/@rollup/rollup-android-arm-eabi": { "version": "4.9.6", "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.9.6.tgz", @@ -3010,6 +3175,16 @@ "@types/ms": "*" } }, + "node_modules/@types/eslint": { + "version": "8.56.2", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.56.2.tgz", + "integrity": "sha512-uQDwm1wFHmbBbCZCqAlq6Do9LYwByNZHWzXppSnay9SuwJ+VRbjkbLABer54kcPnMSlG6Fdiy2yaFXm/z9Z5gw==", + "dev": true, + "dependencies": { + "@types/estree": "*", + "@types/json-schema": "*" + } + }, "node_modules/@types/estree": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz", @@ -4110,9 +4285,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001580", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001580.tgz", - "integrity": "sha512-mtj5ur2FFPZcCEpXFy8ADXbDACuNFXg6mxVDqp7tqooX6l3zwm+d8EPoeOSIFRDvHs8qu7/SLFOGniULkcH2iA==", + "version": "1.0.30001581", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001581.tgz", + "integrity": "sha512-whlTkwhqV2tUmP3oYhtNfaWGYHDdS3JYFQBKXxcUR9qqPWsRhFHhoISO2Xnl/g0xyKzht9mI1LZpiNWfMzHixQ==", "funding": [ { "type": "opencollective", @@ -5422,9 +5597,9 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.648", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.648.tgz", - "integrity": "sha512-EmFMarXeqJp9cUKu/QEciEApn0S/xRcpZWuAm32U7NgoZCimjsilKXHRO9saeEW55eHZagIDg6XTUOv32w9pjg==", + "version": "1.4.650", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.650.tgz", + "integrity": "sha512-sYSQhJCJa4aGA1wYol5cMQgekDBlbVfTRavlGZVr3WZpDdOPcp6a6xUnFfrt8TqZhsBYYbDxJZCjGfHuGupCRQ==", "dev": true }, "node_modules/elkjs": { @@ -5754,10 +5929,6 @@ "url": "https://opencollective.com/eslint" } }, - "node_modules/eslint-config-neshca": { - "resolved": "internal/eslint-config-neshca", - "link": true - }, "node_modules/eslint-config-prettier": { "version": "9.1.0", "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-9.1.0.tgz", @@ -5771,12 +5942,12 @@ } }, "node_modules/eslint-config-turbo": { - "version": "1.10.16", - "resolved": "https://registry.npmjs.org/eslint-config-turbo/-/eslint-config-turbo-1.10.16.tgz", - "integrity": "sha512-O3NQI72bQHV7FvSC6lWj66EGx8drJJjuT1kuInn6nbMLOHdMBhSUX/8uhTAlHRQdlxZk2j9HtgFCIzSc93w42g==", + "version": "1.11.3", + "resolved": "https://registry.npmjs.org/eslint-config-turbo/-/eslint-config-turbo-1.11.3.tgz", + "integrity": "sha512-v7CHpAHodBKlj+r+R3B2DJlZbCjpZLnK7gO/vCRk/Lc+tlD/f04wM6rmHlerevOlchtmwARilRLBnmzNLffTyQ==", "dev": true, "dependencies": { - "eslint-plugin-turbo": "1.10.16" + "eslint-plugin-turbo": "1.11.3" }, "peerDependencies": { "eslint": ">6.6.0" @@ -6131,6 +6302,15 @@ "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8" } }, + "node_modules/eslint-plugin-only-warn": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-only-warn/-/eslint-plugin-only-warn-1.1.0.tgz", + "integrity": "sha512-2tktqUAT+Q3hCAU0iSf4xAN1k9zOpjK5WO8104mB0rT/dGhOa09582HN5HlbxNbPRZ0THV7nLGvzugcNOSjzfA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, "node_modules/eslint-plugin-playwright": { "version": "0.16.0", "resolved": "https://registry.npmjs.org/eslint-plugin-playwright/-/eslint-plugin-playwright-0.16.0.tgz", @@ -6375,9 +6555,9 @@ } }, "node_modules/eslint-plugin-turbo": { - "version": "1.10.16", - "resolved": "https://registry.npmjs.org/eslint-plugin-turbo/-/eslint-plugin-turbo-1.10.16.tgz", - "integrity": "sha512-ZjrR88MTN64PNGufSEcM0tf+V1xFYVbeiMeuIqr0aiABGomxFLo4DBkQ7WI4WzkZtWQSIA2sP+yxqSboEfL9MQ==", + "version": "1.11.3", + "resolved": "https://registry.npmjs.org/eslint-plugin-turbo/-/eslint-plugin-turbo-1.11.3.tgz", + "integrity": "sha512-R5ftTTWQzEYaKzF5g6m/MInCU8pIN+2TLL+S50AYBr1enwUovdZmnZ1HDwFMaxIjJ8x5ah+jvAzql5IJE9VWaA==", "dev": true, "dependencies": { "dotenv": "16.0.3" @@ -9670,9 +9850,9 @@ "integrity": "sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==" }, "node_modules/mdast-util-to-hast/node_modules/micromark-util-character": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-2.0.1.tgz", - "integrity": "sha512-3wgnrmEAJ4T+mGXAUfMvMAbxU9RDG43XmGce4j6CwPtVxB3vfwXSZ6KhFwDzZ3mZHhmPimMAXg71veiBGzeAZw==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-2.1.0.tgz", + "integrity": "sha512-KvOVV+X1yLBfs9dCBSopq/+G1PcgT3lAK07mC4BzXi5E7ahzMAF8oIupDDJ6mievI6F+lAATkbQQlQixJfT3aQ==", "funding": [ { "type": "GitHub Sponsors", @@ -14725,26 +14905,26 @@ } }, "node_modules/turbo": { - "version": "1.10.16", - "resolved": "https://registry.npmjs.org/turbo/-/turbo-1.10.16.tgz", - "integrity": "sha512-2CEaK4FIuSZiP83iFa9GqMTQhroW2QryckVqUydmg4tx78baftTOS0O+oDAhvo9r9Nit4xUEtC1RAHoqs6ZEtg==", + "version": "1.11.3", + "resolved": "https://registry.npmjs.org/turbo/-/turbo-1.11.3.tgz", + "integrity": "sha512-RCJOUFcFMQNIGKSjC9YmA5yVP1qtDiBA0Lv9VIgrXraI5Da1liVvl3VJPsoDNIR9eFMyA/aagx1iyj6UWem5hA==", "dev": true, "bin": { "turbo": "bin/turbo" }, "optionalDependencies": { - "turbo-darwin-64": "1.10.16", - "turbo-darwin-arm64": "1.10.16", - "turbo-linux-64": "1.10.16", - "turbo-linux-arm64": "1.10.16", - "turbo-windows-64": "1.10.16", - "turbo-windows-arm64": "1.10.16" + "turbo-darwin-64": "1.11.3", + "turbo-darwin-arm64": "1.11.3", + "turbo-linux-64": "1.11.3", + "turbo-linux-arm64": "1.11.3", + "turbo-windows-64": "1.11.3", + "turbo-windows-arm64": "1.11.3" } }, "node_modules/turbo-darwin-64": { - "version": "1.10.16", - "resolved": "https://registry.npmjs.org/turbo-darwin-64/-/turbo-darwin-64-1.10.16.tgz", - "integrity": "sha512-+Jk91FNcp9e9NCLYlvDDlp2HwEDp14F9N42IoW3dmHI5ZkGSXzalbhVcrx3DOox3QfiNUHxzWg4d7CnVNCuuMg==", + "version": "1.11.3", + "resolved": "https://registry.npmjs.org/turbo-darwin-64/-/turbo-darwin-64-1.11.3.tgz", + "integrity": "sha512-IsOOg2bVbIt3o/X8Ew9fbQp5t1hTHN3fGNQYrPQwMR2W1kIAC6RfbVD4A9OeibPGyEPUpwOH79hZ9ydFH5kifw==", "cpu": [ "x64" ], @@ -14755,9 +14935,9 @@ ] }, "node_modules/turbo-darwin-arm64": { - "version": "1.10.16", - "resolved": "https://registry.npmjs.org/turbo-darwin-arm64/-/turbo-darwin-arm64-1.10.16.tgz", - "integrity": "sha512-jqGpFZipIivkRp/i+jnL8npX0VssE6IAVNKtu573LXtssZdV/S+fRGYA16tI46xJGxSAivrZ/IcgZrV6Jk80bw==", + "version": "1.11.3", + "resolved": "https://registry.npmjs.org/turbo-darwin-arm64/-/turbo-darwin-arm64-1.11.3.tgz", + "integrity": "sha512-FsJL7k0SaPbJzI/KCnrf/fi3PgCDCjTliMc/kEFkuWVA6Httc3Q4lxyLIIinz69q6JTx8wzh6yznUMzJRI3+dg==", "cpu": [ "arm64" ], @@ -14768,9 +14948,9 @@ ] }, "node_modules/turbo-linux-64": { - "version": "1.10.16", - "resolved": "https://registry.npmjs.org/turbo-linux-64/-/turbo-linux-64-1.10.16.tgz", - "integrity": "sha512-PpqEZHwLoizQ6sTUvmImcRmACyRk9EWLXGlqceogPZsJ1jTRK3sfcF9fC2W56zkSIzuLEP07k5kl+ZxJd8JMcg==", + "version": "1.11.3", + "resolved": "https://registry.npmjs.org/turbo-linux-64/-/turbo-linux-64-1.11.3.tgz", + "integrity": "sha512-SvW7pvTVRGsqtSkII5w+wriZXvxqkluw5FO/MNAdFw0qmoov+PZ237+37/NgArqE3zVn1GX9P6nUx9VO+xcQAg==", "cpu": [ "x64" ], @@ -14781,9 +14961,9 @@ ] }, "node_modules/turbo-linux-arm64": { - "version": "1.10.16", - "resolved": "https://registry.npmjs.org/turbo-linux-arm64/-/turbo-linux-arm64-1.10.16.tgz", - "integrity": "sha512-TMjFYz8to1QE0fKVXCIvG/4giyfnmqcQIwjdNfJvKjBxn22PpbjeuFuQ5kNXshUTRaTJihFbuuCcb5OYFNx4uw==", + "version": "1.11.3", + "resolved": "https://registry.npmjs.org/turbo-linux-arm64/-/turbo-linux-arm64-1.11.3.tgz", + "integrity": "sha512-YhUfBi1deB3m+3M55X458J6B7RsIS7UtM3P1z13cUIhF+pOt65BgnaSnkHLwETidmhRh8Dl3GelaQGrB3RdCDw==", "cpu": [ "arm64" ], @@ -14794,9 +14974,9 @@ ] }, "node_modules/turbo-windows-64": { - "version": "1.10.16", - "resolved": "https://registry.npmjs.org/turbo-windows-64/-/turbo-windows-64-1.10.16.tgz", - "integrity": "sha512-+jsf68krs0N66FfC4/zZvioUap/Tq3sPFumnMV+EBo8jFdqs4yehd6+MxIwYTjSQLIcpH8KoNMB0gQYhJRLZzw==", + "version": "1.11.3", + "resolved": "https://registry.npmjs.org/turbo-windows-64/-/turbo-windows-64-1.11.3.tgz", + "integrity": "sha512-s+vEnuM2TiZuAUUUpmBHDr6vnNbJgj+5JYfnYmVklYs16kXh+EppafYQOAkcRIMAh7GjV3pLq5/uGqc7seZeHA==", "cpu": [ "x64" ], @@ -14807,9 +14987,9 @@ ] }, "node_modules/turbo-windows-arm64": { - "version": "1.10.16", - "resolved": "https://registry.npmjs.org/turbo-windows-arm64/-/turbo-windows-arm64-1.10.16.tgz", - "integrity": "sha512-sKm3hcMM1bl0B3PLG4ifidicOGfoJmOEacM5JtgBkYM48ncMHjkHfFY7HrJHZHUnXM4l05RQTpLFoOl/uIo2HQ==", + "version": "1.11.3", + "resolved": "https://registry.npmjs.org/turbo-windows-arm64/-/turbo-windows-arm64-1.11.3.tgz", + "integrity": "sha512-ZR5z5Zpc7cASwfdRAV5yNScCZBsgGSbcwiA/u3farCacbPiXsfoWUkz28iyrx21/TRW0bi6dbsB2v17swa8bjw==", "cpu": [ "arm64" ], @@ -15954,7 +16134,7 @@ }, "packages/cache-handler": { "name": "@neshca/cache-handler", - "version": "0.6.8", + "version": "0.6.9", "license": "MIT", "dependencies": { "@neshca/json-replacer-reviver": "*", @@ -15963,9 +16143,8 @@ "devDependencies": { "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", - "@neshca/tsconfig": "*", + "@repo/typescript-config": "*", "@types/node": "20.11.7", - "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", "tsx": "4.7.0", @@ -15992,9 +16171,8 @@ "diffscribe": "dist/diffscribe.js" }, "devDependencies": { - "@neshca/tsconfig": "*", + "@repo/typescript-config": "*", "@types/node": "20.11.7", - "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", "typescript": "5.3.3" @@ -16018,9 +16196,8 @@ "version": "1.1.0", "license": "MIT", "devDependencies": { - "@neshca/tsconfig": "*", + "@repo/typescript-config": "*", "@types/node": "20.11.7", - "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", "tsx": "4.7.0", @@ -16050,9 +16227,8 @@ "devDependencies": { "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", - "@neshca/tsconfig": "*", + "@repo/typescript-config": "*", "@types/node": "20.11.7", - "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", "tsx": "4.7.0", diff --git a/package.json b/package.json index f61a9266..a1587719 100644 --- a/package.json +++ b/package.json @@ -14,20 +14,22 @@ "build:app": "FORCE_COLOR=1 turbo run build --log-prefix=none --filter=cache-testing", "build:docs": "FORCE_COLOR=1 turbo run build:docs --log-prefix=none --filter=cache-handler-docs", "changeset": "changeset", - "clean": "FORCE_COLOR=1 turbo run clean", + "clean": "FORCE_COLOR=1 turbo run clean --log-order=grouped", + "codestyle:check": "biome check . && npm run eslint:check && npm run prettier:check", + "codestyle:fix": "biome check --apply . && npm run eslint:fix && npm run prettier:fix", "dev": "FORCE_COLOR=1 turbo run dev --log-prefix=none --filter=!diffscribe", "dev:backend": "FORCE_COLOR=1 turbo run dev --log-prefix=none --filter=backend", "dev:with-redis": "FORCE_COLOR=1 turbo run dev --log-prefix=none --filter=!@neshca/server --filter=!diffscribe", "e2e": "FORCE_COLOR=1 turbo run e2e --log-prefix=none", - "format:check": "prettier --check .", - "format:fix": "prettier --write .", - "lint": "FORCE_COLOR=1 turbo run lint && npm run format:check", - "lint:fix": "FORCE_COLOR=1 turbo run lint:fix && npm run format:fix", - "release": "npm run build && npm run lint && changeset publish", + "eslint:check": "FORCE_COLOR=1 turbo run eslint:check --log-order=grouped", + "eslint:fix": "FORCE_COLOR=1 turbo run eslint:fix --log-order=grouped", + "prettier:check": "prettier --check **/*.{md,mdx,yml,json}", + "prettier:fix": "prettier --write **/*.{md,mdx,yml,json}", + "release": "npm run build && npm run codestyle:check && changeset publish", "start": "FORCE_COLOR=1 turbo run start --log-prefix=none --filter=!./apps/* --filter=!./docs/*", "start:app": "FORCE_COLOR=1 turbo run start --log-prefix=none --filter=cache-testing", "start:backend": "FORCE_COLOR=1 turbo run start --log-prefix=none --filter=backend", - "test": "FORCE_COLOR=1 turbo run test", + "test": "FORCE_COLOR=1 turbo run test --log-order=grouped", "version-packages": "changeset version && npm run format:fix" }, "dependencies": { @@ -35,13 +37,13 @@ }, "devDependencies": { "@actions/core": "1.10.1", - "@neshca/prettier-config": "*", - "@neshca/tsconfig": "*", + "@biomejs/biome": "1.5.3", + "@repo/prettier-config": "*", + "@repo/typescript-config": "*", "diffscribe": "*", - "eslint": "8.56.0", "glob": "10.3.10", "prettier": "3.2.4", - "turbo": "1.10.16" + "turbo": "1.11.3" }, "engines": { "node": ">=20.9.0", diff --git a/packages/cache-handler/.eslintrc.cjs b/packages/cache-handler/.eslintrc.cjs deleted file mode 100644 index e541adca..00000000 --- a/packages/cache-handler/.eslintrc.cjs +++ /dev/null @@ -1,3 +0,0 @@ -module.exports = { - extends: ['neshca/library'], -}; diff --git a/packages/cache-handler/README.md b/packages/cache-handler/README.md index cd999f63..18522395 100644 --- a/packages/cache-handler/README.md +++ b/packages/cache-handler/README.md @@ -32,9 +32,9 @@ Next.js applications are often deployed in a self-hosted distributed environment `@neshca/cache-handler` elegantly addresses these challenges by offering: -- A straightforward API complemented by meticulously crafted Handlers. -- Comprehensive customization options. -- Simplified on-demand revalidation, akin to managing a single application instance. +- A straightforward API complemented by meticulously crafted Handlers. +- Comprehensive customization options. +- Simplified on-demand revalidation, akin to managing a single application instance. ## Kickstarting Your Custom Cache Solution @@ -44,17 +44,17 @@ Begin enhancing your application's caching system with our [Installation and the Discover the versatility of `@neshca/cache-handler` in the examples section, where real-world scenarios are illustrated. -- [Official Next.js template ↗](https://github.com/vercel/next.js/tree/canary/examples/cache-handler-redis) -- [Redis Stack ↗](https://caching-tools.github.io/next-shared-cache/redis-stack) -- [Redis String ↗](https://caching-tools.github.io/next-shared-cache/redis-strings) -- [HTTP server ↗](https://caching-tools.github.io/next-shared-cache/server) -- [Custom Redis Stack ↗](https://caching-tools.github.io/next-shared-cache/redis-stack-custom) -- [Custom Redis String ↗](https://caching-tools.github.io/next-shared-cache/redis-strings-custom) +- [Official Next.js template ↗](https://github.com/vercel/next.js/tree/canary/examples/cache-handler-redis) +- [Redis Stack ↗](https://caching-tools.github.io/next-shared-cache/redis-stack) +- [Redis String ↗](https://caching-tools.github.io/next-shared-cache/redis-strings) +- [HTTP server ↗](https://caching-tools.github.io/next-shared-cache/server) +- [Custom Redis Stack ↗](https://caching-tools.github.io/next-shared-cache/redis-stack-custom) +- [Custom Redis String ↗](https://caching-tools.github.io/next-shared-cache/redis-strings-custom) ## Requirements -- Next.js 13.5.1 and newer; -- Node.js 18.17.0 and newer. +- Next.js 13.5.1 and newer; +- Node.js 18.17.0 and newer. ## Documentation @@ -66,12 +66,12 @@ Next.js stabilized the API, and we are almost there. Any **breaking changes** ma ### Roadmap -- [x] Support for App routes; -- [x] Support for Pages routes; -- [x] Happy path tests; -- [x] Examples; -- [x] Documentation; -- [ ] Full test coverage. +- [x] Support for App routes; +- [x] Support for Pages routes; +- [x] Happy path tests; +- [x] Examples; +- [x] Documentation; +- [ ] Full test coverage. ## Developing and contributing diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 6abf6359..122c0019 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -62,8 +62,6 @@ "build": "tsup --dts-resolve", "clean": "rimraf ./dist ./.turbo ./node_modules", "dev": "tsup --watch", - "lint": "eslint .", - "lint:fix": "eslint --fix .", "test": "node --test --import tsx/esm src/**/*.test.ts", "test:watch": "node --watch --test --import tsx/esm src/**/*.test.ts" }, @@ -74,9 +72,8 @@ "devDependencies": { "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", - "@neshca/tsconfig": "*", + "@repo/typescript-config": "*", "@types/node": "20.11.7", - "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", "tsx": "4.7.0", diff --git a/packages/cache-handler/src/cache-handler.ts b/packages/cache-handler/src/cache-handler.ts index acd7efbe..8a6b82ee 100644 --- a/packages/cache-handler/src/cache-handler.ts +++ b/packages/cache-handler/src/cache-handler.ts @@ -3,16 +3,16 @@ import path from 'node:path'; import type { CacheHandler, - CacheHandlerValue, - CacheHandlerParametersSet, CacheHandlerParametersGet, - FileSystemCacheContext, - CachedFetchValue, CacheHandlerParametersRevalidateTag, - RouteMetadata, - NonNullableRouteMetadata, + CacheHandlerParametersSet, + CacheHandlerValue, + CachedFetchValue, + FileSystemCacheContext, IncrementalCacheKindHint, IncrementalCacheValue, + NonNullableRouteMetadata, + RouteMetadata, TagsManifest, } from '@neshca/next-common'; @@ -213,13 +213,13 @@ export class IncrementalCache implements CacheHandler { * ``` */ public static get name(): string { - if (this.#cacheListLength === undefined) { + if (IncrementalCache.#cacheListLength === undefined) { return '@neshca/cache-handler is not configured yet'; } - return `@neshca/cache-handler with ${this.#cacheListLength} Handler${ - this.#cacheListLength > 1 ? 's' : '' - } and ${this.#useFileSystem ? 'file system' : 'no file system'} caching`; + return `@neshca/cache-handler with ${IncrementalCache.#cacheListLength} Handler${ + IncrementalCache.#cacheListLength > 1 ? 's' : '' + } and ${IncrementalCache.#useFileSystem ? 'file system' : 'no file system'} caching`; } static #resolveCreationPromise: () => void; @@ -272,12 +272,12 @@ export class IncrementalCache implements CacheHandler { * @param onCreationHook - The {@link OnCreationHook} function to be called during cache creation. */ public static onCreation(onCreationHook: OnCreationHook): void { - this.onCreationHook = onCreationHook; + IncrementalCache.onCreationHook = onCreationHook; } static async configureIncrementalCache(cacheCreationContext: CacheCreationContext): Promise { // Retrieve cache configuration by invoking the onCreation hook with the provided context - const config = this.onCreationHook(cacheCreationContext); + const config = IncrementalCache.onCreationHook(cacheCreationContext); // Destructure the cache and useFileSystem settings from the configuration // Await the configuration if it's a promise @@ -287,36 +287,41 @@ export class IncrementalCache implements CacheHandler { const { serverDistDir } = cacheCreationContext; // Set the class-level flag to determine if the file system caching should be used - this.#useFileSystem = useFileSystem; + IncrementalCache.#useFileSystem = useFileSystem; // Check if the pages directory exists and set the flag accordingly - this.#hasPagesDir = fs.existsSync(path.join(serverDistDir, 'pages')); + IncrementalCache.#hasPagesDir = fs.existsSync(path.join(serverDistDir, 'pages')); // Define the path for the tags manifest file - this.#tagsManifestPath = path.join(serverDistDir, '..', 'cache', 'fetch-cache', 'tags-manifest.json'); + IncrementalCache.#tagsManifestPath = path.join( + serverDistDir, + '..', + 'cache', + 'fetch-cache', + 'tags-manifest.json', + ); try { // Ensure the directory for the tags manifest exists await fsPromises.mkdir(path.dirname(IncrementalCache.#tagsManifestPath), { recursive: true }); // Read the tags manifest from the file system - const tagsManifestData = await fsPromises.readFile(this.#tagsManifestPath, 'utf-8'); + const tagsManifestData = await fsPromises.readFile(IncrementalCache.#tagsManifestPath, 'utf-8'); // Parse the tags manifest data const tagsManifestFromFileSystem = JSON.parse(tagsManifestData) as unknown; // Update the local RevalidatedTags if the parsed data is a valid tags manifest if (isTagsManifest(tagsManifestFromFileSystem)) { - this.#revalidatedTags = Object.entries(tagsManifestFromFileSystem.items).reduce( - (revalidatedTags, [tag, { revalidatedAt }]) => { - revalidatedTags[tag] = revalidatedAt; + IncrementalCache.#revalidatedTags = Object.entries( + tagsManifestFromFileSystem.items, + ).reduce((revalidatedTags, [tag, { revalidatedAt }]) => { + revalidatedTags[tag] = revalidatedAt; - return revalidatedTags; - }, - {}, - ); + return revalidatedTags; + }, {}); } - } catch (err) { + } catch (_error) { // If the file doesn't exist, use the default tagsManifest } @@ -333,37 +338,33 @@ export class IncrementalCache implements CacheHandler { }, []) : [{ name: '0', ...cache }]; - this.#cacheListLength = cacheList.length; + IncrementalCache.#cacheListLength = cacheList.length; // if no cache is provided and we don't use the file system - if (cacheList.length === 0 && !this.#useFileSystem) { + if (cacheList.length === 0 && !IncrementalCache.#useFileSystem) { throw new Error( 'No cache provided and file system caching is disabled. Please provide a cache or enable file system caching.', ); } - this.#cache = { + IncrementalCache.#cache = { async get(key) { for await (const cacheItem of cacheList) { try { const cacheValue = await cacheItem.get(key); if (IncrementalCache.#debug) { - // eslint-disable-next-line no-console -- we want to log this - console.log(`get from "${cacheItem.name}"`, key, Boolean(cacheValue)); + console.info(`get from "${cacheItem.name}"`, key, Boolean(cacheValue)); } return cacheValue; } catch (error) { if (IncrementalCache.#debug) { - // eslint-disable-next-line no-console -- we want to log this console.warn( `Cache handler "${cacheItem.name}" failed to get value for key "${key}".`, error, ); } - - continue; } } @@ -376,7 +377,6 @@ export class IncrementalCache implements CacheHandler { return cacheItem.set(key, value, maxAgeSeconds); } catch (error) { if (IncrementalCache.#debug) { - // eslint-disable-next-line no-console -- we want to log this console.warn( `Cache handler "${cacheItem.name}" failed to set value for key "${key}".`, error, @@ -399,7 +399,6 @@ export class IncrementalCache implements CacheHandler { // eslint-disable-next-line no-console -- we want to log this console.warn(`Cache handler "${cacheItem.name}" failed to get revalidated tags.`, error); } - continue; } } }, @@ -443,7 +442,7 @@ export class IncrementalCache implements CacheHandler { try { buildId = fs.readFileSync(path.join(this.#serverDistDir, '..', 'BUILD_ID'), 'utf-8'); - } catch (error) { + } catch (_error) { buildId = undefined; } @@ -519,8 +518,7 @@ export class IncrementalCache implements CacheHandler { // via header on GET same as SET if (!tags?.every((tag) => cachedTags?.includes(tag))) { if (IncrementalCache.#debug) { - // eslint-disable-next-line no-console -- we want to log this - console.log('tags vs cachedTags mismatch', tags, cachedTags); + console.info('tags vs cachedTags mismatch', tags, cachedTags); } await this.set(cacheKey, cachedData.value, { tags }); } @@ -636,8 +634,7 @@ export class IncrementalCache implements CacheHandler { cachedData = await this.readCacheFromFileSystem(cacheKey, kindHint, tags); if (IncrementalCache.#debug) { - // eslint-disable-next-line no-console -- we want to log this - console.log('get from file system', cacheKey, tags, kindHint, Boolean(cachedData)); + console.info('get from file system', cacheKey, tags, kindHint, Boolean(cachedData)); } if (cachedData) { @@ -733,16 +730,14 @@ export class IncrementalCache implements CacheHandler { ); if (IncrementalCache.#debug) { - // eslint-disable-next-line no-console -- we want to log this - console.log('set to external cache store', cacheKey); + console.info('set to external cache store', cacheKey); } if (data && IncrementalCache.#useFileSystem) { await this.writeCacheToFileSystem(data, cacheKey, tags); if (IncrementalCache.#debug) { - // eslint-disable-next-line no-console -- we want to log this - console.log('set to file system', cacheKey); + console.info('set to file system', cacheKey); } } } @@ -751,8 +746,7 @@ export class IncrementalCache implements CacheHandler { const [tag] = args; if (IncrementalCache.#debug) { - // eslint-disable-next-line no-console -- we want to log this - console.log('revalidateTag', tag); + console.info('revalidateTag', tag); } await IncrementalCache.#creationPromise; @@ -760,15 +754,13 @@ export class IncrementalCache implements CacheHandler { await IncrementalCache.#cache.revalidateTag?.(tag, Date.now()); if (IncrementalCache.#debug) { - // eslint-disable-next-line no-console -- we want to log this - console.log('updated external revalidated tags'); + console.info('updated external revalidated tags'); } IncrementalCache.#revalidatedTags[tag] = Date.now(); if (IncrementalCache.#debug) { - // eslint-disable-next-line no-console -- we want to log this - console.log('updated local revalidated tags'); + console.info('updated local revalidated tags'); } try { @@ -788,8 +780,7 @@ export class IncrementalCache implements CacheHandler { await fsPromises.writeFile(IncrementalCache.#tagsManifestPath, JSON.stringify(tagsManifest)); if (IncrementalCache.#debug) { - // eslint-disable-next-line no-console -- we want to log this - console.log('updated tags manifest file'); + console.info('updated tags manifest file'); } } catch (error) { // eslint-disable-next-line no-console -- we want to log this @@ -811,7 +802,7 @@ export class IncrementalCache implements CacheHandler { return 'pages'; } // Otherwise assume it's a pages file if the pages directory isn't enabled. - else if (this.#appDir && !pagesDir) { + if (this.#appDir && !pagesDir) { return 'app'; } diff --git a/packages/cache-handler/src/constants.ts b/packages/cache-handler/src/constants.ts index e3c0e5a2..7712c9c4 100644 --- a/packages/cache-handler/src/constants.ts +++ b/packages/cache-handler/src/constants.ts @@ -1 +1 @@ -export const MAX_INT32 = Math.pow(2, 31) - 1; +export const MAX_INT32 = 2 ** 31 - 1; diff --git a/packages/cache-handler/src/handlers/local-lru.ts b/packages/cache-handler/src/handlers/local-lru.ts index 633756d2..53d24711 100644 --- a/packages/cache-handler/src/handlers/local-lru.ts +++ b/packages/cache-handler/src/handlers/local-lru.ts @@ -1,4 +1,3 @@ -/* eslint-disable import/no-default-export -- use default here */ import type { LruCacheOptions } from '@neshca/next-lru-cache/next-cache-handler-value'; import { createCache } from '@neshca/next-lru-cache/next-cache-handler-value'; diff --git a/packages/cache-handler/src/handlers/redis-stack.ts b/packages/cache-handler/src/handlers/redis-stack.ts index e8723e6d..b4781f11 100644 --- a/packages/cache-handler/src/handlers/redis-stack.ts +++ b/packages/cache-handler/src/handlers/redis-stack.ts @@ -1,8 +1,6 @@ -/* eslint-disable import/no-default-export -- use default here */ - import type { RedisClientType } from 'redis'; -import type { RevalidatedTags, CacheHandlerValue, Cache } from '../cache-handler'; +import type { Cache, CacheHandlerValue, RevalidatedTags } from '../cache-handler'; import type { RedisJSON, UseTtlOptions } from '../common-types'; import { calculateEvictionDelay } from '../helpers/calculate-eviction-delay'; import { getTimeoutRedisCommandOptions } from '../helpers/get-timeout-redis-command-options'; diff --git a/packages/cache-handler/src/handlers/redis-strings.ts b/packages/cache-handler/src/handlers/redis-strings.ts index 044da332..6f6fbd73 100644 --- a/packages/cache-handler/src/handlers/redis-strings.ts +++ b/packages/cache-handler/src/handlers/redis-strings.ts @@ -1,4 +1,3 @@ -/* eslint-disable import/no-default-export -- use default here */ import { replaceJsonWithBase64, reviveFromBase64Representation } from '@neshca/json-replacer-reviver'; import type { RedisClientType } from 'redis'; diff --git a/packages/cache-handler/src/handlers/server.ts b/packages/cache-handler/src/handlers/server.ts index d0f8941e..dd732be0 100644 --- a/packages/cache-handler/src/handlers/server.ts +++ b/packages/cache-handler/src/handlers/server.ts @@ -1,7 +1,6 @@ -/* eslint-disable import/no-default-export -- use default here */ -import { reviveFromBase64Representation, replaceJsonWithBase64 } from '@neshca/json-replacer-reviver'; +import { replaceJsonWithBase64, reviveFromBase64Representation } from '@neshca/json-replacer-reviver'; -import type { CacheHandlerValue, Cache, RevalidatedTags } from '../cache-handler'; +import type { Cache, CacheHandlerValue, RevalidatedTags } from '../cache-handler'; export type ServerCacheHandlerOptions = { /** @@ -99,7 +98,7 @@ export default function createCache({ baseUrl, timeoutMs }: ServerCacheHandlerOp }); if (!response.ok) { - throw new Error(`Server error.`, { cause: response }); + throw new Error('Server error.', { cause: response }); } const json = (await response.json()) as RevalidatedTags; diff --git a/packages/cache-handler/src/helpers/calculate-eviction-delay.ts b/packages/cache-handler/src/helpers/calculate-eviction-delay.ts index 671adc6f..e7cbba1e 100644 --- a/packages/cache-handler/src/helpers/calculate-eviction-delay.ts +++ b/packages/cache-handler/src/helpers/calculate-eviction-delay.ts @@ -28,9 +28,9 @@ export function calculateEvictionDelay( if ( typeof computedEvictionDelay !== 'number' || - isNaN(computedEvictionDelay) || + Number.isNaN(computedEvictionDelay) || computedEvictionDelay <= 0 || - !isFinite(computedEvictionDelay) + !Number.isFinite(computedEvictionDelay) ) { throw new Error( `Invalid eviction delay "${computedEvictionDelay}" returned from useTtl function. Expected a positive integer. Received: ${computedEvictionDelay}`, diff --git a/packages/cache-handler/src/helpers/promise-with-timeout.ts b/packages/cache-handler/src/helpers/promise-with-timeout.ts index fbca433e..7cac6fcd 100644 --- a/packages/cache-handler/src/helpers/promise-with-timeout.ts +++ b/packages/cache-handler/src/helpers/promise-with-timeout.ts @@ -14,7 +14,7 @@ import { MAX_INT32 } from '../constants'; * the returned Promise will be rejected with an Error that has a message indicating the timeout period. */ export function promiseWithTimeout(operation: Promise, timeoutMs?: number): Promise { - if (typeof timeoutMs !== 'number' || isNaN(timeoutMs) || timeoutMs <= 0 || timeoutMs > MAX_INT32) { + if (typeof timeoutMs !== 'number' || Number.isNaN(timeoutMs) || timeoutMs <= 0 || timeoutMs > MAX_INT32) { return operation; } diff --git a/packages/cache-handler/tsconfig.json b/packages/cache-handler/tsconfig.json index c54332b9..d44796d3 100644 --- a/packages/cache-handler/tsconfig.json +++ b/packages/cache-handler/tsconfig.json @@ -1,5 +1,5 @@ { - "extends": "@neshca/tsconfig/node-packages.json", + "extends": "@repo/typescript-config/library.json", "include": ["."], "exclude": ["dist", "node_modules"], "compilerOptions": { diff --git a/packages/diffscribe/.eslintrc.cjs b/packages/diffscribe/.eslintrc.cjs deleted file mode 100644 index e541adca..00000000 --- a/packages/diffscribe/.eslintrc.cjs +++ /dev/null @@ -1,3 +0,0 @@ -module.exports = { - extends: ['neshca/library'], -}; diff --git a/packages/diffscribe/CHANGELOG.md b/packages/diffscribe/CHANGELOG.md index 3c3f4ccc..fb70dabe 100644 --- a/packages/diffscribe/CHANGELOG.md +++ b/packages/diffscribe/CHANGELOG.md @@ -4,10 +4,10 @@ ### Patch Changes -- 9a970af: Add `gpt-4-1106-preview` model +- 9a970af: Add `gpt-4-1106-preview` model ## 0.2.0 ### Minor Changes -- a9e4604: The start of beta +- a9e4604: The start of beta diff --git a/packages/diffscribe/README.md b/packages/diffscribe/README.md index 0ae486e4..962e98ab 100644 --- a/packages/diffscribe/README.md +++ b/packages/diffscribe/README.md @@ -10,18 +10,18 @@ Please note that this project is in its beta version and may undergo significant ## Features: -- **Smart Analysis**: Evaluates Git status and Git diffstat to identify essential changes. -- **Security**: Your code stays with you – no sharing with OpenAI. -- **User Interaction**: Engages with you to refine its interpretations. -- **OpenAI Power**: Uses the OpenAI API to create concise, descriptive commit messages. -- **Customizable**: Offers customization options like model type, temperature, and commit message length. +- **Smart Analysis**: Evaluates Git status and Git diffstat to identify essential changes. +- **Security**: Your code stays with you – no sharing with OpenAI. +- **User Interaction**: Engages with you to refine its interpretations. +- **OpenAI Power**: Uses the OpenAI API to create concise, descriptive commit messages. +- **Customizable**: Offers customization options like model type, temperature, and commit message length. ## Prerequisites: -- Node.js `>=18.17.0` -- Git `>=2` -- An OpenAI API key. You can get one [here](https://platform.openai.com/account/api-keys) -- `.env` file with `OPENAI_API_KEY` set to your OpenAI API key. +- Node.js `>=18.17.0` +- Git `>=2` +- An OpenAI API key. You can get one [here](https://platform.openai.com/account/api-keys) +- `.env` file with `OPENAI_API_KEY` set to your OpenAI API key. ## Installation: @@ -52,9 +52,9 @@ npx diffscribe [--model=] [--modelTemperature=] [ ### Options: -- `--model`: The OpenAI model to use. Supported models are `gpt-4` and `gpt-3.5-turbo`. The default is `gpt-4`. -- `--modelTemperature`: The temperature setting for the OpenAI model. The default is `0.05`. Use it to control the randomness of the generated commit message. It should be between `0` and `2`. -- `--commitLength`: The maximum length of the generated commit message. It should be between 50 and 500 characters. The default is `50`. It is not an actual limit but rather a guideline to the model. +- `--model`: The OpenAI model to use. Supported models are `gpt-4` and `gpt-3.5-turbo`. The default is `gpt-4`. +- `--modelTemperature`: The temperature setting for the OpenAI model. The default is `0.05`. Use it to control the randomness of the generated commit message. It should be between `0` and `2`. +- `--commitLength`: The maximum length of the generated commit message. It should be between 50 and 500 characters. The default is `50`. It is not an actual limit but rather a guideline to the model. ### Example: @@ -70,15 +70,15 @@ Based on the information provided, the commit message could be: "Add diffscribe What happened behind the scenes: -- `diffscribe` will run `git status --renames` and `git diff --cached --stat` to get the branch name, list of changed files, and the number of changes in each file. It does not look inside the files. -- This information is sent to OpenAI's API, along with the context and guidelines for the GPT model. -- GPT will try to understand the changes and prompt the user to confirm its understanding. -- GPT will generate a commit message if the user confirms the understanding. +- `diffscribe` will run `git status --renames` and `git diff --cached --stat` to get the branch name, list of changed files, and the number of changes in each file. It does not look inside the files. +- This information is sent to OpenAI's API, along with the context and guidelines for the GPT model. +- GPT will try to understand the changes and prompt the user to confirm its understanding. +- GPT will generate a commit message if the user confirms the understanding. ## Notes: -- Ensure you have the `.env` file in the same directory from which you are running `diffscribe`. -- If you encounter errors related to model selection, temperature, or commit length, please check the passed arguments for validity. +- Ensure you have the `.env` file in the same directory from which you are running `diffscribe`. +- If you encounter errors related to model selection, temperature, or commit length, please check the passed arguments for validity. ## Developing and contributing diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index 60cd4393..8b4864d2 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -21,14 +21,11 @@ "scripts": { "build": "tsup", "clean": "rimraf ./dist ./.turbo ./node_modules", - "dev": "tsup --watch", - "lint": "eslint .", - "lint:fix": "eslint --fix ." + "dev": "tsup --watch" }, "devDependencies": { - "@neshca/tsconfig": "*", + "@repo/typescript-config": "*", "@types/node": "20.11.7", - "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", "typescript": "5.3.3" diff --git a/packages/diffscribe/src/diffscribe.ts b/packages/diffscribe/src/diffscribe.ts index e3034667..d7a4122d 100644 --- a/packages/diffscribe/src/diffscribe.ts +++ b/packages/diffscribe/src/diffscribe.ts @@ -3,8 +3,8 @@ import { execFileSync } from 'node:child_process'; import { createInterface } from 'node:readline/promises'; -import { OpenAI } from 'openai'; import 'dotenv/config'; +import { OpenAI } from 'openai'; // OpenAI client initialization const openai = new OpenAI({ @@ -30,7 +30,7 @@ function parseArguments(args: string[]): Record { return args.reduce>((acc, arg) => { const [keyWithDash, value] = arg.split('='); - if (keyWithDash && keyWithDash.startsWith('--') && value) { + if (keyWithDash?.startsWith('--') && value) { const key = keyWithDash.slice(2); acc[key] = value; @@ -49,12 +49,16 @@ const { // Validations const commitLengthNumber = parseInt(commitLength, 10); -if (isNaN(commitLengthNumber) || commitLengthNumber < COMMIT_LENGTH_MIN || commitLengthNumber > COMMIT_LENGTH_MAX) { +if ( + Number.isNaN(commitLengthNumber) || + commitLengthNumber < COMMIT_LENGTH_MIN || + commitLengthNumber > COMMIT_LENGTH_MAX +) { throw new Error(`Invalid commit length ${commitLength}`); } const temperature = parseFloat(modelTemperature); -if (isNaN(temperature)) { +if (Number.isNaN(temperature)) { throw new Error(`Invalid temperature ${modelTemperature}`); } @@ -162,7 +166,6 @@ async function main(): Promise { question: string; }; - // eslint-disable-next-line no-await-in-loop -- We need to wait for the response const functionResponse = await functionToCall(functionArgs.question); messages.push(conversationMessage); @@ -173,7 +176,6 @@ async function main(): Promise { content: functionResponse, }); - // eslint-disable-next-line no-await-in-loop -- We need to wait for the response const nextResponse = await openai.chat.completions.create({ messages, model, diff --git a/packages/diffscribe/tsconfig.json b/packages/diffscribe/tsconfig.json index fc4347bb..15bd4c30 100644 --- a/packages/diffscribe/tsconfig.json +++ b/packages/diffscribe/tsconfig.json @@ -1,5 +1,5 @@ { - "extends": "@neshca/tsconfig/node-packages.json", + "extends": "@repo/typescript-config/library.json", "include": ["."], "exclude": ["dist", "node_modules"], } diff --git a/packages/json-replacer-reviver/.eslintrc.cjs b/packages/json-replacer-reviver/.eslintrc.cjs deleted file mode 100644 index e541adca..00000000 --- a/packages/json-replacer-reviver/.eslintrc.cjs +++ /dev/null @@ -1,3 +0,0 @@ -module.exports = { - extends: ['neshca/library'], -}; diff --git a/packages/json-replacer-reviver/CHANGELOG.md b/packages/json-replacer-reviver/CHANGELOG.md index 4110d4cf..32abd839 100644 --- a/packages/json-replacer-reviver/CHANGELOG.md +++ b/packages/json-replacer-reviver/CHANGELOG.md @@ -4,22 +4,22 @@ ### Minor Changes -- 954a21e: Use `exports` instead of `main` and `module` in `package.json` +- 954a21e: Use `exports` instead of `main` and `module` in `package.json` ## 1.0.3 ### Patch Changes -- a9e4604: Switched testing framework from Jest to native Node.js +- a9e4604: Switched testing framework from Jest to native Node.js ## 1.0.2 ### Patch Changes -- be8d389: Improve documentation +- be8d389: Improve documentation ## 1.0.1 ### Patch Changes -- 32bc1d6: Add changeset configuration for versioning +- 32bc1d6: Add changeset configuration for versioning diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index d4522d5c..997e1291 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -23,15 +23,12 @@ "build": "tsup", "clean": "rimraf ./dist ./.turbo ./node_modules", "dev": "tsup --watch", - "lint": "eslint .", - "lint:fix": "eslint --fix .", "test": "node --test --import tsx/esm **/*.test.ts", "test:watch": "node --watch --test --import tsx/esm **/*.test.ts" }, "devDependencies": { - "@neshca/tsconfig": "*", + "@repo/typescript-config": "*", "@types/node": "20.11.7", - "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", "tsx": "4.7.0", diff --git a/packages/json-replacer-reviver/src/json-replacer-reviver.test.ts b/packages/json-replacer-reviver/src/json-replacer-reviver.test.ts index ca58cee4..019efc7e 100644 --- a/packages/json-replacer-reviver/src/json-replacer-reviver.test.ts +++ b/packages/json-replacer-reviver/src/json-replacer-reviver.test.ts @@ -2,11 +2,11 @@ import assert from 'node:assert'; import { describe, it } from 'node:test'; import { + isBufferBase64Representation, isBufferJsonRepresentation, replaceJsonWithBase64, - reviveFromJsonRepresentation, - isBufferBase64Representation, reviveFromBase64Representation, + reviveFromJsonRepresentation, } from './json-replacer-reviver'; const TEST_STRING = 'Hello'; diff --git a/packages/json-replacer-reviver/src/json-replacer-reviver.ts b/packages/json-replacer-reviver/src/json-replacer-reviver.ts index 66c212ad..dfbb852f 100644 --- a/packages/json-replacer-reviver/src/json-replacer-reviver.ts +++ b/packages/json-replacer-reviver/src/json-replacer-reviver.ts @@ -76,7 +76,7 @@ export function isBufferBase64Representation(value: unknown): value is BufferBas * console.log(parsed); // * ``` */ -export function reviveFromJsonRepresentation(key: string, value: unknown): unknown { +export function reviveFromJsonRepresentation(_key: string, value: unknown): unknown { if (isBufferJsonRepresentation(value)) { // @ts-expect-error -- TS doesn't know that Buffer.from can accept a BufferJsonRepresentation return Buffer.from(value); @@ -103,7 +103,7 @@ export function reviveFromJsonRepresentation(key: string, value: unknown): unkno * console.log(parsed); // * ``` */ -export function replaceJsonWithBase64(key: string, value: unknown): unknown { +export function replaceJsonWithBase64(_key: string, value: unknown): unknown { if (isBufferJsonRepresentation(value)) { return { type: 'BufferBase64', data: Buffer.from(value.data).toString('base64') }; } @@ -129,7 +129,7 @@ export function replaceJsonWithBase64(key: string, value: unknown): unknown { * console.log(parsed); // * ``` */ -export function reviveFromBase64Representation(key: string, value: unknown): unknown { +export function reviveFromBase64Representation(_key: string, value: unknown): unknown { if (isBufferBase64Representation(value)) { return Buffer.from(value.data, 'base64'); } diff --git a/packages/json-replacer-reviver/tsconfig.json b/packages/json-replacer-reviver/tsconfig.json index fc4347bb..15bd4c30 100644 --- a/packages/json-replacer-reviver/tsconfig.json +++ b/packages/json-replacer-reviver/tsconfig.json @@ -1,5 +1,5 @@ { - "extends": "@neshca/tsconfig/node-packages.json", + "extends": "@repo/typescript-config/library.json", "include": ["."], "exclude": ["dist", "node_modules"], } diff --git a/packages/server/.eslintrc.cjs b/packages/server/.eslintrc.cjs deleted file mode 100644 index e541adca..00000000 --- a/packages/server/.eslintrc.cjs +++ /dev/null @@ -1,3 +0,0 @@ -module.exports = { - extends: ['neshca/library'], -}; diff --git a/packages/server/CHANGELOG.md b/packages/server/CHANGELOG.md index d80ea5c9..5bf3049f 100644 --- a/packages/server/CHANGELOG.md +++ b/packages/server/CHANGELOG.md @@ -4,81 +4,81 @@ ### Minor Changes -- 60dab2a: Updated the package to ensure compatibility with the new API for `@neshca/cache-handler`. +- 60dab2a: Updated the package to ensure compatibility with the new API for `@neshca/cache-handler`. - #### Breaking Changes + #### Breaking Changes - - Renamed `getTagsManifest` route to `getRevalidatedTags`; - Changed the return type of `getRevalidatedTags` route. + - Renamed `getTagsManifest` route to `getRevalidatedTags`; + Changed the return type of `getRevalidatedTags` route. ## 0.5.1 ### Patch Changes -- 274e2e4: Fix remote property injection vulnerability +- 274e2e4: Fix remote property injection vulnerability ## 0.5.0 ### Minor Changes -- 9a970af: Add LRU key eviction +- 9a970af: Add LRU key eviction ## 0.4.1 ### Patch Changes -- cc5323d: Add next14.0.1 to dist tags +- cc5323d: Add next14.0.1 to dist tags ## 0.4.0 ### Minor Changes -- b811b66: Upgrade to Next.js v14.0.0 +- b811b66: Upgrade to Next.js v14.0.0 ## 0.3.10 ### Patch Changes -- 334890f: Add next13.5.6 in distTags +- 334890f: Add next13.5.6 in distTags ## 0.3.9 ### Patch Changes -- be8d389: Improve documentation +- be8d389: Improve documentation ## 0.3.8 ### Patch Changes -- 6a33283: Rewrite README to be more clear +- 6a33283: Rewrite README to be more clear ## 0.3.7 ### Patch Changes -- a6862db: Change result of /clear-cache route, update pino, remove @vercel/ncc +- a6862db: Change result of /clear-cache route, update pino, remove @vercel/ncc ## 0.3.6 ### Patch Changes -- 892c741: Fix publishing +- 892c741: Fix publishing ## 0.3.5 ### Patch Changes -- 8abe6ea: Add supported Next.js versions to distTags +- 8abe6ea: Add supported Next.js versions to distTags ## 0.3.4 ### Patch Changes -- 577ea45: Automatically add dist-tags to npm packages +- 577ea45: Automatically add dist-tags to npm packages ## 0.3.3 ### Patch Changes -- 32bc1d6: Add changeset configuration for versioning +- 32bc1d6: Add changeset configuration for versioning diff --git a/packages/server/package.json b/packages/server/package.json index ae5b2a75..7c4eea2a 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -22,8 +22,6 @@ "build": "tsup", "clean": "rimraf ./dist ./.turbo ./node_modules", "dev": "node --watch --import tsx/esm ./src/server.ts", - "lint": "eslint .", - "lint:fix": "eslint --fix .", "start": "node --import tsx/esm ./src/server.ts" }, "dependencies": { @@ -33,9 +31,8 @@ "devDependencies": { "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", - "@neshca/tsconfig": "*", + "@repo/typescript-config": "*", "@types/node": "20.11.7", - "eslint-config-neshca": "*", "rimraf": "5.0.5", "tsup": "8.0.1", "tsx": "4.7.0", diff --git a/packages/server/src/server.ts b/packages/server/src/server.ts index 862f7ddc..de219ac6 100644 --- a/packages/server/src/server.ts +++ b/packages/server/src/server.ts @@ -57,7 +57,7 @@ server.get('/clear-cache', async (_request, reply): Promise => { server .listen({ port, host }) .then((address) => { - logger.info(`next-cache-server listening on %s`, address); + logger.info('next-cache-server listening on %s', address); }) .catch((err) => { logger.error(err); diff --git a/packages/server/tsconfig.json b/packages/server/tsconfig.json index fc4347bb..15bd4c30 100644 --- a/packages/server/tsconfig.json +++ b/packages/server/tsconfig.json @@ -1,5 +1,5 @@ { - "extends": "@neshca/tsconfig/node-packages.json", + "extends": "@repo/typescript-config/library.json", "include": ["."], "exclude": ["dist", "node_modules"], } diff --git a/tsconfig.json b/tsconfig.json index 67ce2f4b..18c87879 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -1,3 +1,3 @@ { - "extends": "@neshca/tsconfig/base.json", + "extends": "@repo/typescript-config/library.json", } diff --git a/turbo.json b/turbo.json index 52d96768..f6c49f89 100644 --- a/turbo.json +++ b/turbo.json @@ -19,16 +19,21 @@ "dependsOn": ["^build:docs"], "outputs": [".next/**", "!.next/cache/**", "out/**"] }, - "lint": { - "cache": false + "eslint:check": { + "cache": false, + "dependsOn": ["^eslint:check"] }, - "lint:fix": { + "eslint:fix": { + "cache": false, + "dependsOn": ["^eslint:fix"] + }, + "test": { "cache": false }, - "test": {}, "e2e": { "inputs": [".next/**", "!.next/cache/**", "tests/**"], - "outputs": ["test-results/**", "playwright-report/**"] + "outputs": ["test-results/**", "playwright-report/**"], + "cache": false }, "clean": { "cache": false From d227f0447f4bc6cb87c8157e84873deb5404d9bc Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Tue, 30 Jan 2024 09:16:56 +0300 Subject: [PATCH 082/458] Fix publishing (#296) --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index a1587719..6d308a54 100644 --- a/package.json +++ b/package.json @@ -30,7 +30,7 @@ "start:app": "FORCE_COLOR=1 turbo run start --log-prefix=none --filter=cache-testing", "start:backend": "FORCE_COLOR=1 turbo run start --log-prefix=none --filter=backend", "test": "FORCE_COLOR=1 turbo run test --log-order=grouped", - "version-packages": "changeset version && npm run format:fix" + "version-packages": "changeset version && npm run codestyle:fix" }, "dependencies": { "@changesets/cli": "2.27.1" From a6db370a22a0d0ccbe4ec5635862f71a63cfa194 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 30 Jan 2024 09:24:54 +0300 Subject: [PATCH 083/458] Bump the definitely-typed group with 1 update (#294) Bumps the definitely-typed group with 1 update: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node). Updates `@types/node` from 20.11.7 to 20.11.10 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) --- updated-dependencies: - dependency-name: "@types/node" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- internal/backend/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 113 ++++---------------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 10 files changed, 29 insertions(+), 102 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 48b5987d..b3dfbec9 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -28,7 +28,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.2", - "@types/node": "20.11.7", + "@types/node": "20.11.10", "@types/react": "18.2.48", "@types/react-dom": "18.2.18", "dotenv-cli": "7.3.0", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index ec9bf872..a3e4f404 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -22,7 +22,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.2", - "@types/node": "20.11.7", + "@types/node": "20.11.10", "@types/react": "18.2.48", "@types/react-dom": "18.2.18", "eslint": "8.56.0", diff --git a/internal/backend/package.json b/internal/backend/package.json index 3b890d4d..ff19b049 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.7", + "@types/node": "20.11.10", "pino-pretty": "10.3.1", "rimraf": "5.0.5", "tsx": "4.7.0", diff --git a/internal/next-common/package.json b/internal/next-common/package.json index b0177fec..9a5689a4 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.7", + "@types/node": "20.11.10", "rimraf": "5.0.5", "typescript": "5.3.3" } diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index 00cd0f61..3c8cea67 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -16,7 +16,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.7", + "@types/node": "20.11.10", "rimraf": "5.0.5", "typescript": "5.3.3" } diff --git a/package-lock.json b/package-lock.json index 20c887bb..f28bbdae 100644 --- a/package-lock.json +++ b/package-lock.json @@ -48,7 +48,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.2", - "@types/node": "20.11.7", + "@types/node": "20.11.10", "@types/react": "18.2.48", "@types/react-dom": "18.2.18", "dotenv-cli": "7.3.0", @@ -61,15 +61,6 @@ "typescript": "5.3.3" } }, - "apps/cache-testing/node_modules/@types/node": { - "version": "20.11.7", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.7.tgz", - "integrity": "sha512-GPmeN1C3XAyV5uybAf4cMLWT9fDWcmQhZVtMFu7OR32WjrqGG+Wnk2V1d0bmtUyE/Zy1QJ9BxyiTih9z8Oks8A==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "apps/cache-testing/node_modules/next": { "version": "14.1.1-canary.1", "resolved": "https://registry.npmjs.org/next/-/next-14.1.1-canary.1.tgz", @@ -129,7 +120,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.2", - "@types/node": "20.11.7", + "@types/node": "20.11.10", "@types/react": "18.2.48", "@types/react-dom": "18.2.18", "eslint": "8.56.0", @@ -145,15 +136,6 @@ "glob": "10.3.10" } }, - "docs/cache-handler-docs/node_modules/@types/node": { - "version": "20.11.7", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.7.tgz", - "integrity": "sha512-GPmeN1C3XAyV5uybAf4cMLWT9fDWcmQhZVtMFu7OR32WjrqGG+Wnk2V1d0bmtUyE/Zy1QJ9BxyiTih9z8Oks8A==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "docs/cache-handler-docs/node_modules/nextra": { "version": "2.13.2", "resolved": "https://registry.npmjs.org/nextra/-/nextra-2.13.2.tgz", @@ -244,22 +226,13 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.7", + "@types/node": "20.11.10", "pino-pretty": "10.3.1", "rimraf": "5.0.5", "tsx": "4.7.0", "typescript": "5.3.3" } }, - "internal/backend/node_modules/@types/node": { - "version": "20.11.7", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.7.tgz", - "integrity": "sha512-GPmeN1C3XAyV5uybAf4cMLWT9fDWcmQhZVtMFu7OR32WjrqGG+Wnk2V1d0bmtUyE/Zy1QJ9BxyiTih9z8Oks8A==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "internal/eslint-config": { "name": "@repo/eslint-config", "version": "0.0.0", @@ -343,20 +316,11 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.7", + "@types/node": "20.11.10", "rimraf": "5.0.5", "typescript": "5.3.3" } }, - "internal/next-common/node_modules/@types/node": { - "version": "20.11.7", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.7.tgz", - "integrity": "sha512-GPmeN1C3XAyV5uybAf4cMLWT9fDWcmQhZVtMFu7OR32WjrqGG+Wnk2V1d0bmtUyE/Zy1QJ9BxyiTih9z8Oks8A==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "internal/next-common/node_modules/next": { "version": "14.1.1-canary.1", "resolved": "https://registry.npmjs.org/next/-/next-14.1.1-canary.1.tgz", @@ -412,20 +376,11 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.7", + "@types/node": "20.11.10", "rimraf": "5.0.5", "typescript": "5.3.3" } }, - "internal/next-lru-cache/node_modules/@types/node": { - "version": "20.11.7", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.7.tgz", - "integrity": "sha512-GPmeN1C3XAyV5uybAf4cMLWT9fDWcmQhZVtMFu7OR32WjrqGG+Wnk2V1d0bmtUyE/Zy1QJ9BxyiTih9z8Oks8A==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "internal/prettier-config": { "name": "@repo/prettier-config", "version": "0.0.0", @@ -1966,6 +1921,11 @@ "fs-extra": "^8.1.0" } }, + "node_modules/@manypkg/find-root/node_modules/@types/node": { + "version": "12.20.55", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", + "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" + }, "node_modules/@manypkg/find-root/node_modules/fs-extra": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", @@ -3252,9 +3212,12 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "12.20.55", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", - "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" + "version": "20.11.10", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.10.tgz", + "integrity": "sha512-rZEfe/hJSGYmdfX9tvcPMYeYPW2sNl50nsw4jZmRcaG0HIAb0WYEpsB05GOb53vjqpyE9GUhlDQ4jLSoB5q9kg==", + "dependencies": { + "undici-types": "~5.26.4" + } }, "node_modules/@types/node-fetch": { "version": "2.6.11", @@ -16144,7 +16107,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.7", + "@types/node": "20.11.10", "rimraf": "5.0.5", "tsup": "8.0.1", "tsx": "4.7.0", @@ -16155,15 +16118,6 @@ "redis": ">=4.6" } }, - "packages/cache-handler/node_modules/@types/node": { - "version": "20.11.7", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.7.tgz", - "integrity": "sha512-GPmeN1C3XAyV5uybAf4cMLWT9fDWcmQhZVtMFu7OR32WjrqGG+Wnk2V1d0bmtUyE/Zy1QJ9BxyiTih9z8Oks8A==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "packages/diffscribe": { "version": "0.2.1", "license": "MIT", @@ -16172,7 +16126,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.7", + "@types/node": "20.11.10", "rimraf": "5.0.5", "tsup": "8.0.1", "typescript": "5.3.3" @@ -16182,37 +16136,19 @@ "openai": "^4.12.3" } }, - "packages/diffscribe/node_modules/@types/node": { - "version": "20.11.7", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.7.tgz", - "integrity": "sha512-GPmeN1C3XAyV5uybAf4cMLWT9fDWcmQhZVtMFu7OR32WjrqGG+Wnk2V1d0bmtUyE/Zy1QJ9BxyiTih9z8Oks8A==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "packages/json-replacer-reviver": { "name": "@neshca/json-replacer-reviver", "version": "1.1.0", "license": "MIT", "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.7", + "@types/node": "20.11.10", "rimraf": "5.0.5", "tsup": "8.0.1", "tsx": "4.7.0", "typescript": "5.3.3" } }, - "packages/json-replacer-reviver/node_modules/@types/node": { - "version": "20.11.7", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.7.tgz", - "integrity": "sha512-GPmeN1C3XAyV5uybAf4cMLWT9fDWcmQhZVtMFu7OR32WjrqGG+Wnk2V1d0bmtUyE/Zy1QJ9BxyiTih9z8Oks8A==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "packages/server": { "name": "@neshca/server", "version": "0.6.0", @@ -16228,21 +16164,12 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.7", + "@types/node": "20.11.10", "rimraf": "5.0.5", "tsup": "8.0.1", "tsx": "4.7.0", "typescript": "5.3.3" } - }, - "packages/server/node_modules/@types/node": { - "version": "20.11.7", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.7.tgz", - "integrity": "sha512-GPmeN1C3XAyV5uybAf4cMLWT9fDWcmQhZVtMFu7OR32WjrqGG+Wnk2V1d0bmtUyE/Zy1QJ9BxyiTih9z8Oks8A==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } } } } diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 122c0019..4b1af333 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -73,7 +73,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.7", + "@types/node": "20.11.10", "rimraf": "5.0.5", "tsup": "8.0.1", "tsx": "4.7.0", diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index 8b4864d2..7121ad83 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -25,7 +25,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.7", + "@types/node": "20.11.10", "rimraf": "5.0.5", "tsup": "8.0.1", "typescript": "5.3.3" diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 997e1291..129a9bfb 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -28,7 +28,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.7", + "@types/node": "20.11.10", "rimraf": "5.0.5", "tsup": "8.0.1", "tsx": "4.7.0", diff --git a/packages/server/package.json b/packages/server/package.json index 7c4eea2a..06ec1253 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -32,7 +32,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.7", + "@types/node": "20.11.10", "rimraf": "5.0.5", "tsup": "8.0.1", "tsx": "4.7.0", From 3538d35f30a6845afab346ed30ab6514bd33a656 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 30 Jan 2024 09:36:56 +0300 Subject: [PATCH 084/458] Bump fastify from 4.25.2 to 4.26.0 (#295) Bumps [fastify](https://github.com/fastify/fastify) from 4.25.2 to 4.26.0. - [Release notes](https://github.com/fastify/fastify/releases) - [Commits](https://github.com/fastify/fastify/compare/v4.25.2...v4.26.0) --- updated-dependencies: - dependency-name: fastify dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- internal/backend/package.json | 2 +- package-lock.json | 30 ++++++++++++++++++++---------- packages/server/package.json | 2 +- 4 files changed, 23 insertions(+), 13 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index b3dfbec9..eb4b6af0 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -33,7 +33,7 @@ "@types/react-dom": "18.2.18", "dotenv-cli": "7.3.0", "eslint": "8.56.0", - "fastify": "4.25.2", + "fastify": "4.26.0", "pm2": "5.3.1", "redis": "4.6.12", "rimraf": "5.0.5", diff --git a/internal/backend/package.json b/internal/backend/package.json index ff19b049..7124551b 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -10,7 +10,7 @@ "start": "node --import tsx/esm ./src/backend.ts" }, "dependencies": { - "fastify": "4.25.2", + "fastify": "4.26.0", "pino": "8.17.2" }, "devDependencies": { diff --git a/package-lock.json b/package-lock.json index f28bbdae..f7ced05b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -53,7 +53,7 @@ "@types/react-dom": "18.2.18", "dotenv-cli": "7.3.0", "eslint": "8.56.0", - "fastify": "4.25.2", + "fastify": "4.26.0", "pm2": "5.3.1", "redis": "4.6.12", "rimraf": "5.0.5", @@ -221,7 +221,7 @@ "version": "0.0.0", "license": "MIT", "dependencies": { - "fastify": "4.25.2", + "fastify": "4.26.0", "pino": "8.17.2" }, "devDependencies": { @@ -7202,9 +7202,19 @@ "integrity": "sha512-eel5UKGn369gGEWOqBShmFJWfq/xSJvsgDzgLYC845GneayWvXBf0lJCBn5qTABfewy1ZDPoaR5OZCP+kssfuw==" }, "node_modules/fastify": { - "version": "4.25.2", - "resolved": "https://registry.npmjs.org/fastify/-/fastify-4.25.2.tgz", - "integrity": "sha512-SywRouGleDHvRh054onj+lEZnbC1sBCLkR0UY3oyJwjD4BdZJUrxBqfkfCaqn74pVCwBaRHGuL3nEWeHbHzAfw==", + "version": "4.26.0", + "resolved": "https://registry.npmjs.org/fastify/-/fastify-4.26.0.tgz", + "integrity": "sha512-Fq/7ziWKc6pYLYLIlCRaqJqEVTIZ5tZYfcW/mDK2AQ9v/sqjGFpj0On0/7hU50kbPVjLO4de+larPA1WwPZSfw==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fastify" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/fastify" + } + ], "dependencies": { "@fastify/ajv-compiler": "^3.5.0", "@fastify/error": "^3.4.0", @@ -7213,7 +7223,7 @@ "avvio": "^8.2.1", "fast-content-type-parse": "^1.1.0", "fast-json-stringify": "^5.8.0", - "find-my-way": "^7.7.0", + "find-my-way": "^8.0.0", "light-my-request": "^5.11.0", "pino": "^8.17.0", "process-warning": "^3.0.0", @@ -7262,9 +7272,9 @@ } }, "node_modules/find-my-way": { - "version": "7.7.0", - "resolved": "https://registry.npmjs.org/find-my-way/-/find-my-way-7.7.0.tgz", - "integrity": "sha512-+SrHpvQ52Q6W9f3wJoJBbAQULJuNEEQwBvlvYwACDhBTLOTMiQ0HYWh4+vC3OivGP2ENcTI1oKlFA2OepJNjhQ==", + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/find-my-way/-/find-my-way-8.1.0.tgz", + "integrity": "sha512-41QwjCGcVTODUmLLqTMeoHeiozbMXYMAE1CKFiDyi9zVZ2Vjh0yz3MF0WQZoIb+cmzP/XlbFjlF2NtJmvZHznA==", "dependencies": { "fast-deep-equal": "^3.1.3", "fast-querystring": "^1.0.0", @@ -16154,7 +16164,7 @@ "version": "0.6.0", "license": "MIT", "dependencies": { - "fastify": "4.25.2", + "fastify": "4.26.0", "pino": "8.17.2" }, "bin": { diff --git a/packages/server/package.json b/packages/server/package.json index 06ec1253..9352a167 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -25,7 +25,7 @@ "start": "node --import tsx/esm ./src/server.ts" }, "dependencies": { - "fastify": "4.25.2", + "fastify": "4.26.0", "pino": "8.17.2" }, "devDependencies": { From 2a22e6bc8aee568e62626a0035a661320205c2e0 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 30 Jan 2024 09:46:41 +0300 Subject: [PATCH 085/458] Version Packages (#297) Co-authored-by: github-actions[bot] --- .changeset/poor-eels-cheer.md | 9 --------- docs/cache-handler-docs/CHANGELOG.md | 6 ++++++ docs/cache-handler-docs/package.json | 2 +- packages/cache-handler/CHANGELOG.md | 8 ++++++++ packages/cache-handler/package.json | 2 +- packages/diffscribe/CHANGELOG.md | 6 ++++++ packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/CHANGELOG.md | 6 ++++++ packages/json-replacer-reviver/package.json | 2 +- packages/server/CHANGELOG.md | 6 ++++++ packages/server/package.json | 2 +- 11 files changed, 37 insertions(+), 14 deletions(-) delete mode 100644 .changeset/poor-eels-cheer.md diff --git a/.changeset/poor-eels-cheer.md b/.changeset/poor-eels-cheer.md deleted file mode 100644 index 768d2012..00000000 --- a/.changeset/poor-eels-cheer.md +++ /dev/null @@ -1,9 +0,0 @@ ---- -'@neshca/json-replacer-reviver': patch -'cache-handler-docs': patch -'@neshca/cache-handler': patch -'diffscribe': patch -'@neshca/server': patch ---- - -Applied new code style. diff --git a/docs/cache-handler-docs/CHANGELOG.md b/docs/cache-handler-docs/CHANGELOG.md index 8ba5f76c..12aa98fb 100644 --- a/docs/cache-handler-docs/CHANGELOG.md +++ b/docs/cache-handler-docs/CHANGELOG.md @@ -1,5 +1,11 @@ # cache-handler-docs +## 0.6.6 + +### Patch Changes + +- bb61a52: Applied new code style. + ## 0.6.5 ### Patch Changes diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index a3e4f404..3d3a88c4 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -1,6 +1,6 @@ { "name": "cache-handler-docs", - "version": "0.6.5", + "version": "0.6.6", "private": true, "scripts": { "build:docs": "next build", diff --git a/packages/cache-handler/CHANGELOG.md b/packages/cache-handler/CHANGELOG.md index c8be6f42..0d7dc620 100644 --- a/packages/cache-handler/CHANGELOG.md +++ b/packages/cache-handler/CHANGELOG.md @@ -1,5 +1,13 @@ # @neshca/cache-handler +## 0.6.10 + +### Patch Changes + +- bb61a52: Applied new code style. +- Updated dependencies [bb61a52] + - @neshca/json-replacer-reviver@1.1.1 + ## 0.6.9 ### Patch Changes diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 4b1af333..f0e2ae65 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -1,6 +1,6 @@ { "name": "@neshca/cache-handler", - "version": "0.6.9", + "version": "0.6.10", "description": "Flexible API to replace the default Next.js cache, accommodating custom cache solutions for multi-instance deployments.", "keywords": [ "cache", diff --git a/packages/diffscribe/CHANGELOG.md b/packages/diffscribe/CHANGELOG.md index fb70dabe..e210582c 100644 --- a/packages/diffscribe/CHANGELOG.md +++ b/packages/diffscribe/CHANGELOG.md @@ -1,5 +1,11 @@ # diffscribe +## 0.2.2 + +### Patch Changes + +- bb61a52: Applied new code style. + ## 0.2.1 ### Patch Changes diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index 7121ad83..4e9ad1ec 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -1,6 +1,6 @@ { "name": "diffscribe", - "version": "0.2.1", + "version": "0.2.2", "description": "An intelligent CLI tool designed to automatically generate meaningful commit messages using Git diffstat, status, and insights from OpenAI and you", "homepage": "https://github.com/caching-tools/next-shared-cache/tree/canary/packages/diffscribe", "bugs": "https://github.com/caching-tools/next-shared-cache/issues", diff --git a/packages/json-replacer-reviver/CHANGELOG.md b/packages/json-replacer-reviver/CHANGELOG.md index 32abd839..14392a5e 100644 --- a/packages/json-replacer-reviver/CHANGELOG.md +++ b/packages/json-replacer-reviver/CHANGELOG.md @@ -1,5 +1,11 @@ # @neshca/json-replacer-reviver +## 1.1.1 + +### Patch Changes + +- bb61a52: Applied new code style. + ## 1.1.0 ### Minor Changes diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 129a9bfb..1c08e875 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -1,6 +1,6 @@ { "name": "@neshca/json-replacer-reviver", - "version": "1.1.0", + "version": "1.1.1", "description": "Utility library for handling `Buffer` object serialization and deserialization with JSON, offering base64 representations", "homepage": "https://github.com/caching-tools/next-shared-cache/tree/canary/packages/json-replacer-reviver", "bugs": "https://github.com/caching-tools/next-shared-cache/issues", diff --git a/packages/server/CHANGELOG.md b/packages/server/CHANGELOG.md index 5bf3049f..afb82029 100644 --- a/packages/server/CHANGELOG.md +++ b/packages/server/CHANGELOG.md @@ -1,5 +1,11 @@ # @neshca/server +## 0.6.1 + +### Patch Changes + +- bb61a52: Applied new code style. + ## 0.6.0 ### Minor Changes diff --git a/packages/server/package.json b/packages/server/package.json index 9352a167..675775fe 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -1,6 +1,6 @@ { "name": "@neshca/server", - "version": "0.6.0", + "version": "0.6.1", "description": "Efficient and simple HTTP caching server with LRU eviction, tailored for seamless integration with `@neshca/cache-handler/server` Handler", "homepage": "https://github.com/caching-tools/next-shared-cache/tree/canary/packages/server", "bugs": "https://github.com/caching-tools/next-shared-cache/issues", From 56dd61de43cd8c63b88de49fa9ac22826aca8180 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 1 Feb 2024 11:34:47 +0300 Subject: [PATCH 086/458] Bump the definitely-typed group with 1 update (#305) Bumps the definitely-typed group with 1 update: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node). Updates `@types/node` from 20.11.10 to 20.11.14 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) --- updated-dependencies: - dependency-name: "@types/node" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- internal/backend/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 34 ++++++++++----------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 10 files changed, 26 insertions(+), 26 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index eb4b6af0..d9f9f780 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -28,7 +28,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.2", - "@types/node": "20.11.10", + "@types/node": "20.11.14", "@types/react": "18.2.48", "@types/react-dom": "18.2.18", "dotenv-cli": "7.3.0", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 3d3a88c4..955c95a6 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -22,7 +22,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.2", - "@types/node": "20.11.10", + "@types/node": "20.11.14", "@types/react": "18.2.48", "@types/react-dom": "18.2.18", "eslint": "8.56.0", diff --git a/internal/backend/package.json b/internal/backend/package.json index 7124551b..31eef07e 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.10", + "@types/node": "20.11.14", "pino-pretty": "10.3.1", "rimraf": "5.0.5", "tsx": "4.7.0", diff --git a/internal/next-common/package.json b/internal/next-common/package.json index 9a5689a4..19fcc131 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.10", + "@types/node": "20.11.14", "rimraf": "5.0.5", "typescript": "5.3.3" } diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index 3c8cea67..ec35fd7b 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -16,7 +16,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.10", + "@types/node": "20.11.14", "rimraf": "5.0.5", "typescript": "5.3.3" } diff --git a/package-lock.json b/package-lock.json index f7ced05b..d0639ba1 100644 --- a/package-lock.json +++ b/package-lock.json @@ -48,7 +48,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.2", - "@types/node": "20.11.10", + "@types/node": "20.11.14", "@types/react": "18.2.48", "@types/react-dom": "18.2.18", "dotenv-cli": "7.3.0", @@ -107,7 +107,7 @@ } }, "docs/cache-handler-docs": { - "version": "0.6.5", + "version": "0.6.6", "dependencies": { "next": "14.1.0", "nextra": "2.13.2", @@ -120,7 +120,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.2", - "@types/node": "20.11.10", + "@types/node": "20.11.14", "@types/react": "18.2.48", "@types/react-dom": "18.2.18", "eslint": "8.56.0", @@ -226,7 +226,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.10", + "@types/node": "20.11.14", "pino-pretty": "10.3.1", "rimraf": "5.0.5", "tsx": "4.7.0", @@ -316,7 +316,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.10", + "@types/node": "20.11.14", "rimraf": "5.0.5", "typescript": "5.3.3" } @@ -376,7 +376,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.10", + "@types/node": "20.11.14", "rimraf": "5.0.5", "typescript": "5.3.3" } @@ -3212,9 +3212,9 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "20.11.10", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.10.tgz", - "integrity": "sha512-rZEfe/hJSGYmdfX9tvcPMYeYPW2sNl50nsw4jZmRcaG0HIAb0WYEpsB05GOb53vjqpyE9GUhlDQ4jLSoB5q9kg==", + "version": "20.11.14", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.14.tgz", + "integrity": "sha512-w3yWCcwULefjP9DmDDsgUskrMoOy5Z8MiwKHr1FvqGPtx7CvJzQvxD7eKpxNtklQxLruxSXWddyeRtyud0RcXQ==", "dependencies": { "undici-types": "~5.26.4" } @@ -16107,7 +16107,7 @@ }, "packages/cache-handler": { "name": "@neshca/cache-handler", - "version": "0.6.9", + "version": "0.6.10", "license": "MIT", "dependencies": { "@neshca/json-replacer-reviver": "*", @@ -16117,7 +16117,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.10", + "@types/node": "20.11.14", "rimraf": "5.0.5", "tsup": "8.0.1", "tsx": "4.7.0", @@ -16129,14 +16129,14 @@ } }, "packages/diffscribe": { - "version": "0.2.1", + "version": "0.2.2", "license": "MIT", "bin": { "diffscribe": "dist/diffscribe.js" }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.10", + "@types/node": "20.11.14", "rimraf": "5.0.5", "tsup": "8.0.1", "typescript": "5.3.3" @@ -16148,11 +16148,11 @@ }, "packages/json-replacer-reviver": { "name": "@neshca/json-replacer-reviver", - "version": "1.1.0", + "version": "1.1.1", "license": "MIT", "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.10", + "@types/node": "20.11.14", "rimraf": "5.0.5", "tsup": "8.0.1", "tsx": "4.7.0", @@ -16161,7 +16161,7 @@ }, "packages/server": { "name": "@neshca/server", - "version": "0.6.0", + "version": "0.6.1", "license": "MIT", "dependencies": { "fastify": "4.26.0", @@ -16174,7 +16174,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.10", + "@types/node": "20.11.14", "rimraf": "5.0.5", "tsup": "8.0.1", "tsx": "4.7.0", diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index f0e2ae65..33447fcf 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -73,7 +73,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.10", + "@types/node": "20.11.14", "rimraf": "5.0.5", "tsup": "8.0.1", "tsx": "4.7.0", diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index 4e9ad1ec..eb4198fc 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -25,7 +25,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.10", + "@types/node": "20.11.14", "rimraf": "5.0.5", "tsup": "8.0.1", "typescript": "5.3.3" diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 1c08e875..b1918768 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -28,7 +28,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.10", + "@types/node": "20.11.14", "rimraf": "5.0.5", "tsup": "8.0.1", "tsx": "4.7.0", diff --git a/packages/server/package.json b/packages/server/package.json index 675775fe..6b0ae64c 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -32,7 +32,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.10", + "@types/node": "20.11.14", "rimraf": "5.0.5", "tsup": "8.0.1", "tsx": "4.7.0", From df9ed02bd3c46fb2b276a6115c0e05d135a06411 Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Thu, 1 Feb 2024 12:45:55 +0300 Subject: [PATCH 087/458] Add eslint group to dependabot config (#306) --- .github/dependabot.yml | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/.github/dependabot.yml b/.github/dependabot.yml index 4ddead6b..443dd96c 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -18,9 +18,6 @@ updates: patterns: - 'next' - '@next/eslint-plugin-next' - update-types: - - 'major' - - 'minor' turbo: patterns: - 'turbo' @@ -42,3 +39,9 @@ updates: patterns: - 'nextra' - 'nextra-theme-docs' + eslint: + patterns: + - 'eslint' + - '@types/eslint' + - '@typescript-eslint/eslint-plugin' + - '@typescript-eslint/parser' From 70dcea730af8978db06625ff9bf813b837446f06 Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Thu, 1 Feb 2024 14:21:02 +0300 Subject: [PATCH 088/458] Update turbo and disable telemetry in postinstall (#310) --- .github/workflows/tests.yml | 2 +- apps/cache-testing/package.json | 1 + internal/eslint-config/package.json | 2 +- package-lock.json | 431 ++++++++++++++++------------ package.json | 31 +- turbo.json | 2 - 6 files changed, 274 insertions(+), 195 deletions(-) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 35416e04..65c98279 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -30,7 +30,7 @@ jobs: - name: Install dependencies run: npm ci - name: Install Playwright Browsers - run: cd apps/cache-testing && npx playwright install --with-deps + run: npm run playwright:install -w apps/cache-testing - name: Build run: npm run build - name: Check code style diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index d9f9f780..6513e380 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -13,6 +13,7 @@ "e2e:ui": "playwright test --ui --config=./playwright.config.ts", "eslint:check": "next lint", "eslint:fix": "next lint --fix", + "playwright:install": "playwright install chromium", "start": "dotenv -e .env.local -v SERVER_STARTED=1 node .next/standalone/apps/cache-testing/server.js" }, "dependencies": { diff --git a/internal/eslint-config/package.json b/internal/eslint-config/package.json index 0cc72f03..fae0c81b 100644 --- a/internal/eslint-config/package.json +++ b/internal/eslint-config/package.json @@ -10,7 +10,7 @@ "@typescript-eslint/parser": "6.19.1", "@vercel/style-guide": "5.1.0", "eslint-config-prettier": "9.1.0", - "eslint-config-turbo": "1.11.3", + "eslint-config-turbo": "1.12.2", "eslint-plugin-only-warn": "1.1.0", "typescript": "5.3.3" } diff --git a/package-lock.json b/package-lock.json index d0639ba1..02447eae 100644 --- a/package-lock.json +++ b/package-lock.json @@ -7,6 +7,7 @@ "": { "name": "neshca", "version": "0.0.0", + "hasInstallScript": true, "license": "MIT", "workspaces": [ "apps/*", @@ -25,7 +26,7 @@ "diffscribe": "*", "glob": "10.3.10", "prettier": "3.2.4", - "turbo": "1.11.3" + "turbo": "1.12.2" }, "engines": { "node": ">=20.9.0", @@ -34,6 +35,7 @@ }, "apps/cache-testing": { "version": "0.0.0", + "hasInstallScript": true, "license": "MIT", "dependencies": { "next": "14.1.1-canary.1", @@ -61,6 +63,15 @@ "typescript": "5.3.3" } }, + "apps/cache-testing/node_modules/@types/node": { + "version": "20.11.14", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.14.tgz", + "integrity": "sha512-w3yWCcwULefjP9DmDDsgUskrMoOy5Z8MiwKHr1FvqGPtx7CvJzQvxD7eKpxNtklQxLruxSXWddyeRtyud0RcXQ==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "apps/cache-testing/node_modules/next": { "version": "14.1.1-canary.1", "resolved": "https://registry.npmjs.org/next/-/next-14.1.1-canary.1.tgz", @@ -108,6 +119,7 @@ }, "docs/cache-handler-docs": { "version": "0.6.6", + "hasInstallScript": true, "dependencies": { "next": "14.1.0", "nextra": "2.13.2", @@ -136,6 +148,15 @@ "glob": "10.3.10" } }, + "docs/cache-handler-docs/node_modules/@types/node": { + "version": "20.11.14", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.14.tgz", + "integrity": "sha512-w3yWCcwULefjP9DmDDsgUskrMoOy5Z8MiwKHr1FvqGPtx7CvJzQvxD7eKpxNtklQxLruxSXWddyeRtyud0RcXQ==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "docs/cache-handler-docs/node_modules/nextra": { "version": "2.13.2", "resolved": "https://registry.npmjs.org/nextra/-/nextra-2.13.2.tgz", @@ -233,6 +254,15 @@ "typescript": "5.3.3" } }, + "internal/backend/node_modules/@types/node": { + "version": "20.11.14", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.14.tgz", + "integrity": "sha512-w3yWCcwULefjP9DmDDsgUskrMoOy5Z8MiwKHr1FvqGPtx7CvJzQvxD7eKpxNtklQxLruxSXWddyeRtyud0RcXQ==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "internal/eslint-config": { "name": "@repo/eslint-config", "version": "0.0.0", @@ -241,7 +271,7 @@ "@typescript-eslint/parser": "6.19.1", "@vercel/style-guide": "5.1.0", "eslint-config-prettier": "9.1.0", - "eslint-config-turbo": "1.11.3", + "eslint-config-turbo": "1.12.2", "eslint-plugin-only-warn": "1.1.0", "typescript": "5.3.3" } @@ -321,6 +351,15 @@ "typescript": "5.3.3" } }, + "internal/next-common/node_modules/@types/node": { + "version": "20.11.14", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.14.tgz", + "integrity": "sha512-w3yWCcwULefjP9DmDDsgUskrMoOy5Z8MiwKHr1FvqGPtx7CvJzQvxD7eKpxNtklQxLruxSXWddyeRtyud0RcXQ==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "internal/next-common/node_modules/next": { "version": "14.1.1-canary.1", "resolved": "https://registry.npmjs.org/next/-/next-14.1.1-canary.1.tgz", @@ -381,6 +420,15 @@ "typescript": "5.3.3" } }, + "internal/next-lru-cache/node_modules/@types/node": { + "version": "20.11.14", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.14.tgz", + "integrity": "sha512-w3yWCcwULefjP9DmDDsgUskrMoOy5Z8MiwKHr1FvqGPtx7CvJzQvxD7eKpxNtklQxLruxSXWddyeRtyud0RcXQ==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "internal/prettier-config": { "name": "@repo/prettier-config", "version": "0.0.0", @@ -558,9 +606,9 @@ } }, "node_modules/@babel/eslint-parser": { - "version": "7.23.9", - "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.23.9.tgz", - "integrity": "sha512-xPndlO7qxiJbn0ATvfXQBjCS7qApc9xmKHArgI/FTEFxXas5dnjC/VqM37lfZun9dclRYcn+YQAr6uDFy0bB2g==", + "version": "7.23.10", + "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.23.10.tgz", + "integrity": "sha512-3wSYDPZVnhseRnxRJH6ZVTNknBz76AEnyC+AYYhasjP3Yy23qz0ERR7Fcd2SHmYuSFJ2kY9gaaDd3vyqU09eSw==", "dev": true, "dependencies": { "@nicolo-ribaudo/eslint-scope-5-internals": "5.1.1-v1", @@ -1751,11 +1799,6 @@ "node": ">=14" } }, - "node_modules/@fastify/deepmerge": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/@fastify/deepmerge/-/deepmerge-1.3.0.tgz", - "integrity": "sha512-J8TOSBq3SoZbDhM9+R/u77hP93gz/rajSA+K2kGyijPpORPWUXHUpTaleoj+92As0S9uPRP7Oi8IqMf0u+ro6A==" - }, "node_modules/@fastify/error": { "version": "3.4.1", "resolved": "https://registry.npmjs.org/@fastify/error/-/error-3.4.1.tgz", @@ -1769,6 +1812,14 @@ "fast-json-stringify": "^5.7.0" } }, + "node_modules/@fastify/merge-json-schemas": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@fastify/merge-json-schemas/-/merge-json-schemas-0.1.1.tgz", + "integrity": "sha512-fERDVz7topgNjtXsJTTW1JKLy0rhuLRcquYqNR9rF7OcVpCa2OVW49ZPDIhaRRCaUuvVxI+N416xUoF76HNSXA==", + "dependencies": { + "fast-deep-equal": "^3.1.3" + } + }, "node_modules/@headlessui/react": { "version": "1.7.18", "resolved": "https://registry.npmjs.org/@headlessui/react/-/react-1.7.18.tgz", @@ -1921,11 +1972,6 @@ "fs-extra": "^8.1.0" } }, - "node_modules/@manypkg/find-root/node_modules/@types/node": { - "version": "12.20.55", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", - "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" - }, "node_modules/@manypkg/find-root/node_modules/fs-extra": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", @@ -2073,30 +2119,30 @@ } }, "node_modules/@napi-rs/simple-git": { - "version": "0.1.15", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git/-/simple-git-0.1.15.tgz", - "integrity": "sha512-F9NBptiwOjhdXcBnDQmgxxZzBCj54zV3a337+OC4PPLT+8qnZP9v3Ty5owHl8VRMuGmRzkjC6YX8RKtvRf4L/w==", + "version": "0.1.16", + "resolved": "https://registry.npmjs.org/@napi-rs/simple-git/-/simple-git-0.1.16.tgz", + "integrity": "sha512-C5wRPw9waqL2jk3jEDeJv+f7ScuO3N0a39HVdyFLkwKxHH4Sya4ZbzZsu2JLi6eEqe7RuHipHL6mC7B2OfYZZw==", "engines": { "node": ">= 10" }, "optionalDependencies": { - "@napi-rs/simple-git-android-arm-eabi": "0.1.15", - "@napi-rs/simple-git-android-arm64": "0.1.15", - "@napi-rs/simple-git-darwin-arm64": "0.1.15", - "@napi-rs/simple-git-darwin-x64": "0.1.15", - "@napi-rs/simple-git-linux-arm-gnueabihf": "0.1.15", - "@napi-rs/simple-git-linux-arm64-gnu": "0.1.15", - "@napi-rs/simple-git-linux-arm64-musl": "0.1.15", - "@napi-rs/simple-git-linux-x64-gnu": "0.1.15", - "@napi-rs/simple-git-linux-x64-musl": "0.1.15", - "@napi-rs/simple-git-win32-arm64-msvc": "0.1.15", - "@napi-rs/simple-git-win32-x64-msvc": "0.1.15" + "@napi-rs/simple-git-android-arm-eabi": "0.1.16", + "@napi-rs/simple-git-android-arm64": "0.1.16", + "@napi-rs/simple-git-darwin-arm64": "0.1.16", + "@napi-rs/simple-git-darwin-x64": "0.1.16", + "@napi-rs/simple-git-linux-arm-gnueabihf": "0.1.16", + "@napi-rs/simple-git-linux-arm64-gnu": "0.1.16", + "@napi-rs/simple-git-linux-arm64-musl": "0.1.16", + "@napi-rs/simple-git-linux-x64-gnu": "0.1.16", + "@napi-rs/simple-git-linux-x64-musl": "0.1.16", + "@napi-rs/simple-git-win32-arm64-msvc": "0.1.16", + "@napi-rs/simple-git-win32-x64-msvc": "0.1.16" } }, "node_modules/@napi-rs/simple-git-android-arm-eabi": { - "version": "0.1.15", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-android-arm-eabi/-/simple-git-android-arm-eabi-0.1.15.tgz", - "integrity": "sha512-hL6e0NdVOZPgeT3PdgRzTHiSi1JF2Zk3ZEC5IhrvAEnzP4Ep50/OjdZZIoOzmKmsgph7qyWsoHaDUtwm6DVawg==", + "version": "0.1.16", + "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-android-arm-eabi/-/simple-git-android-arm-eabi-0.1.16.tgz", + "integrity": "sha512-dbrCL0Pl5KZG7x7tXdtVsA5CO6At5ohDX3myf5xIYn9kN4jDFxsocl8bNt6Vb/hZQoJd8fI+k5VlJt+rFhbdVw==", "cpu": [ "arm" ], @@ -2109,9 +2155,9 @@ } }, "node_modules/@napi-rs/simple-git-android-arm64": { - "version": "0.1.15", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-android-arm64/-/simple-git-android-arm64-0.1.15.tgz", - "integrity": "sha512-SqV0dKbnnblgp8zERVfnr7kjqYdZzSrabZYX4fPlgDKkKYlPU3DnS0z8/47l/n9Wl2WrQSs86g6pvvPyuuyb4Q==", + "version": "0.1.16", + "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-android-arm64/-/simple-git-android-arm64-0.1.16.tgz", + "integrity": "sha512-xYz+TW5J09iK8SuTAKK2D5MMIsBUXVSs8nYp7HcMi8q6FCRO7yJj96YfP9PvKsc/k64hOyqGmL5DhCzY9Cu1FQ==", "cpu": [ "arm64" ], @@ -2124,9 +2170,9 @@ } }, "node_modules/@napi-rs/simple-git-darwin-arm64": { - "version": "0.1.15", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-darwin-arm64/-/simple-git-darwin-arm64-0.1.15.tgz", - "integrity": "sha512-vr5+o5cmoCTf0UMIFWMMnJ0+3AJBtTMvFkTPr675cIe/MAejS2XFnl8a+lGx6S8Q+mQrQ2BMrj6QZU1Vc7hpMg==", + "version": "0.1.16", + "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-darwin-arm64/-/simple-git-darwin-arm64-0.1.16.tgz", + "integrity": "sha512-XfgsYqxhUE022MJobeiX563TJqyQyX4FmYCnqrtJwAfivESVeAJiH6bQIum8dDEYMHXCsG7nL8Ok0Dp8k2m42g==", "cpu": [ "arm64" ], @@ -2139,9 +2185,9 @@ } }, "node_modules/@napi-rs/simple-git-darwin-x64": { - "version": "0.1.15", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-darwin-x64/-/simple-git-darwin-x64-0.1.15.tgz", - "integrity": "sha512-X6bxPY69vNZyANeKDU1iPojpNN5Sged0HJoBbD18DPkLuGFYB/J2RKKzj9NOK4QijG/gchxU+a0PHcYM/Ib3Qw==", + "version": "0.1.16", + "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-darwin-x64/-/simple-git-darwin-x64-0.1.16.tgz", + "integrity": "sha512-tkEVBhD6vgRCbeWsaAQqM3bTfpIVGeitamPPRVSbsq8qgzJ5Dx6ZedH27R7KSsA/uao7mZ3dsrNLXbu1Wy5MzA==", "cpu": [ "x64" ], @@ -2154,9 +2200,9 @@ } }, "node_modules/@napi-rs/simple-git-linux-arm-gnueabihf": { - "version": "0.1.15", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-arm-gnueabihf/-/simple-git-linux-arm-gnueabihf-0.1.15.tgz", - "integrity": "sha512-hunbmJD5CWoPTy6ZsPMfdkNwspkoIRqXjltFWYQJUO50ZYTZFnfZcuyFXzTVmqRh2tsxBbK09R4GrYqRI3Tf4w==", + "version": "0.1.16", + "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-arm-gnueabihf/-/simple-git-linux-arm-gnueabihf-0.1.16.tgz", + "integrity": "sha512-R6VAyNnp/yRaT7DV1Ao3r67SqTWDa+fNq2LrNy0Z8gXk2wB9ZKlrxFtLPE1WSpWknWtyRDLpRlsorh7Evk7+7w==", "cpu": [ "arm" ], @@ -2169,9 +2215,9 @@ } }, "node_modules/@napi-rs/simple-git-linux-arm64-gnu": { - "version": "0.1.15", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-arm64-gnu/-/simple-git-linux-arm64-gnu-0.1.15.tgz", - "integrity": "sha512-55oZuvUKnPGl+E6mNUwp/YbKEK3VDnFXGP8r/aATcMUs1EtI4d8ZIoA/2Yo2hKbNhTtUzUi85UNB0Q6AdJnfdg==", + "version": "0.1.16", + "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-arm64-gnu/-/simple-git-linux-arm64-gnu-0.1.16.tgz", + "integrity": "sha512-LAGI0opFKw/HBMCV2qIBK3uWSEW9h4xd2ireZKLJy8DBPymX6NrWIamuxYNyCuACnFdPRxR4LaRFy4J5ZwuMdw==", "cpu": [ "arm64" ], @@ -2184,9 +2230,9 @@ } }, "node_modules/@napi-rs/simple-git-linux-arm64-musl": { - "version": "0.1.15", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-arm64-musl/-/simple-git-linux-arm64-musl-0.1.15.tgz", - "integrity": "sha512-uhQ7HFQDdjd9Y3dUFOnxWi7FL7cjSQbb+YXZWX1+1NsRNm7x1DpeJI3gPsV8TECuyt5OR8IDPzgvTKTeyzLFRA==", + "version": "0.1.16", + "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-arm64-musl/-/simple-git-linux-arm64-musl-0.1.16.tgz", + "integrity": "sha512-I57Ph0F0Yn2KW93ep+V1EzKhACqX0x49vvSiapqIsdDA2PifdEWLc1LJarBolmK7NKoPqKmf6lAKKO9lhiZzkg==", "cpu": [ "arm64" ], @@ -2199,9 +2245,9 @@ } }, "node_modules/@napi-rs/simple-git-linux-x64-gnu": { - "version": "0.1.15", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-x64-gnu/-/simple-git-linux-x64-gnu-0.1.15.tgz", - "integrity": "sha512-6WyAo6rvdYrBonUSQxzhf2Wbx0hj4/x/KR1ETn9Fgv5ByJzstWkFYBC17v7hP8sddNMY0y46uKnt0axT3QIjmg==", + "version": "0.1.16", + "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-x64-gnu/-/simple-git-linux-x64-gnu-0.1.16.tgz", + "integrity": "sha512-AZYYFY2V7hlcQASPEOWyOa3e1skzTct9QPzz0LiDM3f/hCFY/wBaU2M6NC5iG3d2Kr38heuyFS/+JqxLm5WaKA==", "cpu": [ "x64" ], @@ -2214,9 +2260,9 @@ } }, "node_modules/@napi-rs/simple-git-linux-x64-musl": { - "version": "0.1.15", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-x64-musl/-/simple-git-linux-x64-musl-0.1.15.tgz", - "integrity": "sha512-giP/zUiRZKt/0K0oEqK8MLgKohPcvCCm8khOTY7100m10DECewoUTEFrwjiC2ilcawA2lxzyvzUTwVinIC+20g==", + "version": "0.1.16", + "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-x64-musl/-/simple-git-linux-x64-musl-0.1.16.tgz", + "integrity": "sha512-9TyMcYSBJwjT8jwjY9m24BZbu7ozyWTjsmYBYNtK3B0Um1Ov6jthSNneLVvouQ6x+k3Ow+00TiFh6bvmT00r8g==", "cpu": [ "x64" ], @@ -2229,9 +2275,9 @@ } }, "node_modules/@napi-rs/simple-git-win32-arm64-msvc": { - "version": "0.1.15", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-win32-arm64-msvc/-/simple-git-win32-arm64-msvc-0.1.15.tgz", - "integrity": "sha512-7wScTudoh2OSc7ywKKoTZ39fJ6IfFy0WGU5MbcNCGlu7ApKUIxS2ky7FCz2LTpsgPuVvls6cwOnzPYfwykqJ8A==", + "version": "0.1.16", + "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-win32-arm64-msvc/-/simple-git-win32-arm64-msvc-0.1.16.tgz", + "integrity": "sha512-uslJ1WuAHCYJWui6xjsyT47SjX6KOHDtClmNO8hqKz1pmDSNY7AjyUY8HxvD1lK9bDnWwc4JYhikS9cxCqHybw==", "cpu": [ "arm64" ], @@ -2244,9 +2290,9 @@ } }, "node_modules/@napi-rs/simple-git-win32-x64-msvc": { - "version": "0.1.15", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-win32-x64-msvc/-/simple-git-win32-x64-msvc-0.1.15.tgz", - "integrity": "sha512-5+PZ8Zdb4LM6ad8SvUR7C0GDrZVP54ocY9aZBllwD1TjNhGYbRor07ok1b2sf0IucqCGGhx4zHzFokdP/BkQTQ==", + "version": "0.1.16", + "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-win32-x64-msvc/-/simple-git-win32-x64-msvc-0.1.16.tgz", + "integrity": "sha512-SoEaVeCZCDF1MP+M9bMSXsZWgEjk4On9GWADO5JOulvzR1bKjk0s9PMHwe/YztR9F0sJzrCxwtvBZowhSJsQPg==", "cpu": [ "x64" ], @@ -3151,17 +3197,17 @@ "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==" }, "node_modules/@types/estree-jsx": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@types/estree-jsx/-/estree-jsx-1.0.3.tgz", - "integrity": "sha512-pvQ+TKeRHeiUGRhvYwRrQ/ISnohKkSJR14fT2yqyZ4e9K5vqc7hrtY2Y1Dw0ZwAzQ6DQsxsaCUuSIIi8v0Cq6w==", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@types/estree-jsx/-/estree-jsx-1.0.4.tgz", + "integrity": "sha512-5idy3hvI9lAMqsyilBM+N+boaCf1MgoefbDxN6KEO5aK17TOHwFAYT9sjxzeKAiIWRUBgLxmZ9mPcnzZXtTcRQ==", "dependencies": { "@types/estree": "*" } }, "node_modules/@types/hast": { - "version": "2.3.9", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-2.3.9.tgz", - "integrity": "sha512-pTHyNlaMD/oKJmS+ZZUyFUcsZeBZpC0lmGquw98CqRVNgAdJZJeD7GoeLiT6Xbx5rU9VCjSt0RwEvDgzh4obFw==", + "version": "2.3.10", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-2.3.10.tgz", + "integrity": "sha512-McWspRw8xx8J9HurkVBfYj0xKoE25tOFlHGdx4MJ5xORQrMGZNqJhVQWaIbm6Oyla5kYOXtDiopzKRJzEOkwJw==", "dependencies": { "@types/unist": "^2" } @@ -3197,9 +3243,9 @@ } }, "node_modules/@types/mdx": { - "version": "2.0.10", - "resolved": "https://registry.npmjs.org/@types/mdx/-/mdx-2.0.10.tgz", - "integrity": "sha512-Rllzc5KHk0Al5/WANwgSPl1/CwjqCy+AZrGd78zuK+jO9aDM6ffblZ+zIjgPNAaEBmlO0RYDvLNh7wD0zKVgEg==" + "version": "2.0.11", + "resolved": "https://registry.npmjs.org/@types/mdx/-/mdx-2.0.11.tgz", + "integrity": "sha512-HM5bwOaIQJIQbAYfax35HCKxx7a3KrK3nBtIqJgSOitivTD1y3oW9P3rxY9RkXYPUk7y/AjAohfHKmFpGE79zw==" }, "node_modules/@types/minimist": { "version": "1.2.5", @@ -3212,12 +3258,9 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "20.11.14", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.14.tgz", - "integrity": "sha512-w3yWCcwULefjP9DmDDsgUskrMoOy5Z8MiwKHr1FvqGPtx7CvJzQvxD7eKpxNtklQxLruxSXWddyeRtyud0RcXQ==", - "dependencies": { - "undici-types": "~5.26.4" - } + "version": "12.20.55", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", + "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" }, "node_modules/@types/node-fetch": { "version": "2.6.11", @@ -3927,9 +3970,9 @@ } }, "node_modules/available-typed-arrays": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz", - "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==", + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.6.tgz", + "integrity": "sha512-j1QzY8iPNPG4o4xmO3ptzpRxTciqD3MgEHtifP/YnJpIo58Xu+ne4BejlbkuaLfXn/nz6HFiw29bLpj2PNMdGg==", "engines": { "node": ">= 0.4" }, @@ -4248,9 +4291,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001581", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001581.tgz", - "integrity": "sha512-whlTkwhqV2tUmP3oYhtNfaWGYHDdS3JYFQBKXxcUR9qqPWsRhFHhoISO2Xnl/g0xyKzht9mI1LZpiNWfMzHixQ==", + "version": "1.0.30001582", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001582.tgz", + "integrity": "sha512-vsJG3V5vgfduaQGVxL53uSX/HUzxyr2eA8xCo36OLal7sRcSZbibJtLeh0qja4sFOr/QQGt4opB4tOy+eOgAxg==", "funding": [ { "type": "opencollective", @@ -5560,9 +5603,9 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.650", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.650.tgz", - "integrity": "sha512-sYSQhJCJa4aGA1wYol5cMQgekDBlbVfTRavlGZVr3WZpDdOPcp6a6xUnFfrt8TqZhsBYYbDxJZCjGfHuGupCRQ==", + "version": "1.4.653", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.653.tgz", + "integrity": "sha512-wA2A2LQCqnEwQAvwADQq3KpMpNwgAUBnRmrFgRzHnPhbQUFArTR32Ab46f4p0MovDLcg4uqd4nCsN2hTltslpA==", "dev": true }, "node_modules/elkjs": { @@ -5905,12 +5948,12 @@ } }, "node_modules/eslint-config-turbo": { - "version": "1.11.3", - "resolved": "https://registry.npmjs.org/eslint-config-turbo/-/eslint-config-turbo-1.11.3.tgz", - "integrity": "sha512-v7CHpAHodBKlj+r+R3B2DJlZbCjpZLnK7gO/vCRk/Lc+tlD/f04wM6rmHlerevOlchtmwARilRLBnmzNLffTyQ==", + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/eslint-config-turbo/-/eslint-config-turbo-1.12.2.tgz", + "integrity": "sha512-JHTGtDQuISBEWIorHenu5AeX1nv16NiDgDVRi1i0VyeYw0SiVh+lSQbv4BawXSnG1nOFpjbopAQdZvdB3PwXbQ==", "dev": true, "dependencies": { - "eslint-plugin-turbo": "1.11.3" + "eslint-plugin-turbo": "1.12.2" }, "peerDependencies": { "eslint": ">6.6.0" @@ -6518,9 +6561,9 @@ } }, "node_modules/eslint-plugin-turbo": { - "version": "1.11.3", - "resolved": "https://registry.npmjs.org/eslint-plugin-turbo/-/eslint-plugin-turbo-1.11.3.tgz", - "integrity": "sha512-R5ftTTWQzEYaKzF5g6m/MInCU8pIN+2TLL+S50AYBr1enwUovdZmnZ1HDwFMaxIjJ8x5ah+jvAzql5IJE9VWaA==", + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-turbo/-/eslint-plugin-turbo-1.12.2.tgz", + "integrity": "sha512-/l0aGvZRzK1LMRTibRd6ZbEEuD5TtGotDTkZpxSIWA1FI764pWVvQduQMKBaRuz7aTuAo0WxatD8v1scK+qRWw==", "dev": true, "dependencies": { "dotenv": "16.0.3" @@ -7135,11 +7178,11 @@ "dev": true }, "node_modules/fast-json-stringify": { - "version": "5.10.0", - "resolved": "https://registry.npmjs.org/fast-json-stringify/-/fast-json-stringify-5.10.0.tgz", - "integrity": "sha512-fu1BhzPzgOdvK+sVhSPFzm06DQl0Dwbo+NQxWm21k03ili2wsJExXbGZ9qsD4Lsn7zFGltF8h9I1fuhk4JPnrQ==", + "version": "5.11.0", + "resolved": "https://registry.npmjs.org/fast-json-stringify/-/fast-json-stringify-5.11.0.tgz", + "integrity": "sha512-oLgCEJ37gqIt5rcbEmT4nIcEHxVCR1ZAOBKTNH/hzxRKSyQDnfyafz97eB9R75zfZSUOxFLBrK6ISnT6V6CRqw==", "dependencies": { - "@fastify/deepmerge": "^1.0.0", + "@fastify/merge-json-schemas": "^0.1.0", "ajv": "^8.10.0", "ajv-formats": "^2.1.1", "fast-deep-equal": "^3.1.3", @@ -7959,9 +8002,9 @@ } }, "node_modules/hast-util-from-dom/node_modules/@types/hast": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.3.tgz", - "integrity": "sha512-2fYGlaDy/qyLlhidX42wAH0KBi2TCjKMH8CHmBXgRlJ3Y+OXTiqsPQ6IWarZKwF1JoUcAJdPogv1d4b0COTpmQ==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", + "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==", "dependencies": { "@types/unist": "*" } @@ -7999,17 +8042,17 @@ } }, "node_modules/hast-util-from-html-isomorphic/node_modules/@types/hast": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.3.tgz", - "integrity": "sha512-2fYGlaDy/qyLlhidX42wAH0KBi2TCjKMH8CHmBXgRlJ3Y+OXTiqsPQ6IWarZKwF1JoUcAJdPogv1d4b0COTpmQ==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", + "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==", "dependencies": { "@types/unist": "*" } }, "node_modules/hast-util-from-html/node_modules/@types/hast": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.3.tgz", - "integrity": "sha512-2fYGlaDy/qyLlhidX42wAH0KBi2TCjKMH8CHmBXgRlJ3Y+OXTiqsPQ6IWarZKwF1JoUcAJdPogv1d4b0COTpmQ==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", + "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==", "dependencies": { "@types/unist": "*" } @@ -8065,9 +8108,9 @@ } }, "node_modules/hast-util-from-parse5/node_modules/@types/hast": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.3.tgz", - "integrity": "sha512-2fYGlaDy/qyLlhidX42wAH0KBi2TCjKMH8CHmBXgRlJ3Y+OXTiqsPQ6IWarZKwF1JoUcAJdPogv1d4b0COTpmQ==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", + "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==", "dependencies": { "@types/unist": "*" } @@ -8116,9 +8159,9 @@ } }, "node_modules/hast-util-is-element/node_modules/@types/hast": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.3.tgz", - "integrity": "sha512-2fYGlaDy/qyLlhidX42wAH0KBi2TCjKMH8CHmBXgRlJ3Y+OXTiqsPQ6IWarZKwF1JoUcAJdPogv1d4b0COTpmQ==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", + "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==", "dependencies": { "@types/unist": "*" } @@ -8136,9 +8179,9 @@ } }, "node_modules/hast-util-parse-selector/node_modules/@types/hast": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.3.tgz", - "integrity": "sha512-2fYGlaDy/qyLlhidX42wAH0KBi2TCjKMH8CHmBXgRlJ3Y+OXTiqsPQ6IWarZKwF1JoUcAJdPogv1d4b0COTpmQ==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", + "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==", "dependencies": { "@types/unist": "*" } @@ -8168,9 +8211,9 @@ } }, "node_modules/hast-util-raw/node_modules/@types/hast": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.3.tgz", - "integrity": "sha512-2fYGlaDy/qyLlhidX42wAH0KBi2TCjKMH8CHmBXgRlJ3Y+OXTiqsPQ6IWarZKwF1JoUcAJdPogv1d4b0COTpmQ==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", + "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==", "dependencies": { "@types/unist": "*" } @@ -8263,9 +8306,9 @@ } }, "node_modules/hast-util-to-parse5/node_modules/@types/hast": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.3.tgz", - "integrity": "sha512-2fYGlaDy/qyLlhidX42wAH0KBi2TCjKMH8CHmBXgRlJ3Y+OXTiqsPQ6IWarZKwF1JoUcAJdPogv1d4b0COTpmQ==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", + "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==", "dependencies": { "@types/unist": "*" } @@ -8286,9 +8329,9 @@ } }, "node_modules/hast-util-to-text/node_modules/@types/hast": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.3.tgz", - "integrity": "sha512-2fYGlaDy/qyLlhidX42wAH0KBi2TCjKMH8CHmBXgRlJ3Y+OXTiqsPQ6IWarZKwF1JoUcAJdPogv1d4b0COTpmQ==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", + "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==", "dependencies": { "@types/unist": "*" } @@ -8324,9 +8367,9 @@ } }, "node_modules/hastscript/node_modules/@types/hast": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.3.tgz", - "integrity": "sha512-2fYGlaDy/qyLlhidX42wAH0KBi2TCjKMH8CHmBXgRlJ3Y+OXTiqsPQ6IWarZKwF1JoUcAJdPogv1d4b0COTpmQ==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", + "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==", "dependencies": { "@types/unist": "*" } @@ -8436,9 +8479,9 @@ ] }, "node_modules/ignore": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.0.tgz", - "integrity": "sha512-g7dmpshy+gD7mh88OC9NwSGTKoc3kyLAZQRU1mt53Aw/vnvfXnbC+F/7F7QoYVKbV+KNvJx8wArewKy1vXMtlg==", + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz", + "integrity": "sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==", "engines": { "node": ">= 4" } @@ -9802,9 +9845,9 @@ } }, "node_modules/mdast-util-to-hast/node_modules/@types/hast": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.3.tgz", - "integrity": "sha512-2fYGlaDy/qyLlhidX42wAH0KBi2TCjKMH8CHmBXgRlJ3Y+OXTiqsPQ6IWarZKwF1JoUcAJdPogv1d4b0COTpmQ==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", + "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==", "dependencies": { "@types/unist": "*" } @@ -11568,9 +11611,9 @@ } }, "node_modules/openai/node_modules/@types/node": { - "version": "18.19.10", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.10.tgz", - "integrity": "sha512-IZD8kAM02AW1HRDTPOlz3npFava678pr8Ie9Vp8uRhBROXAv8MXT2pCnGZZAKYdromsNQLHQcfWQ6EOatVLtqA==", + "version": "18.19.13", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.13.tgz", + "integrity": "sha512-kgnbRDj8ioDyGxoiaXsiu1Ybm/K14ajCgMOkwiqpHrnF7d7QiYRoRqHIpglMMs3DwXinlK4qJ8TZGlj4hfleJg==", "peer": true, "dependencies": { "undici-types": "~5.26.4" @@ -12391,12 +12434,12 @@ } }, "node_modules/prettier-plugin-packagejson": { - "version": "2.4.9", - "resolved": "https://registry.npmjs.org/prettier-plugin-packagejson/-/prettier-plugin-packagejson-2.4.9.tgz", - "integrity": "sha512-b3Q7agXVqxK3UpYEJr0xLD51SxriYXESWUCjmxOBUGqnPFZOg9jZGZ+Ptzq252I6OqzXN2rj1tJIFq6KOGLLJw==", + "version": "2.4.10", + "resolved": "https://registry.npmjs.org/prettier-plugin-packagejson/-/prettier-plugin-packagejson-2.4.10.tgz", + "integrity": "sha512-qFzOfQDHi1tzvVJRuZ2jh1j6IFV5MURh5m5WDt+qfEMOf4SSL5RpwSysiX8u0W1PJYsM0vKJGNULt43wwteKiQ==", "dev": true, "dependencies": { - "sort-package-json": "2.6.0", + "sort-package-json": "2.7.0", "synckit": "0.9.0" }, "peerDependencies": { @@ -12812,9 +12855,9 @@ } }, "node_modules/rehype-katex/node_modules/@types/hast": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.3.tgz", - "integrity": "sha512-2fYGlaDy/qyLlhidX42wAH0KBi2TCjKMH8CHmBXgRlJ3Y+OXTiqsPQ6IWarZKwF1JoUcAJdPogv1d4b0COTpmQ==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", + "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==", "dependencies": { "@types/unist": "*" } @@ -12881,9 +12924,9 @@ } }, "node_modules/rehype-raw/node_modules/@types/hast": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.3.tgz", - "integrity": "sha512-2fYGlaDy/qyLlhidX42wAH0KBi2TCjKMH8CHmBXgRlJ3Y+OXTiqsPQ6IWarZKwF1JoUcAJdPogv1d4b0COTpmQ==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", + "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==", "dependencies": { "@types/unist": "*" } @@ -13729,9 +13772,9 @@ "dev": true }, "node_modules/sort-package-json": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/sort-package-json/-/sort-package-json-2.6.0.tgz", - "integrity": "sha512-XSQ+lY9bAYA8ZsoChcEoPlgcSMaheziEp1beox1JVxy1SV4F2jSq9+h2rJ+3mC/Dhu9Ius1DLnInD5AWcsDXZw==", + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/sort-package-json/-/sort-package-json-2.7.0.tgz", + "integrity": "sha512-6AayF8bp6L+WROgpbhTMUtB9JSFmpGHjmW7DyaNPS1HwlTw2oSVlUUtlkHSEZmg5o89F3zvLBZNvMeZ1T4fjQg==", "dev": true, "dependencies": { "detect-indent": "^7.0.1", @@ -14878,26 +14921,26 @@ } }, "node_modules/turbo": { - "version": "1.11.3", - "resolved": "https://registry.npmjs.org/turbo/-/turbo-1.11.3.tgz", - "integrity": "sha512-RCJOUFcFMQNIGKSjC9YmA5yVP1qtDiBA0Lv9VIgrXraI5Da1liVvl3VJPsoDNIR9eFMyA/aagx1iyj6UWem5hA==", + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/turbo/-/turbo-1.12.2.tgz", + "integrity": "sha512-BcoQjBZ+LJCMdjzWhzQflOinUjek28rWXj07aaaAQ8T3Ehs0JFSjIsXOm4qIbo52G4xk3gFVcUtJhh/QRADl7g==", "dev": true, "bin": { "turbo": "bin/turbo" }, "optionalDependencies": { - "turbo-darwin-64": "1.11.3", - "turbo-darwin-arm64": "1.11.3", - "turbo-linux-64": "1.11.3", - "turbo-linux-arm64": "1.11.3", - "turbo-windows-64": "1.11.3", - "turbo-windows-arm64": "1.11.3" + "turbo-darwin-64": "1.12.2", + "turbo-darwin-arm64": "1.12.2", + "turbo-linux-64": "1.12.2", + "turbo-linux-arm64": "1.12.2", + "turbo-windows-64": "1.12.2", + "turbo-windows-arm64": "1.12.2" } }, "node_modules/turbo-darwin-64": { - "version": "1.11.3", - "resolved": "https://registry.npmjs.org/turbo-darwin-64/-/turbo-darwin-64-1.11.3.tgz", - "integrity": "sha512-IsOOg2bVbIt3o/X8Ew9fbQp5t1hTHN3fGNQYrPQwMR2W1kIAC6RfbVD4A9OeibPGyEPUpwOH79hZ9ydFH5kifw==", + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/turbo-darwin-64/-/turbo-darwin-64-1.12.2.tgz", + "integrity": "sha512-Aq/ePQ5KNx6XGwlZWTVTqpQYfysm1vkwkI6kAYgrX5DjMWn+tUXrSgNx4YNte0F+V4DQ7PtuWX+jRG0h0ZNg0A==", "cpu": [ "x64" ], @@ -14908,9 +14951,9 @@ ] }, "node_modules/turbo-darwin-arm64": { - "version": "1.11.3", - "resolved": "https://registry.npmjs.org/turbo-darwin-arm64/-/turbo-darwin-arm64-1.11.3.tgz", - "integrity": "sha512-FsJL7k0SaPbJzI/KCnrf/fi3PgCDCjTliMc/kEFkuWVA6Httc3Q4lxyLIIinz69q6JTx8wzh6yznUMzJRI3+dg==", + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/turbo-darwin-arm64/-/turbo-darwin-arm64-1.12.2.tgz", + "integrity": "sha512-wTr+dqkwJo/eXE+4SPTSeNBKyyfQJhI6I9sKVlCSBmtaNEqoGNgdVzgMUdqrg9AIFzLIiKO+zhfskNaSWpVFow==", "cpu": [ "arm64" ], @@ -14921,9 +14964,9 @@ ] }, "node_modules/turbo-linux-64": { - "version": "1.11.3", - "resolved": "https://registry.npmjs.org/turbo-linux-64/-/turbo-linux-64-1.11.3.tgz", - "integrity": "sha512-SvW7pvTVRGsqtSkII5w+wriZXvxqkluw5FO/MNAdFw0qmoov+PZ237+37/NgArqE3zVn1GX9P6nUx9VO+xcQAg==", + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/turbo-linux-64/-/turbo-linux-64-1.12.2.tgz", + "integrity": "sha512-BggBKrLojGarDaa2zBo+kUR3fmjpd6bLA8Unm3Aa2oJw0UvEi3Brd+w9lNsPZHXXQYBUzNUY2gCdxf3RteWb0g==", "cpu": [ "x64" ], @@ -14934,9 +14977,9 @@ ] }, "node_modules/turbo-linux-arm64": { - "version": "1.11.3", - "resolved": "https://registry.npmjs.org/turbo-linux-arm64/-/turbo-linux-arm64-1.11.3.tgz", - "integrity": "sha512-YhUfBi1deB3m+3M55X458J6B7RsIS7UtM3P1z13cUIhF+pOt65BgnaSnkHLwETidmhRh8Dl3GelaQGrB3RdCDw==", + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/turbo-linux-arm64/-/turbo-linux-arm64-1.12.2.tgz", + "integrity": "sha512-v/apSRvVuwYjq1D9MJFsHv2EpGd1S4VoSdZvVfW6FaM06L8CFZa92urNR1svdGYN28YVKwK9Ikc9qudC6t/d5A==", "cpu": [ "arm64" ], @@ -14947,9 +14990,9 @@ ] }, "node_modules/turbo-windows-64": { - "version": "1.11.3", - "resolved": "https://registry.npmjs.org/turbo-windows-64/-/turbo-windows-64-1.11.3.tgz", - "integrity": "sha512-s+vEnuM2TiZuAUUUpmBHDr6vnNbJgj+5JYfnYmVklYs16kXh+EppafYQOAkcRIMAh7GjV3pLq5/uGqc7seZeHA==", + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/turbo-windows-64/-/turbo-windows-64-1.12.2.tgz", + "integrity": "sha512-3uDdwXcRGkgopYFdPDpxQiuQjfQ12Fxq0fhj+iGymav0eWA4W4wzYwSdlUp6rT22qOBIzaEsrIspRwx1DsMkNg==", "cpu": [ "x64" ], @@ -14960,9 +15003,9 @@ ] }, "node_modules/turbo-windows-arm64": { - "version": "1.11.3", - "resolved": "https://registry.npmjs.org/turbo-windows-arm64/-/turbo-windows-arm64-1.11.3.tgz", - "integrity": "sha512-ZR5z5Zpc7cASwfdRAV5yNScCZBsgGSbcwiA/u3farCacbPiXsfoWUkz28iyrx21/TRW0bi6dbsB2v17swa8bjw==", + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/turbo-windows-arm64/-/turbo-windows-arm64-1.12.2.tgz", + "integrity": "sha512-zNIHnwtQfJSjFi7movwhPQh2rfrcKZ7Xv609EN1yX0gEp9GxooCUi2yNnBQ8wTqFjioA2M5hZtGJQ0RrKaEm/Q==", "cpu": [ "arm64" ], @@ -16128,6 +16171,15 @@ "redis": ">=4.6" } }, + "packages/cache-handler/node_modules/@types/node": { + "version": "20.11.14", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.14.tgz", + "integrity": "sha512-w3yWCcwULefjP9DmDDsgUskrMoOy5Z8MiwKHr1FvqGPtx7CvJzQvxD7eKpxNtklQxLruxSXWddyeRtyud0RcXQ==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "packages/diffscribe": { "version": "0.2.2", "license": "MIT", @@ -16146,6 +16198,15 @@ "openai": "^4.12.3" } }, + "packages/diffscribe/node_modules/@types/node": { + "version": "20.11.14", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.14.tgz", + "integrity": "sha512-w3yWCcwULefjP9DmDDsgUskrMoOy5Z8MiwKHr1FvqGPtx7CvJzQvxD7eKpxNtklQxLruxSXWddyeRtyud0RcXQ==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "packages/json-replacer-reviver": { "name": "@neshca/json-replacer-reviver", "version": "1.1.1", @@ -16159,6 +16220,15 @@ "typescript": "5.3.3" } }, + "packages/json-replacer-reviver/node_modules/@types/node": { + "version": "20.11.14", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.14.tgz", + "integrity": "sha512-w3yWCcwULefjP9DmDDsgUskrMoOy5Z8MiwKHr1FvqGPtx7CvJzQvxD7eKpxNtklQxLruxSXWddyeRtyud0RcXQ==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "packages/server": { "name": "@neshca/server", "version": "0.6.1", @@ -16180,6 +16250,15 @@ "tsx": "4.7.0", "typescript": "5.3.3" } + }, + "packages/server/node_modules/@types/node": { + "version": "20.11.14", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.14.tgz", + "integrity": "sha512-w3yWCcwULefjP9DmDDsgUskrMoOy5Z8MiwKHr1FvqGPtx7CvJzQvxD7eKpxNtklQxLruxSXWddyeRtyud0RcXQ==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } } } } diff --git a/package.json b/package.json index 6d308a54..7caaa79f 100644 --- a/package.json +++ b/package.json @@ -10,26 +10,27 @@ "internal/*" ], "scripts": { - "build": "FORCE_COLOR=1 turbo run build --log-prefix=none --filter=!./apps/* --filter=!./docs/*", - "build:app": "FORCE_COLOR=1 turbo run build --log-prefix=none --filter=cache-testing", - "build:docs": "FORCE_COLOR=1 turbo run build:docs --log-prefix=none --filter=cache-handler-docs", + "build": "turbo run build --log-prefix=none --filter=!./apps/* --filter=!./docs/*", + "build:app": "turbo run build --log-prefix=none --filter=cache-testing", + "build:docs": "turbo run build:docs --log-prefix=none --filter=cache-handler-docs", "changeset": "changeset", - "clean": "FORCE_COLOR=1 turbo run clean --log-order=grouped", + "clean": "turbo run clean --log-order=grouped", "codestyle:check": "biome check . && npm run eslint:check && npm run prettier:check", "codestyle:fix": "biome check --apply . && npm run eslint:fix && npm run prettier:fix", - "dev": "FORCE_COLOR=1 turbo run dev --log-prefix=none --filter=!diffscribe", - "dev:backend": "FORCE_COLOR=1 turbo run dev --log-prefix=none --filter=backend", - "dev:with-redis": "FORCE_COLOR=1 turbo run dev --log-prefix=none --filter=!@neshca/server --filter=!diffscribe", - "e2e": "FORCE_COLOR=1 turbo run e2e --log-prefix=none", - "eslint:check": "FORCE_COLOR=1 turbo run eslint:check --log-order=grouped", - "eslint:fix": "FORCE_COLOR=1 turbo run eslint:fix --log-order=grouped", + "dev": "turbo run dev --log-prefix=none --filter=!diffscribe", + "dev:backend": "turbo run dev --log-prefix=none --filter=backend", + "dev:with-redis": "turbo run dev --log-prefix=none --filter=!@neshca/server --filter=!diffscribe", + "e2e": "turbo run e2e --log-prefix=none", + "eslint:check": "turbo run eslint:check --log-order=grouped", + "eslint:fix": "turbo run eslint:fix --log-order=grouped", + "postinstall": "turbo telemetry disable", "prettier:check": "prettier --check **/*.{md,mdx,yml,json}", "prettier:fix": "prettier --write **/*.{md,mdx,yml,json}", "release": "npm run build && npm run codestyle:check && changeset publish", - "start": "FORCE_COLOR=1 turbo run start --log-prefix=none --filter=!./apps/* --filter=!./docs/*", - "start:app": "FORCE_COLOR=1 turbo run start --log-prefix=none --filter=cache-testing", - "start:backend": "FORCE_COLOR=1 turbo run start --log-prefix=none --filter=backend", - "test": "FORCE_COLOR=1 turbo run test --log-order=grouped", + "start": "turbo run start --log-prefix=none --filter=!./apps/* --filter=!./docs/*", + "start:app": "turbo run start --log-prefix=none --filter=cache-testing", + "start:backend": "turbo run start --log-prefix=none --filter=backend", + "test": "turbo run test --log-order=grouped", "version-packages": "changeset version && npm run codestyle:fix" }, "dependencies": { @@ -43,7 +44,7 @@ "diffscribe": "*", "glob": "10.3.10", "prettier": "3.2.4", - "turbo": "1.11.3" + "turbo": "1.12.2" }, "engines": { "node": ">=20.9.0", diff --git a/turbo.json b/turbo.json index f6c49f89..c7781417 100644 --- a/turbo.json +++ b/turbo.json @@ -31,8 +31,6 @@ "cache": false }, "e2e": { - "inputs": [".next/**", "!.next/cache/**", "tests/**"], - "outputs": ["test-results/**", "playwright-report/**"], "cache": false }, "clean": { From 8a25db0f0d74681a3ec265db76734af6c0452987 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 1 Feb 2024 11:28:30 +0000 Subject: [PATCH 089/458] Bump the eslint group with 2 updates (#309) --- internal/eslint-config/package.json | 4 +- package-lock.json | 90 ++++++++++++++--------------- 2 files changed, 46 insertions(+), 48 deletions(-) diff --git a/internal/eslint-config/package.json b/internal/eslint-config/package.json index fae0c81b..6aaad6b0 100644 --- a/internal/eslint-config/package.json +++ b/internal/eslint-config/package.json @@ -6,8 +6,8 @@ "next.js" ], "devDependencies": { - "@typescript-eslint/eslint-plugin": "6.19.1", - "@typescript-eslint/parser": "6.19.1", + "@typescript-eslint/eslint-plugin": "6.20.0", + "@typescript-eslint/parser": "6.20.0", "@vercel/style-guide": "5.1.0", "eslint-config-prettier": "9.1.0", "eslint-config-turbo": "1.12.2", diff --git a/package-lock.json b/package-lock.json index 02447eae..2157a866 100644 --- a/package-lock.json +++ b/package-lock.json @@ -35,7 +35,6 @@ }, "apps/cache-testing": { "version": "0.0.0", - "hasInstallScript": true, "license": "MIT", "dependencies": { "next": "14.1.1-canary.1", @@ -119,7 +118,6 @@ }, "docs/cache-handler-docs": { "version": "0.6.6", - "hasInstallScript": true, "dependencies": { "next": "14.1.0", "nextra": "2.13.2", @@ -267,8 +265,8 @@ "name": "@repo/eslint-config", "version": "0.0.0", "devDependencies": { - "@typescript-eslint/eslint-plugin": "6.19.1", - "@typescript-eslint/parser": "6.19.1", + "@typescript-eslint/eslint-plugin": "6.20.0", + "@typescript-eslint/parser": "6.20.0", "@vercel/style-guide": "5.1.0", "eslint-config-prettier": "9.1.0", "eslint-config-turbo": "1.12.2", @@ -3317,16 +3315,16 @@ "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "6.19.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.19.1.tgz", - "integrity": "sha512-roQScUGFruWod9CEyoV5KlCYrubC/fvG8/1zXuT0WTcxX87GnMMmnksMwSg99lo1xiKrBzw2icsJPMAw1OtKxg==", + "version": "6.20.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.20.0.tgz", + "integrity": "sha512-fTwGQUnjhoYHeSF6m5pWNkzmDDdsKELYrOBxhjMrofPqCkoC2k3B2wvGHFxa1CTIqkEn88nlW1HVMztjo2K8Hg==", "dev": true, "dependencies": { "@eslint-community/regexpp": "^4.5.1", - "@typescript-eslint/scope-manager": "6.19.1", - "@typescript-eslint/type-utils": "6.19.1", - "@typescript-eslint/utils": "6.19.1", - "@typescript-eslint/visitor-keys": "6.19.1", + "@typescript-eslint/scope-manager": "6.20.0", + "@typescript-eslint/type-utils": "6.20.0", + "@typescript-eslint/utils": "6.20.0", + "@typescript-eslint/visitor-keys": "6.20.0", "debug": "^4.3.4", "graphemer": "^1.4.0", "ignore": "^5.2.4", @@ -3352,15 +3350,15 @@ } }, "node_modules/@typescript-eslint/parser": { - "version": "6.19.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.19.1.tgz", - "integrity": "sha512-WEfX22ziAh6pRE9jnbkkLGp/4RhTpffr2ZK5bJ18M8mIfA8A+k97U9ZyaXCEJRlmMHh7R9MJZWXp/r73DzINVQ==", + "version": "6.20.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.20.0.tgz", + "integrity": "sha512-bYerPDF/H5v6V76MdMYhjwmwgMA+jlPVqjSDq2cRqMi8bP5sR3Z+RLOiOMad3nsnmDVmn2gAFCyNgh/dIrfP/w==", "dev": true, "dependencies": { - "@typescript-eslint/scope-manager": "6.19.1", - "@typescript-eslint/types": "6.19.1", - "@typescript-eslint/typescript-estree": "6.19.1", - "@typescript-eslint/visitor-keys": "6.19.1", + "@typescript-eslint/scope-manager": "6.20.0", + "@typescript-eslint/types": "6.20.0", + "@typescript-eslint/typescript-estree": "6.20.0", + "@typescript-eslint/visitor-keys": "6.20.0", "debug": "^4.3.4" }, "engines": { @@ -3380,13 +3378,13 @@ } }, "node_modules/@typescript-eslint/scope-manager": { - "version": "6.19.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.19.1.tgz", - "integrity": "sha512-4CdXYjKf6/6aKNMSly/BP4iCSOpvMmqtDzRtqFyyAae3z5kkqEjKndR5vDHL8rSuMIIWP8u4Mw4VxLyxZW6D5w==", + "version": "6.20.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.20.0.tgz", + "integrity": "sha512-p4rvHQRDTI1tGGMDFQm+GtxP1ZHyAh64WANVoyEcNMpaTFn3ox/3CcgtIlELnRfKzSs/DwYlDccJEtr3O6qBvA==", "dev": true, "dependencies": { - "@typescript-eslint/types": "6.19.1", - "@typescript-eslint/visitor-keys": "6.19.1" + "@typescript-eslint/types": "6.20.0", + "@typescript-eslint/visitor-keys": "6.20.0" }, "engines": { "node": "^16.0.0 || >=18.0.0" @@ -3397,13 +3395,13 @@ } }, "node_modules/@typescript-eslint/type-utils": { - "version": "6.19.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.19.1.tgz", - "integrity": "sha512-0vdyld3ecfxJuddDjACUvlAeYNrHP/pDeQk2pWBR2ESeEzQhg52DF53AbI9QCBkYE23lgkhLCZNkHn2hEXXYIg==", + "version": "6.20.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.20.0.tgz", + "integrity": "sha512-qnSobiJQb1F5JjN0YDRPHruQTrX7ICsmltXhkV536mp4idGAYrIyr47zF/JmkJtEcAVnIz4gUYJ7gOZa6SmN4g==", "dev": true, "dependencies": { - "@typescript-eslint/typescript-estree": "6.19.1", - "@typescript-eslint/utils": "6.19.1", + "@typescript-eslint/typescript-estree": "6.20.0", + "@typescript-eslint/utils": "6.20.0", "debug": "^4.3.4", "ts-api-utils": "^1.0.1" }, @@ -3424,9 +3422,9 @@ } }, "node_modules/@typescript-eslint/types": { - "version": "6.19.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.19.1.tgz", - "integrity": "sha512-6+bk6FEtBhvfYvpHsDgAL3uo4BfvnTnoge5LrrCj2eJN8g3IJdLTD4B/jK3Q6vo4Ql/Hoip9I8aB6fF+6RfDqg==", + "version": "6.20.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.20.0.tgz", + "integrity": "sha512-MM9mfZMAhiN4cOEcUOEx+0HmuaW3WBfukBZPCfwSqFnQy0grXYtngKCqpQN339X3RrwtzspWJrpbrupKYUSBXQ==", "dev": true, "engines": { "node": "^16.0.0 || >=18.0.0" @@ -3437,13 +3435,13 @@ } }, "node_modules/@typescript-eslint/typescript-estree": { - "version": "6.19.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.19.1.tgz", - "integrity": "sha512-aFdAxuhzBFRWhy+H20nYu19+Km+gFfwNO4TEqyszkMcgBDYQjmPJ61erHxuT2ESJXhlhrO7I5EFIlZ+qGR8oVA==", + "version": "6.20.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.20.0.tgz", + "integrity": "sha512-RnRya9q5m6YYSpBN7IzKu9FmLcYtErkDkc8/dKv81I9QiLLtVBHrjz+Ev/crAqgMNW2FCsoZF4g2QUylMnJz+g==", "dev": true, "dependencies": { - "@typescript-eslint/types": "6.19.1", - "@typescript-eslint/visitor-keys": "6.19.1", + "@typescript-eslint/types": "6.20.0", + "@typescript-eslint/visitor-keys": "6.20.0", "debug": "^4.3.4", "globby": "^11.1.0", "is-glob": "^4.0.3", @@ -3489,17 +3487,17 @@ } }, "node_modules/@typescript-eslint/utils": { - "version": "6.19.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.19.1.tgz", - "integrity": "sha512-JvjfEZuP5WoMqwh9SPAPDSHSg9FBHHGhjPugSRxu5jMfjvBpq5/sGTD+9M9aQ5sh6iJ8AY/Kk/oUYVEMAPwi7w==", + "version": "6.20.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.20.0.tgz", + "integrity": "sha512-/EKuw+kRu2vAqCoDwDCBtDRU6CTKbUmwwI7SH7AashZ+W+7o8eiyy6V2cdOqN49KsTcASWsC5QeghYuRDTyOOg==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.4.0", "@types/json-schema": "^7.0.12", "@types/semver": "^7.5.0", - "@typescript-eslint/scope-manager": "6.19.1", - "@typescript-eslint/types": "6.19.1", - "@typescript-eslint/typescript-estree": "6.19.1", + "@typescript-eslint/scope-manager": "6.20.0", + "@typescript-eslint/types": "6.20.0", + "@typescript-eslint/typescript-estree": "6.20.0", "semver": "^7.5.4" }, "engines": { @@ -3514,12 +3512,12 @@ } }, "node_modules/@typescript-eslint/visitor-keys": { - "version": "6.19.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.19.1.tgz", - "integrity": "sha512-gkdtIO+xSO/SmI0W68DBg4u1KElmIUo3vXzgHyGPs6cxgB0sa3TlptRAAE0hUY1hM6FcDKEv7aIwiTGm76cXfQ==", + "version": "6.20.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.20.0.tgz", + "integrity": "sha512-E8Cp98kRe4gKHjJD4NExXKz/zOJ1A2hhZc+IMVD6i7w4yjIvh6VyuRI0gRtxAsXtoC35uGMaQ9rjI2zJaXDEAw==", "dev": true, "dependencies": { - "@typescript-eslint/types": "6.19.1", + "@typescript-eslint/types": "6.20.0", "eslint-visitor-keys": "^3.4.1" }, "engines": { From a8f9d6b6355af64f61efc0efa0883904c5b20f70 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 1 Feb 2024 11:36:23 +0000 Subject: [PATCH 090/458] Bump the definitely-typed group with 2 updates (#311) --- apps/cache-testing/package.json | 4 +- docs/cache-handler-docs/package.json | 4 +- internal/backend/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 123 ++++---------------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 10 files changed, 36 insertions(+), 109 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 6513e380..335da48a 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -29,8 +29,8 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.2", - "@types/node": "20.11.14", - "@types/react": "18.2.48", + "@types/node": "20.11.15", + "@types/react": "18.2.51", "@types/react-dom": "18.2.18", "dotenv-cli": "7.3.0", "eslint": "8.56.0", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 955c95a6..b7a1245f 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -22,8 +22,8 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.2", - "@types/node": "20.11.14", - "@types/react": "18.2.48", + "@types/node": "20.11.15", + "@types/react": "18.2.51", "@types/react-dom": "18.2.18", "eslint": "8.56.0", "typescript": "5.3.3" diff --git a/internal/backend/package.json b/internal/backend/package.json index 31eef07e..22151876 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.14", + "@types/node": "20.11.15", "pino-pretty": "10.3.1", "rimraf": "5.0.5", "tsx": "4.7.0", diff --git a/internal/next-common/package.json b/internal/next-common/package.json index 19fcc131..698897f4 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.14", + "@types/node": "20.11.15", "rimraf": "5.0.5", "typescript": "5.3.3" } diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index ec35fd7b..6aa6dd21 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -16,7 +16,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.14", + "@types/node": "20.11.15", "rimraf": "5.0.5", "typescript": "5.3.3" } diff --git a/package-lock.json b/package-lock.json index 2157a866..1b11dcb0 100644 --- a/package-lock.json +++ b/package-lock.json @@ -49,8 +49,8 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.2", - "@types/node": "20.11.14", - "@types/react": "18.2.48", + "@types/node": "20.11.15", + "@types/react": "18.2.51", "@types/react-dom": "18.2.18", "dotenv-cli": "7.3.0", "eslint": "8.56.0", @@ -62,15 +62,6 @@ "typescript": "5.3.3" } }, - "apps/cache-testing/node_modules/@types/node": { - "version": "20.11.14", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.14.tgz", - "integrity": "sha512-w3yWCcwULefjP9DmDDsgUskrMoOy5Z8MiwKHr1FvqGPtx7CvJzQvxD7eKpxNtklQxLruxSXWddyeRtyud0RcXQ==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "apps/cache-testing/node_modules/next": { "version": "14.1.1-canary.1", "resolved": "https://registry.npmjs.org/next/-/next-14.1.1-canary.1.tgz", @@ -130,8 +121,8 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.2", - "@types/node": "20.11.14", - "@types/react": "18.2.48", + "@types/node": "20.11.15", + "@types/react": "18.2.51", "@types/react-dom": "18.2.18", "eslint": "8.56.0", "typescript": "5.3.3" @@ -146,15 +137,6 @@ "glob": "10.3.10" } }, - "docs/cache-handler-docs/node_modules/@types/node": { - "version": "20.11.14", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.14.tgz", - "integrity": "sha512-w3yWCcwULefjP9DmDDsgUskrMoOy5Z8MiwKHr1FvqGPtx7CvJzQvxD7eKpxNtklQxLruxSXWddyeRtyud0RcXQ==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "docs/cache-handler-docs/node_modules/nextra": { "version": "2.13.2", "resolved": "https://registry.npmjs.org/nextra/-/nextra-2.13.2.tgz", @@ -245,22 +227,13 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.14", + "@types/node": "20.11.15", "pino-pretty": "10.3.1", "rimraf": "5.0.5", "tsx": "4.7.0", "typescript": "5.3.3" } }, - "internal/backend/node_modules/@types/node": { - "version": "20.11.14", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.14.tgz", - "integrity": "sha512-w3yWCcwULefjP9DmDDsgUskrMoOy5Z8MiwKHr1FvqGPtx7CvJzQvxD7eKpxNtklQxLruxSXWddyeRtyud0RcXQ==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "internal/eslint-config": { "name": "@repo/eslint-config", "version": "0.0.0", @@ -344,20 +317,11 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.14", + "@types/node": "20.11.15", "rimraf": "5.0.5", "typescript": "5.3.3" } }, - "internal/next-common/node_modules/@types/node": { - "version": "20.11.14", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.14.tgz", - "integrity": "sha512-w3yWCcwULefjP9DmDDsgUskrMoOy5Z8MiwKHr1FvqGPtx7CvJzQvxD7eKpxNtklQxLruxSXWddyeRtyud0RcXQ==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "internal/next-common/node_modules/next": { "version": "14.1.1-canary.1", "resolved": "https://registry.npmjs.org/next/-/next-14.1.1-canary.1.tgz", @@ -413,20 +377,11 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.14", + "@types/node": "20.11.15", "rimraf": "5.0.5", "typescript": "5.3.3" } }, - "internal/next-lru-cache/node_modules/@types/node": { - "version": "20.11.14", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.14.tgz", - "integrity": "sha512-w3yWCcwULefjP9DmDDsgUskrMoOy5Z8MiwKHr1FvqGPtx7CvJzQvxD7eKpxNtklQxLruxSXWddyeRtyud0RcXQ==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "internal/prettier-config": { "name": "@repo/prettier-config", "version": "0.0.0", @@ -1970,6 +1925,11 @@ "fs-extra": "^8.1.0" } }, + "node_modules/@manypkg/find-root/node_modules/@types/node": { + "version": "12.20.55", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", + "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" + }, "node_modules/@manypkg/find-root/node_modules/fs-extra": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", @@ -3256,9 +3216,12 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "12.20.55", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", - "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" + "version": "20.11.15", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.15.tgz", + "integrity": "sha512-gscmuADZfvNULx1eyirVbr3kVOVZtpQtzKMCZpeSZcN6MfbkRXAR4s9/gsQ4CzxLHw6EStDtKLNtSDL3vbq05A==", + "dependencies": { + "undici-types": "~5.26.4" + } }, "node_modules/@types/node-fetch": { "version": "2.6.11", @@ -3281,9 +3244,9 @@ "integrity": "sha512-ga8y9v9uyeiLdpKddhxYQkxNDrfvuPrlFb0N1qnZZByvcElJaXthF1UhvCh9TLWJBEHeNtdnbysW7Y6Uq8CVng==" }, "node_modules/@types/react": { - "version": "18.2.48", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.48.tgz", - "integrity": "sha512-qboRCl6Ie70DQQG9hhNREz81jqC1cs9EVNcjQ1AU+jH6NFfSAhVVbrrY/+nSF+Bsk4AOwm9Qa61InvMCyV+H3w==", + "version": "18.2.51", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.51.tgz", + "integrity": "sha512-XeoMaU4CzyjdRr3c4IQQtiH7Rpo18V07rYZUucEZQwOUEtGgTXv7e6igQiQ+xnV6MbMe1qjEmKdgMNnfppnXfg==", "dependencies": { "@types/prop-types": "*", "@types/scheduler": "*", @@ -16158,7 +16121,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.14", + "@types/node": "20.11.15", "rimraf": "5.0.5", "tsup": "8.0.1", "tsx": "4.7.0", @@ -16169,15 +16132,6 @@ "redis": ">=4.6" } }, - "packages/cache-handler/node_modules/@types/node": { - "version": "20.11.14", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.14.tgz", - "integrity": "sha512-w3yWCcwULefjP9DmDDsgUskrMoOy5Z8MiwKHr1FvqGPtx7CvJzQvxD7eKpxNtklQxLruxSXWddyeRtyud0RcXQ==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "packages/diffscribe": { "version": "0.2.2", "license": "MIT", @@ -16186,7 +16140,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.14", + "@types/node": "20.11.15", "rimraf": "5.0.5", "tsup": "8.0.1", "typescript": "5.3.3" @@ -16196,37 +16150,19 @@ "openai": "^4.12.3" } }, - "packages/diffscribe/node_modules/@types/node": { - "version": "20.11.14", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.14.tgz", - "integrity": "sha512-w3yWCcwULefjP9DmDDsgUskrMoOy5Z8MiwKHr1FvqGPtx7CvJzQvxD7eKpxNtklQxLruxSXWddyeRtyud0RcXQ==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "packages/json-replacer-reviver": { "name": "@neshca/json-replacer-reviver", "version": "1.1.1", "license": "MIT", "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.14", + "@types/node": "20.11.15", "rimraf": "5.0.5", "tsup": "8.0.1", "tsx": "4.7.0", "typescript": "5.3.3" } }, - "packages/json-replacer-reviver/node_modules/@types/node": { - "version": "20.11.14", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.14.tgz", - "integrity": "sha512-w3yWCcwULefjP9DmDDsgUskrMoOy5Z8MiwKHr1FvqGPtx7CvJzQvxD7eKpxNtklQxLruxSXWddyeRtyud0RcXQ==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "packages/server": { "name": "@neshca/server", "version": "0.6.1", @@ -16242,21 +16178,12 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.14", + "@types/node": "20.11.15", "rimraf": "5.0.5", "tsup": "8.0.1", "tsx": "4.7.0", "typescript": "5.3.3" } - }, - "packages/server/node_modules/@types/node": { - "version": "20.11.14", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.14.tgz", - "integrity": "sha512-w3yWCcwULefjP9DmDDsgUskrMoOy5Z8MiwKHr1FvqGPtx7CvJzQvxD7eKpxNtklQxLruxSXWddyeRtyud0RcXQ==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } } } } diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 33447fcf..c6abbbd5 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -73,7 +73,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.14", + "@types/node": "20.11.15", "rimraf": "5.0.5", "tsup": "8.0.1", "tsx": "4.7.0", diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index eb4198fc..147e47ed 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -25,7 +25,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.14", + "@types/node": "20.11.15", "rimraf": "5.0.5", "tsup": "8.0.1", "typescript": "5.3.3" diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index b1918768..8d8058cb 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -28,7 +28,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.14", + "@types/node": "20.11.15", "rimraf": "5.0.5", "tsup": "8.0.1", "tsx": "4.7.0", diff --git a/packages/server/package.json b/packages/server/package.json index 6b0ae64c..8253767d 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -32,7 +32,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.14", + "@types/node": "20.11.15", "rimraf": "5.0.5", "tsup": "8.0.1", "tsx": "4.7.0", From 2fc11315c68bd9c358642de5f594487be2b6f6ca Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Thu, 1 Feb 2024 17:26:59 +0300 Subject: [PATCH 091/458] Update docs to fix misleading `cache-handler.mjs` file configurations. (#312) --- .vscode/settings.json | 9 ++--- .../cache-handler-redis-stack.mjs | 18 +++++----- .../cache-handler-redis-strings.mjs | 20 +++++------ apps/cache-testing/cache-handler-server.mjs | 6 +--- .../configuration/build-id-as-prefix-key.mdx | 8 ++--- .../src/pages/configuration/cache.mdx | 10 +++--- .../configuration/development-environment.mdx | 4 +-- .../src/pages/configuration/on-creation.mdx | 4 +-- .../configuration/opt-out-cache-on-build.mdx | 4 +-- .../src/pages/configuration/ttl.mdx | 11 +++--- .../pages/configuration/use-file-system.mdx | 12 +++---- .../src/pages/installation.mdx | 36 +++---------------- .../src/pages/redis-stack-custom.mdx | 25 +++++++------ .../src/pages/redis-stack.mdx | 27 +++++++------- .../src/pages/redis-strings-custom.mdx | 27 +++++++------- .../src/pages/redis-strings.mdx | 26 +++++++------- docs/cache-handler-docs/src/pages/server.mdx | 11 +++--- .../src/pages/troubleshooting.mdx | 2 +- packages/cache-handler/src/cache-handler.ts | 4 +-- 19 files changed, 109 insertions(+), 155 deletions(-) diff --git a/.vscode/settings.json b/.vscode/settings.json index 27bbd3e3..9525e435 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -4,16 +4,10 @@ "[json]": { "editor.defaultFormatter": "esbenp.prettier-vscode" }, - "[md]": { - "editor.defaultFormatter": "esbenp.prettier-vscode" - }, "[mdx]": { "editor.defaultFormatter": "esbenp.prettier-vscode", "editor.wordWrap": "on" }, - "[yml]": { - "editor.defaultFormatter": "esbenp.prettier-vscode" - }, "typescript.surveys.enabled": false, "explorer.fileNesting.enabled": true, "explorer.fileNesting.patterns": { @@ -33,5 +27,8 @@ }, "[typescriptreact]": { "editor.defaultFormatter": "biomejs.biome" + }, + "[javascript]": { + "editor.defaultFormatter": "biomejs.biome" } } diff --git a/apps/cache-testing/cache-handler-redis-stack.mjs b/apps/cache-testing/cache-handler-redis-stack.mjs index e1367e32..fa4fde0a 100644 --- a/apps/cache-testing/cache-handler-redis-stack.mjs +++ b/apps/cache-testing/cache-handler-redis-stack.mjs @@ -4,18 +4,18 @@ import createRedisCache from '@neshca/cache-handler/redis-stack'; import createRedisStringsCache from '@neshca/cache-handler/redis-strings'; import { createClient } from 'redis'; -if (!process.env.REDIS_URL) { - console.warn('Make sure that REDIS_URL is added to the .env.local file and loaded properly.'); -} +IncrementalCache.onCreation(async () => { + if (!process.env.REDIS_URL) { + console.warn('Make sure that REDIS_URL is added to the .env.local file and loaded properly.'); + } -const client = createClient({ - url: process.env.REDIS_URL, - name: `cache-handler:${process.env.PORT ?? process.pid}`, -}); + const client = createClient({ + url: process.env.REDIS_URL, + name: `cache-handler:${process.env.PORT ?? process.pid}`, + }); -client.on('error', () => {}); + client.on('error', () => {}); -IncrementalCache.onCreation(async () => { console.info('Connecting Redis client...'); await client.connect(); console.info('Redis client connected.'); diff --git a/apps/cache-testing/cache-handler-redis-strings.mjs b/apps/cache-testing/cache-handler-redis-strings.mjs index c4591a7a..a59ba434 100644 --- a/apps/cache-testing/cache-handler-redis-strings.mjs +++ b/apps/cache-testing/cache-handler-redis-strings.mjs @@ -3,20 +3,20 @@ import createLruCache from '@neshca/cache-handler/local-lru'; import createRedisCache from '@neshca/cache-handler/redis-strings'; import { createClient } from 'redis'; -if (!process.env.REDIS_URL) { - console.warn('Make sure that REDIS_URL is added to the .env.local file and loaded properly.'); -} +IncrementalCache.onCreation(async () => { + if (!process.env.REDIS_URL) { + console.warn('Make sure that REDIS_URL is added to the .env.local file and loaded properly.'); + } -const PREFIX = 'string:'; + const PREFIX = 'string:'; -const client = createClient({ - url: process.env.REDIS_URL, - name: `cache-handler:${PREFIX}${process.env.PORT ?? process.pid}`, -}); + const client = createClient({ + url: process.env.REDIS_URL, + name: `cache-handler:${PREFIX}${process.env.PORT ?? process.pid}`, + }); -client.on('error', () => {}); + client.on('error', () => {}); -IncrementalCache.onCreation(async () => { console.info('Connecting Redis client...'); await client.connect(); console.info('Redis client connected.'); diff --git a/apps/cache-testing/cache-handler-server.mjs b/apps/cache-testing/cache-handler-server.mjs index c1486a24..75969f0a 100644 --- a/apps/cache-testing/cache-handler-server.mjs +++ b/apps/cache-testing/cache-handler-server.mjs @@ -1,13 +1,9 @@ -import Timers from 'node:timers/promises'; - import { IncrementalCache } from '@neshca/cache-handler'; import createLruCache from '@neshca/cache-handler/local-lru'; import createServerCache from '@neshca/cache-handler/server'; -const baseUrl = process.env.REMOTE_CACHE_SERVER_BASE_URL ?? 'http://localhost:8080'; - IncrementalCache.onCreation(async () => { - await Timers.scheduler.wait(1000); + const baseUrl = process.env.REMOTE_CACHE_SERVER_BASE_URL ?? 'http://localhost:8080'; const httpCache = createServerCache({ baseUrl, diff --git a/docs/cache-handler-docs/src/pages/configuration/build-id-as-prefix-key.mdx b/docs/cache-handler-docs/src/pages/configuration/build-id-as-prefix-key.mdx index 5cae91ae..fb49f54b 100644 --- a/docs/cache-handler-docs/src/pages/configuration/build-id-as-prefix-key.mdx +++ b/docs/cache-handler-docs/src/pages/configuration/build-id-as-prefix-key.mdx @@ -28,7 +28,7 @@ const nextConfig = { }; ``` -```js filename="cache-handler.js" copy +```js filename="cache-handler.mjs" copy IncrementalCache.onCreation(async () => { await client.connect(); @@ -58,11 +58,7 @@ const nextConfig = { }; ``` -```js filename="cache-handler.js" copy -const { IncrementalCache } = require('@neshca/cache-handler'); -const createRedisCache = require('@neshca/cache-handler/redis-stack').default; -const createLruCache = require('@neshca/cache-handler/local-lru').default; - +```js filename="cache-handler.mjs" copy IncrementalCache.onCreation(async ({ buildId }) => { let redisCache; diff --git a/docs/cache-handler-docs/src/pages/configuration/cache.mdx b/docs/cache-handler-docs/src/pages/configuration/cache.mdx index 1c32fdaa..964913e0 100644 --- a/docs/cache-handler-docs/src/pages/configuration/cache.mdx +++ b/docs/cache-handler-docs/src/pages/configuration/cache.mdx @@ -6,8 +6,8 @@ The `onCreation` hook is used to configure a custom cache handler. The example b ### Example: Custom Cache Handler Implementation -```js filename="cache-handler.js" copy -const { IncrementalCache } = require('@neshca/cache-handler'); +```js filename="cache-handler.mjs" copy +import { IncrementalCache } from '@neshca/cache-handler'; IncrementalCache.onCreation(async () => { const cacheStore = new Map(); @@ -28,7 +28,7 @@ IncrementalCache.onCreation(async () => { }; }); -module.exports = IncrementalCache; +export default IncrementalCache; ``` @@ -45,7 +45,7 @@ For control over the revalidation process, implement `getRevalidatedTags` and `r ### Example: Custom Revalidation Methods -```js filename="cache-handler.js" copy +```js filename="cache-handler.mjs" copy const revalidateTags = {}; const cache = { @@ -87,7 +87,7 @@ Structure of the `RevalidatedTags` object: Next.js modifies the global `fetch` function, which can lead to unexpected behavior when using `fetch` in custom cache handlers. To address this, use the following workaround when calling `fetch`: -```js filename="cache-handler.js" copy +```js filename="cache-handler.mjs" copy const cache = { async get(key) { const response = await fetch(url, { diff --git a/docs/cache-handler-docs/src/pages/configuration/development-environment.mdx b/docs/cache-handler-docs/src/pages/configuration/development-environment.mdx index 69d1e4b5..9ad77146 100644 --- a/docs/cache-handler-docs/src/pages/configuration/development-environment.mdx +++ b/docs/cache-handler-docs/src/pages/configuration/development-environment.mdx @@ -6,11 +6,11 @@ The easiest way to turn off the cache handler in a development environment is to ```js filename="next.config.js" copy const nextConfig = { - cacheHandler: process.env.NODE_ENV === 'production' ? require.resolve('./cache-handler.js') : undefined, + cacheHandler: process.env.NODE_ENV === 'production' ? require.resolve('./cache-handler.mjs') : undefined, // Use `experimental` option instead of the `cacheHandler` property when using Next.js versions from 13.5.1 to 14.0.4 /* experimental: { incrementalCacheHandlerPath: - process.env.NODE_ENV === 'production' ? require.resolve('./cache-handler.js') : undefined, + process.env.NODE_ENV === 'production' ? require.resolve('./cache-handler.mjs') : undefined, }, */ }; ``` diff --git a/docs/cache-handler-docs/src/pages/configuration/on-creation.mdx b/docs/cache-handler-docs/src/pages/configuration/on-creation.mdx index b3f67792..798ef918 100644 --- a/docs/cache-handler-docs/src/pages/configuration/on-creation.mdx +++ b/docs/cache-handler-docs/src/pages/configuration/on-creation.mdx @@ -37,7 +37,7 @@ When implementing the `onCreationHook`, you can utilize the information provided Here's a simplified example of how the `onCreation` method might be used: -```js filename="cache-handler.js" +```js filename="cache-handler.mjs" IncrementalCache.onCreation(async (context) => { const customCacheLogic = { // Define custom get, set, and other cache methods @@ -71,7 +71,7 @@ The `CacheConfig` object defines the configuration for the cache system. It typi Here is an example of how the `onCreation` hook might be implemented and what the return value looks like: -```js filename="cache-handler.js" +```js filename="cache-handler.mjs" IncrementalCache.onCreation(async (context) => { const customCache = { // Custom cache methods like get, set, etc. diff --git a/docs/cache-handler-docs/src/pages/configuration/opt-out-cache-on-build.mdx b/docs/cache-handler-docs/src/pages/configuration/opt-out-cache-on-build.mdx index 8fa7b24e..515a2743 100644 --- a/docs/cache-handler-docs/src/pages/configuration/opt-out-cache-on-build.mdx +++ b/docs/cache-handler-docs/src/pages/configuration/opt-out-cache-on-build.mdx @@ -4,9 +4,9 @@ There are scenarios, especially during deployment, where your Redis server may n ### Configuration Steps -1. **Modify the `cache-handler.js` File**: Adjust the `onCreation` method in your `cache-handler.js` file to conditionally connect to the Redis cache. The modified code should look like this: +1. **Modify the `cache-handler.mjs` File**: Adjust the `onCreation` method in your `cache-handler.mjs` file to conditionally connect to the Redis cache. The modified code should look like this: - ```js filename="cache-handler.js" copy + ```js filename="cache-handler.mjs" copy IncrementalCache.onCreation(async () => { let redisCache; diff --git a/docs/cache-handler-docs/src/pages/configuration/ttl.mdx b/docs/cache-handler-docs/src/pages/configuration/ttl.mdx index 0bc0b4a6..9a590ae5 100644 --- a/docs/cache-handler-docs/src/pages/configuration/ttl.mdx +++ b/docs/cache-handler-docs/src/pages/configuration/ttl.mdx @@ -19,7 +19,7 @@ In Next.js, ISR allows routes to be incrementally updated through the [`revalida Here's how to use TTL in preconfigured Handlers: -```js filename="cache-handler.js" copy +```js filename="cache-handler.mjs" copy IncrementalCache.onCreation(async () => { await client.connect(); @@ -52,7 +52,7 @@ For custom cache handlers, here are examples for Redis: #### Redis Strings Example -```js filename="cache-handler.js" copy +```js filename="cache-handler.mjs" copy IncrementalCache.onCreation(async () => { const cache = { // ... other cache methods ... @@ -79,7 +79,7 @@ IncrementalCache.onCreation(async () => { #### Redis Stack Example -```js filename="cache-handler.js" copy +```js filename="cache-handler.mjs" copy IncrementalCache.onCreation(async () => { const cache = { // ... other cache methods ... @@ -106,9 +106,8 @@ IncrementalCache.onCreation(async () => { #### Stale While Revalidate Example -```js filename="cache-handler.js" copy -const { calculateEvictionDelay } = require('@neshca/cache-handler/helpers'); - +```js filename="cache-handler.mjs" copy +import { calculateEvictionDelay } from 'neshca/cache-handler/helpers'; // ... IncrementalCache.onCreation(async () => { diff --git a/docs/cache-handler-docs/src/pages/configuration/use-file-system.mdx b/docs/cache-handler-docs/src/pages/configuration/use-file-system.mdx index b28607e8..44e1a186 100644 --- a/docs/cache-handler-docs/src/pages/configuration/use-file-system.mdx +++ b/docs/cache-handler-docs/src/pages/configuration/use-file-system.mdx @@ -6,8 +6,8 @@ You can use your file system to store the cache data alongside your shared cache The file system cache is enabled by default. You can disable it by setting `useFileSystem` to false in your `onCreation` hook: -```js filename="cache-handler.js" copy -const { IncrementalCache } = require('@neshca/cache-handler'); +```js filename="cache-handler.mjs" copy +import { IncrementalCache } from '@neshca/cache-handler'; IncrementalCache.onCreation(async () => { const cacheStore = new Map(); @@ -30,7 +30,7 @@ IncrementalCache.onCreation(async () => { }; }); -module.exports = IncrementalCache; +export default IncrementalCache; ``` @@ -60,11 +60,7 @@ The `createLruCache` function initializes the LRU cache handler. It includes met #### Example Usage -```js filename="cache-handler.js" copy -const { IncrementalCache } = require('@neshca/cache-handler'); -const createRedisCache = require('@neshca/cache-handler/redis-stack').default; -const createLruCache = require('@neshca/cache-handler/local-lru').default; - +```js filename="cache-handler.mjs" copy IncrementalCache.onCreation(async (context) => { const createRedisCache = await createRedisCache({ /* ... */ diff --git a/docs/cache-handler-docs/src/pages/installation.mdx b/docs/cache-handler-docs/src/pages/installation.mdx index ca7579a8..6a4660ce 100644 --- a/docs/cache-handler-docs/src/pages/installation.mdx +++ b/docs/cache-handler-docs/src/pages/installation.mdx @@ -43,42 +43,16 @@ pnpm create next-app --example cache-handler-redis cache-handler-redis-app ### Basic Custom Configuration 1. **Create a Cache Handler File**: - In your project root, create a file named `cache-handler.js` for your cache configuration. + In your project root, create a file named `cache-handler.mjs` for your cache configuration. 2. **Configure the Cache Handler**: Below is a basic setup example: - ```js filename="cache-handler.js" copy - const { IncrementalCache } = require('@neshca/cache-handler'); - - IncrementalCache.onCreation(async () => { - // Don't use Map in production. This is just an example. - const cacheStore = new Map(); - - const cache = { - async get(key) { - return cacheStore.get(key); - }, - async set(key, value) { - cacheStore.set(key, value); - }, - }; - - return { - cache, - useFileSystem: true, - }; - }); - - module.exports = IncrementalCache; - ``` - - EcmaScript modules can be used by adding the `.mjs` extension to the file and using an `import` statement instead of a `require` call: - ```js filename="cache-handler.mjs" copy import { IncrementalCache } from '@neshca/cache-handler'; IncrementalCache.onCreation(async () => { + // Don't use Map in production. This is just an example. const cacheStore = new Map(); const cache = { @@ -105,11 +79,11 @@ pnpm create next-app --example cache-handler-redis cache-handler-redis-app ```js filename="next.config.js" copy const nextConfig = { // './cache-handler.mjs' in case you're using EcmaScript modules. - cacheHandler: process.env.NODE_ENV === 'production' ? require.resolve('./cache-handler.js') : undefined, + cacheHandler: process.env.NODE_ENV === 'production' ? require.resolve('./cache-handler.mjs') : undefined, // Use `experimental` option instead of the `cacheHandler` property when using Next.js versions from 13.5.1 to 14.0.4 /* experimental: { incrementalCacheHandlerPath: - process.env.NODE_ENV === 'production' ? require.resolve('./cache-handler.js') : undefined, + process.env.NODE_ENV === 'production' ? require.resolve('./cache-handler.mjs') : undefined, }, */ }; @@ -118,7 +92,7 @@ pnpm create next-app --example cache-handler-redis cache-handler-redis-app Do not import @neshca/cache-handler to your components or pages. It is only meant to be used in{' '} - cache-handler.js files. + cache-handler.mjs files. ### Running Your Application diff --git a/docs/cache-handler-docs/src/pages/redis-stack-custom.mdx b/docs/cache-handler-docs/src/pages/redis-stack-custom.mdx index 233a02b0..eca15263 100644 --- a/docs/cache-handler-docs/src/pages/redis-stack-custom.mdx +++ b/docs/cache-handler-docs/src/pages/redis-stack-custom.mdx @@ -7,24 +7,23 @@ import { Callout } from 'nextra/components'; Redis instance. You can use any other way to set the URL. -Create a file called `cache-handler.js` next to you `next.config.js` with the following contents: +Create a file called `cache-handler.mjs` next to you `next.config.js` with the following contents: -```js filename="cache-handler.js" copy -const { IncrementalCache } = require('@neshca/cache-handler'); -const createLruCache = require('@neshca/cache-handler/local-lru').default; -const { createClient } = require('redis'); +```js filename="cache-handler.mjs" copy +import { IncrementalCache } from '@neshca/cache-handler'; +import createLruCache from '@neshca/cache-handler/local-lru'; +import { createClient } from 'redis'; const REVALIDATED_TAGS_KEY = 'sharedRevalidatedTags'; -const client = createClient({ - url: process.env.REDIS_URL ?? 'redis://localhost:6379', -}); +IncrementalCache.onCreation(async () => { + // always create a Redis client inside the `onCreation` callback + const client = createClient({ + url: process.env.REDIS_URL ?? 'redis://localhost:6379', + }); -client.on('error', (error) => { - console.error('Redis error:', error); -}); + client.on('error', (error) => {}); -IncrementalCache.onCreation(async () => { await client.connect(); // read more about TTL limitations https://caching-tools.github.io/next-shared-cache/configuration/ttl @@ -100,7 +99,7 @@ IncrementalCache.onCreation(async () => { }; }); -module.exports = IncrementalCache; +export default IncrementalCache; ``` Ensure that the Redis instance is running when you build your Next.js app. diff --git a/docs/cache-handler-docs/src/pages/redis-stack.mdx b/docs/cache-handler-docs/src/pages/redis-stack.mdx index 73cb1405..6d041594 100644 --- a/docs/cache-handler-docs/src/pages/redis-stack.mdx +++ b/docs/cache-handler-docs/src/pages/redis-stack.mdx @@ -7,23 +7,22 @@ import { Callout } from 'nextra/components'; Redis instance. You can use any other way to set the URL. -Create a file called `cache-handler.js` next to you `next.config.js` with the following contents: +Create a file called `cache-handler.mjs` next to you `next.config.js` with the following contents: -```js filename="cache-handler.js" copy -const { IncrementalCache } = require('@neshca/cache-handler'); -const createRedisCache = require('@neshca/cache-handler/redis-stack').default; -const createLruCache = require('@neshca/cache-handler/local-lru').default; -const { createClient } = require('redis'); +```js filename="cache-handler.mjs" copy +import { IncrementalCache } from '@neshca/cache-handler'; +import createLruCache from '@neshca/cache-handler/local-lru'; +import createRedisCache from '@neshca/cache-handler/redis-stack'; +import { createClient } from 'redis'; -const client = createClient({ - url: process.env.REDIS_URL ?? 'redis://localhost:6379', -}); +IncrementalCache.onCreation(async () => { + // always create a Redis client inside the `onCreation` callback + const client = createClient({ + url: process.env.REDIS_URL ?? 'redis://localhost:6379', + }); -client.on('error', (error) => { - console.error('Redis error:', error); -}); + client.on('error', () => {}); -IncrementalCache.onCreation(async () => { // read more about TTL limitations https://caching-tools.github.io/next-shared-cache/configuration/ttl const useTtl = false; @@ -47,7 +46,7 @@ IncrementalCache.onCreation(async () => { }; }); -module.exports = IncrementalCache; +export default IncrementalCache; ``` Ensure that the Redis instance is running when you build your Next.js app. diff --git a/docs/cache-handler-docs/src/pages/redis-strings-custom.mdx b/docs/cache-handler-docs/src/pages/redis-strings-custom.mdx index b990ed80..cfb5f5bc 100644 --- a/docs/cache-handler-docs/src/pages/redis-strings-custom.mdx +++ b/docs/cache-handler-docs/src/pages/redis-strings-custom.mdx @@ -13,25 +13,24 @@ npm i -D @neshca/json-replacer-reviver Redis instance. You can use any other way to set the URL. -Create a file called `cache-handler.js` next to your `next.config.js` with the following contents: +Create a file called `cache-handler.mjs` next to your `next.config.js` with the following contents: -```js filename="cache-handler.js" copy -const { IncrementalCache } = require('@neshca/cache-handler'); -const createLruCache = require('@neshca/cache-handler/local-lru').default; -const { reviveFromBase64Representation, replaceJsonWithBase64 } = require('@neshca/json-replacer-reviver'); -const { createClient } = require('redis'); +```js filename="cache-handler.mjs" copy +import { IncrementalCache } from '@neshca/cache-handler'; +import createLruCache from '@neshca/cache-handler/local-lru'; +import { reviveFromBase64Representation, replaceJsonWithBase64 } from '@neshca/json-replacer-reviver'; +import { createClient } from 'redis'; const REVALIDATED_TAGS_KEY = 'sharedRevalidatedTags'; -const client = createClient({ - url: process.env.REDIS_URL ?? 'redis://localhost:6379', -}); +IncrementalCache.onCreation(async () => { + // always create a Redis client inside the `onCreation` callback + const client = createClient({ + url: process.env.REDIS_URL ?? 'redis://localhost:6379', + }); -client.on('error', (error) => { - console.error('Redis error:', error); -}); + client.on('error', () => {}); -IncrementalCache.onCreation(async () => { // read more about TTL limitations https://caching-tools.github.io/next-shared-cache/configuration/ttl const useTtl = false; @@ -97,7 +96,7 @@ IncrementalCache.onCreation(async () => { }; }); -module.exports = IncrementalCache; +export default IncrementalCache; ``` Ensure that the Redis instance is running when you build your Next.js app. diff --git a/docs/cache-handler-docs/src/pages/redis-strings.mdx b/docs/cache-handler-docs/src/pages/redis-strings.mdx index 1143829d..3ac83b21 100644 --- a/docs/cache-handler-docs/src/pages/redis-strings.mdx +++ b/docs/cache-handler-docs/src/pages/redis-strings.mdx @@ -7,23 +7,21 @@ import { Callout } from 'nextra/components'; Redis instance. You can use any other way to set the URL. -Create a file called `cache-handler.js` next to your `next.config.js` with the following contents: +Create a file called `cache-handler.mjs` next to your `next.config.js` with the following contents: -```js filename="cache-handler.js" copy -const { IncrementalCache } = require('@neshca/cache-handler'); -const createRedisCache = require('@neshca/cache-handler/redis-strings').default; -const createLruCache = require('@neshca/cache-handler/local-lru').default; -const { createClient } = require('redis'); +```js filename="cache-handler.mjs" copy +import { IncrementalCache } from '@neshca/cache-handler'; +import createLruCache from '@neshca/cache-handler/local-lru'; +import createRedisCache from '@neshca/cache-handler/redis-strings'; +import { createClient } from 'redis'; -const client = createClient({ - url: process.env.REDIS_URL ?? 'redis://localhost:6379', -}); +IncrementalCache.onCreation(async () => { + const client = createClient({ + url: process.env.REDIS_URL ?? 'redis://localhost:6379', + }); -client.on('error', (error) => { - console.error('Redis error:', error); -}); + client.on('error', (error) => {}); -IncrementalCache.onCreation(async () => { // read more about TTL limitations https://caching-tools.github.io/next-shared-cache/configuration/ttl const useTtl = false; @@ -47,7 +45,7 @@ IncrementalCache.onCreation(async () => { }; }); -module.exports = IncrementalCache; +export default IncrementalCache; ``` Ensure that the Redis instance is running when you build your Next.js app. diff --git a/docs/cache-handler-docs/src/pages/server.mdx b/docs/cache-handler-docs/src/pages/server.mdx index 2a8555cf..e8aa65f2 100644 --- a/docs/cache-handler-docs/src/pages/server.mdx +++ b/docs/cache-handler-docs/src/pages/server.mdx @@ -25,11 +25,12 @@ PORT=8080 HOST=localhost npx next-cache-server to the URL of your `@neshca/server`. You can use any other way to set the URL. -Create a file called `cache-handler.js` next to you `next.config.js` with the following contents: +Create a file called `cache-handler.mjs` next to you `next.config.js` with the following contents: -```js filename="cache-handler.js" copy -const { IncrementalCache } = require('@neshca/cache-handler'); -const { createHandler } = require('@neshca/cache-handler/server'); +```js filename="cache-handler.mjs" copy +import { IncrementalCache } from '@neshca/cache-handler'; +import createLruCache from '@neshca/cache-handler/local-lru'; +import createServerCache from '@neshca/cache-handler/server'; const baseUrl = process.env.REMOTE_CACHE_SERVER_BASE_URL ?? 'http://localhost:8080'; @@ -46,5 +47,5 @@ IncrementalCache.onCreation(() => { }; }); -module.exports = IncrementalCache; +export default IncrementalCache; ``` diff --git a/docs/cache-handler-docs/src/pages/troubleshooting.mdx b/docs/cache-handler-docs/src/pages/troubleshooting.mdx index d68a9d98..303b149f 100644 --- a/docs/cache-handler-docs/src/pages/troubleshooting.mdx +++ b/docs/cache-handler-docs/src/pages/troubleshooting.mdx @@ -6,7 +6,7 @@ You can verify if the cache handler is active by using either of the following m Add `console.log` statements to your cache handler: -```js filename="cache-handler.js" +```js filename="cache-handler.mjs" /* ... */ const cache = { async get(key) { diff --git a/packages/cache-handler/src/cache-handler.ts b/packages/cache-handler/src/cache-handler.ts index 8a6b82ee..d99a6f85 100644 --- a/packages/cache-handler/src/cache-handler.ts +++ b/packages/cache-handler/src/cache-handler.ts @@ -128,7 +128,7 @@ export type CacheCreationContext = { * * @example * ```js - * // cache-handler.js + * // cache-handler.mjs * IncrementalCache.onCreation(async ({ buildId }) => { * let redisCache; * @@ -193,7 +193,7 @@ export class IncrementalCache implements CacheHandler { * * @example * ```js - * // cache-handler.js + * // cache-handler.mjs * IncrementalCache.onCreation(async () => { * const = redisCache = await createRedisCache({ * client, From 7201aaaa6e29b61f2bb00ec112de158b54cd21be Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 3 Feb 2024 17:50:39 +0300 Subject: [PATCH 092/458] Bump the pino group with 1 update (#316) Bumps the pino group with 1 update: [pino](https://github.com/pinojs/pino). Updates `pino` from 8.17.2 to 8.18.0 - [Release notes](https://github.com/pinojs/pino/releases) - [Commits](https://github.com/pinojs/pino/compare/v8.17.2...v8.18.0) --- updated-dependencies: - dependency-name: pino dependency-type: direct:production update-type: version-update:semver-minor dependency-group: pino ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- internal/backend/package.json | 2 +- package-lock.json | 10 +++++----- packages/server/package.json | 2 +- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/internal/backend/package.json b/internal/backend/package.json index 22151876..07e9b775 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -11,7 +11,7 @@ }, "dependencies": { "fastify": "4.26.0", - "pino": "8.17.2" + "pino": "8.18.0" }, "devDependencies": { "@repo/typescript-config": "*", diff --git a/package-lock.json b/package-lock.json index 1b11dcb0..a05a6258 100644 --- a/package-lock.json +++ b/package-lock.json @@ -223,7 +223,7 @@ "license": "MIT", "dependencies": { "fastify": "4.26.0", - "pino": "8.17.2" + "pino": "8.18.0" }, "devDependencies": { "@repo/typescript-config": "*", @@ -11891,9 +11891,9 @@ } }, "node_modules/pino": { - "version": "8.17.2", - "resolved": "https://registry.npmjs.org/pino/-/pino-8.17.2.tgz", - "integrity": "sha512-LA6qKgeDMLr2ux2y/YiUt47EfgQ+S9LznBWOJdN3q1dx2sv0ziDLUBeVpyVv17TEcGCBuWf0zNtg3M5m1NhhWQ==", + "version": "8.18.0", + "resolved": "https://registry.npmjs.org/pino/-/pino-8.18.0.tgz", + "integrity": "sha512-Mz/gKiRyuXu4HnpHgi1YWdHQCoWMufapzooisvFn78zl4dZciAxS+YeRkUxXl1ee/SzU80YCz1zpECCh4oC6Aw==", "dependencies": { "atomic-sleep": "^1.0.0", "fast-redact": "^3.1.1", @@ -16169,7 +16169,7 @@ "license": "MIT", "dependencies": { "fastify": "4.26.0", - "pino": "8.17.2" + "pino": "8.18.0" }, "bin": { "next-cache-server": "dist/server.js" diff --git a/packages/server/package.json b/packages/server/package.json index 8253767d..c1c658ac 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -26,7 +26,7 @@ }, "dependencies": { "fastify": "4.26.0", - "pino": "8.17.2" + "pino": "8.18.0" }, "devDependencies": { "@neshca/next-common": "*", From 0602433407bf21048e8bd2b0d5f9a55a31dc18c1 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 3 Feb 2024 14:57:18 +0000 Subject: [PATCH 093/458] Bump the nextra group with 2 updates (#317) --- docs/cache-handler-docs/package.json | 4 +- package-lock.json | 199 ++++++++++++--------------- 2 files changed, 89 insertions(+), 114 deletions(-) diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index b7a1245f..05328e2f 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -12,8 +12,8 @@ }, "dependencies": { "next": "14.1.0", - "nextra": "2.13.2", - "nextra-theme-docs": "2.13.2", + "nextra": "2.13.3", + "nextra-theme-docs": "2.13.3", "react": "18.2.0", "react-dom": "18.2.0" }, diff --git a/package-lock.json b/package-lock.json index a05a6258..fb7b84fe 100644 --- a/package-lock.json +++ b/package-lock.json @@ -111,8 +111,8 @@ "version": "0.6.6", "dependencies": { "next": "14.1.0", - "nextra": "2.13.2", - "nextra-theme-docs": "2.13.2", + "nextra": "2.13.3", + "nextra-theme-docs": "2.13.3", "react": "18.2.0", "react-dom": "18.2.0" }, @@ -137,87 +137,6 @@ "glob": "10.3.10" } }, - "docs/cache-handler-docs/node_modules/nextra": { - "version": "2.13.2", - "resolved": "https://registry.npmjs.org/nextra/-/nextra-2.13.2.tgz", - "integrity": "sha512-pIgOSXNUqTz1laxV4ChFZOU7lzJAoDHHaBPj8L09PuxrLKqU1BU/iZtXAG6bQeKCx8EPdBsoXxEuENnL9QGnGA==", - "dependencies": { - "@headlessui/react": "^1.7.10", - "@mdx-js/mdx": "^2.3.0", - "@mdx-js/react": "^2.3.0", - "@napi-rs/simple-git": "^0.1.9", - "@theguild/remark-mermaid": "^0.0.5", - "@theguild/remark-npm2yarn": "^0.2.0", - "clsx": "^2.0.0", - "github-slugger": "^2.0.0", - "graceful-fs": "^4.2.11", - "gray-matter": "^4.0.3", - "katex": "^0.16.9", - "lodash.get": "^4.4.2", - "next-mdx-remote": "^4.2.1", - "p-limit": "^3.1.0", - "rehype-katex": "^7.0.0", - "rehype-pretty-code": "0.9.11", - "rehype-raw": "^7.0.0", - "remark-gfm": "^3.0.1", - "remark-math": "^5.1.1", - "remark-reading-time": "^2.0.1", - "shiki": "^0.14.3", - "slash": "^3.0.0", - "title": "^3.5.3", - "unist-util-remove": "^4.0.0", - "unist-util-visit": "^5.0.0", - "zod": "^3.22.3" - }, - "engines": { - "node": ">=16" - }, - "peerDependencies": { - "next": ">=9.5.3", - "react": ">=16.13.1", - "react-dom": ">=16.13.1" - } - }, - "docs/cache-handler-docs/node_modules/nextra-theme-docs": { - "version": "2.13.2", - "resolved": "https://registry.npmjs.org/nextra-theme-docs/-/nextra-theme-docs-2.13.2.tgz", - "integrity": "sha512-yE4umXaImp1/kf/sFciPj2+EFrNSwd9Db26hi98sIIiujzGf3+9eUgAz45vF9CwBw50FSXxm1QGRcY+slQ4xQQ==", - "dependencies": { - "@headlessui/react": "^1.7.10", - "@popperjs/core": "^2.11.6", - "clsx": "^2.0.0", - "escape-string-regexp": "^5.0.0", - "flexsearch": "^0.7.31", - "focus-visible": "^5.2.0", - "git-url-parse": "^13.1.0", - "intersection-observer": "^0.12.2", - "match-sorter": "^6.3.1", - "next-seo": "^6.0.0", - "next-themes": "^0.2.1", - "scroll-into-view-if-needed": "^3.0.0", - "zod": "^3.22.3" - }, - "peerDependencies": { - "next": ">=9.5.3", - "nextra": "2.13.2", - "react": ">=16.13.1", - "react-dom": ">=16.13.1" - } - }, - "docs/cache-handler-docs/node_modules/p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "dependencies": { - "yocto-queue": "^0.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "internal/backend": { "version": "0.0.0", "license": "MIT", @@ -4810,30 +4729,6 @@ "cytoscape": "^3.2.0" } }, - "node_modules/cytoscape-fcose": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/cytoscape-fcose/-/cytoscape-fcose-2.2.0.tgz", - "integrity": "sha512-ki1/VuRIHFCzxWNrsshHYPs6L7TvLu3DL+TyIGEsRcvVERmxokbf5Gdk7mFxZnTdiGtnA4cfSmjZJMviqSuZrQ==", - "dependencies": { - "cose-base": "^2.2.0" - }, - "peerDependencies": { - "cytoscape": "^3.2.0" - } - }, - "node_modules/cytoscape-fcose/node_modules/cose-base": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/cose-base/-/cose-base-2.2.0.tgz", - "integrity": "sha512-AzlgcsCbUMymkADOJtQm3wO9S3ltPfYOFD5033keQn9NJzIbtnZj+UdBJe7DYml/8TdbtHJW3j58SOnKhWY/5g==", - "dependencies": { - "layout-base": "^2.0.0" - } - }, - "node_modules/cytoscape-fcose/node_modules/layout-base": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/layout-base/-/layout-base-2.0.1.tgz", - "integrity": "sha512-dp3s92+uNI1hWIpPGH3jK2kxE2lMjdXdr+DH8ynZHpd6PUlH6x6cbuXnoMmiNumznqaNO31xu9e79F0uuZ0JFg==" - }, "node_modules/d3": { "version": "7.8.5", "resolved": "https://registry.npmjs.org/d3/-/d3-7.8.5.tgz", @@ -10056,16 +9951,15 @@ } }, "node_modules/mermaid": { - "version": "10.7.0", - "resolved": "https://registry.npmjs.org/mermaid/-/mermaid-10.7.0.tgz", - "integrity": "sha512-PsvGupPCkN1vemAAjScyw4pw34p4/0dZkSrqvAB26hUvJulOWGIwt35FZWmT9wPIi4r0QLa5X0PB4YLIGn0/YQ==", + "version": "10.8.0", + "resolved": "https://registry.npmjs.org/mermaid/-/mermaid-10.8.0.tgz", + "integrity": "sha512-9CzfSreRjdDJxX796+jW4zjEq0DVw5xVF0nWsqff8OTbrt+ml0TZ5PyYUjjUZJa2NYxYJZZXewEquxGiM8qZEA==", "dependencies": { "@braintree/sanitize-url": "^6.0.1", "@types/d3-scale": "^4.0.3", "@types/d3-scale-chromatic": "^3.0.0", - "cytoscape": "^3.23.0", + "cytoscape": "^3.28.1", "cytoscape-cose-bilkent": "^4.1.0", - "cytoscape-fcose": "^2.1.0", "d3": "^7.4.0", "d3-sankey": "^0.12.3", "dagre-d3-es": "7.0.10", @@ -11277,6 +11171,87 @@ "node": ">= 10" } }, + "node_modules/nextra": { + "version": "2.13.3", + "resolved": "https://registry.npmjs.org/nextra/-/nextra-2.13.3.tgz", + "integrity": "sha512-OBVuyQKh+oqrbVt0AosgNYnuReWuNrtJVEN7q18b/oEg2wEpuiq3UJfmIvGgOdNYc3zv3OYrzbcq7IhwtdHHEw==", + "dependencies": { + "@headlessui/react": "^1.7.17", + "@mdx-js/mdx": "^2.3.0", + "@mdx-js/react": "^2.3.0", + "@napi-rs/simple-git": "^0.1.9", + "@theguild/remark-mermaid": "^0.0.5", + "@theguild/remark-npm2yarn": "^0.2.0", + "clsx": "^2.0.0", + "github-slugger": "^2.0.0", + "graceful-fs": "^4.2.11", + "gray-matter": "^4.0.3", + "katex": "^0.16.9", + "lodash.get": "^4.4.2", + "next-mdx-remote": "^4.2.1", + "p-limit": "^3.1.0", + "rehype-katex": "^7.0.0", + "rehype-pretty-code": "0.9.11", + "rehype-raw": "^7.0.0", + "remark-gfm": "^3.0.1", + "remark-math": "^5.1.1", + "remark-reading-time": "^2.0.1", + "shiki": "^0.14.3", + "slash": "^3.0.0", + "title": "^3.5.3", + "unist-util-remove": "^4.0.0", + "unist-util-visit": "^5.0.0", + "zod": "^3.22.3" + }, + "engines": { + "node": ">=16" + }, + "peerDependencies": { + "next": ">=9.5.3", + "react": ">=16.13.1", + "react-dom": ">=16.13.1" + } + }, + "node_modules/nextra-theme-docs": { + "version": "2.13.3", + "resolved": "https://registry.npmjs.org/nextra-theme-docs/-/nextra-theme-docs-2.13.3.tgz", + "integrity": "sha512-B6xrnR86Gg4GzV56AomSwtmvSyAvnJz1xKOGGav1XKxkwvC8QeI17jdt/CqiKyIObJ+5bLqSFiKhaAZ5DYQP3g==", + "dependencies": { + "@headlessui/react": "^1.7.17", + "@popperjs/core": "^2.11.8", + "clsx": "^2.0.0", + "escape-string-regexp": "^5.0.0", + "flexsearch": "^0.7.31", + "focus-visible": "^5.2.0", + "git-url-parse": "^13.1.0", + "intersection-observer": "^0.12.2", + "match-sorter": "^6.3.1", + "next-seo": "^6.0.0", + "next-themes": "^0.2.1", + "scroll-into-view-if-needed": "^3.1.0", + "zod": "^3.22.3" + }, + "peerDependencies": { + "next": ">=9.5.3", + "nextra": "2.13.3", + "react": ">=16.13.1", + "react-dom": ">=16.13.1" + } + }, + "node_modules/nextra/node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/node-domexception": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/node-domexception/-/node-domexception-1.0.0.tgz", From 34d34e1767f647290c42a20ebfb4ef1ac1694c69 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 3 Feb 2024 15:04:14 +0000 Subject: [PATCH 094/458] Bump @vercel/style-guide from 5.1.0 to 5.2.0 (#318) --- internal/eslint-config/package.json | 2 +- internal/prettier-config/package.json | 2 +- package-lock.json | 200 +++++++++----------------- 3 files changed, 66 insertions(+), 138 deletions(-) diff --git a/internal/eslint-config/package.json b/internal/eslint-config/package.json index 6aaad6b0..a946b825 100644 --- a/internal/eslint-config/package.json +++ b/internal/eslint-config/package.json @@ -8,7 +8,7 @@ "devDependencies": { "@typescript-eslint/eslint-plugin": "6.20.0", "@typescript-eslint/parser": "6.20.0", - "@vercel/style-guide": "5.1.0", + "@vercel/style-guide": "5.2.0", "eslint-config-prettier": "9.1.0", "eslint-config-turbo": "1.12.2", "eslint-plugin-only-warn": "1.1.0", diff --git a/internal/prettier-config/package.json b/internal/prettier-config/package.json index 0584dd73..65206be6 100644 --- a/internal/prettier-config/package.json +++ b/internal/prettier-config/package.json @@ -4,6 +4,6 @@ "private": true, "license": "MIT", "devDependencies": { - "@vercel/style-guide": "5.1.0" + "@vercel/style-guide": "5.2.0" } } diff --git a/package-lock.json b/package-lock.json index fb7b84fe..b32cfc2c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -62,6 +62,15 @@ "typescript": "5.3.3" } }, + "apps/cache-testing/node_modules/@next/eslint-plugin-next": { + "version": "14.1.1-canary.1", + "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.1.1-canary.1.tgz", + "integrity": "sha512-NerzDeqcUMbTuU/yc3NkDh7HOqZSEHNCEcUmmtEWhE17YLOt36necRQsfCbCFarRyWOWVJz2BMJbR2E8PqKrLw==", + "dev": true, + "dependencies": { + "glob": "10.3.10" + } + }, "apps/cache-testing/node_modules/next": { "version": "14.1.1-canary.1", "resolved": "https://registry.npmjs.org/next/-/next-14.1.1-canary.1.tgz", @@ -128,15 +137,6 @@ "typescript": "5.3.3" } }, - "docs/cache-handler-docs/node_modules/@next/eslint-plugin-next": { - "version": "14.1.0", - "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.1.0.tgz", - "integrity": "sha512-x4FavbNEeXx/baD/zC/SdrvkjSby8nBn8KcCREqk6UuwvwoAPZmaV8TFCAuo/cpovBRTIY67mHhe86MQQm/68Q==", - "dev": true, - "dependencies": { - "glob": "10.3.10" - } - }, "internal/backend": { "version": "0.0.0", "license": "MIT", @@ -159,74 +159,13 @@ "devDependencies": { "@typescript-eslint/eslint-plugin": "6.20.0", "@typescript-eslint/parser": "6.20.0", - "@vercel/style-guide": "5.1.0", + "@vercel/style-guide": "5.2.0", "eslint-config-prettier": "9.1.0", "eslint-config-turbo": "1.12.2", "eslint-plugin-only-warn": "1.1.0", "typescript": "5.3.3" } }, - "internal/eslint-config/node_modules/@next/eslint-plugin-next": { - "version": "14.1.0", - "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.1.0.tgz", - "integrity": "sha512-x4FavbNEeXx/baD/zC/SdrvkjSby8nBn8KcCREqk6UuwvwoAPZmaV8TFCAuo/cpovBRTIY67mHhe86MQQm/68Q==", - "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "glob": "10.3.10" - } - }, - "internal/eslint-config/node_modules/@vercel/style-guide": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/@vercel/style-guide/-/style-guide-5.1.0.tgz", - "integrity": "sha512-L9lWYePIycm7vIOjDLj+mmMdmmPkW3/brHjgq+nJdvMOrL7Hdk/19w8X583HYSk0vWsq494o5Qkh6x5+uW7ljg==", - "dev": true, - "dependencies": { - "@babel/core": "^7.22.11", - "@babel/eslint-parser": "^7.22.11", - "@rushstack/eslint-patch": "^1.3.3", - "@typescript-eslint/eslint-plugin": "^6.5.0", - "@typescript-eslint/parser": "^6.5.0", - "eslint-config-prettier": "^9.0.0", - "eslint-import-resolver-alias": "^1.1.2", - "eslint-import-resolver-typescript": "^3.6.0", - "eslint-plugin-eslint-comments": "^3.2.0", - "eslint-plugin-import": "^2.28.1", - "eslint-plugin-jest": "^27.2.3", - "eslint-plugin-jsx-a11y": "^6.7.1", - "eslint-plugin-playwright": "^0.16.0", - "eslint-plugin-react": "^7.33.2", - "eslint-plugin-react-hooks": "^4.6.0", - "eslint-plugin-testing-library": "^6.0.1", - "eslint-plugin-tsdoc": "^0.2.17", - "eslint-plugin-unicorn": "^48.0.1", - "prettier-plugin-packagejson": "^2.4.5" - }, - "engines": { - "node": ">=16" - }, - "peerDependencies": { - "@next/eslint-plugin-next": ">=12.3.0 <15", - "eslint": ">=8.48.0 <9", - "prettier": ">=3.0.0 <4", - "typescript": ">=4.8.0 <6" - }, - "peerDependenciesMeta": { - "@next/eslint-plugin-next": { - "optional": true - }, - "eslint": { - "optional": true - }, - "prettier": { - "optional": true - }, - "typescript": { - "optional": true - } - } - }, "internal/next-common": { "name": "@neshca/next-common", "version": "0.0.0", @@ -306,68 +245,7 @@ "version": "0.0.0", "license": "MIT", "devDependencies": { - "@vercel/style-guide": "5.1.0" - } - }, - "internal/prettier-config/node_modules/@next/eslint-plugin-next": { - "version": "14.1.0", - "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.1.0.tgz", - "integrity": "sha512-x4FavbNEeXx/baD/zC/SdrvkjSby8nBn8KcCREqk6UuwvwoAPZmaV8TFCAuo/cpovBRTIY67mHhe86MQQm/68Q==", - "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "glob": "10.3.10" - } - }, - "internal/prettier-config/node_modules/@vercel/style-guide": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/@vercel/style-guide/-/style-guide-5.1.0.tgz", - "integrity": "sha512-L9lWYePIycm7vIOjDLj+mmMdmmPkW3/brHjgq+nJdvMOrL7Hdk/19w8X583HYSk0vWsq494o5Qkh6x5+uW7ljg==", - "dev": true, - "dependencies": { - "@babel/core": "^7.22.11", - "@babel/eslint-parser": "^7.22.11", - "@rushstack/eslint-patch": "^1.3.3", - "@typescript-eslint/eslint-plugin": "^6.5.0", - "@typescript-eslint/parser": "^6.5.0", - "eslint-config-prettier": "^9.0.0", - "eslint-import-resolver-alias": "^1.1.2", - "eslint-import-resolver-typescript": "^3.6.0", - "eslint-plugin-eslint-comments": "^3.2.0", - "eslint-plugin-import": "^2.28.1", - "eslint-plugin-jest": "^27.2.3", - "eslint-plugin-jsx-a11y": "^6.7.1", - "eslint-plugin-playwright": "^0.16.0", - "eslint-plugin-react": "^7.33.2", - "eslint-plugin-react-hooks": "^4.6.0", - "eslint-plugin-testing-library": "^6.0.1", - "eslint-plugin-tsdoc": "^0.2.17", - "eslint-plugin-unicorn": "^48.0.1", - "prettier-plugin-packagejson": "^2.4.5" - }, - "engines": { - "node": ">=16" - }, - "peerDependencies": { - "@next/eslint-plugin-next": ">=12.3.0 <15", - "eslint": ">=8.48.0 <9", - "prettier": ">=3.0.0 <4", - "typescript": ">=4.8.0 <6" - }, - "peerDependenciesMeta": { - "@next/eslint-plugin-next": { - "optional": true - }, - "eslint": { - "optional": true - }, - "prettier": { - "optional": true - }, - "typescript": { - "optional": true - } + "@vercel/style-guide": "5.2.0" } }, "internal/typescript-config": { @@ -2207,9 +2085,9 @@ "integrity": "sha512-hkxKhWvFieo9wYuRcsQtDtHzZrs+spjxglCU9QLdwpSsRwifr1oxm+UvuhCNTQ7V8qZZPSEnhU0FMWIv3oo6Eg==" }, "node_modules/@next/eslint-plugin-next": { - "version": "14.1.1-canary.1", - "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.1.1-canary.1.tgz", - "integrity": "sha512-NerzDeqcUMbTuU/yc3NkDh7HOqZSEHNCEcUmmtEWhE17YLOt36necRQsfCbCFarRyWOWVJz2BMJbR2E8PqKrLw==", + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.1.0.tgz", + "integrity": "sha512-x4FavbNEeXx/baD/zC/SdrvkjSby8nBn8KcCREqk6UuwvwoAPZmaV8TFCAuo/cpovBRTIY67mHhe86MQQm/68Q==", "dev": true, "dependencies": { "glob": "10.3.10" @@ -3415,6 +3293,56 @@ "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz", "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==" }, + "node_modules/@vercel/style-guide": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@vercel/style-guide/-/style-guide-5.2.0.tgz", + "integrity": "sha512-fNSKEaZvSkiBoF6XEefs8CcgAV9K9e+MbcsDZjUsktHycKdA0jvjAzQi1W/FzLS+Nr5zZ6oejCwq/97dHUKe0g==", + "dev": true, + "dependencies": { + "@babel/core": "^7.22.11", + "@babel/eslint-parser": "^7.22.11", + "@rushstack/eslint-patch": "^1.3.3", + "@typescript-eslint/eslint-plugin": "^6.5.0", + "@typescript-eslint/parser": "^6.5.0", + "eslint-config-prettier": "^9.0.0", + "eslint-import-resolver-alias": "^1.1.2", + "eslint-import-resolver-typescript": "^3.6.0", + "eslint-plugin-eslint-comments": "^3.2.0", + "eslint-plugin-import": "^2.28.1", + "eslint-plugin-jest": "^27.2.3", + "eslint-plugin-jsx-a11y": "^6.7.1", + "eslint-plugin-playwright": "^0.16.0", + "eslint-plugin-react": "^7.33.2", + "eslint-plugin-react-hooks": "^4.6.0", + "eslint-plugin-testing-library": "^6.0.1", + "eslint-plugin-tsdoc": "^0.2.17", + "eslint-plugin-unicorn": "^48.0.1", + "prettier-plugin-packagejson": "^2.4.5" + }, + "engines": { + "node": ">=16" + }, + "peerDependencies": { + "@next/eslint-plugin-next": ">=12.3.0 <15", + "eslint": ">=8.48.0 <9", + "prettier": ">=3.0.0 <4", + "typescript": ">=4.8.0 <6" + }, + "peerDependenciesMeta": { + "@next/eslint-plugin-next": { + "optional": true + }, + "eslint": { + "optional": true + }, + "prettier": { + "optional": true + }, + "typescript": { + "optional": true + } + } + }, "node_modules/abort-controller": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz", From fbdb6b6c13423ae15db1a75ae5770588c3e74bb9 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 3 Feb 2024 15:12:11 +0000 Subject: [PATCH 095/458] Bump @playwright/test from 1.41.1 to 1.41.2 (#319) --- apps/cache-testing/package.json | 2 +- package-lock.json | 24 ++++++++++++------------ 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 335da48a..3010b654 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -25,7 +25,7 @@ "@neshca/cache-handler": "*", "@neshca/json-replacer-reviver": "*", "@next/eslint-plugin-next": "14.1.1-canary.1", - "@playwright/test": "1.41.1", + "@playwright/test": "1.41.2", "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.2", diff --git a/package-lock.json b/package-lock.json index b32cfc2c..a62669fb 100644 --- a/package-lock.json +++ b/package-lock.json @@ -45,7 +45,7 @@ "@neshca/cache-handler": "*", "@neshca/json-replacer-reviver": "*", "@next/eslint-plugin-next": "14.1.1-canary.1", - "@playwright/test": "1.41.1", + "@playwright/test": "1.41.2", "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.2", @@ -2397,12 +2397,12 @@ } }, "node_modules/@playwright/test": { - "version": "1.41.1", - "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.41.1.tgz", - "integrity": "sha512-9g8EWTjiQ9yFBXc6HjCWe41msLpxEX0KhmfmPl9RPLJdfzL4F0lg2BdJ91O9azFdl11y1pmpwdjBiSxvqc+btw==", + "version": "1.41.2", + "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.41.2.tgz", + "integrity": "sha512-qQB9h7KbibJzrDpkXkYvsmiDJK14FULCCZgEcoe2AvFAS64oCirWTwzTlAYEbKaRxWs5TFesE1Na6izMv3HfGg==", "dev": true, "dependencies": { - "playwright": "1.41.1" + "playwright": "1.41.2" }, "bin": { "playwright": "cli.js" @@ -11874,12 +11874,12 @@ } }, "node_modules/playwright": { - "version": "1.41.1", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.41.1.tgz", - "integrity": "sha512-gdZAWG97oUnbBdRL3GuBvX3nDDmUOuqzV/D24dytqlKt+eI5KbwusluZRGljx1YoJKZ2NRPaeWiFTeGZO7SosQ==", + "version": "1.41.2", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.41.2.tgz", + "integrity": "sha512-v0bOa6H2GJChDL8pAeLa/LZC4feoAMbSQm1/jF/ySsWWoaNItvrMP7GEkvEEFyCTUYKMxjQKaTSg5up7nR6/8A==", "dev": true, "dependencies": { - "playwright-core": "1.41.1" + "playwright-core": "1.41.2" }, "bin": { "playwright": "cli.js" @@ -11892,9 +11892,9 @@ } }, "node_modules/playwright-core": { - "version": "1.41.1", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.41.1.tgz", - "integrity": "sha512-/KPO5DzXSMlxSX77wy+HihKGOunh3hqndhqeo/nMxfigiKzogn8kfL0ZBDu0L1RKgan5XHCPmn6zXd2NUJgjhg==", + "version": "1.41.2", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.41.2.tgz", + "integrity": "sha512-VaTvwCA4Y8kxEe+kfm2+uUUw5Lubf38RxF7FpBxLPmGe5sdNkSg5e3ChEigaGrX7qdqT3pt2m/98LiyvU2x6CA==", "dev": true, "bin": { "playwright-core": "cli.js" From df38145aa2ba2204bdef2cbc16bb0a32a554634e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 3 Feb 2024 15:24:09 +0000 Subject: [PATCH 096/458] Bump the definitely-typed group with 2 updates (#320) --- apps/cache-testing/package.json | 4 +-- docs/cache-handler-docs/package.json | 4 +-- internal/backend/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 34 ++++++++++----------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 10 files changed, 28 insertions(+), 28 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 3010b654..b563617c 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -29,8 +29,8 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.2", - "@types/node": "20.11.15", - "@types/react": "18.2.51", + "@types/node": "20.11.16", + "@types/react": "18.2.52", "@types/react-dom": "18.2.18", "dotenv-cli": "7.3.0", "eslint": "8.56.0", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 05328e2f..3ddfb352 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -22,8 +22,8 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.2", - "@types/node": "20.11.15", - "@types/react": "18.2.51", + "@types/node": "20.11.16", + "@types/react": "18.2.52", "@types/react-dom": "18.2.18", "eslint": "8.56.0", "typescript": "5.3.3" diff --git a/internal/backend/package.json b/internal/backend/package.json index 07e9b775..380d4bcb 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.15", + "@types/node": "20.11.16", "pino-pretty": "10.3.1", "rimraf": "5.0.5", "tsx": "4.7.0", diff --git a/internal/next-common/package.json b/internal/next-common/package.json index 698897f4..5dbddf2c 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.15", + "@types/node": "20.11.16", "rimraf": "5.0.5", "typescript": "5.3.3" } diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index 6aa6dd21..fcc6e293 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -16,7 +16,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.15", + "@types/node": "20.11.16", "rimraf": "5.0.5", "typescript": "5.3.3" } diff --git a/package-lock.json b/package-lock.json index a62669fb..5f7a1d57 100644 --- a/package-lock.json +++ b/package-lock.json @@ -49,8 +49,8 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.2", - "@types/node": "20.11.15", - "@types/react": "18.2.51", + "@types/node": "20.11.16", + "@types/react": "18.2.52", "@types/react-dom": "18.2.18", "dotenv-cli": "7.3.0", "eslint": "8.56.0", @@ -130,8 +130,8 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.2", - "@types/node": "20.11.15", - "@types/react": "18.2.51", + "@types/node": "20.11.16", + "@types/react": "18.2.52", "@types/react-dom": "18.2.18", "eslint": "8.56.0", "typescript": "5.3.3" @@ -146,7 +146,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.15", + "@types/node": "20.11.16", "pino-pretty": "10.3.1", "rimraf": "5.0.5", "tsx": "4.7.0", @@ -175,7 +175,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.15", + "@types/node": "20.11.16", "rimraf": "5.0.5", "typescript": "5.3.3" } @@ -235,7 +235,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.15", + "@types/node": "20.11.16", "rimraf": "5.0.5", "typescript": "5.3.3" } @@ -3013,9 +3013,9 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "20.11.15", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.15.tgz", - "integrity": "sha512-gscmuADZfvNULx1eyirVbr3kVOVZtpQtzKMCZpeSZcN6MfbkRXAR4s9/gsQ4CzxLHw6EStDtKLNtSDL3vbq05A==", + "version": "20.11.16", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.16.tgz", + "integrity": "sha512-gKb0enTmRCzXSSUJDq6/sPcqrfCv2mkkG6Jt/clpn5eiCbKTY+SgZUxo+p8ZKMof5dCp9vHQUAB7wOUTod22wQ==", "dependencies": { "undici-types": "~5.26.4" } @@ -3041,9 +3041,9 @@ "integrity": "sha512-ga8y9v9uyeiLdpKddhxYQkxNDrfvuPrlFb0N1qnZZByvcElJaXthF1UhvCh9TLWJBEHeNtdnbysW7Y6Uq8CVng==" }, "node_modules/@types/react": { - "version": "18.2.51", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.51.tgz", - "integrity": "sha512-XeoMaU4CzyjdRr3c4IQQtiH7Rpo18V07rYZUucEZQwOUEtGgTXv7e6igQiQ+xnV6MbMe1qjEmKdgMNnfppnXfg==", + "version": "18.2.52", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.52.tgz", + "integrity": "sha512-E/YjWh3tH+qsLKaUzgpZb5AY0ChVa+ZJzF7ogehVILrFpdQk6nC/WXOv0bfFEABbXbgNxLBGU7IIZByPKb6eBw==", "dependencies": { "@types/prop-types": "*", "@types/scheduler": "*", @@ -16024,7 +16024,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.15", + "@types/node": "20.11.16", "rimraf": "5.0.5", "tsup": "8.0.1", "tsx": "4.7.0", @@ -16043,7 +16043,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.15", + "@types/node": "20.11.16", "rimraf": "5.0.5", "tsup": "8.0.1", "typescript": "5.3.3" @@ -16059,7 +16059,7 @@ "license": "MIT", "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.15", + "@types/node": "20.11.16", "rimraf": "5.0.5", "tsup": "8.0.1", "tsx": "4.7.0", @@ -16081,7 +16081,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.15", + "@types/node": "20.11.16", "rimraf": "5.0.5", "tsup": "8.0.1", "tsx": "4.7.0", diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index c6abbbd5..bbd34667 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -73,7 +73,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.15", + "@types/node": "20.11.16", "rimraf": "5.0.5", "tsup": "8.0.1", "tsx": "4.7.0", diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index 147e47ed..48443e2d 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -25,7 +25,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.15", + "@types/node": "20.11.16", "rimraf": "5.0.5", "tsup": "8.0.1", "typescript": "5.3.3" diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 8d8058cb..347b703b 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -28,7 +28,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.15", + "@types/node": "20.11.16", "rimraf": "5.0.5", "tsup": "8.0.1", "tsx": "4.7.0", diff --git a/packages/server/package.json b/packages/server/package.json index c1c658ac..25da970e 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -32,7 +32,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.15", + "@types/node": "20.11.16", "rimraf": "5.0.5", "tsup": "8.0.1", "tsx": "4.7.0", From 6a8ff2795b3901ac1e5dbd945cff80786d86074f Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Sat, 3 Feb 2024 23:37:53 +0300 Subject: [PATCH 097/458] Update VSCode settings.json (#321) --- .vscode/settings.json | 22 ++++++++-------------- 1 file changed, 8 insertions(+), 14 deletions(-) diff --git a/.vscode/settings.json b/.vscode/settings.json index 9525e435..7fc70a57 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -1,13 +1,5 @@ { "eslint.workingDirectories": [{ "pattern": "apps/*/" }, { "pattern": "docs/*/" }], - "editor.defaultFormatter": "biomejs.biome", - "[json]": { - "editor.defaultFormatter": "esbenp.prettier-vscode" - }, - "[mdx]": { - "editor.defaultFormatter": "esbenp.prettier-vscode", - "editor.wordWrap": "on" - }, "typescript.surveys.enabled": false, "explorer.fileNesting.enabled": true, "explorer.fileNesting.patterns": { @@ -22,13 +14,15 @@ } ], "typescript.tsdk": "node_modules/typescript/lib", - "[markdown]": { - "editor.defaultFormatter": "esbenp.prettier-vscode" - }, - "[typescriptreact]": { + "editor.defaultFormatter": "biomejs.biome", + "[javascript][javascriptreact][typescript][typescriptreact]": { "editor.defaultFormatter": "biomejs.biome" }, - "[javascript]": { - "editor.defaultFormatter": "biomejs.biome" + "[jsonc][json][github-actions-workflow][yaml]": { + "editor.defaultFormatter": "esbenp.prettier-vscode" + }, + "[markdown][mdx]": { + "editor.defaultFormatter": "esbenp.prettier-vscode", + "editor.wordWrap": "on" } } From a1561bd1f1f479b3370cb4ae415e9742a38de0f5 Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Sun, 4 Feb 2024 00:31:53 +0300 Subject: [PATCH 098/458] Update dependencies (#322) --- apps/cache-testing/package.json | 4 +- internal/next-common/package.json | 2 +- package-lock.json | 666 ++++++++++++++++++------------ 3 files changed, 414 insertions(+), 258 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index b563617c..ac9b20c2 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -17,14 +17,14 @@ "start": "dotenv -e .env.local -v SERVER_STARTED=1 node .next/standalone/apps/cache-testing/server.js" }, "dependencies": { - "next": "14.1.1-canary.1", + "next": "14.1.1-canary.27", "react": "18.2.0", "react-dom": "18.2.0" }, "devDependencies": { "@neshca/cache-handler": "*", "@neshca/json-replacer-reviver": "*", - "@next/eslint-plugin-next": "14.1.1-canary.1", + "@next/eslint-plugin-next": "14.1.1-canary.27", "@playwright/test": "1.41.2", "@repo/eslint-config": "*", "@repo/typescript-config": "*", diff --git a/internal/next-common/package.json b/internal/next-common/package.json index 5dbddf2c..b568e92b 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -11,7 +11,7 @@ "clean": "rimraf ./.turbo ./node_modules" }, "dependencies": { - "next": "14.1.1-canary.1" + "next": "14.1.1-canary.27" }, "devDependencies": { "@repo/typescript-config": "*", diff --git a/package-lock.json b/package-lock.json index 5f7a1d57..0e4f73aa 100644 --- a/package-lock.json +++ b/package-lock.json @@ -37,14 +37,14 @@ "version": "0.0.0", "license": "MIT", "dependencies": { - "next": "14.1.1-canary.1", + "next": "14.1.1-canary.27", "react": "18.2.0", "react-dom": "18.2.0" }, "devDependencies": { "@neshca/cache-handler": "*", "@neshca/json-replacer-reviver": "*", - "@next/eslint-plugin-next": "14.1.1-canary.1", + "@next/eslint-plugin-next": "14.1.1-canary.27", "@playwright/test": "1.41.2", "@repo/eslint-config": "*", "@repo/typescript-config": "*", @@ -62,21 +62,21 @@ "typescript": "5.3.3" } }, - "apps/cache-testing/node_modules/@next/eslint-plugin-next": { - "version": "14.1.1-canary.1", - "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.1.1-canary.1.tgz", - "integrity": "sha512-NerzDeqcUMbTuU/yc3NkDh7HOqZSEHNCEcUmmtEWhE17YLOt36necRQsfCbCFarRyWOWVJz2BMJbR2E8PqKrLw==", + "apps/cache-testing/node_modules/@types/node": { + "version": "20.11.16", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.16.tgz", + "integrity": "sha512-gKb0enTmRCzXSSUJDq6/sPcqrfCv2mkkG6Jt/clpn5eiCbKTY+SgZUxo+p8ZKMof5dCp9vHQUAB7wOUTod22wQ==", "dev": true, "dependencies": { - "glob": "10.3.10" + "undici-types": "~5.26.4" } }, "apps/cache-testing/node_modules/next": { - "version": "14.1.1-canary.1", - "resolved": "https://registry.npmjs.org/next/-/next-14.1.1-canary.1.tgz", - "integrity": "sha512-17sG8plUzgT9xjdac11qFQUcF2JAgJ8h59U8ME1Ykaboy8sk7IkkD+HuOCJxREzsLtDh6Q8gqWxEAt+j9VuS/Q==", + "version": "14.1.1-canary.27", + "resolved": "https://registry.npmjs.org/next/-/next-14.1.1-canary.27.tgz", + "integrity": "sha512-DedZm3VgO4i4Owt6xVeSs6VbwspdxyEXPzCE+gWz7c3QJSBa/0J3hV+uPETeZ2YexdVvWYAj5YxJMNTfLTKTqw==", "dependencies": { - "@next/env": "14.1.1-canary.1", + "@next/env": "14.1.1-canary.27", "@swc/helpers": "0.5.2", "busboy": "1.6.0", "caniuse-lite": "^1.0.30001579", @@ -91,15 +91,15 @@ "node": ">=18.17.0" }, "optionalDependencies": { - "@next/swc-darwin-arm64": "14.1.1-canary.1", - "@next/swc-darwin-x64": "14.1.1-canary.1", - "@next/swc-linux-arm64-gnu": "14.1.1-canary.1", - "@next/swc-linux-arm64-musl": "14.1.1-canary.1", - "@next/swc-linux-x64-gnu": "14.1.1-canary.1", - "@next/swc-linux-x64-musl": "14.1.1-canary.1", - "@next/swc-win32-arm64-msvc": "14.1.1-canary.1", - "@next/swc-win32-ia32-msvc": "14.1.1-canary.1", - "@next/swc-win32-x64-msvc": "14.1.1-canary.1" + "@next/swc-darwin-arm64": "14.1.1-canary.27", + "@next/swc-darwin-x64": "14.1.1-canary.27", + "@next/swc-linux-arm64-gnu": "14.1.1-canary.27", + "@next/swc-linux-arm64-musl": "14.1.1-canary.27", + "@next/swc-linux-x64-gnu": "14.1.1-canary.27", + "@next/swc-linux-x64-musl": "14.1.1-canary.27", + "@next/swc-win32-arm64-msvc": "14.1.1-canary.27", + "@next/swc-win32-ia32-msvc": "14.1.1-canary.27", + "@next/swc-win32-x64-msvc": "14.1.1-canary.27" }, "peerDependencies": { "@opentelemetry/api": "^1.1.0", @@ -137,6 +137,105 @@ "typescript": "5.3.3" } }, + "docs/cache-handler-docs/node_modules/@next/eslint-plugin-next": { + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.1.0.tgz", + "integrity": "sha512-x4FavbNEeXx/baD/zC/SdrvkjSby8nBn8KcCREqk6UuwvwoAPZmaV8TFCAuo/cpovBRTIY67mHhe86MQQm/68Q==", + "dev": true, + "dependencies": { + "glob": "10.3.10" + } + }, + "docs/cache-handler-docs/node_modules/@types/node": { + "version": "20.11.16", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.16.tgz", + "integrity": "sha512-gKb0enTmRCzXSSUJDq6/sPcqrfCv2mkkG6Jt/clpn5eiCbKTY+SgZUxo+p8ZKMof5dCp9vHQUAB7wOUTod22wQ==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, + "docs/cache-handler-docs/node_modules/nextra": { + "version": "2.13.3", + "resolved": "https://registry.npmjs.org/nextra/-/nextra-2.13.3.tgz", + "integrity": "sha512-OBVuyQKh+oqrbVt0AosgNYnuReWuNrtJVEN7q18b/oEg2wEpuiq3UJfmIvGgOdNYc3zv3OYrzbcq7IhwtdHHEw==", + "dependencies": { + "@headlessui/react": "^1.7.17", + "@mdx-js/mdx": "^2.3.0", + "@mdx-js/react": "^2.3.0", + "@napi-rs/simple-git": "^0.1.9", + "@theguild/remark-mermaid": "^0.0.5", + "@theguild/remark-npm2yarn": "^0.2.0", + "clsx": "^2.0.0", + "github-slugger": "^2.0.0", + "graceful-fs": "^4.2.11", + "gray-matter": "^4.0.3", + "katex": "^0.16.9", + "lodash.get": "^4.4.2", + "next-mdx-remote": "^4.2.1", + "p-limit": "^3.1.0", + "rehype-katex": "^7.0.0", + "rehype-pretty-code": "0.9.11", + "rehype-raw": "^7.0.0", + "remark-gfm": "^3.0.1", + "remark-math": "^5.1.1", + "remark-reading-time": "^2.0.1", + "shiki": "^0.14.3", + "slash": "^3.0.0", + "title": "^3.5.3", + "unist-util-remove": "^4.0.0", + "unist-util-visit": "^5.0.0", + "zod": "^3.22.3" + }, + "engines": { + "node": ">=16" + }, + "peerDependencies": { + "next": ">=9.5.3", + "react": ">=16.13.1", + "react-dom": ">=16.13.1" + } + }, + "docs/cache-handler-docs/node_modules/nextra-theme-docs": { + "version": "2.13.3", + "resolved": "https://registry.npmjs.org/nextra-theme-docs/-/nextra-theme-docs-2.13.3.tgz", + "integrity": "sha512-B6xrnR86Gg4GzV56AomSwtmvSyAvnJz1xKOGGav1XKxkwvC8QeI17jdt/CqiKyIObJ+5bLqSFiKhaAZ5DYQP3g==", + "dependencies": { + "@headlessui/react": "^1.7.17", + "@popperjs/core": "^2.11.8", + "clsx": "^2.0.0", + "escape-string-regexp": "^5.0.0", + "flexsearch": "^0.7.31", + "focus-visible": "^5.2.0", + "git-url-parse": "^13.1.0", + "intersection-observer": "^0.12.2", + "match-sorter": "^6.3.1", + "next-seo": "^6.0.0", + "next-themes": "^0.2.1", + "scroll-into-view-if-needed": "^3.1.0", + "zod": "^3.22.3" + }, + "peerDependencies": { + "next": ">=9.5.3", + "nextra": "2.13.3", + "react": ">=16.13.1", + "react-dom": ">=16.13.1" + } + }, + "docs/cache-handler-docs/node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "internal/backend": { "version": "0.0.0", "license": "MIT", @@ -153,6 +252,15 @@ "typescript": "5.3.3" } }, + "internal/backend/node_modules/@types/node": { + "version": "20.11.16", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.16.tgz", + "integrity": "sha512-gKb0enTmRCzXSSUJDq6/sPcqrfCv2mkkG6Jt/clpn5eiCbKTY+SgZUxo+p8ZKMof5dCp9vHQUAB7wOUTod22wQ==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "internal/eslint-config": { "name": "@repo/eslint-config", "version": "0.0.0", @@ -166,12 +274,73 @@ "typescript": "5.3.3" } }, + "internal/eslint-config/node_modules/@next/eslint-plugin-next": { + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.1.0.tgz", + "integrity": "sha512-x4FavbNEeXx/baD/zC/SdrvkjSby8nBn8KcCREqk6UuwvwoAPZmaV8TFCAuo/cpovBRTIY67mHhe86MQQm/68Q==", + "dev": true, + "optional": true, + "peer": true, + "dependencies": { + "glob": "10.3.10" + } + }, + "internal/eslint-config/node_modules/@vercel/style-guide": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@vercel/style-guide/-/style-guide-5.2.0.tgz", + "integrity": "sha512-fNSKEaZvSkiBoF6XEefs8CcgAV9K9e+MbcsDZjUsktHycKdA0jvjAzQi1W/FzLS+Nr5zZ6oejCwq/97dHUKe0g==", + "dev": true, + "dependencies": { + "@babel/core": "^7.22.11", + "@babel/eslint-parser": "^7.22.11", + "@rushstack/eslint-patch": "^1.3.3", + "@typescript-eslint/eslint-plugin": "^6.5.0", + "@typescript-eslint/parser": "^6.5.0", + "eslint-config-prettier": "^9.0.0", + "eslint-import-resolver-alias": "^1.1.2", + "eslint-import-resolver-typescript": "^3.6.0", + "eslint-plugin-eslint-comments": "^3.2.0", + "eslint-plugin-import": "^2.28.1", + "eslint-plugin-jest": "^27.2.3", + "eslint-plugin-jsx-a11y": "^6.7.1", + "eslint-plugin-playwright": "^0.16.0", + "eslint-plugin-react": "^7.33.2", + "eslint-plugin-react-hooks": "^4.6.0", + "eslint-plugin-testing-library": "^6.0.1", + "eslint-plugin-tsdoc": "^0.2.17", + "eslint-plugin-unicorn": "^48.0.1", + "prettier-plugin-packagejson": "^2.4.5" + }, + "engines": { + "node": ">=16" + }, + "peerDependencies": { + "@next/eslint-plugin-next": ">=12.3.0 <15", + "eslint": ">=8.48.0 <9", + "prettier": ">=3.0.0 <4", + "typescript": ">=4.8.0 <6" + }, + "peerDependenciesMeta": { + "@next/eslint-plugin-next": { + "optional": true + }, + "eslint": { + "optional": true + }, + "prettier": { + "optional": true + }, + "typescript": { + "optional": true + } + } + }, "internal/next-common": { "name": "@neshca/next-common", "version": "0.0.0", "license": "MIT", "dependencies": { - "next": "14.1.1-canary.1" + "next": "14.1.1-canary.27" }, "devDependencies": { "@repo/typescript-config": "*", @@ -180,12 +349,21 @@ "typescript": "5.3.3" } }, + "internal/next-common/node_modules/@types/node": { + "version": "20.11.16", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.16.tgz", + "integrity": "sha512-gKb0enTmRCzXSSUJDq6/sPcqrfCv2mkkG6Jt/clpn5eiCbKTY+SgZUxo+p8ZKMof5dCp9vHQUAB7wOUTod22wQ==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "internal/next-common/node_modules/next": { - "version": "14.1.1-canary.1", - "resolved": "https://registry.npmjs.org/next/-/next-14.1.1-canary.1.tgz", - "integrity": "sha512-17sG8plUzgT9xjdac11qFQUcF2JAgJ8h59U8ME1Ykaboy8sk7IkkD+HuOCJxREzsLtDh6Q8gqWxEAt+j9VuS/Q==", + "version": "14.1.1-canary.27", + "resolved": "https://registry.npmjs.org/next/-/next-14.1.1-canary.27.tgz", + "integrity": "sha512-DedZm3VgO4i4Owt6xVeSs6VbwspdxyEXPzCE+gWz7c3QJSBa/0J3hV+uPETeZ2YexdVvWYAj5YxJMNTfLTKTqw==", "dependencies": { - "@next/env": "14.1.1-canary.1", + "@next/env": "14.1.1-canary.27", "@swc/helpers": "0.5.2", "busboy": "1.6.0", "caniuse-lite": "^1.0.30001579", @@ -200,15 +378,15 @@ "node": ">=18.17.0" }, "optionalDependencies": { - "@next/swc-darwin-arm64": "14.1.1-canary.1", - "@next/swc-darwin-x64": "14.1.1-canary.1", - "@next/swc-linux-arm64-gnu": "14.1.1-canary.1", - "@next/swc-linux-arm64-musl": "14.1.1-canary.1", - "@next/swc-linux-x64-gnu": "14.1.1-canary.1", - "@next/swc-linux-x64-musl": "14.1.1-canary.1", - "@next/swc-win32-arm64-msvc": "14.1.1-canary.1", - "@next/swc-win32-ia32-msvc": "14.1.1-canary.1", - "@next/swc-win32-x64-msvc": "14.1.1-canary.1" + "@next/swc-darwin-arm64": "14.1.1-canary.27", + "@next/swc-darwin-x64": "14.1.1-canary.27", + "@next/swc-linux-arm64-gnu": "14.1.1-canary.27", + "@next/swc-linux-arm64-musl": "14.1.1-canary.27", + "@next/swc-linux-x64-gnu": "14.1.1-canary.27", + "@next/swc-linux-x64-musl": "14.1.1-canary.27", + "@next/swc-win32-arm64-msvc": "14.1.1-canary.27", + "@next/swc-win32-ia32-msvc": "14.1.1-canary.27", + "@next/swc-win32-x64-msvc": "14.1.1-canary.27" }, "peerDependencies": { "@opentelemetry/api": "^1.1.0", @@ -240,6 +418,15 @@ "typescript": "5.3.3" } }, + "internal/next-lru-cache/node_modules/@types/node": { + "version": "20.11.16", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.16.tgz", + "integrity": "sha512-gKb0enTmRCzXSSUJDq6/sPcqrfCv2mkkG6Jt/clpn5eiCbKTY+SgZUxo+p8ZKMof5dCp9vHQUAB7wOUTod22wQ==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "internal/prettier-config": { "name": "@repo/prettier-config", "version": "0.0.0", @@ -248,6 +435,67 @@ "@vercel/style-guide": "5.2.0" } }, + "internal/prettier-config/node_modules/@next/eslint-plugin-next": { + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.1.0.tgz", + "integrity": "sha512-x4FavbNEeXx/baD/zC/SdrvkjSby8nBn8KcCREqk6UuwvwoAPZmaV8TFCAuo/cpovBRTIY67mHhe86MQQm/68Q==", + "dev": true, + "optional": true, + "peer": true, + "dependencies": { + "glob": "10.3.10" + } + }, + "internal/prettier-config/node_modules/@vercel/style-guide": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@vercel/style-guide/-/style-guide-5.2.0.tgz", + "integrity": "sha512-fNSKEaZvSkiBoF6XEefs8CcgAV9K9e+MbcsDZjUsktHycKdA0jvjAzQi1W/FzLS+Nr5zZ6oejCwq/97dHUKe0g==", + "dev": true, + "dependencies": { + "@babel/core": "^7.22.11", + "@babel/eslint-parser": "^7.22.11", + "@rushstack/eslint-patch": "^1.3.3", + "@typescript-eslint/eslint-plugin": "^6.5.0", + "@typescript-eslint/parser": "^6.5.0", + "eslint-config-prettier": "^9.0.0", + "eslint-import-resolver-alias": "^1.1.2", + "eslint-import-resolver-typescript": "^3.6.0", + "eslint-plugin-eslint-comments": "^3.2.0", + "eslint-plugin-import": "^2.28.1", + "eslint-plugin-jest": "^27.2.3", + "eslint-plugin-jsx-a11y": "^6.7.1", + "eslint-plugin-playwright": "^0.16.0", + "eslint-plugin-react": "^7.33.2", + "eslint-plugin-react-hooks": "^4.6.0", + "eslint-plugin-testing-library": "^6.0.1", + "eslint-plugin-tsdoc": "^0.2.17", + "eslint-plugin-unicorn": "^48.0.1", + "prettier-plugin-packagejson": "^2.4.5" + }, + "engines": { + "node": ">=16" + }, + "peerDependencies": { + "@next/eslint-plugin-next": ">=12.3.0 <15", + "eslint": ">=8.48.0 <9", + "prettier": ">=3.0.0 <4", + "typescript": ">=4.8.0 <6" + }, + "peerDependenciesMeta": { + "@next/eslint-plugin-next": { + "optional": true + }, + "eslint": { + "optional": true + }, + "prettier": { + "optional": true + }, + "typescript": { + "optional": true + } + } + }, "internal/typescript-config": { "name": "@repo/typescript-config", "version": "0.0.0", @@ -1549,6 +1797,11 @@ "node": ">=14" } }, + "node_modules/@fastify/deepmerge": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@fastify/deepmerge/-/deepmerge-1.3.0.tgz", + "integrity": "sha512-J8TOSBq3SoZbDhM9+R/u77hP93gz/rajSA+K2kGyijPpORPWUXHUpTaleoj+92As0S9uPRP7Oi8IqMf0u+ro6A==" + }, "node_modules/@fastify/error": { "version": "3.4.1", "resolved": "https://registry.npmjs.org/@fastify/error/-/error-3.4.1.tgz", @@ -1562,14 +1815,6 @@ "fast-json-stringify": "^5.7.0" } }, - "node_modules/@fastify/merge-json-schemas": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@fastify/merge-json-schemas/-/merge-json-schemas-0.1.1.tgz", - "integrity": "sha512-fERDVz7topgNjtXsJTTW1JKLy0rhuLRcquYqNR9rF7OcVpCa2OVW49ZPDIhaRRCaUuvVxI+N416xUoF76HNSXA==", - "dependencies": { - "fast-deep-equal": "^3.1.3" - } - }, "node_modules/@headlessui/react": { "version": "1.7.18", "resolved": "https://registry.npmjs.org/@headlessui/react/-/react-1.7.18.tgz", @@ -1722,11 +1967,6 @@ "fs-extra": "^8.1.0" } }, - "node_modules/@manypkg/find-root/node_modules/@types/node": { - "version": "12.20.55", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", - "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" - }, "node_modules/@manypkg/find-root/node_modules/fs-extra": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", @@ -2080,23 +2320,23 @@ "link": true }, "node_modules/@next/env": { - "version": "14.1.1-canary.1", - "resolved": "https://registry.npmjs.org/@next/env/-/env-14.1.1-canary.1.tgz", - "integrity": "sha512-hkxKhWvFieo9wYuRcsQtDtHzZrs+spjxglCU9QLdwpSsRwifr1oxm+UvuhCNTQ7V8qZZPSEnhU0FMWIv3oo6Eg==" + "version": "14.1.1-canary.27", + "resolved": "https://registry.npmjs.org/@next/env/-/env-14.1.1-canary.27.tgz", + "integrity": "sha512-v6FRSD3aZ1lf9sLAaGBlvGccffSRx3NhbANdFO2yrj6TVdFkAOvemhwL6GBZ2V+2MlAbTqWtVW7oJie+GgQWoA==" }, "node_modules/@next/eslint-plugin-next": { - "version": "14.1.0", - "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.1.0.tgz", - "integrity": "sha512-x4FavbNEeXx/baD/zC/SdrvkjSby8nBn8KcCREqk6UuwvwoAPZmaV8TFCAuo/cpovBRTIY67mHhe86MQQm/68Q==", + "version": "14.1.1-canary.27", + "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.1.1-canary.27.tgz", + "integrity": "sha512-mXBXP962E5xBlUvG0M4CsQWEzC6vLJp3ghGKZ3bCRqASfbR1+NdCMq7wnl8w8mdm0g9TdcjfSXQR+xap6LeC0Q==", "dev": true, "dependencies": { "glob": "10.3.10" } }, "node_modules/@next/swc-darwin-arm64": { - "version": "14.1.1-canary.1", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.1.1-canary.1.tgz", - "integrity": "sha512-HA5F+iKomodTwoHNd7ABsluFQ/I34PfEd1LUMBPMvERwwGj6NEUYRqv/4nSqpGAkHK6FR2tM2uWi+dYHWNTAwA==", + "version": "14.1.1-canary.27", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.1.1-canary.27.tgz", + "integrity": "sha512-9E38as2/pXDXiNILNESv8jyajghyBzQ4Vki9V2cMD2o48pfC97ZuewCZmV5pYkoAqY9iC2jHsWodyypNwHlS4w==", "cpu": [ "arm64" ], @@ -2109,9 +2349,9 @@ } }, "node_modules/@next/swc-darwin-x64": { - "version": "14.1.1-canary.1", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.1.1-canary.1.tgz", - "integrity": "sha512-pWNXORRMVmA4G7LQRWBFTM4kM6TPFyQ+4NwySjpjZQqVAUb8jGh9npbjbd2XcCLbX/b/TbrHSERKpWekvmbvdQ==", + "version": "14.1.1-canary.27", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.1.1-canary.27.tgz", + "integrity": "sha512-BQ7p8U3N+Zijh5oWfUDKoyTurw38jSUFs38K9vAoE3EZQJB+WFtHkS5X01K50YwacdgryjTlje5Bxf9PrqCvVA==", "cpu": [ "x64" ], @@ -2124,9 +2364,9 @@ } }, "node_modules/@next/swc-linux-arm64-gnu": { - "version": "14.1.1-canary.1", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.1.1-canary.1.tgz", - "integrity": "sha512-l3fDk5m8rbYHdwywqOP8Om99gUZ4HSodG25IZQqooATYtoBG3MeVkTTFwfn2JPtsuq6+BAwWNjrxZsbpJ3JK+g==", + "version": "14.1.1-canary.27", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.1.1-canary.27.tgz", + "integrity": "sha512-/kcfFxteFg52mtEbNMt1emKTSJaHx0t2FDCrZNsasrWEbsx3T8d3J3ROUNLRiLpvDCeYaTDZO1PU52TYfj50dA==", "cpu": [ "arm64" ], @@ -2139,9 +2379,9 @@ } }, "node_modules/@next/swc-linux-arm64-musl": { - "version": "14.1.1-canary.1", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.1.1-canary.1.tgz", - "integrity": "sha512-qOs7Sno0MVyQqV/M9oxv9UvpB71GdeYhftX7EHB3gqJ7FnRs55Nw7vfES1qsaZ9h8Yd5tHjmq0VnXZnvzf6svg==", + "version": "14.1.1-canary.27", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.1.1-canary.27.tgz", + "integrity": "sha512-Liugqgu29KODzg+GiJLxDyDdT42v4WgzqjOr+Xq3jUv7v28IBfyx1MRPlOrOUFoD2jOr8XHo02JLBlURg/0oLA==", "cpu": [ "arm64" ], @@ -2154,9 +2394,9 @@ } }, "node_modules/@next/swc-linux-x64-gnu": { - "version": "14.1.1-canary.1", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.1.1-canary.1.tgz", - "integrity": "sha512-uq2dwhacwwxnOXl5NSFbsbvU6ldAKIRde0mD+7edYSldhQUwDWLJQjqhImWd4+zSTWoTmTnEgkMgFgsPzgJnhQ==", + "version": "14.1.1-canary.27", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.1.1-canary.27.tgz", + "integrity": "sha512-rWEdjhteOKBNN5IgX/xq+nJgUoh1qlZU4IZkM5G1R90f/HzNG/uux7k3GLiunAEx3cBZCKwmHXMwyUd8QY4KcQ==", "cpu": [ "x64" ], @@ -2169,9 +2409,9 @@ } }, "node_modules/@next/swc-linux-x64-musl": { - "version": "14.1.1-canary.1", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.1.1-canary.1.tgz", - "integrity": "sha512-fC4hAjpDU9JqQleqoozqbDUPT5QzvZO6RFVbolwQ8lPkY9mjcyICx/4DtQmoXy+GgWbPMqiMYRgnT6wGyvyreg==", + "version": "14.1.1-canary.27", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.1.1-canary.27.tgz", + "integrity": "sha512-oXrh9UxTEoZI0kuiGcs2XHuI8VSdipBnIvZAAiOokY+GCkv163DgQh2IpKM/RlPso++m2a8Ch671pSWN8Zd4Iw==", "cpu": [ "x64" ], @@ -2184,9 +2424,9 @@ } }, "node_modules/@next/swc-win32-arm64-msvc": { - "version": "14.1.1-canary.1", - "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.1.1-canary.1.tgz", - "integrity": "sha512-UkeFvu4o8Hnze9oyBn9HDxl2l4eo9MJvZHxzRidcwX7xO68EkzQp3c2lZzRhxp14YfSya+5VKrOcZcduZsXPOw==", + "version": "14.1.1-canary.27", + "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.1.1-canary.27.tgz", + "integrity": "sha512-fQsn+Y66UpFeppIe6TDMjM9BfMUM8h7WKh+gA/zCKBBpWv6BEo0QZTOHtoVbwYlb3VwDQi9T8yT8Ad3dl7TP2g==", "cpu": [ "arm64" ], @@ -2199,9 +2439,9 @@ } }, "node_modules/@next/swc-win32-ia32-msvc": { - "version": "14.1.1-canary.1", - "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.1.1-canary.1.tgz", - "integrity": "sha512-/QMAp34HyzYxT0VVaSvjgXmuUHSeJPRizm8SB4h0vG8M0/Pf8WPKsLf4TJVPOJkCjKd78f/EF8Hq7pngSDRihA==", + "version": "14.1.1-canary.27", + "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.1.1-canary.27.tgz", + "integrity": "sha512-iLdMJG8hzJ2+a+YTalqqhjl0vuX+VC9SBJMs0nPth3XiKvhmwWtwOqQU7PiK1Ea8OgIvJvF+o1GAq+P/SeC5jA==", "cpu": [ "ia32" ], @@ -2214,9 +2454,9 @@ } }, "node_modules/@next/swc-win32-x64-msvc": { - "version": "14.1.1-canary.1", - "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.1.1-canary.1.tgz", - "integrity": "sha512-7TuIOK1saa9Ph61lmqUCEPbjuQOBio/U5VIjdP+/6Ux9ECzxmhMjnWamYKgLJXJ8Vn4AGmczHDPB25inJRKs1g==", + "version": "14.1.1-canary.27", + "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.1.1-canary.27.tgz", + "integrity": "sha512-EpIJEBSWVig3E82wnNkaLgwkw6HkZ4+x6x5YB2wurHQZJt9+jFLFJex3wt7rO9XJI8R5sn+kVHwF2g25BJUihQ==", "cpu": [ "x64" ], @@ -2851,9 +3091,9 @@ } }, "node_modules/@tanstack/react-virtual": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@tanstack/react-virtual/-/react-virtual-3.0.2.tgz", - "integrity": "sha512-9XbRLPKgnhMwwmuQMnJMv+5a9sitGNCSEtf/AZXzmJdesYk7XsjYHaEDny+IrJzvPNwZliIIDwCRiaUqR3zzCA==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@tanstack/react-virtual/-/react-virtual-3.0.4.tgz", + "integrity": "sha512-tiqKW/e2MJVCr7/pRUXulpkyxllaOclkHNfhKTo4pmHjJIqnhMfwIjc1Q1R0Un3PI3kQywywu/791c8z9u0qeA==", "dependencies": { "@tanstack/virtual-core": "3.0.0" }, @@ -3013,12 +3253,9 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "20.11.16", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.16.tgz", - "integrity": "sha512-gKb0enTmRCzXSSUJDq6/sPcqrfCv2mkkG6Jt/clpn5eiCbKTY+SgZUxo+p8ZKMof5dCp9vHQUAB7wOUTod22wQ==", - "dependencies": { - "undici-types": "~5.26.4" - } + "version": "12.20.55", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", + "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" }, "node_modules/@types/node-fetch": { "version": "2.6.11", @@ -3293,56 +3530,6 @@ "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz", "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==" }, - "node_modules/@vercel/style-guide": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@vercel/style-guide/-/style-guide-5.2.0.tgz", - "integrity": "sha512-fNSKEaZvSkiBoF6XEefs8CcgAV9K9e+MbcsDZjUsktHycKdA0jvjAzQi1W/FzLS+Nr5zZ6oejCwq/97dHUKe0g==", - "dev": true, - "dependencies": { - "@babel/core": "^7.22.11", - "@babel/eslint-parser": "^7.22.11", - "@rushstack/eslint-patch": "^1.3.3", - "@typescript-eslint/eslint-plugin": "^6.5.0", - "@typescript-eslint/parser": "^6.5.0", - "eslint-config-prettier": "^9.0.0", - "eslint-import-resolver-alias": "^1.1.2", - "eslint-import-resolver-typescript": "^3.6.0", - "eslint-plugin-eslint-comments": "^3.2.0", - "eslint-plugin-import": "^2.28.1", - "eslint-plugin-jest": "^27.2.3", - "eslint-plugin-jsx-a11y": "^6.7.1", - "eslint-plugin-playwright": "^0.16.0", - "eslint-plugin-react": "^7.33.2", - "eslint-plugin-react-hooks": "^4.6.0", - "eslint-plugin-testing-library": "^6.0.1", - "eslint-plugin-tsdoc": "^0.2.17", - "eslint-plugin-unicorn": "^48.0.1", - "prettier-plugin-packagejson": "^2.4.5" - }, - "engines": { - "node": ">=16" - }, - "peerDependencies": { - "@next/eslint-plugin-next": ">=12.3.0 <15", - "eslint": ">=8.48.0 <9", - "prettier": ">=3.0.0 <4", - "typescript": ">=4.8.0 <6" - }, - "peerDependenciesMeta": { - "@next/eslint-plugin-next": { - "optional": true - }, - "eslint": { - "optional": true - }, - "prettier": { - "optional": true - }, - "typescript": { - "optional": true - } - } - }, "node_modules/abort-controller": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz", @@ -4099,9 +4286,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001582", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001582.tgz", - "integrity": "sha512-vsJG3V5vgfduaQGVxL53uSX/HUzxyr2eA8xCo36OLal7sRcSZbibJtLeh0qja4sFOr/QQGt4opB4tOy+eOgAxg==", + "version": "1.0.30001583", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001583.tgz", + "integrity": "sha512-acWTYaha8xfhA/Du/z4sNZjHUWjkiuoAi2LM+T/aL+kemKQgPT1xBb/YKjlQ0Qo8gvbHsGNplrEJ+9G3gL7i4Q==", "funding": [ { "type": "opencollective", @@ -5387,9 +5574,9 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.653", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.653.tgz", - "integrity": "sha512-wA2A2LQCqnEwQAvwADQq3KpMpNwgAUBnRmrFgRzHnPhbQUFArTR32Ab46f4p0MovDLcg4uqd4nCsN2hTltslpA==", + "version": "1.4.656", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.656.tgz", + "integrity": "sha512-9AQB5eFTHyR3Gvt2t/NwR0le2jBSUNwCnMbUCejFWHD+so4tH40/dRLgoE+jxlPeWS43XJewyvCv+I8LPMl49Q==", "dev": true }, "node_modules/elkjs": { @@ -5517,6 +5704,14 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/es-errors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.0.0.tgz", + "integrity": "sha512-yHV74THqMJUyFKkHyN7hyENcEZM3Dj2a2IrdClY+IT4BFQHkIVwlh8s6uZfjsFydMdNHv0F5mWgAA3ajFbsvVQ==", + "engines": { + "node": ">= 0.4" + } + }, "node_modules/es-iterator-helpers": { "version": "1.0.15", "resolved": "https://registry.npmjs.org/es-iterator-helpers/-/es-iterator-helpers-1.0.15.tgz", @@ -6962,11 +7157,11 @@ "dev": true }, "node_modules/fast-json-stringify": { - "version": "5.11.0", - "resolved": "https://registry.npmjs.org/fast-json-stringify/-/fast-json-stringify-5.11.0.tgz", - "integrity": "sha512-oLgCEJ37gqIt5rcbEmT4nIcEHxVCR1ZAOBKTNH/hzxRKSyQDnfyafz97eB9R75zfZSUOxFLBrK6ISnT6V6CRqw==", + "version": "5.11.1", + "resolved": "https://registry.npmjs.org/fast-json-stringify/-/fast-json-stringify-5.11.1.tgz", + "integrity": "sha512-Lrj3tmc/qI1OCmr0WJEJFC4TxnAdLnbZZ0CvFvHv/PHNieLCX12PNBlV9KGIDS08w49T8h7vkMuzNoB+3NyX0g==", "dependencies": { - "@fastify/merge-json-schemas": "^0.1.0", + "@fastify/deepmerge": "^1.0.0", "ajv": "^8.10.0", "ajv-formats": "^2.1.1", "fast-deep-equal": "^3.1.3", @@ -7383,15 +7578,19 @@ } }, "node_modules/get-intrinsic": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.2.tgz", - "integrity": "sha512-0gSo4ml/0j98Y3lngkFEot/zhiCeWsbYIlZ+uZOVgzLyLaUw7wxUL+nCTP0XJvJg1AXulJRI3UJi8GsbDuxdGA==", + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.3.tgz", + "integrity": "sha512-JIcZczvcMVE7AUOP+X72bh8HqHBRxFdz5PDHYtNG/lE3yk9b3KZBJlwFcTyPYjg3L4RLLmZJzvjxhaZVapxFrQ==", "dependencies": { + "es-errors": "^1.0.0", "function-bind": "^1.1.2", "has-proto": "^1.0.1", "has-symbols": "^1.0.3", "hasown": "^2.0.0" }, + "engines": { + "node": ">= 0.4" + }, "funding": { "url": "https://github.com/sponsors/ljharb" } @@ -7720,11 +7919,11 @@ } }, "node_modules/has-tostringtag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", - "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", + "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", "dependencies": { - "has-symbols": "^1.0.2" + "has-symbols": "^1.0.3" }, "engines": { "node": ">= 0.4" @@ -8402,13 +8601,15 @@ } }, "node_modules/is-array-buffer": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.2.tgz", - "integrity": "sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.4.tgz", + "integrity": "sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw==", "dependencies": { "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.0", - "is-typed-array": "^1.1.10" + "get-intrinsic": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -8778,11 +8979,11 @@ } }, "node_modules/is-typed-array": { - "version": "1.1.12", - "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.12.tgz", - "integrity": "sha512-Z14TF2JNG8Lss5/HMqt0//T9JeHXttXy5pH/DBU4vi98ozO2btxzq9MwYDZYnKwU8nRsz/+GVFVRDq3DkVuSPg==", + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.13.tgz", + "integrity": "sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw==", "dependencies": { - "which-typed-array": "^1.1.11" + "which-typed-array": "^1.1.14" }, "engines": { "node": ">= 0.4" @@ -11099,87 +11300,6 @@ "node": ">= 10" } }, - "node_modules/nextra": { - "version": "2.13.3", - "resolved": "https://registry.npmjs.org/nextra/-/nextra-2.13.3.tgz", - "integrity": "sha512-OBVuyQKh+oqrbVt0AosgNYnuReWuNrtJVEN7q18b/oEg2wEpuiq3UJfmIvGgOdNYc3zv3OYrzbcq7IhwtdHHEw==", - "dependencies": { - "@headlessui/react": "^1.7.17", - "@mdx-js/mdx": "^2.3.0", - "@mdx-js/react": "^2.3.0", - "@napi-rs/simple-git": "^0.1.9", - "@theguild/remark-mermaid": "^0.0.5", - "@theguild/remark-npm2yarn": "^0.2.0", - "clsx": "^2.0.0", - "github-slugger": "^2.0.0", - "graceful-fs": "^4.2.11", - "gray-matter": "^4.0.3", - "katex": "^0.16.9", - "lodash.get": "^4.4.2", - "next-mdx-remote": "^4.2.1", - "p-limit": "^3.1.0", - "rehype-katex": "^7.0.0", - "rehype-pretty-code": "0.9.11", - "rehype-raw": "^7.0.0", - "remark-gfm": "^3.0.1", - "remark-math": "^5.1.1", - "remark-reading-time": "^2.0.1", - "shiki": "^0.14.3", - "slash": "^3.0.0", - "title": "^3.5.3", - "unist-util-remove": "^4.0.0", - "unist-util-visit": "^5.0.0", - "zod": "^3.22.3" - }, - "engines": { - "node": ">=16" - }, - "peerDependencies": { - "next": ">=9.5.3", - "react": ">=16.13.1", - "react-dom": ">=16.13.1" - } - }, - "node_modules/nextra-theme-docs": { - "version": "2.13.3", - "resolved": "https://registry.npmjs.org/nextra-theme-docs/-/nextra-theme-docs-2.13.3.tgz", - "integrity": "sha512-B6xrnR86Gg4GzV56AomSwtmvSyAvnJz1xKOGGav1XKxkwvC8QeI17jdt/CqiKyIObJ+5bLqSFiKhaAZ5DYQP3g==", - "dependencies": { - "@headlessui/react": "^1.7.17", - "@popperjs/core": "^2.11.8", - "clsx": "^2.0.0", - "escape-string-regexp": "^5.0.0", - "flexsearch": "^0.7.31", - "focus-visible": "^5.2.0", - "git-url-parse": "^13.1.0", - "intersection-observer": "^0.12.2", - "match-sorter": "^6.3.1", - "next-seo": "^6.0.0", - "next-themes": "^0.2.1", - "scroll-into-view-if-needed": "^3.1.0", - "zod": "^3.22.3" - }, - "peerDependencies": { - "next": ">=9.5.3", - "nextra": "2.13.3", - "react": ">=16.13.1", - "react-dom": ">=16.13.1" - } - }, - "node_modules/nextra/node_modules/p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "dependencies": { - "yocto-queue": "^0.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/node-domexception": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/node-domexception/-/node-domexception-1.0.0.tgz", @@ -11475,9 +11595,9 @@ } }, "node_modules/openai/node_modules/@types/node": { - "version": "18.19.13", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.13.tgz", - "integrity": "sha512-kgnbRDj8ioDyGxoiaXsiu1Ybm/K14ajCgMOkwiqpHrnF7d7QiYRoRqHIpglMMs3DwXinlK4qJ8TZGlj4hfleJg==", + "version": "18.19.14", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.14.tgz", + "integrity": "sha512-EnQ4Us2rmOS64nHDWr0XqAD8DsO6f3XR6lf9UIIrZQpUzPVdN/oPuEzfDWNHSyXLvoGgjuEm/sPwFGSSs35Wtg==", "peer": true, "dependencies": { "undici-types": "~5.26.4" @@ -15702,15 +15822,15 @@ } }, "node_modules/which-typed-array": { - "version": "1.1.13", - "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.13.tgz", - "integrity": "sha512-P5Nra0qjSncduVPEAr7xhoF5guty49ArDTwzJ/yNuPIbZppyRxFQsRCWrocxIY+CnMVG+qfbU2FmDKyvSGClow==", + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.14.tgz", + "integrity": "sha512-VnXFiIW8yNn9kIHN88xvZ4yOWchftKDsRJ8fEPacX/wl1lOvBrhsJ/OeJCXq7B0AaijRuqgzSKalJoPk+D8MPg==", "dependencies": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.4", + "available-typed-arrays": "^1.0.6", + "call-bind": "^1.0.5", "for-each": "^0.3.3", "gopd": "^1.0.1", - "has-tostringtag": "^1.0.0" + "has-tostringtag": "^1.0.1" }, "engines": { "node": ">= 0.4" @@ -16035,6 +16155,15 @@ "redis": ">=4.6" } }, + "packages/cache-handler/node_modules/@types/node": { + "version": "20.11.16", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.16.tgz", + "integrity": "sha512-gKb0enTmRCzXSSUJDq6/sPcqrfCv2mkkG6Jt/clpn5eiCbKTY+SgZUxo+p8ZKMof5dCp9vHQUAB7wOUTod22wQ==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "packages/diffscribe": { "version": "0.2.2", "license": "MIT", @@ -16053,6 +16182,15 @@ "openai": "^4.12.3" } }, + "packages/diffscribe/node_modules/@types/node": { + "version": "20.11.16", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.16.tgz", + "integrity": "sha512-gKb0enTmRCzXSSUJDq6/sPcqrfCv2mkkG6Jt/clpn5eiCbKTY+SgZUxo+p8ZKMof5dCp9vHQUAB7wOUTod22wQ==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "packages/json-replacer-reviver": { "name": "@neshca/json-replacer-reviver", "version": "1.1.1", @@ -16066,6 +16204,15 @@ "typescript": "5.3.3" } }, + "packages/json-replacer-reviver/node_modules/@types/node": { + "version": "20.11.16", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.16.tgz", + "integrity": "sha512-gKb0enTmRCzXSSUJDq6/sPcqrfCv2mkkG6Jt/clpn5eiCbKTY+SgZUxo+p8ZKMof5dCp9vHQUAB7wOUTod22wQ==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "packages/server": { "name": "@neshca/server", "version": "0.6.1", @@ -16087,6 +16234,15 @@ "tsx": "4.7.0", "typescript": "5.3.3" } + }, + "packages/server/node_modules/@types/node": { + "version": "20.11.16", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.16.tgz", + "integrity": "sha512-gKb0enTmRCzXSSUJDq6/sPcqrfCv2mkkG6Jt/clpn5eiCbKTY+SgZUxo+p8ZKMof5dCp9vHQUAB7wOUTod22wQ==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } } } } From 85f39cb362851cee64429b0da668e462d3868b12 Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Sun, 4 Feb 2024 00:44:23 +0300 Subject: [PATCH 099/458] Fix VSCode settings for code formatting (#323) --- .vscode/settings.json | 29 +++++++++++++++++++++++++---- 1 file changed, 25 insertions(+), 4 deletions(-) diff --git a/.vscode/settings.json b/.vscode/settings.json index 7fc70a57..4ed26479 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -15,14 +15,35 @@ ], "typescript.tsdk": "node_modules/typescript/lib", "editor.defaultFormatter": "biomejs.biome", - "[javascript][javascriptreact][typescript][typescriptreact]": { - "editor.defaultFormatter": "biomejs.biome" + "[jsonc]": { + "editor.defaultFormatter": "esbenp.prettier-vscode" + }, + "[json]": { + "editor.defaultFormatter": "esbenp.prettier-vscode" + }, + "[github-actions-workflow]": { + "editor.defaultFormatter": "esbenp.prettier-vscode" + }, + "[yaml]": { + "editor.defaultFormatter": "esbenp.prettier-vscode" }, - "[jsonc][json][github-actions-workflow][yaml]": { + "[markdown]": { "editor.defaultFormatter": "esbenp.prettier-vscode" }, - "[markdown][mdx]": { + "[mdx]": { "editor.defaultFormatter": "esbenp.prettier-vscode", "editor.wordWrap": "on" + }, + "[javascript]": { + "editor.defaultFormatter": "biomejs.biome" + }, + "[javascriptreact]": { + "editor.defaultFormatter": "biomejs.biome" + }, + "[typescript]": { + "editor.defaultFormatter": "biomejs.biome" + }, + "[typescriptreact]": { + "editor.defaultFormatter": "biomejs.biome" } } From cdbb7b69919f75e009cc1303a78f9b68eab29cc4 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 8 Feb 2024 03:30:28 +0300 Subject: [PATCH 100/458] Bump the turbo group with 2 updates (#331) Bumps the turbo group with 2 updates: [turbo](https://github.com/vercel/turbo) and [eslint-config-turbo](https://github.com/vercel/turbo/tree/HEAD/packages/eslint-config-turbo). Updates `turbo` from 1.12.2 to 1.12.3 - [Release notes](https://github.com/vercel/turbo/releases) - [Changelog](https://github.com/vercel/turbo/blob/main/release.md) - [Commits](https://github.com/vercel/turbo/compare/v1.12.2...v1.12.3) Updates `eslint-config-turbo` from 1.12.2 to 1.12.3 - [Release notes](https://github.com/vercel/turbo/releases) - [Changelog](https://github.com/vercel/turbo/blob/main/release.md) - [Commits](https://github.com/vercel/turbo/commits/v1.12.3/packages/eslint-config-turbo) --- updated-dependencies: - dependency-name: turbo dependency-type: direct:development update-type: version-update:semver-patch dependency-group: turbo - dependency-name: eslint-config-turbo dependency-type: direct:development update-type: version-update:semver-patch dependency-group: turbo ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- internal/eslint-config/package.json | 2 +- package-lock.json | 72 ++++++++++++++--------------- package.json | 2 +- 3 files changed, 38 insertions(+), 38 deletions(-) diff --git a/internal/eslint-config/package.json b/internal/eslint-config/package.json index a946b825..0a630d36 100644 --- a/internal/eslint-config/package.json +++ b/internal/eslint-config/package.json @@ -10,7 +10,7 @@ "@typescript-eslint/parser": "6.20.0", "@vercel/style-guide": "5.2.0", "eslint-config-prettier": "9.1.0", - "eslint-config-turbo": "1.12.2", + "eslint-config-turbo": "1.12.3", "eslint-plugin-only-warn": "1.1.0", "typescript": "5.3.3" } diff --git a/package-lock.json b/package-lock.json index 0e4f73aa..5b8e5912 100644 --- a/package-lock.json +++ b/package-lock.json @@ -26,7 +26,7 @@ "diffscribe": "*", "glob": "10.3.10", "prettier": "3.2.4", - "turbo": "1.12.2" + "turbo": "1.12.3" }, "engines": { "node": ">=20.9.0", @@ -269,7 +269,7 @@ "@typescript-eslint/parser": "6.20.0", "@vercel/style-guide": "5.2.0", "eslint-config-prettier": "9.1.0", - "eslint-config-turbo": "1.12.2", + "eslint-config-turbo": "1.12.3", "eslint-plugin-only-warn": "1.1.0", "typescript": "5.3.3" } @@ -5927,12 +5927,12 @@ } }, "node_modules/eslint-config-turbo": { - "version": "1.12.2", - "resolved": "https://registry.npmjs.org/eslint-config-turbo/-/eslint-config-turbo-1.12.2.tgz", - "integrity": "sha512-JHTGtDQuISBEWIorHenu5AeX1nv16NiDgDVRi1i0VyeYw0SiVh+lSQbv4BawXSnG1nOFpjbopAQdZvdB3PwXbQ==", + "version": "1.12.3", + "resolved": "https://registry.npmjs.org/eslint-config-turbo/-/eslint-config-turbo-1.12.3.tgz", + "integrity": "sha512-Q46MEOiNJpJWC3Et5/YEuIYYhbOieS04yZwQOinO2hpZw3folEXV+hbwVo8M+ap/q8gtpjIWiRMZ1A4QxmhEqQ==", "dev": true, "dependencies": { - "eslint-plugin-turbo": "1.12.2" + "eslint-plugin-turbo": "1.12.3" }, "peerDependencies": { "eslint": ">6.6.0" @@ -6540,9 +6540,9 @@ } }, "node_modules/eslint-plugin-turbo": { - "version": "1.12.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-turbo/-/eslint-plugin-turbo-1.12.2.tgz", - "integrity": "sha512-/l0aGvZRzK1LMRTibRd6ZbEEuD5TtGotDTkZpxSIWA1FI764pWVvQduQMKBaRuz7aTuAo0WxatD8v1scK+qRWw==", + "version": "1.12.3", + "resolved": "https://registry.npmjs.org/eslint-plugin-turbo/-/eslint-plugin-turbo-1.12.3.tgz", + "integrity": "sha512-7hEyxa+oP898EFNoxVenHlH8jtBwV1hbbIkdQWgqDcB0EmVNGVEZkYRo5Hm6BuMAjR433B+NISBJdj0bQo4/Lg==", "dev": true, "dependencies": { "dotenv": "16.0.3" @@ -14905,26 +14905,26 @@ } }, "node_modules/turbo": { - "version": "1.12.2", - "resolved": "https://registry.npmjs.org/turbo/-/turbo-1.12.2.tgz", - "integrity": "sha512-BcoQjBZ+LJCMdjzWhzQflOinUjek28rWXj07aaaAQ8T3Ehs0JFSjIsXOm4qIbo52G4xk3gFVcUtJhh/QRADl7g==", + "version": "1.12.3", + "resolved": "https://registry.npmjs.org/turbo/-/turbo-1.12.3.tgz", + "integrity": "sha512-a6q8I0TK9ohACYbkmxzG/JYPuDC4VCvfmXLTlf321qQ4BIAhoyaOj/O2g+zJ6L1vNYnZ82G4LrbMfgLLngbLsg==", "dev": true, "bin": { "turbo": "bin/turbo" }, "optionalDependencies": { - "turbo-darwin-64": "1.12.2", - "turbo-darwin-arm64": "1.12.2", - "turbo-linux-64": "1.12.2", - "turbo-linux-arm64": "1.12.2", - "turbo-windows-64": "1.12.2", - "turbo-windows-arm64": "1.12.2" + "turbo-darwin-64": "1.12.3", + "turbo-darwin-arm64": "1.12.3", + "turbo-linux-64": "1.12.3", + "turbo-linux-arm64": "1.12.3", + "turbo-windows-64": "1.12.3", + "turbo-windows-arm64": "1.12.3" } }, "node_modules/turbo-darwin-64": { - "version": "1.12.2", - "resolved": "https://registry.npmjs.org/turbo-darwin-64/-/turbo-darwin-64-1.12.2.tgz", - "integrity": "sha512-Aq/ePQ5KNx6XGwlZWTVTqpQYfysm1vkwkI6kAYgrX5DjMWn+tUXrSgNx4YNte0F+V4DQ7PtuWX+jRG0h0ZNg0A==", + "version": "1.12.3", + "resolved": "https://registry.npmjs.org/turbo-darwin-64/-/turbo-darwin-64-1.12.3.tgz", + "integrity": "sha512-dDglIaux+A4jOnB9CDH69sujmrnuLJLrKw1t3J+if6ySlFuxSwC++gDq9TVuOZo2+S7lFkGh+x5ytn3wp+jE8Q==", "cpu": [ "x64" ], @@ -14935,9 +14935,9 @@ ] }, "node_modules/turbo-darwin-arm64": { - "version": "1.12.2", - "resolved": "https://registry.npmjs.org/turbo-darwin-arm64/-/turbo-darwin-arm64-1.12.2.tgz", - "integrity": "sha512-wTr+dqkwJo/eXE+4SPTSeNBKyyfQJhI6I9sKVlCSBmtaNEqoGNgdVzgMUdqrg9AIFzLIiKO+zhfskNaSWpVFow==", + "version": "1.12.3", + "resolved": "https://registry.npmjs.org/turbo-darwin-arm64/-/turbo-darwin-arm64-1.12.3.tgz", + "integrity": "sha512-5TqqeujEyHMoVUWGzSzUl5ERSg7HDCdbU3gBs5ziWTpFRpeJ/+Y15kYyZJcMQcubRIH3Y1hL/yA5IhlGdgXOMA==", "cpu": [ "arm64" ], @@ -14948,9 +14948,9 @@ ] }, "node_modules/turbo-linux-64": { - "version": "1.12.2", - "resolved": "https://registry.npmjs.org/turbo-linux-64/-/turbo-linux-64-1.12.2.tgz", - "integrity": "sha512-BggBKrLojGarDaa2zBo+kUR3fmjpd6bLA8Unm3Aa2oJw0UvEi3Brd+w9lNsPZHXXQYBUzNUY2gCdxf3RteWb0g==", + "version": "1.12.3", + "resolved": "https://registry.npmjs.org/turbo-linux-64/-/turbo-linux-64-1.12.3.tgz", + "integrity": "sha512-yUreU+/gq4vlBtcdyfjz7slwz4zM1RG8sSXvyHmAS+QXqSrGkegg4qLl2fRbv/c3EyA/XbfcZuD6tcrXkejr6g==", "cpu": [ "x64" ], @@ -14961,9 +14961,9 @@ ] }, "node_modules/turbo-linux-arm64": { - "version": "1.12.2", - "resolved": "https://registry.npmjs.org/turbo-linux-arm64/-/turbo-linux-arm64-1.12.2.tgz", - "integrity": "sha512-v/apSRvVuwYjq1D9MJFsHv2EpGd1S4VoSdZvVfW6FaM06L8CFZa92urNR1svdGYN28YVKwK9Ikc9qudC6t/d5A==", + "version": "1.12.3", + "resolved": "https://registry.npmjs.org/turbo-linux-arm64/-/turbo-linux-arm64-1.12.3.tgz", + "integrity": "sha512-XRwAsp2eRSqZmaMVNrmHoKqofeJMuD87zmefZLTRAObh38hIwKgyl2QRsJIbteob5RN77yFbv3lAJ36UIY5h7w==", "cpu": [ "arm64" ], @@ -14974,9 +14974,9 @@ ] }, "node_modules/turbo-windows-64": { - "version": "1.12.2", - "resolved": "https://registry.npmjs.org/turbo-windows-64/-/turbo-windows-64-1.12.2.tgz", - "integrity": "sha512-3uDdwXcRGkgopYFdPDpxQiuQjfQ12Fxq0fhj+iGymav0eWA4W4wzYwSdlUp6rT22qOBIzaEsrIspRwx1DsMkNg==", + "version": "1.12.3", + "resolved": "https://registry.npmjs.org/turbo-windows-64/-/turbo-windows-64-1.12.3.tgz", + "integrity": "sha512-CPnRfnUCtmFeShOtUdMCthySjmyHaoTyh9JueiYFvtCNeO3WfDMj63dpOQstQWHdJFYmIrIGfhAclcds9ePQYA==", "cpu": [ "x64" ], @@ -14987,9 +14987,9 @@ ] }, "node_modules/turbo-windows-arm64": { - "version": "1.12.2", - "resolved": "https://registry.npmjs.org/turbo-windows-arm64/-/turbo-windows-arm64-1.12.2.tgz", - "integrity": "sha512-zNIHnwtQfJSjFi7movwhPQh2rfrcKZ7Xv609EN1yX0gEp9GxooCUi2yNnBQ8wTqFjioA2M5hZtGJQ0RrKaEm/Q==", + "version": "1.12.3", + "resolved": "https://registry.npmjs.org/turbo-windows-arm64/-/turbo-windows-arm64-1.12.3.tgz", + "integrity": "sha512-cYA/wlzvp4vlCNHYJ2AjNS3FLXWwUC/5CJompBkTeKFFB6AviE/iLkbIhFikCVSNXZk/3AGanpMUXIkt3bdlwg==", "cpu": [ "arm64" ], diff --git a/package.json b/package.json index 7caaa79f..1db2ce75 100644 --- a/package.json +++ b/package.json @@ -44,7 +44,7 @@ "diffscribe": "*", "glob": "10.3.10", "prettier": "3.2.4", - "turbo": "1.12.2" + "turbo": "1.12.3" }, "engines": { "node": ">=20.9.0", From ddf84fe9981259f7edd276c0bafbce7bc2dfdc60 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 8 Feb 2024 03:42:43 +0300 Subject: [PATCH 101/458] Bump the eslint group with 2 updates (#326) Bumps the eslint group with 2 updates: [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) and [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser). Updates `@typescript-eslint/eslint-plugin` from 6.20.0 to 6.21.0 - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v6.21.0/packages/eslint-plugin) Updates `@typescript-eslint/parser` from 6.20.0 to 6.21.0 - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v6.21.0/packages/parser) --- updated-dependencies: - dependency-name: "@typescript-eslint/eslint-plugin" dependency-type: direct:development update-type: version-update:semver-minor dependency-group: eslint - dependency-name: "@typescript-eslint/parser" dependency-type: direct:development update-type: version-update:semver-minor dependency-group: eslint ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- internal/eslint-config/package.json | 4 +- package-lock.json | 88 ++++++++++++++--------------- 2 files changed, 46 insertions(+), 46 deletions(-) diff --git a/internal/eslint-config/package.json b/internal/eslint-config/package.json index 0a630d36..07dd1ae9 100644 --- a/internal/eslint-config/package.json +++ b/internal/eslint-config/package.json @@ -6,8 +6,8 @@ "next.js" ], "devDependencies": { - "@typescript-eslint/eslint-plugin": "6.20.0", - "@typescript-eslint/parser": "6.20.0", + "@typescript-eslint/eslint-plugin": "6.21.0", + "@typescript-eslint/parser": "6.21.0", "@vercel/style-guide": "5.2.0", "eslint-config-prettier": "9.1.0", "eslint-config-turbo": "1.12.3", diff --git a/package-lock.json b/package-lock.json index 5b8e5912..325ce3b6 100644 --- a/package-lock.json +++ b/package-lock.json @@ -265,8 +265,8 @@ "name": "@repo/eslint-config", "version": "0.0.0", "devDependencies": { - "@typescript-eslint/eslint-plugin": "6.20.0", - "@typescript-eslint/parser": "6.20.0", + "@typescript-eslint/eslint-plugin": "6.21.0", + "@typescript-eslint/parser": "6.21.0", "@vercel/style-guide": "5.2.0", "eslint-config-prettier": "9.1.0", "eslint-config-turbo": "1.12.3", @@ -3312,16 +3312,16 @@ "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "6.20.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.20.0.tgz", - "integrity": "sha512-fTwGQUnjhoYHeSF6m5pWNkzmDDdsKELYrOBxhjMrofPqCkoC2k3B2wvGHFxa1CTIqkEn88nlW1HVMztjo2K8Hg==", + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.21.0.tgz", + "integrity": "sha512-oy9+hTPCUFpngkEZUSzbf9MxI65wbKFoQYsgPdILTfbUldp5ovUuphZVe4i30emU9M/kP+T64Di0mxl7dSw3MA==", "dev": true, "dependencies": { "@eslint-community/regexpp": "^4.5.1", - "@typescript-eslint/scope-manager": "6.20.0", - "@typescript-eslint/type-utils": "6.20.0", - "@typescript-eslint/utils": "6.20.0", - "@typescript-eslint/visitor-keys": "6.20.0", + "@typescript-eslint/scope-manager": "6.21.0", + "@typescript-eslint/type-utils": "6.21.0", + "@typescript-eslint/utils": "6.21.0", + "@typescript-eslint/visitor-keys": "6.21.0", "debug": "^4.3.4", "graphemer": "^1.4.0", "ignore": "^5.2.4", @@ -3347,15 +3347,15 @@ } }, "node_modules/@typescript-eslint/parser": { - "version": "6.20.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.20.0.tgz", - "integrity": "sha512-bYerPDF/H5v6V76MdMYhjwmwgMA+jlPVqjSDq2cRqMi8bP5sR3Z+RLOiOMad3nsnmDVmn2gAFCyNgh/dIrfP/w==", + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.21.0.tgz", + "integrity": "sha512-tbsV1jPne5CkFQCgPBcDOt30ItF7aJoZL997JSF7MhGQqOeT3svWRYxiqlfA5RUdlHN6Fi+EI9bxqbdyAUZjYQ==", "dev": true, "dependencies": { - "@typescript-eslint/scope-manager": "6.20.0", - "@typescript-eslint/types": "6.20.0", - "@typescript-eslint/typescript-estree": "6.20.0", - "@typescript-eslint/visitor-keys": "6.20.0", + "@typescript-eslint/scope-manager": "6.21.0", + "@typescript-eslint/types": "6.21.0", + "@typescript-eslint/typescript-estree": "6.21.0", + "@typescript-eslint/visitor-keys": "6.21.0", "debug": "^4.3.4" }, "engines": { @@ -3375,13 +3375,13 @@ } }, "node_modules/@typescript-eslint/scope-manager": { - "version": "6.20.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.20.0.tgz", - "integrity": "sha512-p4rvHQRDTI1tGGMDFQm+GtxP1ZHyAh64WANVoyEcNMpaTFn3ox/3CcgtIlELnRfKzSs/DwYlDccJEtr3O6qBvA==", + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.21.0.tgz", + "integrity": "sha512-OwLUIWZJry80O99zvqXVEioyniJMa+d2GrqpUTqi5/v5D5rOrppJVBPa0yKCblcigC0/aYAzxxqQ1B+DS2RYsg==", "dev": true, "dependencies": { - "@typescript-eslint/types": "6.20.0", - "@typescript-eslint/visitor-keys": "6.20.0" + "@typescript-eslint/types": "6.21.0", + "@typescript-eslint/visitor-keys": "6.21.0" }, "engines": { "node": "^16.0.0 || >=18.0.0" @@ -3392,13 +3392,13 @@ } }, "node_modules/@typescript-eslint/type-utils": { - "version": "6.20.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.20.0.tgz", - "integrity": "sha512-qnSobiJQb1F5JjN0YDRPHruQTrX7ICsmltXhkV536mp4idGAYrIyr47zF/JmkJtEcAVnIz4gUYJ7gOZa6SmN4g==", + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.21.0.tgz", + "integrity": "sha512-rZQI7wHfao8qMX3Rd3xqeYSMCL3SoiSQLBATSiVKARdFGCYSRvmViieZjqc58jKgs8Y8i9YvVVhRbHSTA4VBag==", "dev": true, "dependencies": { - "@typescript-eslint/typescript-estree": "6.20.0", - "@typescript-eslint/utils": "6.20.0", + "@typescript-eslint/typescript-estree": "6.21.0", + "@typescript-eslint/utils": "6.21.0", "debug": "^4.3.4", "ts-api-utils": "^1.0.1" }, @@ -3419,9 +3419,9 @@ } }, "node_modules/@typescript-eslint/types": { - "version": "6.20.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.20.0.tgz", - "integrity": "sha512-MM9mfZMAhiN4cOEcUOEx+0HmuaW3WBfukBZPCfwSqFnQy0grXYtngKCqpQN339X3RrwtzspWJrpbrupKYUSBXQ==", + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.21.0.tgz", + "integrity": "sha512-1kFmZ1rOm5epu9NZEZm1kckCDGj5UJEf7P1kliH4LKu/RkwpsfqqGmY2OOcUs18lSlQBKLDYBOGxRVtrMN5lpg==", "dev": true, "engines": { "node": "^16.0.0 || >=18.0.0" @@ -3432,13 +3432,13 @@ } }, "node_modules/@typescript-eslint/typescript-estree": { - "version": "6.20.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.20.0.tgz", - "integrity": "sha512-RnRya9q5m6YYSpBN7IzKu9FmLcYtErkDkc8/dKv81I9QiLLtVBHrjz+Ev/crAqgMNW2FCsoZF4g2QUylMnJz+g==", + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.21.0.tgz", + "integrity": "sha512-6npJTkZcO+y2/kr+z0hc4HwNfrrP4kNYh57ek7yCNlrBjWQ1Y0OS7jiZTkgumrvkX5HkEKXFZkkdFNkaW2wmUQ==", "dev": true, "dependencies": { - "@typescript-eslint/types": "6.20.0", - "@typescript-eslint/visitor-keys": "6.20.0", + "@typescript-eslint/types": "6.21.0", + "@typescript-eslint/visitor-keys": "6.21.0", "debug": "^4.3.4", "globby": "^11.1.0", "is-glob": "^4.0.3", @@ -3484,17 +3484,17 @@ } }, "node_modules/@typescript-eslint/utils": { - "version": "6.20.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.20.0.tgz", - "integrity": "sha512-/EKuw+kRu2vAqCoDwDCBtDRU6CTKbUmwwI7SH7AashZ+W+7o8eiyy6V2cdOqN49KsTcASWsC5QeghYuRDTyOOg==", + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.21.0.tgz", + "integrity": "sha512-NfWVaC8HP9T8cbKQxHcsJBY5YE1O33+jpMwN45qzWWaPDZgLIbo12toGMWnmhvCpd3sIxkpDw3Wv1B3dYrbDQQ==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.4.0", "@types/json-schema": "^7.0.12", "@types/semver": "^7.5.0", - "@typescript-eslint/scope-manager": "6.20.0", - "@typescript-eslint/types": "6.20.0", - "@typescript-eslint/typescript-estree": "6.20.0", + "@typescript-eslint/scope-manager": "6.21.0", + "@typescript-eslint/types": "6.21.0", + "@typescript-eslint/typescript-estree": "6.21.0", "semver": "^7.5.4" }, "engines": { @@ -3509,12 +3509,12 @@ } }, "node_modules/@typescript-eslint/visitor-keys": { - "version": "6.20.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.20.0.tgz", - "integrity": "sha512-E8Cp98kRe4gKHjJD4NExXKz/zOJ1A2hhZc+IMVD6i7w4yjIvh6VyuRI0gRtxAsXtoC35uGMaQ9rjI2zJaXDEAw==", + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.21.0.tgz", + "integrity": "sha512-JJtkDduxLi9bivAB+cYOVMtbkqdPOhZ+ZI5LC47MIRrDV4Yn2o+ZnW10Nkmr28xRpSpdJ6Sm42Hjf2+REYXm0A==", "dev": true, "dependencies": { - "@typescript-eslint/types": "6.20.0", + "@typescript-eslint/types": "6.21.0", "eslint-visitor-keys": "^3.4.1" }, "engines": { From 021b45c92c8df4eba198673c8b571c8820043981 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 8 Feb 2024 03:53:39 +0300 Subject: [PATCH 102/458] Bump redis from 4.6.12 to 4.6.13 (#328) Bumps [redis](https://github.com/redis/node-redis) from 4.6.12 to 4.6.13. - [Release notes](https://github.com/redis/node-redis/releases) - [Changelog](https://github.com/redis/node-redis/blob/master/CHANGELOG.md) - [Commits](https://github.com/redis/node-redis/compare/redis@4.6.12...redis@4.6.13) --- updated-dependencies: - dependency-name: redis dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- package-lock.json | 16 ++++++++-------- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index ac9b20c2..d9bf1a02 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -36,7 +36,7 @@ "eslint": "8.56.0", "fastify": "4.26.0", "pm2": "5.3.1", - "redis": "4.6.12", + "redis": "4.6.13", "rimraf": "5.0.5", "tsx": "4.7.0", "typescript": "5.3.3" diff --git a/package-lock.json b/package-lock.json index 325ce3b6..17d07496 100644 --- a/package-lock.json +++ b/package-lock.json @@ -56,7 +56,7 @@ "eslint": "8.56.0", "fastify": "4.26.0", "pm2": "5.3.1", - "redis": "4.6.12", + "redis": "4.6.13", "rimraf": "5.0.5", "tsx": "4.7.0", "typescript": "5.3.3" @@ -2851,9 +2851,9 @@ } }, "node_modules/@redis/client": { - "version": "1.5.13", - "resolved": "https://registry.npmjs.org/@redis/client/-/client-1.5.13.tgz", - "integrity": "sha512-epkUM9D0Sdmt93/8Ozk43PNjLi36RZzG+d/T1Gdu5AI8jvghonTeLYV69WVWdilvFo+PYxbP0TZ0saMvr6nscQ==", + "version": "1.5.14", + "resolved": "https://registry.npmjs.org/@redis/client/-/client-1.5.14.tgz", + "integrity": "sha512-YGn0GqsRBFUQxklhY7v562VMOP0DcmlrHHs3IV1mFE3cbxe31IITUkqhBcIhVSI/2JqtWAJXg5mjV4aU+zD0HA==", "dependencies": { "cluster-key-slot": "1.1.2", "generic-pool": "3.9.0", @@ -12737,12 +12737,12 @@ } }, "node_modules/redis": { - "version": "4.6.12", - "resolved": "https://registry.npmjs.org/redis/-/redis-4.6.12.tgz", - "integrity": "sha512-41Xuuko6P4uH4VPe5nE3BqXHB7a9lkFL0J29AlxKaIfD6eWO8VO/5PDF9ad2oS+mswMsfFxaM5DlE3tnXT+P8Q==", + "version": "4.6.13", + "resolved": "https://registry.npmjs.org/redis/-/redis-4.6.13.tgz", + "integrity": "sha512-MHgkS4B+sPjCXpf+HfdetBwbRz6vCtsceTmw1pHNYJAsYxrfpOP6dz+piJWGos8wqG7qb3vj/Rrc5qOlmInUuA==", "dependencies": { "@redis/bloom": "1.2.0", - "@redis/client": "1.5.13", + "@redis/client": "1.5.14", "@redis/graph": "1.1.1", "@redis/json": "1.0.6", "@redis/search": "1.1.6", From a0bba315265e2245919fd04fb9c5013a1ab364ea Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 8 Feb 2024 01:01:24 +0000 Subject: [PATCH 103/458] Bump the definitely-typed group with 2 updates (#330) --- apps/cache-testing/package.json | 4 ++-- docs/cache-handler-docs/package.json | 4 ++-- package-lock.json | 20 ++++++++++---------- 3 files changed, 14 insertions(+), 14 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index d9bf1a02..ab22f19e 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -30,8 +30,8 @@ "@repo/typescript-config": "*", "@types/eslint": "8.56.2", "@types/node": "20.11.16", - "@types/react": "18.2.52", - "@types/react-dom": "18.2.18", + "@types/react": "18.2.55", + "@types/react-dom": "18.2.19", "dotenv-cli": "7.3.0", "eslint": "8.56.0", "fastify": "4.26.0", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 3ddfb352..ad00bb18 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -23,8 +23,8 @@ "@repo/typescript-config": "*", "@types/eslint": "8.56.2", "@types/node": "20.11.16", - "@types/react": "18.2.52", - "@types/react-dom": "18.2.18", + "@types/react": "18.2.55", + "@types/react-dom": "18.2.19", "eslint": "8.56.0", "typescript": "5.3.3" } diff --git a/package-lock.json b/package-lock.json index 17d07496..fb4bb170 100644 --- a/package-lock.json +++ b/package-lock.json @@ -50,8 +50,8 @@ "@repo/typescript-config": "*", "@types/eslint": "8.56.2", "@types/node": "20.11.16", - "@types/react": "18.2.52", - "@types/react-dom": "18.2.18", + "@types/react": "18.2.55", + "@types/react-dom": "18.2.19", "dotenv-cli": "7.3.0", "eslint": "8.56.0", "fastify": "4.26.0", @@ -131,8 +131,8 @@ "@repo/typescript-config": "*", "@types/eslint": "8.56.2", "@types/node": "20.11.16", - "@types/react": "18.2.52", - "@types/react-dom": "18.2.18", + "@types/react": "18.2.55", + "@types/react-dom": "18.2.19", "eslint": "8.56.0", "typescript": "5.3.3" } @@ -3278,9 +3278,9 @@ "integrity": "sha512-ga8y9v9uyeiLdpKddhxYQkxNDrfvuPrlFb0N1qnZZByvcElJaXthF1UhvCh9TLWJBEHeNtdnbysW7Y6Uq8CVng==" }, "node_modules/@types/react": { - "version": "18.2.52", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.52.tgz", - "integrity": "sha512-E/YjWh3tH+qsLKaUzgpZb5AY0ChVa+ZJzF7ogehVILrFpdQk6nC/WXOv0bfFEABbXbgNxLBGU7IIZByPKb6eBw==", + "version": "18.2.55", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.55.tgz", + "integrity": "sha512-Y2Tz5P4yz23brwm2d7jNon39qoAtMMmalOQv6+fEFt1mT+FcM3D841wDpoUvFXhaYenuROCy3FZYqdTjM7qVyA==", "dependencies": { "@types/prop-types": "*", "@types/scheduler": "*", @@ -3288,9 +3288,9 @@ } }, "node_modules/@types/react-dom": { - "version": "18.2.18", - "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.2.18.tgz", - "integrity": "sha512-TJxDm6OfAX2KJWJdMEVTwWke5Sc/E/RlnPGvGfS0W7+6ocy2xhDVQVh/KvC2Uf7kACs+gDytdusDSdWfWkaNzw==", + "version": "18.2.19", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.2.19.tgz", + "integrity": "sha512-aZvQL6uUbIJpjZk4U8JZGbau9KDeAwMfmhyWorxgBkqDIEf6ROjRozcmPIicqsUwPUjbkDfHKgGee1Lq65APcA==", "dev": true, "dependencies": { "@types/react": "*" From 97367674c192eb7406e9a2098fcdc608abab0d0f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 8 Feb 2024 04:15:41 +0300 Subject: [PATCH 104/458] Bump prettier from 3.2.4 to 3.2.5 (#327) * Bump prettier from 3.2.4 to 3.2.5 Bumps [prettier](https://github.com/prettier/prettier) from 3.2.4 to 3.2.5. - [Release notes](https://github.com/prettier/prettier/releases) - [Changelog](https://github.com/prettier/prettier/blob/main/CHANGELOG.md) - [Commits](https://github.com/prettier/prettier/compare/3.2.4...3.2.5) --- updated-dependencies: - dependency-name: prettier dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] * Fix `tsconfig.json` codestyle --------- Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Arseny <132773930+better-salmon@users.noreply.github.com> --- apps/cache-testing/tsconfig.json | 10 +++++----- docs/cache-handler-docs/tsconfig.json | 10 +++++----- internal/backend/tsconfig.json | 2 +- internal/next-common/tsconfig.json | 2 +- internal/next-lru-cache/tsconfig.json | 2 +- package-lock.json | 8 ++++---- package.json | 2 +- packages/cache-handler/tsconfig.json | 8 ++++---- packages/diffscribe/tsconfig.json | 2 +- packages/json-replacer-reviver/tsconfig.json | 2 +- packages/server/tsconfig.json | 2 +- tsconfig.json | 2 +- 12 files changed, 26 insertions(+), 26 deletions(-) diff --git a/apps/cache-testing/tsconfig.json b/apps/cache-testing/tsconfig.json index 6e0a4c86..cb9fb159 100644 --- a/apps/cache-testing/tsconfig.json +++ b/apps/cache-testing/tsconfig.json @@ -2,15 +2,15 @@ "extends": "@repo/typescript-config/nextjs.json", "compilerOptions": { "paths": { - "cache-testing/*": ["./src/*"], + "cache-testing/*": ["./src/*"] }, "plugins": [ { - "name": "next", - }, + "name": "next" + } ], - "strictNullChecks": true, + "strictNullChecks": true }, "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx", ".next/types/**/*.ts", "run-app-instances.ts"], - "exclude": ["node_modules"], + "exclude": ["node_modules"] } diff --git a/docs/cache-handler-docs/tsconfig.json b/docs/cache-handler-docs/tsconfig.json index 70af0e0d..47cee942 100644 --- a/docs/cache-handler-docs/tsconfig.json +++ b/docs/cache-handler-docs/tsconfig.json @@ -2,15 +2,15 @@ "extends": "@repo/typescript-config/nextjs.json", "compilerOptions": { "paths": { - "cache-handler-docs/*": ["./src/*"], + "cache-handler-docs/*": ["./src/*"] }, "plugins": [ { - "name": "next", - }, - ], + "name": "next" + } + ] }, "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx", ".next/types/**/*.ts", "run-app-instances.ts"], - "exclude": ["node_modules"], + "exclude": ["node_modules"] } diff --git a/internal/backend/tsconfig.json b/internal/backend/tsconfig.json index 15bd4c30..b0d5b0ac 100644 --- a/internal/backend/tsconfig.json +++ b/internal/backend/tsconfig.json @@ -1,5 +1,5 @@ { "extends": "@repo/typescript-config/library.json", "include": ["."], - "exclude": ["dist", "node_modules"], + "exclude": ["dist", "node_modules"] } diff --git a/internal/next-common/tsconfig.json b/internal/next-common/tsconfig.json index 15bd4c30..b0d5b0ac 100644 --- a/internal/next-common/tsconfig.json +++ b/internal/next-common/tsconfig.json @@ -1,5 +1,5 @@ { "extends": "@repo/typescript-config/library.json", "include": ["."], - "exclude": ["dist", "node_modules"], + "exclude": ["dist", "node_modules"] } diff --git a/internal/next-lru-cache/tsconfig.json b/internal/next-lru-cache/tsconfig.json index 15bd4c30..b0d5b0ac 100644 --- a/internal/next-lru-cache/tsconfig.json +++ b/internal/next-lru-cache/tsconfig.json @@ -1,5 +1,5 @@ { "extends": "@repo/typescript-config/library.json", "include": ["."], - "exclude": ["dist", "node_modules"], + "exclude": ["dist", "node_modules"] } diff --git a/package-lock.json b/package-lock.json index fb4bb170..be5a4009 100644 --- a/package-lock.json +++ b/package-lock.json @@ -25,7 +25,7 @@ "@repo/typescript-config": "*", "diffscribe": "*", "glob": "10.3.10", - "prettier": "3.2.4", + "prettier": "3.2.5", "turbo": "1.12.3" }, "engines": { @@ -12403,9 +12403,9 @@ } }, "node_modules/prettier": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.2.4.tgz", - "integrity": "sha512-FWu1oLHKCrtpO1ypU6J0SbK2d9Ckwysq6bHj/uaCP26DxrPpppCLQRGVuqAxSTvhF00AcvDRyYrLNW7ocBhFFQ==", + "version": "3.2.5", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.2.5.tgz", + "integrity": "sha512-3/GWa9aOC0YeD7LUfvOG2NiDyhOWRvt1k+rcKhOuYnMY24iiCphgneUfJDyFXd6rZCAnuLBv6UeAULtrhT/F4A==", "dev": true, "bin": { "prettier": "bin/prettier.cjs" diff --git a/package.json b/package.json index 1db2ce75..8b024767 100644 --- a/package.json +++ b/package.json @@ -43,7 +43,7 @@ "@repo/typescript-config": "*", "diffscribe": "*", "glob": "10.3.10", - "prettier": "3.2.4", + "prettier": "3.2.5", "turbo": "1.12.3" }, "engines": { diff --git a/packages/cache-handler/tsconfig.json b/packages/cache-handler/tsconfig.json index d44796d3..9c0ddbfb 100644 --- a/packages/cache-handler/tsconfig.json +++ b/packages/cache-handler/tsconfig.json @@ -6,8 +6,8 @@ "paths": { "@neshca/next-common": ["../../internal/next-common/src/next-common.ts"], "@neshca/next-lru-cache/next-cache-handler-value": [ - "../../internal/next-lru-cache/src/cache-types/next-cache-handler-value.ts", - ], - }, - }, + "../../internal/next-lru-cache/src/cache-types/next-cache-handler-value.ts" + ] + } + } } diff --git a/packages/diffscribe/tsconfig.json b/packages/diffscribe/tsconfig.json index 15bd4c30..b0d5b0ac 100644 --- a/packages/diffscribe/tsconfig.json +++ b/packages/diffscribe/tsconfig.json @@ -1,5 +1,5 @@ { "extends": "@repo/typescript-config/library.json", "include": ["."], - "exclude": ["dist", "node_modules"], + "exclude": ["dist", "node_modules"] } diff --git a/packages/json-replacer-reviver/tsconfig.json b/packages/json-replacer-reviver/tsconfig.json index 15bd4c30..b0d5b0ac 100644 --- a/packages/json-replacer-reviver/tsconfig.json +++ b/packages/json-replacer-reviver/tsconfig.json @@ -1,5 +1,5 @@ { "extends": "@repo/typescript-config/library.json", "include": ["."], - "exclude": ["dist", "node_modules"], + "exclude": ["dist", "node_modules"] } diff --git a/packages/server/tsconfig.json b/packages/server/tsconfig.json index 15bd4c30..b0d5b0ac 100644 --- a/packages/server/tsconfig.json +++ b/packages/server/tsconfig.json @@ -1,5 +1,5 @@ { "extends": "@repo/typescript-config/library.json", "include": ["."], - "exclude": ["dist", "node_modules"], + "exclude": ["dist", "node_modules"] } diff --git a/tsconfig.json b/tsconfig.json index 18c87879..c0380efe 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -1,3 +1,3 @@ { - "extends": "@repo/typescript-config/library.json", + "extends": "@repo/typescript-config/library.json" } From 9bd01ab2a814307af9f22f1f377af5c6cfe52df2 Mon Sep 17 00:00:00 2001 From: Seongha Jeon Date: Wed, 14 Feb 2024 16:32:06 +0900 Subject: [PATCH 105/458] Fix typo to redis-stack.mdx (#339) --- docs/cache-handler-docs/src/pages/redis-stack.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/cache-handler-docs/src/pages/redis-stack.mdx b/docs/cache-handler-docs/src/pages/redis-stack.mdx index 6d041594..4c93b2b5 100644 --- a/docs/cache-handler-docs/src/pages/redis-stack.mdx +++ b/docs/cache-handler-docs/src/pages/redis-stack.mdx @@ -32,7 +32,7 @@ IncrementalCache.onCreation(async () => { client, useTtl, // timeout for the Redis client operations like `get` and `set` - // afeter this timeout, the operation will be considered failed and the `localCache` will be used + // after this timeout, the operation will be considered failed and the `localCache` will be used timeoutMs: 5000, }); From 15f449e48a4e242f43692a6437a411ae41bb929c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 20 Feb 2024 10:53:18 +0300 Subject: [PATCH 106/458] Bump the definitely-typed group with 2 updates (#347) Bumps the definitely-typed group with 2 updates: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) and [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react). Updates `@types/node` from 20.11.16 to 20.11.19 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) Updates `@types/react` from 18.2.55 to 18.2.56 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react) --- updated-dependencies: - dependency-name: "@types/node" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed - dependency-name: "@types/react" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 4 +- docs/cache-handler-docs/package.json | 4 +- internal/backend/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 123 ++++---------------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 10 files changed, 36 insertions(+), 109 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index ab22f19e..2980f4a0 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -29,8 +29,8 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.2", - "@types/node": "20.11.16", - "@types/react": "18.2.55", + "@types/node": "20.11.19", + "@types/react": "18.2.56", "@types/react-dom": "18.2.19", "dotenv-cli": "7.3.0", "eslint": "8.56.0", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index ad00bb18..1fb64c19 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -22,8 +22,8 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.2", - "@types/node": "20.11.16", - "@types/react": "18.2.55", + "@types/node": "20.11.19", + "@types/react": "18.2.56", "@types/react-dom": "18.2.19", "eslint": "8.56.0", "typescript": "5.3.3" diff --git a/internal/backend/package.json b/internal/backend/package.json index 380d4bcb..2c845f9e 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.16", + "@types/node": "20.11.19", "pino-pretty": "10.3.1", "rimraf": "5.0.5", "tsx": "4.7.0", diff --git a/internal/next-common/package.json b/internal/next-common/package.json index b568e92b..946be6db 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.16", + "@types/node": "20.11.19", "rimraf": "5.0.5", "typescript": "5.3.3" } diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index fcc6e293..0ae98923 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -16,7 +16,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.16", + "@types/node": "20.11.19", "rimraf": "5.0.5", "typescript": "5.3.3" } diff --git a/package-lock.json b/package-lock.json index be5a4009..9c582293 100644 --- a/package-lock.json +++ b/package-lock.json @@ -49,8 +49,8 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.2", - "@types/node": "20.11.16", - "@types/react": "18.2.55", + "@types/node": "20.11.19", + "@types/react": "18.2.56", "@types/react-dom": "18.2.19", "dotenv-cli": "7.3.0", "eslint": "8.56.0", @@ -62,15 +62,6 @@ "typescript": "5.3.3" } }, - "apps/cache-testing/node_modules/@types/node": { - "version": "20.11.16", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.16.tgz", - "integrity": "sha512-gKb0enTmRCzXSSUJDq6/sPcqrfCv2mkkG6Jt/clpn5eiCbKTY+SgZUxo+p8ZKMof5dCp9vHQUAB7wOUTod22wQ==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "apps/cache-testing/node_modules/next": { "version": "14.1.1-canary.27", "resolved": "https://registry.npmjs.org/next/-/next-14.1.1-canary.27.tgz", @@ -130,8 +121,8 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.2", - "@types/node": "20.11.16", - "@types/react": "18.2.55", + "@types/node": "20.11.19", + "@types/react": "18.2.56", "@types/react-dom": "18.2.19", "eslint": "8.56.0", "typescript": "5.3.3" @@ -146,15 +137,6 @@ "glob": "10.3.10" } }, - "docs/cache-handler-docs/node_modules/@types/node": { - "version": "20.11.16", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.16.tgz", - "integrity": "sha512-gKb0enTmRCzXSSUJDq6/sPcqrfCv2mkkG6Jt/clpn5eiCbKTY+SgZUxo+p8ZKMof5dCp9vHQUAB7wOUTod22wQ==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "docs/cache-handler-docs/node_modules/nextra": { "version": "2.13.3", "resolved": "https://registry.npmjs.org/nextra/-/nextra-2.13.3.tgz", @@ -245,22 +227,13 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.16", + "@types/node": "20.11.19", "pino-pretty": "10.3.1", "rimraf": "5.0.5", "tsx": "4.7.0", "typescript": "5.3.3" } }, - "internal/backend/node_modules/@types/node": { - "version": "20.11.16", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.16.tgz", - "integrity": "sha512-gKb0enTmRCzXSSUJDq6/sPcqrfCv2mkkG6Jt/clpn5eiCbKTY+SgZUxo+p8ZKMof5dCp9vHQUAB7wOUTod22wQ==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "internal/eslint-config": { "name": "@repo/eslint-config", "version": "0.0.0", @@ -344,20 +317,11 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.16", + "@types/node": "20.11.19", "rimraf": "5.0.5", "typescript": "5.3.3" } }, - "internal/next-common/node_modules/@types/node": { - "version": "20.11.16", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.16.tgz", - "integrity": "sha512-gKb0enTmRCzXSSUJDq6/sPcqrfCv2mkkG6Jt/clpn5eiCbKTY+SgZUxo+p8ZKMof5dCp9vHQUAB7wOUTod22wQ==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "internal/next-common/node_modules/next": { "version": "14.1.1-canary.27", "resolved": "https://registry.npmjs.org/next/-/next-14.1.1-canary.27.tgz", @@ -413,20 +377,11 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.16", + "@types/node": "20.11.19", "rimraf": "5.0.5", "typescript": "5.3.3" } }, - "internal/next-lru-cache/node_modules/@types/node": { - "version": "20.11.16", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.16.tgz", - "integrity": "sha512-gKb0enTmRCzXSSUJDq6/sPcqrfCv2mkkG6Jt/clpn5eiCbKTY+SgZUxo+p8ZKMof5dCp9vHQUAB7wOUTod22wQ==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "internal/prettier-config": { "name": "@repo/prettier-config", "version": "0.0.0", @@ -1967,6 +1922,11 @@ "fs-extra": "^8.1.0" } }, + "node_modules/@manypkg/find-root/node_modules/@types/node": { + "version": "12.20.55", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", + "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" + }, "node_modules/@manypkg/find-root/node_modules/fs-extra": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", @@ -3253,9 +3213,12 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "12.20.55", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", - "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" + "version": "20.11.19", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.19.tgz", + "integrity": "sha512-7xMnVEcZFu0DikYjWOlRq7NTPETrm7teqUT2WkQjrTIkEgUyyGdWsj/Zg8bEJt5TNklzbPD1X3fqfsHw3SpapQ==", + "dependencies": { + "undici-types": "~5.26.4" + } }, "node_modules/@types/node-fetch": { "version": "2.6.11", @@ -3278,9 +3241,9 @@ "integrity": "sha512-ga8y9v9uyeiLdpKddhxYQkxNDrfvuPrlFb0N1qnZZByvcElJaXthF1UhvCh9TLWJBEHeNtdnbysW7Y6Uq8CVng==" }, "node_modules/@types/react": { - "version": "18.2.55", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.55.tgz", - "integrity": "sha512-Y2Tz5P4yz23brwm2d7jNon39qoAtMMmalOQv6+fEFt1mT+FcM3D841wDpoUvFXhaYenuROCy3FZYqdTjM7qVyA==", + "version": "18.2.56", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.56.tgz", + "integrity": "sha512-NpwHDMkS/EFZF2dONFQHgkPRwhvgq/OAvIaGQzxGSBmaeR++kTg6njr15Vatz0/2VcCEwJQFi6Jf4Q0qBu0rLA==", "dependencies": { "@types/prop-types": "*", "@types/scheduler": "*", @@ -16144,7 +16107,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.16", + "@types/node": "20.11.19", "rimraf": "5.0.5", "tsup": "8.0.1", "tsx": "4.7.0", @@ -16155,15 +16118,6 @@ "redis": ">=4.6" } }, - "packages/cache-handler/node_modules/@types/node": { - "version": "20.11.16", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.16.tgz", - "integrity": "sha512-gKb0enTmRCzXSSUJDq6/sPcqrfCv2mkkG6Jt/clpn5eiCbKTY+SgZUxo+p8ZKMof5dCp9vHQUAB7wOUTod22wQ==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "packages/diffscribe": { "version": "0.2.2", "license": "MIT", @@ -16172,7 +16126,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.16", + "@types/node": "20.11.19", "rimraf": "5.0.5", "tsup": "8.0.1", "typescript": "5.3.3" @@ -16182,37 +16136,19 @@ "openai": "^4.12.3" } }, - "packages/diffscribe/node_modules/@types/node": { - "version": "20.11.16", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.16.tgz", - "integrity": "sha512-gKb0enTmRCzXSSUJDq6/sPcqrfCv2mkkG6Jt/clpn5eiCbKTY+SgZUxo+p8ZKMof5dCp9vHQUAB7wOUTod22wQ==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "packages/json-replacer-reviver": { "name": "@neshca/json-replacer-reviver", "version": "1.1.1", "license": "MIT", "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.16", + "@types/node": "20.11.19", "rimraf": "5.0.5", "tsup": "8.0.1", "tsx": "4.7.0", "typescript": "5.3.3" } }, - "packages/json-replacer-reviver/node_modules/@types/node": { - "version": "20.11.16", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.16.tgz", - "integrity": "sha512-gKb0enTmRCzXSSUJDq6/sPcqrfCv2mkkG6Jt/clpn5eiCbKTY+SgZUxo+p8ZKMof5dCp9vHQUAB7wOUTod22wQ==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "packages/server": { "name": "@neshca/server", "version": "0.6.1", @@ -16228,21 +16164,12 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.16", + "@types/node": "20.11.19", "rimraf": "5.0.5", "tsup": "8.0.1", "tsx": "4.7.0", "typescript": "5.3.3" } - }, - "packages/server/node_modules/@types/node": { - "version": "20.11.16", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.16.tgz", - "integrity": "sha512-gKb0enTmRCzXSSUJDq6/sPcqrfCv2mkkG6Jt/clpn5eiCbKTY+SgZUxo+p8ZKMof5dCp9vHQUAB7wOUTod22wQ==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } } } } diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index bbd34667..1182fd6a 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -73,7 +73,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.16", + "@types/node": "20.11.19", "rimraf": "5.0.5", "tsup": "8.0.1", "tsx": "4.7.0", diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index 48443e2d..20f0808e 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -25,7 +25,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.16", + "@types/node": "20.11.19", "rimraf": "5.0.5", "tsup": "8.0.1", "typescript": "5.3.3" diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 347b703b..b75ddea3 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -28,7 +28,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.16", + "@types/node": "20.11.19", "rimraf": "5.0.5", "tsup": "8.0.1", "tsx": "4.7.0", diff --git a/packages/server/package.json b/packages/server/package.json index 25da970e..40978769 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -32,7 +32,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.16", + "@types/node": "20.11.19", "rimraf": "5.0.5", "tsup": "8.0.1", "tsx": "4.7.0", From 53495b0d4b278e2756f22d64fc2aceac1edf9cbf Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 20 Feb 2024 11:01:31 +0300 Subject: [PATCH 107/458] Bump tsx from 4.7.0 to 4.7.1 (#337) Bumps [tsx](https://github.com/privatenumber/tsx) from 4.7.0 to 4.7.1. - [Release notes](https://github.com/privatenumber/tsx/releases) - [Changelog](https://github.com/privatenumber/tsx/blob/develop/release.config.cjs) - [Commits](https://github.com/privatenumber/tsx/compare/v4.7.0...v4.7.1) --- updated-dependencies: - dependency-name: tsx dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- internal/backend/package.json | 2 +- package-lock.json | 16 ++++++++-------- packages/cache-handler/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 6 files changed, 13 insertions(+), 13 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 2980f4a0..97cabb0f 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -38,7 +38,7 @@ "pm2": "5.3.1", "redis": "4.6.13", "rimraf": "5.0.5", - "tsx": "4.7.0", + "tsx": "4.7.1", "typescript": "5.3.3" } } diff --git a/internal/backend/package.json b/internal/backend/package.json index 2c845f9e..50925786 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -18,7 +18,7 @@ "@types/node": "20.11.19", "pino-pretty": "10.3.1", "rimraf": "5.0.5", - "tsx": "4.7.0", + "tsx": "4.7.1", "typescript": "5.3.3" } } diff --git a/package-lock.json b/package-lock.json index 9c582293..015bc9ee 100644 --- a/package-lock.json +++ b/package-lock.json @@ -58,7 +58,7 @@ "pm2": "5.3.1", "redis": "4.6.13", "rimraf": "5.0.5", - "tsx": "4.7.0", + "tsx": "4.7.1", "typescript": "5.3.3" } }, @@ -230,7 +230,7 @@ "@types/node": "20.11.19", "pino-pretty": "10.3.1", "rimraf": "5.0.5", - "tsx": "4.7.0", + "tsx": "4.7.1", "typescript": "5.3.3" } }, @@ -14742,9 +14742,9 @@ "dev": true }, "node_modules/tsx": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.7.0.tgz", - "integrity": "sha512-I+t79RYPlEYlHn9a+KzwrvEwhJg35h/1zHsLC2JXvhC2mdynMv6Zxzvhv5EMV6VF5qJlLlkSnMVvdZV3PSIGcg==", + "version": "4.7.1", + "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.7.1.tgz", + "integrity": "sha512-8d6VuibXHtlN5E3zFkgY8u4DX7Y3Z27zvvPKVmLon/D4AjuKzarkUBTLDBgj9iTQ0hg5xM7c/mYiRVM+HETf0g==", "dev": true, "dependencies": { "esbuild": "~0.19.10", @@ -16110,7 +16110,7 @@ "@types/node": "20.11.19", "rimraf": "5.0.5", "tsup": "8.0.1", - "tsx": "4.7.0", + "tsx": "4.7.1", "typescript": "5.3.3" }, "peerDependencies": { @@ -16145,7 +16145,7 @@ "@types/node": "20.11.19", "rimraf": "5.0.5", "tsup": "8.0.1", - "tsx": "4.7.0", + "tsx": "4.7.1", "typescript": "5.3.3" } }, @@ -16167,7 +16167,7 @@ "@types/node": "20.11.19", "rimraf": "5.0.5", "tsup": "8.0.1", - "tsx": "4.7.0", + "tsx": "4.7.1", "typescript": "5.3.3" } } diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 1182fd6a..7157e5e4 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -76,7 +76,7 @@ "@types/node": "20.11.19", "rimraf": "5.0.5", "tsup": "8.0.1", - "tsx": "4.7.0", + "tsx": "4.7.1", "typescript": "5.3.3" }, "peerDependencies": { diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index b75ddea3..d97b0835 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -31,7 +31,7 @@ "@types/node": "20.11.19", "rimraf": "5.0.5", "tsup": "8.0.1", - "tsx": "4.7.0", + "tsx": "4.7.1", "typescript": "5.3.3" } } diff --git a/packages/server/package.json b/packages/server/package.json index 40978769..0eb378fa 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -35,7 +35,7 @@ "@types/node": "20.11.19", "rimraf": "5.0.5", "tsup": "8.0.1", - "tsx": "4.7.0", + "tsx": "4.7.1", "typescript": "5.3.3" }, "distTags": [ From 4ab73a4588904b66d8be58fadcfdd70799f27475 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 20 Feb 2024 11:12:41 +0300 Subject: [PATCH 108/458] Bump tsup from 8.0.1 to 8.0.2 (#336) Bumps [tsup](https://github.com/egoist/tsup) from 8.0.1 to 8.0.2. - [Release notes](https://github.com/egoist/tsup/releases) - [Changelog](https://github.com/egoist/tsup/blob/dev/.releaserc.json) - [Commits](https://github.com/egoist/tsup/compare/v8.0.1...v8.0.2) --- updated-dependencies: - dependency-name: tsup dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 14 +++++++------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 5 files changed, 11 insertions(+), 11 deletions(-) diff --git a/package-lock.json b/package-lock.json index 015bc9ee..5aa9cdb3 100644 --- a/package-lock.json +++ b/package-lock.json @@ -14569,9 +14569,9 @@ "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==" }, "node_modules/tsup": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/tsup/-/tsup-8.0.1.tgz", - "integrity": "sha512-hvW7gUSG96j53ZTSlT4j/KL0q1Q2l6TqGBFc6/mu/L46IoNWqLLUzLRLP1R8Q7xrJTmkDxxDoojV5uCVs1sVOg==", + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/tsup/-/tsup-8.0.2.tgz", + "integrity": "sha512-NY8xtQXdH7hDUAZwcQdY/Vzlw9johQsaqf7iwZ6g1DOUlFYQ5/AtVAjTvihhEyeRlGo4dLRVHtrRaL35M1daqQ==", "dev": true, "dependencies": { "bundle-require": "^4.0.0", @@ -16109,7 +16109,7 @@ "@repo/typescript-config": "*", "@types/node": "20.11.19", "rimraf": "5.0.5", - "tsup": "8.0.1", + "tsup": "8.0.2", "tsx": "4.7.1", "typescript": "5.3.3" }, @@ -16128,7 +16128,7 @@ "@repo/typescript-config": "*", "@types/node": "20.11.19", "rimraf": "5.0.5", - "tsup": "8.0.1", + "tsup": "8.0.2", "typescript": "5.3.3" }, "peerDependencies": { @@ -16144,7 +16144,7 @@ "@repo/typescript-config": "*", "@types/node": "20.11.19", "rimraf": "5.0.5", - "tsup": "8.0.1", + "tsup": "8.0.2", "tsx": "4.7.1", "typescript": "5.3.3" } @@ -16166,7 +16166,7 @@ "@repo/typescript-config": "*", "@types/node": "20.11.19", "rimraf": "5.0.5", - "tsup": "8.0.1", + "tsup": "8.0.2", "tsx": "4.7.1", "typescript": "5.3.3" } diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 7157e5e4..385f1012 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -75,7 +75,7 @@ "@repo/typescript-config": "*", "@types/node": "20.11.19", "rimraf": "5.0.5", - "tsup": "8.0.1", + "tsup": "8.0.2", "tsx": "4.7.1", "typescript": "5.3.3" }, diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index 20f0808e..0ae3d974 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -27,7 +27,7 @@ "@repo/typescript-config": "*", "@types/node": "20.11.19", "rimraf": "5.0.5", - "tsup": "8.0.1", + "tsup": "8.0.2", "typescript": "5.3.3" }, "peerDependencies": { diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index d97b0835..de8be445 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -30,7 +30,7 @@ "@repo/typescript-config": "*", "@types/node": "20.11.19", "rimraf": "5.0.5", - "tsup": "8.0.1", + "tsup": "8.0.2", "tsx": "4.7.1", "typescript": "5.3.3" } diff --git a/packages/server/package.json b/packages/server/package.json index 0eb378fa..5408a22b 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -34,7 +34,7 @@ "@repo/typescript-config": "*", "@types/node": "20.11.19", "rimraf": "5.0.5", - "tsup": "8.0.1", + "tsup": "8.0.2", "tsx": "4.7.1", "typescript": "5.3.3" }, From 215ba786b1be16b4c3b30473f0b5d5d4252b5830 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 20 Feb 2024 11:23:21 +0300 Subject: [PATCH 109/458] Bump the eslint group with 2 updates (#346) Bumps the eslint group with 2 updates: [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) and [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser). Updates `@typescript-eslint/eslint-plugin` from 6.21.0 to 7.0.2 - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v7.0.2/packages/eslint-plugin) Updates `@typescript-eslint/parser` from 6.21.0 to 7.0.2 - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v7.0.2/packages/parser) --- updated-dependencies: - dependency-name: "@typescript-eslint/eslint-plugin" dependency-type: direct:development update-type: version-update:semver-major dependency-group: eslint - dependency-name: "@typescript-eslint/parser" dependency-type: direct:development update-type: version-update:semver-major dependency-group: eslint ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- internal/eslint-config/package.json | 4 +- package-lock.json | 429 ++++++++++++++++++++++++++-- 2 files changed, 408 insertions(+), 25 deletions(-) diff --git a/internal/eslint-config/package.json b/internal/eslint-config/package.json index 07dd1ae9..45aabeac 100644 --- a/internal/eslint-config/package.json +++ b/internal/eslint-config/package.json @@ -6,8 +6,8 @@ "next.js" ], "devDependencies": { - "@typescript-eslint/eslint-plugin": "6.21.0", - "@typescript-eslint/parser": "6.21.0", + "@typescript-eslint/eslint-plugin": "7.0.2", + "@typescript-eslint/parser": "7.0.2", "@vercel/style-guide": "5.2.0", "eslint-config-prettier": "9.1.0", "eslint-config-turbo": "1.12.3", diff --git a/package-lock.json b/package-lock.json index 5aa9cdb3..c5348883 100644 --- a/package-lock.json +++ b/package-lock.json @@ -238,8 +238,8 @@ "name": "@repo/eslint-config", "version": "0.0.0", "devDependencies": { - "@typescript-eslint/eslint-plugin": "6.21.0", - "@typescript-eslint/parser": "6.21.0", + "@typescript-eslint/eslint-plugin": "7.0.2", + "@typescript-eslint/parser": "7.0.2", "@vercel/style-guide": "5.2.0", "eslint-config-prettier": "9.1.0", "eslint-config-turbo": "1.12.3", @@ -258,6 +258,34 @@ "glob": "10.3.10" } }, + "internal/eslint-config/node_modules/@typescript-eslint/parser": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.21.0.tgz", + "integrity": "sha512-tbsV1jPne5CkFQCgPBcDOt30ItF7aJoZL997JSF7MhGQqOeT3svWRYxiqlfA5RUdlHN6Fi+EI9bxqbdyAUZjYQ==", + "dev": true, + "dependencies": { + "@typescript-eslint/scope-manager": "6.21.0", + "@typescript-eslint/types": "6.21.0", + "@typescript-eslint/typescript-estree": "6.21.0", + "@typescript-eslint/visitor-keys": "6.21.0", + "debug": "^4.3.4" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, "internal/eslint-config/node_modules/@vercel/style-guide": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/@vercel/style-guide/-/style-guide-5.2.0.tgz", @@ -308,6 +336,41 @@ } } }, + "internal/eslint-config/node_modules/@vercel/style-guide/node_modules/@typescript-eslint/eslint-plugin": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.21.0.tgz", + "integrity": "sha512-oy9+hTPCUFpngkEZUSzbf9MxI65wbKFoQYsgPdILTfbUldp5ovUuphZVe4i30emU9M/kP+T64Di0mxl7dSw3MA==", + "dev": true, + "dependencies": { + "@eslint-community/regexpp": "^4.5.1", + "@typescript-eslint/scope-manager": "6.21.0", + "@typescript-eslint/type-utils": "6.21.0", + "@typescript-eslint/utils": "6.21.0", + "@typescript-eslint/visitor-keys": "6.21.0", + "debug": "^4.3.4", + "graphemer": "^1.4.0", + "ignore": "^5.2.4", + "natural-compare": "^1.4.0", + "semver": "^7.5.4", + "ts-api-utils": "^1.0.1" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "@typescript-eslint/parser": "^6.0.0 || ^6.0.0-alpha", + "eslint": "^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, "internal/next-common": { "name": "@neshca/next-common", "version": "0.0.0", @@ -401,6 +464,69 @@ "glob": "10.3.10" } }, + "internal/prettier-config/node_modules/@typescript-eslint/eslint-plugin": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.21.0.tgz", + "integrity": "sha512-oy9+hTPCUFpngkEZUSzbf9MxI65wbKFoQYsgPdILTfbUldp5ovUuphZVe4i30emU9M/kP+T64Di0mxl7dSw3MA==", + "dev": true, + "dependencies": { + "@eslint-community/regexpp": "^4.5.1", + "@typescript-eslint/scope-manager": "6.21.0", + "@typescript-eslint/type-utils": "6.21.0", + "@typescript-eslint/utils": "6.21.0", + "@typescript-eslint/visitor-keys": "6.21.0", + "debug": "^4.3.4", + "graphemer": "^1.4.0", + "ignore": "^5.2.4", + "natural-compare": "^1.4.0", + "semver": "^7.5.4", + "ts-api-utils": "^1.0.1" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "@typescript-eslint/parser": "^6.0.0 || ^6.0.0-alpha", + "eslint": "^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "internal/prettier-config/node_modules/@typescript-eslint/parser": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.21.0.tgz", + "integrity": "sha512-tbsV1jPne5CkFQCgPBcDOt30ItF7aJoZL997JSF7MhGQqOeT3svWRYxiqlfA5RUdlHN6Fi+EI9bxqbdyAUZjYQ==", + "dev": true, + "dependencies": { + "@typescript-eslint/scope-manager": "6.21.0", + "@typescript-eslint/types": "6.21.0", + "@typescript-eslint/typescript-estree": "6.21.0", + "@typescript-eslint/visitor-keys": "6.21.0", + "debug": "^4.3.4" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, "internal/prettier-config/node_modules/@vercel/style-guide": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/@vercel/style-guide/-/style-guide-5.2.0.tgz", @@ -3275,16 +3401,16 @@ "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "6.21.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.21.0.tgz", - "integrity": "sha512-oy9+hTPCUFpngkEZUSzbf9MxI65wbKFoQYsgPdILTfbUldp5ovUuphZVe4i30emU9M/kP+T64Di0mxl7dSw3MA==", + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.0.2.tgz", + "integrity": "sha512-/XtVZJtbaphtdrWjr+CJclaCVGPtOdBpFEnvtNf/jRV0IiEemRrL0qABex/nEt8isYcnFacm3nPHYQwL+Wb7qg==", "dev": true, "dependencies": { "@eslint-community/regexpp": "^4.5.1", - "@typescript-eslint/scope-manager": "6.21.0", - "@typescript-eslint/type-utils": "6.21.0", - "@typescript-eslint/utils": "6.21.0", - "@typescript-eslint/visitor-keys": "6.21.0", + "@typescript-eslint/scope-manager": "7.0.2", + "@typescript-eslint/type-utils": "7.0.2", + "@typescript-eslint/utils": "7.0.2", + "@typescript-eslint/visitor-keys": "7.0.2", "debug": "^4.3.4", "graphemer": "^1.4.0", "ignore": "^5.2.4", @@ -3300,8 +3426,8 @@ "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "@typescript-eslint/parser": "^6.0.0 || ^6.0.0-alpha", - "eslint": "^7.0.0 || ^8.0.0" + "@typescript-eslint/parser": "^7.0.0", + "eslint": "^8.56.0" }, "peerDependenciesMeta": { "typescript": { @@ -3309,16 +3435,168 @@ } } }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/scope-manager": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-7.0.2.tgz", + "integrity": "sha512-l6sa2jF3h+qgN2qUMjVR3uCNGjWw4ahGfzIYsCtFrQJCjhbrDPdiihYT8FnnqFwsWX+20hK592yX9I2rxKTP4g==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "7.0.2", + "@typescript-eslint/visitor-keys": "7.0.2" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/type-utils": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-7.0.2.tgz", + "integrity": "sha512-IKKDcFsKAYlk8Rs4wiFfEwJTQlHcdn8CLwLaxwd6zb8HNiMcQIFX9sWax2k4Cjj7l7mGS5N1zl7RCHOVwHq2VQ==", + "dev": true, + "dependencies": { + "@typescript-eslint/typescript-estree": "7.0.2", + "@typescript-eslint/utils": "7.0.2", + "debug": "^4.3.4", + "ts-api-utils": "^1.0.1" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.56.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/types": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.0.2.tgz", + "integrity": "sha512-ZzcCQHj4JaXFjdOql6adYV4B/oFOFjPOC9XYwCaZFRvqN8Llfvv4gSxrkQkd2u4Ci62i2c6W6gkDwQJDaRc4nA==", + "dev": true, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/typescript-estree": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-7.0.2.tgz", + "integrity": "sha512-3AMc8khTcELFWcKcPc0xiLviEvvfzATpdPj/DXuOGIdQIIFybf4DMT1vKRbuAEOFMwhWt7NFLXRkbjsvKZQyvw==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "7.0.2", + "@typescript-eslint/visitor-keys": "7.0.2", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "minimatch": "9.0.3", + "semver": "^7.5.4", + "ts-api-utils": "^1.0.1" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/utils": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-7.0.2.tgz", + "integrity": "sha512-PZPIONBIB/X684bhT1XlrkjNZJIEevwkKDsdwfiu1WeqBxYEEdIgVDgm8/bbKHVu+6YOpeRqcfImTdImx/4Bsw==", + "dev": true, + "dependencies": { + "@eslint-community/eslint-utils": "^4.4.0", + "@types/json-schema": "^7.0.12", + "@types/semver": "^7.5.0", + "@typescript-eslint/scope-manager": "7.0.2", + "@typescript-eslint/types": "7.0.2", + "@typescript-eslint/typescript-estree": "7.0.2", + "semver": "^7.5.4" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.56.0" + } + }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/visitor-keys": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-7.0.2.tgz", + "integrity": "sha512-8Y+YiBmqPighbm5xA2k4wKTxRzx9EkBu7Rlw+WHqMvRJ3RPz/BMBO9b2ru0LUNmXg120PHUXD5+SWFy2R8DqlQ==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "7.0.2", + "eslint-visitor-keys": "^3.4.1" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/minimatch": { + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", + "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/@typescript-eslint/parser": { - "version": "6.21.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.21.0.tgz", - "integrity": "sha512-tbsV1jPne5CkFQCgPBcDOt30ItF7aJoZL997JSF7MhGQqOeT3svWRYxiqlfA5RUdlHN6Fi+EI9bxqbdyAUZjYQ==", + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-7.0.2.tgz", + "integrity": "sha512-GdwfDglCxSmU+QTS9vhz2Sop46ebNCXpPPvsByK7hu0rFGRHL+AusKQJ7SoN+LbLh6APFpQwHKmDSwN35Z700Q==", "dev": true, + "peer": true, "dependencies": { - "@typescript-eslint/scope-manager": "6.21.0", - "@typescript-eslint/types": "6.21.0", - "@typescript-eslint/typescript-estree": "6.21.0", - "@typescript-eslint/visitor-keys": "6.21.0", + "@typescript-eslint/scope-manager": "7.0.2", + "@typescript-eslint/types": "7.0.2", + "@typescript-eslint/typescript-estree": "7.0.2", + "@typescript-eslint/visitor-keys": "7.0.2", "debug": "^4.3.4" }, "engines": { @@ -3329,7 +3607,7 @@ "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "eslint": "^7.0.0 || ^8.0.0" + "eslint": "^8.56.0" }, "peerDependenciesMeta": { "typescript": { @@ -3337,6 +3615,111 @@ } } }, + "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/scope-manager": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-7.0.2.tgz", + "integrity": "sha512-l6sa2jF3h+qgN2qUMjVR3uCNGjWw4ahGfzIYsCtFrQJCjhbrDPdiihYT8FnnqFwsWX+20hK592yX9I2rxKTP4g==", + "dev": true, + "peer": true, + "dependencies": { + "@typescript-eslint/types": "7.0.2", + "@typescript-eslint/visitor-keys": "7.0.2" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/types": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.0.2.tgz", + "integrity": "sha512-ZzcCQHj4JaXFjdOql6adYV4B/oFOFjPOC9XYwCaZFRvqN8Llfvv4gSxrkQkd2u4Ci62i2c6W6gkDwQJDaRc4nA==", + "dev": true, + "peer": true, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/typescript-estree": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-7.0.2.tgz", + "integrity": "sha512-3AMc8khTcELFWcKcPc0xiLviEvvfzATpdPj/DXuOGIdQIIFybf4DMT1vKRbuAEOFMwhWt7NFLXRkbjsvKZQyvw==", + "dev": true, + "peer": true, + "dependencies": { + "@typescript-eslint/types": "7.0.2", + "@typescript-eslint/visitor-keys": "7.0.2", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "minimatch": "9.0.3", + "semver": "^7.5.4", + "ts-api-utils": "^1.0.1" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/visitor-keys": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-7.0.2.tgz", + "integrity": "sha512-8Y+YiBmqPighbm5xA2k4wKTxRzx9EkBu7Rlw+WHqMvRJ3RPz/BMBO9b2ru0LUNmXg120PHUXD5+SWFy2R8DqlQ==", + "dev": true, + "peer": true, + "dependencies": { + "@typescript-eslint/types": "7.0.2", + "eslint-visitor-keys": "^3.4.1" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/parser/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "peer": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/@typescript-eslint/parser/node_modules/minimatch": { + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", + "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", + "dev": true, + "peer": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/@typescript-eslint/scope-manager": { "version": "6.21.0", "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.21.0.tgz", @@ -6074,9 +6457,9 @@ } }, "node_modules/eslint-plugin-jest": { - "version": "27.6.3", - "resolved": "https://registry.npmjs.org/eslint-plugin-jest/-/eslint-plugin-jest-27.6.3.tgz", - "integrity": "sha512-+YsJFVH6R+tOiO3gCJon5oqn4KWc+mDq2leudk8mrp8RFubLOo9CVyi3cib4L7XMpxExmkmBZQTPDYVBzgpgOA==", + "version": "27.9.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-jest/-/eslint-plugin-jest-27.9.0.tgz", + "integrity": "sha512-QIT7FH7fNmd9n4se7FFKHbsLKGQiw885Ds6Y/sxKgCZ6natwCsXdgPOADnYVxN2QrRweF0FZWbJ6S7Rsn7llug==", "dev": true, "dependencies": { "@typescript-eslint/utils": "^5.10.0" @@ -6085,7 +6468,7 @@ "node": "^14.15.0 || ^16.10.0 || >=18.0.0" }, "peerDependencies": { - "@typescript-eslint/eslint-plugin": "^5.0.0 || ^6.0.0", + "@typescript-eslint/eslint-plugin": "^5.0.0 || ^6.0.0 || ^7.0.0", "eslint": "^7.0.0 || ^8.0.0", "jest": "*" }, From b8c2026ba09e3f2dc5a499dad745072452da86e0 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 20 Feb 2024 11:30:56 +0300 Subject: [PATCH 110/458] Bump fastify from 4.26.0 to 4.26.1 (#338) Bumps [fastify](https://github.com/fastify/fastify) from 4.26.0 to 4.26.1. - [Release notes](https://github.com/fastify/fastify/releases) - [Commits](https://github.com/fastify/fastify/compare/v4.26.0...v4.26.1) --- updated-dependencies: - dependency-name: fastify dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- internal/backend/package.json | 2 +- package-lock.json | 29 +++++++++++++++-------------- packages/server/package.json | 2 +- 4 files changed, 18 insertions(+), 17 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 97cabb0f..d3c8a198 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -34,7 +34,7 @@ "@types/react-dom": "18.2.19", "dotenv-cli": "7.3.0", "eslint": "8.56.0", - "fastify": "4.26.0", + "fastify": "4.26.1", "pm2": "5.3.1", "redis": "4.6.13", "rimraf": "5.0.5", diff --git a/internal/backend/package.json b/internal/backend/package.json index 50925786..0801f8b6 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -10,7 +10,7 @@ "start": "node --import tsx/esm ./src/backend.ts" }, "dependencies": { - "fastify": "4.26.0", + "fastify": "4.26.1", "pino": "8.18.0" }, "devDependencies": { diff --git a/package-lock.json b/package-lock.json index c5348883..8b510d36 100644 --- a/package-lock.json +++ b/package-lock.json @@ -54,7 +54,7 @@ "@types/react-dom": "18.2.19", "dotenv-cli": "7.3.0", "eslint": "8.56.0", - "fastify": "4.26.0", + "fastify": "4.26.1", "pm2": "5.3.1", "redis": "4.6.13", "rimraf": "5.0.5", @@ -222,7 +222,7 @@ "version": "0.0.0", "license": "MIT", "dependencies": { - "fastify": "4.26.0", + "fastify": "4.26.1", "pino": "8.18.0" }, "devDependencies": { @@ -4322,13 +4322,14 @@ } }, "node_modules/avvio": { - "version": "8.2.1", - "resolved": "https://registry.npmjs.org/avvio/-/avvio-8.2.1.tgz", - "integrity": "sha512-TAlMYvOuwGyLK3PfBb5WKBXZmXz2fVCgv23d6zZFdle/q3gPjmxBaeuC0pY0Dzs5PWMSgfqqEZkrye19GlDTgw==", + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/avvio/-/avvio-8.3.0.tgz", + "integrity": "sha512-VBVH0jubFr9LdFASy/vNtm5giTrnbVquWBhT0fyizuNK2rQ7e7ONU2plZQWUNqtE1EmxFEb+kbSkFRkstiaS9Q==", "dependencies": { + "@fastify/error": "^3.3.0", "archy": "^1.0.0", "debug": "^4.0.0", - "fastq": "^1.6.1" + "fastq": "^1.17.1" } }, "node_modules/axe-core": { @@ -7570,9 +7571,9 @@ "integrity": "sha512-eel5UKGn369gGEWOqBShmFJWfq/xSJvsgDzgLYC845GneayWvXBf0lJCBn5qTABfewy1ZDPoaR5OZCP+kssfuw==" }, "node_modules/fastify": { - "version": "4.26.0", - "resolved": "https://registry.npmjs.org/fastify/-/fastify-4.26.0.tgz", - "integrity": "sha512-Fq/7ziWKc6pYLYLIlCRaqJqEVTIZ5tZYfcW/mDK2AQ9v/sqjGFpj0On0/7hU50kbPVjLO4de+larPA1WwPZSfw==", + "version": "4.26.1", + "resolved": "https://registry.npmjs.org/fastify/-/fastify-4.26.1.tgz", + "integrity": "sha512-tznA/G55dsxzM5XChBfcvVSloG2ejeeotfPPJSFaWmHyCDVGMpvf3nRNbsCb/JTBF9RmQFBfuujWt3Nphjesng==", "funding": [ { "type": "github", @@ -7588,7 +7589,7 @@ "@fastify/error": "^3.4.0", "@fastify/fast-json-stringify-compiler": "^4.3.0", "abstract-logging": "^2.0.1", - "avvio": "^8.2.1", + "avvio": "^8.3.0", "fast-content-type-parse": "^1.1.0", "fast-json-stringify": "^5.8.0", "find-my-way": "^8.0.0", @@ -7603,9 +7604,9 @@ } }, "node_modules/fastq": { - "version": "1.17.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.0.tgz", - "integrity": "sha512-zGygtijUMT7jnk3h26kUms3BkSDp4IfIKjmnqI2tvx6nuBfiF1UqOxbnLfzdv+apBy+53oaImsKtMw/xYbW+1w==", + "version": "1.17.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz", + "integrity": "sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==", "dependencies": { "reusify": "^1.0.4" } @@ -16537,7 +16538,7 @@ "version": "0.6.1", "license": "MIT", "dependencies": { - "fastify": "4.26.0", + "fastify": "4.26.1", "pino": "8.18.0" }, "bin": { diff --git a/packages/server/package.json b/packages/server/package.json index 5408a22b..025edbbe 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -25,7 +25,7 @@ "start": "node --import tsx/esm ./src/server.ts" }, "dependencies": { - "fastify": "4.26.0", + "fastify": "4.26.1", "pino": "8.18.0" }, "devDependencies": { From e46b72faa7376e7eecc9d9911c1b4adc13914d89 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 20 Feb 2024 14:36:22 +0300 Subject: [PATCH 111/458] Bump the pino group with 1 update (#345) Bumps the pino group with 1 update: [pino](https://github.com/pinojs/pino). Updates `pino` from 8.18.0 to 8.19.0 - [Release notes](https://github.com/pinojs/pino/releases) - [Commits](https://github.com/pinojs/pino/compare/v8.18.0...v8.19.0) --- updated-dependencies: - dependency-name: pino dependency-type: direct:production update-type: version-update:semver-minor dependency-group: pino ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- internal/backend/package.json | 2 +- package-lock.json | 10 +++++----- packages/server/package.json | 2 +- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/internal/backend/package.json b/internal/backend/package.json index 0801f8b6..319190de 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -11,7 +11,7 @@ }, "dependencies": { "fastify": "4.26.1", - "pino": "8.18.0" + "pino": "8.19.0" }, "devDependencies": { "@repo/typescript-config": "*", diff --git a/package-lock.json b/package-lock.json index 8b510d36..5b97010d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -223,7 +223,7 @@ "license": "MIT", "dependencies": { "fastify": "4.26.1", - "pino": "8.18.0" + "pino": "8.19.0" }, "devDependencies": { "@repo/typescript-config": "*", @@ -12261,9 +12261,9 @@ } }, "node_modules/pino": { - "version": "8.18.0", - "resolved": "https://registry.npmjs.org/pino/-/pino-8.18.0.tgz", - "integrity": "sha512-Mz/gKiRyuXu4HnpHgi1YWdHQCoWMufapzooisvFn78zl4dZciAxS+YeRkUxXl1ee/SzU80YCz1zpECCh4oC6Aw==", + "version": "8.19.0", + "resolved": "https://registry.npmjs.org/pino/-/pino-8.19.0.tgz", + "integrity": "sha512-oswmokxkav9bADfJ2ifrvfHUwad6MLp73Uat0IkQWY3iAw5xTRoznXbXksZs8oaOUMpmhVWD+PZogNzllWpJaA==", "dependencies": { "atomic-sleep": "^1.0.0", "fast-redact": "^3.1.1", @@ -16539,7 +16539,7 @@ "license": "MIT", "dependencies": { "fastify": "4.26.1", - "pino": "8.18.0" + "pino": "8.19.0" }, "bin": { "next-cache-server": "dist/server.js" diff --git a/packages/server/package.json b/packages/server/package.json index 025edbbe..f1517051 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -26,7 +26,7 @@ }, "dependencies": { "fastify": "4.26.1", - "pino": "8.18.0" + "pino": "8.19.0" }, "devDependencies": { "@neshca/next-common": "*", From cd207eb4a9aa8995cb97c4a7836fdc4124e080c5 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 20 Feb 2024 15:01:57 +0300 Subject: [PATCH 112/458] Bump the npm_and_yarn group across 1 directories with 1 update (#348) Bumps the npm_and_yarn group with 1 update in the /. directory: [undici](https://github.com/nodejs/undici). Updates `undici` from 5.28.2 to 5.28.3 - [Release notes](https://github.com/nodejs/undici/releases) - [Commits](https://github.com/nodejs/undici/compare/v5.28.2...v5.28.3) --- updated-dependencies: - dependency-name: undici dependency-type: indirect ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index 5b97010d..6355fb34 100644 --- a/package-lock.json +++ b/package-lock.json @@ -15478,9 +15478,9 @@ } }, "node_modules/undici": { - "version": "5.28.2", - "resolved": "https://registry.npmjs.org/undici/-/undici-5.28.2.tgz", - "integrity": "sha512-wh1pHJHnUeQV5Xa8/kyQhO7WFa8M34l026L5P/+2TYiakvGy5Rdc8jWZVyG7ieht/0WgJLEd3kcU5gKx+6GC8w==", + "version": "5.28.3", + "resolved": "https://registry.npmjs.org/undici/-/undici-5.28.3.tgz", + "integrity": "sha512-3ItfzbrhDlINjaP0duwnNsKpDQk3acHI3gVJ1z4fmwMK31k5G9OVIAMLSIaP6w4FaGkaAkN6zaQO9LUvZ1t7VA==", "dev": true, "dependencies": { "@fastify/busboy": "^2.0.0" From 03bfd6cce4284570a4d008227dfaf1a5fbbc4025 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 20 Feb 2024 15:09:08 +0300 Subject: [PATCH 113/458] Bump the turbo group with 2 updates (#342) Bumps the turbo group with 2 updates: [turbo](https://github.com/vercel/turbo) and [eslint-config-turbo](https://github.com/vercel/turbo/tree/HEAD/packages/eslint-config-turbo). Updates `turbo` from 1.12.3 to 1.12.4 - [Release notes](https://github.com/vercel/turbo/releases) - [Changelog](https://github.com/vercel/turbo/blob/main/release.md) - [Commits](https://github.com/vercel/turbo/compare/v1.12.3...v1.12.4) Updates `eslint-config-turbo` from 1.12.3 to 1.12.4 - [Release notes](https://github.com/vercel/turbo/releases) - [Changelog](https://github.com/vercel/turbo/blob/main/release.md) - [Commits](https://github.com/vercel/turbo/commits/v1.12.4/packages/eslint-config-turbo) --- updated-dependencies: - dependency-name: turbo dependency-type: direct:development update-type: version-update:semver-patch dependency-group: turbo - dependency-name: eslint-config-turbo dependency-type: direct:development update-type: version-update:semver-patch dependency-group: turbo ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- internal/eslint-config/package.json | 2 +- package-lock.json | 72 ++++++++++++++--------------- package.json | 2 +- 3 files changed, 38 insertions(+), 38 deletions(-) diff --git a/internal/eslint-config/package.json b/internal/eslint-config/package.json index 45aabeac..7651d62a 100644 --- a/internal/eslint-config/package.json +++ b/internal/eslint-config/package.json @@ -10,7 +10,7 @@ "@typescript-eslint/parser": "7.0.2", "@vercel/style-guide": "5.2.0", "eslint-config-prettier": "9.1.0", - "eslint-config-turbo": "1.12.3", + "eslint-config-turbo": "1.12.4", "eslint-plugin-only-warn": "1.1.0", "typescript": "5.3.3" } diff --git a/package-lock.json b/package-lock.json index 6355fb34..0a0b186e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -26,7 +26,7 @@ "diffscribe": "*", "glob": "10.3.10", "prettier": "3.2.5", - "turbo": "1.12.3" + "turbo": "1.12.4" }, "engines": { "node": ">=20.9.0", @@ -242,7 +242,7 @@ "@typescript-eslint/parser": "7.0.2", "@vercel/style-guide": "5.2.0", "eslint-config-prettier": "9.1.0", - "eslint-config-turbo": "1.12.3", + "eslint-config-turbo": "1.12.4", "eslint-plugin-only-warn": "1.1.0", "typescript": "5.3.3" } @@ -6274,12 +6274,12 @@ } }, "node_modules/eslint-config-turbo": { - "version": "1.12.3", - "resolved": "https://registry.npmjs.org/eslint-config-turbo/-/eslint-config-turbo-1.12.3.tgz", - "integrity": "sha512-Q46MEOiNJpJWC3Et5/YEuIYYhbOieS04yZwQOinO2hpZw3folEXV+hbwVo8M+ap/q8gtpjIWiRMZ1A4QxmhEqQ==", + "version": "1.12.4", + "resolved": "https://registry.npmjs.org/eslint-config-turbo/-/eslint-config-turbo-1.12.4.tgz", + "integrity": "sha512-5hqEaV6PNmAYLL4RTmq74OcCt8pgzOLnfDVPG/7PUXpQ0Mpz0gr926oCSFukywKKXjdum3VHD84S7Z9A/DqTAw==", "dev": true, "dependencies": { - "eslint-plugin-turbo": "1.12.3" + "eslint-plugin-turbo": "1.12.4" }, "peerDependencies": { "eslint": ">6.6.0" @@ -6887,9 +6887,9 @@ } }, "node_modules/eslint-plugin-turbo": { - "version": "1.12.3", - "resolved": "https://registry.npmjs.org/eslint-plugin-turbo/-/eslint-plugin-turbo-1.12.3.tgz", - "integrity": "sha512-7hEyxa+oP898EFNoxVenHlH8jtBwV1hbbIkdQWgqDcB0EmVNGVEZkYRo5Hm6BuMAjR433B+NISBJdj0bQo4/Lg==", + "version": "1.12.4", + "resolved": "https://registry.npmjs.org/eslint-plugin-turbo/-/eslint-plugin-turbo-1.12.4.tgz", + "integrity": "sha512-3AGmXvH7E4i/XTWqBrcgu+G7YKZJV/8FrEn79kTd50ilNsv+U3nS2IlcCrQB6Xm2m9avGD9cadLzKDR1/UF2+g==", "dev": true, "dependencies": { "dotenv": "16.0.3" @@ -15252,26 +15252,26 @@ } }, "node_modules/turbo": { - "version": "1.12.3", - "resolved": "https://registry.npmjs.org/turbo/-/turbo-1.12.3.tgz", - "integrity": "sha512-a6q8I0TK9ohACYbkmxzG/JYPuDC4VCvfmXLTlf321qQ4BIAhoyaOj/O2g+zJ6L1vNYnZ82G4LrbMfgLLngbLsg==", + "version": "1.12.4", + "resolved": "https://registry.npmjs.org/turbo/-/turbo-1.12.4.tgz", + "integrity": "sha512-yUJ7elEUSToiGwFZogXpYKJpQ0BvaMbkEuQECIWtkBLcmWzlMOt6bActsIm29oN83mRU0WbzGt4e8H1KHWedhg==", "dev": true, "bin": { "turbo": "bin/turbo" }, "optionalDependencies": { - "turbo-darwin-64": "1.12.3", - "turbo-darwin-arm64": "1.12.3", - "turbo-linux-64": "1.12.3", - "turbo-linux-arm64": "1.12.3", - "turbo-windows-64": "1.12.3", - "turbo-windows-arm64": "1.12.3" + "turbo-darwin-64": "1.12.4", + "turbo-darwin-arm64": "1.12.4", + "turbo-linux-64": "1.12.4", + "turbo-linux-arm64": "1.12.4", + "turbo-windows-64": "1.12.4", + "turbo-windows-arm64": "1.12.4" } }, "node_modules/turbo-darwin-64": { - "version": "1.12.3", - "resolved": "https://registry.npmjs.org/turbo-darwin-64/-/turbo-darwin-64-1.12.3.tgz", - "integrity": "sha512-dDglIaux+A4jOnB9CDH69sujmrnuLJLrKw1t3J+if6ySlFuxSwC++gDq9TVuOZo2+S7lFkGh+x5ytn3wp+jE8Q==", + "version": "1.12.4", + "resolved": "https://registry.npmjs.org/turbo-darwin-64/-/turbo-darwin-64-1.12.4.tgz", + "integrity": "sha512-dBwFxhp9isTa9RS/fz2gDVk5wWhKQsPQMozYhjM7TT4jTrnYn0ZJMzr7V3B/M/T8QF65TbniW7w1gtgxQgX5Zg==", "cpu": [ "x64" ], @@ -15282,9 +15282,9 @@ ] }, "node_modules/turbo-darwin-arm64": { - "version": "1.12.3", - "resolved": "https://registry.npmjs.org/turbo-darwin-arm64/-/turbo-darwin-arm64-1.12.3.tgz", - "integrity": "sha512-5TqqeujEyHMoVUWGzSzUl5ERSg7HDCdbU3gBs5ziWTpFRpeJ/+Y15kYyZJcMQcubRIH3Y1hL/yA5IhlGdgXOMA==", + "version": "1.12.4", + "resolved": "https://registry.npmjs.org/turbo-darwin-arm64/-/turbo-darwin-arm64-1.12.4.tgz", + "integrity": "sha512-1Uo5iI6xsJ1j9ObsqxYRsa3W26mEbUe6fnj4rQYV6kDaqYD54oAMJ6hM53q9rB8JvFxwdrUXGp3PwTw9A0qqkA==", "cpu": [ "arm64" ], @@ -15295,9 +15295,9 @@ ] }, "node_modules/turbo-linux-64": { - "version": "1.12.3", - "resolved": "https://registry.npmjs.org/turbo-linux-64/-/turbo-linux-64-1.12.3.tgz", - "integrity": "sha512-yUreU+/gq4vlBtcdyfjz7slwz4zM1RG8sSXvyHmAS+QXqSrGkegg4qLl2fRbv/c3EyA/XbfcZuD6tcrXkejr6g==", + "version": "1.12.4", + "resolved": "https://registry.npmjs.org/turbo-linux-64/-/turbo-linux-64-1.12.4.tgz", + "integrity": "sha512-ONg2aSqKP7LAQOg7ysmU5WpEQp4DGNxSlAiR7um+LKtbmC/UxogbR5+T+Uuq6zGuQ5kJyKjWJ4NhtvUswOqBsA==", "cpu": [ "x64" ], @@ -15308,9 +15308,9 @@ ] }, "node_modules/turbo-linux-arm64": { - "version": "1.12.3", - "resolved": "https://registry.npmjs.org/turbo-linux-arm64/-/turbo-linux-arm64-1.12.3.tgz", - "integrity": "sha512-XRwAsp2eRSqZmaMVNrmHoKqofeJMuD87zmefZLTRAObh38hIwKgyl2QRsJIbteob5RN77yFbv3lAJ36UIY5h7w==", + "version": "1.12.4", + "resolved": "https://registry.npmjs.org/turbo-linux-arm64/-/turbo-linux-arm64-1.12.4.tgz", + "integrity": "sha512-9FPufkwdgfIKg/9jj87Cdtftw8o36y27/S2vLN7FTR2pp9c0MQiTBOLVYadUr1FlShupddmaMbTkXEhyt9SdrA==", "cpu": [ "arm64" ], @@ -15321,9 +15321,9 @@ ] }, "node_modules/turbo-windows-64": { - "version": "1.12.3", - "resolved": "https://registry.npmjs.org/turbo-windows-64/-/turbo-windows-64-1.12.3.tgz", - "integrity": "sha512-CPnRfnUCtmFeShOtUdMCthySjmyHaoTyh9JueiYFvtCNeO3WfDMj63dpOQstQWHdJFYmIrIGfhAclcds9ePQYA==", + "version": "1.12.4", + "resolved": "https://registry.npmjs.org/turbo-windows-64/-/turbo-windows-64-1.12.4.tgz", + "integrity": "sha512-2mOtxHW5Vjh/5rDVu/aFwsMzI+chs8XcEuJHlY1sYOpEymYTz+u6AXbnzRvwZFMrLKr7J7fQOGl+v96sLKbNdA==", "cpu": [ "x64" ], @@ -15334,9 +15334,9 @@ ] }, "node_modules/turbo-windows-arm64": { - "version": "1.12.3", - "resolved": "https://registry.npmjs.org/turbo-windows-arm64/-/turbo-windows-arm64-1.12.3.tgz", - "integrity": "sha512-cYA/wlzvp4vlCNHYJ2AjNS3FLXWwUC/5CJompBkTeKFFB6AviE/iLkbIhFikCVSNXZk/3AGanpMUXIkt3bdlwg==", + "version": "1.12.4", + "resolved": "https://registry.npmjs.org/turbo-windows-arm64/-/turbo-windows-arm64-1.12.4.tgz", + "integrity": "sha512-nOY5wae9qnxPOpT1fRuYO0ks6dTwpKMPV6++VkDkamFDLFHUDVM/9kmD2UTeh1yyrKnrZksbb9zmShhmfj1wog==", "cpu": [ "arm64" ], diff --git a/package.json b/package.json index 8b024767..e72026be 100644 --- a/package.json +++ b/package.json @@ -44,7 +44,7 @@ "diffscribe": "*", "glob": "10.3.10", "prettier": "3.2.5", - "turbo": "1.12.3" + "turbo": "1.12.4" }, "engines": { "node": ">=20.9.0", From b91ac30228d76b7f3b546e50ae314dd44046cf16 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 21 Feb 2024 11:09:44 +0300 Subject: [PATCH 114/458] Bump the definitely-typed group with 1 update (#350) Bumps the definitely-typed group with 1 update: [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react). Updates `@types/react` from 18.2.56 to 18.2.57 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react) --- updated-dependencies: - dependency-name: "@types/react" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- package-lock.json | 10 +++++----- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index d3c8a198..f88a825b 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -30,7 +30,7 @@ "@repo/typescript-config": "*", "@types/eslint": "8.56.2", "@types/node": "20.11.19", - "@types/react": "18.2.56", + "@types/react": "18.2.57", "@types/react-dom": "18.2.19", "dotenv-cli": "7.3.0", "eslint": "8.56.0", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 1fb64c19..8a956c5d 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -23,7 +23,7 @@ "@repo/typescript-config": "*", "@types/eslint": "8.56.2", "@types/node": "20.11.19", - "@types/react": "18.2.56", + "@types/react": "18.2.57", "@types/react-dom": "18.2.19", "eslint": "8.56.0", "typescript": "5.3.3" diff --git a/package-lock.json b/package-lock.json index 0a0b186e..cd9d6196 100644 --- a/package-lock.json +++ b/package-lock.json @@ -50,7 +50,7 @@ "@repo/typescript-config": "*", "@types/eslint": "8.56.2", "@types/node": "20.11.19", - "@types/react": "18.2.56", + "@types/react": "18.2.57", "@types/react-dom": "18.2.19", "dotenv-cli": "7.3.0", "eslint": "8.56.0", @@ -122,7 +122,7 @@ "@repo/typescript-config": "*", "@types/eslint": "8.56.2", "@types/node": "20.11.19", - "@types/react": "18.2.56", + "@types/react": "18.2.57", "@types/react-dom": "18.2.19", "eslint": "8.56.0", "typescript": "5.3.3" @@ -3367,9 +3367,9 @@ "integrity": "sha512-ga8y9v9uyeiLdpKddhxYQkxNDrfvuPrlFb0N1qnZZByvcElJaXthF1UhvCh9TLWJBEHeNtdnbysW7Y6Uq8CVng==" }, "node_modules/@types/react": { - "version": "18.2.56", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.56.tgz", - "integrity": "sha512-NpwHDMkS/EFZF2dONFQHgkPRwhvgq/OAvIaGQzxGSBmaeR++kTg6njr15Vatz0/2VcCEwJQFi6Jf4Q0qBu0rLA==", + "version": "18.2.57", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.57.tgz", + "integrity": "sha512-ZvQsktJgSYrQiMirAN60y4O/LRevIV8hUzSOSNB6gfR3/o3wCBFQx3sPwIYtuDMeiVgsSS3UzCV26tEzgnfvQw==", "dependencies": { "@types/prop-types": "*", "@types/scheduler": "*", From 1f59515d0362a8c218559e74e8da3b76e26917d5 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 21 Feb 2024 11:16:18 +0300 Subject: [PATCH 115/458] Bump the npm_and_yarn group across 1 directories with 1 update (#351) Bumps the npm_and_yarn group with 1 update in the /. directory: [ip](https://github.com/indutny/node-ip). Updates `ip` from 1.1.8 to 1.1.9 - [Commits](https://github.com/indutny/node-ip/compare/v1.1.8...v1.1.9) --- updated-dependencies: - dependency-name: ip dependency-type: indirect ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/package-lock.json b/package-lock.json index cd9d6196..bafdf8ea 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8912,9 +8912,9 @@ "integrity": "sha512-7m1vEcPCxXYI8HqnL8CKI6siDyD+eIWSwgB3DZA+ZTogxk9I4CDnj4wilt9x/+/QbHI4YG5YZNmC6458/e9Ktg==" }, "node_modules/ip": { - "version": "1.1.8", - "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.8.tgz", - "integrity": "sha512-PuExPYUiu6qMBQb4l06ecm6T6ujzhmh+MeJcW9wa89PoAz5pvd4zPgN5WJV104mb6S2T1AwNIAaB70JNrLQWhg==", + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.9.tgz", + "integrity": "sha512-cyRxvOEpNHNtchU3Ln9KC/auJgup87llfQpQ+t5ghoC/UhL16SWzbueiCsdTnWmqAWl7LadfuwhlqmtOaqMHdQ==", "dev": true }, "node_modules/ipaddr.js": { @@ -14058,9 +14058,9 @@ } }, "node_modules/socks/node_modules/ip": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ip/-/ip-2.0.0.tgz", - "integrity": "sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/ip/-/ip-2.0.1.tgz", + "integrity": "sha512-lJUL9imLTNi1ZfXT+DU6rBBdbiKGBuay9B6xGSPVjUeQwaH1RIGqef8RZkUtHioLmSNpPR5M4HVKJGm1j8FWVQ==", "dev": true }, "node_modules/sonic-boom": { From 1b6c8d2873b626738635d9bf1d6fe2dfcfeecefd Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 23 Feb 2024 14:37:13 +0300 Subject: [PATCH 116/458] Bump the definitely-typed group with 1 update (#353) Bumps the definitely-typed group with 1 update: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node). Updates `@types/node` from 20.11.19 to 20.11.20 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) --- updated-dependencies: - dependency-name: "@types/node" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- internal/backend/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 24 ++++++++++----------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 10 files changed, 21 insertions(+), 21 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index f88a825b..d4727064 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -29,7 +29,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.2", - "@types/node": "20.11.19", + "@types/node": "20.11.20", "@types/react": "18.2.57", "@types/react-dom": "18.2.19", "dotenv-cli": "7.3.0", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 8a956c5d..c24cb136 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -22,7 +22,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.2", - "@types/node": "20.11.19", + "@types/node": "20.11.20", "@types/react": "18.2.57", "@types/react-dom": "18.2.19", "eslint": "8.56.0", diff --git a/internal/backend/package.json b/internal/backend/package.json index 319190de..f6376e36 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.19", + "@types/node": "20.11.20", "pino-pretty": "10.3.1", "rimraf": "5.0.5", "tsx": "4.7.1", diff --git a/internal/next-common/package.json b/internal/next-common/package.json index 946be6db..36d4718f 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.19", + "@types/node": "20.11.20", "rimraf": "5.0.5", "typescript": "5.3.3" } diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index 0ae98923..41ea974f 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -16,7 +16,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.19", + "@types/node": "20.11.20", "rimraf": "5.0.5", "typescript": "5.3.3" } diff --git a/package-lock.json b/package-lock.json index bafdf8ea..5660ea1c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -49,7 +49,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.2", - "@types/node": "20.11.19", + "@types/node": "20.11.20", "@types/react": "18.2.57", "@types/react-dom": "18.2.19", "dotenv-cli": "7.3.0", @@ -121,7 +121,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.2", - "@types/node": "20.11.19", + "@types/node": "20.11.20", "@types/react": "18.2.57", "@types/react-dom": "18.2.19", "eslint": "8.56.0", @@ -227,7 +227,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.19", + "@types/node": "20.11.20", "pino-pretty": "10.3.1", "rimraf": "5.0.5", "tsx": "4.7.1", @@ -380,7 +380,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.19", + "@types/node": "20.11.20", "rimraf": "5.0.5", "typescript": "5.3.3" } @@ -440,7 +440,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.19", + "@types/node": "20.11.20", "rimraf": "5.0.5", "typescript": "5.3.3" } @@ -3339,9 +3339,9 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "20.11.19", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.19.tgz", - "integrity": "sha512-7xMnVEcZFu0DikYjWOlRq7NTPETrm7teqUT2WkQjrTIkEgUyyGdWsj/Zg8bEJt5TNklzbPD1X3fqfsHw3SpapQ==", + "version": "20.11.20", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.20.tgz", + "integrity": "sha512-7/rR21OS+fq8IyHTgtLkDK949uzsa6n8BkziAKtPVpugIkO6D+/ooXMvzXxDnZrmtXVfjb1bKQafYpb8s89LOg==", "dependencies": { "undici-types": "~5.26.4" } @@ -16491,7 +16491,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.19", + "@types/node": "20.11.20", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.1", @@ -16510,7 +16510,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.19", + "@types/node": "20.11.20", "rimraf": "5.0.5", "tsup": "8.0.2", "typescript": "5.3.3" @@ -16526,7 +16526,7 @@ "license": "MIT", "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.19", + "@types/node": "20.11.20", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.1", @@ -16548,7 +16548,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.19", + "@types/node": "20.11.20", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.1", diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 385f1012..548ed3e7 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -73,7 +73,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.19", + "@types/node": "20.11.20", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.1", diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index 0ae3d974..cc8ad5c8 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -25,7 +25,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.19", + "@types/node": "20.11.20", "rimraf": "5.0.5", "tsup": "8.0.2", "typescript": "5.3.3" diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index de8be445..a7e97a2d 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -28,7 +28,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.19", + "@types/node": "20.11.20", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.1", diff --git a/packages/server/package.json b/packages/server/package.json index f1517051..edc75604 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -32,7 +32,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.19", + "@types/node": "20.11.20", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.1", From 7997b4e6998dbf07489aee4fc81fa2d7258bf5c1 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 24 Feb 2024 13:36:10 +0300 Subject: [PATCH 117/458] Bump the definitely-typed group with 1 update (#356) Bumps the definitely-typed group with 1 update: [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react). Updates `@types/react` from 18.2.57 to 18.2.58 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react) --- updated-dependencies: - dependency-name: "@types/react" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- package-lock.json | 10 +++++----- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index d4727064..3612706d 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -30,7 +30,7 @@ "@repo/typescript-config": "*", "@types/eslint": "8.56.2", "@types/node": "20.11.20", - "@types/react": "18.2.57", + "@types/react": "18.2.58", "@types/react-dom": "18.2.19", "dotenv-cli": "7.3.0", "eslint": "8.56.0", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index c24cb136..e1076abf 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -23,7 +23,7 @@ "@repo/typescript-config": "*", "@types/eslint": "8.56.2", "@types/node": "20.11.20", - "@types/react": "18.2.57", + "@types/react": "18.2.58", "@types/react-dom": "18.2.19", "eslint": "8.56.0", "typescript": "5.3.3" diff --git a/package-lock.json b/package-lock.json index 5660ea1c..88855588 100644 --- a/package-lock.json +++ b/package-lock.json @@ -50,7 +50,7 @@ "@repo/typescript-config": "*", "@types/eslint": "8.56.2", "@types/node": "20.11.20", - "@types/react": "18.2.57", + "@types/react": "18.2.58", "@types/react-dom": "18.2.19", "dotenv-cli": "7.3.0", "eslint": "8.56.0", @@ -122,7 +122,7 @@ "@repo/typescript-config": "*", "@types/eslint": "8.56.2", "@types/node": "20.11.20", - "@types/react": "18.2.57", + "@types/react": "18.2.58", "@types/react-dom": "18.2.19", "eslint": "8.56.0", "typescript": "5.3.3" @@ -3367,9 +3367,9 @@ "integrity": "sha512-ga8y9v9uyeiLdpKddhxYQkxNDrfvuPrlFb0N1qnZZByvcElJaXthF1UhvCh9TLWJBEHeNtdnbysW7Y6Uq8CVng==" }, "node_modules/@types/react": { - "version": "18.2.57", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.57.tgz", - "integrity": "sha512-ZvQsktJgSYrQiMirAN60y4O/LRevIV8hUzSOSNB6gfR3/o3wCBFQx3sPwIYtuDMeiVgsSS3UzCV26tEzgnfvQw==", + "version": "18.2.58", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.58.tgz", + "integrity": "sha512-TaGvMNhxvG2Q0K0aYxiKfNDS5m5ZsoIBBbtfUorxdH4NGSXIlYvZxLJI+9Dd3KjeB3780bciLyAb7ylO8pLhPw==", "dependencies": { "@types/prop-types": "*", "@types/scheduler": "*", From 20191b442284137cbfbb1ad2fe6bf5f0dc07359d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 24 Feb 2024 13:45:30 +0300 Subject: [PATCH 118/458] Bump the eslint group with 2 updates (#357) Bumps the eslint group with 2 updates: [eslint](https://github.com/eslint/eslint) and [@types/eslint](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/eslint). Updates `eslint` from 8.56.0 to 8.57.0 - [Release notes](https://github.com/eslint/eslint/releases) - [Changelog](https://github.com/eslint/eslint/blob/v8.57.0/CHANGELOG.md) - [Commits](https://github.com/eslint/eslint/compare/v8.56.0...v8.57.0) Updates `@types/eslint` from 8.56.2 to 8.56.3 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/eslint) --- updated-dependencies: - dependency-name: eslint dependency-type: direct:development update-type: version-update:semver-minor dependency-group: eslint - dependency-name: "@types/eslint" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: eslint ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 4 ++-- docs/cache-handler-docs/package.json | 4 ++-- package-lock.json | 30 ++++++++++++++-------------- 3 files changed, 19 insertions(+), 19 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 3612706d..73b4644e 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -28,12 +28,12 @@ "@playwright/test": "1.41.2", "@repo/eslint-config": "*", "@repo/typescript-config": "*", - "@types/eslint": "8.56.2", + "@types/eslint": "8.56.3", "@types/node": "20.11.20", "@types/react": "18.2.58", "@types/react-dom": "18.2.19", "dotenv-cli": "7.3.0", - "eslint": "8.56.0", + "eslint": "8.57.0", "fastify": "4.26.1", "pm2": "5.3.1", "redis": "4.6.13", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index e1076abf..ffe9675c 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -21,11 +21,11 @@ "@next/eslint-plugin-next": "14.1.0", "@repo/eslint-config": "*", "@repo/typescript-config": "*", - "@types/eslint": "8.56.2", + "@types/eslint": "8.56.3", "@types/node": "20.11.20", "@types/react": "18.2.58", "@types/react-dom": "18.2.19", - "eslint": "8.56.0", + "eslint": "8.57.0", "typescript": "5.3.3" } } diff --git a/package-lock.json b/package-lock.json index 88855588..fd6d966e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -48,12 +48,12 @@ "@playwright/test": "1.41.2", "@repo/eslint-config": "*", "@repo/typescript-config": "*", - "@types/eslint": "8.56.2", + "@types/eslint": "8.56.3", "@types/node": "20.11.20", "@types/react": "18.2.58", "@types/react-dom": "18.2.19", "dotenv-cli": "7.3.0", - "eslint": "8.56.0", + "eslint": "8.57.0", "fastify": "4.26.1", "pm2": "5.3.1", "redis": "4.6.13", @@ -120,11 +120,11 @@ "@next/eslint-plugin-next": "14.1.0", "@repo/eslint-config": "*", "@repo/typescript-config": "*", - "@types/eslint": "8.56.2", + "@types/eslint": "8.56.3", "@types/node": "20.11.20", "@types/react": "18.2.58", "@types/react-dom": "18.2.19", - "eslint": "8.56.0", + "eslint": "8.57.0", "typescript": "5.3.3" } }, @@ -1831,9 +1831,9 @@ } }, "node_modules/@eslint/js": { - "version": "8.56.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.56.0.tgz", - "integrity": "sha512-gMsVel9D7f2HLkBma9VbtzZRehRogVRfbr++f06nL2vnCGCNlzOD+/MUov/F4p8myyAHspEhVobgjpX64q5m6A==", + "version": "8.57.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.57.0.tgz", + "integrity": "sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -3263,9 +3263,9 @@ } }, "node_modules/@types/eslint": { - "version": "8.56.2", - "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.56.2.tgz", - "integrity": "sha512-uQDwm1wFHmbBbCZCqAlq6Do9LYwByNZHWzXppSnay9SuwJ+VRbjkbLABer54kcPnMSlG6Fdiy2yaFXm/z9Z5gw==", + "version": "8.56.3", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.56.3.tgz", + "integrity": "sha512-PvSf1wfv2wJpVIFUMSb+i4PvqNYkB9Rkp9ZDO3oaWzq4SKhsQk4mrMBr3ZH06I0hKrVGLBacmgl8JM4WVjb9dg==", "dev": true, "dependencies": { "@types/estree": "*", @@ -6207,16 +6207,16 @@ } }, "node_modules/eslint": { - "version": "8.56.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.56.0.tgz", - "integrity": "sha512-Go19xM6T9puCOWntie1/P997aXxFsOi37JIHRWI514Hc6ZnaHGKY9xFhrU65RT6CcBEzZoGG1e6Nq+DT04ZtZQ==", + "version": "8.57.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.57.0.tgz", + "integrity": "sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.6.1", "@eslint/eslintrc": "^2.1.4", - "@eslint/js": "8.56.0", - "@humanwhocodes/config-array": "^0.11.13", + "@eslint/js": "8.57.0", + "@humanwhocodes/config-array": "^0.11.14", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", "@ungap/structured-clone": "^1.2.0", From dbf9286e80bbe268f7a523dee040c9f048cd82eb Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Mon, 26 Feb 2024 13:14:52 +0300 Subject: [PATCH 119/458] Release 1.0.0 (#349) #### Breaking Changes ##### `@neshca/cache-handler` - rename `IncrementalCache` class to `CacheHandler` - rename `Cache` type to `Handler` - add `delete` method to `Handler` - remove `useFileSystem` option - add global `ttl` option - remove support for on-demand revalidation by path for App Router pages - remove file system handling except for pages with `fallback: false` in `getStaticPaths` - refactor e2e tests for App Router pages - add new tests for Pages router pages - encapsulate `Buffer` to `base64` conversion to the `ROUTE` kind values - make filesystem-related methods static - refactor constructor to prevent multiple `CacheHandler.#configureCacheHandler` calls - update and improve docs ##### Pre-configured handlers - remove `revalidatedTagsKey` option - add `sharedTagsKey` option - remove `useTtl` option - remove `@neshca/json-replacer-reviver` from deps --- .changeset/quick-birds-lie.md | 9 + .changeset/selfish-pandas-train.md | 30 + .changeset/seven-crabs-tease.md | 5 + .changeset/sixty-pillows-heal.md | 5 + .../actions/add-dist-tags/add-dist-tags.js | 2 +- .vscode/settings.json | 3 +- CONTRIBUTING.md | 4 +- README.md | 27 +- apps/cache-testing/cache-handler-local.mjs | 13 +- .../cache-handler-redis-stack.mjs | 22 +- .../cache-handler-redis-strings.mjs | 17 +- apps/cache-testing/cache-handler-server.mjs | 17 +- apps/cache-testing/package.json | 1 - apps/cache-testing/run-app-instances.ts | 2 +- .../src/app/app/no-params/ssr/200/page.tsx | 2 +- .../src/app/app/randomHex/[length]/page.tsx | 2 +- .../src/components/pre-rendered-at.tsx | 6 +- .../src/pages/pages/randomHex/[length].tsx | 2 +- .../src/utils/common-pages-page.tsx | 5 +- .../create-pages-get-get-server-side-props.ts | 2 +- apps/cache-testing/tests/app.spec.ts | 127 +- apps/cache-testing/tests/pages.spec.ts | 38 + apps/cache-testing/tests/test-helpers.ts | 28 + biome.json | 26 +- .../public/apple-touch-icon.png | Bin 0 -> 42981 bytes .../public/favicon-16x16.png | Bin 0 -> 854 bytes .../public/favicon-32x32.png | Bin 0 -> 2502 bytes docs/cache-handler-docs/src/pages/_meta.json | 11 +- .../src/pages/api-reference/_meta.json | 7 + .../api-reference/cache-handler-config.mdx | 44 + .../api-reference/cache-handler-value.mdx | 28 + .../src/pages/api-reference/handler.mdx | 84 ++ .../api-reference/lifespan-parameters.mdx | 38 + .../pages/api-reference/ttl-parameters.mdx | 61 + .../src/pages/configuration/_meta.json | 5 +- .../configuration/build-id-as-prefix-key.mdx | 20 +- .../src/pages/configuration/cache.mdx | 105 -- .../src/pages/configuration/on-creation.mdx | 109 +- .../configuration/opt-out-cache-on-build.mdx | 27 +- .../src/pages/configuration/ttl.mdx | 132 -- .../pages/configuration/use-file-system.mdx | 97 -- docs/cache-handler-docs/src/pages/index.mdx | 11 +- .../src/pages/installation.mdx | 59 +- .../src/pages/redis-stack-custom.mdx | 105 -- .../src/pages/redis-stack.mdx | 52 - .../src/pages/redis-strings-custom.mdx | 102 -- .../src/pages/redis-strings.mdx | 51 - docs/cache-handler-docs/src/pages/redis.mdx | 47 + docs/cache-handler-docs/src/pages/server.mdx | 19 +- .../src/pages/troubleshooting.mdx | 17 +- .../pages/usage/creating-a-custom-handler.mdx | 173 +++ .../pages/usage/on-demand-revalidation.mdx | 17 + docs/cache-handler-docs/theme.config.jsx | 7 +- internal/next-common/src/next-common.ts | 63 +- .../src/cache-types/cache-string-value.ts | 2 +- .../cache-types/next-cache-handler-value.ts | 4 +- .../src/create-configured-cache.ts | 2 +- package-lock.json | 1143 ++++++++++------- packages/cache-handler/README.md | 46 +- packages/cache-handler/package.json | 3 +- packages/cache-handler/src/cache-handler.ts | 950 ++++++-------- packages/cache-handler/src/common-types.ts | 30 - .../cache-handler/src/handlers/local-lru.ts | 58 +- .../cache-handler/src/handlers/redis-stack.ts | 104 +- .../src/handlers/redis-strings.ts | 90 +- packages/cache-handler/src/handlers/server.ts | 51 +- .../helpers/calculate-eviction-delay.test.ts | 100 -- .../src/helpers/calculate-eviction-delay.ts | 41 - ...-validated-age-estimation-function.test.ts | 74 ++ ...reate-validated-age-estimation-function.ts | 39 + .../src/helpers/get-tags-from-page-data.ts | 29 + packages/cache-handler/src/helpers/helpers.ts | 1 - .../src/helpers/promise-with-timeout.test.ts | 2 +- packages/cache-handler/tsup.config.ts | 2 +- packages/diffscribe/README.md | 6 +- packages/diffscribe/src/diffscribe.ts | 4 +- packages/json-replacer-reviver/README.md | 2 +- packages/server/src/server.ts | 39 +- 78 files changed, 2319 insertions(+), 2389 deletions(-) create mode 100644 .changeset/quick-birds-lie.md create mode 100644 .changeset/selfish-pandas-train.md create mode 100644 .changeset/seven-crabs-tease.md create mode 100644 .changeset/sixty-pillows-heal.md create mode 100644 apps/cache-testing/tests/test-helpers.ts create mode 100644 docs/cache-handler-docs/public/apple-touch-icon.png create mode 100644 docs/cache-handler-docs/public/favicon-16x16.png create mode 100644 docs/cache-handler-docs/public/favicon-32x32.png create mode 100644 docs/cache-handler-docs/src/pages/api-reference/_meta.json create mode 100644 docs/cache-handler-docs/src/pages/api-reference/cache-handler-config.mdx create mode 100644 docs/cache-handler-docs/src/pages/api-reference/cache-handler-value.mdx create mode 100644 docs/cache-handler-docs/src/pages/api-reference/handler.mdx create mode 100644 docs/cache-handler-docs/src/pages/api-reference/lifespan-parameters.mdx create mode 100644 docs/cache-handler-docs/src/pages/api-reference/ttl-parameters.mdx delete mode 100644 docs/cache-handler-docs/src/pages/configuration/cache.mdx delete mode 100644 docs/cache-handler-docs/src/pages/configuration/ttl.mdx delete mode 100644 docs/cache-handler-docs/src/pages/configuration/use-file-system.mdx delete mode 100644 docs/cache-handler-docs/src/pages/redis-stack-custom.mdx delete mode 100644 docs/cache-handler-docs/src/pages/redis-stack.mdx delete mode 100644 docs/cache-handler-docs/src/pages/redis-strings-custom.mdx delete mode 100644 docs/cache-handler-docs/src/pages/redis-strings.mdx create mode 100644 docs/cache-handler-docs/src/pages/redis.mdx create mode 100644 docs/cache-handler-docs/src/pages/usage/creating-a-custom-handler.mdx create mode 100644 docs/cache-handler-docs/src/pages/usage/on-demand-revalidation.mdx delete mode 100644 packages/cache-handler/src/helpers/calculate-eviction-delay.test.ts delete mode 100644 packages/cache-handler/src/helpers/calculate-eviction-delay.ts create mode 100644 packages/cache-handler/src/helpers/create-validated-age-estimation-function.test.ts create mode 100644 packages/cache-handler/src/helpers/create-validated-age-estimation-function.ts create mode 100644 packages/cache-handler/src/helpers/get-tags-from-page-data.ts diff --git a/.changeset/quick-birds-lie.md b/.changeset/quick-birds-lie.md new file mode 100644 index 00000000..22a6ffa5 --- /dev/null +++ b/.changeset/quick-birds-lie.md @@ -0,0 +1,9 @@ +--- +'@neshca/server': major +--- + +Release 1.0.0 + +#### Breaking Changes + +- change the API to match with the new CacheHandler API diff --git a/.changeset/selfish-pandas-train.md b/.changeset/selfish-pandas-train.md new file mode 100644 index 00000000..4be7a6eb --- /dev/null +++ b/.changeset/selfish-pandas-train.md @@ -0,0 +1,30 @@ +--- +'@neshca/cache-handler': major +--- + +Release 1.0.0 + +#### Breaking Changes + +##### `@neshca/cache-handler` + +- rename `IncrementalCache` class to `CacheHandler` +- rename `Cache` type to `Handler` +- add `delete` method to `Handler` +- remove `useFileSystem` option +- add global `ttl` option +- remove support for on-demand revalidation by path for App Router pages +- remove file system handling except for pages with `fallback: false` in `getStaticPaths` +- refactor e2e tests for App Router pages +- add new tests for Pages router pages +- encapsulate `Buffer` to `base64` conversion to the `ROUTE` kind values +- make filesystem-related methods static +- refactor constructor to prevent multiple `CacheHandler.#configureCacheHandler` calls +- update and improve docs + +##### Pre-configured handlers + +- remove `revalidatedTagsKey` option +- add `sharedTagsKey` option +- remove `useTtl` option +- remove `@neshca/json-replacer-reviver` from deps diff --git a/.changeset/seven-crabs-tease.md b/.changeset/seven-crabs-tease.md new file mode 100644 index 00000000..c0a872c2 --- /dev/null +++ b/.changeset/seven-crabs-tease.md @@ -0,0 +1,5 @@ +--- +'diffscribe': patch +--- + +Fixed punctuation in readme diff --git a/.changeset/sixty-pillows-heal.md b/.changeset/sixty-pillows-heal.md new file mode 100644 index 00000000..2c21c022 --- /dev/null +++ b/.changeset/sixty-pillows-heal.md @@ -0,0 +1,5 @@ +--- +'@neshca/json-replacer-reviver': patch +--- + +Fixed type in readme diff --git a/.github/actions/add-dist-tags/add-dist-tags.js b/.github/actions/add-dist-tags/add-dist-tags.js index cd75433f..1de78969 100644 --- a/.github/actions/add-dist-tags/add-dist-tags.js +++ b/.github/actions/add-dist-tags/add-dist-tags.js @@ -43,7 +43,7 @@ function run() { continue; } - if (!name || !version) { + if (!(name && version)) { continue; } diff --git a/.vscode/settings.json b/.vscode/settings.json index 4ed26479..4e604e2e 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -45,5 +45,6 @@ }, "[typescriptreact]": { "editor.defaultFormatter": "biomejs.biome" - } + }, + "grammarly.files.include": ["**/*.md", "**/*.mdx"] } diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index aa61d6d8..dbc618c3 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -12,11 +12,11 @@ Firstly, thank you for considering contributing to our project! Your time and ex I've structured our project as a monorepo. For a detailed understanding of our development practices and how to contribute within this structure, please refer to: - - [Developing and Contributing in This Monorepo](./docs/contributing/monorepo.md) + - [Developing and Contributing to This Monorepo](./docs/contributing/monorepo.md) ## Tips for a Successful Contribution -- **Open Communication**: Before diving deep into coding, discussing your ideas or the changes you wish to make might. [Create an Issue](https://github.com/caching-tools/next-shared-cache/issues). +- **Open Communication**: Before diving deep into coding, discuss your ideas or the changes you wish to make might. [Create an Issue](https://github.com/caching-tools/next-shared-cache/issues). - **Follow Coding Standards**: Consistency is key. Ensure your code follows the coding conventions and styles of the project. diff --git a/README.md b/README.md index d0bc4a02..dfe577f3 100644 --- a/README.md +++ b/README.md @@ -1,22 +1,31 @@ -# `neshca` Monorepo +# `@neshca/cache-handler` -Welcome to the `neshca` monorepo, a centralized repository containing a collection of diverse projects. Here, you'll find various tools and libraries designed to enhance development practices and efficiently solve common challenges. +Welcome to [**`@neshca/cache-handler`**](./packages/cache-handler/README.md), a specialized ISR/Data cache API crafted for Next.js applications. This library is designed to simplify the complex task of configuring shared cache strategies in distributed environments, such as those involving multiple and independent instances of the same application. It offers a flexible and user-friendly approach to integrating custom cache solutions and hand-crafted, pre-configured cache strategies for Redis. -## Featured Projects +### The importance of shared cache in distributed environments -[**`@neshca/cache-handler`**](./packages/cache-handler/README.md) — a flexible API to replace the default Next.js cache, accommodating custom cache solutions for multi-instance deployments. +Next.js applications are often deployed in a self-hosted distributed environment, where multiple instances of the same application are running simultaneously. In such cases, the default Next.js cache is not shared between instances, causing the data to diverge between independent instances because load balancers route requests to a different instance every time. Another significant issue with the default cache setup is on-demand revalidation; it requires manual revalidation across all application replicas. -[**`diffscribe`**](./packages/diffscribe/README.md) — an intelligent CLI tool designed to automatically generate meaningful commit messages using Git diffstat, status, and insights from OpenAI and you. +`@neshca/cache-handler` elegantly addresses these challenges by offering: -[**`@neshca/json-replacer-reviver`**](./packages/json-replacer-reviver/README.md) — a utility library for handling `Buffer` object serialization and deserialization with JSON, offering base64 representations. +- A straightforward API complemented by meticulously crafted Handlers. +- Comprehensive customization options. +- Simplified on-demand revalidation, akin to managing a single application instance. +- TTL by default to keep cache storage clean and space-efficient. -## Getting Started +### Kickstarting Your Custom Cache Solution -To start working with any projects in this monorepo, navigate to the respective project directory and follow the instructions provided in their README. +Begin enhancing your application's caching system with our [Installation and the First Steps](https://caching-tools.github.io/next-shared-cache/installation). This section provides all the necessary information on installation, basic configuration, and practical examples for quick and efficient integration. + +### Examples and Practical Implementations + +Discover the versatility of `@neshca/cache-handler` in our [Examples Section](https://caching-tools.github.io/next-shared-cache/redis), where real-world scenarios are illustrated. + +Learn how to build your own Handler by reading [this guide](https://caching-tools.github.io/next-shared-cache/usage/creating-a-custom-handler). ## Contribute -[Developing and contributing in this monorepo](./docs/contributing/monorepo.md) +[Developing and contributing to this monorepo](./docs/contributing/monorepo.md) ## License diff --git a/apps/cache-testing/cache-handler-local.mjs b/apps/cache-testing/cache-handler-local.mjs index 54fe25f0..0b59ec79 100644 --- a/apps/cache-testing/cache-handler-local.mjs +++ b/apps/cache-testing/cache-handler-local.mjs @@ -1,13 +1,12 @@ -import { IncrementalCache } from '@neshca/cache-handler'; -import createLruCache from '@neshca/cache-handler/local-lru'; +import { CacheHandler } from '@neshca/cache-handler'; +import createLruHandler from '@neshca/cache-handler/local-lru'; -IncrementalCache.onCreation(async () => { - const localCache = createLruCache(); +CacheHandler.onCreation(() => { + const localHandler = createLruHandler(); return { - cache: localCache, - useFileSystem: true, + handlers: [localHandler], }; }); -export default IncrementalCache; +export default CacheHandler; diff --git a/apps/cache-testing/cache-handler-redis-stack.mjs b/apps/cache-testing/cache-handler-redis-stack.mjs index fa4fde0a..2d78d709 100644 --- a/apps/cache-testing/cache-handler-redis-stack.mjs +++ b/apps/cache-testing/cache-handler-redis-stack.mjs @@ -1,10 +1,10 @@ -import { IncrementalCache } from '@neshca/cache-handler'; -import createLruCache from '@neshca/cache-handler/local-lru'; -import createRedisCache from '@neshca/cache-handler/redis-stack'; -import createRedisStringsCache from '@neshca/cache-handler/redis-strings'; +import { CacheHandler } from '@neshca/cache-handler'; +import createLruHandler from '@neshca/cache-handler/local-lru'; +import createRedisHandler from '@neshca/cache-handler/redis-stack'; +import createRedisStringsHandler from '@neshca/cache-handler/redis-strings'; import { createClient } from 'redis'; -IncrementalCache.onCreation(async () => { +CacheHandler.onCreation(async () => { if (!process.env.REDIS_URL) { console.warn('Make sure that REDIS_URL is added to the .env.local file and loaded properly.'); } @@ -20,20 +20,20 @@ IncrementalCache.onCreation(async () => { await client.connect(); console.info('Redis client connected.'); - const redisCache = await createRedisCache({ + const redisHandler = await createRedisHandler({ client, keyPrefix: 'JSON:', timeoutMs: 1000, }); - const redisStringsCache = createRedisStringsCache({ client, keyPrefix: 'strings:', timeoutMs: 1000 }); + const redisStringsHandler = createRedisStringsHandler({ client, keyPrefix: 'strings:', timeoutMs: 1000 }); - const localCache = createLruCache(); + const localHandler = createLruHandler(); return { - cache: [redisCache, redisStringsCache, localCache], - useFileSystem: true, + handlers: [redisHandler, redisStringsHandler, localHandler], + ttl: { defaultStaleAge: 60, estimateExpireAge: (staleAge) => staleAge * 2 }, }; }); -export default IncrementalCache; +export default CacheHandler; diff --git a/apps/cache-testing/cache-handler-redis-strings.mjs b/apps/cache-testing/cache-handler-redis-strings.mjs index a59ba434..7a6e318f 100644 --- a/apps/cache-testing/cache-handler-redis-strings.mjs +++ b/apps/cache-testing/cache-handler-redis-strings.mjs @@ -1,9 +1,9 @@ -import { IncrementalCache } from '@neshca/cache-handler'; -import createLruCache from '@neshca/cache-handler/local-lru'; -import createRedisCache from '@neshca/cache-handler/redis-strings'; +import { CacheHandler } from '@neshca/cache-handler'; +import createLruHandler from '@neshca/cache-handler/local-lru'; +import createRedisHandler from '@neshca/cache-handler/redis-strings'; import { createClient } from 'redis'; -IncrementalCache.onCreation(async () => { +CacheHandler.onCreation(async () => { if (!process.env.REDIS_URL) { console.warn('Make sure that REDIS_URL is added to the .env.local file and loaded properly.'); } @@ -21,17 +21,16 @@ IncrementalCache.onCreation(async () => { await client.connect(); console.info('Redis client connected.'); - const redisCache = createRedisCache({ + const redisHandler = createRedisHandler({ client, keyPrefix: PREFIX, }); - const localCache = createLruCache(); + const localHandler = createLruHandler(); return { - cache: [redisCache, localCache], - useFileSystem: true, + handlers: [redisHandler, localHandler], }; }); -export default IncrementalCache; +export default CacheHandler; diff --git a/apps/cache-testing/cache-handler-server.mjs b/apps/cache-testing/cache-handler-server.mjs index 75969f0a..a60c8655 100644 --- a/apps/cache-testing/cache-handler-server.mjs +++ b/apps/cache-testing/cache-handler-server.mjs @@ -1,20 +1,19 @@ -import { IncrementalCache } from '@neshca/cache-handler'; -import createLruCache from '@neshca/cache-handler/local-lru'; -import createServerCache from '@neshca/cache-handler/server'; +import { CacheHandler } from '@neshca/cache-handler'; +import createLruHandler from '@neshca/cache-handler/local-lru'; +import createServerHandler from '@neshca/cache-handler/server'; -IncrementalCache.onCreation(async () => { +CacheHandler.onCreation(() => { const baseUrl = process.env.REMOTE_CACHE_SERVER_BASE_URL ?? 'http://localhost:8080'; - const httpCache = createServerCache({ + const httpHandler = createServerHandler({ baseUrl, }); - const localCache = createLruCache(); + const localHandler = createLruHandler(); return { - cache: [httpCache, localCache], - useFileSystem: true, + handlers: [httpHandler, localHandler], }; }); -export default IncrementalCache; +export default CacheHandler; diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 73b4644e..8f54b373 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -23,7 +23,6 @@ }, "devDependencies": { "@neshca/cache-handler": "*", - "@neshca/json-replacer-reviver": "*", "@next/eslint-plugin-next": "14.1.1-canary.27", "@playwright/test": "1.41.2", "@repo/eslint-config": "*", diff --git a/apps/cache-testing/run-app-instances.ts b/apps/cache-testing/run-app-instances.ts index 6666f569..cc327a77 100644 --- a/apps/cache-testing/run-app-instances.ts +++ b/apps/cache-testing/run-app-instances.ts @@ -9,7 +9,7 @@ const { default: pm2 } = pm2Default as unknown as { default: typeof import('pm2' const args = process.argv.slice(2).reduce>((acc, arg) => { const [key, value] = arg.split('='); - if (!key || !value) { + if (!(key && value)) { throw new Error(`Invalid argument: ${arg}`); } diff --git a/apps/cache-testing/src/app/app/no-params/ssr/200/page.tsx b/apps/cache-testing/src/app/app/no-params/ssr/200/page.tsx index 7df17aec..9a8b7b2c 100644 --- a/apps/cache-testing/src/app/app/no-params/ssr/200/page.tsx +++ b/apps/cache-testing/src/app/app/no-params/ssr/200/page.tsx @@ -14,5 +14,5 @@ export default async function Index(): Promise { const { count, path, time } = data; - return ; + return ; } diff --git a/apps/cache-testing/src/app/app/randomHex/[length]/page.tsx b/apps/cache-testing/src/app/app/randomHex/[length]/page.tsx index 4ef6db7b..61f8c806 100644 --- a/apps/cache-testing/src/app/app/randomHex/[length]/page.tsx +++ b/apps/cache-testing/src/app/app/randomHex/[length]/page.tsx @@ -35,7 +35,7 @@ export default async function Page({ params: { length } }: PageParams): Promise<
{props.randomHex}
- + ); diff --git a/apps/cache-testing/src/components/pre-rendered-at.tsx b/apps/cache-testing/src/components/pre-rendered-at.tsx index eff1599a..deaf5b34 100644 --- a/apps/cache-testing/src/components/pre-rendered-at.tsx +++ b/apps/cache-testing/src/components/pre-rendered-at.tsx @@ -1,9 +1,9 @@ import { formatTime } from 'cache-testing/utils/format-time'; -type CacheStateWatcherProps = { time: number }; +type CacheStateWatcherProps = { time: number; isFallback?: boolean }; -export function PreRenderedAt({ time }: CacheStateWatcherProps): JSX.Element { - const preRenderTime = formatTime(time, 3); +export function PreRenderedAt({ time, isFallback }: CacheStateWatcherProps): JSX.Element { + const preRenderTime = isFallback ? '' : formatTime(time, 3); return
Pre-rendered at {preRenderTime}
; } diff --git a/apps/cache-testing/src/pages/pages/randomHex/[length].tsx b/apps/cache-testing/src/pages/pages/randomHex/[length].tsx index aa17e73b..48d23cd5 100644 --- a/apps/cache-testing/src/pages/pages/randomHex/[length].tsx +++ b/apps/cache-testing/src/pages/pages/randomHex/[length].tsx @@ -46,7 +46,7 @@ export default function Page({ randomHex, unixTimeMs }: RandomHexPageProps): JSX
{randomHex}
- +
); } diff --git a/apps/cache-testing/src/utils/common-pages-page.tsx b/apps/cache-testing/src/utils/common-pages-page.tsx index 0d3e7995..a88eea9b 100644 --- a/apps/cache-testing/src/utils/common-pages-page.tsx +++ b/apps/cache-testing/src/utils/common-pages-page.tsx @@ -2,14 +2,17 @@ import type { PageProps } from './types'; import { CacheStateWatcher } from 'cache-testing/components/cache-state-watcher'; import { PreRenderedAt } from 'cache-testing/components/pre-rendered-at'; +import { useRouter } from 'next/router'; export function CommonPagesPage({ count, revalidateAfter, time, path }: PageProps): JSX.Element { + const { isFallback } = useRouter(); + return (
{count}
- +
); diff --git a/apps/cache-testing/src/utils/create-pages-get-get-server-side-props.ts b/apps/cache-testing/src/utils/create-pages-get-get-server-side-props.ts index 2a75e030..41dba57d 100644 --- a/apps/cache-testing/src/utils/create-pages-get-get-server-side-props.ts +++ b/apps/cache-testing/src/utils/create-pages-get-get-server-side-props.ts @@ -20,7 +20,7 @@ export function createPagesGetServerSideProps(path: string): GetServerSideProps< props: { count: parsedResult.count, time: parsedResult.unixTimeMs, - revalidateAfter: Infinity, + revalidateAfter: Number.POSITIVE_INFINITY, path, }, }; diff --git a/apps/cache-testing/tests/app.spec.ts b/apps/cache-testing/tests/app.spec.ts index 405a5984..9c1c2ab9 100644 --- a/apps/cache-testing/tests/app.spec.ts +++ b/apps/cache-testing/tests/app.spec.ts @@ -1,5 +1,6 @@ -import { scheduler } from 'node:timers/promises'; +import Timers from 'node:timers/promises'; import { expect, test } from '@playwright/test'; +import { refreshPageCache, revalidateByPath, revalidateByTag } from './test-helpers'; const paths = [ '/app/with-params/dynamic-true/200', @@ -10,7 +11,7 @@ const paths = [ test.describe('On-demand revalidation', () => { for (const path of paths) { - test(`If revalidate by path or by tag is clicked, then page should be fresh after reload ${path}`, async ({ + test(`If revalidate by tag is clicked, then page should be fresh after reload ${path}`, async ({ page, baseURL, }) => { @@ -18,45 +19,20 @@ test.describe('On-demand revalidation', () => { await page.goto(url.href); - await page.getByTestId('revalidate-button-path').click(); + await refreshPageCache(page, 'tag'); - await expect(page.getByTestId('is-revalidated-by-path')).toContainText('Revalidated at'); + const valueFromPage = Number.parseInt((await page.getByTestId('data').innerText()).valueOf(), 10); - await page.reload(); - - let pageValue = (await page.getByTestId('data').innerText()).valueOf(); - - await page.reload(); - - await expect(page.getByTestId('data')).toHaveText(pageValue); - - await page.getByTestId('revalidate-button-path').click(); - - await expect(page.getByTestId('is-revalidated-by-path')).toContainText('Revalidated at'); - - await page.reload(); - - await expect(page.getByTestId('data')).not.toHaveText(pageValue); - - pageValue = (await page.getByTestId('data').innerText()).valueOf(); - - await page.reload(); - - await expect(page.getByTestId('data')).toHaveText(pageValue); - - await page.getByTestId('revalidate-button-tag').click(); + await refreshPageCache(page, 'tag'); - await expect(page.getByTestId('is-revalidated-by-tag')).toContainText('Revalidated at'); + await expect(page.getByTestId('cache-state')).toContainText('fresh'); - await page.reload(); - - await expect(page.getByTestId('data')).not.toHaveText(pageValue); - - pageValue = (await page.getByTestId('data').innerText()).valueOf(); - - await page.reload(); + const valueFromPageAfterReload = Number.parseInt( + (await page.getByTestId('data').innerText()).valueOf(), + 10, + ); - await expect(page.getByTestId('data')).toHaveText(pageValue); + expect(valueFromPageAfterReload - valueFromPage === 1).toBe(true); }); } @@ -65,15 +41,15 @@ test.describe('On-demand revalidation', () => { context, baseURL, }) => { + test.fail(true, 'This test is failing because of revalidate by path is not supported yet.'); + const appAUrl = new URL(path, `${baseURL}:3000`); const appA = await context.newPage(); await appA.goto(appAUrl.href); - await appA.getByTestId('revalidate-button-path').click(); - - await expect(appA.getByTestId('is-revalidated-by-path')).toContainText('Revalidated at'); + await revalidateByPath(appA); const appBUrl = new URL(path, `${baseURL}:3001`); @@ -85,7 +61,7 @@ test.describe('On-demand revalidation', () => { const valueFromPageB = Number.parseInt((await appB.getByTestId('data').innerText()).valueOf(), 10); - expect(valueFromPageA + 1 === valueFromPageB).toBe(true); + expect(valueFromPageB - valueFromPageA === 1).toBe(true); }); } @@ -100,9 +76,7 @@ test.describe('On-demand revalidation', () => { await appA.goto(appAUrl.href); - await appA.getByTestId('revalidate-button-tag').click(); - - await expect(appA.getByTestId('is-revalidated-by-tag')).toContainText('Revalidated at'); + await revalidateByTag(appA); const appBUrl = new URL(path, `${baseURL}:3001`); @@ -114,7 +88,7 @@ test.describe('On-demand revalidation', () => { const valueFromPageB = Number.parseInt((await appB.getByTestId('data').innerText()).valueOf(), 10); - expect(valueFromPageA + 1 === valueFromPageB).toBe(true); + expect(valueFromPageB - valueFromPageA === 1).toBe(true); }); } }); @@ -126,11 +100,7 @@ test.describe('Time-based revalidation', () => { await page.goto(url.href); - await page.getByTestId('revalidate-button-path').click(); - - await expect(page.getByTestId('is-revalidated-by-path')).toContainText('Revalidated at'); - - await page.reload(); + await refreshPageCache(page, 'tag'); const pageValue = (await page.getByTestId('data').innerText()).valueOf(); @@ -141,7 +111,7 @@ test.describe('Time-based revalidation', () => { await expect(page.getByTestId('cache-state')).toContainText('stale', { timeout: 7500 }); // Temporary workaround: Addressing intermittent test failures observed in GitHub Actions. - await scheduler.wait(1000); + await Timers.scheduler.wait(1000); await page.reload(); @@ -153,6 +123,37 @@ test.describe('Time-based revalidation', () => { }); } + for (const path of paths) { + test(`Page should be fresh after reloaded once if becoming stale and waiting the same time for cache expiration ${path}`, async ({ + page, + baseURL, + }) => { + const url = new URL(path, `${baseURL}:3000`); + + const startTime = Date.now(); + + await page.goto(url.href); + + await refreshPageCache(page, 'tag'); + + const pageValue = (await page.getByTestId('data').innerText()).valueOf(); + + await page.reload(); + + await expect(page.getByTestId('data')).toHaveText(pageValue); + + await expect(page.getByTestId('cache-state')).toContainText('stale', { timeout: 7500 }); + + const elapsedTime = Date.now() - startTime; + + await Timers.scheduler.wait(elapsedTime); + + await page.reload(); + + await expect(page.getByTestId('data')).not.toHaveText(pageValue); + }); + } + for (const path of paths) { test(`If page A is stale, then page B should be fresh after load and reload ${path}`, async ({ context, @@ -164,11 +165,7 @@ test.describe('Time-based revalidation', () => { await appA.goto(appAUrl.href); - await appA.getByTestId('revalidate-button-path').click(); - - await expect(appA.getByTestId('is-revalidated-by-path')).toContainText('Revalidated at'); - - await appA.reload(); + await refreshPageCache(appA, 'tag'); await expect(appA.getByTestId('cache-state')).toContainText('stale', { timeout: 7500 }); @@ -205,11 +202,7 @@ test.describe('Time-based revalidation', () => { await appA.goto(appAUrl.href); - await appA.getByTestId('revalidate-button-path').click(); - - await expect(appA.getByTestId('is-revalidated-by-path')).toContainText('Revalidated at'); - - await appA.reload(); + await refreshPageCache(appA, 'tag'); await expect(appA.getByTestId('cache-state')).toContainText('stale', { timeout: 7500 }); @@ -244,9 +237,7 @@ test.describe('Data consistency between two app instances for the same page', () await appA.goto(appAUrl.href); await appB.goto(appBUrl.href); - await appA.getByTestId('revalidate-button-path').click(); - - await expect(appA.getByTestId('is-revalidated-by-path')).toContainText('Revalidated at'); + await refreshPageCache(appA, 'tag'); await appA.reload(); await appB.reload(); @@ -275,9 +266,7 @@ test.describe('Data consistency after server restart', () => { await appA.goto(appAUrl.href); await appB.goto(appBUrl.href); - await appA.getByTestId('revalidate-button-path').click(); - - await expect(appA.getByTestId('is-revalidated-by-path')).toContainText('Revalidated at'); + await refreshPageCache(appA, 'tag'); await appA.reload(); await appB.reload(); @@ -293,11 +282,7 @@ test.describe('Data consistency after server restart', () => { expect(restartResult.status).toBe(200); for await (const _ of [1, 2, 3]) { - await appA.getByTestId('revalidate-button-path').click(); - - await expect(appA.getByTestId('is-revalidated-by-path')).toContainText('Revalidated at'); - - await appA.reload(); + await refreshPageCache(appA, 'tag'); } valueFromPageA = Number.parseInt((await appA.getByTestId('data').innerText()).valueOf(), 10); diff --git a/apps/cache-testing/tests/pages.spec.ts b/apps/cache-testing/tests/pages.spec.ts index 5e51ef0c..ff41ebfc 100644 --- a/apps/cache-testing/tests/pages.spec.ts +++ b/apps/cache-testing/tests/pages.spec.ts @@ -1,3 +1,4 @@ +import Timers from 'node:timers/promises'; import { expect, test } from '@playwright/test'; const paths = [ @@ -105,6 +106,43 @@ test.describe('Time-based revalidation', () => { }); } + for (const path of paths) { + test(`Page should be fresh after reloaded once if becoming stale and waiting the same time for cache expiration ${path}`, async ({ + page, + baseURL, + }) => { + test.fail(path.includes('fallback-false'), 'See https://github.com/vercel/next.js/issues/58094'); + + const url = new URL(path, `${baseURL}:3000`); + + const startTime = Date.now(); + + await page.goto(url.href); + + await page.getByTestId('revalidate-button-path').click(); + + await expect(page.getByTestId('is-revalidated-by-path')).toContainText('Revalidated at'); + + await page.reload(); + + const pageValue = (await page.getByTestId('data').innerText()).valueOf(); + + await page.reload(); + + await expect(page.getByTestId('data')).toHaveText(pageValue); + + await expect(page.getByTestId('cache-state')).toContainText('stale', { timeout: 7500 }); + + const elapsedTime = Date.now() - startTime; + + await Timers.scheduler.wait(elapsedTime); + + await page.reload(); + + await expect(page.getByTestId('data')).not.toHaveText(pageValue); + }); + } + for (const path of paths) { test(`If page A is stale, then page B should be fresh after load and reload ${path}`, async ({ context, diff --git a/apps/cache-testing/tests/test-helpers.ts b/apps/cache-testing/tests/test-helpers.ts new file mode 100644 index 00000000..01d78de5 --- /dev/null +++ b/apps/cache-testing/tests/test-helpers.ts @@ -0,0 +1,28 @@ +import { type Page, expect } from '@playwright/test'; + +export async function revalidateByTag(page: Page) { + await page.getByTestId('revalidate-button-tag').click(); + + await expect(page.getByTestId('is-revalidated-by-tag')).toContainText('Revalidated at'); +} + +export async function revalidateByPath(page: Page) { + await page.getByTestId('revalidate-button-path').click(); + + await expect(page.getByTestId('is-revalidated-by-path')).toContainText('Revalidated at'); +} + +export async function refreshPageCache(page: Page, by: 'tag' | 'path') { + switch (by) { + case 'tag': { + await revalidateByTag(page); + break; + } + case 'path': { + await revalidateByPath(page); + break; + } + } + + await page.reload(); +} diff --git a/biome.json b/biome.json index 70dd7148..00abefdc 100644 --- a/biome.json +++ b/biome.json @@ -27,6 +27,24 @@ "useShorthandArrayType": "error", "useShorthandAssign": "error", "useSingleCaseStatement": "error" + }, + "nursery": { + "noUnusedImports": "error", + "noUnusedPrivateClassMembers": "error", + "noUselessTernary": "error", + "useAwait": "error", + "useFilenamingConvention": { + "level": "error", + "options": { + "filenameCases": ["kebab-case"] + } + }, + "useImportType": "error", + "useNumberNamespace": "error", + "useShorthandFunctionType": "error" + }, + "complexity": { + "useSimplifiedLogicExpression": "error" } } }, @@ -52,5 +70,11 @@ "formatter": { "enabled": false } - } + }, + "overrides": [ + { + "include": ["[slug].tsx", "[length].tsx"], + "linter": { "rules": { "nursery": { "useFilenamingConvention": "off" } } } + } + ] } diff --git a/docs/cache-handler-docs/public/apple-touch-icon.png b/docs/cache-handler-docs/public/apple-touch-icon.png new file mode 100644 index 0000000000000000000000000000000000000000..f54803f3a4bb2cd28e33692c71951c19238aa2a3 GIT binary patch literal 42981 zcmV)iK%&2iP)PyA07*naRCr$OeFu0{)zAfgL5yXb|T0lXu03w2jR0XApA|MEg zSiyF^R?sT~BGNmd1_%L?KuB+sOh3PC?Q_nYnM@i*zwi0Kb1(P8%$a@m+56pVul267 zb&@1W@N@CU5}?!R03G=6kZ+afBfr1$*U}YyM$e>6c^*U;)JyrEK6FdmHSG;veJiK` z{BD{imDf=|Q`)4q%KMHVD}PD<=i6Ro|5kq>_r-Ty>EB8}`S0`$`Q2%L)c4fuyymCE z5m(2S2e{m^~9uO|SX)X*+nuT`kc#e60qqB*>KJOkp>)?5sD2l=GUzn@6)a@0 zclLRf?|14V(ayOBI92JFfMdmrlJAlG><=7OeU7}6)Zx(r+G{MYx1jU$&YDii?@CME zpS1NaxGNU7l>puQ$I7y;xXJ$?zb#iX{gZ>CNL}vS_1vB-c}brg#`kWW+wGRh+cqm| zx;*Sw2h-KLx5{%VH(H&xuh+fWKKt%kel|^2;+6;KYDv^G^1I3-SgjkYGj`Q#xSBUB z{qO>Gxm&K!R^o;Pz1WAU`Pk~-eq~a;x)QD`lTwv?)a~~Qx891>1MSvY)nTtrpS>1e zIsNz7URBh^>dtyqcXEHvt`yMaf&6+y`RWFttbTd5?fo6UugLcJJDz_f&$!Y>b0yF6 z{f)n83!_kGG_J)%u1g!#KgHty8&(oC2#T&&#TTm1#9ryW)%jf&yM1kM`ybFjFF^aV zn#;pab#&3-L6jFp9O4V&~db!F;MrCqrK8$eZcu(`fr5FF~J=Gb<>fHNxy;W7`ko$fWK&|Y3RNAgW zqwoqk;AN@%p?|K|q+IU-t8763@B3>r0#}QV{~atxRmaMA0hYHQuVA58wG01u-#{~5c0T>6>Q+*f?)w@86|F+8bD>K5R#iH1CHGuM&|j?-x{}wq;@=QFbh-+CIbwb( zSW1a7l5OfMbTD0UUxiw8ZF%VGEQE5Yzsd$e<)vkQ`f5htZ~ARjKwO=%yC&Vfj*Ir1 z^sl;&(89acfY$cGpP@|+6@G9JSD+#ZyY+fq+UTh9JT#@U$vc{F~tK+DtYMT|^cP#*2<$ee&lzr^< zS4ncCu&@x;QX7S6!(u6c)9H{yx+S>fh80UcBqS6jlL>l*9yM#$gwY_Dk-C_?R=w6$ zp!uTAf~s=w%iMS^#_k^lv^;j#70_B>S0kjCu7=YK{ zJ-nLm`^;)?&vbjSr5I`HmvHRZNgO|M3MZ0IxlxfYdL0Z#BZ2}05fT!FsEA0kXwe95S~W+zwyn^h zK|G?OB4IKZ~M3KivmzdU|7Ibmbw(ENPtt*A3fi=J*o!XptPiybdYp<==l#x zYyz<85Yt`)*+S}pfo#)_;-29)7NUZs7R#|&$yNny6R(6 z=FVzKf@FE?mmU!p2S8v2*7>oJ~28a~IO!ush{>ktHHaQ@7A6^m>>=f)E%M zipbbHsM$Ckp)s`(5E%+%P!NJ5!x0!622+3;29rssB(k_>7_&n{2bZ1L4vB%TN?;cB zqHiRb-7Xg#C01CAicykZ2xo~Ewjv8kbMldY?h>-joQE~95RPICB$wL@IV!GXTE0e& zNHlNO7|ohA#E>Ba(YkdrgaijwosPVUdAuG!^9b96E&Vc_4g#^zS4pHWpk%F5W zSbVZh?b9`uP%^Oe5@5|O!0u1JgVj=kZo}?IM8g;_rn{Uf65Ohy&bXa!I7_W4&B{Z; z=?gfuZ7*_9rNCZX$_s(Iq$ok2?zo}X>k%3fhVI=v;+dx(L%Y_^S=YX~uPDI{6%a`S0)e?#KV){DpL0<@^}E4rI#_kXaB1 z8WCJ05>XB7Bep{e)M?cO;qmpLH`8{l$UoM0y(A+=4ft;T1Zd?KI=6%q>;J&cch`Ux z)(t}kqT4eM!A)uiBd~h<6SYgax6bK8VMZphPNX3Hz;R?JpGQ$vE}SK$BBIUD{udS+ zf`0va;+}hkpi{f{8eLmas;(c*t39<>AwUJ7ucCn~mz~$+m&_61Qbs1e_~JW!_u~d! z%DBwjFiSk8t^?C-I+#L(QKwB4H0skC(XE;wFe((Lpa7X=kYUM6n+#i>#0xcCu&Ir)3r zyyk$e_G&EeeakE|A6e-0J%P+pY{Ay;d+^S?t8wD^8PJ@n6q*8Nvk77KYNKAqR%kKk zMuf%Gf}V6+)^~}PQ_7SmfcEa7$nWv!${w_6?pN3m9pES|#?c=)!BS9!_IKZk(Aa2I zx7Gq$Y_U2xO095MN?C8$tLlMg0eRdiiq0=6K<2+)PFS<^ki2C#&h0pW!V8z+DzSNG z3@eK!A|ezI-hT%keds=RF>pDxlgN_%HjKS1`~Z)_Vvpfl?!fLap{a!V{s1R$v{0^($TZ_E>A|Z_!r2>Ui zK_sMJEws3^9~uwrg@Djtbs73XaAIwslJwxK`f(o=8S5 zx~@z@R~etzXNgd&#l;ret?3Mi>TG25xR|g1YvcfRqvu|`74eXb%XRMB4wtA-$R1aQi5|k z4&u_@Be%zF6eC|%Cm1)h6}ypl>O4-Y-;9hyCtxiog27}&Wc_+*Iix@0Z|n@c3RE#UioWeA zwV^088$scrFh_*414g`#QWsVRl_K%w!BT4oGP=}&Qqj29#ik6d9Ps45rMi)ql8PhW z{fdhRPQYGlfnIM!aP1msGN1=q4C;e`$S_f?joa~6ti+QYmJ+0GKZwKs`308L%Ychq z@M4b0Js%zxjN!xY=Rb97MXM^@^@r(IJb@Oowpim;G$cmx6i%(&^s?wI`ISTt%FFGmn+7D!c%#wtm_D~6Ezo+7~i zAB?tBci)QWA_*ugD#CjoeUA56uSKcFCJZnZ_T)|uKy=3z=rZy?gvQjC3$zOGWw#nf^M?r(U9|M7_4nk)P` z$5UZiy$wk2vrfd4Xo z4NDW8bfr6kvI$))QeIL0E?&Bf(c`9K|KVe00&7C!>R`Z>rx4mGj-f;oBLcw4Lnluf zhlGhsayXFq#X21PdOakHiyQq37VF2_-BYHeH42^E?3Fr-g%*!Y)w7^YkL6X?( z*?sIVG#JoLWnmNtj<)CgIAsTNyK(f}-*9xzPq3HTJ#KumQ4GL~&p(4FMm&swYXs`5 zs+{UPvRYQY1E?&ZuK?9o@RJG`IJI~5=t<0(zXaQN9}q5FdB7>)rv8nc(E7nah)ReR zp`5Z7EZi5$3v1t6hx0r3W6RtXknBzvWJ}&?GU2HakKo}4hpOBC)<1V+=IaY#H0W{Z zQYH!uix~K^UE1KLX;1T(E>r-KPNhtUs%_9t;Beu{7wd84>tCRAxzVs;eKc>{2)}Ll z6HbR4HJdlUO_QHOP~BScI0z^UYMDT*NN5SE+xFwnC7-})u^`Z7Mr>?d1OxCd88nfb!Uf}p;G242My=Zl3KQzC40F0r*&{O=f$|n=J-Lo6gpZ^Jv*THxW`}!4HoLM+FMya zCpDndip{UTi;D-2!Kl+?+}KgL`;J>-HX9Kh7KZS!P_dXvzjit}#+zCyDk#R9&%eco zpMJ$CY%%l}bbjJq=H@Fa6|87J#8Ky+NyU-RiQY>TxsY-ng96PQ=%BeC24Y@L(N(Klfb#iAPRg%8Yq9bR-FK)*SD?=9-ac|L7fPJfJ%pJ3?xc zhDnyb3@(j<<)N!|uoo5M&js(}(yk*23Jb=%AJ(8r!vrs#S1b(L?maqYZe9VNpEMJH zY}tu`uu$Cd?yJz(jx75c3`j9Xr0@Rz+6v?(on!s?p$G25%o#5rC?Ehot>1u&Q(lA3 zW@mMy$Jj^EXkc&X*wFGc%fQhC&O!?|OnVEtr_UicFa%$Iz7lP3XzAgZ$$C{z`4XzI zSjuh*d-os4z5f~oz<@@#^g#FL9^rWGssUPz0m*E8ULp3Z{x{OL?T6cHS34OPXvVY8 z49Byh9z%fne}+yicmT~AD^P1YLJPUjG9p=Cyu?6dxlIt|;0n}^Xf^|?g z6X@O!39Hj}-D^l!K1MrL*n ze*Secva<78Lf^T31_EkCdMj{p2r8kBn2e)e{eq*P{|pKpZI}>?58rEtooz3&hk%B}Amhz=v}=AA*~cJVuxs%=U-y{w-*ic4_xoB!h2 zcfSEPo6N)j5n;g?G5mf!`_u>o$u!}01xO{03qb$Fw4K9D4y}jYg7%LMg=C~?H~H*Ab(fHk_UArqS@a>?rKPfZp;!!ZyoH7; zRP}lOjHpc=bO9y|d}S=^bZEf_t}meZH#DG>1!EMy;jv+cL)kxdkZd+2ez^|EzWoiv zt@DmXp2fd@GHd2b_}2qNVKN!2hG#!|>D8*Ls>)V=3RczCj0)ev*D&yPaZ3{N@(M6x z_Coyl(?+rS<%qQK_`2ve`XNN$&o5#~X2f-E3v(zXiONn% z#V(}za@cWd-4-19@+a8yi&VB)^j*X>sQ;sKwR+Ao46k1oT}S^5bvw2YKv83)Jt0ue zQX6)?vj%B@?5D&<+&*Lg7R-4WAruTn)|qUrl4Skr>mTsyYj2^{?tmdY6ul;lK>e=m zJUWABKwTxJ*tz0!oc(<#B&Ue6=9!VRI%qh>W+k)Nid7690wcoE?*74Oc4uE00!*@? zkQ|nR!C8a|pE1 z!v#yCI5+^K$&C74Z(!OhIJ%}tqSXk0WqYPZG7l$V(~PCiIb4W}48!~HEku`2ZDfi` zmR#~e$(j>#lvQOGn?(9Q~(119KP|r)4i^VKFlH9mBal_o6tzklpqw!@{YL zB8!}Oa-#G|jf#k^g9iP(p=OJQ!WdNaYk7APVALb$crt#QwG7U@VnjBIL%%uW5L_#Y zojSDlh@XkS^U^Q1V&5m<;=~V|dEs(9kWi;~4ZOGFEwpdj#^Z0Pa(qtJ1bbEPx_Urg zMW;(`R($sPcbNaiayT4ha0o-s92thrPv4LDKAoXA80Eko@6D3o=dk1V*H_}wuERW; ztsWS}pyrrgIRjbIv=sqN63!$?mx*(Tyzda%C_=;&(CrG?Sq;)FvfRr{Sdx{4EpL2) z!ehxWnap_ViH9(5+!HXHjIv->`Yv`of(8|?8Ts^!NYBWEDJ%p%Mn8;%zTN!J8LuIo zgaD4S5VtUEt?VS+S0TC;Bqt?|Sezqe`)-dws0R)>Q_U2mB=7RGSmcD3)RIR~5HsjOE)*uQdI3yVxOw$KA; zxmDiT(%H##&VF9IG%JCBcFU8mo8=TkV!f>Tkp+>-i)@x?&7p4 z_WxBfDqOe1ElLs40#H3G6mRAUHC8!eVY$nVikVUeMdh?9%+hE4{T{7EaVF=}@!Ryp zaAX&vPVHKFXYp)w>(;?zld5aQ12VDQ>yVw3i{~az!?qmH)(94m| zCY~I-BAW9Q!0^QuB!4v)0DR)s?71!*FmczPlZ96aWkADs@h zJGMrzal;W@yQUoWD5gP?0Obi>F_>bKxgdd@@}!ux!dUPOt$M%Pg_68N1cU^`5J)l2 zYFLnF9y~dF+R34brwF>uuPsCF(KGD$7%}_-yg2b01XJ1+i*t=k_Y;{$(sIw^4Z6duw~&Y*s}744i6wCGz7C>nSgul8gk9fdsJBr%_R84WW_pk6;L z6!m*|=IAcvrMzO^D*!YPm*hg`@zXf|<7O0QWTRG-1hgJ{Gs0r)D8#MD3#fC$nvsKF zr!PU_g$$M~eP=v__+A}7t{HXvmM2b~VX>?VQZHiboRug%n-21tO?dt(JoEH0p%7?S zp0GU2%&Dph>m($dNx{=&UPAJ@H0VqwwEfp@XmkG{UXU_&{mKkiaVgGi+Xq*%74f}0 zBA|8+A;~qygOXk;j7AAAs~zdPkKoj%9bEpPe*2baHsmG*)%lSX6951p07*naRIcIo z8DftSFT_fRVrD3x=m2Ye0d_23gY=z;M7(^JS%pr3a&E4a}|PAoUx*e znnqEqOvR{ZC6zZaIl1{5`OF0DKX{b4LN~DuCL`KCGz6{hzZE(Y>CGOGnIh%LV^*41 zh`^eW>?rU>2VpJ$%z12{zY;}hmxW|B=n>bWJ$jFSjAKBQ2~q0Y+H(uBan`%YIevyS zU2cDCGQyiA$oYVpC&-+$>X@X498TNE^OX~9ZRU@hYL*x_d&-e zAAm6+&>PUgttzNVw;N|R?ZV!7zkrJ>s?snS4QO#kKXe#%KQl~aWGSg{HXAItg$N;4 zka=dsI1xHGDJ!MfdH8MiQsi;+h4AE3y}dht(5Ij14M^zS2|dRThao7?%dsHzUI~tZLTp~}9x{$6Bfd{3 z^nChZm^dg$TqH4^)>3R+@-fc;v5x^oxZnS3cFVU*`dIKOo-w!QfwV0UsH!?Go>;g(zac#POGK{Ik`s|qAf z>ZJ@k@$`#0nRJF96xXvIdOSCr^8{tRNd_DH<+*>!ziz|s_k9$lqBx<`|OGiNvqhbGRnOJU46*j}9H$;6LB~%!6%+2t}VsPav*SD|tKimO-RT zvjL_J@=%Zc`FTcL5ohWPfopW!k9A<;E3;N@pfqeVkcqODuvu-lDuR>0ua zLuWSPo+Z-|#xdyB7f%=}8RKq;1Bbu;6^B0g0S0;FCocY}Cx>I=gr{IohhEXfuNqih z4e)T2r%+KB{p3@sMpD()`m&v*nBs9SzJiTgwu`s{=wS#BLeGhhp?=Q}9IEN>*`$!! za|^I-=_klcI*WRpTA{}?!w?WAbDWZdv|Wer$6KqIPo+$X8B-=;@SuJeH(?rf>^cCa zjw z8Tfs{`zX#XKwO7b=r!gM=tGEBEDLD*$W~O09n01rb=v{elNcTminkZOivE3jF|Ah} zBTGi1Ftu1;#|2SuIi!qXoR1K(o-$se| zPy+cg4jsdvi#|e0b`C-UgYeRXF&OsfJun%K*uCcfCQg10si_xPKyr(jh{mAL{p_o=hzF>K@uNKd<{b|fUOHg0=k5&~;Qsd2#m0Ij${gk2`wzBI_h zml|Ad>{z)Lr`B!e!i23_Hp8kFZz4X9222d}H{Y+vlRBu%&0Qx9)-a2II9^Q#q2Klkfn#i2+&1uL ztXMW*ut{z=T#_5_EdKzD7O#R%XMoORz)debiTb@efr`5;!bWQpdo6lj@kv2UP6rNt z@;#1!vq7%w3mq*)G2Jp(hr(P4sx@h^wSia&TIP4<9mArv% zhTV=f4-8^Mtt`Q;t@q}6ccpkZ^Q|ryQhwi!9m_t2%UX&ca}ZveH3|0(9m1(oOdQcM zYemJFHRo;o`@5gnNDPRsfqqk-;$kwMaB8Ixfq0g`_abj3RT164@@p>C(xycdtbAua z;^X7wS{xo?OX;y!B~gD(&X9L`1^J^B{!m)H9)_~ zqYxHXPk0!$^>E}!KOQT^){q~r&05bpcLAGcEkkKWu6jg9%N9-X$%ji&Ct688ySCUC zIyAf0G(O^T-50Vh2#6vw=_L$%^j=J!G!7x`?Gw>*iWIqYITIsBy?|pUl0jBU%e(rcSU&K9k4VJ44c{_ZBD(gpb`eQi6iwjBX^%IF} zTR;E8G#oj3nyZj@8F@dN-QJJY5anJ?oKcxspyqN;p2hF8m&2M@0CRvDZ_a-Ow-4?M zlR?CRYm_RaTu8;JQ4?`0`5g1#O$PNrkI|2C6l0l7t1;d)%vI!U$?*2JrSMAOZEa|Kqf{#<=e;(L2ccnl3_JCh^c z6xL9ofq47&0hq9f1xG5mUD&zwQ=Hwji^C`>!fVB{xv0&nUi46l4U%LVH*d#FQ|E9A zF=J#X`b~Zcb=tR7XoCvIRmUX*cE0;L&Trbo2JIa~`eV+lNr;Sy;O8mjY|5w?zM@|F zw=b~E+3KiZ`zLF@!kh)~!0B?adN$yd=MdRAUR^K>p#3#LB^t;$JHL4s3_3mT8#)+s zX1#>KfB^MrPwfY2^XOhgRSG(>5o<~LW`zNuLqvXKN{Jeo6#>5;kR27OO}zNUc}`~ znPTNz{c6jxuk7)XebuUn~K2$ zZ$bf-CXH|Hjm}R!=&6dNy4bxN zAl>-Hy3IK7;eR+3pl!=mSp4QpG;i9#D+s_#K?g#X2N!+QsM3^qlY*)2hmViv7=xdSs6=Ke267WKV&_czSjo_px4+((XfA4+56=^LMqoP*QoI4 zr!P#sgpCVUp!n=1KGy89NAAT-FO5L}IZas4^FF7W`^B`Fo7JA-BcI3Vl=E;&5}MxL z7hOl(%Y_zwZ7XHrTC(!6W#0Q-%8N<}OdS6do*MZO3`D4^FMS22XR88i+541qHU*DA zF&^pZmtYDFMX&M05!181JcecYTxvS&$Z2eRWhvK$4hk?}!Q2@bde=aem*$;LW@3DB zij1smJTiO?PA6Z0-lXSK2iiY;J9}|GI*P>M1(eW0u77gI^ndj^)a!bKob94=G0af? z@%nOPpGZ~(ThFc?uxjO72xAX!71gsU%5$%H=<*gzMQ(6^zsW5q!V}NDi2eH#xf^s( zolY&;&5 zEE(DOl2Yt{{~MfKzXi2hG(z7gPb0V<6?ODU#E@LLuzf%Nd}B2yE7NmALxZqr z;j6f9V88Ms&Z-Dt-`lDL=xVjClklJKH(=7sufgS{=qtc&&||=~XAsw;9qVJlXW=<; z$C{Iequ*_0U9tT=gAi296DY%j?Q-MT4;!)n<8J|%3$gWTW7UcUxS?h9G8UOu;&|ap zrvrgw)||!oWX(6+FJrApP9Uv8NdcM~&cte*-MR|BOke6P;v`NHEc%7tE(-Hhl&8Y9ZkhSP=C%^Kn3kKaK| z?P!_kC;P->3TpL#ZRjZJ&~Lx<0amX1jDwBLQDGSH>T_HmNAV5NI6F&AQIwjA;F=LI zMN##CT3}^YwaaS7rdO6CiV}J@!2I z?oSj3lMaY(*9gUBq62#Z(sTeQa0~q339^&L(t*jyHx9%q~oQ7$Fb?H z58x;$W@o^>*I&XtRB*+pIrq=UkW`XLxzF+#Q=d(~apCOn3a zT2ZQVr|41^wk%l1<#vfxxqs+wcy0Ow1asA-Yk0|}ebp}d)4$memhj`cU-9ycxhS@j zGLU;cHym*{bx}Q^RGThccKkStOAs6wfLSvq;DP(^t2$?L ze)q;LJ27F>OyuVm!VnOI_QUSL4fosvNv^D!NM*df_?hEG8aIl^+K=8ry}GsJAp1%H zT^%DwLx1_B`_x6LlVG#jF=ggFeDmFUxS>Z>(|8P=H6ErK;S7kvv`g4BXC?B_q`{!m z;eq>Z!_1iz5f&WEWpiajYgV@=O-nOgq8|eDTmIaQiIZm`D?11Jpg?pRc|V#AxlzPV zv#^rScvRc>@93c>Em>LEJYy;HC`49fJcd1dH(r@G!Han*cXX?=+m+>^E0;cH=1cQ| z)n>!2c}uYNvv1^p9|_^{vAB8ma|l)HxcOQkk{kJFQnCBfZ#jOU*V7LnszH4rQ0z_| z`u8t5_~p->Onls(Dl9=ra0sToJQk1s>mDVjRjoN)W*k&^un)mo zW(QUkXm6T_fuu1owM>uv`N70v82#K7q+QJ5q^cJ8-hwV8?&Y!GyXtGs#3rw4r}k~I z>b*Bmvt|w0N^Sg(;UOX7d`68ysLVDk9LgM5VpmE_ts+`cufxK(-o@&Vza-B;OyOa; zl~j*bP1IB^5g+ZHUgnD;dM1Ud?tA}BB(3{hu82hk7B#|$?=3?8*s8e0t0pPRmC#lD zxwjH>@p2YMK0OJ?kDTCCdXmshZo3JcpQbon!GEgMpLWH$CAP@vnN+Bo^;EZnb2|@W z%c76qvRGj@8SwH;V{mi-Uf8tx5A4`^0QU{O9k<=uS2GzNP$=t$o@aA9@Wt2PW5aJ- zFlb;u3?A4YrFJ`>dto~EA2`AjN5#l{Jn;aZ`g-|D5(9TY|2|kaXF6)tAe~-FIqkTJ zXNXVydIqZ~RTOo=pF>9B|C~%>t5HYSp)Ou zOvQk{y|C}VA^iJ4Kf>W~VbX-rs2^8P1+D*G4Jfu)vEZ%c$jr>f?YG~Iri~ln#g}H{ zU}6#{Le%fp4!tLg;LLoLEs+ z%s8yJ%2B=ym#}5qZah173KtG1wnA?*qwkDo5!0oOs_XHJcDvP@$yAF%R6LTQBB#%n zWar`c1*>rR$Z1{}&6+gAjeWXc{rZi_%*qCZTSom=XmQcPS?GUbH;&j-nFkG!=mgh4 zw(r4&mu4X=Gn*4ZYet6Sf%}J|UR+(wo4;7Zdgycrt`!MuP61aDqC$utf4CT(+l$&7 z-pqK}QBVP`1#uM&z6$q5xmJkK0)*0ASXhj)&rijcZF}K@gjx;jb6%t+FP|6TefQjs z!MFCuC!c(U1BZ_AyAk(0{L%X`dD0jJnFG|Ll(n8h`a6XRygGL&{{5eIJV$1e83_q- z=-IO~)_ndSHrfs3wH);Tn%~|}o;S}M5TL1`50L=|a{zQyR!P3t@8EFYhe`8Lc=8;N zCpmoXzxNKzo%1rxtYZ4pzx{t)-ndl>(3MGRws@T`j+T|t2XaMrEUX$rb27rm7(}FKNPR+eU)*=%O!BQO$mn%AHxfiUd8F; z^B&fL4iYlx(V#(nWM$@XNnKAD^au_Lz~jU3!Dz&Df4Jaro#DX_gVC~mG z!pVhflzxfbN1IbgnM0J!9M_GiJ&8u>_Tr0~IQ-f7$WOhD7I*eX!<&0}yo_vzO1SXn zKK%LCYA!ZUJ%|Vo!&hrpqIF9-JEy`GUip_51KJ}r{jD9Z)~V9|kh_N=Hz!{VvcZ6E zV;@1|LA}LMz)GZ?B;oMdpK$QgANkB`s_rvj>a*&R50puA;m`fp^u~LT9HLeSyALQ` z2rfjMb?6dT6UTB2kzDBD0j*uT20nQA4RmPRN_M0O)#E~1I-VRo8OM(jm|bWd8i;05 z!T9rH4)UqaxWZe@^^z6pZqUHKSU7JQA}9@C)?dref$|6ZfBq_7mFF?^Hz#FyYHyBP z8wx;uq?E1qKlqGK0;9$434;;YDO3Lr?LiNDldQnKT*m1P51Vwzxn3C%$@orYDc|+VhW3+I2%YaV% zV=uNYSj9n634Obw=j12l0+EWDBf*xNhxL;dz>=0Jk~;n>ayjGW@p$UVN943~Un8q> z5Nq!!Ux${(kYBsikI4S%FI8al_^G_>la+0*5rF}7$0I5sPCclGKBw=AUix$KCmb-} zdHCIEdB@H2Ss)ThE@xxQo2!wPc!pPSfI)|tKm*!Eg`jh-5ZqWl3UR?^?9M61w4G;g zwwN|v3EjK3!yEHwpg}yP`siV^J1~3hVto3=_ne~CB-DiYT^pif%`luPD#b4sa`8uI z0Z!*zU~zd8bL-TO#`2}Fp=+mho?_~<(W8ciDqt2$q&zX2kt$DjRwb{z0<_aZBw`^p2^);T02ioxz5TB2EIJ zGQumC&O@_ijoEf^I2`!;n{}8meF5mGN0Uy%uqL%Ip;bMY^nuu)U5Krh3vf8kf~3My z6gXWV_lPdQj84OcqRl-6)z}iM!nF0x)v)Ckp~YPT(01fKUJ{z$#Noh>rJo}Cw;e)I z>2$cIUoX6~_;rMYgm?;8Ru9KwQK>nFl|-BQwyk>kwwnW;|L(1mV$!(dZr> z#1j={(6in}_qudC?8+|1i#w8#TIym~IAyBLn>!Ujfq_`{;pbSqbTx`gtf*zyV^)WF z+!+(jX+SQ69uA!zc`i4$W)@@q-V|h7?VKO@@}#kN;<5XLPOgM?(p#x4hL4Bv3I<-a zENP)|yGr_*wm^(xRd}`nCFWY_>q4CxJ&st9Oa$t67|}Wo55zQFU-oK^>fDYwNc zLpe&n{CWPVbNKDmWw7QJAlj_Qyw33~X@ni|qch%H zHlMRms2&F|TsLj85}Xbf8#@k{6Lu~q3s6KMIX$TAztwJq-R?v|VIkLUrmLi+1THrn z3MA87vMz2k8Tph}dLJsv5*i%LfjUI9(M8{xj0SdyP^~;lTcTqqSe=j^AaoxYY4hHE z7w@nB5<1C=+u~|se&>dWG;yHuUMC!$&z|IV+oL)X~8> z1_pD>yKmM=Hc`XUV~X(Wt6j2O&c*Mqzsoh&jBW`}G_Hy9t?MDgC=ZNM!ixr$^;$95 z7PlLpretHup;Q#QfXFC1sv(S1is+6GQGr zjA8?-Zrx}k#K)m#&6`*<8GR z>;f!q2{oc35gQwW#3NL_N{^PIW-RQIfOe5`O+F1+6fjfYh;B9$ZdxE^r5gw3bUWi4Bch8=7EyKf4@nesZXlke1#; zK~Qm?7ZYcZYhr47@rqxuqeCG#bwEf^FzVHjW#^-&S%+C|V{u1)I_FyMzIvLg zGNtkYQNbV~!|KG_M=oN0YCbG37itEW@J!Qa3~L;XKqbpVrvsIBylit|)5Sczc_bA% zc2R1UmH%eS?Mu)9Yal4fPy)sgY2EfCCo{cTtfopUe4?sdl>xWB z0E|F$zwfJlBt4FfTd1gd$tA1e^o{59aj_0g7h%y<@(Y( zJ)CYmeoV{3+egmgl0$;kDS~U1)`Wg4ddX6e&kqlQDIyf6$S@cp!=Mii;^Hs#Z*xQ# zLL$PU3l8LLaz3V*YkUAsvq1xBCGkKMV5F!x<6peJj?Wzw7ajiwn;njl5;#k(D9Xx( zBewvq{35viI^n=oWC2AbI*Ke@xSgmu0*5k|d~&W_7u&2iAj+V_-SJTv(<+w#E(%%d z*o9r-aAAFFE(&dS+}@}TVgqzsY*Oxth|};vjISq@zTcZuibwxAjzTJquGgc*-8ZA# zi2JyHht@9hYKu)aH?of=Vcq06AQ$fCWQ{LBTY($ew74p@qx@oxRTTGB6y?sLk0Iqk zI!iDDaJyl5pxv-LRe+agbCQ(Wv*L54Y}n4fYY=3_>OM`-G)$|Dv7R9R@v|;DWK0qN zB0Q3dGjbBC02f_WH}K`zY%D&OiYz+XLH3ui)HRwATq6?ZS`jeTh=8GHID+ffMQ}_V zKIcygG6NT+$`9#^2Gb=bXdA*F76s~^HoLPU1bG-2`7@y;DJX+BQLK|6l2lp(Ersj?EO=W zH-CVpRhqJCC-$!V63!wEYMG39vr9wtjShi9wxT$iOJO#Y0x^6#tUUd^Ysdv*G!H48 zJgUPV8ATYg>lE^3@Jl8WLgMNoqE!=wHjPI}LR}cC?ABjlmn31x8N~9M76>yco-?@> zb5AE>W{<0#V%8K9h4Wjga_}x8w=)6 z71V4MMWXnPU3h%dM0S0%Yz#8vzV~Lyr=*g)p-i1-sY^gfW;TACxdcV$ z(qYu;@I>RANrE>6^qHcI3pFske2M42ZSOiiE3vjB`!m0p)C)#92=g3;fv6UjRxDYlO zT4u@zme?) z`l?ZbIQ;jgFW8UZ1?Y0L1%Dq`k+$==F16bcNvL;Le26y}t(4E%1EQML$DoCi_;7a5 z7VIst=)|b4i#|m9wgb?+-Dn#Tgr(gYqEWD1MMI2RblB3*->pIYIATk#?D7V*n8B(@dwv>m zu){`-!`AJ4RU@KdpU&ttWfc4Hg_P5RS?IT!i6^l6)n#y5Y=|%#u)J3z+*BjTW9rF2 zk%f;kb288Gvz==PR|Yh1m9nKxpriHAfIdyfU&!TU39!L|sL`oH+)I+sUTD;OKf78Q&CViVLyq+;L<(MWTedre#({ z*-dEwqvcqVo`vi^N077QFl^^8vXMzYqdkNG{ZY@xNC*q?uD|D78^c#ql7X(x|CGHa zWzbga*5mO%lCUGUm>HnvgZiNB*hkntQJU3;!qPaL-MkY!mwW`b&B^kL!b#VDyd0f6 zw5^iL;oAwJf_N30sotuvS#9Vy@E%;aNI($>fwa1_KRP}8ARBR>{51vG66}@|?0owp zmd;c}>xss7FtJTt1SmVaqHeH`r)+nG9a*0%PeO}D@3U3O`YlQ5LnNU|s>-=XGD?_r z2rzMcZ%Aw%1jW`yK;7D$@M(w)fi5%%rjTG5&1TdK5EcH@Y$dSCx-WsSwlM&abYcJ< zjqG+Ky_CME7!w{8ArX~76cq;@B8^7WFa;pXZbgC9u9i46>m<}N2EgieqsZmp2ts0i zC_tX$h)e9CvkU162rC(b7c)_MAp@lu*>D$^3ffP3MOlAsPJr&!7zv?)B6~%V>M9*t z4u1TNwW8U1Nolb&ZObmjguTf~Cl75{FnZGQ8hyGb6RFl);ab@`2^S9@!VpRt1Y5;xtawZ1f`7knb3dPjXS%Ht=#mB2D29+Rr#dJ~` ztplHYhom1i@`+J>YKCEcmj;LnHfl~8A?_(5ES0 zL66Yz5OxAl@kriz<%v@w%7|_>nax~flZuZUf`Z^O>EQ}8adt~kt(sheLNFvo1V)An zgU|rDIlEdfpKT&PGR zMe3c#ZV{Zb8+NxIADzv@+{83E^*Sz&(|_8th;G?Lvt!D|-*pnd=Wo;Bg!Qt_bQtuQ zJ9`QqesE~DnGQvtu24c(#@wAcos4@Qd=mME7BNl%CUkk>Q8ek_L(pQx5U3}fN;to5 zAGW`-n!y}t&|z7RhUgs~D#n-mdtL+RR(Vyg;r2%<3EQmPO91*Ds~p6aK00bRqUzPg zmY;va<%=08$}eDmtA>|6=?eQmK%rCrSbb4g0!^fxlHN~+4(TLYUc54R1x2S+P*-Z$ ziDM(2HXEF!qLMxZ>bR^F4y$C`iPxbgD**%ajcAvgKysY6tR~V95*ikah+0u-)1^H+ z_v(iC=Pk#@^QjEzk9svh!)pm>W%FcSSrn_JInQ$fFYY;u-!k&yG#HR@V;A%o^9TaN zLp;gy+-HencK$o%4KA_9bN^SFw@EKNi!o0<&J}9?UB1kQFGe-4Z=v6n5#i;)gzls` zfQN^TMqx3XLk+I%-h0L~h@<0mc}o|WC?v@&m$L9DWl|qI4U<8K@hxNURFi1tN)-vN z0-6jlCP^#V3KdW>)_fH}PsbV1htFZzsca7T89Ct@41C~DSW8NflbMYR$tgH}gbLYlDsd>@bD|qRW%_qxr49;a1|# z<#%;hEckWG0_2@MCj_EihtW?zhDqZ`g95m!dokFrwE8GLZ0GKM81dwISW0X>feh$Z zo<(fO*1Y8^5%gqzAN_nCj;vkBbv2rWnej!R7KjcIr!OgktnjWX@2RW_@w!^3-t(^f z9G~)-TEOuH>hQ+lb6A>0fYxE;gr{-qzwYulI+TnI(p5`rIFoc5#}khsE%`ihvvN?7 zR{%?q1$Mig1CfZ6rgKd^?p;s7qL@^9je6umIiX!1$a>;B1XoPenMewgq$1riFeDf? zYSlngtw==2)JBIcozbFgYXk(7UN3Rnvq)tV>P%5V5vDx;0xqOnK(kO2KI+p14TCjx z?O5yZ!(^~_=&^ak&{qIzS@jSLTlAfb;kT1Auq-Kq>BzuZkr?v&3kZoPT2?G?x{pp3 z*f4D&a*id-kI`Y|;}2o_%j03HBA~SrT98t1H`A8_Rh7s3Y8&`z{jV4|VJ4hTVTe$< zuii7CmH{mrg_49zdlT{J!quQNs|mx?+9qIFLM?Wns2a0J)%LqE1z{k|6z%xB<$Od9 zczhcmXO9AC0t!j!K@Sq3h4)Ul>@}rUnmQLjyQDF}yx;NnRq;<1xUmWd||@R4Mq2)h7t03xHpVW6bl=voL2 zG;%~7f&-DSmtYPEgxPF{DZnUGZpysTJBW6~FzHa7Uxb%O2tZSy(#O4Kg zq!iX5Zi|h;8=V^=oO4<=MZ1YxRRlw2Z=#BHPXU#RenNm=ka!+TPh`SqB$Z<{20eI( zyqLs+mR@t@$F&)0Frrx)B?yR}f?}RUSNRk(bF@D&4^UhT*AzvB59W>9dL0CaEwZhUo&05tKqE;o*Tu@1++_?aWg znuiBsWv?b^6hr}@O5&y5X)ju?0&%OnV;PRS{Fi4yA386LLY)DRJ@*7|dsJA`ii8%> z6qkoD^|TpjG@w~%Buh_)O<)zNqFqf>Tcga@sBGhMM!8@s1t7fia_HD=m{MHCr3<_q zTl^c(?-W4OJw>^NnEd$jNWYMdW+6s=*sCcT5^bjpx8`}Oe9#WN8fu`l?=vT|WL9<~ z*(Ip9PdkQFr^k##7x4MHOm-TD#MH)sX=4!CD30HSCG_-#$WA<^0-CapmM)r8wc;}> z7Cf586=kd_ulCc=1nB9c77H6UH~@WTjX_MuR(vMO#l1(cZQ*Jz7#?oaV|s@M_*X)> z8d53(dIT@4=ziQsABkB8szU#eRRtkE7z!$Cyv;CHIS!r2($ksHO9sR>s*eYrdK4Xd zc0nNPpfYi*NEcb<;HSthOAess1Zab%(4i)K#H)mYuX9RCwel*EsO_WtcNOH~p-K!y zw#|kV3kAa~dYQcNlvkE_1(v=Nkd={%-+uT7KYaWRt4z&8Ojyk9;uNY+Qn3Ti?@GdvqEcqE>a=gcC*=m!jO1XdU#Gs| z1?YhT`(oMRc?e>aqY8q}2OL)woV4zjU-8`d8F0D;X+sCf^qV~v^*Xjh;e|`sJaajU zE?nYp$$J_^;nj`}5kW!w6mlTB@xz5Y6gb_uJ2ncn1C&6*N&rpUflkl*>!E@Y?8>sE zd#zx!jSPZOrP91@0Rr^G!{@O$iDDZ>g&@*H+jVM>K7$4zwsAb7W9lI&I8fBoW5bTj z8L^Gh1Tmn)JQCU?>NElQD!_b=C}p)NB2}I!e-tEtB?DT1pDdeI2DEqZJsYKD$hw^< zEGWjsv`aX?KM}uu{|j<2XHlX%>(&HllF$u8#KESDMD{FLiE{?O%gBR6(&LVLG#?6$ z%IFoZ>$BiISd!p$OZX$R7>5e&7*Hz&H$(*U8Jz_1pVD*j@_`E|CeGYwK)d00qV2!# z;8Se{pp(?52++$H&yyu|^#Cnw6#3AgGE&gb2fj-9`d>C+?D!dQaI&KghTuR9cx^0V z+PB2PkH5#!&)4&LC@sRwSl*{O8gmu}1@HiC&*osk;R~?4+<2ft4NUFW03nd5R1C8b@_9}unRXC(L6K^CV4B?4z+67%FpxdyqD`(`=wT8 z@uQvyY)i~62WE3;jEX0ft zWeKek02-!~&Q*E;Oa_*oNat9LCz{s7#FlX!lkV9I`~gB9XUTFX_G4$t2T$*V=oZISG?w63~0U=lSP8TqK!u&OUpuz4j{adKWuc zQDzgK9orYj#fJ!Gpx|-`MTq6g_Z6?qmf~a zOSa@{0`29PkcvksMHYSof-FIZiH$}~LNp6`Qd$bqQ&Mn5pA;m-#vp`1{@n10$`fge zDBG68XCe*4^Q6oMy)0;sleaKIB_`;8>}(o590#WeN?lz8a!bpxEx!O2C1ohe%|~8N z9x6)8(NNz2H=T~sfn@C~cbX!Gp?|W5KBgb~gjuxYks1=Q8dn)9%1?qgb%gKmG`1!v%~2k&LprtX*=N-htH+ivYT66hIB6+p{J zCdY9zufpyhS8-)86~UjK8iNN$Ci9U^nv#_4N4Zs4urVLaq^gagy6v>&C_FVL1B7K@ zJc4!}wmo*}`qfo7+`c9UMRvieM4#RkBc44f1EZs;$Wv%${`@t$^xP-5=Hm&{&;|oW zA2WuDaQ1B9iN?AHQB3Ob_PG|>db(buAZY}otinTsIGje+*%6UsPX{myQG9$1$AC$= zqa!1^@Ku+F^!E4sH&+2=@?>0rIr-c)zzq}sY5FP{G|=f zW)O1+s*Nj=fkaaq9E6y-81(I%fvp=iGftfZnlgoHp+Ulg(i{#Wn|$-Pbajaphyxn;)1hv8pi`XY|w$sSOB_wtf@+_m-q zYMpKbSj;%)#!Im6+h0&is6c7aTzc8LSa{!^TsYhvfmU+hw^Qg#TkqPl59ePp4R!Uj zGYxDXMfFZZU499N^9VEQ6&6=jl(I}1U;+R*rD5R};2 zU=y=yFktHSm*DPMw{Z7?o_snNXq^=MicS?27BT%-O>KjUGib+sbdV7b9FdMQQbJ{Q zh7op;2~X}U#LGKMIHVKYKNaSP2sEzS$%4`^Gzf1@$U>S$q&*qWtV%41AjV_Bs>)_u zvvM~$*&ZB(xCtXswQ@5&Hapwkj~$tgvyzE3S%tI&566-%1$b(Asc0=W>n5CX@mT^8 z?*<$#4%C)c;lS>_$lITT!rTH>QJGVt4YuZH*czMQXl-SGfJL4c$Xj=(1X>Zn=odmL zLv`Ya-{=doyi=^SpgJvtFblc^(#S?wEEWU>Te!7cScDb5Qj?I`zaRPz=*MP}B|Mb- zqR@La*EHbX>+eL~0huX0hT_orF1iNPI^4Kn?H;VEvcY3CA^fPpaJICfdCNZDOq1dx zc|H?pJv6)qAA9^3)CTC&!fHIQAs3Ajh*!rAz{m(Pb?6co zN?P2QzGg4}tgvbQSm<6{hh#Kh=JctUej{NyI!Jx{(yY1(_gN&{#WmXHm6es4eA)%5 zs*)ikj=_uc=cO63m^Zu^LIPxok-@|)MK}GvAN5WTJOP2on0*Dz$%)8*;3YV#3327Y z9fOi^OI9KR`N)=~|6HA6K)%g^TmL+O4Rtm~w}l=t0R3;i06A}biMroK$AAfO;dp*b z8lucn#gbjj0$qrwc9*ePKmvX8MQ6&RS2>Bo5hW)4))p69n_JLgYl6MGnY(CF^Ba3X zIZDgQk)2<_4d(6k7H%lo(9pFP|wH9k#P2mbKkylx(Dsur1AVH)=fc2DP(C5-ADERkM)U4dZu-A*zC7A8Kj z$tg6j$w5&LB1oS)>js>3;aTnIV0CY*1yacg6-c>o$`poL+1@7&O(Zjf?I1R#CL0}@ z1Y9D9C5Ob8$dj52YQ^m7YpFG>!C-*NNCFKOX0pFYQ-y_wavGgF8B{dek!x>ahgA(t z%cJXp#A?&f^K3PZxM%7N7U=#Y(8pwI;3S&V0}T$$SbqQ;>uvCu0uX)nM8sS)iQ%xd zU;T#44}XNIl{f)|@Y2{U^b3_?RfZ25(BO9Cp)Cb?H>Zl<%$%BtzH_ffU~(*%eq}%Q zCR*}K5gA~_ykV(0KQ&SoH~=+&G0HC3l#ee8s#V=Ozcan>l1J{vxo1z2@99hGI+yY; z1-i4#$&tC_iW{(I?N-fh3^y6@@aQy5Nw%_VJoSznaq@*{9>j0l=3O;ATnKu&$%Ou) zVXQ@bWfGN&^rnF6MO7a@y)o^LeTXE63a$xMV%wmC$X{02NuX__L`)9S*HWu(Lk5w( zrV;l}n}M7Ic?<@7lPXp?tZ9JTZNdYa^YK<*B^(4#jj|%;hI4_)Fm@W9mDMPF`y05b z>Nyc}a<2$Heq=f#0!8aQit7AY(TLku??+Xun>Rt?8RHQ)dax+$aJf+R-73`nxt$dP zu~t1dE)yfH!J@yT$Af|v7iO%@!MaMay}c|_uRZq|jyvw?9_VIq$sq|eg_ssRyaaE& z`LPse5032>j@ORKL@-h4%8Xg1%Yd`K*?{~Ov3LRuWaOF-t(+f5=7ykeBwNh*KP%5*7LDcod4|B!IjBs%*+JL<)MNHNo}AmZO_bjg@AZ$OpeRtY%i zplGI^yk7mgqO}Ftwg&Fh$^zXsv8gS-(%y7=O;IK0UO$6L-up4YUsSA+K)1q#bCz$# zmIlEs=P|fteGNrG#8GeJ{FMj;#s&r8{qb2CXf=yM2BQhj?JUCL?Zq;xA!0$Q9$#%b zLJQK}i2P>W@FZNB5vMhxqcx=*m4N^NAOJ~3K~(u5zZUmz$U%$jnHU-tjE~=X0Yirl z>{OsTGl{z=(Cs`!TBxtS{Snh|pQo8ueS(en^yHyTwy3m7J&d^Kx7}D*PIv^VWpn@_ zj%LBAkvWct4ad6^1|q^BvUPOLvXUmuTD6xmj4Ir!94;-WB!xO9BoH4SHxOxIV&~KK zPi)S|Q@bj~CNml^aKvDYJz)X{j2MEH^i-IM6i1qE-r`&tvN8Z+MoLgbF#J@#S6gkV z1YH}AR2ecwuS=tQuhVM#<#%=Ks5G|+C~vhRyII6|Wi^CM$?KlwCfW`Ma`qg+?oHdV z;_L4@*+Qf37iPel$M!?2HAHA=4={IQ9zMve^g?{)dUzv&0trrnmk}0-_m3Nd6pK_M zMiV~Guf&|y*<7VUQ4xXJ7xTq-Jo{2&BL|xT@xn1#m>d@(0t9qw{?+*CnLVX=c1Ho6 zoQ*XiIwlg!KKnOPl6(EL8d}SI89Z3OX*({v>Q*#!EE))MJMhJnBQQ9ew5tbBnDBW) z4d$;q0GkVN2N)4CGz<2UGPIOcvBoinSrOSU6(w7D!{l}|>ENPKeQ|C|G@sh#%}z}F zV>i}S+jug<`uAbN#m3z^FuGjKp%L0YgL#P^#bpR0$1gJhGlwN1D1bJFNeJ{#0w)O* zgtLT!fe4ETLu$WF3?DlJLxvAQT4p*YR=jFY2u-NTfUK|x1}AAEtydN5zxnIp8VyJ< zsp?%SqR|-d61D~>!5~A?L zm~_Pa75x(YEhgN%sQ~X0wS)}6rliE-ryoA!uDxDxPWNQHdm8$ndwY;qP=xa@nufCS zO8zZ5Mo%7#0DJ4~pv@dHek2Cnd?`x4U5V^>m$J~uo-h_^*PM&| zrOQ$N)vqu(-541ag6EGNfL@kByt=0tk8djwUU66`#xA*&ZRL&kJ_R=s+(d=rs3+&3 zdglS`eeQi2np+TT@Zgnk{V^eldJ7uy^riwlxwD)VoDygSaiz(laZ{>0AvqDfGt(PhQvrVzS!lYyO$AjD-dhKWHDY zHVEoor;`f`%9FePwubBSlAy@PvnA<{)*&0Fe)AA_Kt?Z;6kIzfU8#S#k%r3AJo7DX6=IrB^HlFSrSTN%1K9WI1x)S;`_2b?UK5 zyZ!>Wo0_rrk=M|?CzrLttl?=mJ}DZv{IU~!smv?Dgrrj@pzk&3FtOvtxlePr&lqRL zu`kT$6!+d2KScS8KUqdjPK?6iW7A*_GT~Wr3U`*VAf=?Ip}w|GW(kFjD^k_MDI=Sm zeoAJDHNuK8s}+$E;pi0~i%?4t_bZ8wi$+Xz3_^p0k&%&($jC^>S_fGI_!Ln0W2aBv z+pCRbh09+@zrDqdW_v4aO*U-VvJEa5#kpN5E-pn)eFK`Bno(U>kBYi_ru1#9Z-A|# zi8r*^2l~Yq5g8(p3=Iq6&?Ci_GpvDJB%2&&VGPau4F&v;fiYI}e`qQ!8NE>R^9JNR z@gc{LLnjVJ`t29MU2DUEB_E-AM;@oMuj!Y7bJF85>yJIyRd0tOC;;h~PeHGfj)kM9 z4qNYk39VH%FhzyonCI_9h&3D=7rlbpCNe%j4<;rkzd(a2_~m&wgTQqb%%VA00C9Ka`M zBWe7RNIvs8c-#gQ{j>&!Kdclb{YMQ&uQMj{B-gLmhLZ1oXH7wfuRf9CSYJ}bW`!jt z3WKk?0DE87fH9971h$%KiE ziADfdtq4a+EemthNqb&JGKf#Qv8f3*TeGBT5J*2|ifHi<2G2`pQY&&7cc!n?X+iO5 zN=C#c#Nve0CS&OEp?G@X<0#0i%+B*qiN%Q_nq-Pggrjz6Hg>(c3@#fL1AA~zZ!0e7n}k2gYVp#JQjOd)JS-R= zyz@Lp3?YZG`{6nzuRR9%YXa}_;Kf(p#^NQdaomLgS`B9E4jCxj1jhlDs$LBuvZ_MyV+Iju8wO4tIMj8yEhyAcJD<+aXD(Ms!>;6Cy{Ha;#=CgObF@y zhy;*Yhqjnyl{WUJAVfvD_`a~OJ6K4WrQ@U6VBi|Vs3@v0j7Cyg5(W+#h~z%K5fKxG z$ml2phXuplV8cDr?m&LF=#)jp$aHr?zG*f%b@);lIkJ77MC(9Jhzu~8i87r_bC?Q2 zILb0EuY81n02nE5PS;SUgBFUx3n!eoPS`~xBxbAFKnyW9xH$qwj-Xu?QX7ouosxjB zK6wpsu`wz!-yNMQUW%hXhd?x=G|BhNf5pr@??)pMoiLWztrcxk+?HA=utlUiX?d8? z#3@V38*-9ZW(lI9_6$x3?QSuln%0txMx^xC!E$GGQ zO6hFT;yIn13U{}B_$dNhkaZ2ysxf`oj{>hK&la+~MP8i4OPObdt zFM8GJ*cc=xBx3ijU4s8i9=BA=Z>w*_ilyJ8xv`ls&1YYAF#=_k1A*S@KEdIkh>nY8 zuYcXI|G|deR`bH&Hg6UtoPMG%{Ok?HX?1bZRuG9o140ZyvMB)0))sCoO8r#I%PJUO zlAD*0W@=Ya--z0}Izi&d@j|&>wTPaM6h}TXATSWUdL_af7{HuvR4i+?h9le>hR_fT z7sfWYTqt)s#YrY|RbHf>KIEZWG%Aw4=Z4uR$Sy==bT}rTdn)1*5;#gzU0Ed(I+ClI z#3yHOHrD>~A3o*!^v}T2lP1W5UwLv+2~}7Kl2TK!Z~HD0&ET~b8>6wl0V|e%$Ngr) z!b5S^h3CK&6u{(_N@oU#g);VJ*VgU$;;oNZA+XXRe9hGtWBxt2`pyaXDU5yzbO-aL zKX6e|RfVZH-hqvqM86Jt$&0VQ92ZQzOcy%!9>t_7mM{GV&n$d~C-(T$PsHu_&tjyS zVyS1hKo<&Qw4T%|qy($V$}#7vTToF}g^-9ayu9o~Si%H!R4E^Q?BJsp-o$4wzsJwG z?Y>zUcZQdTSRYPfhfe8Aon2uK2ta>|Lu(3H9LGX43y(#HVYTdEn+%MUZyu9&U-5#J z@)hTVKI-8uSFEzPAiIeGU}A1HG+!qRtu%CDb}N4-TJ5X6sh4@}^c=r95V6ld^ zi}Nsk5WD_@7C(6VJ+KqW4xdP7EP8M*&Oi5*zd@jt5Va9mopAY>L^3Jn-~TAy{a~qf zR2@5cJf<(ai%XrvCiXJ&lL7MGr_1ol!~bGo7(Zn)Zkjh8<^YkZR#u*5nGkZpri}1@ z2?SJDQiA)hox!NM;D|6h{pCAM@kQRU@{y%}M7`UI51)SvKfU%5b1R>5@wqr}+T{oi zBgW8n>0~X7r_-jK`VPQ=Fd@(?zN?eWwr8YP_^RJh-c!KqDauz>l`Gn2l%^QtpFOB* zX+d@)Wl5z#%lY&z&t%U6l?A1kck5hKlvE%pEfF^^xd%fsGZ1J{y~t=2ifk>VzkmAT zd%XG3vz)d*ddei+G=By{sJ*eCD_UU;)rO?@der&%uPT><{6aiDZ4PQGsu0&J9*@8O z9KypzX4UKG3OxL}6|1o1zDL;!r(4BFN8;5N7Gw0N5gi0N{Zr9?X=s0LMT7eC%WrYp zjC1a%vehp$R;pk@# zM?@ecW!lOJ!|V+PP~)4mwG}8TD#FiqJc8!xdLSeS7rp*CJ4NXsVdz63BEgA^dY1#g z)|KKvZ!bmm+h6hPm@O6@J$VAATzodtvof_<1UqP26ikd*__PLCxk#1-T9@6^G4y-i zP?%JDEh@xQ3bePV#GCDFBhcPWpiYXKmR4jp)(e4FX&srCZWF`yxVaP8rav}d*#}=> z+s3Ut2f?ZF7&q@`9GRJcVG(hh?WA82;pEP`8Wh``u^+E&~1CSmXilbs;VUZ>VYeUJ`(%^F9 z`^pj&QcuA0YHYcC2^^I*@Pr2A+jF>Fm5Nw5h%vP&?e1IZ17~ZkQSE zpG9%pJMUSD&%gXZD?1uG<_O&PMBxSlY^CMM`{q~J>l%@H+IYka z>5HuM=O?=7oeV^5%v~TE&GMzoYuZ+=yTpF9BQH-*T+RC zvZi(zJov7>5P1$e9M$#6`S2T*uiOB4lStDmK{5whkdV>~z5AphJkpBZ>AjJWm5GSB z7=(m{A~-Y@R!!pMxo?{xuT0;=qE){g6V@$Z7Nh%WW+lTQLZJohH^@|2D2G? zO%2>7fgDmQIH)PB#DP5r*mkX{tU*C`9?D8eh4ajNiIO`;gry{4z!j$>{-~kcBj%XM zSo9CIvQznIRXMgb)bc=@ib}Eni{r%6R-P?mtzW4@n?tO$K0Q8{{&;2hvib2B$ z@t8jBo9k<_ zx~@{7!`x1oWCvM;DS(Box5a{qvB?NFPz|F8>l>@Fy1r6u40|g|R{V*a55I?tCsYN? zbcqy-Tblw9XbwcMH4M>l(TI+T#*s%3$N48uLS(prkWx62=&HDnr-}Ye1nI^p4rM1TC>4$5I4=1H^m9@UgteyBcU^r0HtpPv-_~tLNntU{%gRt!Sqoc3BNrFY zb()Ezb6DNxK*W#ekD=F|14~joJCu~|J0Z3gQp^^9Zb^$B%S#Hlp%O>hsar0cJZ2M& zE;^M0Fg`93X(6Fn$1ZU=35<80%Yk1ii&5rm;b;aZuRzL%@(l(P%x+*_1-R^ntC&ra1gzQZLVlwS#mzP}Ia>K=!KMJjTY`}s8jJ|)s_OBete_ON6*Y)U zNh%cUeE6Fb7~PCd1S_{TD&MTUAqLp>_1s=3)`RaG_0%PUdWP|qoGC#Sh}45czu zqGGtD>gc|vU<-m{BN5Rz6)6)&A$CY##-5WOKuw1Fg@$5uR4mMjZVUwcYC*289#yR^ zXy%$p1A>hKhzqhHBP1L#ghG@k5sDud?9XN#dGGW-+(X6Y_TWHsJ<9DiG`bwTQ38!7 zM4K&0F$Wc*@8do%8^fveB{JY zK`ha^Qd_j@E&EWlc{l9Y1)RE76a>DeRYW+%(W|=2(KAKKkT(Uv`&oS1YZbP;VH@}~ zW!glVO^fy^N0T>|LgmS+R|Tscvx&QT#SFfFD2q7N5NG7XS3}o3F*hGfx(6JKzEFb#mui zO8oL4)d-skp~VeWEd2p5J^CDTA<~BuM=w9W2;;_%R9ZwQ)PBkEL0{^YKr2(bqy6J@ zIq~mzKE#8MJOj5|0Cd8vVYu_r`!IaWNSSPqcv-L0uVEonWZ*wP|BfXy7qMm_y4d@k zyB`CNAhV@CDSCSzxVG;nEDB-g+T3nzX{f^9mPRxZ=K;jC-m_8Qb5&_(TNiG82UA0CUaqebDqWEGWhX-@SDNf(Nk=SL(t=z+|rmS*YM-#%kb%I?{Ku`id(M3 z#M4h=4ZUaUE^PQ?4H8n4aP*{c2$Au9B_MSDo~=8v=#GUPjiGzfX*_er^|*!1QHp?Q zEf{)eZm83wJ0^!ehX5_qlTW{jr=ELNn2A(^6B2~SUw;OD`em@qtioR9g=Khb=KTx` zA_wfjR~|>&fJ|QL`s!K~7ZjjR-%Qrh3L?S2hsyKAZPb}lol1E#cqeI z)d{E5!N(e9z4Vn7?9A}_ZA5uw*#Je?*J0;0kZIwA}4XB-D}?*u{frRA!nnIR1dVIPYm3j61(KPZQz+G-j;nWW}t z9HB%ZieYKT4F8LqVwGNFk3&Wk*jlCBkKKW~-#4QA*A1}c7sJ&^b?{=YM8w1Eda@7` zSWM2Us<-hDPyB>Kko-df!mQy)>641|e(A^0}}L(g4`puz1@ z&DRd?uKKH8&Q>gV_-VZL?q|ZjG5`_L5xC=_dob)MQK?OToK7d!|F#(m^4Vt{>`X+q&*2nnmo8@S#x4}V}Wg;Uajt4DMCuT(xXqhr*K{%+-v@%ho zMxdtlf0cY$Qj!oeZX_a(9S&2hmGQ-5@x;AF23QpFl4B{%9xvKVm0Rg&T(wwJx`)Q1 zFw$y+$@-Qy(GVGeR%i)PC@g~1V&-@(ZWx+cVB4L8iXT^_cGo_bnkleJA3_&;onj?1 zyy@h91P`8A8~Q)qfI9wZh0LSyq}dXL%z^!I(RG)j|A@hGlh>y#`T54!Dz(W&i z^)OnvA6EQ^>9g;Ltw}T#BAem3Q%}IH^Y8F>IFf7QbU8WHqe63Jml2F}>*|g8=%qK2 zyE_{m4s8norMkob;%VbQA+SV8!VnOE0Ba}=5uqAOr#uK$*0t?iuy7d>lo$s~LJa>6 zYcO0CLRF|zA1;cvL6lRg)5MBvPFWY41Ewr%9q)8k3!@hpMRm~r8a^55Jz5-0Ip8R( zhP|Q+9=jbL;s=qPqqPkwZ=ky0scR`+O&f$_^Q|@Y@Q|OtJrBjkP#Tobb|;-T1ye3P zAK|f)Z8jk(CxYs-iK266HvhQ^&))YK8fqkWi@|_1rksc+kIzRC)ed@*TK-K*7m_ba zu(~JE{_Lij+B#f!(;Zm5ZmXmlFd#gFA|CTGbo3BWk0&3izn_Q`c(CKo&3NI_XHZ^L zA_xX$OJifNXv80X6fAv`V2rTB6l!5xlcE4*laf8E2g-|(mw1q-DK)*TZ=NMurZJO` z0E%l@sMGIK=XtSnlR zAxZVV%(x(I4o%zZgB(Q6NM_kgDrS`@jRS<>Lj7DyD88T7T;zw zX^NEIS2PXkra*TRi}udD2fwXagX?aXjb>^ZDNFDNjTnr1Pb^@pvaeB*Skzb7;n5lM zuy2Rp4JPetOo~U!1(OgmEDMIPPz1t=2owFk{CMRLHjfKU8i-xQRf#A@9IGj4^F zPR5n6oiFWA?}7_Uk%dK>Ee60sEcAh9nA`L!kqzagkgD0#cp51o;(^Cx!qwBKVajFaXs4=LOHH6X9<2L)1D?9) z5wzNfy5 zEv>loo`-9jls>m`*K>i%}2ss#n*&LYS*~GAx?C5IK9YHDFUjL>OLtaWRe^bEHoV>%Ulc{LPN5zO?{v`=hlxkM&^f`YpKb zmb*|>RV$+bMq~`^iv|CB1R-qiiu>z<{ck_{625%z3xO0H-VbSaT*X>hK;S(vdrY_? zH3KI{$@(*O%uBzi+~L5?-CI!Mb|AnFoEDRa8`G!?T_!<<3yD2;8}8b<39UL%zdlOq zeRJ_s8qb)p2ux2O$YuFTU^Tj1nQ-Cv>A?Q>Mq3P6Ra=T@^7o^W>4Q5KXp*l1mJmFg zH5lP0>SQG&-PH2IP4#)eW7&K0dtDX3;3WykxGE`CT1E2ca*Mh1f|Et~k~4iC4}PpF z!}Iz3n5vCF8ch&6-txT~e%*+?=RbhK=|p5~H0D0DkfR`KZuoDq#oaD^@z!Vf=!Lh0 zA|rf^2RQfKQ?O{!ee5s&9iQ%NXn&07b|a;#<^>Nufsa4?j)VF%QRFpWcgKx5{)`hP zWKbv29^l1?pTdgIzvnPg%&B9Ma_u?P*<6DB$xiYh-4cQc(Q%SKOesZ?R?lf_z^~O6 za0&w&DFJ3oib;f(1Nc1ce7vr%slt{ff@LZjTV^q}Z%LCw2K{Ma2;iS!3Pe~ypaw?b z16tatD&4F$hKSe*q2Z95lrQ?L25!_-*0P;1uE&Cl__%?KjweRPBgqn?MTs~oNlk)U z9emo@Xns9Fa!?RXj7da@(ZpaQuWi?UoJ{$GR<{ekRFtC7(X0u)JoiMJpJCz#I19_M zefEeh`_2%F}FT;d@k9)ZmGG9>v~`JJex?#F!X7_uPXF;#ZJ>zeA{f z(&={ipdJLfY0`7^i!k-3IoP#FwC|#5Ms!RRrZ1d>A@qVe`;}Jft9L)c+fThL=)vM5 z(R=E-h!{19Q?4SGD-KJ_etE-k3J4^6xUhpKm!1|`BpAHTA>G9xQ`t;UCNpJT*-{6x zioAMDpM+*^cXF}Zc%RAt)j`@@L@i{h&_`fN;EvVDYs0Gq3A1l$&|0yHb-o|JCs}je zk$Z>BHGXXZzrx05v>Z`-N$o6rRmmwrL#=5<@q6E+`j@p_ai7+=5AJ^EK~Bc#KZJLF z``K6V^H)E>O+=2gP9_6xxc+k7e%rOoas79G{+7f_+X0IS{Qk$4xO47N_V3t(M`z7LO=Z0Z`bUK${*+@8dE_9rqp3oLF$6Ne&$V`X!O*ml zG!-Q7R+)!1KBc#4gHdowBp+m4R>~%ugF3lY8=}2Hi-UloBSN5+#`VUg5B3#!j(o(( zRnVgiPER_9>c%1p<84Wy%r=$0(QqO@tVO+PC+0wHLUndYjZE+3XoaiUj@H~#RDAsh z8vepEQz(zFnsnZ&xc;tN1V6R>Py&o<6JJ^UFBn|nO=v8mju?WMUwRzTQC3xN(?&%6 z_siNzmJbK9X9BH+M|r6oX(H|U9@IB9V!=aCMttOmv}zzF++-g+tLo6SHy=&e z1!yTOg)O%Ppn_HkLmEBE8a5cWJunxEy%VJB7vawA9s4+mQj%M&l|4}ZnWrAVAIBa$ z%BL_NHf=4Jx`zU-b1wWIkq6s%?PI)jd4(X!rVp{u-**3O9CiFL9GDk^;eoTof$!e` z5+A#^;utNUMVrCXEH9Xe}*+yRivPxy2e052w5d*(h0*6hcq+V-z|^85wGWi)<&` z$D(juhU*MyE~|#K(FP-Vnre$Opo#eWOz1Z_3pd_76Ulx1=m^|BXl`oZ$ke8lYlYsY zhN?ybZkT!*X3dx;n*jMOEIs~WmjbO<#`>ppsV!h=)Cyebcp&23bCS*ER( z72;jec5@~@d6n)~7!+m!B6fK~zga_Jj*mi6QXC?N^g~EiDgt67wZxG`tBM=@5a{-+ zB(}7I-3goB*y2EIX(j5m?SpMk4q8hp&{|mwm#rCY2f;=qP)erYmFgGeQS$tet<=P3 z7S9mokl3(lO+`C8F)IGKWLDMA35gP;rjimK zL&uK9y^k$KfF)3Z@Vx*Z!UGf+l;HR8R$%R~t58)@jaGZB2=Xgl43(~KW0#U}dx1F} zj!hx}MYW0GL^dkAFFrIB>{BxA(@7B+h=AB|Bpg2qk&}*sCn}uV$LV0ey2o{3Lu(qG zs-c}Q6qcjlqvdGYy&tZIMi4!=2%bnaD$g%#^hEalae<}@JCKu)Yj2o^?CgB)W$8FO{?tjhV#YKs3gFnM9w))! z4G(upEzK`xxG1H?Yig=dQdA5Ng*GG;kO+}UBUy`^$z|3Y#QM2`uc%tS z8lI*W4T&tw2P2zh;Su57gN1nQsFpD>&@7`BUeJ<^od`2a&YyTop}U3tR{tia()(|k z>$rq?^iE4**3hIrsfdb?;hIX5nYcW>1oo`)Nl{R1iQIfVHTMw^p$*^L1LobHIpbQ~ zFzpJiTxsLrb|Iymo$&q$c!y!To|qK=JdnOa)yv;6{|)mWSd8+@8ZAU+3^d{Ft1iSj zS6;+@w-2i7(2h`btWjdY#W-XU22+s(A>8`-tJ1jMkd;h*NV{3YIMgi!5Wa7Ne!sV#OSB3 zrBx_->uWS^*a5dgkhjx@q3UzuHt9EHAO;;V1gROlxd4Dlqlo60YBaSEn+kGrls_v4 zSJ?5QszjyowV6@XCGy>=Dx4Gx$DL(+5G~Q9<4F-g7Xkl$>b}J&++Uy_2%LNxGaOGm zcE4cam%huP3TjufrSAU^YiRGVXoBB(=OZk7;zih-ni=^{z#v5rv{iH5e&ZoPmgw#&T7=7j36iI_l!r2Dqx~kiFzhxc205RV4{jLZ2iYd-Cx( z;q;Rc78NE60DMG|_-7vQm`QsQH=cwuw|ie@dZ>V)*B}v96CxSYYHwj5huXy{yNN4S z$hp(SL{)E_x~gitu<$8t`eVH})o(Ch$dD|&`qJa*MTHS+g4@JYyAsVq`+XaMJ{-HK zJNKxqYrw)q&)}0!ziyK)i|rMQTke^Op<_m9jVIf`CM`uvvmKwl^#OyJCZBmKj-Gfd zb0rJ?Atjb+dA*D1{f%Z{umat_ZZm#d`VEGS8i^B5KZ%ihD$J&bfokI*a8rE)_H5pU zcmMSo3bG4WumV#P(0|?yaK}V=*;W}xE#*XMMUMv+U;c{n4}O5L)qx;_W}bUGjyrQQ z5>gUbQwka_9o3Ri?738 z*M!q9I2%KbIZ{S^U#CHa3}f>>+dc6)IZb%9N4i3 z_gsHFY<36w4H++J_$aSpkjK5UAn9^%0jsvEXsT<#tjngMqOct1kRZ%?@&Sw( zJ6gMsPl49PV!)0y8}ZD%MX0H)W$hky&O{_#d@7ej@ti6fnw6y3V1W)7cHR9fTJ{$* zFUe__pMy(ox&{WSZ;;jNnqX=eQ(1s3W8!Z=_B_6O|8u_QQx&R>L$n|Es) znlwn((Ehmgj+>CltV+5b+7ir^vvVKjO`Qc>lO2P{j>Mct?u9kV%Ebij@e!Jhr3*?*M7IUt?6=j7b%wT%gk_Rw?5Mj#nP?p0u@~{33cU zLx>=BA^TmJFw!L>v|oN1cHaFI40Z?NlHxIY$vmX?&(NAvdWD&;RMpusi6YIeR~~#4 zD?a~*Er-i*pN7*eJKtM8A!;g=iq(dz2Vc<-srK@_kG{a0Prk@pb3;ZA$J{3$Mo^eV za|6}rsl~<8w?4sF?|lZltY@TC$!ZP5_19gD8?V2d9oED4QGUDj9$nwL+dWnen;`4P zM#ZcfHg3bUQ}5uuA}Sb7LY&L_;E16(>HIS_(3HUZ>(CEACYOY7{qjHY$lL{d z{0C>IBICa60K$AT!cQicmCfz}Y-@KS`-wMTaJZ3{m5w>jJizTFd^y5821#Lb$RnpT zw-BGd_AUY}!MNy#D`Aa|)J0%qHH*j1gy@?2B(K#@EsuwLwtV~PQq)z~;G}cU;0TA{ z#ghqBBAse(#z!x|gYQ218VOngXwFP}oj)!?BJK@xuH=y^!cam@XhA+7 z0^MS7#Vd>cg)^RTm~BCv0CK_APi0Xm%hfE(*6ld^ZM- z9_qC{+ssefShD8KQrkRk_h1m!I$B&CXtp)u^EW=i&du9!*2U*x)bV3MQ6v%VP&>=} zVl5AtFS<77NZg^F+*@eJi4gTSH8k{L^vl zy}fW89+{E?-Bs1MiUzc)n(n5!`uBC}Y3RYvKd-|4`HN9lQlX`eDMd?kU{~CBEsmXh zoVIv$Uwzu7y~*c&t_OR!?#8^SvzafBGF=b8@+4w=ktg03*Tm634G^!>&N|Ohi{H|B zT?Tyr>DPGwr8m)7XJdYi$kWFo<%%irNZcCxW?1ClB5EmUni$)X;}# z_xL+FK@Ya#mp|~}!%rhOk6Q0~Kjg(vx$sQRTv2-ik=4_5rzSP+l_>l7yGyF5g|Bfw^+<3oOkZ&xMSuGh~vl#pAG&l@*#Xrzfk(yNbM}jo((|MbBc>)|~0J}mgh;_Ln{75!6qjQ2>WwJNF9LC(d^ICuqbP~a5wwRHemV)@?M8qd2AZzF#WDV($ zum~%&PjR9|v&Y+_o7F^9754Tun^0a{fnj5YBR(}*%Y=3s*5hzw9rMsFd+$@!RSBje zHN%lsE3UozLR@$C#ju8lcWYh$mM<%ezEnVmPoR4M{_pGs38#>glZWeWo`c={s4h*E z?TE$jpjT=lW-Xk9jKKpKSntggcCITr@-y^_78YokwD@!RuUNkHTO8Q2mpQ2!ub~rB z74LS(Mxg&4m&2TuE^JT+C;8S|g1tx@6ZTeAeEJj0mi_{RQ+9*p%LQzo?oS}1kjPLB zIqC?UbNNNc7}!rB0u|+O2NNlHKN$8!o34 zJJ)T)XK%cR9h4Iw-gK?|h5-ZnXJE!{*JJVt<2ftoH8cKZf$rue>2}zzoA*EDualOk zuBpYd&;J|mfBY4<4O6Hvl3${YrQ`Uz8B>wgFN0&pB9+~dSx17Q%f9J?^As)Fy?HBM zU-BY~4&=c_*b3RKh?TC>5NPBS1;_+3D_(utTTFqf6cIbl ztK~J&KXEfRI{_klDJ(_BnyqL#P=J>5YQRPv2Xu616iEpQ!Km>^;mX^uLqxm?_i0XD z8(wPBbC4q;Z45yXjiCRhPP)s#_=e-lwN*qqqo*=6VEE91c!bCs^*zuRSY+QzbF zA%Rx*ua0g>8e{OlNKE*)CZMVwl^b@TVe4MB7L>zD+MD?ujJ$b|K5-nbpK~jt@zkfi zjm&#n%lUuMoLK?7e0OMBYgbIyX?#vqr#AQ{$xa- zG)9n!%l}E+L5o~On}RSTG@MzS)C1J3YI=|--h(=)13PT>uz~t%i~7a^Ay%XX2cyt# z!;Yp#QO*7r9kJCIfDz%5u)Ceu+*k*Pygl=ZP+!4)1;}~zbJ+Lg^B%H_fBwyxd8m0s+2%50`3Fc4W;X}Is+nHW3f2;HW&DgkQJKlNkGkpK!FI0Xfcso?$!DK{oYBGk7 z8qP%O1BMRdWPC6cmWLo`AgfM=I zi!d6s;l9l z$9ZwX(%xD5!%94L_rn~SF!xQype57cFbd7gH*?F_hB6gEErJa=IXVI7#ixLJyXZe6 z8X}TDOkEA2w8f5B3l5;rVQ1MV;+Q#o2BCjM1a{Qb;@P~t%%DWq9v=~dD|`1vv)heD z**j6tN{+Ay0y4E7-N0x-&5Cu%e&&6cJZ=mcJpy+x|;z!-0R%c{q(=*|L!i9!{43q&wWp5 zz}RGZ z1+xi8Snb`Lci`t`E3j?tW;AmP3kmC#i$ksGh7TKv%P%<_r=4;lGlP2L%3X=lKexgi zJ;~Pydu&5@^t!%&-jVU&?J4WTcA`b3lBjhXw&3aKUc>s0TiFb0zk|tfijIv$#-M&U z`K(hgXv7c{6_nuq8)w7TNc|ImxC6VviMCHXQ?8D=gW`-v49_Hz2Eht0oo8O>e+b*tr zC%nfc)2>8qZ4Ea3z8WQeZBQ;0m)S_+Dj2yQF(%rI(W8dprW>!u;KBW6(;^j+Q_gJ{ z0?l^3c->BuY3%^`T?wNmFFt_#{``(*OpoR8_ksQ%Hr=aU@%OIn)qwBl31O^@%gV5N z%@%z8@mE;CaWfoFSxhUPK@}aLg3|z_QS@t(CZ;Jk2%!V|AZpTRrXT~6s!NIW3bY8~HGIf;c!jTQi7J7h$xHz10@&uf5`bii%xIb5rcU7w8b4C0V5kU=MSQ#s6ubnxuA_bl_tqu(*S~3ga<~d^~d#UjlKTYO|q-AJqMr&Rv%6?mq z>h(K8X>tScUMmBKgq_Lmga@eUeWI{67!ey|#R(H9;QDJXL1ua?H|!DP((d4w-1=)S zbaQzQ`nvxz*s^WV zJXC?$Zllsl9;6a9Coa5fmH2 zaqB?BR0IZqISM6-qzp%}=ul@XZTrZ)y!I4_6OINO+zm}=t*S*!MK#>Djc6&WMnhgP zT;X%pIgL(j|09qXRd&98TNjED4nz1`0nQ})+xYHG&L-MjJ4w?E_y9!8@G=oc%aTJsaUR2f!R-MR0610u!QPCd{!V2!XNTqVh#Fh69XL#Z9eX=qDyL zSJc2!SC6KOYIrJY(OgoAmih)5TdBXIi#g|n{iFU;n@)(czQG)QDJ&#}S&F8dItdex zACKhZ1P0+VwF57ZA6n~>X8M2QVjlwSzj*pOhJ0P!-Q&vt5geKcrocRvRWClLS5dYlfkmE$gp2cZ7p*1i?MUpK5W^#18df7 zL_uK@3^J_Mrir|aLP#a5qShL2Lq8@GdiC*Q-&7>RYflS0GjjCWngv9J8x&~5;6eQ{ zdh`*Dfa{-?iNu6>goTA5fN6gvp04{AMVHfexWDjs$xe?2`tKT0R}*(A&+YPBU7VW) zkkDw=H4R*7ux-a~Y~8*GIXO8fEv-OvGnHc51s#}TSK=Lg3YoG&qT-o%a0 zK{N-LV6g-tD9Fqjn3_}e@0Wq0LkA)&D-$V6i3sCQ@b0* zBOMC#K`$bI;MWVvgh0C`?Mha4hpO+8uD>_v)@1p6Q|9Dzqq?>RRh8AKD6c|AWfk&@ zijbRAfXd1ml$BR-M1?!u68uxEY*P-Q7@5IjU_wLsP~-OADJigqg`#i2bf(ZsNQgyj zY&4>xqYxbxg;45s&dOJZXl{?;^kdQ6u3h({9Nn0v|LRwJtf4y^wKi#fOz?m8&3pWC zopZ$kD?(-@9(H>R2;$o6aKhGXheNh&Q?O7~^LmepP$LD+8pd@|eRZj2(@mtMPU9d;J{i$J;hG+}Sqh`CF=tXlJIj zzvJ)uDE^r%54(o`XNK*4iZ6SafA&wF6zvRy|JJh)^3QkPY)`^A~(n^t4wX?N6=$4S^P?$KjfP zDbQWm(49a8{aK*@%6GbQ7XQK3?0m6&m;*f-o3Hon$$kDSi{;~?U94Ycucm3}ZoPk3 z0^{ezbnBUZ-jlxO&xxSFo!`zd-`KxmUw_}t-|uzf_5V+NwbS=Lgh^q6W~{*>9OFHG zerMqDLrs49cZ_usF4J#XKVGo?SNyo-|AgTEUmK*TDeS@QcjuDsYRtnkiH8u|?SYo> z&X~J1cYfdZFrAuyKkt9^i^AlP%+>$Dq~|jrGld!|rpr^p-!<&e_Z*r;dobn zg}L)}>-sKjvhW?qSNmtE`SG>hzUEE{w0S&GIJiER2 z^YL;@U^`NR{BtFPN>=nyCv{K7ozrff1&u*_fu^7MYHCD3*Z;2l`O(pJ>i$%nFGtH{ zHF~mfy+Er5dFpw3i>O_PGks4=ZOrOAWy`eRl=|6J|E>RyDo~Z<)@uj-?pHYHgXd4N zA9;V%{*h{EZKl4RK(yh2loG8?g%1)JWw+_;VSQ=1_Hw4)kH@4_X!^Fy{6;!*8J|Qm x-cFxw;X(c!^FEZSFXA3mr^$Owr|i^w{y#H)l_~i!Y}Nn(002ovPDHLkV1gv?;Q0Um literal 0 HcmV?d00001 diff --git a/docs/cache-handler-docs/public/favicon-16x16.png b/docs/cache-handler-docs/public/favicon-16x16.png new file mode 100644 index 0000000000000000000000000000000000000000..d0a7843eae56a62947b7092694fb3de83568521c GIT binary patch literal 854 zcmV-c1F8IpP)Px&5J^NqR5(vvlV504R~*Mb=O$@x+TF&aX6f2x8tnW7wYaWMYh`QS#vXi_Ska18 zDu|4M4;$T+>|tZd@N&*5 zluD$BN0^$=xp8AO%JyxW2^(RAtLO-N^+HyZ5>5n^mzFqr<~&2wlf1mSnP9B}Qex(d zWXJB)9*c9NdndZCJ6pSJgtV1%0?V@a^u!NT+SViPWH2>BBoaYLMIm2A*fzdRufz3m zzB+u!6LGHS_5kSrX^_Wj>+wCwQjQt~s&x)UUnQVv9G`xO<`1Av%pjT))Q?Zl*Sp^n zP!*}3&1UJlc!5AL$j5KAF*tmccwHSI?syM`#`nKnU~(=?Z&xRu|Me$S`T4Bl9TJH~ z?+U52zi_SIV9Q{NXedPb(Gx^q)LMbJsS4L7n{kJgM8asAxWVnm1A# ziJ*{-{XWdmgL|o|sa|HmmJTznDaw|`z}a7!Eatgf&eQsCCv%p`!nHBBT7FiASFmr_ z4s<>E0w^IXo)ecrbhS#Qe@I^)Av2eCsaYM1(b3*UZP<7L-0~972mjBy82^X2OP+8@ g_7L}|Ud}201CApigX07*qoM6N<$f_~nhc>n+a literal 0 HcmV?d00001 diff --git a/docs/cache-handler-docs/public/favicon-32x32.png b/docs/cache-handler-docs/public/favicon-32x32.png new file mode 100644 index 0000000000000000000000000000000000000000..cafde4dc8e15881b855da5533612f810fa79c150 GIT binary patch literal 2502 zcmV;%2|4zOP)Px;fJsC_R9Huqmw9v)RTjp7RlTJ<-JO-}2_zwG0mBkRMj;|1A_^Q36+{*xiV7%; zDB=p{fDUHd7!|?*Ba5JezyTCQM1dI{5HJLSWFdP((n&}UU=|8%v z-tyh=-TU2p1zD10WNsYFJE4>J?XQ%No~53Doln2nHiGPue2@38=(zA^n{)=V^EDlz zdXDu1xc1@C6CukoPN&0dw_2@65JWEzzeC4$h&+#i0zj6LTkR*xIXL2}r_y^9M z%b~o!9;YaPAfR%|M3~L=PwvU6k!cJW+}{oA&y4mf_zj>h8;YfS_Z{Mc4OM(Tf?>MF!A!@@R^V|4d+9Bz{2w2r3ajlS!clN1GkV;iRFs9EYui=piZO z?m3M5LJ^s(UM9XKF^?mw{*&c zAh{%2xXwW;DzEVHlZzR!bT%#Z4Va?Cs4pm{=Hxk)m`NBnlBOyP6ZOHE%|_Pc12JmOMAt z%Yx#9*EwNJODm%uN#~BY79vYvtFqAJQYG`BoX%VCucvfiJhI)%EyeZBoi)Wr`?l`f z#ZiNRe?%9IM^3YH>3p{B+{00w6Gw}k$brdxzibWrH+)E-;>2D@_ql?dyY{i8D4)c; zhEkVbLg~IA$aprL)B*kY_UH-zx@9N9K>=*ccom&S?e%2EYh_%L#LO37$6{~enK7do zd+!KxFBb6ps!WofpN*hVQ+(_scZmj`nEj~xc(?0yl;Rob3kjY(iN@k8tmpF?n|+FE zS-^151BhSm;kd=hGjC@Q)+LmN1}n`iEhsu+(EAY(7=X30iBKH zTG$@fosgk}2<{orrHqgHa@)H0G}8`1vEcUc(-`sYGV1b*N!_rC^n?&3QQ&Y{J!(

6V$GJmvvEER2qdN5uC6*yPR*M;t*rQNsNoZ z-)N-NthMFj9;04}{@dHJMm3$$~RM_my)raHM>3DI}Jq#Z{v|~1e+>3ckTlPBX z+BWj)n_18^f;fK-=|2{+Iwgkp@-5_q$K!7{(KkMZ*sw742EBXpmbNx3t1aYQE~2ra ziRiLIR`&|ysWU}vxGjlByMtxFlyPTx0Dp66d1ui)hTlG4mY#3Rpim;Mw}WALo+kc>2&C?HsEM%!s&FnH&Lln_?i5%2ASOd4=h+hSG$c& zosm~)qoApk9fm+M^-k93RrBV?k4f&`!QY*=8fb zVMjCYR_twUbTJwT2?)TTFn~Zyb2GIKjZ`<;+yGj0vZ+R<#_UgcgOyf|7MosAS4%Ce zb|<@!?#JJ~7Q9O65vQ4Ro@3m+nQZ@THxs5$B2cH}AL~D5;;bp`-nfJD_uorG??k%m zjfl;yD8i)x@Y8G2`0Kf3Yo?;4jLn-rW6IOh*}85kv!0qktJA@*&7U)E#zSPilF8oB zv)Xflj}C14Y!?MhR^mnsMXIgGq}5>!HWF(vaiXGxLtA!n_1IZ@_Dm$yVDJ4e08mu1q@;|;=PhH=+si30 zDy3g)io0&Dt+C*6*olgZW#{@&Io&G?mB~o_;WNxy^aPD{4K&u(6PwTtl}5#>WB;K? zzdo#4{05mTUn04WC-nXhz_pJTF6Qy<3oCha;T(GP@5`@e&(q_UK3FQRaQxtRoXq_d z^^CEIS}o04dl;P1jiIB`h)L+m`P13-9h^d8ZXO#~uO(yoA_k|Xcxyi2HpC|kuScg8 zrAuDQz!V+D#F>+^TCHS!l11Q{VT|nC7e7(O>Bg(*R4U}^I)3@`APXi=ATF^R`?l?( zUytCR{E?H*(*GKqh!&YRCno_fdh$&;x1_iovg%X0IAR<|9 zRP8=Ocv&s9IhZ;1K_*Wcizteowxhkx^DX;50B+KIxk-~{&gJCt)uHb>btaq377I3& z;)0-eK-b`4`ls|^^vL0)rlzO z>tOA5J?Ax>y?ucv#5x; +}; +``` + +## Properties + +### `handlers` + +An array of cache handlers that conform to the Handler interface. Multiple caches can be used to implement various caching strategies or layers. See [`Handler`](/api-reference/handler) API reference for more information. + +If a handler is `undefined` or `null`, it will be ignored. It may be useful when you don't want to use a particular cache layer in a specific case. For example, you may want to [opt out of using your remote cache during the build](/configuration/opt-out-cache-on-build). + +In the example below, we use a local cache and a Redis cache. If the Redis cache is not available, we will use only the local cache. + +```js filename="cache-handler.mjs" copy +CacheHandler.onCreation(async () => { + let redisHandler; + + if (process.env.REDIS_AVAILABLE) { + await client.connect(); + + redisHandler = await createRedisHandler({ + client, + }); + } + + const localHandler = { + // ... + }; + + return { + handlers: [redisHandler, localHandler], + }; +}); +``` + +### `ttl` + +Time-to-live (TTL) options for the cache entries. See [`TTLParameters`](/api-reference/ttl-parameters) API reference for more information. diff --git a/docs/cache-handler-docs/src/pages/api-reference/cache-handler-value.mdx b/docs/cache-handler-docs/src/pages/api-reference/cache-handler-value.mdx new file mode 100644 index 00000000..b8545f86 --- /dev/null +++ b/docs/cache-handler-docs/src/pages/api-reference/cache-handler-value.mdx @@ -0,0 +1,28 @@ +# CacheHandlerValue + +```typescript +type CacheHandlerValue = { + lastModified: number; + value: IncrementalCacheValue | null; + tags: string[]; + lifespan: LifespanParameters | null; +}; +``` + +## Properties + +### `lastModified` + +Time in milliseconds when the cache entry was last modified. It is used by the Next.js server to determine if the cache entry is stale or fresh. + +### `value` + +The value to be cached. It may be a pre-rendered HTML page with its props, a result of a `fetch` call. It may also be `null` if the page is not found. + +### `tags` + +Tags associated with the cache entry. They are used for on-demand revalidation. They will be checked by the Handler's [`revalidateTag`](/api-reference/handler#revalidatetag) method to determine whether to delete the cache entry or not. + +### `lifespan` + +The lifespan parameters for the cache entry. It may be `null` for pages with `fallback: false` in `getStaticPaths`. Consider these pages as always fresh and never stale. See the [`LifespanParameters`](/api-reference/lifespan-parameters) type for more information. diff --git a/docs/cache-handler-docs/src/pages/api-reference/handler.mdx b/docs/cache-handler-docs/src/pages/api-reference/handler.mdx new file mode 100644 index 00000000..450190bd --- /dev/null +++ b/docs/cache-handler-docs/src/pages/api-reference/handler.mdx @@ -0,0 +1,84 @@ +# Handler + +```typescript +type Handler = { + name: string; + get: (key: string) => Promise; + set: (key: string, value: CacheHandlerValue) => Promise; + revalidateTag: (tag: string) => Promise; + delete?: (key: string) => Promise; +}; +``` + +## Properties + +### `name` + +A descriptive name for the cache Handler. This is used to identify the cache Handler in the logs. + +### `get` + +#### Parameters + +- `key` - The unique string identifier for the cache entry. + +#### Return value + +A Promise that resolves to the cached value (if found), `null` or `undefined` if the entry is not found. See [`CacheHandlerValue`](/api-reference/cache-handler-value). + +#### Overview + +Retrieves the value associated with the given key from the cache. The `CacheHandler` class calls this method when a cache entry is requested. The method should return a Promise that resolves to the cached value (if found), `null` or `undefined` if the entry is not found. + +When using multiple cache layers, this method will be called in the order of the `handlers` array from the [`CacheHandlerConfig`](/api-reference/cache-handler-config) object. If the first Handler returns `null` the `get` operation is considered a cache miss. To pass the `get` operation to the next Handler, you should throw an error. + +Under the hood, the `get` method will automatically check if the cache entry is expired and will return `null` if it is. It also calls the [`delete`](/api-reference/handler#delete) method if it is implemented. + +### `set` + +#### Parameters + +- `key` - The unique string identifier for the cache entry. +- `value` - The value to be stored in the cache. See [`CacheHandlerValue`](/api-reference/cache-handler-value). + +#### Return value + +A Promise that resolves when the value has been successfully set in the cache. + +#### Overview + +Sets or updates a value in the cache store. The `CacheHandler` class calls this method when a cache entry is created or updated. The method should return a Promise that resolves when the value has been successfully set in the cache. It will be called for each Handler from the `handlers` array in parallel. + +You should consider the `lifespan` parameter when setting the cache entry. If no `revalidate` option or `revalidate: false` is set in your [`getStaticProps`](https://nextjs.org/docs/pages/api-reference/functions/get-static-props#revalidate), the `lifespan` parameter will be `null` and you should consider the cache entry as always fresh and never stale. + +Use the absolute time (`expireAt`) to set an expiration time for the cache entry in your cache store to be in sync with the file system cache. + +### `revalidateTag` + +#### Parameters + +- `tag` - A string representing the cache tag associated with the data you want to revalidate. + +#### Return value + +A Promise that resolves when the cache entry has been successfully deleted. + +#### Overview + +This method is called by the `CacheHandler` class when [`revalidateTag`](https://nextjs.org/docs/app/api-reference/functions/revalidateTag) is called. It should delete all cache entries that are associated with the specified tag. It will be called for each Handler from the `handlers` array in parallel. + +The tag list is stored in the `CacheHandlerValue` object and can be accessed via the `tags` property. If you use a remote cache store like Redis, it will be too expensive to retrieve all keys just to check tags. So, you may want to store tags in a separate set inside your cache store or [create an index](https://redis.io/docs/interact/search-and-query/indexing/) for tags. + +### `delete` + +#### Parameters + +- `key` - The unique string identifier for the cache entry. + +#### Return value + +A Promise that resolves when the cache entry has been successfully deleted. + +#### Overview + +Deletes the cache entry associated with the given key from the cache store. This method is optional and supposed to be used only when the cache store does not support time-based key eviction. This method will be automatically called by the `CacheHandler` class when the retrieved cache entry has expired. diff --git a/docs/cache-handler-docs/src/pages/api-reference/lifespan-parameters.mdx b/docs/cache-handler-docs/src/pages/api-reference/lifespan-parameters.mdx new file mode 100644 index 00000000..3e882870 --- /dev/null +++ b/docs/cache-handler-docs/src/pages/api-reference/lifespan-parameters.mdx @@ -0,0 +1,38 @@ +# Handler + +```typescript +type LifespanParameters = { + lastModifiedAt: number; + staleAt: number; + expireAt: number; + staleAge: number; + expireAge: number; + revalidate: Revalidate | undefined; +}; +``` + +## Properties + +### `lastModifiedAt` + +The Unix timestamp (in seconds) for when the cache entry was last modified. + +### `staleAt` + +The Unix timestamp (in seconds) for when the cache entry entry becomes stale. After this time, the entry is considered staled and may be used. + +### `expireAt` + +The Unix timestamp (in seconds) for when the cache entry must be removed from the cache. After this time, the entry is considered expired and must not be used. + +### `staleAge` + +Time in seconds before the cache entry becomes stale. + +### `expireAge` + +Time in seconds before the cache entry becomes expired. + +### `revalidate` + +Value from Next.js revalidate option. May be false if the page has no revalidate option or the revalidate option is set to false. diff --git a/docs/cache-handler-docs/src/pages/api-reference/ttl-parameters.mdx b/docs/cache-handler-docs/src/pages/api-reference/ttl-parameters.mdx new file mode 100644 index 00000000..9bf62113 --- /dev/null +++ b/docs/cache-handler-docs/src/pages/api-reference/ttl-parameters.mdx @@ -0,0 +1,61 @@ +# TTLParameters + +```typescript +type TTLParameters = { + defaultStaleAge: number; + estimateExpireAge(staleAge: number): number; +}; +``` + +## Properties + +### `defaultStaleAge` + +The time in seconds for when the cache entry becomes stale. Defaults to 1 year. + +Stale age is the time after which the cache entry is considered stale, can be served from the cache, and should be revalidated. Revalidation is handled by the `CacheHandler` class. + +### `estimateExpireAge` + +Estimates the expiration age based on the stale age. + +Expire age is the time after which the cache entry is considered expired and should be removed from the cache and must not be served. + +The provided callback will be wrapped in a normalizing function to ensure that the result is a non-negative integer. + +#### Parameters + +- `staleAge` - The stale age in seconds. Defaults to 1 year. + + The stale age is the time you have provided in the `revalidate` option in your [`getStaticProps`](https://nextjs.org/docs/pages/api-reference/functions/get-static-props#revalidate) or in the [`fetch`](https://nextjs.org/docs/app/building-your-application/data-fetching/fetching-caching-and-revalidating#time-based-revalidation) method. If you did not specify the `revalidate` option, the stale age will be the default stale age. + + After the stale age, the cache entry is considered stale, can be served from the cache, and should be revalidated. Revalidation is handled by the `CacheHandler` class. + +#### Return value + +The expire age in seconds. + +## Example + +In this example, the `CacheHandler` class is configured to use TTL parameters with a default stale age of 1 hour and an expire age that is twice the stale age. If you have specified the `revalidate` option in your `getStaticProps` or `fetch` method, the stale age will be the time you have provided in the `revalidate` option, and the expire age will be twice the stale age. This setup may be useful if you want to revalidate the cache entry in the background. + +```js filename="cache-handler.mjs" copy +CacheHandler.onCreation(async () => { + const mainHandler = { + // ... + }; + + const fallbackHandler = { + // ... + }; + + return { + handlers: [mainHandler, fallbackHandler], + ttl: { defaultStaleAge: 3600, estimateExpireAge: (staleAge) => staleAge * 2 }, + }; +}); +``` + +## Caveats + +TTL parameters are not used for the pages with `fallback: false` in `getStaticPaths`. Such pages will be cached indefinitely and will not be deleted from the cache after the expiration age. Instead, they only will be updated after the stale and expire age. diff --git a/docs/cache-handler-docs/src/pages/configuration/_meta.json b/docs/cache-handler-docs/src/pages/configuration/_meta.json index b034fda8..710a15b2 100644 --- a/docs/cache-handler-docs/src/pages/configuration/_meta.json +++ b/docs/cache-handler-docs/src/pages/configuration/_meta.json @@ -1,9 +1,6 @@ { "on-creation": "onCreation", - "cache": "cache", - "use-file-system": "useFileSystem", "opt-out-cache-on-build": "Opt out the cache on Build", "development-environment": "", - "build-id-as-prefix-key": "Build Id as a Prefix Key", - "ttl": "Using TTL" + "build-id-as-prefix-key": "Build Id as a Prefix Key" } diff --git a/docs/cache-handler-docs/src/pages/configuration/build-id-as-prefix-key.mdx b/docs/cache-handler-docs/src/pages/configuration/build-id-as-prefix-key.mdx index fb49f54b..ec93ddb1 100644 --- a/docs/cache-handler-docs/src/pages/configuration/build-id-as-prefix-key.mdx +++ b/docs/cache-handler-docs/src/pages/configuration/build-id-as-prefix-key.mdx @@ -15,7 +15,7 @@ const nextConfig = { }; ``` -To use `buildId` for prefixing or namespacing the cache keys, use either of the following solutions.: +To use `buildId` for prefixing the cache keys, use either of the following solutions.: #### Using `process.env.GIT_HASH` @@ -29,17 +29,16 @@ const nextConfig = { ``` ```js filename="cache-handler.mjs" copy -IncrementalCache.onCreation(async () => { +CacheHandler.onCreation(async () => { await client.connect(); - const redisCache = await createRedisCache({ + const redisHandler = await createRedisHandler({ client, keyPrefix: process.env.GIT_HASH, }); return { - cache: redisCache, - useFileSystem: true, + handlers: [redisHandler], }; }); ``` @@ -59,23 +58,22 @@ const nextConfig = { ``` ```js filename="cache-handler.mjs" copy -IncrementalCache.onCreation(async ({ buildId }) => { - let redisCache; +CacheHandler.onCreation(async ({ buildId }) => { + let redisHandler; if (buildId) { await client.connect(); - redisCache = await createRedisCache({ + redisHandler = await createRedisHandler({ client, keyPrefix: `${buildId}:`, }); } - const localCache = createLruCache(); + const localHandler = createLruHandler(); return { - cache: [redisCache, localCache], - useFileSystem: true, + handlers: [redisHandler, localHandler], }; }); ``` diff --git a/docs/cache-handler-docs/src/pages/configuration/cache.mdx b/docs/cache-handler-docs/src/pages/configuration/cache.mdx deleted file mode 100644 index 964913e0..00000000 --- a/docs/cache-handler-docs/src/pages/configuration/cache.mdx +++ /dev/null @@ -1,105 +0,0 @@ -import { Callout } from 'nextra/components'; - -## Configuring a Custom `cache` in the `onCreation` Hook - -The `onCreation` hook is used to configure a custom cache handler. The example below demonstrates a basic local cache implementation, adaptable for various caching needs. - -### Example: Custom Cache Handler Implementation - -```js filename="cache-handler.mjs" copy -import { IncrementalCache } from '@neshca/cache-handler'; - -IncrementalCache.onCreation(async () => { - const cacheStore = new Map(); - - const cache = { - name: 'custom-map-cache', - async get(key) { - return cacheStore.get(key); - }, - async set(key, value) { - cacheStore.set(key, value); - }, - }; - - return { - cache, - useFileSystem: true, - }; -}); - -export default IncrementalCache; -``` - - - Don't suppress errors when implementing the `get`, `set`, `getRevalidatedTags`, and `revalidateTag` methods. Instead, - throw errors and let `IncrementalCache` class handle them. Refer to the [debugging cache - article](/troubleshooting#method-2-debug-mode) for more information. - - -## Advanced Cache Configuration: Custom Revalidation - -When you are using built-in Handlers like [`redis-stack`](/redis-stack) there is no need in configuring revalidation. However, if you crafting your own cache handler, you need to implement revalidation logic. - -For control over the revalidation process, implement `getRevalidatedTags` and `revalidateTag` methods. - -### Example: Custom Revalidation Methods - -```js filename="cache-handler.mjs" copy -const revalidateTags = {}; - -const cache = { - name: 'custom-map-cache', - async get(key) { - return cacheStore.get(key); - }, - async set(key, value) { - cacheStore.set(key, value); - }, - async getRevalidatedTags() { - return revalidateTags; - }, - async revalidateTag(tag, revalidatedAt) { - revalidateTags[tag] = revalidatedAt; - }, -}; -``` - -Structure of the `RevalidatedTags` object: - -```json filename="revalidateTags" -{ - "/": 1701897682816, - "/blog": 1701897532812, - "3058ccffeebc5674604d8dd3a0d1321b5948c5b820a32bb9089572db907edca1": 1701895635813, - "_N_T_/user/123": 1701897523542 -} -``` - - - For remote cache stores that don't support JavaScript objects directly, serialize the `revalidateTags` object before - storage and deserialize upon retrieval. - - -## Handling Fetch in Next.js Cache Handlers - -### Overcoming Next.js Fetch Pollution - -Next.js modifies the global `fetch` function, which can lead to unexpected behavior when using `fetch` in custom cache handlers. To address this, use the following workaround when calling `fetch`: - -```js filename="cache-handler.mjs" copy -const cache = { - async get(key) { - const response = await fetch(url, { - next: { - // This option ensures that the fetch call is not affected by Next.js modifications - internal: true, - }, - }); - // Process the response as needed - }, - // Other cache methods... -}; -``` - -Alternatively, you can use the `undici` library, which provides a clean and unmodified fetch API, avoiding potential issues with Next.js's fetch modifications. diff --git a/docs/cache-handler-docs/src/pages/configuration/on-creation.mdx b/docs/cache-handler-docs/src/pages/configuration/on-creation.mdx index 798ef918..e49cf417 100644 --- a/docs/cache-handler-docs/src/pages/configuration/on-creation.mdx +++ b/docs/cache-handler-docs/src/pages/configuration/on-creation.mdx @@ -1,18 +1,18 @@ -The `onCreation` method in the `@neshca/cache-handler` API is designed to facilitate the creation of a custom cache instance with configurable behavior. It accepts a single argument, `cacheCreationContext`, which provides contextual information necessary for configuring the cache. +The `onCreation` static method of the `CacheHandler` class is designed to facilitate the creation of a custom cache instance with configurable behavior. It accepts a single argument, `onCreationHook`, which is a function that returns a `CacheHandlerConfig` object. ## `onCreationHook` The `onCreation` method expects a function of type `OnCreationHook`, which is defined as follows: ```typescript -type OnCreationHook = (cacheCreationContext: CacheCreationContext) => Promise | CacheConfig; +type OnCreationHook = (context: CacheCreationContext) => Promise | CacheHandlerConfig; ``` -This function takes the `cacheCreationContext` as its argument and returns either a `CacheConfig` object or a Promise that resolves to a `CacheConfig` object. The `CacheConfig` type is designed to specify the cache behavior and settings, including whether to use the file system for caching and the details of the custom cache implementation. +### Arguments -### `cacheCreationContext` Argument +#### `context` -The `cacheCreationContext` argument is an object of type `CacheCreationContext`, providing essential information for cache configuration. It includes the following properties: +The `context` argument is an object of type `CacheCreationContext`, providing additional information for cache configuration. It includes the following properties: 1. **`serverDistDir` (string):** @@ -29,104 +29,29 @@ The `cacheCreationContext` argument is an object of type `CacheCreationContext`, - Description: A unique identifier for the current build of the Next.js application, generated during the `next build` process. - Purpose: The `buildId` may be used as a prefix for namespacing cache keys, ensuring distinct and relevant cache data for each build of the application. -### Usage of `onCreationHook` +### Return Value -When implementing the `onCreationHook`, you can utilize the information provided in the `cacheCreationContext` to dynamically configure the cache according to the server environment and specific application needs. This approach allows for a high degree of flexibility and customization in how caching is handled within a Next.js application. +The [`CacheHandlerConfig`](/api-reference/cache-handler-config) type is designed to specify the list of cache Handlers and [TTL policy](/api-reference/ttl-parameters). -### Example +## Example -Here's a simplified example of how the `onCreation` method might be used: +Here's an example of how the `onCreation` method might be used: ```js filename="cache-handler.mjs" -IncrementalCache.onCreation(async (context) => { - const customCacheLogic = { - // Define custom get, set, and other cache methods +CacheHandler.onCreation(async (context) => { + const mainHandler = { + // Define custom get, set, and other Handler methods }; - return { - cache: customCacheLogic, - }; -}); -``` - -In this example, the `onCreation` method defines custom cache logic and decides whether to use file system caching based on whether the application is in development mode. - -### Structure of `CacheConfig` - -The `onCreation` hook in the `@neshca/cache-handler` API returns a `CacheConfig` object or a Promise that resolves to a `CacheConfig` object. This return value is crucial for configuring the caching behavior of the application. Below is a detailed explanation of the structure and components of the `CacheConfig` object: - -The `CacheConfig` object defines the configuration for the cache system. It typically includes the following properties: - -1. **`cache` (Cache | Cache[]):** - - - Description: Represents the [custom cache](/configuration/cache) instance or an array of cache instances. These instances must conform to the `Cache` interface, as defined in the `@neshca/cache-handler` API. - - Usage: This is where you provide your custom cache implementation. If an array of caches is provided, it enables the use of multiple caching layers or strategies, offering more complex and tailored caching solutions. - -2. **`useFileSystem` (boolean, optional):** - - - Description: Determines whether to utilize file system caching in addition to the custom cache implementation. - - Usage: This can be set to `true` to enable file system caching or `false` to rely solely on the custom cache logic provided. It's particularly useful in scenarios where persistent caching is needed across server restarts or deployments. - -### Example Usage and Return Value - -Here is an example of how the `onCreation` hook might be implemented and what the return value looks like: - -```js filename="cache-handler.mjs" -IncrementalCache.onCreation(async (context) => { - const customCache = { - // Custom cache methods like get, set, etc. - }; - - const cacheConfig = { - useFileSystem: false, // Example of disabling file system caching - cache: customCache, // Custom cache implementation - }; - - return cacheConfig; // Returning the CacheConfig object -}); - -// Or in a more complex scenario with multiple caches -IncrementalCache.onCreation(async (context) => { - const primaryCache = { - /* ... */ - }; - const secondaryCache = { - /* ... */ + const fallbackHandler = { + // Define custom get, set, and other Handler methods }; return { - useFileSystem: true, - cache: [primaryCache, secondaryCache], // Array of cache instances + handlers: [mainHandler, fallbackHandler], + ttl: { defaultStaleAge: 3600, estimateExpireAge: (staleAge) => staleAge * 2 }, }; }); ``` -In these examples, the `onCreation` hook configures the cache behavior based on the application's running environment and returns the appropriate `CacheConfig` object, either with a single cache implementation or multiple cache layers. This is how multi layer caching works: - -1. **`get(key)`: Data Retrieval Across Layers** - - - The `get` method iterates through each cache layer, starting with the `primaryCache`. - - It attempts to retrieve the value associated with `key` from the `primaryCache` first. - - If the `primaryCache` results in a cache miss (value not found), the system then checks the `secondaryCache`. - - The method returns the value as soon as it is found in any layer, ensuring that the main cache layer is always checked first. - -2. **`set(key, value, ttl)`: Data Storage Across Layers** - - - The `set` method concurrently updates or adds the value in all cache layers by iterating over each cache instance (`primaryCache` and `secondaryCache`). - - This ensures that the data is consistently stored across all layers, maintaining data integrity and availability. - - It uses `Promise.allSettled` under the hood, ensuring that the operation completes in all caches, regardless of whether one or more of the `set` operations fail or succeed. - -3. **`getRevalidatedTags()`: Retrieving Revalidated Tags Across Layers** - - - The search for revalidated tags begins with the `primaryCache` and, if not found, proceeds to the `secondaryCache`. - - The method returns the `RevalidatedTags` from the first cache layer where they are found. - -4. **`revalidateTag(tag, revalidatedAt)`: Updating Revalidation Status Across Layers** - - - Similar to the `set` method, `revalidateTag` concurrently updates the revalidation status of a tag in all cache layers. - - It marks the specified `tag` as revalidated with the provided timestamp (`revalidatedAt`) in both the `primaryCache` and `secondaryCache`. - - It uses `Promise.allSettled` under the hood, ensuring that the revalidation status is consistently updated across all layers. - -5. **`name`: A descriptive name for the cache handler instance.** - - - This is used for logging and debugging purposes. +In this example, the `onCreation` method configures two Handlers, and a common TTL policy for the cache. diff --git a/docs/cache-handler-docs/src/pages/configuration/opt-out-cache-on-build.mdx b/docs/cache-handler-docs/src/pages/configuration/opt-out-cache-on-build.mdx index 515a2743..27dfa269 100644 --- a/docs/cache-handler-docs/src/pages/configuration/opt-out-cache-on-build.mdx +++ b/docs/cache-handler-docs/src/pages/configuration/opt-out-cache-on-build.mdx @@ -1,38 +1,31 @@ ## Building the App Without Redis Cache Connection -There are scenarios, especially during deployment, where your Redis server may not be immediately available. This can occur when the Redis server and your app are deployed simultaneously. In such cases, it's important to configure your build process to handle the absence of the Redis cache. Here's how you can adapt your setup to build the app without requiring an active connection to the Redis cache: +There are scenarios, especially during deployment, where your Redis server may not be immediately available. This can occur when the Redis server and your app are deployed simultaneously. In such cases, it's important to configure your build process to handle the absence of the Redis server. Here's how you can adapt your setup to build the app without requiring an active connection to the Redis server: ### Configuration Steps -1. **Modify the `cache-handler.mjs` File**: Adjust the `onCreation` method in your `cache-handler.mjs` file to conditionally connect to the Redis cache. The modified code should look like this: +1. **Modify the `cache-handler.mjs` File**: Adjust the `onCreation` method in your `cache-handler.mjs` file to conditionally connect to the Redis server. The modified code should look like this: ```js filename="cache-handler.mjs" copy - IncrementalCache.onCreation(async () => { - let redisCache; + CacheHandler.onCreation(async () => { + let redisHandler; if (process.env.REDIS_AVAILABLE) { await client.connect(); - redisCache = await createRedisCache({ + redisHandler = await createRedisHandler({ client, }); } - // The cache array can contain undefined values. The will be filtered out by IncrementalCache. - const cache = [redisCache]; + const localHandler = { + // ... + }; return { - cache, - // Always use the file system cache when building the app without any cache. - useFileSystem: !cache.some(Boolean), + handlers: [redisHandler, localHandler], }; }); ``` -2. **Environment Variable Check**: The `process.env.REDIS_AVAILABLE` environment variable is used to determine if the server has already started. This ensures that the Redis client attempts a connection only when the server is up and running. - -3. **Fallback to File System Cache**: When the Redis cache is not connected (e.g., during the build process), the setup falls back to using the file system cache. This ensures that your app can still be built and run effectively, even without the Redis cache. - -### Notes: - -- This setup is particularly useful in continuous integration and deployment pipelines where the availability of external services like Redis might not be guaranteed at build time. +2. **Environment Variable Check**: The `process.env.REDIS_AVAILABLE` environment variable is used to determine if the server has already started. This ensures that the Redis client attempts a connection only when the server is up and running. You may use a different environment variable or a more sophisticated check based on your deployment setup. diff --git a/docs/cache-handler-docs/src/pages/configuration/ttl.mdx b/docs/cache-handler-docs/src/pages/configuration/ttl.mdx deleted file mode 100644 index 9a590ae5..00000000 --- a/docs/cache-handler-docs/src/pages/configuration/ttl.mdx +++ /dev/null @@ -1,132 +0,0 @@ -## Using TTL in Cache Configuration - -### Overview - -Time to Live (TTL) is a crucial feature in cache management. It automatically expires cache entries after a predefined duration, ensuring your cache remains up-to-date and efficient. - -### Prerequisites - -To effectively implement TTL, consider the following: - -- **File System Cache Limitation**: Set `useFileSystem: false` in your cache configuration. This step is essential for TTL to function correctly. If the file system cache is enabled, it may cause cache entries to be retrieved from the file system cache even after they've expired in Redis of LRU. -- **Next.js Pages Directory Issue**: There is a known limitation with Next.js regarding the file system cache within the Pages directory. It's recommended to apply TTL only for the App directory pages. For more information, refer to the [file system cache configuration documentation](/configuration/use-file-system#configuring-access-to-the-file-system). - -### TTL and Incremental Static Regeneration (ISR) - -In Next.js, ISR allows routes to be incrementally updated through the [`revalidate` ↗](https://nextjs.org/docs/app/building-your-application/data-fetching/fetching-caching-and-revalidating#time-based-revalidation) property in `fetch` or inside the `page` or `route` file. - -### Using TTL in Preconfigured Handlers - -Here's how to use TTL in preconfigured Handlers: - -```js filename="cache-handler.mjs" copy -IncrementalCache.onCreation(async () => { - await client.connect(); - - // In this example, we emulate a stale-while-revalidate cache strategy - // After the `maxAge` the cache entry will be treated as stale and will be revalidated - // And if the revalidation fails, it will be removed from the cache after `maxAge * 1.5` - function useTtl(maxAge) { - return maxAge * 1.5; - } - - const redisCache = await createRedisCache({ - client, - useTtl, // Enable TTL for Redis cache - }); - - const localCache = createLruCache({ - useTtl, // Enable TTL for local cache - }); - - return { - cache: [redisCache, localCache], - useFileSystem: !useTtl, // Disable file system cache to ensure TTL effectiveness - }; -}); -``` - -### Implementing TTL in Custom Cache Handlers - -For custom cache handlers, here are examples for Redis: - -#### Redis Strings Example - -```js filename="cache-handler.mjs" copy -IncrementalCache.onCreation(async () => { - const cache = { - // ... other cache methods ... - - async set(key, value, maxAge) { - // Serialize value and set TTL using Redis 'EX' option - await client.set( - key, - JSON.stringify(value, replaceJsonWithBase64), - // Delete key when they become stale - typeof maxAge === 'number' ? { EX: maxAge } : undefined, - ); - }, - - // ... other cache methods ... - }; - - return { - useFileSystem: false, // Disable file system cache for TTL efficiency - cache, - }; -}); -``` - -#### Redis Stack Example - -```js filename="cache-handler.mjs" copy -IncrementalCache.onCreation(async () => { - const cache = { - // ... other cache methods ... - - async set(key, value, maxAge) { - await client.json.set(key, '.', value); - - if (typeof maxAge === 'number') { - // Delete key when they become stale - // Set TTL using Redis 'EXPIRE' command - await client.expire(key, maxAge); - } - }, - - // ... other cache methods ... - }; - - return { - useFileSystem: false, // Disable file system cache for TTL efficiency - cache, - }; -}); -``` - -#### Stale While Revalidate Example - -```js filename="cache-handler.mjs" copy -import { calculateEvictionDelay } from 'neshca/cache-handler/helpers'; -// ... - -IncrementalCache.onCreation(async () => { - const cache = { - // ... other cache methods ... - - async set(key, value, maxAge) { - const EX = calculateEvictionDelay(maxAgeSeconds, useTtl); - // Serialize value and set TTL using Redis 'EX' option - // Delete key with a delay when they become stale - await client.set(key, JSON.stringify(value, replaceJsonWithBase64), EX ? { EX } : undefined); - }, - - // ... other cache methods ... - }; - - return { - useFileSystem: false, // Disable file system cache for TTL efficiency - cache, - }; -}); -``` diff --git a/docs/cache-handler-docs/src/pages/configuration/use-file-system.mdx b/docs/cache-handler-docs/src/pages/configuration/use-file-system.mdx deleted file mode 100644 index 44e1a186..00000000 --- a/docs/cache-handler-docs/src/pages/configuration/use-file-system.mdx +++ /dev/null @@ -1,97 +0,0 @@ -import { Callout } from 'nextra/components'; - -## Configuring access to the file system - -You can use your file system to store the cache data alongside your shared cache. It may be useful if your shared cache store may be unavailable for some reason. - -The file system cache is enabled by default. You can disable it by setting `useFileSystem` to false in your `onCreation` hook: - -```js filename="cache-handler.mjs" copy -import { IncrementalCache } from '@neshca/cache-handler'; - -IncrementalCache.onCreation(async () => { - const cacheStore = new Map(); - - const cache = { - async get(key) { - return cacheStore.get(key); - }, - async set(key, value) { - cacheStore.set(key, value); - }, - }; - - return { - cache, - // Disable it only if you are using only the App router. - // In this case you will gain some performance boost. - // Check out the warning below. - useFileSystem: false, - }; -}); - -export default IncrementalCache; -``` - - - There is a [bug ↗](https://github.com/vercel/next.js/issues/58094) in the Next.js' Pages router when disabling the - file system cache. Do not disable it if you are using Pages. - - -## The usage of `local-lru` Handler instead of file system cache - -The `local-lru` Handler utilizes a Least Recently Used (LRU) caching strategy, which can manage cache operations more efficiently by setting a maximum number of items and their size in bytes. It's designed to serve as a fallback for the Redis Handler, offering better performance than the file system. - -### When not to use `local-lru` Handler - -It is worth mentioning that when all application replicas share a file system, enabling a local LRU cache is not viable. - -In the configuration without the `@neshca/cache-handler`, you are turning off the local in-memory cache with this option: - -```js -isrMemoryCacheSize: 0, // disable default in-memory caching -``` - -`@neshca/cache-handler` doesn't use this option; instead, it makes the usage of the local cache more explicit. To disable the LRU cache, simply remove it from the cache array. - -### Implementation - -The `createLruCache` function initializes the LRU cache handler. It includes methods for getting and setting cache values, and the `IncrementalCache` class manages revalidation. - -#### Example Usage - -```js filename="cache-handler.mjs" copy -IncrementalCache.onCreation(async (context) => { - const createRedisCache = await createRedisCache({ - /* ... */ - }); - - const lruCache = createLruCache({ - maxItemsNumber: 10000, // Limit to 10000 items - maxItemSizeBytes: 1024 * 1024 * 500, // Limit to 500 MB - }); - - return { - cache: [createRedisCache, lruCache], // Array of cache instances - useFileSystem: false, // Disable file system cache - }; -}); -``` - -#### Options - -1. **`maxItemsNumber` (number, optional):** - - - Description: Specifies the maximum number of items to be stored in the cache. - - Usage: This can be set to any positive integer. If not provided, the default value is 1000. - -2. **`maxItemSizeBytes` (number, optional):** - - - Description: Defines the maximum size of an item in bytes. - - Usage: This can be set to any positive integer representing the maximum size in bytes. If not provided, the default value is 100 MB. - -### Considerations - -- It's recommended to use this Handler as a fallback for Redis Handler, particularly when using only the App router. -- Don't use this Handler if you are using shared file systems between application replicas. -- Be cautious of a known bug in Next.js' Pages router when disabling the file system cache. Do not disable it if you are using Pages, as mentioned in the preceding section. diff --git a/docs/cache-handler-docs/src/pages/index.mdx b/docs/cache-handler-docs/src/pages/index.mdx index 9451a2aa..ed222b0e 100644 --- a/docs/cache-handler-docs/src/pages/index.mdx +++ b/docs/cache-handler-docs/src/pages/index.mdx @@ -1,10 +1,6 @@ -## Introduction to `@neshca/cache-handler` - -**Flexible API to replace the default Next.js cache, accommodating custom cache solutions for multi-instance deployments.** - Welcome to `@neshca/cache-handler`, a specialized ISR/Data cache API crafted for Next.js applications. This library is designed to simplify the complex task of configuring shared cache strategies in distributed environments, such as those involving multiple and independent instances of the same application. It offers a flexible and user-friendly approach to integrating custom cache solutions and hand-crafted, pre-configured cache strategies for Redis. -### The Importance of Shared Cache in Distributed Instances +### The importance of shared cache in distributed environments Next.js applications are often deployed in a self-hosted distributed environment, where multiple instances of the same application are running simultaneously. In such cases, the default Next.js cache is not shared between instances, causing the data to diverge between independent instances because load balancers route requests to a different instance every time. Another significant issue with the default cache setup is on-demand revalidation; it requires manual revalidation across all application replicas. @@ -13,11 +9,12 @@ Next.js applications are often deployed in a self-hosted distributed environment - A straightforward API complemented by meticulously crafted Handlers. - Comprehensive customization options. - Simplified on-demand revalidation, akin to managing a single application instance. +- TTL by default to keep cache storage clean and space-efficient. -## Kickstarting Your Custom Cache Solution +### Kickstarting Your Custom Cache Solution Begin enhancing your application's caching system with our [Installation and the First Steps](/installation). This section provides all the necessary information on installation, basic configuration, and practical examples for quick and efficient integration. ### Examples and Practical Implementations -Discover the versatility of `@neshca/cache-handler` in our [Examples Section](/redis-stack), where real-world scenarios are illustrated. +Discover the versatility of `@neshca/cache-handler` in our [Examples Section](/redis), where real-world scenarios are illustrated. diff --git a/docs/cache-handler-docs/src/pages/installation.mdx b/docs/cache-handler-docs/src/pages/installation.mdx index 6a4660ce..9d1fa1be 100644 --- a/docs/cache-handler-docs/src/pages/installation.mdx +++ b/docs/cache-handler-docs/src/pages/installation.mdx @@ -34,7 +34,7 @@ pnpm create next-app --example cache-handler-redis cache-handler-redis-app ``` 2. **Optional Redis Installation**: - Install Redis if you plan to use distributed caching across multiple server instances: + Install Redis if you plan to use it as your cache store: ```sh npm2yarn copy npm install -D redis @@ -46,31 +46,47 @@ pnpm create next-app --example cache-handler-redis cache-handler-redis-app In your project root, create a file named `cache-handler.mjs` for your cache configuration. 2. **Configure the Cache Handler**: - Below is a basic setup example: + Below is a basic setup example: ```js filename="cache-handler.mjs" copy - import { IncrementalCache } from '@neshca/cache-handler'; + import { CacheHandler } from '@neshca/cache-handler'; - IncrementalCache.onCreation(async () => { - // Don't use Map in production. This is just an example. - const cacheStore = new Map(); + CacheHandler.onCreation(async () => { + // Let's imagine we're using a map + // in which values are shared via the network + // between all your Next.js app instances. + const cacheStore = new MagicMap(); - const cache = { + const handler = { async get(key) { - return cacheStore.get(key); + return await cacheStore.get(key); }, async set(key, value) { - cacheStore.set(key, value); + await cacheStore.set(key, value); + }, + async revalidateTag(tag) { + // Iterate over all entries in the cache + for (const [key, { tags }] of cacheStore) { + // If the value's tags include the specified tag, delete this entry + if (tags.includes(tag)) { + await cacheStore.delete(key); + } + } + }, + // Optional: Implement the delete method + // if your cache store doesn't support automatic time-based key expiration. + // It will be called when the get method returns expired data. + async delete(key) { + await cacheStore.delete(key); }, }; return { - cache, - useFileSystem: true, + handlers: [handler], }; }); - export default IncrementalCache; + export default CacheHandler; ``` 3. **Integrate with Next.js**: @@ -78,7 +94,6 @@ pnpm create next-app --example cache-handler-redis cache-handler-redis-app ```js filename="next.config.js" copy const nextConfig = { - // './cache-handler.mjs' in case you're using EcmaScript modules. cacheHandler: process.env.NODE_ENV === 'production' ? require.resolve('./cache-handler.mjs') : undefined, // Use `experimental` option instead of the `cacheHandler` property when using Next.js versions from 13.5.1 to 14.0.4 /* experimental: { @@ -97,19 +112,19 @@ pnpm create next-app --example cache-handler-redis cache-handler-redis-app ### Running Your Application -**Start Your Next.js Application**: - Run your app as usual. `@neshca/cache-handler` will now manage your application's caching: +**Start Your Next.js Application**: - ```sh npm2yarn copy - npm run build - npm run start - ``` +Build and start your application in production mode to see the cache handler in action: + +```sh npm2yarn copy +npm run build +npm run start +``` ### Next Steps With the setup complete, explore `@neshca/cache-handler`'s advanced features: -- Check out the [Redis Integration Example](/redis-stack); -- Learn [how to use the API](/configuration/on-creation) and craft your own cache handler configuration; -- Learn [how to use TTL](/configuration/ttl) for cache eviction. +- Check out the [Redis Integration Example](/redis). +- Learn [how to use the API](/configuration/on-creation). - See how to [debug and troubleshoot](/troubleshooting) your cache handler configuration. diff --git a/docs/cache-handler-docs/src/pages/redis-stack-custom.mdx b/docs/cache-handler-docs/src/pages/redis-stack-custom.mdx deleted file mode 100644 index eca15263..00000000 --- a/docs/cache-handler-docs/src/pages/redis-stack-custom.mdx +++ /dev/null @@ -1,105 +0,0 @@ -import { Callout } from 'nextra/components'; - -## Redis Stack example - - - In this example, we assume that in your deployment, you have `REDIS_URL` environment variable set to the URL of your - Redis instance. You can use any other way to set the URL. - - -Create a file called `cache-handler.mjs` next to you `next.config.js` with the following contents: - -```js filename="cache-handler.mjs" copy -import { IncrementalCache } from '@neshca/cache-handler'; -import createLruCache from '@neshca/cache-handler/local-lru'; -import { createClient } from 'redis'; - -const REVALIDATED_TAGS_KEY = 'sharedRevalidatedTags'; - -IncrementalCache.onCreation(async () => { - // always create a Redis client inside the `onCreation` callback - const client = createClient({ - url: process.env.REDIS_URL ?? 'redis://localhost:6379', - }); - - client.on('error', (error) => {}); - - await client.connect(); - - // read more about TTL limitations https://caching-tools.github.io/next-shared-cache/configuration/ttl - const useTtl = false; - - function assertClientIsReady() { - if (!client.isReady) { - throw new Error('Redis client is not ready'); - } - } - - assertClientIsReady(); - - await client.json.set( - REVALIDATED_TAGS_KEY, - '.', - {}, - { - NX: true, - }, - ); - - const localCache = createLruCache({ - useTtl, - }); - - const redisCache = { - name: 'custom-redis-stack', - async get(key) { - assertClientIsReady(); - - const cacheValue = (await client.json.get(key)) ?? null; - - if (cacheValue?.value?.kind === 'ROUTE') { - cacheValue.value.body = Buffer.from(cacheValue.value.body, 'base64'); - } - - return cacheValue; - }, - async set(key, cacheValue, ttl) { - assertClientIsReady(); - - let preparedCacheValue = cacheValue; - - if (cacheValue.value?.kind === 'ROUTE') { - preparedCacheValue = structuredClone(cacheValue); - preparedCacheValue.value.body = cacheValue.value.body.toString('base64'); - } - - await client.json.set(key, '.', preparedCacheValue); - - if (useTtl && typeof ttl === 'number') { - await client.expire(key, ttl); - } - }, - async getRevalidatedTags() { - assertClientIsReady(); - - const sharedRevalidatedTags = (await client.json.get(REVALIDATED_TAGS_KEY)) ?? undefined; - - return sharedRevalidatedTags; - }, - async revalidateTag(tag, revalidatedAt) { - assertClientIsReady(); - - await client.json.set(REVALIDATED_TAGS_KEY, `.${tag}`, revalidatedAt); - }, - }; - - return { - cache: [redisCache, localCache], - useFileSystem: !useTtl, - }; -}); - -export default IncrementalCache; -``` - -Ensure that the Redis instance is running when you build your Next.js app. diff --git a/docs/cache-handler-docs/src/pages/redis-stack.mdx b/docs/cache-handler-docs/src/pages/redis-stack.mdx deleted file mode 100644 index 4c93b2b5..00000000 --- a/docs/cache-handler-docs/src/pages/redis-stack.mdx +++ /dev/null @@ -1,52 +0,0 @@ -import { Callout } from 'nextra/components'; - -## Redis Stack example - - - In this example, we assume that in your deployment, you have `REDIS_URL` environment variable set to the URL of your - Redis instance. You can use any other way to set the URL. - - -Create a file called `cache-handler.mjs` next to you `next.config.js` with the following contents: - -```js filename="cache-handler.mjs" copy -import { IncrementalCache } from '@neshca/cache-handler'; -import createLruCache from '@neshca/cache-handler/local-lru'; -import createRedisCache from '@neshca/cache-handler/redis-stack'; -import { createClient } from 'redis'; - -IncrementalCache.onCreation(async () => { - // always create a Redis client inside the `onCreation` callback - const client = createClient({ - url: process.env.REDIS_URL ?? 'redis://localhost:6379', - }); - - client.on('error', () => {}); - - // read more about TTL limitations https://caching-tools.github.io/next-shared-cache/configuration/ttl - const useTtl = false; - - await client.connect(); - - const redisCache = await createRedisCache({ - client, - useTtl, - // timeout for the Redis client operations like `get` and `set` - // after this timeout, the operation will be considered failed and the `localCache` will be used - timeoutMs: 5000, - }); - - const localCache = createLruCache({ - useTtl, - }); - - return { - cache: [redisCache, localCache], - useFileSystem: !useTtl, - }; -}); - -export default IncrementalCache; -``` - -Ensure that the Redis instance is running when you build your Next.js app. diff --git a/docs/cache-handler-docs/src/pages/redis-strings-custom.mdx b/docs/cache-handler-docs/src/pages/redis-strings-custom.mdx deleted file mode 100644 index cfb5f5bc..00000000 --- a/docs/cache-handler-docs/src/pages/redis-strings-custom.mdx +++ /dev/null @@ -1,102 +0,0 @@ -import { Callout } from 'nextra/components'; - -## Custom Redis strings example - -Install `@neshca/json-replacer-reviver` to efficiently store Buffers in Redis strings - -```sh npm2yarn copy -npm i -D @neshca/json-replacer-reviver -``` - - - In this example, we assume that in your deployment, you have `REDIS_URL` environment variable set to the URL of your - Redis instance. You can use any other way to set the URL. - - -Create a file called `cache-handler.mjs` next to your `next.config.js` with the following contents: - -```js filename="cache-handler.mjs" copy -import { IncrementalCache } from '@neshca/cache-handler'; -import createLruCache from '@neshca/cache-handler/local-lru'; -import { reviveFromBase64Representation, replaceJsonWithBase64 } from '@neshca/json-replacer-reviver'; -import { createClient } from 'redis'; - -const REVALIDATED_TAGS_KEY = 'sharedRevalidatedTags'; - -IncrementalCache.onCreation(async () => { - // always create a Redis client inside the `onCreation` callback - const client = createClient({ - url: process.env.REDIS_URL ?? 'redis://localhost:6379', - }); - - client.on('error', () => {}); - - // read more about TTL limitations https://caching-tools.github.io/next-shared-cache/configuration/ttl - const useTtl = false; - - await client.connect(); - - const localCache = createLruCache({ - useTtl, - }); - - function assertClientIsReady() { - if (!client.isReady) { - throw new Error('Redis client is not ready'); - } - } - const redisCache = { - name: 'custom-redis-strings', - async get(key) { - assertClientIsReady(); - - const result = await client.get(key); - - if (!result) { - return null; - } - - return JSON.parse(result, reviveFromBase64Representation); - }, - async set(key, value, ttl) { - assertClientIsReady(); - - await client.set( - key, - JSON.stringify(value, replaceJsonWithBase64), - useTtl && typeof ttl === 'number' ? { EX: ttl } : undefined, - ); - }, - async getRevalidatedTags() { - assertClientIsReady(); - - const sharedRevalidatedTags = await client.hGetAll(REVALIDATED_TAGS_KEY); - - const entries = Object.entries(sharedRevalidatedTags); - - const revalidatedTags = entries.reduce((acc, [tag, revalidatedAt]) => { - acc[tag] = Number(revalidatedAt); - return acc; - }, {}); - - return revalidatedTags; - }, - async revalidateTag(tag, revalidatedAt) { - assertClientIsReady(); - - await client.hSet(REVALIDATED_TAGS_KEY, { - [tag]: revalidatedAt, - }); - }, - }; - - return { - cache: [redisCache, localCache], - useFileSystem: !useTtl, - }; -}); - -export default IncrementalCache; -``` - -Ensure that the Redis instance is running when you build your Next.js app. diff --git a/docs/cache-handler-docs/src/pages/redis-strings.mdx b/docs/cache-handler-docs/src/pages/redis-strings.mdx deleted file mode 100644 index 3ac83b21..00000000 --- a/docs/cache-handler-docs/src/pages/redis-strings.mdx +++ /dev/null @@ -1,51 +0,0 @@ -import { Callout } from 'nextra/components'; - -## Redis strings example - - - In this example, we assume that in your deployment, you have `REDIS_URL` environment variable set to the URL of your - Redis instance. You can use any other way to set the URL. - - -Create a file called `cache-handler.mjs` next to your `next.config.js` with the following contents: - -```js filename="cache-handler.mjs" copy -import { IncrementalCache } from '@neshca/cache-handler'; -import createLruCache from '@neshca/cache-handler/local-lru'; -import createRedisCache from '@neshca/cache-handler/redis-strings'; -import { createClient } from 'redis'; - -IncrementalCache.onCreation(async () => { - const client = createClient({ - url: process.env.REDIS_URL ?? 'redis://localhost:6379', - }); - - client.on('error', (error) => {}); - - // read more about TTL limitations https://caching-tools.github.io/next-shared-cache/configuration/ttl - const useTtl = false; - - await client.connect(); - - const redisCache = await createRedisCache({ - client, - useTtl, - // timeout for the Redis client operations like `get` and `set` - // afeter this timeout, the operation will be considered failed and the `localCache` will be used - timeoutMs: 5000, - }); - - const localCache = createLruCache({ - useTtl, - }); - - return { - cache: [redisCache, localCache], - useFileSystem: !useTtl, - }; -}); - -export default IncrementalCache; -``` - -Ensure that the Redis instance is running when you build your Next.js app. diff --git a/docs/cache-handler-docs/src/pages/redis.mdx b/docs/cache-handler-docs/src/pages/redis.mdx new file mode 100644 index 00000000..cdf33383 --- /dev/null +++ b/docs/cache-handler-docs/src/pages/redis.mdx @@ -0,0 +1,47 @@ +import { Callout } from 'nextra/components'; + +## Redis Stack example + + + In this example, we assume that in your deployment, you have `REDIS_URL` environment variable set to the URL of your + Redis instance. You can use any other way to set the URL. + + +Create a file called `cache-handler.mjs` next to your `next.config.js` with the following contents: + +```js filename="cache-handler.mjs" copy +import { CacheHandler } from '@neshca/cache-handler'; +import createLruHandler from '@neshca/cache-handler/local-lru'; +import createRedisHandler from '@neshca/cache-handler/redis-stack'; +// or if you are using Redis without the RedisJSON module +// import createRedisHandler from '@neshca/cache-handler/redis-strings'; +import { createClient } from 'redis'; + +CacheHandler.onCreation(async () => { + // always create a Redis client inside the `onCreation` callback + const client = createClient({ + url: process.env.REDIS_URL ?? 'redis://localhost:6379', + }); + + client.on('error', () => {}); + + await client.connect(); + + const redisHandler = await createRedisHandler({ + client, + // timeout for the Redis client operations like `get` and `set` + // after this timeout, the operation will be considered failed and the `localHandler` will be used + timeoutMs: 5000, + }); + + const localHandler = createLruHandler(); + + return { + handlers: [redisHandler, localHandler], + }; +}); + +export default CacheHandler; +``` + +Ensure that the Redis instance is running when you build your Next.js app. If you can not ensure that, see how to disable the Handler during a build stage in the [Building the App Without Redis Cache Connection](/configuration/opt-out-cache-on-build) section. diff --git a/docs/cache-handler-docs/src/pages/server.mdx b/docs/cache-handler-docs/src/pages/server.mdx index e8aa65f2..88ee89f5 100644 --- a/docs/cache-handler-docs/src/pages/server.mdx +++ b/docs/cache-handler-docs/src/pages/server.mdx @@ -25,27 +25,26 @@ PORT=8080 HOST=localhost npx next-cache-server to the URL of your `@neshca/server`. You can use any other way to set the URL. -Create a file called `cache-handler.mjs` next to you `next.config.js` with the following contents: +Create a file called `cache-handler.mjs` next to your `next.config.js` with the following contents: ```js filename="cache-handler.mjs" copy -import { IncrementalCache } from '@neshca/cache-handler'; -import createLruCache from '@neshca/cache-handler/local-lru'; -import createServerCache from '@neshca/cache-handler/server'; +import { CacheHandler } from '@neshca/cache-handler'; +import createLruHandler from '@neshca/cache-handler/local-lru'; +import createServerHandler from '@neshca/cache-handler/server'; const baseUrl = process.env.REMOTE_CACHE_SERVER_BASE_URL ?? 'http://localhost:8080'; -IncrementalCache.onCreation(() => { - const httpCache = createServerCache({ +CacheHandler.onCreation(() => { + const httpHandler = createServerHandler({ baseUrl, }); - const localCache = createLruCache(); + const localHandler = createLruHandler(); return { - cache: [httpCache, localCache], - useFileSystem: true, + handlers: [httpHandler, localHandler], }; }); -export default IncrementalCache; +export default CacheHandler; ``` diff --git a/docs/cache-handler-docs/src/pages/troubleshooting.mdx b/docs/cache-handler-docs/src/pages/troubleshooting.mdx index 303b149f..f8aca844 100644 --- a/docs/cache-handler-docs/src/pages/troubleshooting.mdx +++ b/docs/cache-handler-docs/src/pages/troubleshooting.mdx @@ -8,13 +8,14 @@ Add `console.log` statements to your cache handler: ```js filename="cache-handler.mjs" /* ... */ -const cache = { +const handler = { + name: 'my-cache-handler', async get(key) { - console.log('cache.get', key); + console.log('handler.get', key); return cacheStore.get(key); }, async set(key, value) { - console.log('cache.set', key, value); + console.log('handler.set', key, value); cacheStore.set(key, value); }, }; @@ -28,11 +29,11 @@ npm run build npm run start ``` -The console should display output the application starts and any page is opened in your browser: +The console should display the output the application starts and any page is opened in your browser: ``` -cache.get ... -cache.set ... +handler.get ... +handler.set ... ``` #### Method 2: Debug Mode @@ -52,10 +53,10 @@ npm run build npm run start ``` -Verbose output should appear in your console when the application starts and any page is opened in your browser: +A verbose output should appear in your server console when the application starts and any page is opened in your browser: ``` -using custom cache handler @neshca/cache-handler with 1 Handlers and file system caching +using custom cache handler @neshca/cache-handler with 1 Handlers get from "redis-stack" ba7bea0a3991dc2cbf8e068da71c2a2aa8c0e6f902fe695c1badf1e994acc43a false set to external cache store 8f058e8d96c4010b07abddd0f9f26ebd9ed71e2ccfb18eca348fc57a6e86f986 ``` diff --git a/docs/cache-handler-docs/src/pages/usage/creating-a-custom-handler.mdx b/docs/cache-handler-docs/src/pages/usage/creating-a-custom-handler.mdx new file mode 100644 index 00000000..54f10452 --- /dev/null +++ b/docs/cache-handler-docs/src/pages/usage/creating-a-custom-handler.mdx @@ -0,0 +1,173 @@ +## Custom Redis strings example + +This example demonstrates how to create a full-featured custom Redis handler for `@neshca/cache-handler`. The handler uses the `redis` package to connect to a Redis instance and store cache data. The guide is presented as a code snippet with comments explaining each step. You may also want to learn how Redis works and how to use it in your application. For more information, see the [Redis documentation](https://redis.io/documentation). + +### Prerequisites + +Install the `redis` package: + +```sh npm2yarn copy +npm install -D redis +``` + +Then, install Redis server locally or use a cloud-based Redis service. Learn how to run Redis locally by following the [Install Redis Stack documentation](https://redis.io/docs/install/install-stack/docker/). Redis Stack also includes a RedisInsight tool to manage and monitor your Redis instance. + +### Guide + +Create a file called `cache-handler.mjs` next to your `next.config.js` with the following contents: + +```js filename="cache-handler.mjs" copy +import { CacheHandler } from '@neshca/cache-handler'; +import createLruHandler from '@neshca/cache-handler/local-lru'; +import { createClient, commandOptions } from 'redis'; + +CacheHandler.onCreation(async () => { + // Always create a Redis client inside the `onCreation` callback. + const client = createClient({ + url: 'redis://localhost:6379', + }); + + // Ignore Redis errors: https://github.com/redis/node-redis?tab=readme-ov-file#events. + client.on('error', () => {}); + + // Define a timeout for Redis operations. + const timeoutMs = 1000; + + // Define a key prefix for the cache. + // It is useful to avoid key collisions with other data in Redis, + // or to delete all cache keys at once by using a pattern. + const keyPrefix = 'my-app-cache:'; + + // Define a key for shared tags. + // You'll see how to use it later in the `revalidateTag` method + const sharedTagsKey = '_sharedTags_'; + + // Create an assert function to ensure that the client is ready before using it. + // When you throw an error in any Handler method, + // the CacheHandler will use the next available Handler listed in the `handlers` array. + function assertClientIsReady() { + if (!client.isReady) { + throw new Error('Redis client is not ready yet or connection is lost.'); + } + } + + // Create a custom Redis Handler + const customRedisHandler = { + // Give the handler a name. + // It is useful for logging in debug mode. + name: 'redis-strings-custom', + // We do not use try/catch blocks in the Handler methods. + // CacheHandler will handle errors and use the next available Handler. + async get(key) { + // Ensure that the client is ready before using it. + // If the client is not ready, the CacheHandler will use the next available Handler. + assertClientIsReady(); + + // Create a new AbortSignal with a timeout for the Redis operation. + // By default, redis client operations will wait indefinitely. + const options = commandOptions({ signal: AbortSignal.timeout(timeoutMs) }); + + // Get the value from Redis. + // We use the key prefix to avoid key collisions with other data in Redis. + const result = await client.get(options, keyPrefix + key); + + // If the key does not exist, return null. + if (!result) { + return null; + } + + // Redis stores strings, so we need to parse the JSON. + return JSON.parse(result); + }, + async set(key, cacheHandlerValue) { + // Ensure that the client is ready before using it. + assertClientIsReady(); + + // Create a new AbortSignal with a timeout for the Redis operation. + const options = commandOptions({ signal: AbortSignal.timeout(timeoutMs) }); + + // Redis stores strings, so we need to stringify the JSON. + const setOperation = client.set(options, keyPrefix + key, JSON.stringify(cacheHandlerValue)); + + // If the cacheHandlerValue has a lifespan, set the automatic expiration. + // cacheHandlerValue.lifespan can be null if the value is the page from the Pages Router without getStaticPaths or with `fallback: false` + // so, we need to check if it exists before using it + const expireOperation = cacheHandlerValue.lifespan + ? client.expireAt(options, keyPrefix + key, cacheHandlerValue.lifespan.expireAt) + : undefined; + + // If the cache handler value has tags, set the tags. + // We store them separately to save time to retrieve them in the `revalidateTag` method. + const setTagsOperation = cacheHandlerValue.tags.length + ? client.hSet(options, keyPrefix + sharedTagsKey, { + [key]: JSON.stringify(cacheHandlerValue.tags), + }) + : undefined; + + // Wait for all operations to complete. + await Promise.all([setOperation, expireOperation, setTagsOperation]); + }, + async revalidateTag(tag) { + // Ensure that the client is ready before using it. + assertClientIsReady(); + + // Create a new AbortSignal with a timeout for the Redis operation. + const getOptions = commandOptions({ signal: AbortSignal.timeout(timeoutMs) }); + + // Get all keys and their tags from Redis from the hash map we've created in the `set` method. + const remoteTags = await client.hGetAll(getOptions, keyPrefix + sharedTagsKey); + + // Create a map from the tags. + const tagsMap = new Map(Object.entries(remoteTags)); + + // Create an array of keys to delete. + const keysToDelete = []; + + // Create an array of tags to delete form the hash map. + const tagsToDelete = []; + + // Iterate over all keys and their tags. + for (const [key, tagsString] of tagsMap) { + // In the set method, we store tags as a stringified array. + // So, we need to parse it back to an array. + const tags = JSON.parse(tagsString); + + // If the tags include the specified tag, add the key to the delete list. + if (tags.includes(tag)) { + // Key must be prefixed because we use the key prefix in the set method. + keysToDelete.push(keyPrefix + key); + // Set an empty string as the value for the revalidated tag. + tagsToDelete.push(key); + } + } + + // Create a new AbortSignal with a timeout for the Redis operation. + const options = commandOptions({ signal: AbortSignal.timeout(timeoutMs) }); + + // Delete the keys from Redis. + const deleteKeysOperation = client.del(options, keysToDelete); + + // Update the tags in Redis by deleting the revalidated tags. + const updateTagsOperation = client.hDel(options, keyPrefix + sharedTagsKey, tagsToDelete); + + // Wait for all operations to complete. + await Promise.all([deleteKeysOperation, updateTagsOperation]); + }, + }; + + // Create a local LRU handler. + // This handler is used as a fallback for the Redis handler. + const localHandler = createLruHandler(); + + return { + // The order of the handlers is important. + // The CacheHandler will run get methods in the order of the handlers array. + // Other methods will be run in parallel. + handlers: [customRedisHandler, localHandler], + }; +}); + +export default CacheHandler; +``` + +In this example, we assume that you have a Redis instance running on `localhost:6379` ahead of time before you build your Next.js app. If you want to build your Next.js app without a Redis cache connection, see how to disable the Handler during a build stage in the [Building the App Without Redis Cache Connection](/configuration/opt-out-cache-on-build) section. diff --git a/docs/cache-handler-docs/src/pages/usage/on-demand-revalidation.mdx b/docs/cache-handler-docs/src/pages/usage/on-demand-revalidation.mdx new file mode 100644 index 00000000..dd13b235 --- /dev/null +++ b/docs/cache-handler-docs/src/pages/usage/on-demand-revalidation.mdx @@ -0,0 +1,17 @@ +# On-demand revalidation + +Next.js provides a way to revalidate a page or a result of a `fetch` call on demand. `@neshca/cache-handler` supports this feature with one limitation: `revalidatePath` only works for the Pages Router. + +## Usage + +### Pages Router + +The Pages Router supports only the `revalidatePath` option. + +See [Using On-Demand Revalidation](https://nextjs.org/docs/pages/building-your-application/data-fetching/incremental-static-regeneration#using-on-demand-revalidation) in the Next.js documentation. + +### App Router + +The App Router supports both `revalidatePath` and `revalidateTag` functions. However due to current limitations, `revalidatePath` is disabled for the App Router. + +See [On-demand Revalidation](https://nextjs.org/docs/app/building-your-application/data-fetching/fetching-caching-and-revalidating#on-demand-revalidation) in the Next.js documentation. diff --git a/docs/cache-handler-docs/theme.config.jsx b/docs/cache-handler-docs/theme.config.jsx index 921ae8f7..76aa51e8 100644 --- a/docs/cache-handler-docs/theme.config.jsx +++ b/docs/cache-handler-docs/theme.config.jsx @@ -14,6 +14,9 @@ function Head() { content={frontMatter.description || '@neshca/cache-handler documentation'} property="og:description" /> + + + ); } @@ -50,10 +53,10 @@ export default { ), }, banner: { - key: '0.6.0-release', + key: 'version-1.0.0', text: ( - 🎉 Next.js stabilized the API, and we are almost there, just a few steps before version 1.0.0! + 🎉 1.0.0 is out! It features an improved API and TTL by default. ), }, diff --git a/internal/next-common/src/next-common.ts b/internal/next-common/src/next-common.ts index 6f33b16f..cd3301cc 100644 --- a/internal/next-common/src/next-common.ts +++ b/internal/next-common/src/next-common.ts @@ -1,12 +1,13 @@ -/* eslint-disable @typescript-eslint/method-signature-style -- to use a method style */ -// eslint-disable-next-line unicorn/prefer-node-protocol -- to overcome tsup's limitations import type { OutgoingHttpHeaders } from 'http'; import type { RouteMetadata as NextRouteMetadata } from 'next/dist/export/routes/types'; -import type { CacheHandler } from 'next/dist/server/lib/incremental-cache'; -import type IncrementalCache from 'next/dist/server/lib/incremental-cache/file-system-cache'; +import type { CacheHandler, CacheHandlerValue as NextCacheHandlerValue } from 'next/dist/server/lib/incremental-cache'; +import type FileSystemCache from 'next/dist/server/lib/incremental-cache/file-system-cache'; +import type { Revalidate } from 'next/dist/server/lib/revalidate'; -export type { CacheHandler, CacheHandlerContext, CacheHandlerValue } from 'next/dist/server/lib/incremental-cache'; +export type { PrerenderManifest } from 'next/dist/build'; +export type { Revalidate } from 'next/dist/server/lib/revalidate'; +export type { CacheHandler, CacheHandlerContext } from 'next/dist/server/lib/incremental-cache'; export type { CachedRedirectValue, CachedRouteValue, @@ -17,13 +18,63 @@ export type { IncrementalCacheKindHint, } from 'next/dist/server/response-cache/types'; +/** + * A set of time periods and timestamps for controlling cache behavior. + */ +export type LifespanParameters = { + /** + * The Unix timestamp (in seconds) for when the cache entry was last modified. + */ + readonly lastModifiedAt: number; + /** + * The Unix timestamp (in seconds) for when the cache entry entry becomes stale. + * After this time, the entry is considered staled and may be used. + */ + readonly staleAt: number; + /** + * The Unix timestamp (in seconds) for when the cache entry must be removed from the cache. + * After this time, the entry is considered expired and should not be used. + */ + readonly expireAt: number; + /** + * Time in seconds before the cache entry becomes stale. + */ + readonly staleAge: number; + /** + * Time in seconds before the cache entry becomes expired. + */ + readonly expireAge: number; + /** + * Value from Next.js revalidate option. May be false if the page has no revalidate option or the revalidate option is set to false. + */ + readonly revalidate: Revalidate | undefined; +}; + +export type CacheHandlerValue = NextCacheHandlerValue & { + /** + * Timestamp in milliseconds when the cache entry was last modified. + */ + lastModified: number; + /** + * Tags associated with the cache entry. They are used for on-demand revalidation. + */ + tags: Readonly; + /** + * The lifespan parameters for the cache entry. + * + * Null for pages with `fallback: false` in `getStaticPaths`. + * Consider these pages as always fresh and never stale. + */ + lifespan: LifespanParameters | null; +}; + export type RouteMetadata = NextRouteMetadata; export type NonNullableRouteMetadata = { [K in keyof RouteMetadata]: NonNullable; }; -export type FileSystemCacheContext = ConstructorParameters[0]; +export type FileSystemCacheContext = ConstructorParameters[0]; export type CacheHandlerParametersGet = Parameters; diff --git a/internal/next-lru-cache/src/cache-types/cache-string-value.ts b/internal/next-lru-cache/src/cache-types/cache-string-value.ts index 9dba6077..321f239c 100644 --- a/internal/next-lru-cache/src/cache-types/cache-string-value.ts +++ b/internal/next-lru-cache/src/cache-types/cache-string-value.ts @@ -7,6 +7,6 @@ function calculateStringSize(value: string): number { return value.length; } -export function createCache(options?: LruCacheOptions): LRUCache { +export default function createCacheStore(options?: LruCacheOptions): LRUCache { return createConfiguredCache(calculateStringSize, options); } diff --git a/internal/next-lru-cache/src/cache-types/next-cache-handler-value.ts b/internal/next-lru-cache/src/cache-types/next-cache-handler-value.ts index ef9e1f68..ce96486a 100644 --- a/internal/next-lru-cache/src/cache-types/next-cache-handler-value.ts +++ b/internal/next-lru-cache/src/cache-types/next-cache-handler-value.ts @@ -38,8 +38,6 @@ function calculateObjectSize({ value }: CacheHandlerValue): number { export type { LruCacheOptions }; -export function createCache( - options?: LruCacheOptions, -): LRUCache { +export default function createCacheStore(options?: LruCacheOptions): LRUCache { return createConfiguredCache(calculateObjectSize, options); } diff --git a/internal/next-lru-cache/src/create-configured-cache.ts b/internal/next-lru-cache/src/create-configured-cache.ts index 428a22ca..c9e025b3 100644 --- a/internal/next-lru-cache/src/create-configured-cache.ts +++ b/internal/next-lru-cache/src/create-configured-cache.ts @@ -23,7 +23,7 @@ const DEFAULT_OPTIONS: LruCacheOptions = { }; /** - * Creates a configured LRU cache. + * Creates a configured LRUCache. * * @param calculateSizeCallback - A callback function to calculate the size of cache items. * diff --git a/package-lock.json b/package-lock.json index fd6d966e..da6bb6f5 100644 --- a/package-lock.json +++ b/package-lock.json @@ -43,7 +43,6 @@ }, "devDependencies": { "@neshca/cache-handler": "*", - "@neshca/json-replacer-reviver": "*", "@next/eslint-plugin-next": "14.1.1-canary.27", "@playwright/test": "1.41.2", "@repo/eslint-config": "*", @@ -62,6 +61,15 @@ "typescript": "5.3.3" } }, + "apps/cache-testing/node_modules/@types/node": { + "version": "20.11.20", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.20.tgz", + "integrity": "sha512-7/rR21OS+fq8IyHTgtLkDK949uzsa6n8BkziAKtPVpugIkO6D+/ooXMvzXxDnZrmtXVfjb1bKQafYpb8s89LOg==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "apps/cache-testing/node_modules/next": { "version": "14.1.1-canary.27", "resolved": "https://registry.npmjs.org/next/-/next-14.1.1-canary.27.tgz", @@ -137,6 +145,15 @@ "glob": "10.3.10" } }, + "docs/cache-handler-docs/node_modules/@types/node": { + "version": "20.11.20", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.20.tgz", + "integrity": "sha512-7/rR21OS+fq8IyHTgtLkDK949uzsa6n8BkziAKtPVpugIkO6D+/ooXMvzXxDnZrmtXVfjb1bKQafYpb8s89LOg==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "docs/cache-handler-docs/node_modules/nextra": { "version": "2.13.3", "resolved": "https://registry.npmjs.org/nextra/-/nextra-2.13.3.tgz", @@ -234,6 +251,15 @@ "typescript": "5.3.3" } }, + "internal/backend/node_modules/@types/node": { + "version": "20.11.20", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.20.tgz", + "integrity": "sha512-7/rR21OS+fq8IyHTgtLkDK949uzsa6n8BkziAKtPVpugIkO6D+/ooXMvzXxDnZrmtXVfjb1bKQafYpb8s89LOg==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "internal/eslint-config": { "name": "@repo/eslint-config", "version": "0.0.0", @@ -258,34 +284,6 @@ "glob": "10.3.10" } }, - "internal/eslint-config/node_modules/@typescript-eslint/parser": { - "version": "6.21.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.21.0.tgz", - "integrity": "sha512-tbsV1jPne5CkFQCgPBcDOt30ItF7aJoZL997JSF7MhGQqOeT3svWRYxiqlfA5RUdlHN6Fi+EI9bxqbdyAUZjYQ==", - "dev": true, - "dependencies": { - "@typescript-eslint/scope-manager": "6.21.0", - "@typescript-eslint/types": "6.21.0", - "@typescript-eslint/typescript-estree": "6.21.0", - "@typescript-eslint/visitor-keys": "6.21.0", - "debug": "^4.3.4" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^7.0.0 || ^8.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, "internal/eslint-config/node_modules/@vercel/style-guide": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/@vercel/style-guide/-/style-guide-5.2.0.tgz", @@ -371,6 +369,34 @@ } } }, + "internal/eslint-config/node_modules/@vercel/style-guide/node_modules/@typescript-eslint/parser": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.21.0.tgz", + "integrity": "sha512-tbsV1jPne5CkFQCgPBcDOt30ItF7aJoZL997JSF7MhGQqOeT3svWRYxiqlfA5RUdlHN6Fi+EI9bxqbdyAUZjYQ==", + "dev": true, + "dependencies": { + "@typescript-eslint/scope-manager": "6.21.0", + "@typescript-eslint/types": "6.21.0", + "@typescript-eslint/typescript-estree": "6.21.0", + "@typescript-eslint/visitor-keys": "6.21.0", + "debug": "^4.3.4" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, "internal/next-common": { "name": "@neshca/next-common", "version": "0.0.0", @@ -385,6 +411,15 @@ "typescript": "5.3.3" } }, + "internal/next-common/node_modules/@types/node": { + "version": "20.11.20", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.20.tgz", + "integrity": "sha512-7/rR21OS+fq8IyHTgtLkDK949uzsa6n8BkziAKtPVpugIkO6D+/ooXMvzXxDnZrmtXVfjb1bKQafYpb8s89LOg==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "internal/next-common/node_modules/next": { "version": "14.1.1-canary.27", "resolved": "https://registry.npmjs.org/next/-/next-14.1.1-canary.27.tgz", @@ -445,6 +480,15 @@ "typescript": "5.3.3" } }, + "internal/next-lru-cache/node_modules/@types/node": { + "version": "20.11.20", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.20.tgz", + "integrity": "sha512-7/rR21OS+fq8IyHTgtLkDK949uzsa6n8BkziAKtPVpugIkO6D+/ooXMvzXxDnZrmtXVfjb1bKQafYpb8s89LOg==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "internal/prettier-config": { "name": "@repo/prettier-config", "version": "0.0.0", @@ -1878,11 +1922,6 @@ "node": ">=14" } }, - "node_modules/@fastify/deepmerge": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/@fastify/deepmerge/-/deepmerge-1.3.0.tgz", - "integrity": "sha512-J8TOSBq3SoZbDhM9+R/u77hP93gz/rajSA+K2kGyijPpORPWUXHUpTaleoj+92As0S9uPRP7Oi8IqMf0u+ro6A==" - }, "node_modules/@fastify/error": { "version": "3.4.1", "resolved": "https://registry.npmjs.org/@fastify/error/-/error-3.4.1.tgz", @@ -1896,6 +1935,14 @@ "fast-json-stringify": "^5.7.0" } }, + "node_modules/@fastify/merge-json-schemas": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@fastify/merge-json-schemas/-/merge-json-schemas-0.1.1.tgz", + "integrity": "sha512-fERDVz7topgNjtXsJTTW1JKLy0rhuLRcquYqNR9rF7OcVpCa2OVW49ZPDIhaRRCaUuvVxI+N416xUoF76HNSXA==", + "dependencies": { + "fast-deep-equal": "^3.1.3" + } + }, "node_modules/@headlessui/react": { "version": "1.7.18", "resolved": "https://registry.npmjs.org/@headlessui/react/-/react-1.7.18.tgz", @@ -1990,9 +2037,9 @@ } }, "node_modules/@jridgewell/gen-mapping": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", - "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==", + "version": "0.3.4", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.4.tgz", + "integrity": "sha512-Oud2QPM5dHviZNn4y/WhhYKSXksv+1xLEIsNrAbGcFzUN3ubqWRFT5gwPchNc5NuzILOU4tPBDTZ4VwhL8Y7cw==", "dev": true, "dependencies": { "@jridgewell/set-array": "^1.0.1", @@ -2004,9 +2051,9 @@ } }, "node_modules/@jridgewell/resolve-uri": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz", - "integrity": "sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", "dev": true, "engines": { "node": ">=6.0.0" @@ -2028,9 +2075,9 @@ "dev": true }, "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.22", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.22.tgz", - "integrity": "sha512-Wf963MzWtA2sjrNt+g18IAln9lKnlRp+K2eH4jjIoF1wYeq3aMREpG09xhlhdzS0EjwU7qmUJYangWa+151vZw==", + "version": "0.3.23", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.23.tgz", + "integrity": "sha512-9/4foRoUKp8s96tSkh8DlAAc5A0Ty8vLXld+l9gjKKY6ckwI8G15f0hskGmuLZu78ZlGa1vtsfOa+lnB4vG6Jg==", "dev": true, "dependencies": { "@jridgewell/resolve-uri": "^3.1.0", @@ -2048,11 +2095,6 @@ "fs-extra": "^8.1.0" } }, - "node_modules/@manypkg/find-root/node_modules/@types/node": { - "version": "12.20.55", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", - "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" - }, "node_modules/@manypkg/find-root/node_modules/fs-extra": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", @@ -2819,6 +2861,33 @@ "node": ">=8" } }, + "node_modules/@pm2/agent/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@pm2/agent/node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, "node_modules/@pm2/agent/node_modules/supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", @@ -2867,6 +2936,33 @@ "integrity": "sha512-JEPTiaOt9f04oa6NOkc4aH+nVp5I3wEjpHbIPqfgCdD5v5bUzy7xQqwcVO2aDQgOWhI28da57HksMrzK9HlRxg==", "dev": true }, + "node_modules/@pm2/io/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@pm2/io/node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, "node_modules/@pm2/io/node_modules/signal-exit": { "version": "3.0.7", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", @@ -2994,9 +3090,9 @@ "link": true }, "node_modules/@rollup/rollup-android-arm-eabi": { - "version": "4.9.6", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.9.6.tgz", - "integrity": "sha512-MVNXSSYN6QXOulbHpLMKYi60ppyO13W9my1qogeiAqtjb2yR4LSmfU2+POvDkLzhjYLXz9Rf9+9a3zFHW1Lecg==", + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.12.0.tgz", + "integrity": "sha512-+ac02NL/2TCKRrJu2wffk1kZ+RyqxVUlbjSagNgPm94frxtr+XDL12E5Ll1enWskLrtrZ2r8L3wED1orIibV/w==", "cpu": [ "arm" ], @@ -3007,9 +3103,9 @@ ] }, "node_modules/@rollup/rollup-android-arm64": { - "version": "4.9.6", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.9.6.tgz", - "integrity": "sha512-T14aNLpqJ5wzKNf5jEDpv5zgyIqcpn1MlwCrUXLrwoADr2RkWA0vOWP4XxbO9aiO3dvMCQICZdKeDrFl7UMClw==", + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.12.0.tgz", + "integrity": "sha512-OBqcX2BMe6nvjQ0Nyp7cC90cnumt8PXmO7Dp3gfAju/6YwG0Tj74z1vKrfRz7qAv23nBcYM8BCbhrsWqO7PzQQ==", "cpu": [ "arm64" ], @@ -3020,9 +3116,9 @@ ] }, "node_modules/@rollup/rollup-darwin-arm64": { - "version": "4.9.6", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.9.6.tgz", - "integrity": "sha512-CqNNAyhRkTbo8VVZ5R85X73H3R5NX9ONnKbXuHisGWC0qRbTTxnF1U4V9NafzJbgGM0sHZpdO83pLPzq8uOZFw==", + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.12.0.tgz", + "integrity": "sha512-X64tZd8dRE/QTrBIEs63kaOBG0b5GVEd3ccoLtyf6IdXtHdh8h+I56C2yC3PtC9Ucnv0CpNFJLqKFVgCYe0lOQ==", "cpu": [ "arm64" ], @@ -3033,9 +3129,9 @@ ] }, "node_modules/@rollup/rollup-darwin-x64": { - "version": "4.9.6", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.9.6.tgz", - "integrity": "sha512-zRDtdJuRvA1dc9Mp6BWYqAsU5oeLixdfUvkTHuiYOHwqYuQ4YgSmi6+/lPvSsqc/I0Omw3DdICx4Tfacdzmhog==", + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.12.0.tgz", + "integrity": "sha512-cc71KUZoVbUJmGP2cOuiZ9HSOP14AzBAThn3OU+9LcA1+IUqswJyR1cAJj3Mg55HbjZP6OLAIscbQsQLrpgTOg==", "cpu": [ "x64" ], @@ -3046,9 +3142,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm-gnueabihf": { - "version": "4.9.6", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.9.6.tgz", - "integrity": "sha512-oNk8YXDDnNyG4qlNb6is1ojTOGL/tRhbbKeE/YuccItzerEZT68Z9gHrY3ROh7axDc974+zYAPxK5SH0j/G+QQ==", + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.12.0.tgz", + "integrity": "sha512-a6w/Y3hyyO6GlpKL2xJ4IOh/7d+APaqLYdMf86xnczU3nurFTaVN9s9jOXQg97BE4nYm/7Ga51rjec5nfRdrvA==", "cpu": [ "arm" ], @@ -3059,9 +3155,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-gnu": { - "version": "4.9.6", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.9.6.tgz", - "integrity": "sha512-Z3O60yxPtuCYobrtzjo0wlmvDdx2qZfeAWTyfOjEDqd08kthDKexLpV97KfAeUXPosENKd8uyJMRDfFMxcYkDQ==", + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.12.0.tgz", + "integrity": "sha512-0fZBq27b+D7Ar5CQMofVN8sggOVhEtzFUwOwPppQt0k+VR+7UHMZZY4y+64WJ06XOhBTKXtQB/Sv0NwQMXyNAA==", "cpu": [ "arm64" ], @@ -3072,9 +3168,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-musl": { - "version": "4.9.6", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.9.6.tgz", - "integrity": "sha512-gpiG0qQJNdYEVad+1iAsGAbgAnZ8j07FapmnIAQgODKcOTjLEWM9sRb+MbQyVsYCnA0Im6M6QIq6ax7liws6eQ==", + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.12.0.tgz", + "integrity": "sha512-eTvzUS3hhhlgeAv6bfigekzWZjaEX9xP9HhxB0Dvrdbkk5w/b+1Sxct2ZuDxNJKzsRStSq1EaEkVSEe7A7ipgQ==", "cpu": [ "arm64" ], @@ -3085,9 +3181,9 @@ ] }, "node_modules/@rollup/rollup-linux-riscv64-gnu": { - "version": "4.9.6", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.9.6.tgz", - "integrity": "sha512-+uCOcvVmFUYvVDr27aiyun9WgZk0tXe7ThuzoUTAukZJOwS5MrGbmSlNOhx1j80GdpqbOty05XqSl5w4dQvcOA==", + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.12.0.tgz", + "integrity": "sha512-ix+qAB9qmrCRiaO71VFfY8rkiAZJL8zQRXveS27HS+pKdjwUfEhqo2+YF2oI+H/22Xsiski+qqwIBxVewLK7sw==", "cpu": [ "riscv64" ], @@ -3098,9 +3194,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-gnu": { - "version": "4.9.6", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.9.6.tgz", - "integrity": "sha512-HUNqM32dGzfBKuaDUBqFB7tP6VMN74eLZ33Q9Y1TBqRDn+qDonkAUyKWwF9BR9unV7QUzffLnz9GrnKvMqC/fw==", + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.12.0.tgz", + "integrity": "sha512-TenQhZVOtw/3qKOPa7d+QgkeM6xY0LtwzR8OplmyL5LrgTWIXpTQg2Q2ycBf8jm+SFW2Wt/DTn1gf7nFp3ssVA==", "cpu": [ "x64" ], @@ -3111,9 +3207,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-musl": { - "version": "4.9.6", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.9.6.tgz", - "integrity": "sha512-ch7M+9Tr5R4FK40FHQk8VnML0Szi2KRujUgHXd/HjuH9ifH72GUmw6lStZBo3c3GB82vHa0ZoUfjfcM7JiiMrQ==", + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.12.0.tgz", + "integrity": "sha512-LfFdRhNnW0zdMvdCb5FNuWlls2WbbSridJvxOvYWgSBOYZtgBfW9UGNJG//rwMqTX1xQE9BAodvMH9tAusKDUw==", "cpu": [ "x64" ], @@ -3124,9 +3220,9 @@ ] }, "node_modules/@rollup/rollup-win32-arm64-msvc": { - "version": "4.9.6", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.9.6.tgz", - "integrity": "sha512-VD6qnR99dhmTQ1mJhIzXsRcTBvTjbfbGGwKAHcu+52cVl15AC/kplkhxzW/uT0Xl62Y/meBKDZvoJSJN+vTeGA==", + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.12.0.tgz", + "integrity": "sha512-JPDxovheWNp6d7AHCgsUlkuCKvtu3RB55iNEkaQcf0ttsDU/JZF+iQnYcQJSk/7PtT4mjjVG8N1kpwnI9SLYaw==", "cpu": [ "arm64" ], @@ -3137,9 +3233,9 @@ ] }, "node_modules/@rollup/rollup-win32-ia32-msvc": { - "version": "4.9.6", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.9.6.tgz", - "integrity": "sha512-J9AFDq/xiRI58eR2NIDfyVmTYGyIZmRcvcAoJ48oDld/NTR8wyiPUu2X/v1navJ+N/FGg68LEbX3Ejd6l8B7MQ==", + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.12.0.tgz", + "integrity": "sha512-fjtuvMWRGJn1oZacG8IPnzIV6GF2/XG+h71FKn76OYFqySXInJtseAqdprVTDTyqPxQOG9Exak5/E9Z3+EJ8ZA==", "cpu": [ "ia32" ], @@ -3150,9 +3246,9 @@ ] }, "node_modules/@rollup/rollup-win32-x64-msvc": { - "version": "4.9.6", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.9.6.tgz", - "integrity": "sha512-jqzNLhNDvIZOrt69Ce4UjGRpXJBzhUBzawMwnaDAwyHriki3XollsewxWzOzz+4yOFDkuJHtTsZFwMxhYJWmLQ==", + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.12.0.tgz", + "integrity": "sha512-ZYmr5mS2wd4Dew/JjT0Fqi2NPB/ZhZ2VvPp7SmvPZb4Y1CG/LRcS6tcRo2cYU7zLK5A7cdbhWnnWmUjoI4qapg==", "cpu": [ "x64" ], @@ -3177,11 +3273,11 @@ } }, "node_modules/@tanstack/react-virtual": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@tanstack/react-virtual/-/react-virtual-3.0.4.tgz", - "integrity": "sha512-tiqKW/e2MJVCr7/pRUXulpkyxllaOclkHNfhKTo4pmHjJIqnhMfwIjc1Q1R0Un3PI3kQywywu/791c8z9u0qeA==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@tanstack/react-virtual/-/react-virtual-3.1.2.tgz", + "integrity": "sha512-qibmxtctgOZo2I+3Rw5GR9kXgaa15U5r3/idDY1ItUKW15UK7GhCfyIfE6qYuJ1fxQF6dJDsD8SbpPyuJgpxuA==", "dependencies": { - "@tanstack/virtual-core": "3.0.0" + "@tanstack/virtual-core": "3.1.2" }, "funding": { "type": "github", @@ -3193,9 +3289,9 @@ } }, "node_modules/@tanstack/virtual-core": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@tanstack/virtual-core/-/virtual-core-3.0.0.tgz", - "integrity": "sha512-SYXOBTjJb05rXa2vl55TTwO40A6wKu0R5i1qQwhJYNDIqaIGF7D0HsLw+pJAyi2OvntlEIVusx3xtbbgSUi6zg==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@tanstack/virtual-core/-/virtual-core-3.1.2.tgz", + "integrity": "sha512-DATZJs8iejkIUqXZe6ruDAnjFo78BKnIIgqQZrc7CmEFqfLEN/TPD91n4hRfo6hpRB6xC00bwKxv7vdjFNEmOg==", "funding": { "type": "github", "url": "https://github.com/sponsors/tannerlinsley" @@ -3278,9 +3374,9 @@ "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==" }, "node_modules/@types/estree-jsx": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@types/estree-jsx/-/estree-jsx-1.0.4.tgz", - "integrity": "sha512-5idy3hvI9lAMqsyilBM+N+boaCf1MgoefbDxN6KEO5aK17TOHwFAYT9sjxzeKAiIWRUBgLxmZ9mPcnzZXtTcRQ==", + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@types/estree-jsx/-/estree-jsx-1.0.5.tgz", + "integrity": "sha512-52CcUVNFyfb1A2ALocQw/Dd1BQFNmSdkuC3BkZ6iqhdMfQz7JWOFRuJFloOzjk+6WijU56m9oKXFAXc7o3Towg==", "dependencies": { "@types/estree": "*" } @@ -3339,12 +3435,9 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "20.11.20", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.20.tgz", - "integrity": "sha512-7/rR21OS+fq8IyHTgtLkDK949uzsa6n8BkziAKtPVpugIkO6D+/ooXMvzXxDnZrmtXVfjb1bKQafYpb8s89LOg==", - "dependencies": { - "undici-types": "~5.26.4" - } + "version": "12.20.55", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", + "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" }, "node_modules/@types/node-fetch": { "version": "2.6.11", @@ -3391,9 +3484,9 @@ "integrity": "sha512-WZLiwShhwLRmeV6zH+GkbOFT6Z6VklCItrDioxUnv+u4Ll+8vKeFySoFyK/0ctcRpOmwAicELfmys1sDc/Rw+A==" }, "node_modules/@types/semver": { - "version": "7.5.6", - "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.6.tgz", - "integrity": "sha512-dn1l8LaMea/IjDoHNd9J52uBbInB796CDffS6VdIxvqYCPSG0V0DzHp76GpaWnlhg88uYyPbXCDIowa86ybd5A==" + "version": "7.5.8", + "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.8.tgz", + "integrity": "sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==" }, "node_modules/@types/unist": { "version": "2.0.10", @@ -3591,7 +3684,6 @@ "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-7.0.2.tgz", "integrity": "sha512-GdwfDglCxSmU+QTS9vhz2Sop46ebNCXpPPvsByK7hu0rFGRHL+AusKQJ7SoN+LbLh6APFpQwHKmDSwN35Z700Q==", "dev": true, - "peer": true, "dependencies": { "@typescript-eslint/scope-manager": "7.0.2", "@typescript-eslint/types": "7.0.2", @@ -3620,7 +3712,6 @@ "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-7.0.2.tgz", "integrity": "sha512-l6sa2jF3h+qgN2qUMjVR3uCNGjWw4ahGfzIYsCtFrQJCjhbrDPdiihYT8FnnqFwsWX+20hK592yX9I2rxKTP4g==", "dev": true, - "peer": true, "dependencies": { "@typescript-eslint/types": "7.0.2", "@typescript-eslint/visitor-keys": "7.0.2" @@ -3638,7 +3729,6 @@ "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.0.2.tgz", "integrity": "sha512-ZzcCQHj4JaXFjdOql6adYV4B/oFOFjPOC9XYwCaZFRvqN8Llfvv4gSxrkQkd2u4Ci62i2c6W6gkDwQJDaRc4nA==", "dev": true, - "peer": true, "engines": { "node": "^16.0.0 || >=18.0.0" }, @@ -3652,7 +3742,6 @@ "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-7.0.2.tgz", "integrity": "sha512-3AMc8khTcELFWcKcPc0xiLviEvvfzATpdPj/DXuOGIdQIIFybf4DMT1vKRbuAEOFMwhWt7NFLXRkbjsvKZQyvw==", "dev": true, - "peer": true, "dependencies": { "@typescript-eslint/types": "7.0.2", "@typescript-eslint/visitor-keys": "7.0.2", @@ -3681,7 +3770,6 @@ "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-7.0.2.tgz", "integrity": "sha512-8Y+YiBmqPighbm5xA2k4wKTxRzx9EkBu7Rlw+WHqMvRJ3RPz/BMBO9b2ru0LUNmXg120PHUXD5+SWFy2R8DqlQ==", "dev": true, - "peer": true, "dependencies": { "@typescript-eslint/types": "7.0.2", "eslint-visitor-keys": "^3.4.1" @@ -3699,7 +3787,6 @@ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", "dev": true, - "peer": true, "dependencies": { "balanced-match": "^1.0.0" } @@ -3709,7 +3796,6 @@ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", "dev": true, - "peer": true, "dependencies": { "brace-expansion": "^2.0.1" }, @@ -4100,12 +4186,15 @@ } }, "node_modules/array-buffer-byte-length": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.0.tgz", - "integrity": "sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.1.tgz", + "integrity": "sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg==", "dependencies": { - "call-bind": "^1.0.2", - "is-array-buffer": "^3.0.1" + "call-bind": "^1.0.5", + "is-array-buffer": "^3.0.4" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -4138,17 +4227,36 @@ "node": ">=8" } }, - "node_modules/array.prototype.findlastindex": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.3.tgz", - "integrity": "sha512-LzLoiOMAxvy+Gd3BAq3B7VeIgPdo+Q8hthvKtXybMvRV0jrXfJM/t8mw7nNlpEcVlVUnCnM2KSX4XU5HmpodOA==", + "node_modules/array.prototype.filter": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/array.prototype.filter/-/array.prototype.filter-1.0.3.tgz", + "integrity": "sha512-VizNcj/RGJiUyQBgzwxzE5oHdeuXY5hSbbmKMlphj1cy1Vl7Pn2asCGbSrru6hSQjmCzqTBPVWAF/whmEOVHbw==", "dev": true, "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.2.0", "es-abstract": "^1.22.1", - "es-shim-unscopables": "^1.0.0", - "get-intrinsic": "^1.2.1" + "es-array-method-boxes-properly": "^1.0.0", + "is-string": "^1.0.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.findlastindex": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.4.tgz", + "integrity": "sha512-hzvSHUshSpCflDR1QMUBLHGHP1VIEBegT4pix9H/Z92Xw3ySoy6c2qh7lJWTJnRJ8JCZ9bJNCgTyYaJGcJu6xQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.5", + "define-properties": "^1.2.1", + "es-abstract": "^1.22.3", + "es-errors": "^1.3.0", + "es-shim-unscopables": "^1.0.2" }, "engines": { "node": ">= 0.4" @@ -4193,29 +4301,30 @@ } }, "node_modules/array.prototype.tosorted": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/array.prototype.tosorted/-/array.prototype.tosorted-1.1.2.tgz", - "integrity": "sha512-HuQCHOlk1Weat5jzStICBCd83NxiIMwqDg/dHEsoefabn/hJRj5pVdWcPUSpRrwhwxZOsQassMpgN/xRYFBMIg==", + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/array.prototype.tosorted/-/array.prototype.tosorted-1.1.3.tgz", + "integrity": "sha512-/DdH4TiTmOKzyQbp/eadcCVexiCb36xJg7HshYOYJnNZFDj33GEv0P7GxsynpShhq4OLYJzbGcBDkLsDt7MnNg==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "es-shim-unscopables": "^1.0.0", - "get-intrinsic": "^1.2.1" + "call-bind": "^1.0.5", + "define-properties": "^1.2.1", + "es-abstract": "^1.22.3", + "es-errors": "^1.1.0", + "es-shim-unscopables": "^1.0.2" } }, "node_modules/arraybuffer.prototype.slice": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.2.tgz", - "integrity": "sha512-yMBKppFur/fbHu9/6USUe03bZ4knMYiwFBcyiaXB8Go0qNehwX6inYPzK9U0NeQvGxKthcmHcaR8P5MStSRBAw==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.3.tgz", + "integrity": "sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A==", "dependencies": { - "array-buffer-byte-length": "^1.0.0", - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "get-intrinsic": "^1.2.1", - "is-array-buffer": "^3.0.2", + "array-buffer-byte-length": "^1.0.1", + "call-bind": "^1.0.5", + "define-properties": "^1.2.1", + "es-abstract": "^1.22.3", + "es-errors": "^1.2.1", + "get-intrinsic": "^1.2.3", + "is-array-buffer": "^3.0.4", "is-shared-array-buffer": "^1.0.2" }, "engines": { @@ -4311,9 +4420,12 @@ } }, "node_modules/available-typed-arrays": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.6.tgz", - "integrity": "sha512-j1QzY8iPNPG4o4xmO3ptzpRxTciqD3MgEHtifP/YnJpIo58Xu+ne4BejlbkuaLfXn/nz6HFiw29bLpj2PNMdGg==", + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", + "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==", + "dependencies": { + "possible-typed-array-names": "^1.0.0" + }, "engines": { "node": ">= 0.4" }, @@ -4471,9 +4583,9 @@ } }, "node_modules/browserslist": { - "version": "4.22.3", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.22.3.tgz", - "integrity": "sha512-UAp55yfwNv0klWNapjs/ktHoguxuQNGnOzxYmfnXIS+8AsRDZkSDxg7R1AX3GKzn078SBI5dzwzj/Yx0Or0e3A==", + "version": "4.23.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz", + "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==", "dev": true, "funding": [ { @@ -4490,8 +4602,8 @@ } ], "dependencies": { - "caniuse-lite": "^1.0.30001580", - "electron-to-chromium": "^1.4.648", + "caniuse-lite": "^1.0.30001587", + "electron-to-chromium": "^1.4.668", "node-releases": "^2.0.14", "update-browserslist-db": "^1.0.13" }, @@ -4587,13 +4699,18 @@ "link": true }, "node_modules/call-bind": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.5.tgz", - "integrity": "sha512-C3nQxfFZxFRVoJoGKKI8y3MOEo129NQ+FgQ08iye+Mk4zNZZGdjfs06bVTr+DBSlA66Q2VEcMki/cUCP4SercQ==", + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.7.tgz", + "integrity": "sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==", "dependencies": { + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", "function-bind": "^1.1.2", - "get-intrinsic": "^1.2.1", - "set-function-length": "^1.1.1" + "get-intrinsic": "^1.2.4", + "set-function-length": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -4633,9 +4750,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001583", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001583.tgz", - "integrity": "sha512-acWTYaha8xfhA/Du/z4sNZjHUWjkiuoAi2LM+T/aL+kemKQgPT1xBb/YKjlQ0Qo8gvbHsGNplrEJ+9G3gL7i4Q==", + "version": "1.0.30001589", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001589.tgz", + "integrity": "sha512-vNQWS6kI+q6sBlHbh71IIeC+sRwK2N3EDySc/updIGhIee2x5z00J4c1242/5/d6EpEMdOnk/m+6tuk4/tcsqg==", "funding": [ { "type": "opencollective", @@ -4738,16 +4855,10 @@ "dev": true }, "node_modules/chokidar": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", - "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", + "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - ], "dependencies": { "anymatch": "~3.1.2", "braces": "~3.0.2", @@ -4760,6 +4871,9 @@ "engines": { "node": ">= 8.10.0" }, + "funding": { + "url": "https://paulmillr.com/funding/" + }, "optionalDependencies": { "fsevents": "~2.3.2" } @@ -5084,9 +5198,9 @@ "dev": true }, "node_modules/cookie": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", - "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==", + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.6.0.tgz", + "integrity": "sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==", "engines": { "node": ">= 0.6" } @@ -5631,9 +5745,9 @@ "dev": true }, "node_modules/data-uri-to-buffer": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-6.0.1.tgz", - "integrity": "sha512-MZd3VlchQkp8rdend6vrx7MmVDJzSNTBvghvKjirLkD+WTChA3KUf0jkE68Q4UyctNqI11zZO9/x2Yx+ub5Cvg==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-6.0.2.tgz", + "integrity": "sha512-7hvf7/GW8e86rW0ptuwS3OcBGDjIi6SZva7hCyWC0yYry2cOPmLIjXAUHI6DK2HsnwJd9ifmt57i8eV2n4YNpw==", "dev": true, "engines": { "node": ">= 14" @@ -5730,16 +5844,19 @@ } }, "node_modules/define-data-property": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.1.tgz", - "integrity": "sha512-E7uGkTzkk1d0ByLeSc6ZsFS79Axg+m1P/VsgYsxHgiuc3tFSj+MjMIwe90FC4lOAZzNBdY7kkO2P2wKdsQ1vgQ==", + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", + "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", "dependencies": { - "get-intrinsic": "^1.2.1", - "gopd": "^1.0.1", - "has-property-descriptors": "^1.0.0" + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "gopd": "^1.0.1" }, "engines": { "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/define-properties": { @@ -5830,9 +5947,9 @@ } }, "node_modules/diff": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-5.1.0.tgz", - "integrity": "sha512-D+mk+qE8VC/PAUrlAU34N+VfXev0ghe5ywmpqrawphmVZc1bEfn56uo9qpyGp1p4xpzOHkSW4ztBd6L7Xx4ACw==", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-5.2.0.tgz", + "integrity": "sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==", "engines": { "node": ">=0.3.1" } @@ -5875,19 +5992,19 @@ } }, "node_modules/dompurify": { - "version": "3.0.8", - "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-3.0.8.tgz", - "integrity": "sha512-b7uwreMYL2eZhrSCRC4ahLTeZcPZxSmYfmcQGXGkXiZSNW1X85v+SDM5KsWcpivIiUBH47Ji7NtyUdpLeF5JZQ==" + "version": "3.0.9", + "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-3.0.9.tgz", + "integrity": "sha512-uyb4NDIvQ3hRn6NiC+SIFaP4mJ/MdXlvtunaqK9Bn6dD3RuB/1S/gasEjDHD8eiaqdSael2vBv+hOs7Y+jhYOQ==" }, "node_modules/dotenv": { - "version": "16.4.1", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.4.1.tgz", - "integrity": "sha512-CjA3y+Dr3FyFDOAMnxZEGtnW9KBR2M0JvvUtXNW+dYJL5ROWxP9DUHCwgFqpMk0OXCc0ljhaNTr2w/kutYIcHQ==", + "version": "16.4.5", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.4.5.tgz", + "integrity": "sha512-ZmdL2rui+eB2YwhsWzjInR8LldtZHGDoQ1ugH85ppHKwpUHL7j7rN0Ti9NCnGiQbhaZ11FpR+7ao1dNsmduNUg==", "engines": { "node": ">=12" }, "funding": { - "url": "https://github.com/motdotla/dotenv?sponsor=1" + "url": "https://dotenvx.com" } }, "node_modules/dotenv-cli": { @@ -5921,15 +6038,15 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.656", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.656.tgz", - "integrity": "sha512-9AQB5eFTHyR3Gvt2t/NwR0le2jBSUNwCnMbUCejFWHD+so4tH40/dRLgoE+jxlPeWS43XJewyvCv+I8LPMl49Q==", + "version": "1.4.681", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.681.tgz", + "integrity": "sha512-1PpuqJUFWoXZ1E54m8bsLPVYwIVCRzvaL+n5cjigGga4z854abDnFRc+cTa2th4S79kyGqya/1xoR7h+Y5G5lg==", "dev": true }, "node_modules/elkjs": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/elkjs/-/elkjs-0.9.1.tgz", - "integrity": "sha512-JWKDyqAdltuUcyxaECtYG6H4sqysXSLeoXuGUBfRNESMTkj+w+qdb0jya8Z/WI0jVd03WQtCGhS6FOFtlhD5FQ==" + "version": "0.9.2", + "resolved": "https://registry.npmjs.org/elkjs/-/elkjs-0.9.2.tgz", + "integrity": "sha512-2Y/RaA1pdgSHpY0YG4TYuYCD2wh97CRvu22eLG3Kz0pgQ/6KbIFTxsTnDc4MH/6hFlg2L/9qXrDMG0nMjP63iw==" }, "node_modules/emitter-listener": { "version": "1.1.2", @@ -6000,49 +6117,51 @@ } }, "node_modules/es-abstract": { - "version": "1.22.3", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.22.3.tgz", - "integrity": "sha512-eiiY8HQeYfYH2Con2berK+To6GrK2RxbPawDkGq4UiCQQfZHb6wX9qQqkbpPqaxQFcl8d9QzZqo0tGE0VcrdwA==", + "version": "1.22.4", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.22.4.tgz", + "integrity": "sha512-vZYJlk2u6qHYxBOTjAeg7qUxHdNfih64Uu2J8QqWgXZ2cri0ZpJAkzDUK/q593+mvKwlxyaxr6F1Q+3LKoQRgg==", "dependencies": { - "array-buffer-byte-length": "^1.0.0", - "arraybuffer.prototype.slice": "^1.0.2", - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.5", - "es-set-tostringtag": "^2.0.1", + "array-buffer-byte-length": "^1.0.1", + "arraybuffer.prototype.slice": "^1.0.3", + "available-typed-arrays": "^1.0.6", + "call-bind": "^1.0.7", + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "es-set-tostringtag": "^2.0.2", "es-to-primitive": "^1.2.1", "function.prototype.name": "^1.1.6", - "get-intrinsic": "^1.2.2", - "get-symbol-description": "^1.0.0", + "get-intrinsic": "^1.2.4", + "get-symbol-description": "^1.0.2", "globalthis": "^1.0.3", "gopd": "^1.0.1", - "has-property-descriptors": "^1.0.0", + "has-property-descriptors": "^1.0.2", "has-proto": "^1.0.1", "has-symbols": "^1.0.3", - "hasown": "^2.0.0", - "internal-slot": "^1.0.5", - "is-array-buffer": "^3.0.2", + "hasown": "^2.0.1", + "internal-slot": "^1.0.7", + "is-array-buffer": "^3.0.4", "is-callable": "^1.2.7", "is-negative-zero": "^2.0.2", "is-regex": "^1.1.4", "is-shared-array-buffer": "^1.0.2", "is-string": "^1.0.7", - "is-typed-array": "^1.1.12", + "is-typed-array": "^1.1.13", "is-weakref": "^1.0.2", "object-inspect": "^1.13.1", "object-keys": "^1.1.1", - "object.assign": "^4.1.4", - "regexp.prototype.flags": "^1.5.1", - "safe-array-concat": "^1.0.1", - "safe-regex-test": "^1.0.0", + "object.assign": "^4.1.5", + "regexp.prototype.flags": "^1.5.2", + "safe-array-concat": "^1.1.0", + "safe-regex-test": "^1.0.3", "string.prototype.trim": "^1.2.8", "string.prototype.trimend": "^1.0.7", "string.prototype.trimstart": "^1.0.7", - "typed-array-buffer": "^1.0.0", + "typed-array-buffer": "^1.0.1", "typed-array-byte-length": "^1.0.0", "typed-array-byte-offset": "^1.0.0", "typed-array-length": "^1.0.4", "unbox-primitive": "^1.0.2", - "which-typed-array": "^1.1.13" + "which-typed-array": "^1.1.14" }, "engines": { "node": ">= 0.4" @@ -6051,44 +6170,65 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/es-errors": { + "node_modules/es-array-method-boxes-properly": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.0.0.tgz", - "integrity": "sha512-yHV74THqMJUyFKkHyN7hyENcEZM3Dj2a2IrdClY+IT4BFQHkIVwlh8s6uZfjsFydMdNHv0F5mWgAA3ajFbsvVQ==", + "resolved": "https://registry.npmjs.org/es-array-method-boxes-properly/-/es-array-method-boxes-properly-1.0.0.tgz", + "integrity": "sha512-wd6JXUmyHmt8T5a2xreUwKcGPq6f1f+WwIJkijUqiGcJz1qqnZgP6XIK+QyIWU5lT7imeNxUll48bziG+TSYcA==", + "dev": true + }, + "node_modules/es-define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.0.tgz", + "integrity": "sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==", + "dependencies": { + "get-intrinsic": "^1.2.4" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", "engines": { "node": ">= 0.4" } }, "node_modules/es-iterator-helpers": { - "version": "1.0.15", - "resolved": "https://registry.npmjs.org/es-iterator-helpers/-/es-iterator-helpers-1.0.15.tgz", - "integrity": "sha512-GhoY8uYqd6iwUl2kgjTm4CZAf6oo5mHK7BPqx3rKgx893YSsy0LGHV6gfqqQvZt/8xM8xeOnfXBCfqclMKkJ5g==", + "version": "1.0.17", + "resolved": "https://registry.npmjs.org/es-iterator-helpers/-/es-iterator-helpers-1.0.17.tgz", + "integrity": "sha512-lh7BsUqelv4KUbR5a/ZTaGGIMLCjPGPqJ6q+Oq24YP0RdyptX1uzm4vvaqzk7Zx3bpl/76YLTTDj9L7uYQ92oQ==", "dev": true, "dependencies": { "asynciterator.prototype": "^1.0.0", - "call-bind": "^1.0.2", + "call-bind": "^1.0.7", "define-properties": "^1.2.1", - "es-abstract": "^1.22.1", - "es-set-tostringtag": "^2.0.1", - "function-bind": "^1.1.1", - "get-intrinsic": "^1.2.1", + "es-abstract": "^1.22.4", + "es-errors": "^1.3.0", + "es-set-tostringtag": "^2.0.2", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", "globalthis": "^1.0.3", - "has-property-descriptors": "^1.0.0", + "has-property-descriptors": "^1.0.2", "has-proto": "^1.0.1", "has-symbols": "^1.0.3", - "internal-slot": "^1.0.5", + "internal-slot": "^1.0.7", "iterator.prototype": "^1.1.2", - "safe-array-concat": "^1.0.1" + "safe-array-concat": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" } }, "node_modules/es-set-tostringtag": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.2.tgz", - "integrity": "sha512-BuDyupZt65P9D2D2vA/zqcI3G5xRsklm5N3xCwuiy+/vKy8i0ifdsQP1sLgO4tZDSCaQUSnmC48khknGMV3D2Q==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.3.tgz", + "integrity": "sha512-3T8uNMC3OQTHkFUsFq8r/BwAXLHvU/9O9mE0fBc/MY5iq/8H7ncvO947LmYA6ldWw9Uh8Yhf25zu6n7nML5QWQ==", "dependencies": { - "get-intrinsic": "^1.2.2", - "has-tostringtag": "^1.0.0", - "hasown": "^2.0.0" + "get-intrinsic": "^1.2.4", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.1" }, "engines": { "node": ">= 0.4" @@ -6157,9 +6297,9 @@ } }, "node_modules/escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.2.tgz", + "integrity": "sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==", "engines": { "node": ">=6" } @@ -7504,11 +7644,11 @@ "dev": true }, "node_modules/fast-json-stringify": { - "version": "5.11.1", - "resolved": "https://registry.npmjs.org/fast-json-stringify/-/fast-json-stringify-5.11.1.tgz", - "integrity": "sha512-Lrj3tmc/qI1OCmr0WJEJFC4TxnAdLnbZZ0CvFvHv/PHNieLCX12PNBlV9KGIDS08w49T8h7vkMuzNoB+3NyX0g==", + "version": "5.12.0", + "resolved": "https://registry.npmjs.org/fast-json-stringify/-/fast-json-stringify-5.12.0.tgz", + "integrity": "sha512-7Nnm9UPa7SfHRbHVA1kJQrGXCRzB7LMlAAqHXQFkEQqueJm1V8owm0FsE/2Do55/4CcdhwiLQERaKomOnKQkyA==", "dependencies": { - "@fastify/deepmerge": "^1.0.0", + "@fastify/merge-json-schemas": "^0.1.0", "ajv": "^8.10.0", "ajv-formats": "^2.1.1", "fast-deep-equal": "^3.1.3", @@ -7724,9 +7864,9 @@ } }, "node_modules/flatted": { - "version": "3.2.9", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.9.tgz", - "integrity": "sha512-36yxDn5H7OFZQla0/jFJmbIKTdZAQHngCedGxiMmpNfEZM0sdEeT+WczLQrjK6D7o2aiyLYDnkw0R3JK0Qv1RQ==", + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.1.tgz", + "integrity": "sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==", "dev": true }, "node_modules/flexsearch": { @@ -7925,11 +8065,11 @@ } }, "node_modules/get-intrinsic": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.3.tgz", - "integrity": "sha512-JIcZczvcMVE7AUOP+X72bh8HqHBRxFdz5PDHYtNG/lE3yk9b3KZBJlwFcTyPYjg3L4RLLmZJzvjxhaZVapxFrQ==", + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz", + "integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==", "dependencies": { - "es-errors": "^1.0.0", + "es-errors": "^1.3.0", "function-bind": "^1.1.2", "has-proto": "^1.0.1", "has-symbols": "^1.0.3", @@ -7963,12 +8103,13 @@ } }, "node_modules/get-symbol-description": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", - "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.2.tgz", + "integrity": "sha512-g0QYk1dZBxGwk+Ngc+ltRH2IBp2f7zBkBMBJZCDerh6EhlhSR6+9irMCuT/09zD6qkarHUSn529sK/yL4S27mg==", "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.1" + "call-bind": "^1.0.5", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4" }, "engines": { "node": ">= 0.4" @@ -7990,32 +8131,53 @@ } }, "node_modules/get-uri": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/get-uri/-/get-uri-6.0.2.tgz", - "integrity": "sha512-5KLucCJobh8vBY1K07EFV4+cPZH3mrV9YeAruUseCQKHB58SGjjT2l9/eA9LD082IiuMjSlFJEcdJ27TXvbZNw==", + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/get-uri/-/get-uri-6.0.3.tgz", + "integrity": "sha512-BzUrJBS9EcUb4cFol8r4W3v1cPsSyajLSthNkz5BxbpDcHN5tIrM10E2eNvfnvBn3DaT3DUgx0OpsBKkaOpanw==", "dev": true, "dependencies": { "basic-ftp": "^5.0.2", - "data-uri-to-buffer": "^6.0.0", + "data-uri-to-buffer": "^6.0.2", "debug": "^4.3.4", - "fs-extra": "^8.1.0" + "fs-extra": "^11.2.0" }, "engines": { "node": ">= 14" } }, "node_modules/get-uri/node_modules/fs-extra": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", - "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", + "version": "11.2.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.2.0.tgz", + "integrity": "sha512-PmDi3uwK5nFuXh7XDTlVnS17xJS7vW36is2+w3xcv8SVxiB4NyATf4ctkVY5bkSjX0Y4nbvZCq1/EjtEyr9ktw==", "dev": true, "dependencies": { "graceful-fs": "^4.2.0", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" }, "engines": { - "node": ">=6 <7 || >=8" + "node": ">=14.14" + } + }, + "node_modules/get-uri/node_modules/jsonfile": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", + "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", + "dev": true, + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/get-uri/node_modules/universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "dev": true, + "engines": { + "node": ">= 10.0.0" } }, "node_modules/git-hooks-list": { @@ -8233,20 +8395,20 @@ } }, "node_modules/has-property-descriptors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.1.tgz", - "integrity": "sha512-VsX8eaIewvas0xnvinAe9bw4WfIeODpGYikiWYLH+dma0Jw6KHYqWiWfhQlgOVK8D6PvjubK5Uc4P0iIhIcNVg==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", + "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", "dependencies": { - "get-intrinsic": "^1.2.2" + "es-define-property": "^1.0.0" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/has-proto": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz", - "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.3.tgz", + "integrity": "sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==", "engines": { "node": ">= 0.4" }, @@ -8307,9 +8469,9 @@ } }, "node_modules/hasown": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.0.tgz", - "integrity": "sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.1.tgz", + "integrity": "sha512-1/th4MHjnwncwXsIW6QMzlvYL9kG5e/CpVvLRZe4XPa8TOUNbCELqmvhDmnkNsAjwaG4+I8gJJL0JBvTTLO9qA==", "dependencies": { "function-bind": "^1.1.2" }, @@ -8730,9 +8892,9 @@ } }, "node_modules/http-proxy-agent": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.0.tgz", - "integrity": "sha512-+ZT+iBxVUQ1asugqnD6oWoRiS25AkjNfG085dKJGtGxkdwLQrMKU5wJr2bOOFAXzKcTuqq+7fZlTMgG3SRfIYQ==", + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.2.tgz", + "integrity": "sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==", "dev": true, "dependencies": { "agent-base": "^7.1.0", @@ -8743,9 +8905,9 @@ } }, "node_modules/https-proxy-agent": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.2.tgz", - "integrity": "sha512-NmLNjm6ucYwtcUmL7JQC1ZQ57LmHP4lT15FQ8D61nak1rO6DH+fz5qNK2Ap5UN4ZapYICE3/0KodcLYSPsPbaA==", + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.4.tgz", + "integrity": "sha512-wlwpilI7YdjSkWaQ/7omYBMTliDcmCN8OLihO6I9B86g06lMyAoqgoDpV0XqoaPOKj+0DIdAvnsWfyAAhmimcg==", "dev": true, "dependencies": { "agent-base": "^7.0.2", @@ -8886,11 +9048,11 @@ "integrity": "sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q==" }, "node_modules/internal-slot": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.6.tgz", - "integrity": "sha512-Xj6dv+PsbtwyPpEflsejS+oIZxmMlV44zAhG479uYu89MsjcYOhCFnNyKrkJrihbsiasQyY0afoCl/9BLR65bg==", + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.7.tgz", + "integrity": "sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g==", "dependencies": { - "get-intrinsic": "^1.2.2", + "es-errors": "^1.3.0", "hasown": "^2.0.0", "side-channel": "^1.0.4" }, @@ -8911,10 +9073,23 @@ "resolved": "https://registry.npmjs.org/intersection-observer/-/intersection-observer-0.12.2.tgz", "integrity": "sha512-7m1vEcPCxXYI8HqnL8CKI6siDyD+eIWSwgB3DZA+ZTogxk9I4CDnj4wilt9x/+/QbHI4YG5YZNmC6458/e9Ktg==" }, - "node_modules/ip": { - "version": "1.1.9", - "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.9.tgz", - "integrity": "sha512-cyRxvOEpNHNtchU3Ln9KC/auJgup87llfQpQ+t5ghoC/UhL16SWzbueiCsdTnWmqAWl7LadfuwhlqmtOaqMHdQ==", + "node_modules/ip-address": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/ip-address/-/ip-address-9.0.5.tgz", + "integrity": "sha512-zHtQzGojZXTwZTHQqra+ETKd4Sn3vgi7uBmlPoXVWZqYvuKmtI0l/VZTjqGmJY9x88GGOaZ9+G9ES8hC4T4X8g==", + "dev": true, + "dependencies": { + "jsbn": "1.1.0", + "sprintf-js": "^1.1.3" + }, + "engines": { + "node": ">= 12" + } + }, + "node_modules/ip-address/node_modules/sprintf-js": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.3.tgz", + "integrity": "sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA==", "dev": true }, "node_modules/ipaddr.js": { @@ -9167,9 +9342,9 @@ } }, "node_modules/is-negative-zero": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", - "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.3.tgz", + "integrity": "sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==", "engines": { "node": ">= 0.4" }, @@ -9260,11 +9435,14 @@ } }, "node_modules/is-shared-array-buffer": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", - "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.3.tgz", + "integrity": "sha512-nA2hv5XIhLR3uVzDDfCIknerhx8XUKnstuOERPNNIinXG7v9u+ohXF67vxm4TPTEPU6lm61ZkwP3c9PCB97rhg==", "dependencies": { - "call-bind": "^1.0.2" + "call-bind": "^1.0.7" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -9465,6 +9643,12 @@ "js-yaml": "bin/js-yaml.js" } }, + "node_modules/jsbn": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-1.1.0.tgz", + "integrity": "sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A==", + "dev": true + }, "node_modules/jsesc": { "version": "2.5.2", "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", @@ -9646,11 +9830,11 @@ } }, "node_modules/light-my-request": { - "version": "5.11.0", - "resolved": "https://registry.npmjs.org/light-my-request/-/light-my-request-5.11.0.tgz", - "integrity": "sha512-qkFCeloXCOMpmEdZ/MV91P8AT4fjwFXWaAFz3lUeStM8RcoM1ks4J/F8r1b3r6y/H4u3ACEJ1T+Gv5bopj7oDA==", + "version": "5.11.1", + "resolved": "https://registry.npmjs.org/light-my-request/-/light-my-request-5.11.1.tgz", + "integrity": "sha512-KXAh2m6VRlkWCk2KfmHE7tLBXKh30JE0tXUJY4dNxje4oLmPKUqlUfImiEQZLphx+Z9KTQcVv4DjGnJxkVOIbA==", "dependencies": { - "cookie": "^0.5.0", + "cookie": "^0.6.0", "process-warning": "^2.0.0", "set-cookie-parser": "^2.4.1" } @@ -9661,12 +9845,15 @@ "integrity": "sha512-n9wh8tvBe5sFmsqlg+XQhaQLumwpqoAUruLwjCopgTmUBjJ/fjtBsJzKleCaIGBOMXYEhp1YfKl4d7rJ5ZKJGA==" }, "node_modules/lilconfig": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-3.0.0.tgz", - "integrity": "sha512-K2U4W2Ff5ibV7j7ydLr+zLAkIg5JJ4lPn1Ltsdt+Tz/IjQ8buJ55pZAxoP34lqIiwtF9iAvtLv3JGv7CAyAg+g==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-3.1.1.tgz", + "integrity": "sha512-O18pf7nyvHTckunPWCV1XUNXU1piu01y2b7ATJ0ppkUkk8ocqVWBrYjJBCwHDjD/ZWcfyrA0P4gKhzWGi5EINQ==", "dev": true, "engines": { "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antonk52" } }, "node_modules/lines-and-columns": { @@ -9806,9 +9993,9 @@ } }, "node_modules/match-sorter": { - "version": "6.3.3", - "resolved": "https://registry.npmjs.org/match-sorter/-/match-sorter-6.3.3.tgz", - "integrity": "sha512-sgiXxrRijEe0SzHKGX4HouCpfHRPnqteH42UdMEW7BlWy990ZkzcvonJGv4Uu9WE7Y1f8Yocm91+4qFPCbmNww==", + "version": "6.3.4", + "resolved": "https://registry.npmjs.org/match-sorter/-/match-sorter-6.3.4.tgz", + "integrity": "sha512-jfZW7cWS5y/1xswZo8VBOdudUiSd9nifYRWphc9M5D/ee4w4AoXLgBEdRbgVaxbMuagBPeUC5y2Hi8DO6o9aDg==", "dependencies": { "@babel/runtime": "^7.23.8", "remove-accents": "0.5.0" @@ -11488,9 +11675,9 @@ } }, "node_modules/next-seo": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/next-seo/-/next-seo-6.4.0.tgz", - "integrity": "sha512-XQFxkOL2hw0YE+P100HbI3EAvcludlHPxuzMgaIjKb7kPK0CvjGvLFjd9hszZFEDc5oiQkGFA8+cuWcnip7eYA==", + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/next-seo/-/next-seo-6.5.0.tgz", + "integrity": "sha512-MfzUeWTN/x/rsKp/1n0213eojO97lIl0unxqbeCY+6pAucViHDA8GSLRRcXpgjsSmBxfCFdfpu7LXbt4ANQoNQ==", "peerDependencies": { "next": "^8.1.1-canary.54 || >=9.0.0", "react": ">=16.0.0", @@ -11745,9 +11932,9 @@ } }, "node_modules/npm-to-yarn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/npm-to-yarn/-/npm-to-yarn-2.1.0.tgz", - "integrity": "sha512-2C1IgJLdJngq1bSER7K7CGFszRr9s2rijEwvENPEgI0eK9xlD3tNwDc0UJnRj7FIT2aydWm72jB88uVswAhXHA==", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/npm-to-yarn/-/npm-to-yarn-2.2.1.tgz", + "integrity": "sha512-O/j/ROyX0KGLG7O6Ieut/seQ0oiTpHF2tXAcFbpdTLQFiaNtkyTXXocM1fwpaa60dg1qpWj0nHlbNhx6qwuENQ==", "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, @@ -11848,15 +12035,16 @@ } }, "node_modules/object.groupby": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/object.groupby/-/object.groupby-1.0.1.tgz", - "integrity": "sha512-HqaQtqLnp/8Bn4GL16cj+CUYbnpe1bh0TtEaWvybszDG4tgxCJuRpV8VGuvNaI1fAnI4lUJzDG55MXcOH4JZcQ==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/object.groupby/-/object.groupby-1.0.2.tgz", + "integrity": "sha512-bzBq58S+x+uo0VjurFT0UktpKHOZmv4/xePiOA1nbB9pMqpGK7rUPNgf+1YC+7mE+0HzhTMqNUuCqvKhj6FnBw==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "get-intrinsic": "^1.2.1" + "array.prototype.filter": "^1.0.3", + "call-bind": "^1.0.5", + "define-properties": "^1.2.1", + "es-abstract": "^1.22.3", + "es-errors": "^1.0.0" } }, "node_modules/object.hasown": { @@ -11922,9 +12110,9 @@ } }, "node_modules/openai": { - "version": "4.26.0", - "resolved": "https://registry.npmjs.org/openai/-/openai-4.26.0.tgz", - "integrity": "sha512-HPC7tgYdeP38F3uHA5WgnoXZyGbAp9jgcIo23p6It+q/07u4C+NZ8xHKlMShsPbDDmFRpPsa3vdbXYpbhJH3eg==", + "version": "4.28.0", + "resolved": "https://registry.npmjs.org/openai/-/openai-4.28.0.tgz", + "integrity": "sha512-JM8fhcpmpGN0vrUwGquYIzdcEQHtFuom6sRCbbCM6CfzZXNuRk33G7KfeRAIfnaCxSpzrP5iHtwJzIm6biUZ2Q==", "peer": true, "dependencies": { "@types/node": "^18.11.18", @@ -11942,9 +12130,9 @@ } }, "node_modules/openai/node_modules/@types/node": { - "version": "18.19.14", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.14.tgz", - "integrity": "sha512-EnQ4Us2rmOS64nHDWr0XqAD8DsO6f3XR6lf9UIIrZQpUzPVdN/oPuEzfDWNHSyXLvoGgjuEm/sPwFGSSs35Wtg==", + "version": "18.19.18", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.18.tgz", + "integrity": "sha512-80CP7B8y4PzZF0GWx15/gVWRrB5y/bIjNI84NK3cmQJu0WZwvmj2WMA5LcofQFVfLqqCSp545+U2LsrVzX36Zg==", "peer": true, "dependencies": { "undici-types": "~5.26.4" @@ -12060,13 +12248,12 @@ } }, "node_modules/pac-resolver": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/pac-resolver/-/pac-resolver-7.0.0.tgz", - "integrity": "sha512-Fd9lT9vJbHYRACT8OhCbZBbxr6KRSawSovFpy8nDGshaK99S/EBhVIHp9+crhxrsZOuvLpgL1n23iyPg6Rl2hg==", + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/pac-resolver/-/pac-resolver-7.0.1.tgz", + "integrity": "sha512-5NPgf87AT2STgwa2ntRMr45jTKrYBGkVU36yT0ig/n/GMAa3oPqhZfIQ2kMEimReg0+t9kZViDVZ83qfVUlckg==", "dev": true, "dependencies": { "degenerator": "^5.0.0", - "ip": "^1.1.8", "netmask": "^2.0.2" }, "engines": { @@ -12607,6 +12794,14 @@ "node": ">=8" } }, + "node_modules/possible-typed-array-names": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.0.0.tgz", + "integrity": "sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==", + "engines": { + "node": ">= 0.4" + } + }, "node_modules/postcss": { "version": "8.4.31", "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz", @@ -12670,9 +12865,9 @@ } }, "node_modules/preferred-pm": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/preferred-pm/-/preferred-pm-3.1.2.tgz", - "integrity": "sha512-nk7dKrcW8hfCZ4H6klWcdRknBOXWzNQByJ0oJyX97BOupsYD+FzLS4hflgEu/uPUEHZCuRfMxzCBsuWd7OzT8Q==", + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/preferred-pm/-/preferred-pm-3.1.3.tgz", + "integrity": "sha512-MkXsENfftWSRpzCzImcp4FRsCc3y1opwB73CfCNWyzMqArju2CrlMHlqB7VexKiPEOjGMbttv1r9fSCn5S610w==", "dependencies": { "find-up": "^5.0.0", "find-yarn-workspace-root2": "1.2.16", @@ -12765,12 +12960,12 @@ } }, "node_modules/prettier-plugin-packagejson": { - "version": "2.4.10", - "resolved": "https://registry.npmjs.org/prettier-plugin-packagejson/-/prettier-plugin-packagejson-2.4.10.tgz", - "integrity": "sha512-qFzOfQDHi1tzvVJRuZ2jh1j6IFV5MURh5m5WDt+qfEMOf4SSL5RpwSysiX8u0W1PJYsM0vKJGNULt43wwteKiQ==", + "version": "2.4.12", + "resolved": "https://registry.npmjs.org/prettier-plugin-packagejson/-/prettier-plugin-packagejson-2.4.12.tgz", + "integrity": "sha512-hifuuOgw5rHHTdouw9VrhT8+Nd7UwxtL1qco8dUfd4XUFQL6ia3xyjSxhPQTsGnSYFraTWy5Omb+MZm/OWDTpQ==", "dev": true, "dependencies": { - "sort-package-json": "2.7.0", + "sort-package-json": "2.8.0", "synckit": "0.9.0" }, "peerDependencies": { @@ -13097,15 +13292,16 @@ } }, "node_modules/reflect.getprototypeof": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/reflect.getprototypeof/-/reflect.getprototypeof-1.0.4.tgz", - "integrity": "sha512-ECkTw8TmJwW60lOTR+ZkODISW6RQ8+2CL3COqtiJKLd6MmB45hN51HprHFziKLGkAuTGQhBb91V8cy+KHlaCjw==", + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/reflect.getprototypeof/-/reflect.getprototypeof-1.0.5.tgz", + "integrity": "sha512-62wgfC8dJWrmxv44CA36pLDnP6KKl3Vhxb7PL+8+qrrFMMoJij4vgiMP8zV4O8+CBMXY1mHxI5fITGHXFHVmQQ==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "get-intrinsic": "^1.2.1", + "call-bind": "^1.0.5", + "define-properties": "^1.2.1", + "es-abstract": "^1.22.3", + "es-errors": "^1.0.0", + "get-intrinsic": "^1.2.3", "globalthis": "^1.0.3", "which-builtin-type": "^1.1.3" }, @@ -13131,13 +13327,14 @@ } }, "node_modules/regexp.prototype.flags": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.1.tgz", - "integrity": "sha512-sy6TXMN+hnP/wMy+ISxg3krXx7BAtWVO4UouuCN/ziM9UEne0euamVNafDfvC83bRNr95y0V5iijeDQFUNpvrg==", + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.2.tgz", + "integrity": "sha512-NcDiDkTLuPR+++OCKB0nWafEmhg/Da8aUPLPMQbK+bxKKCm1/S5he+AqYa4PlMCVBalb4/yxIRub6qkEx5yJbw==", "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "set-function-name": "^2.0.0" + "call-bind": "^1.0.6", + "define-properties": "^1.2.1", + "es-errors": "^1.3.0", + "set-function-name": "^2.0.1" }, "engines": { "node": ">= 0.4" @@ -13568,9 +13765,9 @@ "integrity": "sha512-IXgzBWvWQwE6PrDI05OvmXUIruQTcoMDzRsOd5CDvHCVLcLHMTSYvOK5Cm46kWqlV3yAbuSpBZdJ5oP5OUoStg==" }, "node_modules/rollup": { - "version": "4.9.6", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.9.6.tgz", - "integrity": "sha512-05lzkCS2uASX0CiLFybYfVkwNbKZG5NFQ6Go0VWyogFTXXbR039UVsegViTntkk4OglHBdF54ccApXRRuXRbsg==", + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.12.0.tgz", + "integrity": "sha512-wz66wn4t1OHIJw3+XU7mJJQV/2NAfw5OAk6G6Hoo3zcvz/XOfQ52Vgi+AN4Uxoxi0KBBwk2g8zPrTDA4btSB/Q==", "dev": true, "dependencies": { "@types/estree": "1.0.5" @@ -13583,19 +13780,19 @@ "npm": ">=8.0.0" }, "optionalDependencies": { - "@rollup/rollup-android-arm-eabi": "4.9.6", - "@rollup/rollup-android-arm64": "4.9.6", - "@rollup/rollup-darwin-arm64": "4.9.6", - "@rollup/rollup-darwin-x64": "4.9.6", - "@rollup/rollup-linux-arm-gnueabihf": "4.9.6", - "@rollup/rollup-linux-arm64-gnu": "4.9.6", - "@rollup/rollup-linux-arm64-musl": "4.9.6", - "@rollup/rollup-linux-riscv64-gnu": "4.9.6", - "@rollup/rollup-linux-x64-gnu": "4.9.6", - "@rollup/rollup-linux-x64-musl": "4.9.6", - "@rollup/rollup-win32-arm64-msvc": "4.9.6", - "@rollup/rollup-win32-ia32-msvc": "4.9.6", - "@rollup/rollup-win32-x64-msvc": "4.9.6", + "@rollup/rollup-android-arm-eabi": "4.12.0", + "@rollup/rollup-android-arm64": "4.12.0", + "@rollup/rollup-darwin-arm64": "4.12.0", + "@rollup/rollup-darwin-x64": "4.12.0", + "@rollup/rollup-linux-arm-gnueabihf": "4.12.0", + "@rollup/rollup-linux-arm64-gnu": "4.12.0", + "@rollup/rollup-linux-arm64-musl": "4.12.0", + "@rollup/rollup-linux-riscv64-gnu": "4.12.0", + "@rollup/rollup-linux-x64-gnu": "4.12.0", + "@rollup/rollup-linux-x64-musl": "4.12.0", + "@rollup/rollup-win32-arm64-msvc": "4.12.0", + "@rollup/rollup-win32-ia32-msvc": "4.12.0", + "@rollup/rollup-win32-x64-msvc": "4.12.0", "fsevents": "~2.3.2" } }, @@ -13694,12 +13891,12 @@ ] }, "node_modules/safe-regex-test": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.2.tgz", - "integrity": "sha512-83S9w6eFq12BBIJYvjMux6/dkirb8+4zJRA9cxNBVb7Wq5fJBW+Xze48WqR8pxua7bDuAaaAxtVVd4Idjp1dBQ==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.3.tgz", + "integrity": "sha512-CdASjNJPvRa7roO6Ra/gLYBTzYzzPyyBXxIMdGW3USQLyjWEls2RgW5UBTXaQVp+OrpeCK3bLem8smtmheoRuw==", "dependencies": { - "call-bind": "^1.0.5", - "get-intrinsic": "^1.2.2", + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", "is-regex": "^1.1.4" }, "engines": { @@ -13770,9 +13967,9 @@ "integrity": "sha512-6aU+Rwsezw7VR8/nyvKTx8QpWH9FrcYiXXlqC4z5d5XQBDRqtbfsRjnwGyqbi3gddNtWHuEk9OANUotL26qKUw==" }, "node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", + "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", "dependencies": { "lru-cache": "^6.0.0" }, @@ -13805,13 +14002,14 @@ "integrity": "sha512-RVnVQxTXuerk653XfuliOxBP81Sf0+qfQE73LIYKcyMYHG94AuH0kgrQpRDuTZnSmjpysHmzxJXKNfa6PjFhyQ==" }, "node_modules/set-function-length": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.0.tgz", - "integrity": "sha512-4DBHDoyHlM1IRPGYcoxexgh67y4ueR53FKV1yyxwFMY7aCqcN/38M1+SwZ/qJQ8iLv7+ck385ot4CcisOAPT9w==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.1.tgz", + "integrity": "sha512-j4t6ccc+VsKwYHso+kElc5neZpjtq9EnRICFZtWyBsLojhmeF/ZBd/elqm22WJh/BziDe/SBiOeAt0m2mfLD0g==", "dependencies": { - "define-data-property": "^1.1.1", + "define-data-property": "^1.1.2", + "es-errors": "^1.3.0", "function-bind": "^1.1.2", - "get-intrinsic": "^1.2.2", + "get-intrinsic": "^1.2.3", "gopd": "^1.0.1", "has-property-descriptors": "^1.0.1" }, @@ -13820,13 +14018,14 @@ } }, "node_modules/set-function-name": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.1.tgz", - "integrity": "sha512-tMNCiqYVkXIZgc2Hnoy2IvC/f8ezc5koaRFkCjrpWzGpCd3qbZXPzVy9MAZzK1ch/X0jvSkojys3oqJN0qCmdA==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz", + "integrity": "sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==", "dependencies": { - "define-data-property": "^1.0.1", + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", "functions-have-names": "^1.2.3", - "has-property-descriptors": "^1.0.0" + "has-property-descriptors": "^1.0.2" }, "engines": { "node": ">= 0.4" @@ -13871,13 +14070,17 @@ "dev": true }, "node_modules/side-channel": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", - "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.5.tgz", + "integrity": "sha512-QcgiIWV4WV7qWExbN5llt6frQB/lBven9pqliLXfGPB+K9ZYXxDozp0wLkHS24kWCm+6YXH/f0HhnObZnZOBnQ==", "dependencies": { - "call-bind": "^1.0.0", - "get-intrinsic": "^1.0.2", - "object-inspect": "^1.9.0" + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4", + "object-inspect": "^1.13.1" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -14030,16 +14233,16 @@ } }, "node_modules/socks": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/socks/-/socks-2.7.1.tgz", - "integrity": "sha512-7maUZy1N7uo6+WVEX6psASxtNlKaNVMlGQKkG/63nEDdLOWNbiUMoLK7X4uYoLhQstau72mLgfEWcXcwsaHbYQ==", + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.8.1.tgz", + "integrity": "sha512-B6w7tkwNid7ToxjZ08rQMT8M9BJAf8DKx8Ft4NivzH0zBUfd6jldGcisJn/RLgxcX3FPNDdNQCUEMMT79b+oCQ==", "dev": true, "dependencies": { - "ip": "^2.0.0", + "ip-address": "^9.0.5", "smart-buffer": "^4.2.0" }, "engines": { - "node": ">= 10.13.0", + "node": ">= 10.0.0", "npm": ">= 3.0.0" } }, @@ -14057,12 +14260,6 @@ "node": ">= 14" } }, - "node_modules/socks/node_modules/ip": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/ip/-/ip-2.0.1.tgz", - "integrity": "sha512-lJUL9imLTNi1ZfXT+DU6rBBdbiKGBuay9B6xGSPVjUeQwaH1RIGqef8RZkUtHioLmSNpPR5M4HVKJGm1j8FWVQ==", - "dev": true - }, "node_modules/sonic-boom": { "version": "3.8.0", "resolved": "https://registry.npmjs.org/sonic-boom/-/sonic-boom-3.8.0.tgz", @@ -14103,9 +14300,9 @@ "dev": true }, "node_modules/sort-package-json": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/sort-package-json/-/sort-package-json-2.7.0.tgz", - "integrity": "sha512-6AayF8bp6L+WROgpbhTMUtB9JSFmpGHjmW7DyaNPS1HwlTw2oSVlUUtlkHSEZmg5o89F3zvLBZNvMeZ1T4fjQg==", + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/sort-package-json/-/sort-package-json-2.8.0.tgz", + "integrity": "sha512-PxeNg93bTJWmDGnu0HADDucoxfFiKkIr73Kv85EBThlI1YQPdc0XovBgg2llD0iABZbu2SlKo8ntGmOP9wOj/g==", "dev": true, "dependencies": { "detect-indent": "^7.0.1", @@ -14294,9 +14491,9 @@ } }, "node_modules/spdx-exceptions": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.4.0.tgz", - "integrity": "sha512-hcjppoJ68fhxA/cjbN4T8N6uCUejN8yFw69ttpqtBeCbF3u13n7mb31NB9jKwGTTWWnt9IbRA/mf1FprYS8wfw==" + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.5.0.tgz", + "integrity": "sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w==" }, "node_modules/spdx-expression-parse": { "version": "3.0.1", @@ -14308,9 +14505,9 @@ } }, "node_modules/spdx-license-ids": { - "version": "3.0.16", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.16.tgz", - "integrity": "sha512-eWN+LnM3GR6gPu35WxNgbGl8rmY1AEmoMDvL/QD6zYmPWgywxWqJWNdLGT+ke8dKNWrcYgYjPpG5gbTfghP8rw==" + "version": "3.0.17", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.17.tgz", + "integrity": "sha512-sh8PWc/ftMqAAdFiBu6Fy6JUOYjqDJBJvIhpfDMyHrr0Rbp5liZqd4TjtQ/RgfLjKFZb+LMx5hpml5qOWy0qvg==" }, "node_modules/split2": { "version": "4.2.0", @@ -14674,9 +14871,9 @@ } }, "node_modules/systeminformation": { - "version": "5.21.24", - "resolved": "https://registry.npmjs.org/systeminformation/-/systeminformation-5.21.24.tgz", - "integrity": "sha512-xQada8ByGGFoRXJaUptGgddn3i7IjtSdqNdCKzB8xkzsM7pHnfLYBWxkPdGzhZ0Z/l+W1yo+aZQZ74d2isj8kw==", + "version": "5.22.0", + "resolved": "https://registry.npmjs.org/systeminformation/-/systeminformation-5.22.0.tgz", + "integrity": "sha512-oAP80ymt8ssrAzjX8k3frbL7ys6AotqC35oikG6/SG15wBw+tG9nCk4oPaXIhEaAOAZ8XngxUv3ORq2IuR3r4Q==", "dev": true, "optional": true, "os": [ @@ -14889,21 +15086,21 @@ } }, "node_modules/trough": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/trough/-/trough-2.1.0.tgz", - "integrity": "sha512-AqTiAOLcj85xS7vQ8QkAV41hPDIJ71XJB4RCUrzo/1GM2CQwhkJGaf9Hgr7BOugMRpgGUrqRg/DrBDl4H40+8g==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/trough/-/trough-2.2.0.tgz", + "integrity": "sha512-tmMpK00BjZiUyVyvrBK7knerNgmgvcV/KLVyuma/SC+TQN167GrMRciANTz09+k3zW8L8t60jWO1GpfkZdjTaw==", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" } }, "node_modules/ts-api-utils": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.0.3.tgz", - "integrity": "sha512-wNMeqtMz5NtwpT/UZGY5alT+VoKdSsOOP/kqHFcUW1P/VRhH2wJ48+DN2WwUliNbQ976ETwDL0Ifd2VVvgonvg==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.2.1.tgz", + "integrity": "sha512-RIYA36cJn2WiH9Hy77hdF9r7oEwxAtB/TS9/S4Qd90Ap4z5FSiin5zEiTL44OII1Y3IIlEvxwxFUVgrHSZ/UpA==", "dev": true, "engines": { - "node": ">=16.13.0" + "node": ">=16" }, "peerDependencies": { "typescript": ">=4.2.0" @@ -15390,27 +15587,28 @@ } }, "node_modules/typed-array-buffer": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.0.tgz", - "integrity": "sha512-Y8KTSIglk9OZEr8zywiIHG/kmQ7KWyjseXs1CbSo8vC42w7hg2HgYTxSWwP0+is7bWDc1H+Fo026CpHFwm8tkw==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.2.tgz", + "integrity": "sha512-gEymJYKZtKXzzBzM4jqa9w6Q1Jjm7x2d+sh19AdsD4wqnMPDYyvwpsIc2Q/835kHuo3BEQ7CjelGhfTsoBb2MQ==", "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.1", - "is-typed-array": "^1.1.10" + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "is-typed-array": "^1.1.13" }, "engines": { "node": ">= 0.4" } }, "node_modules/typed-array-byte-length": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.0.tgz", - "integrity": "sha512-Or/+kvLxNpeQ9DtSydonMxCx+9ZXOswtwJn17SNLvhptaXYDJvkFFP5zbfU/uLmvnBJlI4yrnXRxpdWH/M5tNA==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.1.tgz", + "integrity": "sha512-3iMJ9q0ao7WE9tWcaYKIptkNBuOIcZCCT0d4MRvuuH88fEoEH62IuQe0OtraD3ebQEoTRk8XCBoknUNc1Y67pw==", "dependencies": { - "call-bind": "^1.0.2", + "call-bind": "^1.0.7", "for-each": "^0.3.3", - "has-proto": "^1.0.1", - "is-typed-array": "^1.1.10" + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13" }, "engines": { "node": ">= 0.4" @@ -15420,15 +15618,16 @@ } }, "node_modules/typed-array-byte-offset": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.0.tgz", - "integrity": "sha512-RD97prjEt9EL8YgAgpOkf3O4IF9lhJFr9g0htQkm0rchFp/Vx7LW5Q8fSXXub7BXAODyUQohRMyOc3faCPd0hg==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.2.tgz", + "integrity": "sha512-Ous0vodHa56FviZucS2E63zkgtgrACj7omjwd/8lTEMEPFFyjfixMZ1ZXenpgCFBBt4EC1J2XsyVS2gkG0eTFA==", "dependencies": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", "for-each": "^0.3.3", - "has-proto": "^1.0.1", - "is-typed-array": "^1.1.10" + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13" }, "engines": { "node": ">= 0.4" @@ -15438,13 +15637,19 @@ } }, "node_modules/typed-array-length": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.4.tgz", - "integrity": "sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==", + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.5.tgz", + "integrity": "sha512-yMi0PlwuznKHxKmcpoOdeLwxBoVPkqZxd7q2FgMkmD3bNwvF5VW0+UlUQ1k1vmktTu4Yu13Q0RIxEP8+B+wloA==", "dependencies": { - "call-bind": "^1.0.2", + "call-bind": "^1.0.7", "for-each": "^0.3.3", - "is-typed-array": "^1.1.9" + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13", + "possible-typed-array-names": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -16051,9 +16256,9 @@ } }, "node_modules/web-streams-polyfill": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-3.3.2.tgz", - "integrity": "sha512-3pRGuxRF5gpuZc0W+EpwQRmCD7gRqcDOMt688KmdlDAgAyaB1XlN0zq2njfDNm44XVdIouE7pZ6GzbdyH47uIQ==", + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-3.3.3.tgz", + "integrity": "sha512-d2JWLCivmZYTSIoge9MsgFCZrt571BikcWGYkjC1khllbTeDlGqZ2D8vD8E/lJa8WGWbb7Plm8/XJYV7IJHZZw==", "peer": true, "engines": { "node": ">= 8" @@ -16354,10 +16559,13 @@ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" }, "node_modules/yaml": { - "version": "2.3.4", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.3.4.tgz", - "integrity": "sha512-8aAvwVUSHpfEqTQ4w/KMlf3HcRdt50E5ODIQJBw1fQ5RL34xabzxtUlzTXVqc4rkZsPbvrXKWnABCD7kWSmocA==", + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.4.0.tgz", + "integrity": "sha512-j9iR8g+/t0lArF4V6NE/QCfT+CO7iLqrXAHZbJdo+LfjqP1vR8Fg5bSiaq6Q2lOD1AUEVrEVIgABvBFYojJVYQ==", "dev": true, + "bin": { + "yaml": "bin.mjs" + }, "engines": { "node": ">= 14" } @@ -16484,7 +16692,6 @@ "version": "0.6.10", "license": "MIT", "dependencies": { - "@neshca/json-replacer-reviver": "*", "lru-cache": "10.2.0" }, "devDependencies": { @@ -16502,6 +16709,15 @@ "redis": ">=4.6" } }, + "packages/cache-handler/node_modules/@types/node": { + "version": "20.11.20", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.20.tgz", + "integrity": "sha512-7/rR21OS+fq8IyHTgtLkDK949uzsa6n8BkziAKtPVpugIkO6D+/ooXMvzXxDnZrmtXVfjb1bKQafYpb8s89LOg==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "packages/diffscribe": { "version": "0.2.2", "license": "MIT", @@ -16520,6 +16736,15 @@ "openai": "^4.12.3" } }, + "packages/diffscribe/node_modules/@types/node": { + "version": "20.11.20", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.20.tgz", + "integrity": "sha512-7/rR21OS+fq8IyHTgtLkDK949uzsa6n8BkziAKtPVpugIkO6D+/ooXMvzXxDnZrmtXVfjb1bKQafYpb8s89LOg==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "packages/json-replacer-reviver": { "name": "@neshca/json-replacer-reviver", "version": "1.1.1", @@ -16533,6 +16758,15 @@ "typescript": "5.3.3" } }, + "packages/json-replacer-reviver/node_modules/@types/node": { + "version": "20.11.20", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.20.tgz", + "integrity": "sha512-7/rR21OS+fq8IyHTgtLkDK949uzsa6n8BkziAKtPVpugIkO6D+/ooXMvzXxDnZrmtXVfjb1bKQafYpb8s89LOg==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "packages/server": { "name": "@neshca/server", "version": "0.6.1", @@ -16554,6 +16788,15 @@ "tsx": "4.7.1", "typescript": "5.3.3" } + }, + "packages/server/node_modules/@types/node": { + "version": "20.11.20", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.20.tgz", + "integrity": "sha512-7/rR21OS+fq8IyHTgtLkDK949uzsa6n8BkziAKtPVpugIkO6D+/ooXMvzXxDnZrmtXVfjb1bKQafYpb8s89LOg==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } } } } diff --git a/packages/cache-handler/README.md b/packages/cache-handler/README.md index 18522395..a0bc8a91 100644 --- a/packages/cache-handler/README.md +++ b/packages/cache-handler/README.md @@ -2,7 +2,7 @@ **Flexible API to replace the default Next.js cache, accommodating custom cache solutions for multi-instance self-hosted deployments** -🎉 Next.js stabilized the API, and we are almost there, just a few steps before version 1.0.0! +🎉 1.0.0 is out! It features an improved API and TTL by default. Check out the [changelog](https://github.com/caching-tools/next-shared-cache/blob/canary/packages/cache-handler/CHANGELOG.md) @@ -17,16 +17,17 @@ Check out the [changelog](https://github.com/caching-tools/next-shared-cache/blo 3. [Examples and Practical Implementations](#examples-and-practical-implementations) 4. [Requirements](#requirements) 5. [Documentation](#documentation) -6. [Project Status](#project-status) -7. [Roadmap](#roadmap) -8. [Developing and Contributing](#developing-and-contributing) -9. [License](#license) +6. [Roadmap](#roadmap) +7. [Developing and Contributing](#developing-and-contributing) +8. [License](#license) ## Overview Welcome to `@neshca/cache-handler`, a specialized ISR/Data cache API crafted for Next.js applications. This library is designed to simplify the complex task of configuring shared cache strategies in distributed environments, such as those involving multiple and independent instances of the same application. It offers a flexible and user-friendly approach to integrating custom cache solutions and hand-crafted, pre-configured cache strategies for Redis. -### The Importance of Shared Cache in Distributed Instances +Welcome to [**`@neshca/cache-handler`**](./packages/cache-handler/README.md), a specialized ISR/Data cache API crafted for Next.js applications. This library is designed to simplify the complex task of configuring shared cache strategies in distributed environments, such as those involving multiple and independent instances of the same application. It offers a flexible and user-friendly approach to integrating custom cache solutions and hand-crafted, pre-configured cache strategies for Redis. + +### The importance of shared cache in distributed environments Next.js applications are often deployed in a self-hosted distributed environment, where multiple instances of the same application are running simultaneously. In such cases, the default Next.js cache is not shared between instances, causing the data to diverge between independent instances because load balancers route requests to a different instance every time. Another significant issue with the default cache setup is on-demand revalidation; it requires manual revalidation across all application replicas. @@ -35,42 +36,35 @@ Next.js applications are often deployed in a self-hosted distributed environment - A straightforward API complemented by meticulously crafted Handlers. - Comprehensive customization options. - Simplified on-demand revalidation, akin to managing a single application instance. +- TTL by default to keep cache storage clean and space-efficient. -## Kickstarting Your Custom Cache Solution +### Kickstarting Your Custom Cache Solution -Begin enhancing your application's caching system with our [Installation and the First Steps ↗](https://caching-tools.github.io/next-shared-cache/installation). This section provides all the necessary information on installation, basic configuration, and practical examples for quick and efficient integration. +Begin enhancing your application's caching system with our [Installation and the First Steps](https://caching-tools.github.io/next-shared-cache/installation). This section provides all the necessary information on installation, basic configuration, and practical examples for quick and efficient integration. -## Examples and Practical Implementations +### Examples and Practical Implementations -Discover the versatility of `@neshca/cache-handler` in the examples section, where real-world scenarios are illustrated. +Discover the versatility of `@neshca/cache-handler` in our [Examples Section](https://caching-tools.github.io/next-shared-cache/redis), where real-world scenarios are illustrated. -- [Official Next.js template ↗](https://github.com/vercel/next.js/tree/canary/examples/cache-handler-redis) -- [Redis Stack ↗](https://caching-tools.github.io/next-shared-cache/redis-stack) -- [Redis String ↗](https://caching-tools.github.io/next-shared-cache/redis-strings) -- [HTTP server ↗](https://caching-tools.github.io/next-shared-cache/server) -- [Custom Redis Stack ↗](https://caching-tools.github.io/next-shared-cache/redis-stack-custom) -- [Custom Redis String ↗](https://caching-tools.github.io/next-shared-cache/redis-strings-custom) +Learn how to build your own Handler by reading [this guide](https://caching-tools.github.io/next-shared-cache/usage/creating-a-custom-handler). ## Requirements -- Next.js 13.5.1 and newer; +- Next.js 13.5.1 and newer. - Node.js 18.17.0 and newer. ## Documentation [Documentation ↗](https://caching-tools.github.io/next-shared-cache) -## Project Status - -Next.js stabilized the API, and we are almost there. Any **breaking changes** made to the library will result in a **major** version increase of the package. You are welcome to try it out and provide feedback. - ### Roadmap -- [x] Support for App routes; -- [x] Support for Pages routes; -- [x] Happy path tests; -- [x] Examples; -- [x] Documentation; +- [x] Support for App routes. +- [x] Support for Pages routes. +- [x] TTL by default for cache values. +- [x] Happy path tests. +- [x] Examples. +- [x] Documentation. - [ ] Full test coverage. ## Developing and contributing diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 548ed3e7..5a8e0a28 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -1,7 +1,7 @@ { "name": "@neshca/cache-handler", "version": "0.6.10", - "description": "Flexible API to replace the default Next.js cache, accommodating custom cache solutions for multi-instance deployments.", + "description": "Next.js self-hosting simplified.", "keywords": [ "cache", "isr", @@ -66,7 +66,6 @@ "test:watch": "node --watch --test --import tsx/esm src/**/*.test.ts" }, "dependencies": { - "@neshca/json-replacer-reviver": "*", "lru-cache": "10.2.0" }, "devDependencies": { diff --git a/packages/cache-handler/src/cache-handler.ts b/packages/cache-handler/src/cache-handler.ts index d99a6f85..4349cbaa 100644 --- a/packages/cache-handler/src/cache-handler.ts +++ b/packages/cache-handler/src/cache-handler.ts @@ -1,46 +1,79 @@ -import fs, { promises as fsPromises } from 'node:fs'; +import { promises as fsPromises } from 'node:fs'; import path from 'node:path'; import type { - CacheHandler, + CacheHandler as NextCacheHandler, CacheHandlerParametersGet, CacheHandlerParametersRevalidateTag, CacheHandlerParametersSet, CacheHandlerValue, - CachedFetchValue, FileSystemCacheContext, - IncrementalCacheKindHint, - IncrementalCacheValue, - NonNullableRouteMetadata, - RouteMetadata, - TagsManifest, + IncrementalCachedPageValue, + LifespanParameters, + PrerenderManifest, + Revalidate, } from '@neshca/next-common'; -import { isTagsManifest } from './helpers/is-tags-manifest'; - -const RSC_PREFETCH_SUFFIX = '.prefetch.rsc'; -const RSC_SUFFIX = '.rsc'; -const NEXT_DATA_SUFFIX = '.json'; -const NEXT_META_SUFFIX = '.meta'; +import { createValidatedAgeEstimationFunction } from './helpers/create-validated-age-estimation-function'; +import { getTagsFromPageData } from './helpers/get-tags-from-page-data'; export type { CacheHandlerValue }; -export type RevalidatedTags = Record; - /** - * Represents a custom cache implementation. This interface defines essential methods for cache operations. + * Represents a cache Handler. */ -export type Cache = { +export type Handler = { /** - * A descriptive name for the cache handler instance. + * A descriptive name for the cache Handler. */ - name?: string; + name: string; /** * Retrieves the value associated with the given key from the cache. * * @param key - The unique string identifier for the cache entry. * * @returns A Promise that resolves to the cached value (if found), `null` or `undefined` if the entry is not found. + * + * @example + * ### With auto expiration + * + * If your cache store supports time based key eviction, the `get` method is straightforward. + * + * ```js + * const handler = { + * async get(key) { + * const cacheValue = await cacheStore.get(key); + * + * if (!cacheValue) { + * return null; + * } + * + * return cacheValue; + * } + * } + * ``` + * + * ### Without auto expiration + * + * If your cache store does not support time based key eviction, + * you can implement the `delete` method to remove the cache entry when it becomes expired. + * + * ```js + * const handler = { + * async get(key) { + * const cacheValue = await cacheStore.get(key); + * + * if (!cacheValue) { + * return null; + * } + * + * return cacheValue; + * }, + * async delete(key) { + * await cacheStore.delete(key); + * } + * } + * ``` */ get: (key: string) => Promise; /** @@ -48,55 +81,74 @@ export type Cache = { * * @param key - The unique string identifier for the cache entry. * - * @param value - The value to be stored in the cache. - * - * @param maxAgeSeconds - Optional. Delay in seconds before the cache entry becomes stale. - * If undefined, the cache entry will not become stale. + * @param value - The value to be stored in the cache. See {@link CacheHandlerValue}. * - * @returns A Promise with no value. + * @returns A Promise that resolves when the value has been successfully set in the cache. * * @remarks - * Use `maxAgeSeconds` only if you don't use Pages directory. + * + * Read more about the `lifespan` parameter: {@link LifespanParameters}. + * + * ### LifespanParameters + * If no `revalidate` option or `revalidate: false` is set in your [`getStaticProps`](https://nextjs.org/docs/pages/api-reference/functions/get-static-props#revalidate) + * the `lifespan` parameter will be `null` and you should consider the cache entry as always fresh and never stale. + * + * Use the absolute time (`expireAt`) to set and expiration time for the cache entry in your cache store to be in sync with the file system cache. */ - set: (key: string, value: CacheHandlerValue, maxAgeSeconds?: number) => Promise; + set: (key: string, value: CacheHandlerValue) => Promise; /** - * Retrieves the {@link RevalidatedTags} object. + * Deletes all cache entries that are associated with the specified tag. + * See [fetch `options.next.tags` and `revalidateTag`](https://nextjs.org/docs/app/building-your-application/caching#fetch-optionsnexttags-and-revalidatetag) * - * @returns A Promise that resolves to a {@link RevalidatedTags} object - * or either `null` or `undefined` for using tags from the next cache layer - * or a locally maintained {@link RevalidatedTags}. + * @param tag - A string representing the cache tag associated with the data you want to revalidate. + * Must be less than or equal to 256 characters. This value is case-sensitive. */ - getRevalidatedTags?: () => Promise; + revalidateTag: (tag: string) => Promise; /** - * Marks a specific cache tag as revalidated. Useful for cache invalidation strategies. + * Deletes the cache entry associated with the given key from the cache store. + * This method is optional and supposed to be used only when the cache store does not support time based key eviction. + * This method will be automatically called by the `CacheHandler` class when the retrieved cache entry is stale. * - * @param tag - The tag to be marked as revalidated. + * @param key - The unique string identifier for the cache entry. * - * @param revalidatedAt - The timestamp (in milliseconds) of when the tag was revalidated. + * @returns A Promise that resolves when the cache entry has been successfully deleted. */ - revalidateTag?: (tag: string, revalidatedAt: number) => Promise; + delete?: (key: string) => Promise; }; -type NamedCache = Cache & { +/** + * Represents the parameters for Time-to-Live (TTL) configuration. + */ +export type TTLParameters = { /** - * A descriptive name or an index for the cache instance. + * The time in seconds for when the cache entry becomes stale. Defaults to 1 year. */ - name: string; + defaultStaleAge: number; + /** + * Estimates the expiration age based on the stale age. + * + * @param staleAge - The stale age in seconds. Defaults to 1 year. + * After the stale age, the cache entry is considered stale, can be served from the cache, and should be revalidated. + * Revalidation is handled by the `CacheHandler` class. + * + * @returns The expiration age in seconds. + */ + estimateExpireAge(staleAge: number): number; }; /** - * Configuration options for cache behavior. + * Configuration options for the {@link CacheHandler}. */ -export type CacheConfig = { +export type CacheHandlerConfig = { /** - * Determines whether to use the file system caching in addition to the provided cache. + * An array of cache instances that conform to the Handler interface. + * Multiple caches can be used to implement various caching strategies or layers. */ - useFileSystem?: boolean; + handlers: (Handler | undefined | null)[]; /** - * A custom cache instance or an array of cache instances that conform to the Cache interface. - * Multiple caches can be used to implement various caching strategies or layers. + * Time-to-live (TTL) options for the cache entries. */ - cache: Cache | (Cache | undefined | null)[]; + ttl?: Partial; }; /** @@ -121,31 +173,25 @@ export type CacheCreationContext = { * * https://nextjs.org/docs/pages/building-your-application/deploying#build-cache * - * @remarks - * Some cache values may be lost during the build process - * because the `buildId` is defined after some cache values have already been set. - * However, `buildId` will be defined from the beginning when you start your app. - * * @example * ```js * // cache-handler.mjs - * IncrementalCache.onCreation(async ({ buildId }) => { - * let redisCache; + * CacheHandler.onCreation(async ({ buildId }) => { + * let redisHandler; * * if (buildId) { * await client.connect(); * - * redisCache = await createRedisCache({ + * redisHandler = await createRedisHandler({ * client, * keyPrefix: `${buildId}:`, * }); * } * - * const localCache = createLruCache(); + * const localHandler = createLruHandler(); * * return { - * cache: [redisCache, localCache], - * useFileSystem: true, + * handlers: [redisHandler, localHandler], * }; * }); * ``` @@ -154,34 +200,19 @@ export type CacheCreationContext = { }; /** - * Represents a function that retrieves a {@link CacheConfig} based on provided options and your custom logic. - * - * @typeParam T - The type of the options object that the function accepts. - * - * @param options - An options object of type T, containing parameters that influence the cache configuration. - * - * @returns Either a CacheConfig object or a Promise that resolves to a {@link CacheConfig} object, - * which specifies the cache behavior and settings. - */ -export type CreateCache = (options: T) => Promise | CacheConfig; - -/** - * Represents a hook function that is called during the creation of the cache. This function allows for custom logic - * to be executed at the time of cache instantiation, enabling dynamic configuration or initialization tasks. - * - * The function can either return a {@link CacheConfig} object directly or a Promise that resolves to a {@link CacheConfig}, - * allowing for asynchronous operations if needed. + * Represents a hook function that is called during the build and on start of the application. * - * @param cacheCreationContext - The {@link CacheCreationContext} object, providing contextual information about the cache creation environment, + * @param context - The {@link CacheCreationContext} object, providing contextual information about the cache creation environment, * such as server directory paths and whether the application is running in development mode. * - * @returns Either a CacheConfig object or a Promise that resolves to a {@link CacheConfig}, specifying how the cache should be configured. + * @returns Either a {@link CacheHandlerConfig} object or a Promise that resolves to a {@link CacheHandlerConfig}, + * specifying how the cache should be configured. */ -export type OnCreationHook = (cacheCreationContext: CacheCreationContext) => Promise | CacheConfig; +export type OnCreationHook = (context: CacheCreationContext) => Promise | CacheHandlerConfig; -export class IncrementalCache implements CacheHandler { +export class CacheHandler implements NextCacheHandler { /** - * Provides a descriptive name for the IncrementalCache class. + * Provides a descriptive name for the CacheHandler class. * * The name includes the number of handlers and whether file system caching is used. * If the cache handler is not configured yet, it will return a string indicating so. @@ -194,193 +225,262 @@ export class IncrementalCache implements CacheHandler { * @example * ```js * // cache-handler.mjs - * IncrementalCache.onCreation(async () => { - * const = redisCache = await createRedisCache({ + * CacheHandler.onCreation(async () => { + * const redisHandler = await createRedisHandler({ * client, - * }); + * }); * - * const localCache = createLruCache(); + * const localHandler = createLruHandler(); * * return { - * cache: [redisCache, localCache], - * useFileSystem: true, + * handlers: [redisHandler, localHandler], * }; * }); * * // after the Next.js called the onCreation hook - * console.log(IncrementalCache.name); - * // Output: "@neshca/cache-handler with 2 Handlers and file system caching" + * console.log(CacheHandler.name); + * // Output: "@neshca/cache-handler with 2 Handlers" * ``` */ - public static get name(): string { - if (IncrementalCache.#cacheListLength === undefined) { + static get name(): string { + if (CacheHandler.#cacheListLength === undefined) { return '@neshca/cache-handler is not configured yet'; } - return `@neshca/cache-handler with ${IncrementalCache.#cacheListLength} Handler${ - IncrementalCache.#cacheListLength > 1 ? 's' : '' - } and ${IncrementalCache.#useFileSystem ? 'file system' : 'no file system'} caching`; + return `@neshca/cache-handler with ${CacheHandler.#cacheListLength} Handler${ + CacheHandler.#cacheListLength > 1 ? 's' : '' + }`; } - static #resolveCreationPromise: () => void; + static #context: FileSystemCacheContext; - static #rejectCreationPromise: (error: unknown) => void; + static #mergedHandler: Omit; - /** - * A Promise that resolves when the `IncrementalCache.configureIncrementalCache` function has been called and the cache has been configured. - * It prevents the cache from being used before it's ready. - */ - static readonly #creationPromise: Promise = new Promise((resolve, reject) => { - this.#resolveCreationPromise = resolve; - this.#rejectCreationPromise = reject; - }); + static #cacheListLength: number; - /** - * Indicates whether the pages directory exists in the cache handler. - * This is a fallback for when the `context._pagesDir` is not provided by Next.js. - */ - static #hasPagesDir = false; + static #debug = typeof process.env.NEXT_PRIVATE_DEBUG_CACHE !== 'undefined'; - /** - * Determines whether to use the file system caching in addition to the provided cache. - */ - static #useFileSystem = true; + // Default stale age is 1 year in seconds + static #defaultStaleAge = 60 * 60 * 24 * 365; - static #cache: Cache; + static #estimateExpireAge: (staleAge: number) => number; - static #cacheListLength: number; + static #fallbackFalseRoutes = new Set(); - static #tagsManifestPath: string; + static #onCreationHook: OnCreationHook; - static #revalidatedTags: RevalidatedTags = {}; + static #serverDistDir: string; - static #debug = typeof process.env.NEXT_PRIVATE_DEBUG_CACHE !== 'undefined'; + static async #readPagesRouterPage(cacheKey: string): Promise { + let cacheHandlerValue: CacheHandlerValue | null = null; + let pageHtmlHandle: fsPromises.FileHandle | null = null; + + try { + const pageHtmlPath = path.join(CacheHandler.#serverDistDir, 'pages', `${cacheKey}.html`); + const pageDataPath = path.join(CacheHandler.#serverDistDir, 'pages', `${cacheKey}.json`); + + pageHtmlHandle = await fsPromises.open(pageHtmlPath, 'r'); - static onCreationHook: OnCreationHook; + const [pageHtmlFile, { mtimeMs }, pageDataFile] = await Promise.all([ + pageHtmlHandle.readFile('utf-8'), + pageHtmlHandle.stat(), + fsPromises.readFile(pageDataPath, 'utf-8'), + ]); + + const pageData = JSON.parse(pageDataFile) as object; + + cacheHandlerValue = { + lastModified: mtimeMs, + lifespan: null, + tags: [], + value: { + kind: 'PAGE', + html: pageHtmlFile, + pageData, + postponed: undefined, + headers: undefined, + status: undefined, + }, + }; + } catch (_) { + cacheHandlerValue = null; + } finally { + await pageHtmlHandle?.close(); + } + + return cacheHandlerValue; + } + + static async #writePagesRouterPage(cacheKey: string, pageData: IncrementalCachedPageValue): Promise { + try { + const pageHtmlPath = path.join(CacheHandler.#serverDistDir, 'pages', `${cacheKey}.html`); + const pageDataPath = path.join(CacheHandler.#serverDistDir, 'pages', `${cacheKey}.json`); + + await fsPromises.mkdir(path.dirname(pageHtmlPath), { recursive: true }); + + await Promise.all([ + fsPromises.writeFile(pageHtmlPath, pageData.html), + fsPromises.writeFile(pageDataPath, JSON.stringify(pageData.pageData)), + ]); + + return true; + } catch (_error) { + return false; + } + } /** - * Registers a hook to be called during the creation of an IncrementalCache instance. + * Returns the cache control parameters based on the last modified timestamp and revalidate option. + * + * @param lastModified The last modified timestamp in milliseconds. + * + * @param revalidate The revalidate option, representing the maximum age of stale data in seconds. + * + * @returns The cache control parameters including expire age, expire at, last modified at, stale age, stale at and revalidate. + * + * @remarks + * - `lastModifiedAt` is the Unix timestamp (in seconds) for when the cache entry was last modified. + * - `staleAge` is the time in seconds which equals to the `revalidate` option from Next.js pages. + * If page has no `revalidate` option, it will be set to 1 year. + * - `expireAge` is the time in seconds for when the cache entry becomes expired. + * - `staleAt` is the Unix timestamp (in seconds) for when the cache entry becomes stale. + * - `expireAt` is the Unix timestamp (in seconds) for when the cache entry must be removed from the cache. + * - `revalidate` is the value from Next.js revalidate option. + * May be false if the page has no revalidate option or the revalidate option is set to false. + */ + static #getLifespanParameters(lastModified: number, revalidate?: Revalidate): LifespanParameters { + const lastModifiedAt = Math.floor(lastModified / 1000); + const staleAge = revalidate || CacheHandler.#defaultStaleAge; + const staleAt = lastModifiedAt + staleAge; + const expireAge = CacheHandler.#estimateExpireAge(staleAge); + const expireAt = lastModifiedAt + expireAge; + + return { expireAge, expireAt, lastModifiedAt, revalidate, staleAge, staleAt }; + } + + /** + * Registers a hook to be called during the creation of an CacheHandler instance. * This method allows for custom cache configurations to be applied at the time of cache instantiation. * * The provided {@link OnCreationHook} function can perform initialization tasks, modify cache settings, - * or integrate additional logic into the cache creation process. This function can either return a {@link CacheConfig} - * object directly for synchronous operations, or a `Promise` that resolves to a {@link CacheConfig} for asynchronous operations. + * or integrate additional logic into the cache creation process. This function can either return a {@link CacheHandlerConfig} + * object directly for synchronous operations, or a `Promise` that resolves to a {@link CacheHandlerConfig} for asynchronous operations. * * Usage of this method is typically for advanced scenarios where default caching behavior needs to be altered * or extended based on specific application requirements or environmental conditions. * * @param onCreationHook - The {@link OnCreationHook} function to be called during cache creation. */ - public static onCreation(onCreationHook: OnCreationHook): void { - IncrementalCache.onCreationHook = onCreationHook; + static onCreation(onCreationHook: OnCreationHook): void { + CacheHandler.#onCreationHook = onCreationHook; } - static async configureIncrementalCache(cacheCreationContext: CacheCreationContext): Promise { + static async #configureCacheHandler(): Promise { + if (CacheHandler.#mergedHandler) { + return; + } + + const { serverDistDir, dev } = CacheHandler.#context; + + let buildId: string | undefined; + + try { + buildId = await fsPromises.readFile(path.join(serverDistDir, '..', 'BUILD_ID'), 'utf-8'); + } catch (_error) { + buildId = undefined; + } // Retrieve cache configuration by invoking the onCreation hook with the provided context - const config = IncrementalCache.onCreationHook(cacheCreationContext); + const config = CacheHandler.#onCreationHook({ serverDistDir, dev, buildId }); - // Destructure the cache and useFileSystem settings from the configuration - // Await the configuration if it's a promise - const { cache, useFileSystem = true } = config instanceof Promise ? await config : config; + // Wait for the cache configuration to be resolved + const { handlers, ttl = {} } = await config; - // Extract the server distribution directory from the cache creation context - const { serverDistDir } = cacheCreationContext; + const { defaultStaleAge, estimateExpireAge } = ttl; - // Set the class-level flag to determine if the file system caching should be used - IncrementalCache.#useFileSystem = useFileSystem; + if (typeof defaultStaleAge === 'number') { + CacheHandler.#defaultStaleAge = Math.floor(defaultStaleAge); + } - // Check if the pages directory exists and set the flag accordingly - IncrementalCache.#hasPagesDir = fs.existsSync(path.join(serverDistDir, 'pages')); + CacheHandler.#estimateExpireAge = createValidatedAgeEstimationFunction(estimateExpireAge); - // Define the path for the tags manifest file - IncrementalCache.#tagsManifestPath = path.join( - serverDistDir, - '..', - 'cache', - 'fetch-cache', - 'tags-manifest.json', - ); + CacheHandler.#serverDistDir = serverDistDir; - try { - // Ensure the directory for the tags manifest exists - await fsPromises.mkdir(path.dirname(IncrementalCache.#tagsManifestPath), { recursive: true }); + // Notify the user that the cache is not used in development mode + if (dev) { + console.warn('Next.js does not use the cache in development mode. Use production mode to enable caching.'); + } - // Read the tags manifest from the file system - const tagsManifestData = await fsPromises.readFile(IncrementalCache.#tagsManifestPath, 'utf-8'); + try { + const prerenderManifestData = await fsPromises.readFile( + path.join(serverDistDir, '..', 'prerender-manifest.json'), + 'utf-8', + ); - // Parse the tags manifest data - const tagsManifestFromFileSystem = JSON.parse(tagsManifestData) as unknown; + const prerenderManifest = JSON.parse(prerenderManifestData) as PrerenderManifest; - // Update the local RevalidatedTags if the parsed data is a valid tags manifest - if (isTagsManifest(tagsManifestFromFileSystem)) { - IncrementalCache.#revalidatedTags = Object.entries( - tagsManifestFromFileSystem.items, - ).reduce((revalidatedTags, [tag, { revalidatedAt }]) => { - revalidatedTags[tag] = revalidatedAt; + for (const [route, { srcRoute, dataRoute }] of Object.entries(prerenderManifest.routes)) { + const isPagesRouter = dataRoute?.endsWith('.json'); - return revalidatedTags; - }, {}); + if (isPagesRouter && prerenderManifest.dynamicRoutes[srcRoute || '']?.fallback === false) { + CacheHandler.#fallbackFalseRoutes.add(route); + } } - } catch (_error) { - // If the file doesn't exist, use the default tagsManifest - } + } catch (_error) {} - const cacheList: NamedCache[] = Array.isArray(cache) - ? cache.reduce((items, cacheItem, index) => { - if (cacheItem) { - items.push({ - ...cacheItem, - name: cacheItem.name || index.toString(), - }); - } - - return items; - }, []) - : [{ name: '0', ...cache }]; - - IncrementalCache.#cacheListLength = cacheList.length; - - // if no cache is provided and we don't use the file system - if (cacheList.length === 0 && !IncrementalCache.#useFileSystem) { - throw new Error( - 'No cache provided and file system caching is disabled. Please provide a cache or enable file system caching.', - ); - } + const handlersList: Handler[] = handlers.filter((handler): handler is Handler => Boolean(handler)); + + CacheHandler.#cacheListLength = handlersList.length; - IncrementalCache.#cache = { + CacheHandler.#mergedHandler = { async get(key) { - for await (const cacheItem of cacheList) { + for await (const handler of handlersList) { try { - const cacheValue = await cacheItem.get(key); + let cacheHandlerValue = await handler.get(key); + + if ( + cacheHandlerValue?.lifespan && + cacheHandlerValue.lifespan.expireAt < Math.floor(Date.now() / 1000) + ) { + cacheHandlerValue = null; + await handler.delete?.(key).catch((deleteError) => { + if (CacheHandler.#debug) { + console.warn( + `Handler "${handler.name}" failed to delete value for key "${key}".`, + deleteError, + ); + } + }); + } - if (IncrementalCache.#debug) { - console.info(`get from "${cacheItem.name}"`, key, Boolean(cacheValue)); + if (CacheHandler.#debug) { + console.info(`get from "${handler.name}"`, key, Boolean(cacheHandlerValue)); } - return cacheValue; + return cacheHandlerValue; } catch (error) { - if (IncrementalCache.#debug) { - console.warn( - `Cache handler "${cacheItem.name}" failed to get value for key "${key}".`, - error, - ); + if (CacheHandler.#debug) { + console.warn(`Handler "${handler.name}" failed to get value for key "${key}".`, error); } } } return null; }, - async set(key, value, maxAgeSeconds) { - await Promise.allSettled( - cacheList.map((cacheItem) => { + async set(key, cacheHandlerValue) { + await Promise.all( + handlersList.map((handler) => { try { - return cacheItem.set(key, value, maxAgeSeconds); + return handler.set(key, { + lastModified: cacheHandlerValue.lastModified, + lifespan: cacheHandlerValue.lifespan, + tags: cacheHandlerValue.tags, + value: cacheHandlerValue.value, + age: cacheHandlerValue.age, + cacheState: cacheHandlerValue.cacheState, + }); } catch (error) { - if (IncrementalCache.#debug) { - console.warn( - `Cache handler "${cacheItem.name}" failed to set value for key "${key}".`, - error, - ); + if (CacheHandler.#debug) { + console.warn(`Handler "${handler.name}" failed to set value for key "${key}".`, error); } } @@ -388,32 +488,14 @@ export class IncrementalCache implements CacheHandler { }), ); }, - async getRevalidatedTags() { - for await (const cacheItem of cacheList) { - try { - const revalidatedTags = await cacheItem.getRevalidatedTags?.(); - - return revalidatedTags; - } catch (error) { - if (IncrementalCache.#debug) { - // eslint-disable-next-line no-console -- we want to log this - console.warn(`Cache handler "${cacheItem.name}" failed to get revalidated tags.`, error); - } - } - } - }, - async revalidateTag(tag, revalidatedAt) { - await Promise.allSettled( - cacheList.map((cacheItem) => { + async revalidateTag(tag) { + await Promise.all( + handlersList.map((handler) => { try { - return cacheItem.revalidateTag?.(tag, revalidatedAt); + return handler.revalidateTag(tag); } catch (error) { - if (IncrementalCache.#debug) { - // eslint-disable-next-line no-console -- we want to log this - console.warn( - `Cache handler "${cacheItem.name}" failed to revalidate tag "${tag}".`, - error, - ); + if (CacheHandler.#debug) { + console.warn(`Handler "${handler.name}" failed to revalidate tag "${tag}".`, error); } } @@ -424,417 +506,109 @@ export class IncrementalCache implements CacheHandler { }; } - readonly #revalidatedTagsArray: FileSystemCacheContext['revalidatedTags']; - readonly #appDir: FileSystemCacheContext['_appDir']; - readonly #pagesDir: FileSystemCacheContext['_pagesDir'] | undefined; - readonly #serverDistDir: FileSystemCacheContext['serverDistDir']; - readonly #experimental: FileSystemCacheContext['experimental']; - - public constructor(context: FileSystemCacheContext) { - this.#revalidatedTagsArray = context.revalidatedTags ?? []; - this.#appDir = Boolean(context._appDir); - this.#pagesDir = context._pagesDir; - this.#serverDistDir = context.serverDistDir; - this.#experimental = { ppr: context?.experimental?.ppr ?? false }; - - if (!IncrementalCache.#cache) { - let buildId: string | undefined; - - try { - buildId = fs.readFileSync(path.join(this.#serverDistDir, '..', 'BUILD_ID'), 'utf-8'); - } catch (_error) { - buildId = undefined; - } - - IncrementalCache.configureIncrementalCache({ - dev: context.dev, - serverDistDir: this.#serverDistDir, - buildId, - }) - .then(IncrementalCache.#resolveCreationPromise) - .catch(IncrementalCache.#rejectCreationPromise); - } + private constructor(context: FileSystemCacheContext) { + CacheHandler.#context = context; } - async readCacheFromFileSystem( - cacheKey: string, - kindHint?: IncrementalCacheKindHint, - tags?: string[], - ): Promise { - let cachedData: CacheHandlerValue | null = null; - - try { - const bodyFilePath = this.#getFilePath(`${cacheKey}.body`, 'app'); + async get(...args: CacheHandlerParametersGet): Promise { + await CacheHandler.#configureCacheHandler(); - const bodyFileData = await fsPromises.readFile(bodyFilePath); - const { mtime } = await fsPromises.stat(bodyFilePath); + const [cacheKey, ctx = {}] = args; - const metaFileData = await fsPromises.readFile(bodyFilePath.replace(/\.body$/, NEXT_META_SUFFIX), 'utf-8'); - const meta: NonNullableRouteMetadata = JSON.parse(metaFileData) as NonNullableRouteMetadata; + const { tags = [], kindHint } = ctx; - const cacheEntry: CacheHandlerValue = { - lastModified: mtime.getTime(), - value: { - kind: 'ROUTE', - body: bodyFileData, - headers: meta.headers, - status: meta.status, - }, - }; + let cachedData: CacheHandlerValue | null | undefined = await CacheHandler.#mergedHandler.get(cacheKey); - return cacheEntry; - } catch (_) { - // no .meta data for the related key + if (cachedData?.value?.kind === 'ROUTE') { + cachedData.value.body = Buffer.from(cachedData.value.body as unknown as string, 'base64'); } - try { - // Determine the file kind if we didn't know it already. - let kind = kindHint; + if (!cachedData && CacheHandler.#fallbackFalseRoutes.has(cacheKey)) { + cachedData = await CacheHandler.#readPagesRouterPage(cacheKey); - if (!kind) { - kind = this.#detectFileKind(`${cacheKey}.html`); + if (CacheHandler.#debug) { + console.info('get from file system', cacheKey, tags, kindHint, 'got any value', Boolean(cachedData)); } - const isAppPath = kind === 'app'; - const pageFilePath = this.#getFilePath(kind === 'fetch' ? cacheKey : `${cacheKey}.html`, kind); - - const pageFile = await fsPromises.readFile(pageFilePath, 'utf-8'); - const { mtime } = await fsPromises.stat(pageFilePath); - - if (kind === 'fetch') { - const lastModified = mtime.getTime(); - const parsedData = JSON.parse(pageFile) as CachedFetchValue; - - cachedData = { - lastModified, - value: parsedData, - }; - - if (cachedData.value?.kind === 'FETCH') { - const cachedTags = cachedData.value.tags; - - // update stored tags if a new one is being added - // TODO: remove this when we can send the tags - // via header on GET same as SET - if (!tags?.every((tag) => cachedTags?.includes(tag))) { - if (IncrementalCache.#debug) { - console.info('tags vs cachedTags mismatch', tags, cachedTags); - } - await this.set(cacheKey, cachedData.value, { tags }); - } - } - } else { - const pageDataFilePath = isAppPath - ? this.#getFilePath( - `${cacheKey}${this.#experimental.ppr ? RSC_PREFETCH_SUFFIX : RSC_SUFFIX}`, - 'app', - ) - : this.#getFilePath(`${cacheKey}${NEXT_DATA_SUFFIX}`, 'pages'); - - const pageDataFile = await fsPromises.readFile(pageDataFilePath, 'utf-8'); - - const pageData = isAppPath ? pageDataFile : (JSON.parse(pageDataFile) as object); - - let meta: RouteMetadata | undefined; - - if (isAppPath) { - try { - const metaFileData = await fsPromises.readFile( - pageFilePath.replace(/\.html$/, NEXT_META_SUFFIX), - 'utf-8', - ); - meta = JSON.parse(metaFileData) as RouteMetadata; - } catch { - // no .meta data for the related key - } - } - - cachedData = { - lastModified: mtime.getTime(), - value: { - kind: 'PAGE', - html: pageFile, - pageData, - postponed: meta?.postponed, - headers: meta?.headers, - status: meta?.status, - }, - }; + // if we have a value from the file system, we should set it to the cache store + if (cachedData) { + await CacheHandler.#mergedHandler.set(cacheKey, cachedData); } - } catch (_) { - // unable to get data from the file system } - return cachedData; + return cachedData ?? null; } - async #revalidateCachedData(cachedData: CacheHandlerValue, tags: string[], softTags: string[]): Promise { - // credits to Next.js for the following code - if (cachedData.value?.kind === 'PAGE') { - let cacheTags: undefined | string[]; - const tagsHeader = cachedData.value.headers?.['x-next-cache-tags']; - - if (typeof tagsHeader === 'string') { - cacheTags = tagsHeader.split(','); - } - - const revalidatedTags = - (await IncrementalCache.#cache.getRevalidatedTags?.()) ?? IncrementalCache.#revalidatedTags; - - if (cacheTags?.length) { - const isStale = cacheTags.some((tag) => { - const revalidatedAt = revalidatedTags[tag]; - - return ( - typeof revalidatedAt === 'number' && revalidatedAt >= (cachedData?.lastModified || Date.now()) - ); - }); - - // we trigger a blocking validation if an ISR page - // had a tag revalidated, if we want to be a background - // revalidation instead we return cachedData.lastModified = -1 - return isStale; - } - } + async set(...args: CacheHandlerParametersSet): Promise { + await CacheHandler.#configureCacheHandler(); - if (cachedData.value?.kind === 'FETCH') { - const combinedTags = [...tags, ...softTags]; + const [cacheKey, value, ctx] = args; - const revalidatedTags = - (await IncrementalCache.#cache.getRevalidatedTags?.()) ?? IncrementalCache.#revalidatedTags; + const { revalidate, tags = [] } = ctx; - const wasRevalidated = combinedTags.some((tag: string) => { - if (this.#revalidatedTagsArray.includes(tag)) { - return true; - } + const lastModified = Date.now(); - const revalidatedAt = revalidatedTags[tag]; + const hasFallbackFalse = CacheHandler.#fallbackFalseRoutes.has(cacheKey); - return typeof revalidatedAt === 'number' && revalidatedAt >= (cachedData?.lastModified || Date.now()); - }); + const lifespan = hasFallbackFalse ? null : CacheHandler.#getLifespanParameters(lastModified, revalidate); - // When revalidate tag is called we don't return - // stale cachedData so it's updated right away - return wasRevalidated; - } + let cacheHandlerValueTags = tags; - return false; - } - - public async get(...args: CacheHandlerParametersGet): Promise { - const [cacheKey, ctx = {}] = args; - - const { tags = [], softTags = [], kindHint } = ctx; - - await IncrementalCache.#creationPromise; - - let cachedData: CacheHandlerValue | null = (await IncrementalCache.#cache.get(cacheKey)) ?? null; - - if (!cachedData && IncrementalCache.#useFileSystem) { - cachedData = await this.readCacheFromFileSystem(cacheKey, kindHint, tags); - - if (IncrementalCache.#debug) { - console.info('get from file system', cacheKey, tags, kindHint, Boolean(cachedData)); + switch (value?.kind) { + case 'PAGE': { + cacheHandlerValueTags = getTagsFromPageData(value); + break; } - - if (cachedData) { - await IncrementalCache.#cache.set(cacheKey, cachedData); + case 'ROUTE': { + // replace the body with a base64 encoded string to save space + value.body = value.body.toString('base64') as unknown as Buffer; + break; } - } - - if (!cachedData) { - return null; - } - - const revalidated = await this.#revalidateCachedData(cachedData, tags, softTags); - - if (revalidated) { - return null; - } - - return cachedData; - } - - async writeCacheToFileSystem(data: IncrementalCacheValue, cacheKey: string, tags: string[] = []): Promise { - // credits to Next.js for the following code - if (data.kind === 'ROUTE') { - const filePath = this.#getFilePath(`${cacheKey}.body`, 'app'); - - const meta: RouteMetadata = { - headers: data.headers, - status: data.status, - postponed: undefined, - }; - - await fsPromises.mkdir(path.dirname(filePath), { recursive: true }); - await fsPromises.writeFile(filePath, data.body); - await fsPromises.writeFile(filePath.replace(/\.body$/, NEXT_META_SUFFIX), JSON.stringify(meta, null, 2)); - - return; - } - - if (data.kind === 'PAGE') { - const isAppPath = typeof data.pageData === 'string'; - const htmlPath = this.#getFilePath(`${cacheKey}.html`, isAppPath ? 'app' : 'pages'); - await fsPromises.mkdir(path.dirname(htmlPath), { recursive: true }); - await fsPromises.writeFile(htmlPath, data.html); - - await fsPromises.writeFile( - this.#getFilePath( - `${cacheKey}${isAppPath ? RSC_SUFFIX : NEXT_DATA_SUFFIX}`, - isAppPath ? 'app' : 'pages', - ), - isAppPath ? JSON.stringify(data.pageData) : JSON.stringify(data.pageData), - ); - - if (data.headers || data.status) { - const meta: RouteMetadata = { - headers: data.headers, - status: data.status, - postponed: data.postponed, - }; - - await fsPromises.writeFile(htmlPath.replace(/\.html$/, NEXT_META_SUFFIX), JSON.stringify(meta)); + default: { + break; } - return; } - if (data.kind === 'FETCH') { - const filePath = this.#getFilePath(cacheKey, 'fetch'); - - await fsPromises.mkdir(path.dirname(filePath), { recursive: true }); - await fsPromises.writeFile( - filePath, - JSON.stringify({ - ...data, - tags, - }), - ); - } - } - - public async set(...args: CacheHandlerParametersSet): Promise { - const [cacheKey, data, ctx] = args; - - const { revalidate, tags } = ctx; - - await IncrementalCache.#creationPromise; + const cacheHandlerValue: CacheHandlerValue = { + lastModified, + lifespan, + tags: Object.freeze(cacheHandlerValueTags), + value, + }; - await IncrementalCache.#cache.set( - cacheKey, - { - value: data, - lastModified: Date.now(), - }, - revalidate || undefined, - ); + await CacheHandler.#mergedHandler.set(cacheKey, cacheHandlerValue); - if (IncrementalCache.#debug) { + if (CacheHandler.#debug) { console.info('set to external cache store', cacheKey); } - if (data && IncrementalCache.#useFileSystem) { - await this.writeCacheToFileSystem(data, cacheKey, tags); + if (hasFallbackFalse && cacheHandlerValue.value?.kind === 'PAGE') { + const wasWritten = await CacheHandler.#writePagesRouterPage(cacheKey, cacheHandlerValue.value); + + if (CacheHandler.#debug && !wasWritten) { + console.warn('Unable to write to the file system', cacheKey); + } - if (IncrementalCache.#debug) { + if (CacheHandler.#debug && wasWritten) { console.info('set to file system', cacheKey); } } } - public async revalidateTag(...args: CacheHandlerParametersRevalidateTag): Promise { + async revalidateTag(...args: CacheHandlerParametersRevalidateTag): Promise { + await CacheHandler.#configureCacheHandler(); + const [tag] = args; - if (IncrementalCache.#debug) { + if (CacheHandler.#debug) { console.info('revalidateTag', tag); } - await IncrementalCache.#creationPromise; - - await IncrementalCache.#cache.revalidateTag?.(tag, Date.now()); + await CacheHandler.#mergedHandler.revalidateTag(tag); - if (IncrementalCache.#debug) { + if (CacheHandler.#debug) { console.info('updated external revalidated tags'); } - - IncrementalCache.#revalidatedTags[tag] = Date.now(); - - if (IncrementalCache.#debug) { - console.info('updated local revalidated tags'); - } - - try { - const tagsManifest = Object.entries(IncrementalCache.#revalidatedTags).reduce( - (acc, [revalidatedTag, revalidatedAt]) => { - acc.items[revalidatedTag] = { - revalidatedAt, - }; - - return acc; - }, - { - version: 1, - items: {}, - }, - ); - - await fsPromises.writeFile(IncrementalCache.#tagsManifestPath, JSON.stringify(tagsManifest)); - if (IncrementalCache.#debug) { - console.info('updated tags manifest file'); - } - } catch (error) { - // eslint-disable-next-line no-console -- we want to log this - console.warn('failed to update tags manifest.', error); - } - } - - // credits to Next.js for the following code - #detectFileKind(pathname: string): 'app' | 'pages' { - const pagesDir = this.#pagesDir ?? IncrementalCache.#hasPagesDir; - - if (!this.#appDir && !pagesDir) { - throw new Error("Invariant: Can't determine file path kind, no page directory enabled"); - } - - // If app directory isn't enabled, then assume it's pages and avoid the fs - // hit. - if (!this.#appDir && pagesDir) { - return 'pages'; - } - // Otherwise assume it's a pages file if the pages directory isn't enabled. - if (this.#appDir && !pagesDir) { - return 'app'; - } - - // If both are enabled, we need to test each in order, starting with - // `pages`. - let filePath = this.#getFilePath(pathname, 'pages'); - if (fs.existsSync(filePath)) { - return 'pages'; - } - - filePath = this.#getFilePath(pathname, 'app'); - if (fs.existsSync(filePath)) { - return 'app'; - } - - throw new Error(`Invariant: Unable to determine file path kind for ${pathname}`); - } - - // credits to Next.js for the following code - #getFilePath(pathname: string, kind: 'app' | 'fetch' | 'pages'): string { - switch (kind) { - case 'fetch': - // we store in .next/cache/fetch-cache so it can be persisted - // across deploys - return path.join(this.#serverDistDir, '..', 'cache', 'fetch-cache', pathname); - case 'pages': - return path.join(this.#serverDistDir, 'pages', pathname); - case 'app': - return path.join(this.#serverDistDir, 'app', pathname); - default: - throw new Error("Invariant: Can't determine file path kind"); - } } resetRequestCache(): void { diff --git a/packages/cache-handler/src/common-types.ts b/packages/cache-handler/src/common-types.ts index 9c813cd4..74f021ca 100644 --- a/packages/cache-handler/src/common-types.ts +++ b/packages/cache-handler/src/common-types.ts @@ -1,33 +1,3 @@ import type { RedisClientType } from 'redis'; export type RedisJSON = Parameters['2']; - -export type UseTtlOptions = { - /** - * Optional. Boolean or function that returns a delay after which the cache entry must be deleted. - * - * Function receives the `maxAge` from the Next.js as a parameter. - * This can be used to emulate the behavior of the stale-while-revalidate strategy. - * - * @example - * - * ```js - * const lruCache = createLruCache({ - * // emulate the behavior of the stale-while-revalidate strategy - * useTtl: (maxAge) => maxAge * 1.5 - * }); - * ``` - * - * @remarks - * - **File System Cache**: Ensure that the file system cache is disabled - * by setting `useFileSystem: false` in your cache handler configuration. - * This is crucial for the TTL feature to work correctly. - * If the file system cache is enabled, - * the cache entries will HIT from the file system cache when expired in remote cache store. - * - **Pages Directory Limitation**: Due to a known issue in Next.js, - * disabling the file system cache may not function properly within the Pages directory. - * It is recommended to use TTL primarily with the App directory. - * More details on this limitation can be found in the file system cache configuration documentation. - */ - useTtl?: boolean | ((ttl: number) => number); -}; diff --git a/packages/cache-handler/src/handlers/local-lru.ts b/packages/cache-handler/src/handlers/local-lru.ts index 53d24711..a234ce5f 100644 --- a/packages/cache-handler/src/handlers/local-lru.ts +++ b/packages/cache-handler/src/handlers/local-lru.ts @@ -1,19 +1,17 @@ import type { LruCacheOptions } from '@neshca/next-lru-cache/next-cache-handler-value'; -import { createCache } from '@neshca/next-lru-cache/next-cache-handler-value'; +import createCacheStore from '@neshca/next-lru-cache/next-cache-handler-value'; -import type { Cache, CacheHandlerValue } from '../cache-handler'; -import type { UseTtlOptions } from '../common-types'; -import { calculateEvictionDelay } from '../helpers/calculate-eviction-delay'; +import type { Handler } from '../cache-handler'; -export type LruCacheHandlerOptions = LruCacheOptions & UseTtlOptions; +export type LruCacheHandlerOptions = LruCacheOptions; /** - * Creates an LRU (Least Recently Used) cache handler. + * Creates an LRU (Least Recently Used) cache Handler. * * This function initializes an LRU cache handler for managing cache operations. * It allows setting a maximum number of items and maximum item size in bytes. * The handler includes methods to get and set cache values. - * Revalidation is handled by the `IncrementalCache` class. + * Revalidation is handled by the `CacheHandler` class. * * @param options - The configuration options for the LRU cache handler. See {@link LruCacheHandlerOptions}. * @@ -21,51 +19,47 @@ export type LruCacheHandlerOptions = LruCacheOptions & UseTtlOptions; * * @example * ```js - * const lruCache = createLruCache({ + * const lruHandler = createLruHandler({ * maxItemsNumber: 10000, // 10000 items * maxItemSizeBytes: 1024 * 1024 * 500, // 500 MB - * useTtl: (maxAge) => maxAge * 1.5 * }); * ``` * * @remarks - * - Use this Handler as a fallback for any remote store Handler instead of the filesystem when you use only the App router. + * - Use this Handler as a fallback for any remote store Handler. */ -export default function createLruCache({ useTtl = false, ...lruOptions }: LruCacheHandlerOptions = {}): Cache { - const lruCache = createCache(lruOptions); +export default function createHandler({ ...lruOptions }: LruCacheHandlerOptions = {}): Handler { + const lruCacheStore = createCacheStore(lruOptions); return { name: 'local-lru', get(key) { - const cacheValue = lruCache.get(key); + const cacheValue = lruCacheStore.get(key); if (!cacheValue) { return Promise.resolve(null); } - const { lastModified, maxAgeSeconds } = cacheValue; - - if (!useTtl || !maxAgeSeconds) { - return Promise.resolve(cacheValue as CacheHandlerValue); - } - - const ageSeconds = lastModified ? Math.floor((Date.now() - lastModified) / 1000) : 0; - - const evictionAge = calculateEvictionDelay(maxAgeSeconds, useTtl); + return Promise.resolve(cacheValue); + }, + set(key, cacheHandlerValue) { + lruCacheStore.set(key, cacheHandlerValue); - if (!evictionAge || evictionAge > ageSeconds) { - return Promise.resolve(cacheValue as CacheHandlerValue); + return Promise.resolve(); + }, + revalidateTag(tag) { + // Iterate over all entries in the cache + for (const [key, { tags }] of lruCacheStore.entries()) { + // If the value's tags include the specified tag, delete this entry + if (tags.includes(tag)) { + lruCacheStore.delete(key); + } } - lruCache.delete(key); - - return Promise.resolve(null); + return Promise.resolve(); }, - set(key, value, maxAgeSeconds) { - lruCache.set(key, { - ...value, - maxAgeSeconds, - }); + delete(key) { + lruCacheStore.delete(key); return Promise.resolve(); }, diff --git a/packages/cache-handler/src/handlers/redis-stack.ts b/packages/cache-handler/src/handlers/redis-stack.ts index b4781f11..35b0f726 100644 --- a/packages/cache-handler/src/handlers/redis-stack.ts +++ b/packages/cache-handler/src/handlers/redis-stack.ts @@ -1,14 +1,13 @@ import type { RedisClientType } from 'redis'; -import type { Cache, CacheHandlerValue, RevalidatedTags } from '../cache-handler'; -import type { RedisJSON, UseTtlOptions } from '../common-types'; -import { calculateEvictionDelay } from '../helpers/calculate-eviction-delay'; +import type { CacheHandlerValue, Handler } from '../cache-handler'; +import type { RedisJSON } from '../common-types'; import { getTimeoutRedisCommandOptions } from '../helpers/get-timeout-redis-command-options'; /** * The configuration options for the Redis Handler */ -export type RedisCacheHandlerOptions = UseTtlOptions & { +export type RedisCacheHandlerOptions = { /** * The Redis client instance. */ @@ -18,9 +17,9 @@ export type RedisCacheHandlerOptions = UseTtlOptions & { */ keyPrefix?: string; /** - * Optional. Key to store the `RevalidatedTags`. Defaults to `__sharedRevalidatedTags__`. + * Optional. Key for storing cache tags. Defaults to `__sharedTags__`. */ - revalidatedTagsKey?: string; + sharedTagsKey?: string; /** * Timeout in milliseconds for Redis operations. Defaults to 5000. */ @@ -41,27 +40,24 @@ export type RedisCacheHandlerOptions = UseTtlOptions & { * @example * ```js * const redisClient = createRedisClient(...); - * const cache = await createCache({ + * const cache = await createHandler({ * client: redisClient, * keyPrefix: 'myApp:', - * revalidatedTagsKey: 'myRevalidatedTags' + * sharedTagsKey: 'myTags' * }); * ``` * * @remarks - * The `get` method retrieves a value from the cache, automatically converting `Buffer` types when necessary. - * - * The `set` method allows setting a value in the cache. - * - * The `getRevalidatedTags` and `revalidateTag` methods are used for handling tag-based cache revalidation. + * - the `get` method retrieves a value from the cache, automatically converting `Buffer` types when necessary. + * - the `set` method allows setting a value in the cache. + * - the `revalidateTag` methods are used for handling tag-based cache revalidation. */ -export default async function createCache({ +export default async function createHandler({ client, keyPrefix = '', - revalidatedTagsKey = '__sharedRevalidatedTags__', - useTtl = false, + sharedTagsKey = '__sharedTags__', timeoutMs = 5000, -}: RedisCacheHandlerOptions): Promise { +}: RedisCacheHandlerOptions): Promise { function assertClientIsReady(): void { if (!client.isReady) { throw new Error('Redis client is not ready'); @@ -72,7 +68,7 @@ export default async function createCache({ await client.json.set( getTimeoutRedisCommandOptions(timeoutMs), - keyPrefix + revalidatedTagsKey, + `${keyPrefix}${sharedTagsKey}`, '.', {}, { @@ -90,61 +86,61 @@ export default async function createCache({ keyPrefix + key, )) as CacheHandlerValue | null; - if (cacheValue?.value?.kind === 'ROUTE') { - cacheValue.value.body = Buffer.from(cacheValue.value.body as unknown as string, 'base64'); - } - return cacheValue; }, - async set(key, cacheValue, maxAgeSeconds) { + async set(key, cacheHandlerValue) { assertClientIsReady(); - let preparedCacheValue = cacheValue; - - if (cacheValue.value?.kind === 'ROUTE') { - preparedCacheValue = structuredClone(cacheValue); - // @ts-expect-error -- object must have the same shape as cacheValue - preparedCacheValue.value.body = cacheValue.value.body.toString('base64') as unknown as Buffer; - } - const options = getTimeoutRedisCommandOptions(timeoutMs); + const setTags = client.json.set( + options, + `${keyPrefix}${sharedTagsKey}`, + `.${key}`, + cacheHandlerValue.tags as unknown as RedisJSON, + ); + const setCacheValue = client.json.set( options, keyPrefix + key, '.', - preparedCacheValue as unknown as RedisJSON, + cacheHandlerValue as unknown as RedisJSON, ); - const commands: Promise[] = [setCacheValue]; - - const evictionDelay = calculateEvictionDelay(maxAgeSeconds, useTtl); - - if (evictionDelay) { - commands.push(client.expire(options, keyPrefix + key, evictionDelay)); - } + const expireCacheValue = cacheHandlerValue.lifespan + ? client.expireAt(options, keyPrefix + key, cacheHandlerValue.lifespan.expireAt) + : undefined; - await Promise.allSettled(commands); + await Promise.all([setCacheValue, expireCacheValue, setTags]); }, - async getRevalidatedTags() { + async revalidateTag(tag) { assertClientIsReady(); - const sharedRevalidatedTags = (await client.json.get( - getTimeoutRedisCommandOptions(timeoutMs), - keyPrefix + revalidatedTagsKey, - )) as RevalidatedTags | undefined; + const options = getTimeoutRedisCommandOptions(timeoutMs); - return sharedRevalidatedTags; - }, - async revalidateTag(tag, revalidatedAt) { - assertClientIsReady(); + const remoteTagsMap = await client.json.get(options, `${keyPrefix}${sharedTagsKey}`); - await client.json.set( - getTimeoutRedisCommandOptions(timeoutMs), - keyPrefix + revalidatedTagsKey, - `.${tag}`, - revalidatedAt, + const tagMap = new Map(Object.entries(remoteTagsMap as Record)); + + const keysToDelete = []; + + for (const [key, tags] of tagMap) { + if (tags.includes(tag)) { + keysToDelete.push(keyPrefix + key); + tagMap.delete(key); + } + } + + const deleteCacheOperation = client.del(options, keysToDelete); + + const setTagsOperation = client.json.set( + options, + `${keyPrefix}${sharedTagsKey}`, + '.', + Object.fromEntries(tagMap), ); + + await Promise.all([deleteCacheOperation, setTagsOperation]); }, }; } diff --git a/packages/cache-handler/src/handlers/redis-strings.ts b/packages/cache-handler/src/handlers/redis-strings.ts index 6f6fbd73..7d83ba43 100644 --- a/packages/cache-handler/src/handlers/redis-strings.ts +++ b/packages/cache-handler/src/handlers/redis-strings.ts @@ -1,8 +1,6 @@ -import { replaceJsonWithBase64, reviveFromBase64Representation } from '@neshca/json-replacer-reviver'; import type { RedisClientType } from 'redis'; -import type { Cache, CacheHandlerValue, RevalidatedTags } from '../cache-handler'; -import { calculateEvictionDelay } from '../helpers/calculate-eviction-delay'; +import type { CacheHandlerValue, Handler } from '../cache-handler'; import { getTimeoutRedisCommandOptions } from '../helpers/get-timeout-redis-command-options'; import type { RedisCacheHandlerOptions } from './redis-stack'; @@ -21,27 +19,24 @@ import type { RedisCacheHandlerOptions } from './redis-stack'; * @example * ```js * const redisClient = createRedisClient(...); - * const cache = await createCache({ + * const cache = await createHandler({ * client: redisClient, * keyPrefix: 'myApp:', - * revalidatedTagsKey: 'myRevalidatedTags' + * sharedTagsKey: 'myTags' * }); * ``` * * @remarks - * The `get` method retrieves a value from the cache, automatically converting `Buffer` types when necessary. - * - * The `set` method allows setting a value in the cache. - * - * The `getRevalidatedTags` and `revalidateTag` methods are used for handling tag-based cache revalidation. + * - the `get` method retrieves a value from the cache, automatically converting `Buffer` types when necessary. + * - the `set` method allows setting a value in the cache. + * - the `revalidateTag` methods are used for handling tag-based cache revalidation. */ -export default function createCache({ +export default function createHandler({ client, keyPrefix = '', - revalidatedTagsKey = '__sharedRevalidatedTags__', - useTtl = false, + sharedTagsKey = '__sharedTags__', timeoutMs = 5000, -}: RedisCacheHandlerOptions): Cache { +}: RedisCacheHandlerOptions): Handler { function assertClientIsReady(): void { if (!client.isReady) { throw new Error('Redis client is not ready yet or connection is lost. Keep trying...'); @@ -53,54 +48,63 @@ export default function createCache({ async get(key) { assertClientIsReady(); - const getOperation = client.get(getTimeoutRedisCommandOptions(timeoutMs), keyPrefix + key); - - const result = await getOperation; + const result = await client.get(getTimeoutRedisCommandOptions(timeoutMs), keyPrefix + key); if (!result) { return null; } - // use reviveFromBase64Representation to restore binary data from Base64 - return JSON.parse(result, reviveFromBase64Representation) as CacheHandlerValue | null; + return JSON.parse(result) as CacheHandlerValue | null; }, - async set(key, value, maxAgeSeconds) { + async set(key, cacheHandlerValue) { assertClientIsReady(); - const evictionDelay = calculateEvictionDelay(maxAgeSeconds, useTtl); + const options = getTimeoutRedisCommandOptions(timeoutMs); - // use replaceJsonWithBase64 to store binary data in Base64 and save space - await client.set( - getTimeoutRedisCommandOptions(timeoutMs), - keyPrefix + key, - JSON.stringify(value, replaceJsonWithBase64), - evictionDelay ? { EX: evictionDelay } : undefined, - ); + const setOperation = client.set(options, keyPrefix + key, JSON.stringify(cacheHandlerValue)); + + const expireOperation = cacheHandlerValue.lifespan + ? client.expireAt(options, keyPrefix + key, cacheHandlerValue.lifespan.expireAt) + : undefined; + + const setTagsOperation = cacheHandlerValue.tags.length + ? client.hSet(options, keyPrefix + sharedTagsKey, { + [key]: JSON.stringify(cacheHandlerValue.tags), + }) + : undefined; + + await Promise.all([setOperation, expireOperation, setTagsOperation]); }, - async getRevalidatedTags() { + async revalidateTag(tag) { assertClientIsReady(); - const sharedRevalidatedTags = await client.hGetAll( + const remoteTags: Record = await client.hGetAll( getTimeoutRedisCommandOptions(timeoutMs), - keyPrefix + revalidatedTagsKey, + keyPrefix + sharedTagsKey, ); - const entries = Object.entries(sharedRevalidatedTags); + const tagsMap = new Map(Object.entries(remoteTags)); - const revalidatedTags = entries.reduce((acc, [tag, revalidatedAt]) => { - acc[tag] = Number(revalidatedAt); + const keysToDelete = []; - return acc; - }, {}); + const tagsToDelete = []; - return revalidatedTags; - }, - async revalidateTag(tag, revalidatedAt) { - assertClientIsReady(); + for (const [key, tagsString] of tagsMap) { + const tags = JSON.parse(tagsString); + + if (tags.includes(tag)) { + keysToDelete.push(keyPrefix + key); + tagsToDelete.push(key); + } + } + + const options = getTimeoutRedisCommandOptions(timeoutMs); + + const deleteKeysOperation = client.del(options, keysToDelete); + + const updateTagsOperation = client.hDel(options, keyPrefix + sharedTagsKey, tagsToDelete); - await client.hSet(getTimeoutRedisCommandOptions(timeoutMs), keyPrefix + revalidatedTagsKey, { - [tag]: revalidatedAt, - }); + await Promise.all([deleteKeysOperation, updateTagsOperation]); }, }; } diff --git a/packages/cache-handler/src/handlers/server.ts b/packages/cache-handler/src/handlers/server.ts index dd732be0..7ed63893 100644 --- a/packages/cache-handler/src/handlers/server.ts +++ b/packages/cache-handler/src/handlers/server.ts @@ -1,6 +1,4 @@ -import { replaceJsonWithBase64, reviveFromBase64Representation } from '@neshca/json-replacer-reviver'; - -import type { Cache, CacheHandlerValue, RevalidatedTags } from '../cache-handler'; +import type { CacheHandlerValue, Handler } from '../cache-handler'; export type ServerCacheHandlerOptions = { /** @@ -26,18 +24,17 @@ export type ServerCacheHandlerOptions = { * * @example * ```js - * const serverCache = createCache({ + * const serverHandler = createHandler({ * baseUrl: 'http://localhost:8080/', * }); * ``` * * @remarks - * - the `get` method retrieves a value from the server cache. If the server response is not OK, it returns `null`. + * - the `get` method retrieves a value from the server cache. If the server response has status 404, it returns `null`. * - the `set` method allows setting a value in the server cache. - * - the `getRevalidatedTags` method retrieves revalidated tags from the server. - * - the `revalidateTag` method updates the revalidation time for a specific tag in the server cache. + * - the `revalidateTag` methods are used for handling tag-based cache revalidation. */ -export default function createCache({ baseUrl, timeoutMs }: ServerCacheHandlerOptions): Cache { +export default function createHandler({ baseUrl, timeoutMs }: ServerCacheHandlerOptions): Handler { return { name: 'server', async get(key) { @@ -58,19 +55,19 @@ export default function createCache({ baseUrl, timeoutMs }: ServerCacheHandlerOp } if (!response.ok) { - throw new Error(`Server error: ${response.status}`); + throw new Error(`get error: ${response.status}`); } const string = await response.text(); - return JSON.parse(string, reviveFromBase64Representation) as CacheHandlerValue; + return JSON.parse(string) as CacheHandlerValue; }, - async set(key, value, ttl) { + async set(key, cacheHandlerValue) { const url = new URL('/set', baseUrl); const response = await fetch(url, { method: 'POST', - body: JSON.stringify([key, JSON.stringify(value, replaceJsonWithBase64), ttl]), + body: JSON.stringify([key, JSON.stringify(cacheHandlerValue)]), headers: { 'Content-Type': 'application/json', }, @@ -82,35 +79,15 @@ export default function createCache({ baseUrl, timeoutMs }: ServerCacheHandlerOp }); if (!response.ok) { - throw new Error(`Server error: ${response.status}`); + throw new Error(`set error: ${response.status}`); } }, - - async getRevalidatedTags() { - const url = new URL('/getRevalidatedTags', baseUrl); - - const response = await fetch(url, { - signal: timeoutMs ? AbortSignal.timeout(timeoutMs) : undefined, - // @ts-expect-error -- act as an internal fetch call - next: { - internal: true, - }, - }); - - if (!response.ok) { - throw new Error('Server error.', { cause: response }); - } - - const json = (await response.json()) as RevalidatedTags; - - return json; - }, - async revalidateTag(tag, revalidatedAt) { + async revalidateTag(tag) { const url = new URL('/revalidateTag', baseUrl); const response = await fetch(url, { method: 'POST', - body: JSON.stringify([tag, revalidatedAt]), + body: JSON.stringify([tag]), headers: { 'Content-Type': 'application/json', }, @@ -121,8 +98,8 @@ export default function createCache({ baseUrl, timeoutMs }: ServerCacheHandlerOp }, }); - if (response.status > 500 && response.status < 600) { - throw new Error(`Server error: ${response.status}`); + if (!response.ok) { + throw new Error(`revalidateTag error: ${response.status}`); } }, }; diff --git a/packages/cache-handler/src/helpers/calculate-eviction-delay.test.ts b/packages/cache-handler/src/helpers/calculate-eviction-delay.test.ts deleted file mode 100644 index 770b30a8..00000000 --- a/packages/cache-handler/src/helpers/calculate-eviction-delay.test.ts +++ /dev/null @@ -1,100 +0,0 @@ -import assert from 'node:assert'; -import { test } from 'node:test'; - -import { calculateEvictionDelay } from './calculate-eviction-delay'; - -await test('should return undefined if originalTtl is not provided', () => { - const result = calculateEvictionDelay(undefined, true); - assert.strictEqual(result, undefined); -}); - -await test('should return originalTtl if useTtl is not a function', () => { - const result = calculateEvictionDelay(100, true); - assert.strictEqual(result, 100); -}); - -await test('should return computedTtl if useTtl is a function', () => { - const result = calculateEvictionDelay(100, (ttl) => ttl * 2); - assert.strictEqual(result, 200); -}); - -await test('should return undefined if originalTtl is null', () => { - const result = calculateEvictionDelay(null as unknown as undefined, true); - assert.strictEqual(result, undefined); -}); - -await test('should return originalTtl if useTtl is null', () => { - const result = calculateEvictionDelay(100, null as unknown as boolean); - assert.strictEqual(result, 100); -}); - -await test('should return originalTtl if useTtl is undefined', () => { - const result = calculateEvictionDelay(100, undefined as unknown as boolean); - assert.strictEqual(result, 100); -}); - -await test('should throw error if computedTtl is not a number', () => { - try { - calculateEvictionDelay(100, () => 'not a number' as unknown as number); - assert.fail('Expected to throw error'); - } catch (error) { - if (error instanceof Error) { - assert.match(error.message, /Invalid eviction delay/); - } - } -}); - -await test('should throw error if computedTtl is NaN', () => { - try { - calculateEvictionDelay(100, () => NaN); - assert.fail('Expected to throw error'); - } catch (error) { - if (error instanceof Error) { - assert.match(error.message, /Invalid eviction delay/); - } - } -}); - -await test('should throw error if computedTtl is equal to 0', () => { - try { - calculateEvictionDelay(100, () => 0); - assert.fail('Expected to throw error'); - } catch (error) { - if (error instanceof Error) { - assert.match(error.message, /Invalid eviction delay/); - } - } -}); - -await test('should throw error if computedTtl is a negative number', () => { - try { - calculateEvictionDelay(100, () => -50); - assert.fail('Expected to throw error'); - } catch (error) { - if (error instanceof Error) { - assert.match(error.message, /Invalid eviction delay/); - } - } -}); - -await test('should throw error if computedTtl is Infinity', () => { - try { - calculateEvictionDelay(100, () => Infinity); - assert.fail('Expected to throw error'); - } catch (error) { - if (error instanceof Error) { - assert.match(error.message, /Invalid eviction delay/); - } - } -}); - -await test('should throw error if computedTtl is -Infinity', () => { - try { - calculateEvictionDelay(100, () => -Infinity); - assert.fail('Expected to throw error'); - } catch (error) { - if (error instanceof Error) { - assert.match(error.message, /Invalid eviction delay/); - } - } -}); diff --git a/packages/cache-handler/src/helpers/calculate-eviction-delay.ts b/packages/cache-handler/src/helpers/calculate-eviction-delay.ts deleted file mode 100644 index e7cbba1e..00000000 --- a/packages/cache-handler/src/helpers/calculate-eviction-delay.ts +++ /dev/null @@ -1,41 +0,0 @@ -/** - * Calculates the delay after which the cache entry must be deleted. - * - * @param maxAge - The original `maxAge` delay from the Next.js after which the cache entry will be treated as stale. - * @param useTtl - The function or boolean value used to compute the delay after which the cache entry must be deleted. - * @returns The calculated delay after which the cache entry must be deleted. - * - * @throws If the computed delay is invalid (not a number, NaN, less than `maxAge`, not an integer or not finite). - * - * @remarks - * - If `useTtl` is `false` or `undefined`, the cache entry will never be deleted. - * - If `useTtl` is `true`, the cache entry will be deleted after `maxAge` delay. - * - If `useTtl` is a function, the cache entry will be deleted after the delay returned by the function. - */ -export function calculateEvictionDelay( - maxAge: number | undefined, - useTtl: boolean | ((maxAge: number) => number) | undefined | null, -): number | undefined { - if (!maxAge || useTtl === false) { - return undefined; - } - - if (useTtl === true || !useTtl) { - return maxAge; - } - - const computedEvictionDelay = Math.ceil(useTtl(maxAge)); - - if ( - typeof computedEvictionDelay !== 'number' || - Number.isNaN(computedEvictionDelay) || - computedEvictionDelay <= 0 || - !Number.isFinite(computedEvictionDelay) - ) { - throw new Error( - `Invalid eviction delay "${computedEvictionDelay}" returned from useTtl function. Expected a positive integer. Received: ${computedEvictionDelay}`, - ); - } - - return computedEvictionDelay; -} diff --git a/packages/cache-handler/src/helpers/create-validated-age-estimation-function.test.ts b/packages/cache-handler/src/helpers/create-validated-age-estimation-function.test.ts new file mode 100644 index 00000000..7529e60b --- /dev/null +++ b/packages/cache-handler/src/helpers/create-validated-age-estimation-function.test.ts @@ -0,0 +1,74 @@ +import assert from 'node:assert'; +import { test } from 'node:test'; +import { MAX_INT32 } from '../constants'; +import { createValidatedAgeEstimationFunction } from './create-validated-age-estimation-function'; + +await test('returns the same age for simple callback', () => { + const estimateAge = createValidatedAgeEstimationFunction((age) => age); + const testAge = 100; + assert.strictEqual(estimateAge(testAge), testAge, 'The estimated age should equal the input age.'); +}); + +await test('throws error for negative age', () => { + const estimateAge = createValidatedAgeEstimationFunction((age) => age); + const testAge = -1; + assert.throws( + () => estimateAge(testAge), + /The expire age must be a positive integer but got/, + 'Should throw error for negative age.', + ); +}); + +await test('handles float by flooring', () => { + const estimateAge = createValidatedAgeEstimationFunction((age) => age + 0.9); + const testAge = 100; + assert.strictEqual(estimateAge(testAge), 100, 'The estimated age should be floored to the nearest lower integer.'); +}); + +await test('handles numbers bigger than MAX_INT32 by returning MAX_INT32', () => { + const estimateAge = createValidatedAgeEstimationFunction((age) => age + MAX_INT32); + assert.strictEqual( + estimateAge(100), + MAX_INT32, + 'The estimated age should return MAX_INT32 for numbers bigger than MAX_INT32.', + ); +}); + +await test('throws error for non-integer', () => { + const estimateAge = createValidatedAgeEstimationFunction((age) => age + Number.NaN); + assert.throws( + () => estimateAge(10), + /The expire age must be a positive integer but got/, + 'Should throw error for non-integer values.', + ); +}); + +await test('throws error for zero', () => { + const estimateAge = createValidatedAgeEstimationFunction((age) => age * 0); + assert.throws( + () => estimateAge(10), + /The expire age must be a positive integer but got/, + 'Should throw error for zero.', + ); +}); + +await test('handles MAX_INT32 correctly', () => { + const estimateAge = createValidatedAgeEstimationFunction((_age) => MAX_INT32); + assert.strictEqual(estimateAge(0), MAX_INT32, 'The estimated age should handle MAX_INT32 correctly.'); +}); + +await test('throws error for non-numeric input', () => { + const estimateAge = createValidatedAgeEstimationFunction((_age) => 'non-numeric' as unknown as number); + assert.throws( + () => estimateAge(10), + /The expire age must be a positive integer but got/, + 'Should throw error for non-numeric input.', + ); +}); + +await test('callback throws an error', () => { + const estimateAge = createValidatedAgeEstimationFunction(() => { + throw new Error('Test error'); + }); + assert.throws(() => estimateAge(10), /Test error/, 'Should propagate callback errors.'); +}); diff --git a/packages/cache-handler/src/helpers/create-validated-age-estimation-function.ts b/packages/cache-handler/src/helpers/create-validated-age-estimation-function.ts new file mode 100644 index 00000000..04504845 --- /dev/null +++ b/packages/cache-handler/src/helpers/create-validated-age-estimation-function.ts @@ -0,0 +1,39 @@ +import assert from 'node:assert'; +import { MAX_INT32 } from '../constants'; + +type EstimateExpireAgeFunction = typeof getInitialExpireAge; + +/** + * Returns the initial expire age based on the provided stale age. + * + * @param staleAge - The stale age value. + * + * @returns The initial expire age. + */ +export function getInitialExpireAge(staleAge: number): number { + return staleAge; +} + +/** + * Creates a validated age estimation function. + * + * @param callback - The callback function to calculate the expire age based on the stale age. + * + * @returns The age estimation function. This function will return the expire age based on the stale age. + * Its return value will be a positive integer and less than 2147483647. + */ +export function createValidatedAgeEstimationFunction(callback = getInitialExpireAge): EstimateExpireAgeFunction { + return function estimateExpireAge(staleAge: number): number { + const rawExpireAge = callback(staleAge); + + const expireAge = Math.min(Math.floor(rawExpireAge), MAX_INT32); + + // Number.isInteger also checks for NaN, Infinity, -Infinity and non-numeric values. + assert( + Number.isInteger(expireAge) && expireAge > 0, + `The expire age must be a positive integer but got a ${expireAge}.`, + ); + + return expireAge; + }; +} diff --git a/packages/cache-handler/src/helpers/get-tags-from-page-data.ts b/packages/cache-handler/src/helpers/get-tags-from-page-data.ts new file mode 100644 index 00000000..58b3543e --- /dev/null +++ b/packages/cache-handler/src/helpers/get-tags-from-page-data.ts @@ -0,0 +1,29 @@ +import type { IncrementalCachedPageValue } from '@neshca/next-common'; + +export const NEXT_CACHE_IMPLICIT_TAG_ID = '_N_T_'; + +/** + * Checks if a tag is an internal tag. + * Internal tags start with '\_N_T\_'. + * + * @param tag - The tag to check. + * + * @returns True if the tag is an internal tag, false otherwise. + */ +function filterInternalTag(tag: string): boolean { + return !tag.startsWith(NEXT_CACHE_IMPLICIT_TAG_ID); +} + +/** + * Retrieves the cache tags from the given page data. + * + * @param data - The incremental cached page value. + * + * @returns An array of cache tags without the internal Next.js tags. + */ +export function getTagsFromPageData(data: IncrementalCachedPageValue): string[] { + const headers = data.headers?.['x-next-cache-tags']; + const pageTags = typeof headers === 'string' ? headers.split(',') : []; + + return pageTags.filter(filterInternalTag); +} diff --git a/packages/cache-handler/src/helpers/helpers.ts b/packages/cache-handler/src/helpers/helpers.ts index 9b7e1d32..707d8028 100644 --- a/packages/cache-handler/src/helpers/helpers.ts +++ b/packages/cache-handler/src/helpers/helpers.ts @@ -1,2 +1 @@ -export { calculateEvictionDelay } from './calculate-eviction-delay'; export { promiseWithTimeout } from './promise-with-timeout'; diff --git a/packages/cache-handler/src/helpers/promise-with-timeout.test.ts b/packages/cache-handler/src/helpers/promise-with-timeout.test.ts index f1a455a7..3e0946ec 100644 --- a/packages/cache-handler/src/helpers/promise-with-timeout.test.ts +++ b/packages/cache-handler/src/helpers/promise-with-timeout.test.ts @@ -48,7 +48,7 @@ await test('should return original operation if timeoutMs is not a number', asyn await test('should return original operation if timeoutMs is NaN', async () => { const operation = simulateOperation(100); - const result = await promiseWithTimeout(operation, NaN); + const result = await promiseWithTimeout(operation, Number.NaN); assert.strictEqual(result, 'completed'); }); diff --git a/packages/cache-handler/tsup.config.ts b/packages/cache-handler/tsup.config.ts index d8d58220..8b29b2e9 100644 --- a/packages/cache-handler/tsup.config.ts +++ b/packages/cache-handler/tsup.config.ts @@ -9,5 +9,5 @@ export const tsup = defineConfig({ format: ['cjs', 'esm'], dts: { resolve: true }, target: 'node18', - noExternal: ['@neshca/json-replacer-reviver', 'lru-cache'], + noExternal: ['lru-cache'], }); diff --git a/packages/diffscribe/README.md b/packages/diffscribe/README.md index 962e98ab..1959a2f1 100644 --- a/packages/diffscribe/README.md +++ b/packages/diffscribe/README.md @@ -18,9 +18,9 @@ Please note that this project is in its beta version and may undergo significant ## Prerequisites: -- Node.js `>=18.17.0` -- Git `>=2` -- An OpenAI API key. You can get one [here](https://platform.openai.com/account/api-keys) +- Node.js `>=18.17.0`. +- Git `>=2`. +- An OpenAI API key. You can get one [here](https://platform.openai.com/account/api-keys). - `.env` file with `OPENAI_API_KEY` set to your OpenAI API key. ## Installation: diff --git a/packages/diffscribe/src/diffscribe.ts b/packages/diffscribe/src/diffscribe.ts index d7a4122d..f9b16de6 100644 --- a/packages/diffscribe/src/diffscribe.ts +++ b/packages/diffscribe/src/diffscribe.ts @@ -48,7 +48,7 @@ const { } = args; // Validations -const commitLengthNumber = parseInt(commitLength, 10); +const commitLengthNumber = Number.parseInt(commitLength, 10); if ( Number.isNaN(commitLengthNumber) || commitLengthNumber < COMMIT_LENGTH_MIN || @@ -57,7 +57,7 @@ if ( throw new Error(`Invalid commit length ${commitLength}`); } -const temperature = parseFloat(modelTemperature); +const temperature = Number.parseFloat(modelTemperature); if (Number.isNaN(temperature)) { throw new Error(`Invalid temperature ${modelTemperature}`); } diff --git a/packages/json-replacer-reviver/README.md b/packages/json-replacer-reviver/README.md index eeecac07..3bd9a978 100644 --- a/packages/json-replacer-reviver/README.md +++ b/packages/json-replacer-reviver/README.md @@ -38,7 +38,7 @@ console.log(parsed); // ## Developing and contributing -[Developing and contributing in this monorepo](../../docs/contributing/monorepo.md) +[Developing and contributing to this monorepo](../../docs/contributing/monorepo.md) ### Running tests locally diff --git a/packages/server/src/server.ts b/packages/server/src/server.ts index de219ac6..1cd1292b 100644 --- a/packages/server/src/server.ts +++ b/packages/server/src/server.ts @@ -1,6 +1,6 @@ #!/usr/bin/env node -import { createCache } from '@neshca/next-lru-cache/cache-string-value'; +import createCacheStore from '@neshca/next-lru-cache/next-cache-handler-value'; import Fastify from 'fastify'; import { pino } from 'pino'; @@ -13,9 +13,7 @@ const logger = pino({ const server = Fastify(); -const cache = createCache(); - -const revalidatedItems = new Map(); +const lruCacheStore = createCacheStore(); const host = process.env.HOST ?? 'localhost'; const port = Number.parseInt(process.env.PORT ?? '8080', 10); @@ -23,33 +21,46 @@ const port = Number.parseInt(process.env.PORT ?? '8080', 10); server.get('/get', async (request, reply): Promise => { const { key } = request.query as { key: string }; - const data = cache.get(key); + const cacheValue = lruCacheStore.get(key); + + if (!cacheValue) { + await reply.code(404).send(null); + + return; + } + + if (cacheValue.lifespan && cacheValue.lifespan.expireAt < Date.now() / 1000) { + lruCacheStore.delete(key); - await reply.code(data ? 200 : 404).send(data); + await reply.code(404).send(null); + } + + await reply.code(200).send(cacheValue); }); server.post('/set', async (request, reply): Promise => { const [key, data] = request.body as [string, string, number]; - cache.set(key, data); + lruCacheStore.set(key, JSON.parse(data)); await reply.code(200).send(); }); -server.get('/getRevalidatedTags', async (_request, reply): Promise => { - await reply.code(200).send(Object.fromEntries(revalidatedItems)); -}); - server.post('/revalidateTag', async (request, reply): Promise => { - const [tag, revalidatedAt] = request.body as [string, number]; + const [tag] = request.body as [string]; - revalidatedItems.set(tag, revalidatedAt); + for (const [key, { tags }] of lruCacheStore.entries()) { + // If the value's tags include the specified tag, delete this entry + if (tags.includes(tag)) { + lruCacheStore.delete(key); + } + } await reply.code(200).send(); }); server.get('/clear-cache', async (_request, reply): Promise => { - cache.clear(); + lruCacheStore.clear(); await reply.code(200).send(true); }); From 347e2821e7585c1cb99cb9bfab4f1ee80c81f5e2 Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Mon, 26 Feb 2024 13:31:21 +0300 Subject: [PATCH 120/458] Fix cache-handler README.md (#359) --- packages/cache-handler/README.md | 17 ++--------------- 1 file changed, 2 insertions(+), 15 deletions(-) diff --git a/packages/cache-handler/README.md b/packages/cache-handler/README.md index a0bc8a91..a50ad59e 100644 --- a/packages/cache-handler/README.md +++ b/packages/cache-handler/README.md @@ -17,16 +17,13 @@ Check out the [changelog](https://github.com/caching-tools/next-shared-cache/blo 3. [Examples and Practical Implementations](#examples-and-practical-implementations) 4. [Requirements](#requirements) 5. [Documentation](#documentation) -6. [Roadmap](#roadmap) -7. [Developing and Contributing](#developing-and-contributing) -8. [License](#license) +6. [Developing and Contributing](#developing-and-contributing) +7. [License](#license) ## Overview Welcome to `@neshca/cache-handler`, a specialized ISR/Data cache API crafted for Next.js applications. This library is designed to simplify the complex task of configuring shared cache strategies in distributed environments, such as those involving multiple and independent instances of the same application. It offers a flexible and user-friendly approach to integrating custom cache solutions and hand-crafted, pre-configured cache strategies for Redis. -Welcome to [**`@neshca/cache-handler`**](./packages/cache-handler/README.md), a specialized ISR/Data cache API crafted for Next.js applications. This library is designed to simplify the complex task of configuring shared cache strategies in distributed environments, such as those involving multiple and independent instances of the same application. It offers a flexible and user-friendly approach to integrating custom cache solutions and hand-crafted, pre-configured cache strategies for Redis. - ### The importance of shared cache in distributed environments Next.js applications are often deployed in a self-hosted distributed environment, where multiple instances of the same application are running simultaneously. In such cases, the default Next.js cache is not shared between instances, causing the data to diverge between independent instances because load balancers route requests to a different instance every time. Another significant issue with the default cache setup is on-demand revalidation; it requires manual revalidation across all application replicas. @@ -57,16 +54,6 @@ Learn how to build your own Handler by reading [this guide](https://caching-tool [Documentation ↗](https://caching-tools.github.io/next-shared-cache) -### Roadmap - -- [x] Support for App routes. -- [x] Support for Pages routes. -- [x] TTL by default for cache values. -- [x] Happy path tests. -- [x] Examples. -- [x] Documentation. -- [ ] Full test coverage. - ## Developing and contributing [Developing and contributing](https://github.com/caching-tools/next-shared-cache/blob/canary/docs/contributing/cache-handler.md) From c8dd1d61eebb009333f0fce578aa39a131bd6872 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Mon, 26 Feb 2024 13:51:07 +0300 Subject: [PATCH 121/458] Version Packages (#358) Co-authored-by: github-actions[bot] --- .changeset/quick-birds-lie.md | 9 ------ .changeset/selfish-pandas-train.md | 30 -------------------- .changeset/seven-crabs-tease.md | 5 ---- .changeset/sixty-pillows-heal.md | 5 ---- packages/cache-handler/CHANGELOG.md | 31 +++++++++++++++++++++ packages/cache-handler/package.json | 2 +- packages/diffscribe/CHANGELOG.md | 6 ++++ packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/CHANGELOG.md | 6 ++++ packages/json-replacer-reviver/package.json | 2 +- packages/server/CHANGELOG.md | 10 +++++++ packages/server/package.json | 2 +- 12 files changed, 57 insertions(+), 53 deletions(-) delete mode 100644 .changeset/quick-birds-lie.md delete mode 100644 .changeset/selfish-pandas-train.md delete mode 100644 .changeset/seven-crabs-tease.md delete mode 100644 .changeset/sixty-pillows-heal.md diff --git a/.changeset/quick-birds-lie.md b/.changeset/quick-birds-lie.md deleted file mode 100644 index 22a6ffa5..00000000 --- a/.changeset/quick-birds-lie.md +++ /dev/null @@ -1,9 +0,0 @@ ---- -'@neshca/server': major ---- - -Release 1.0.0 - -#### Breaking Changes - -- change the API to match with the new CacheHandler API diff --git a/.changeset/selfish-pandas-train.md b/.changeset/selfish-pandas-train.md deleted file mode 100644 index 4be7a6eb..00000000 --- a/.changeset/selfish-pandas-train.md +++ /dev/null @@ -1,30 +0,0 @@ ---- -'@neshca/cache-handler': major ---- - -Release 1.0.0 - -#### Breaking Changes - -##### `@neshca/cache-handler` - -- rename `IncrementalCache` class to `CacheHandler` -- rename `Cache` type to `Handler` -- add `delete` method to `Handler` -- remove `useFileSystem` option -- add global `ttl` option -- remove support for on-demand revalidation by path for App Router pages -- remove file system handling except for pages with `fallback: false` in `getStaticPaths` -- refactor e2e tests for App Router pages -- add new tests for Pages router pages -- encapsulate `Buffer` to `base64` conversion to the `ROUTE` kind values -- make filesystem-related methods static -- refactor constructor to prevent multiple `CacheHandler.#configureCacheHandler` calls -- update and improve docs - -##### Pre-configured handlers - -- remove `revalidatedTagsKey` option -- add `sharedTagsKey` option -- remove `useTtl` option -- remove `@neshca/json-replacer-reviver` from deps diff --git a/.changeset/seven-crabs-tease.md b/.changeset/seven-crabs-tease.md deleted file mode 100644 index c0a872c2..00000000 --- a/.changeset/seven-crabs-tease.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'diffscribe': patch ---- - -Fixed punctuation in readme diff --git a/.changeset/sixty-pillows-heal.md b/.changeset/sixty-pillows-heal.md deleted file mode 100644 index 2c21c022..00000000 --- a/.changeset/sixty-pillows-heal.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@neshca/json-replacer-reviver': patch ---- - -Fixed type in readme diff --git a/packages/cache-handler/CHANGELOG.md b/packages/cache-handler/CHANGELOG.md index 0d7dc620..23339f68 100644 --- a/packages/cache-handler/CHANGELOG.md +++ b/packages/cache-handler/CHANGELOG.md @@ -1,5 +1,36 @@ # @neshca/cache-handler +## 1.0.0 + +### Major Changes + +- dbf9286: Release 1.0.0 + + #### Breaking Changes + + ##### `@neshca/cache-handler` + + - rename `IncrementalCache` class to `CacheHandler` + - rename `Cache` type to `Handler` + - add `delete` method to `Handler` + - remove `useFileSystem` option + - add global `ttl` option + - remove support for on-demand revalidation by path for App Router pages + - remove file system handling except for pages with `fallback: false` in `getStaticPaths` + - refactor e2e tests for App Router pages + - add new tests for Pages router pages + - encapsulate `Buffer` to `base64` conversion to the `ROUTE` kind values + - make filesystem-related methods static + - refactor constructor to prevent multiple `CacheHandler.#configureCacheHandler` calls + - update and improve docs + + ##### Pre-configured handlers + + - remove `revalidatedTagsKey` option + - add `sharedTagsKey` option + - remove `useTtl` option + - remove `@neshca/json-replacer-reviver` from deps + ## 0.6.10 ### Patch Changes diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 5a8e0a28..9fda93aa 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -1,6 +1,6 @@ { "name": "@neshca/cache-handler", - "version": "0.6.10", + "version": "1.0.0", "description": "Next.js self-hosting simplified.", "keywords": [ "cache", diff --git a/packages/diffscribe/CHANGELOG.md b/packages/diffscribe/CHANGELOG.md index e210582c..a5ea143c 100644 --- a/packages/diffscribe/CHANGELOG.md +++ b/packages/diffscribe/CHANGELOG.md @@ -1,5 +1,11 @@ # diffscribe +## 0.2.3 + +### Patch Changes + +- dbf9286: Fixed punctuation in readme + ## 0.2.2 ### Patch Changes diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index cc8ad5c8..04d4eea5 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -1,6 +1,6 @@ { "name": "diffscribe", - "version": "0.2.2", + "version": "0.2.3", "description": "An intelligent CLI tool designed to automatically generate meaningful commit messages using Git diffstat, status, and insights from OpenAI and you", "homepage": "https://github.com/caching-tools/next-shared-cache/tree/canary/packages/diffscribe", "bugs": "https://github.com/caching-tools/next-shared-cache/issues", diff --git a/packages/json-replacer-reviver/CHANGELOG.md b/packages/json-replacer-reviver/CHANGELOG.md index 14392a5e..c7bc09fd 100644 --- a/packages/json-replacer-reviver/CHANGELOG.md +++ b/packages/json-replacer-reviver/CHANGELOG.md @@ -1,5 +1,11 @@ # @neshca/json-replacer-reviver +## 1.1.2 + +### Patch Changes + +- dbf9286: Fixed type in readme + ## 1.1.1 ### Patch Changes diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index a7e97a2d..a56e3f66 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -1,6 +1,6 @@ { "name": "@neshca/json-replacer-reviver", - "version": "1.1.1", + "version": "1.1.2", "description": "Utility library for handling `Buffer` object serialization and deserialization with JSON, offering base64 representations", "homepage": "https://github.com/caching-tools/next-shared-cache/tree/canary/packages/json-replacer-reviver", "bugs": "https://github.com/caching-tools/next-shared-cache/issues", diff --git a/packages/server/CHANGELOG.md b/packages/server/CHANGELOG.md index afb82029..7613468e 100644 --- a/packages/server/CHANGELOG.md +++ b/packages/server/CHANGELOG.md @@ -1,5 +1,15 @@ # @neshca/server +## 1.0.0 + +### Major Changes + +- dbf9286: Release 1.0.0 + + #### Breaking Changes + + - change the API to match with the new CacheHandler API + ## 0.6.1 ### Patch Changes diff --git a/packages/server/package.json b/packages/server/package.json index edc75604..b3aedbd3 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -1,6 +1,6 @@ { "name": "@neshca/server", - "version": "0.6.1", + "version": "1.0.0", "description": "Efficient and simple HTTP caching server with LRU eviction, tailored for seamless integration with `@neshca/cache-handler/server` Handler", "homepage": "https://github.com/caching-tools/next-shared-cache/tree/canary/packages/server", "bugs": "https://github.com/caching-tools/next-shared-cache/issues", From 6aeca1fdf1e7c96b7939ebd88ce8cf4fe4f73e20 Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Mon, 26 Feb 2024 15:01:07 +0300 Subject: [PATCH 122/458] Fix Redis Handlers `revalidateTag` method (#360) --- .changeset/witty-beers-call.md | 5 ++ .../cache-handler/src/handlers/redis-stack.ts | 57 ++++++++----------- .../src/handlers/redis-strings.ts | 4 ++ 3 files changed, 34 insertions(+), 32 deletions(-) create mode 100644 .changeset/witty-beers-call.md diff --git a/.changeset/witty-beers-call.md b/.changeset/witty-beers-call.md new file mode 100644 index 00000000..9021ab5b --- /dev/null +++ b/.changeset/witty-beers-call.md @@ -0,0 +1,5 @@ +--- +'@neshca/cache-handler': patch +--- + +Fix Redis Handlers `revalidateTag` method diff --git a/packages/cache-handler/src/handlers/redis-stack.ts b/packages/cache-handler/src/handlers/redis-stack.ts index 35b0f726..434f20e7 100644 --- a/packages/cache-handler/src/handlers/redis-stack.ts +++ b/packages/cache-handler/src/handlers/redis-stack.ts @@ -64,18 +64,6 @@ export default async function createHandler({ } } - assertClientIsReady(); - - await client.json.set( - getTimeoutRedisCommandOptions(timeoutMs), - `${keyPrefix}${sharedTagsKey}`, - '.', - {}, - { - NX: true, - }, - ); - return { name: 'redis-stack', async get(key) { @@ -93,12 +81,11 @@ export default async function createHandler({ const options = getTimeoutRedisCommandOptions(timeoutMs); - const setTags = client.json.set( - options, - `${keyPrefix}${sharedTagsKey}`, - `.${key}`, - cacheHandlerValue.tags as unknown as RedisJSON, - ); + const setTags = cacheHandlerValue.tags.length + ? client.hSet(options, keyPrefix + sharedTagsKey, { + [key]: JSON.stringify(cacheHandlerValue.tags), + }) + : undefined; const setCacheValue = client.json.set( options, @@ -116,31 +103,37 @@ export default async function createHandler({ async revalidateTag(tag) { assertClientIsReady(); - const options = getTimeoutRedisCommandOptions(timeoutMs); - - const remoteTagsMap = await client.json.get(options, `${keyPrefix}${sharedTagsKey}`); + const remoteTags: Record = await client.hGetAll( + getTimeoutRedisCommandOptions(timeoutMs), + keyPrefix + sharedTagsKey, + ); - const tagMap = new Map(Object.entries(remoteTagsMap as Record)); + const tagsMap = new Map(Object.entries(remoteTags)); const keysToDelete = []; - for (const [key, tags] of tagMap) { + const tagsToDelete = []; + + for (const [key, tagsString] of tagsMap) { + const tags = JSON.parse(tagsString); + if (tags.includes(tag)) { keysToDelete.push(keyPrefix + key); - tagMap.delete(key); + tagsToDelete.push(key); } } - const deleteCacheOperation = client.del(options, keysToDelete); + if (keysToDelete.length === 0) { + return; + } - const setTagsOperation = client.json.set( - options, - `${keyPrefix}${sharedTagsKey}`, - '.', - Object.fromEntries(tagMap), - ); + const options = getTimeoutRedisCommandOptions(timeoutMs); + + const deleteKeysOperation = client.del(options, keysToDelete); + + const updateTagsOperation = client.hDel(options, keyPrefix + sharedTagsKey, tagsToDelete); - await Promise.all([deleteCacheOperation, setTagsOperation]); + await Promise.all([deleteKeysOperation, updateTagsOperation]); }, }; } diff --git a/packages/cache-handler/src/handlers/redis-strings.ts b/packages/cache-handler/src/handlers/redis-strings.ts index 7d83ba43..c898d2b5 100644 --- a/packages/cache-handler/src/handlers/redis-strings.ts +++ b/packages/cache-handler/src/handlers/redis-strings.ts @@ -98,6 +98,10 @@ export default function createHandler({ } } + if (keysToDelete.length === 0) { + return; + } + const options = getTimeoutRedisCommandOptions(timeoutMs); const deleteKeysOperation = client.del(options, keysToDelete); From 6cf06b519dd2fee184262c1c20521c91d884d75d Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Mon, 26 Feb 2024 15:07:58 +0300 Subject: [PATCH 123/458] Version Packages (#361) Co-authored-by: github-actions[bot] --- .changeset/witty-beers-call.md | 5 ----- packages/cache-handler/CHANGELOG.md | 6 ++++++ packages/cache-handler/package.json | 2 +- 3 files changed, 7 insertions(+), 6 deletions(-) delete mode 100644 .changeset/witty-beers-call.md diff --git a/.changeset/witty-beers-call.md b/.changeset/witty-beers-call.md deleted file mode 100644 index 9021ab5b..00000000 --- a/.changeset/witty-beers-call.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@neshca/cache-handler': patch ---- - -Fix Redis Handlers `revalidateTag` method diff --git a/packages/cache-handler/CHANGELOG.md b/packages/cache-handler/CHANGELOG.md index 23339f68..38e3443b 100644 --- a/packages/cache-handler/CHANGELOG.md +++ b/packages/cache-handler/CHANGELOG.md @@ -1,5 +1,11 @@ # @neshca/cache-handler +## 1.0.1 + +### Patch Changes + +- 6aeca1f: Fix Redis Handlers `revalidateTag` method + ## 1.0.0 ### Major Changes diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 9fda93aa..74c2f99b 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -1,6 +1,6 @@ { "name": "@neshca/cache-handler", - "version": "1.0.0", + "version": "1.0.1", "description": "Next.js self-hosting simplified.", "keywords": [ "cache", From 8fb737abdf0446555ee06c28f95c0090302b4496 Mon Sep 17 00:00:00 2001 From: Matheus Castro Date: Mon, 26 Feb 2024 10:24:52 -0300 Subject: [PATCH 124/458] Change hash set to Redis querying for the `redis-stack` Handler's `revalidateTag` method (#332) --- package-lock.json | 8 +-- .../cache-handler/src/handlers/redis-stack.ts | 60 +++++++++---------- 2 files changed, 32 insertions(+), 36 deletions(-) diff --git a/package-lock.json b/package-lock.json index da6bb6f5..8069178f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -16689,7 +16689,7 @@ }, "packages/cache-handler": { "name": "@neshca/cache-handler", - "version": "0.6.10", + "version": "1.0.0", "license": "MIT", "dependencies": { "lru-cache": "10.2.0" @@ -16719,7 +16719,7 @@ } }, "packages/diffscribe": { - "version": "0.2.2", + "version": "0.2.3", "license": "MIT", "bin": { "diffscribe": "dist/diffscribe.js" @@ -16747,7 +16747,7 @@ }, "packages/json-replacer-reviver": { "name": "@neshca/json-replacer-reviver", - "version": "1.1.1", + "version": "1.1.2", "license": "MIT", "devDependencies": { "@repo/typescript-config": "*", @@ -16769,7 +16769,7 @@ }, "packages/server": { "name": "@neshca/server", - "version": "0.6.1", + "version": "1.0.0", "license": "MIT", "dependencies": { "fastify": "4.26.1", diff --git a/packages/cache-handler/src/handlers/redis-stack.ts b/packages/cache-handler/src/handlers/redis-stack.ts index 434f20e7..2f86299c 100644 --- a/packages/cache-handler/src/handlers/redis-stack.ts +++ b/packages/cache-handler/src/handlers/redis-stack.ts @@ -1,4 +1,4 @@ -import type { RedisClientType } from 'redis'; +import { type RedisClientType, SchemaFieldTypes } from 'redis'; import type { CacheHandlerValue, Handler } from '../cache-handler'; import type { RedisJSON } from '../common-types'; @@ -43,7 +43,6 @@ export type RedisCacheHandlerOptions = { * const cache = await createHandler({ * client: redisClient, * keyPrefix: 'myApp:', - * sharedTagsKey: 'myTags' * }); * ``` * @@ -55,15 +54,34 @@ export type RedisCacheHandlerOptions = { export default async function createHandler({ client, keyPrefix = '', - sharedTagsKey = '__sharedTags__', timeoutMs = 5000, -}: RedisCacheHandlerOptions): Promise { +}: Omit, 'sharedTagsKey'>): Promise { function assertClientIsReady(): void { if (!client.isReady) { throw new Error('Redis client is not ready'); } } + function sanitizeTag(str: string) { + return str.replace(/[^a-zA-Z0-9]/gi, '_'); + } + + assertClientIsReady(); + + try { + await client.ft.create( + 'idx:tags', + { + '$.tags': { type: SchemaFieldTypes.TEXT, AS: 'tag' }, + }, + { + ON: 'JSON', + }, + ); + } catch (_e) { + // Index already exists + } + return { name: 'redis-stack', async get(key) { @@ -79,13 +97,9 @@ export default async function createHandler({ async set(key, cacheHandlerValue) { assertClientIsReady(); - const options = getTimeoutRedisCommandOptions(timeoutMs); + cacheHandlerValue.tags = cacheHandlerValue.tags.map(sanitizeTag); - const setTags = cacheHandlerValue.tags.length - ? client.hSet(options, keyPrefix + sharedTagsKey, { - [key]: JSON.stringify(cacheHandlerValue.tags), - }) - : undefined; + const options = getTimeoutRedisCommandOptions(timeoutMs); const setCacheValue = client.json.set( options, @@ -98,30 +112,14 @@ export default async function createHandler({ ? client.expireAt(options, keyPrefix + key, cacheHandlerValue.lifespan.expireAt) : undefined; - await Promise.all([setCacheValue, expireCacheValue, setTags]); + await Promise.all([setCacheValue, expireCacheValue]); }, async revalidateTag(tag) { assertClientIsReady(); - const remoteTags: Record = await client.hGetAll( - getTimeoutRedisCommandOptions(timeoutMs), - keyPrefix + sharedTagsKey, - ); - - const tagsMap = new Map(Object.entries(remoteTags)); - - const keysToDelete = []; - - const tagsToDelete = []; + const query = await client.ft.search('idx:tags', `@tag:(${sanitizeTag(tag)})`); - for (const [key, tagsString] of tagsMap) { - const tags = JSON.parse(tagsString); - - if (tags.includes(tag)) { - keysToDelete.push(keyPrefix + key); - tagsToDelete.push(key); - } - } + const keysToDelete = query.documents.map((document) => document.id); if (keysToDelete.length === 0) { return; @@ -131,9 +129,7 @@ export default async function createHandler({ const deleteKeysOperation = client.del(options, keysToDelete); - const updateTagsOperation = client.hDel(options, keyPrefix + sharedTagsKey, tagsToDelete); - - await Promise.all([deleteKeysOperation, updateTagsOperation]); + await Promise.all([deleteKeysOperation]); }, }; } From ea5e158cbd69d4d267f82f7e3174f748d8f2fc29 Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Mon, 26 Feb 2024 16:41:46 +0300 Subject: [PATCH 125/458] Create changeset file (#362) --- .changeset/chilly-rules-love.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 .changeset/chilly-rules-love.md diff --git a/.changeset/chilly-rules-love.md b/.changeset/chilly-rules-love.md new file mode 100644 index 00000000..c0059da9 --- /dev/null +++ b/.changeset/chilly-rules-love.md @@ -0,0 +1,5 @@ +--- +'@neshca/cache-handler': patch +--- + +Change hash set to Redis querying for the `redis-stack` Handler's `revalidateTag` method From 7764adc77dfa107d2718755bb81463351f115a92 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Mon, 26 Feb 2024 16:56:38 +0300 Subject: [PATCH 126/458] Version Packages (#363) Co-authored-by: github-actions[bot] --- .changeset/chilly-rules-love.md | 5 ----- packages/cache-handler/CHANGELOG.md | 6 ++++++ packages/cache-handler/package.json | 2 +- 3 files changed, 7 insertions(+), 6 deletions(-) delete mode 100644 .changeset/chilly-rules-love.md diff --git a/.changeset/chilly-rules-love.md b/.changeset/chilly-rules-love.md deleted file mode 100644 index c0059da9..00000000 --- a/.changeset/chilly-rules-love.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@neshca/cache-handler': patch ---- - -Change hash set to Redis querying for the `redis-stack` Handler's `revalidateTag` method diff --git a/packages/cache-handler/CHANGELOG.md b/packages/cache-handler/CHANGELOG.md index 38e3443b..c64137f8 100644 --- a/packages/cache-handler/CHANGELOG.md +++ b/packages/cache-handler/CHANGELOG.md @@ -1,5 +1,11 @@ # @neshca/cache-handler +## 1.0.2 + +### Patch Changes + +- ea5e158: Change hash set to Redis querying for the `redis-stack` Handler's `revalidateTag` method + ## 1.0.1 ### Patch Changes diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 74c2f99b..faa7e0ba 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -1,6 +1,6 @@ { "name": "@neshca/cache-handler", - "version": "1.0.1", + "version": "1.0.2", "description": "Next.js self-hosting simplified.", "keywords": [ "cache", From 46859bb3c944ad0b0abd666aec2210678d14f8b2 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 27 Feb 2024 08:18:27 +0300 Subject: [PATCH 127/458] Bump the definitely-typed group with 1 update (#365) Bumps the definitely-typed group with 1 update: [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react). Updates `@types/react` from 18.2.58 to 18.2.59 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react) --- updated-dependencies: - dependency-name: "@types/react" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- package-lock.json | 12 ++++++------ 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 8f54b373..88760e66 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -29,7 +29,7 @@ "@repo/typescript-config": "*", "@types/eslint": "8.56.3", "@types/node": "20.11.20", - "@types/react": "18.2.58", + "@types/react": "18.2.59", "@types/react-dom": "18.2.19", "dotenv-cli": "7.3.0", "eslint": "8.57.0", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index ffe9675c..4afb45fe 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -23,7 +23,7 @@ "@repo/typescript-config": "*", "@types/eslint": "8.56.3", "@types/node": "20.11.20", - "@types/react": "18.2.58", + "@types/react": "18.2.59", "@types/react-dom": "18.2.19", "eslint": "8.57.0", "typescript": "5.3.3" diff --git a/package-lock.json b/package-lock.json index 8069178f..a6ad42ec 100644 --- a/package-lock.json +++ b/package-lock.json @@ -49,7 +49,7 @@ "@repo/typescript-config": "*", "@types/eslint": "8.56.3", "@types/node": "20.11.20", - "@types/react": "18.2.58", + "@types/react": "18.2.59", "@types/react-dom": "18.2.19", "dotenv-cli": "7.3.0", "eslint": "8.57.0", @@ -130,7 +130,7 @@ "@repo/typescript-config": "*", "@types/eslint": "8.56.3", "@types/node": "20.11.20", - "@types/react": "18.2.58", + "@types/react": "18.2.59", "@types/react-dom": "18.2.19", "eslint": "8.57.0", "typescript": "5.3.3" @@ -3460,9 +3460,9 @@ "integrity": "sha512-ga8y9v9uyeiLdpKddhxYQkxNDrfvuPrlFb0N1qnZZByvcElJaXthF1UhvCh9TLWJBEHeNtdnbysW7Y6Uq8CVng==" }, "node_modules/@types/react": { - "version": "18.2.58", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.58.tgz", - "integrity": "sha512-TaGvMNhxvG2Q0K0aYxiKfNDS5m5ZsoIBBbtfUorxdH4NGSXIlYvZxLJI+9Dd3KjeB3780bciLyAb7ylO8pLhPw==", + "version": "18.2.59", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.59.tgz", + "integrity": "sha512-DE+F6BYEC8VtajY85Qr7mmhTd/79rJKIHCg99MU9SWPB4xvLb6D1za2vYflgZfmPqQVEr6UqJTnLXEwzpVPuOg==", "dependencies": { "@types/prop-types": "*", "@types/scheduler": "*", @@ -16689,7 +16689,7 @@ }, "packages/cache-handler": { "name": "@neshca/cache-handler", - "version": "1.0.0", + "version": "1.0.2", "license": "MIT", "dependencies": { "lru-cache": "10.2.0" From 7a1423efa825534adbedf9fe62027ddaccf241ea Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 27 Feb 2024 05:28:20 +0000 Subject: [PATCH 128/458] Bump the eslint group with 2 updates (#366) --- internal/eslint-config/package.json | 4 +- package-lock.json | 122 ++++++++++++++-------------- 2 files changed, 63 insertions(+), 63 deletions(-) diff --git a/internal/eslint-config/package.json b/internal/eslint-config/package.json index 7651d62a..989b4a54 100644 --- a/internal/eslint-config/package.json +++ b/internal/eslint-config/package.json @@ -6,8 +6,8 @@ "next.js" ], "devDependencies": { - "@typescript-eslint/eslint-plugin": "7.0.2", - "@typescript-eslint/parser": "7.0.2", + "@typescript-eslint/eslint-plugin": "7.1.0", + "@typescript-eslint/parser": "7.1.0", "@vercel/style-guide": "5.2.0", "eslint-config-prettier": "9.1.0", "eslint-config-turbo": "1.12.4", diff --git a/package-lock.json b/package-lock.json index a6ad42ec..44b4dac9 100644 --- a/package-lock.json +++ b/package-lock.json @@ -264,8 +264,8 @@ "name": "@repo/eslint-config", "version": "0.0.0", "devDependencies": { - "@typescript-eslint/eslint-plugin": "7.0.2", - "@typescript-eslint/parser": "7.0.2", + "@typescript-eslint/eslint-plugin": "7.1.0", + "@typescript-eslint/parser": "7.1.0", "@vercel/style-guide": "5.2.0", "eslint-config-prettier": "9.1.0", "eslint-config-turbo": "1.12.4", @@ -3494,16 +3494,16 @@ "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.0.2.tgz", - "integrity": "sha512-/XtVZJtbaphtdrWjr+CJclaCVGPtOdBpFEnvtNf/jRV0IiEemRrL0qABex/nEt8isYcnFacm3nPHYQwL+Wb7qg==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.1.0.tgz", + "integrity": "sha512-j6vT/kCulhG5wBmGtstKeiVr1rdXE4nk+DT1k6trYkwlrvW9eOF5ZbgKnd/YR6PcM4uTEXa0h6Fcvf6X7Dxl0w==", "dev": true, "dependencies": { "@eslint-community/regexpp": "^4.5.1", - "@typescript-eslint/scope-manager": "7.0.2", - "@typescript-eslint/type-utils": "7.0.2", - "@typescript-eslint/utils": "7.0.2", - "@typescript-eslint/visitor-keys": "7.0.2", + "@typescript-eslint/scope-manager": "7.1.0", + "@typescript-eslint/type-utils": "7.1.0", + "@typescript-eslint/utils": "7.1.0", + "@typescript-eslint/visitor-keys": "7.1.0", "debug": "^4.3.4", "graphemer": "^1.4.0", "ignore": "^5.2.4", @@ -3529,13 +3529,13 @@ } }, "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/scope-manager": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-7.0.2.tgz", - "integrity": "sha512-l6sa2jF3h+qgN2qUMjVR3uCNGjWw4ahGfzIYsCtFrQJCjhbrDPdiihYT8FnnqFwsWX+20hK592yX9I2rxKTP4g==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-7.1.0.tgz", + "integrity": "sha512-6TmN4OJiohHfoOdGZ3huuLhpiUgOGTpgXNUPJgeZOZR3DnIpdSgtt83RS35OYNNXxM4TScVlpVKC9jyQSETR1A==", "dev": true, "dependencies": { - "@typescript-eslint/types": "7.0.2", - "@typescript-eslint/visitor-keys": "7.0.2" + "@typescript-eslint/types": "7.1.0", + "@typescript-eslint/visitor-keys": "7.1.0" }, "engines": { "node": "^16.0.0 || >=18.0.0" @@ -3546,13 +3546,13 @@ } }, "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/type-utils": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-7.0.2.tgz", - "integrity": "sha512-IKKDcFsKAYlk8Rs4wiFfEwJTQlHcdn8CLwLaxwd6zb8HNiMcQIFX9sWax2k4Cjj7l7mGS5N1zl7RCHOVwHq2VQ==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-7.1.0.tgz", + "integrity": "sha512-UZIhv8G+5b5skkcuhgvxYWHjk7FW7/JP5lPASMEUoliAPwIH/rxoUSQPia2cuOj9AmDZmwUl1usKm85t5VUMew==", "dev": true, "dependencies": { - "@typescript-eslint/typescript-estree": "7.0.2", - "@typescript-eslint/utils": "7.0.2", + "@typescript-eslint/typescript-estree": "7.1.0", + "@typescript-eslint/utils": "7.1.0", "debug": "^4.3.4", "ts-api-utils": "^1.0.1" }, @@ -3573,9 +3573,9 @@ } }, "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/types": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.0.2.tgz", - "integrity": "sha512-ZzcCQHj4JaXFjdOql6adYV4B/oFOFjPOC9XYwCaZFRvqN8Llfvv4gSxrkQkd2u4Ci62i2c6W6gkDwQJDaRc4nA==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.1.0.tgz", + "integrity": "sha512-qTWjWieJ1tRJkxgZYXx6WUYtWlBc48YRxgY2JN1aGeVpkhmnopq+SUC8UEVGNXIvWH7XyuTjwALfG6bFEgCkQA==", "dev": true, "engines": { "node": "^16.0.0 || >=18.0.0" @@ -3586,13 +3586,13 @@ } }, "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/typescript-estree": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-7.0.2.tgz", - "integrity": "sha512-3AMc8khTcELFWcKcPc0xiLviEvvfzATpdPj/DXuOGIdQIIFybf4DMT1vKRbuAEOFMwhWt7NFLXRkbjsvKZQyvw==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-7.1.0.tgz", + "integrity": "sha512-k7MyrbD6E463CBbSpcOnwa8oXRdHzH1WiVzOipK3L5KSML92ZKgUBrTlehdi7PEIMT8k0bQixHUGXggPAlKnOQ==", "dev": true, "dependencies": { - "@typescript-eslint/types": "7.0.2", - "@typescript-eslint/visitor-keys": "7.0.2", + "@typescript-eslint/types": "7.1.0", + "@typescript-eslint/visitor-keys": "7.1.0", "debug": "^4.3.4", "globby": "^11.1.0", "is-glob": "^4.0.3", @@ -3614,17 +3614,17 @@ } }, "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/utils": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-7.0.2.tgz", - "integrity": "sha512-PZPIONBIB/X684bhT1XlrkjNZJIEevwkKDsdwfiu1WeqBxYEEdIgVDgm8/bbKHVu+6YOpeRqcfImTdImx/4Bsw==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-7.1.0.tgz", + "integrity": "sha512-WUFba6PZC5OCGEmbweGpnNJytJiLG7ZvDBJJoUcX4qZYf1mGZ97mO2Mps6O2efxJcJdRNpqweCistDbZMwIVHw==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.4.0", "@types/json-schema": "^7.0.12", "@types/semver": "^7.5.0", - "@typescript-eslint/scope-manager": "7.0.2", - "@typescript-eslint/types": "7.0.2", - "@typescript-eslint/typescript-estree": "7.0.2", + "@typescript-eslint/scope-manager": "7.1.0", + "@typescript-eslint/types": "7.1.0", + "@typescript-eslint/typescript-estree": "7.1.0", "semver": "^7.5.4" }, "engines": { @@ -3639,12 +3639,12 @@ } }, "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/visitor-keys": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-7.0.2.tgz", - "integrity": "sha512-8Y+YiBmqPighbm5xA2k4wKTxRzx9EkBu7Rlw+WHqMvRJ3RPz/BMBO9b2ru0LUNmXg120PHUXD5+SWFy2R8DqlQ==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-7.1.0.tgz", + "integrity": "sha512-FhUqNWluiGNzlvnDZiXad4mZRhtghdoKW6e98GoEOYSu5cND+E39rG5KwJMUzeENwm1ztYBRqof8wMLP+wNPIA==", "dev": true, "dependencies": { - "@typescript-eslint/types": "7.0.2", + "@typescript-eslint/types": "7.1.0", "eslint-visitor-keys": "^3.4.1" }, "engines": { @@ -3680,15 +3680,15 @@ } }, "node_modules/@typescript-eslint/parser": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-7.0.2.tgz", - "integrity": "sha512-GdwfDglCxSmU+QTS9vhz2Sop46ebNCXpPPvsByK7hu0rFGRHL+AusKQJ7SoN+LbLh6APFpQwHKmDSwN35Z700Q==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-7.1.0.tgz", + "integrity": "sha512-V1EknKUubZ1gWFjiOZhDSNToOjs63/9O0puCgGS8aDOgpZY326fzFu15QAUjwaXzRZjf/qdsdBrckYdv9YxB8w==", "dev": true, "dependencies": { - "@typescript-eslint/scope-manager": "7.0.2", - "@typescript-eslint/types": "7.0.2", - "@typescript-eslint/typescript-estree": "7.0.2", - "@typescript-eslint/visitor-keys": "7.0.2", + "@typescript-eslint/scope-manager": "7.1.0", + "@typescript-eslint/types": "7.1.0", + "@typescript-eslint/typescript-estree": "7.1.0", + "@typescript-eslint/visitor-keys": "7.1.0", "debug": "^4.3.4" }, "engines": { @@ -3708,13 +3708,13 @@ } }, "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/scope-manager": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-7.0.2.tgz", - "integrity": "sha512-l6sa2jF3h+qgN2qUMjVR3uCNGjWw4ahGfzIYsCtFrQJCjhbrDPdiihYT8FnnqFwsWX+20hK592yX9I2rxKTP4g==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-7.1.0.tgz", + "integrity": "sha512-6TmN4OJiohHfoOdGZ3huuLhpiUgOGTpgXNUPJgeZOZR3DnIpdSgtt83RS35OYNNXxM4TScVlpVKC9jyQSETR1A==", "dev": true, "dependencies": { - "@typescript-eslint/types": "7.0.2", - "@typescript-eslint/visitor-keys": "7.0.2" + "@typescript-eslint/types": "7.1.0", + "@typescript-eslint/visitor-keys": "7.1.0" }, "engines": { "node": "^16.0.0 || >=18.0.0" @@ -3725,9 +3725,9 @@ } }, "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/types": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.0.2.tgz", - "integrity": "sha512-ZzcCQHj4JaXFjdOql6adYV4B/oFOFjPOC9XYwCaZFRvqN8Llfvv4gSxrkQkd2u4Ci62i2c6W6gkDwQJDaRc4nA==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.1.0.tgz", + "integrity": "sha512-qTWjWieJ1tRJkxgZYXx6WUYtWlBc48YRxgY2JN1aGeVpkhmnopq+SUC8UEVGNXIvWH7XyuTjwALfG6bFEgCkQA==", "dev": true, "engines": { "node": "^16.0.0 || >=18.0.0" @@ -3738,13 +3738,13 @@ } }, "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/typescript-estree": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-7.0.2.tgz", - "integrity": "sha512-3AMc8khTcELFWcKcPc0xiLviEvvfzATpdPj/DXuOGIdQIIFybf4DMT1vKRbuAEOFMwhWt7NFLXRkbjsvKZQyvw==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-7.1.0.tgz", + "integrity": "sha512-k7MyrbD6E463CBbSpcOnwa8oXRdHzH1WiVzOipK3L5KSML92ZKgUBrTlehdi7PEIMT8k0bQixHUGXggPAlKnOQ==", "dev": true, "dependencies": { - "@typescript-eslint/types": "7.0.2", - "@typescript-eslint/visitor-keys": "7.0.2", + "@typescript-eslint/types": "7.1.0", + "@typescript-eslint/visitor-keys": "7.1.0", "debug": "^4.3.4", "globby": "^11.1.0", "is-glob": "^4.0.3", @@ -3766,12 +3766,12 @@ } }, "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/visitor-keys": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-7.0.2.tgz", - "integrity": "sha512-8Y+YiBmqPighbm5xA2k4wKTxRzx9EkBu7Rlw+WHqMvRJ3RPz/BMBO9b2ru0LUNmXg120PHUXD5+SWFy2R8DqlQ==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-7.1.0.tgz", + "integrity": "sha512-FhUqNWluiGNzlvnDZiXad4mZRhtghdoKW6e98GoEOYSu5cND+E39rG5KwJMUzeENwm1ztYBRqof8wMLP+wNPIA==", "dev": true, "dependencies": { - "@typescript-eslint/types": "7.0.2", + "@typescript-eslint/types": "7.1.0", "eslint-visitor-keys": "^3.4.1" }, "engines": { From 30a20d9544cec68ee35d19980f8a1fcaca7a3dba Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Tue, 27 Feb 2024 13:07:19 +0300 Subject: [PATCH 129/458] Fix Redis client type in Redis Handlers (#367) --- .changeset/shiny-pandas-rule.md | 5 +++ apps/cache-testing/cache-handler-local.mjs | 2 + .../cache-handler-redis-stack.mjs | 2 + .../cache-handler-redis-strings.mjs | 3 ++ apps/cache-testing/cache-handler-server.mjs | 2 + packages/cache-handler/src/common-types.ts | 27 ++++++++++++- .../cache-handler/src/handlers/redis-stack.ts | 38 ++++--------------- .../src/handlers/redis-strings.ts | 12 +++--- 8 files changed, 55 insertions(+), 36 deletions(-) create mode 100644 .changeset/shiny-pandas-rule.md diff --git a/.changeset/shiny-pandas-rule.md b/.changeset/shiny-pandas-rule.md new file mode 100644 index 00000000..ec1e06e7 --- /dev/null +++ b/.changeset/shiny-pandas-rule.md @@ -0,0 +1,5 @@ +--- +'@neshca/cache-handler': patch +--- + +Fix Redis client type in Redis Handlers diff --git a/apps/cache-testing/cache-handler-local.mjs b/apps/cache-testing/cache-handler-local.mjs index 0b59ec79..8b25938c 100644 --- a/apps/cache-testing/cache-handler-local.mjs +++ b/apps/cache-testing/cache-handler-local.mjs @@ -1,3 +1,5 @@ +// @ts-check + import { CacheHandler } from '@neshca/cache-handler'; import createLruHandler from '@neshca/cache-handler/local-lru'; diff --git a/apps/cache-testing/cache-handler-redis-stack.mjs b/apps/cache-testing/cache-handler-redis-stack.mjs index 2d78d709..af587f02 100644 --- a/apps/cache-testing/cache-handler-redis-stack.mjs +++ b/apps/cache-testing/cache-handler-redis-stack.mjs @@ -1,3 +1,5 @@ +// @ts-check + import { CacheHandler } from '@neshca/cache-handler'; import createLruHandler from '@neshca/cache-handler/local-lru'; import createRedisHandler from '@neshca/cache-handler/redis-stack'; diff --git a/apps/cache-testing/cache-handler-redis-strings.mjs b/apps/cache-testing/cache-handler-redis-strings.mjs index 7a6e318f..3226f272 100644 --- a/apps/cache-testing/cache-handler-redis-strings.mjs +++ b/apps/cache-testing/cache-handler-redis-strings.mjs @@ -1,3 +1,5 @@ +// @ts-check + import { CacheHandler } from '@neshca/cache-handler'; import createLruHandler from '@neshca/cache-handler/local-lru'; import createRedisHandler from '@neshca/cache-handler/redis-strings'; @@ -10,6 +12,7 @@ CacheHandler.onCreation(async () => { const PREFIX = 'string:'; + /** @type {import("redis").RedisClientType} */ const client = createClient({ url: process.env.REDIS_URL, name: `cache-handler:${PREFIX}${process.env.PORT ?? process.pid}`, diff --git a/apps/cache-testing/cache-handler-server.mjs b/apps/cache-testing/cache-handler-server.mjs index a60c8655..d952ea49 100644 --- a/apps/cache-testing/cache-handler-server.mjs +++ b/apps/cache-testing/cache-handler-server.mjs @@ -1,3 +1,5 @@ +// @ts-check + import { CacheHandler } from '@neshca/cache-handler'; import createLruHandler from '@neshca/cache-handler/local-lru'; import createServerHandler from '@neshca/cache-handler/server'; diff --git a/packages/cache-handler/src/common-types.ts b/packages/cache-handler/src/common-types.ts index 74f021ca..ebb2b987 100644 --- a/packages/cache-handler/src/common-types.ts +++ b/packages/cache-handler/src/common-types.ts @@ -1,3 +1,28 @@ -import type { RedisClientType } from 'redis'; +import type { RedisClientType, createClient } from 'redis'; export type RedisJSON = Parameters['2']; + +/** + * The configuration options for the Redis Handler + */ +export type CreateRedisStackHandlerOptions> = { + /** + * The Redis client instance. + */ + client: T; + /** + * Optional. Prefix for all keys, useful for namespacing. Defaults to an empty string. + */ + keyPrefix?: string; + /** + * Timeout in milliseconds for Redis operations. Defaults to 5000. + */ + timeoutMs?: number; +}; + +export type CreateRedisStringsHandlerOptions = CreateRedisStackHandlerOptions & { + /** + * Optional. Key for storing cache tags. Defaults to `__sharedTags__`. + */ + sharedTagsKey?: string; +}; diff --git a/packages/cache-handler/src/handlers/redis-stack.ts b/packages/cache-handler/src/handlers/redis-stack.ts index 2f86299c..d1e03569 100644 --- a/packages/cache-handler/src/handlers/redis-stack.ts +++ b/packages/cache-handler/src/handlers/redis-stack.ts @@ -1,30 +1,10 @@ -import { type RedisClientType, SchemaFieldTypes } from 'redis'; +import { SchemaFieldTypes } from 'redis'; import type { CacheHandlerValue, Handler } from '../cache-handler'; -import type { RedisJSON } from '../common-types'; +import type { CreateRedisStackHandlerOptions, RedisJSON } from '../common-types'; import { getTimeoutRedisCommandOptions } from '../helpers/get-timeout-redis-command-options'; -/** - * The configuration options for the Redis Handler - */ -export type RedisCacheHandlerOptions = { - /** - * The Redis client instance. - */ - client: T; - /** - * Optional. Prefix for all keys, useful for namespacing. Defaults to an empty string. - */ - keyPrefix?: string; - /** - * Optional. Key for storing cache tags. Defaults to `__sharedTags__`. - */ - sharedTagsKey?: string; - /** - * Timeout in milliseconds for Redis operations. Defaults to 5000. - */ - timeoutMs?: number; -}; +export { CreateRedisStackHandlerOptions }; /** * Creates a Handler using Redis client. @@ -33,14 +13,14 @@ export type RedisCacheHandlerOptions = { * It supports Redis Client. The handler includes * methods to get, set, and manage cache values and revalidated tags. * - * @param options - The configuration options for the Redis Handler. See {@link RedisCacheHandlerOptions}. + * @param options - The configuration options for the Redis Stack Handler. See {@link CreateRedisStackHandlerOptions}. * * @returns A promise that resolves to object representing the cache, with methods for cache operations. * * @example * ```js * const redisClient = createRedisClient(...); - * const cache = await createHandler({ + * const handler = await createHandler({ * client: redisClient, * keyPrefix: 'myApp:', * }); @@ -51,11 +31,11 @@ export type RedisCacheHandlerOptions = { * - the `set` method allows setting a value in the cache. * - the `revalidateTag` methods are used for handling tag-based cache revalidation. */ -export default async function createHandler({ +export default async function createHandler({ client, keyPrefix = '', timeoutMs = 5000, -}: Omit, 'sharedTagsKey'>): Promise { +}: CreateRedisStackHandlerOptions): Promise { function assertClientIsReady(): void { if (!client.isReady) { throw new Error('Redis client is not ready'); @@ -127,9 +107,7 @@ export default async function createHandler({ const options = getTimeoutRedisCommandOptions(timeoutMs); - const deleteKeysOperation = client.del(options, keysToDelete); - - await Promise.all([deleteKeysOperation]); + await client.del(options, keysToDelete); }, }; } diff --git a/packages/cache-handler/src/handlers/redis-strings.ts b/packages/cache-handler/src/handlers/redis-strings.ts index c898d2b5..3a01542c 100644 --- a/packages/cache-handler/src/handlers/redis-strings.ts +++ b/packages/cache-handler/src/handlers/redis-strings.ts @@ -1,9 +1,11 @@ -import type { RedisClientType } from 'redis'; +// import type { RedisClientType } from 'redis'; import type { CacheHandlerValue, Handler } from '../cache-handler'; +import type { CreateRedisStringsHandlerOptions } from '../common-types'; + import { getTimeoutRedisCommandOptions } from '../helpers/get-timeout-redis-command-options'; -import type { RedisCacheHandlerOptions } from './redis-stack'; +export { CreateRedisStringsHandlerOptions }; /** * Creates a Handler using Redis client. @@ -12,7 +14,7 @@ import type { RedisCacheHandlerOptions } from './redis-stack'; * It supports both Redis Client and Redis Cluster types. The handler includes * methods to get, set, and manage cache values and revalidated tags. * - * @param options - The configuration options for the Redis Handler. See {@link RedisCacheHandlerOptions}. + * @param options - The configuration options for the Redis Handler. See {@link CreateRedisStringsHandlerOptions}. * * @returns An object representing the cache, with methods for cache operations. * @@ -31,12 +33,12 @@ import type { RedisCacheHandlerOptions } from './redis-stack'; * - the `set` method allows setting a value in the cache. * - the `revalidateTag` methods are used for handling tag-based cache revalidation. */ -export default function createHandler({ +export default function createHandler({ client, keyPrefix = '', sharedTagsKey = '__sharedTags__', timeoutMs = 5000, -}: RedisCacheHandlerOptions): Handler { +}: CreateRedisStringsHandlerOptions): Handler { function assertClientIsReady(): void { if (!client.isReady) { throw new Error('Redis client is not ready yet or connection is lost. Keep trying...'); From 9ac45b5ceade15f5a31fa99b34392096b81c1f5f Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 27 Feb 2024 13:22:55 +0300 Subject: [PATCH 130/458] Version Packages (#368) Co-authored-by: github-actions[bot] --- .changeset/shiny-pandas-rule.md | 5 ----- packages/cache-handler/CHANGELOG.md | 6 ++++++ packages/cache-handler/package.json | 2 +- 3 files changed, 7 insertions(+), 6 deletions(-) delete mode 100644 .changeset/shiny-pandas-rule.md diff --git a/.changeset/shiny-pandas-rule.md b/.changeset/shiny-pandas-rule.md deleted file mode 100644 index ec1e06e7..00000000 --- a/.changeset/shiny-pandas-rule.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@neshca/cache-handler': patch ---- - -Fix Redis client type in Redis Handlers diff --git a/packages/cache-handler/CHANGELOG.md b/packages/cache-handler/CHANGELOG.md index c64137f8..3443a0a3 100644 --- a/packages/cache-handler/CHANGELOG.md +++ b/packages/cache-handler/CHANGELOG.md @@ -1,5 +1,11 @@ # @neshca/cache-handler +## 1.0.3 + +### Patch Changes + +- 30a20d9: Fix Redis client type in Redis Handlers + ## 1.0.2 ### Patch Changes diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index faa7e0ba..379bfdb0 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -1,6 +1,6 @@ { "name": "@neshca/cache-handler", - "version": "1.0.2", + "version": "1.0.3", "description": "Next.js self-hosting simplified.", "keywords": [ "cache", From 3dd5b939cd40119778425ae3e0baca4a14a2a424 Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Wed, 28 Feb 2024 12:29:30 +0300 Subject: [PATCH 131/458] Fix body mutation of ROUTE kind values (#373) --- .changeset/friendly-cherries-mate.md | 5 +++ .../cache-handler-next-example.js | 35 +++++++++++++++++++ .../cache-testing/src/app/app/static/route.ts | 3 ++ apps/cache-testing/tests/app.spec.ts | 12 +++++++ packages/cache-handler/src/cache-handler.ts | 15 ++++++-- 5 files changed, 67 insertions(+), 3 deletions(-) create mode 100644 .changeset/friendly-cherries-mate.md create mode 100644 apps/cache-testing/cache-handler-next-example.js create mode 100644 apps/cache-testing/src/app/app/static/route.ts diff --git a/.changeset/friendly-cherries-mate.md b/.changeset/friendly-cherries-mate.md new file mode 100644 index 00000000..09a7889a --- /dev/null +++ b/.changeset/friendly-cherries-mate.md @@ -0,0 +1,5 @@ +--- +'@neshca/cache-handler': patch +--- + +Fix body mutation of the ROUTE kind values. diff --git a/apps/cache-testing/cache-handler-next-example.js b/apps/cache-testing/cache-handler-next-example.js new file mode 100644 index 00000000..1854b9c0 --- /dev/null +++ b/apps/cache-testing/cache-handler-next-example.js @@ -0,0 +1,35 @@ +const cache = new Map(); + +module.exports = class CacheHandler { + constructor(options) { + this.options = options; + } + + // biome-ignore lint/nursery/useAwait: don't bother + async get(key) { + // This could be stored anywhere, like durable storage + return cache.get(key); + } + + // biome-ignore lint/nursery/useAwait: don't bother + async set(key, data, ctx) { + // This could be stored anywhere, like durable storage + cache.set(key, { + value: data, + lastModified: Date.now(), + tags: ctx.tags, + }); + } + + // biome-ignore lint/nursery/useAwait: don't bother + async revalidateTag(tag) { + // Iterate over all entries in the cache + // biome-ignore lint/style/useConst: don't bother + for (let [key, value] of cache) { + // If the value's tags include the specified tag, delete this entry + if (value.tags.includes(tag)) { + cache.delete(key); + } + } + } +}; diff --git a/apps/cache-testing/src/app/app/static/route.ts b/apps/cache-testing/src/app/app/static/route.ts new file mode 100644 index 00000000..1b9fe80e --- /dev/null +++ b/apps/cache-testing/src/app/app/static/route.ts @@ -0,0 +1,3 @@ +export function GET() { + return Promise.resolve(new Response('OK', { status: 200 })); +} diff --git a/apps/cache-testing/tests/app.spec.ts b/apps/cache-testing/tests/app.spec.ts index 9c1c2ab9..cc2c6095 100644 --- a/apps/cache-testing/tests/app.spec.ts +++ b/apps/cache-testing/tests/app.spec.ts @@ -322,3 +322,15 @@ test.describe('SSR', () => { expect(valueFromPageAfterReload - valueFromPage === 1).toBe(true); }); }); + +test.describe('Routes', () => { + test('static route return OK', async ({ page, baseURL }) => { + const url = new URL('/app/static', `${baseURL}:3000`); + + await page.goto(url.href); + + const message = await page.getByText('OK').innerText(); + + expect(message).toBe('OK'); + }); +}); diff --git a/packages/cache-handler/src/cache-handler.ts b/packages/cache-handler/src/cache-handler.ts index 4349cbaa..2dc6df1e 100644 --- a/packages/cache-handler/src/cache-handler.ts +++ b/packages/cache-handler/src/cache-handler.ts @@ -542,7 +542,7 @@ export class CacheHandler implements NextCacheHandler { async set(...args: CacheHandlerParametersSet): Promise { await CacheHandler.#configureCacheHandler(); - const [cacheKey, value, ctx] = args; + const [cacheKey, incrementalCacheValue, ctx] = args; const { revalidate, tags = [] } = ctx; @@ -554,14 +554,23 @@ export class CacheHandler implements NextCacheHandler { let cacheHandlerValueTags = tags; + let value = incrementalCacheValue; + switch (value?.kind) { case 'PAGE': { cacheHandlerValueTags = getTagsFromPageData(value); break; } case 'ROUTE': { - // replace the body with a base64 encoded string to save space - value.body = value.body.toString('base64') as unknown as Buffer; + // create a new object to avoid mutating the original value + value = { + // replace the body with a base64 encoded string to save space + body: value.body.toString('base64') as unknown as Buffer, + headers: value.headers, + kind: value.kind, + status: value.status, + }; + break; } default: { From 03b7744790a2abd55828d9beb9604fd873f35a1f Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Wed, 28 Feb 2024 12:42:21 +0300 Subject: [PATCH 132/458] Version Packages (#374) Co-authored-by: github-actions[bot] --- .changeset/friendly-cherries-mate.md | 5 ----- packages/cache-handler/CHANGELOG.md | 6 ++++++ packages/cache-handler/package.json | 2 +- 3 files changed, 7 insertions(+), 6 deletions(-) delete mode 100644 .changeset/friendly-cherries-mate.md diff --git a/.changeset/friendly-cherries-mate.md b/.changeset/friendly-cherries-mate.md deleted file mode 100644 index 09a7889a..00000000 --- a/.changeset/friendly-cherries-mate.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@neshca/cache-handler': patch ---- - -Fix body mutation of the ROUTE kind values. diff --git a/packages/cache-handler/CHANGELOG.md b/packages/cache-handler/CHANGELOG.md index 3443a0a3..b93150a7 100644 --- a/packages/cache-handler/CHANGELOG.md +++ b/packages/cache-handler/CHANGELOG.md @@ -1,5 +1,11 @@ # @neshca/cache-handler +## 1.0.4 + +### Patch Changes + +- 3dd5b93: Fix body mutation of the ROUTE kind values. + ## 1.0.3 ### Patch Changes diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 379bfdb0..128e1c6b 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -1,6 +1,6 @@ { "name": "@neshca/cache-handler", - "version": "1.0.3", + "version": "1.0.4", "description": "Next.js self-hosting simplified.", "keywords": [ "cache", From e637350ae0ba80f9409c1bb30647d9d1362ed7e1 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 28 Feb 2024 09:58:14 +0000 Subject: [PATCH 133/458] Bump the definitely-typed group with 3 updates (#375) --- apps/cache-testing/package.json | 6 +- docs/cache-handler-docs/package.json | 6 +- internal/backend/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 135 +++++--------------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 10 files changed, 44 insertions(+), 117 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 88760e66..99e1d48a 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -27,9 +27,9 @@ "@playwright/test": "1.41.2", "@repo/eslint-config": "*", "@repo/typescript-config": "*", - "@types/eslint": "8.56.3", - "@types/node": "20.11.20", - "@types/react": "18.2.59", + "@types/eslint": "8.56.4", + "@types/node": "20.11.21", + "@types/react": "18.2.60", "@types/react-dom": "18.2.19", "dotenv-cli": "7.3.0", "eslint": "8.57.0", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 4afb45fe..7bc7b1da 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -21,9 +21,9 @@ "@next/eslint-plugin-next": "14.1.0", "@repo/eslint-config": "*", "@repo/typescript-config": "*", - "@types/eslint": "8.56.3", - "@types/node": "20.11.20", - "@types/react": "18.2.59", + "@types/eslint": "8.56.4", + "@types/node": "20.11.21", + "@types/react": "18.2.60", "@types/react-dom": "18.2.19", "eslint": "8.57.0", "typescript": "5.3.3" diff --git a/internal/backend/package.json b/internal/backend/package.json index f6376e36..0707298b 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.20", + "@types/node": "20.11.21", "pino-pretty": "10.3.1", "rimraf": "5.0.5", "tsx": "4.7.1", diff --git a/internal/next-common/package.json b/internal/next-common/package.json index 36d4718f..42216520 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.20", + "@types/node": "20.11.21", "rimraf": "5.0.5", "typescript": "5.3.3" } diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index 41ea974f..e828092d 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -16,7 +16,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.20", + "@types/node": "20.11.21", "rimraf": "5.0.5", "typescript": "5.3.3" } diff --git a/package-lock.json b/package-lock.json index 44b4dac9..799b1b6e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -47,9 +47,9 @@ "@playwright/test": "1.41.2", "@repo/eslint-config": "*", "@repo/typescript-config": "*", - "@types/eslint": "8.56.3", - "@types/node": "20.11.20", - "@types/react": "18.2.59", + "@types/eslint": "8.56.4", + "@types/node": "20.11.21", + "@types/react": "18.2.60", "@types/react-dom": "18.2.19", "dotenv-cli": "7.3.0", "eslint": "8.57.0", @@ -61,15 +61,6 @@ "typescript": "5.3.3" } }, - "apps/cache-testing/node_modules/@types/node": { - "version": "20.11.20", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.20.tgz", - "integrity": "sha512-7/rR21OS+fq8IyHTgtLkDK949uzsa6n8BkziAKtPVpugIkO6D+/ooXMvzXxDnZrmtXVfjb1bKQafYpb8s89LOg==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "apps/cache-testing/node_modules/next": { "version": "14.1.1-canary.27", "resolved": "https://registry.npmjs.org/next/-/next-14.1.1-canary.27.tgz", @@ -128,9 +119,9 @@ "@next/eslint-plugin-next": "14.1.0", "@repo/eslint-config": "*", "@repo/typescript-config": "*", - "@types/eslint": "8.56.3", - "@types/node": "20.11.20", - "@types/react": "18.2.59", + "@types/eslint": "8.56.4", + "@types/node": "20.11.21", + "@types/react": "18.2.60", "@types/react-dom": "18.2.19", "eslint": "8.57.0", "typescript": "5.3.3" @@ -145,15 +136,6 @@ "glob": "10.3.10" } }, - "docs/cache-handler-docs/node_modules/@types/node": { - "version": "20.11.20", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.20.tgz", - "integrity": "sha512-7/rR21OS+fq8IyHTgtLkDK949uzsa6n8BkziAKtPVpugIkO6D+/ooXMvzXxDnZrmtXVfjb1bKQafYpb8s89LOg==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "docs/cache-handler-docs/node_modules/nextra": { "version": "2.13.3", "resolved": "https://registry.npmjs.org/nextra/-/nextra-2.13.3.tgz", @@ -244,22 +226,13 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.20", + "@types/node": "20.11.21", "pino-pretty": "10.3.1", "rimraf": "5.0.5", "tsx": "4.7.1", "typescript": "5.3.3" } }, - "internal/backend/node_modules/@types/node": { - "version": "20.11.20", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.20.tgz", - "integrity": "sha512-7/rR21OS+fq8IyHTgtLkDK949uzsa6n8BkziAKtPVpugIkO6D+/ooXMvzXxDnZrmtXVfjb1bKQafYpb8s89LOg==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "internal/eslint-config": { "name": "@repo/eslint-config", "version": "0.0.0", @@ -406,20 +379,11 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.20", + "@types/node": "20.11.21", "rimraf": "5.0.5", "typescript": "5.3.3" } }, - "internal/next-common/node_modules/@types/node": { - "version": "20.11.20", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.20.tgz", - "integrity": "sha512-7/rR21OS+fq8IyHTgtLkDK949uzsa6n8BkziAKtPVpugIkO6D+/ooXMvzXxDnZrmtXVfjb1bKQafYpb8s89LOg==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "internal/next-common/node_modules/next": { "version": "14.1.1-canary.27", "resolved": "https://registry.npmjs.org/next/-/next-14.1.1-canary.27.tgz", @@ -475,20 +439,11 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.20", + "@types/node": "20.11.21", "rimraf": "5.0.5", "typescript": "5.3.3" } }, - "internal/next-lru-cache/node_modules/@types/node": { - "version": "20.11.20", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.20.tgz", - "integrity": "sha512-7/rR21OS+fq8IyHTgtLkDK949uzsa6n8BkziAKtPVpugIkO6D+/ooXMvzXxDnZrmtXVfjb1bKQafYpb8s89LOg==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "internal/prettier-config": { "name": "@repo/prettier-config", "version": "0.0.0", @@ -2095,6 +2050,11 @@ "fs-extra": "^8.1.0" } }, + "node_modules/@manypkg/find-root/node_modules/@types/node": { + "version": "12.20.55", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", + "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" + }, "node_modules/@manypkg/find-root/node_modules/fs-extra": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", @@ -3359,9 +3319,9 @@ } }, "node_modules/@types/eslint": { - "version": "8.56.3", - "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.56.3.tgz", - "integrity": "sha512-PvSf1wfv2wJpVIFUMSb+i4PvqNYkB9Rkp9ZDO3oaWzq4SKhsQk4mrMBr3ZH06I0hKrVGLBacmgl8JM4WVjb9dg==", + "version": "8.56.4", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.56.4.tgz", + "integrity": "sha512-lG1GLUnL5vuRBGb3MgWUWLdGMH2Hps+pERuyQXCfWozuGKdnhf9Pbg4pkcrVUHjKrU7Rl+GCZ/299ObBXZFAxg==", "dev": true, "dependencies": { "@types/estree": "*", @@ -3435,9 +3395,12 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "12.20.55", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", - "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" + "version": "20.11.21", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.21.tgz", + "integrity": "sha512-/ySDLGscFPNasfqStUuWWPfL78jompfIoVzLJPVVAHBh6rpG68+pI2Gk+fNLeI8/f1yPYL4s46EleVIc20F1Ow==", + "dependencies": { + "undici-types": "~5.26.4" + } }, "node_modules/@types/node-fetch": { "version": "2.6.11", @@ -3460,9 +3423,9 @@ "integrity": "sha512-ga8y9v9uyeiLdpKddhxYQkxNDrfvuPrlFb0N1qnZZByvcElJaXthF1UhvCh9TLWJBEHeNtdnbysW7Y6Uq8CVng==" }, "node_modules/@types/react": { - "version": "18.2.59", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.59.tgz", - "integrity": "sha512-DE+F6BYEC8VtajY85Qr7mmhTd/79rJKIHCg99MU9SWPB4xvLb6D1za2vYflgZfmPqQVEr6UqJTnLXEwzpVPuOg==", + "version": "18.2.60", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.60.tgz", + "integrity": "sha512-dfiPj9+k20jJrLGOu9Nf6eqxm2EyJRrq2NvwOFsfbb7sFExZ9WELPs67UImHj3Ayxg8ruTtKtNnbjaF8olPq0A==", "dependencies": { "@types/prop-types": "*", "@types/scheduler": "*", @@ -16689,7 +16652,7 @@ }, "packages/cache-handler": { "name": "@neshca/cache-handler", - "version": "1.0.2", + "version": "1.0.4", "license": "MIT", "dependencies": { "lru-cache": "10.2.0" @@ -16698,7 +16661,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.20", + "@types/node": "20.11.21", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.1", @@ -16709,15 +16672,6 @@ "redis": ">=4.6" } }, - "packages/cache-handler/node_modules/@types/node": { - "version": "20.11.20", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.20.tgz", - "integrity": "sha512-7/rR21OS+fq8IyHTgtLkDK949uzsa6n8BkziAKtPVpugIkO6D+/ooXMvzXxDnZrmtXVfjb1bKQafYpb8s89LOg==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "packages/diffscribe": { "version": "0.2.3", "license": "MIT", @@ -16726,7 +16680,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.20", + "@types/node": "20.11.21", "rimraf": "5.0.5", "tsup": "8.0.2", "typescript": "5.3.3" @@ -16736,37 +16690,19 @@ "openai": "^4.12.3" } }, - "packages/diffscribe/node_modules/@types/node": { - "version": "20.11.20", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.20.tgz", - "integrity": "sha512-7/rR21OS+fq8IyHTgtLkDK949uzsa6n8BkziAKtPVpugIkO6D+/ooXMvzXxDnZrmtXVfjb1bKQafYpb8s89LOg==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "packages/json-replacer-reviver": { "name": "@neshca/json-replacer-reviver", "version": "1.1.2", "license": "MIT", "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.20", + "@types/node": "20.11.21", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.1", "typescript": "5.3.3" } }, - "packages/json-replacer-reviver/node_modules/@types/node": { - "version": "20.11.20", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.20.tgz", - "integrity": "sha512-7/rR21OS+fq8IyHTgtLkDK949uzsa6n8BkziAKtPVpugIkO6D+/ooXMvzXxDnZrmtXVfjb1bKQafYpb8s89LOg==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "packages/server": { "name": "@neshca/server", "version": "1.0.0", @@ -16782,21 +16718,12 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.20", + "@types/node": "20.11.21", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.1", "typescript": "5.3.3" } - }, - "packages/server/node_modules/@types/node": { - "version": "20.11.20", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.20.tgz", - "integrity": "sha512-7/rR21OS+fq8IyHTgtLkDK949uzsa6n8BkziAKtPVpugIkO6D+/ooXMvzXxDnZrmtXVfjb1bKQafYpb8s89LOg==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } } } } diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 128e1c6b..fb9d1ab8 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -72,7 +72,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.20", + "@types/node": "20.11.21", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.1", diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index 04d4eea5..84fd529f 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -25,7 +25,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.20", + "@types/node": "20.11.21", "rimraf": "5.0.5", "tsup": "8.0.2", "typescript": "5.3.3" diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index a56e3f66..3539fc4d 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -28,7 +28,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.20", + "@types/node": "20.11.21", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.1", diff --git a/packages/server/package.json b/packages/server/package.json index b3aedbd3..d9112dad 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -32,7 +32,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.20", + "@types/node": "20.11.21", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.1", From 8676c7bfc0f827590a4c943bf2ed2856dd506faa Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 28 Feb 2024 13:07:17 +0300 Subject: [PATCH 134/458] Bump @playwright/test from 1.41.2 to 1.42.0 (#371) Bumps [@playwright/test](https://github.com/microsoft/playwright) from 1.41.2 to 1.42.0. - [Release notes](https://github.com/microsoft/playwright/releases) - [Commits](https://github.com/microsoft/playwright/compare/v1.41.2...v1.42.0) --- updated-dependencies: - dependency-name: "@playwright/test" dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- package-lock.json | 24 ++++++++++++------------ 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 99e1d48a..c679e9db 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -24,7 +24,7 @@ "devDependencies": { "@neshca/cache-handler": "*", "@next/eslint-plugin-next": "14.1.1-canary.27", - "@playwright/test": "1.41.2", + "@playwright/test": "1.42.0", "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.4", diff --git a/package-lock.json b/package-lock.json index 799b1b6e..09bd397e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -44,7 +44,7 @@ "devDependencies": { "@neshca/cache-handler": "*", "@next/eslint-plugin-next": "14.1.1-canary.27", - "@playwright/test": "1.41.2", + "@playwright/test": "1.42.0", "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.4", @@ -2725,12 +2725,12 @@ } }, "node_modules/@playwright/test": { - "version": "1.41.2", - "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.41.2.tgz", - "integrity": "sha512-qQB9h7KbibJzrDpkXkYvsmiDJK14FULCCZgEcoe2AvFAS64oCirWTwzTlAYEbKaRxWs5TFesE1Na6izMv3HfGg==", + "version": "1.42.0", + "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.42.0.tgz", + "integrity": "sha512-2k1HzC28Fs+HiwbJOQDUwrWMttqSLUVdjCqitBOjdCD0svWOMQUVqrXX6iFD7POps6xXAojsX/dGBpKnjZctLA==", "dev": true, "dependencies": { - "playwright": "1.41.2" + "playwright": "1.42.0" }, "bin": { "playwright": "cli.js" @@ -12491,12 +12491,12 @@ } }, "node_modules/playwright": { - "version": "1.41.2", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.41.2.tgz", - "integrity": "sha512-v0bOa6H2GJChDL8pAeLa/LZC4feoAMbSQm1/jF/ySsWWoaNItvrMP7GEkvEEFyCTUYKMxjQKaTSg5up7nR6/8A==", + "version": "1.42.0", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.42.0.tgz", + "integrity": "sha512-Ko7YRUgj5xBHbntrgt4EIw/nE//XBHOKVKnBjO1KuZkmkhlbgyggTe5s9hjqQ1LpN+Xg+kHsQyt5Pa0Bw5XpvQ==", "dev": true, "dependencies": { - "playwright-core": "1.41.2" + "playwright-core": "1.42.0" }, "bin": { "playwright": "cli.js" @@ -12509,9 +12509,9 @@ } }, "node_modules/playwright-core": { - "version": "1.41.2", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.41.2.tgz", - "integrity": "sha512-VaTvwCA4Y8kxEe+kfm2+uUUw5Lubf38RxF7FpBxLPmGe5sdNkSg5e3ChEigaGrX7qdqT3pt2m/98LiyvU2x6CA==", + "version": "1.42.0", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.42.0.tgz", + "integrity": "sha512-0HD9y8qEVlcbsAjdpBaFjmaTHf+1FeIddy8VJLeiqwhcNqGCBe4Wp2e8knpqiYbzxtxarxiXyNDw2cG8sCaNMQ==", "dev": true, "bin": { "playwright-core": "cli.js" From 73c63ffc2e66ab186e15dd19a4bf1e758143d3b1 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 29 Feb 2024 06:43:12 +0300 Subject: [PATCH 135/458] Bump the definitely-typed group with 1 update (#377) Bumps the definitely-typed group with 1 update: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node). Updates `@types/node` from 20.11.21 to 20.11.22 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) --- updated-dependencies: - dependency-name: "@types/node" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- internal/backend/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 24 ++++++++++----------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 10 files changed, 21 insertions(+), 21 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index c679e9db..e33be784 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -28,7 +28,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.4", - "@types/node": "20.11.21", + "@types/node": "20.11.22", "@types/react": "18.2.60", "@types/react-dom": "18.2.19", "dotenv-cli": "7.3.0", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 7bc7b1da..8958ae47 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -22,7 +22,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.4", - "@types/node": "20.11.21", + "@types/node": "20.11.22", "@types/react": "18.2.60", "@types/react-dom": "18.2.19", "eslint": "8.57.0", diff --git a/internal/backend/package.json b/internal/backend/package.json index 0707298b..ff35af34 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.21", + "@types/node": "20.11.22", "pino-pretty": "10.3.1", "rimraf": "5.0.5", "tsx": "4.7.1", diff --git a/internal/next-common/package.json b/internal/next-common/package.json index 42216520..bcf82636 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.21", + "@types/node": "20.11.22", "rimraf": "5.0.5", "typescript": "5.3.3" } diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index e828092d..0e36a0ae 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -16,7 +16,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.21", + "@types/node": "20.11.22", "rimraf": "5.0.5", "typescript": "5.3.3" } diff --git a/package-lock.json b/package-lock.json index 09bd397e..cd2f6139 100644 --- a/package-lock.json +++ b/package-lock.json @@ -48,7 +48,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.4", - "@types/node": "20.11.21", + "@types/node": "20.11.22", "@types/react": "18.2.60", "@types/react-dom": "18.2.19", "dotenv-cli": "7.3.0", @@ -120,7 +120,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.4", - "@types/node": "20.11.21", + "@types/node": "20.11.22", "@types/react": "18.2.60", "@types/react-dom": "18.2.19", "eslint": "8.57.0", @@ -226,7 +226,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.21", + "@types/node": "20.11.22", "pino-pretty": "10.3.1", "rimraf": "5.0.5", "tsx": "4.7.1", @@ -379,7 +379,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.21", + "@types/node": "20.11.22", "rimraf": "5.0.5", "typescript": "5.3.3" } @@ -439,7 +439,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.21", + "@types/node": "20.11.22", "rimraf": "5.0.5", "typescript": "5.3.3" } @@ -3395,9 +3395,9 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "20.11.21", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.21.tgz", - "integrity": "sha512-/ySDLGscFPNasfqStUuWWPfL78jompfIoVzLJPVVAHBh6rpG68+pI2Gk+fNLeI8/f1yPYL4s46EleVIc20F1Ow==", + "version": "20.11.22", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.22.tgz", + "integrity": "sha512-/G+IxWxma6V3E+pqK1tSl2Fo1kl41pK1yeCyDsgkF9WlVAme4j5ISYM2zR11bgLFJGLN5sVK40T4RJNuiZbEjA==", "dependencies": { "undici-types": "~5.26.4" } @@ -16661,7 +16661,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.21", + "@types/node": "20.11.22", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.1", @@ -16680,7 +16680,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.21", + "@types/node": "20.11.22", "rimraf": "5.0.5", "tsup": "8.0.2", "typescript": "5.3.3" @@ -16696,7 +16696,7 @@ "license": "MIT", "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.21", + "@types/node": "20.11.22", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.1", @@ -16718,7 +16718,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.21", + "@types/node": "20.11.22", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.1", diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index fb9d1ab8..d9f314d6 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -72,7 +72,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.21", + "@types/node": "20.11.22", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.1", diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index 84fd529f..1e47eb28 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -25,7 +25,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.21", + "@types/node": "20.11.22", "rimraf": "5.0.5", "tsup": "8.0.2", "typescript": "5.3.3" diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 3539fc4d..88e9aa25 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -28,7 +28,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.21", + "@types/node": "20.11.22", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.1", diff --git a/packages/server/package.json b/packages/server/package.json index d9112dad..3754ae01 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -32,7 +32,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.21", + "@types/node": "20.11.22", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.1", From 00b6aafe0ae004b827d6467cca3657a71fba2c46 Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Thu, 29 Feb 2024 23:01:28 +0300 Subject: [PATCH 136/458] Add information about Next.js Routers support in readmes and documentation (#379) --- .changeset/healthy-fishes-complain.md | 5 ++ README.md | 10 +++ docs/cache-handler-docs/CHANGELOG.md | 79 --------------------- docs/cache-handler-docs/package.json | 2 +- docs/cache-handler-docs/src/pages/index.mdx | 6 ++ packages/cache-handler/README.md | 6 ++ 6 files changed, 28 insertions(+), 80 deletions(-) create mode 100644 .changeset/healthy-fishes-complain.md delete mode 100644 docs/cache-handler-docs/CHANGELOG.md diff --git a/.changeset/healthy-fishes-complain.md b/.changeset/healthy-fishes-complain.md new file mode 100644 index 00000000..737797b5 --- /dev/null +++ b/.changeset/healthy-fishes-complain.md @@ -0,0 +1,5 @@ +--- +'@neshca/cache-handler': patch +--- + +Add information about Next.js Routers support in readmes and documentation. diff --git a/README.md b/README.md index dfe577f3..e3f60fcd 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,16 @@ # `@neshca/cache-handler` +[![npm package](https://img.shields.io/npm/v/@neshca/cache-handler/latest.svg)](https://www.npmjs.com/package/@neshca/cache-handler) +[![Dependencies](https://img.shields.io/npm/dm/@neshca/cache-handler)](https://www.npmjs.com/package/@neshca/cache-handler) +[![License](https://img.shields.io/npm/l/express.svg)](https://github.com/caching-tools/next-shared-cache/blob/canary/packages/cache-handler/LICENSE) + Welcome to [**`@neshca/cache-handler`**](./packages/cache-handler/README.md), a specialized ISR/Data cache API crafted for Next.js applications. This library is designed to simplify the complex task of configuring shared cache strategies in distributed environments, such as those involving multiple and independent instances of the same application. It offers a flexible and user-friendly approach to integrating custom cache solutions and hand-crafted, pre-configured cache strategies for Redis. +### Next.js Routers support + +- Full support for Pages Router. +- Almost full support for App Router. The only exception is the `revalidatePath` function. + ### The importance of shared cache in distributed environments Next.js applications are often deployed in a self-hosted distributed environment, where multiple instances of the same application are running simultaneously. In such cases, the default Next.js cache is not shared between instances, causing the data to diverge between independent instances because load balancers route requests to a different instance every time. Another significant issue with the default cache setup is on-demand revalidation; it requires manual revalidation across all application replicas. @@ -12,6 +21,7 @@ Next.js applications are often deployed in a self-hosted distributed environment - Comprehensive customization options. - Simplified on-demand revalidation, akin to managing a single application instance. - TTL by default to keep cache storage clean and space-efficient. +- One configuration for both Routes. ### Kickstarting Your Custom Cache Solution diff --git a/docs/cache-handler-docs/CHANGELOG.md b/docs/cache-handler-docs/CHANGELOG.md deleted file mode 100644 index 12aa98fb..00000000 --- a/docs/cache-handler-docs/CHANGELOG.md +++ /dev/null @@ -1,79 +0,0 @@ -# cache-handler-docs - -## 0.6.6 - -### Patch Changes - -- bb61a52: Applied new code style. - -## 0.6.5 - -### Patch Changes - -- ddf957f: Added a section with ES Modules example. - -## 0.6.4 - -### Patch Changes - -- 5ba656c: Updated installation documentation section with stabilized `cacheHandler` Next Config option. - -## 0.6.3 - -### Patch Changes - -- 277865a: Updated docs in `Using TTL` section. - -## 0.6.2 - -### Patch Changes - -- fb2a5ce: Updated the docs. - - #### What's Changed - - - Added information about the `timeoutMs` option for Redis Handlers. - - Added information about the `name` property for `cache` objects. - - Improved the debugging section. - -## 0.6.1 - -### Patch Changes - -- d9c5d09: Added the `name` static field to the `IncrementalCache` class and updated the documentation to reflect this in troubleshooting section. - -## 0.6.0 - -### Minor Changes - -- 60dab2a: Made the documentation complete. - -## 0.5.4 - -### Patch Changes - -- cdcf136: Fix redis-stack-custom example - -## 0.5.3 - -### Patch Changes - -- 571435b: Fix types and improve naming - -## 0.5.2 - -### Patch Changes - -- a18f2bb: Add async onCreation hook and async Handlers - -## 0.5.1 - -### Patch Changes - -- 9a970af: Add new HTTP Handler and an example to docs - -## 0.5.0 - -### Minor Changes - -- 954a21e: Add docs for new `handlers` API diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 8958ae47..fb4adbd1 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -1,6 +1,6 @@ { "name": "cache-handler-docs", - "version": "0.6.6", + "version": "0.1.0", "private": true, "scripts": { "build:docs": "next build", diff --git a/docs/cache-handler-docs/src/pages/index.mdx b/docs/cache-handler-docs/src/pages/index.mdx index ed222b0e..07dc3750 100644 --- a/docs/cache-handler-docs/src/pages/index.mdx +++ b/docs/cache-handler-docs/src/pages/index.mdx @@ -1,5 +1,10 @@ Welcome to `@neshca/cache-handler`, a specialized ISR/Data cache API crafted for Next.js applications. This library is designed to simplify the complex task of configuring shared cache strategies in distributed environments, such as those involving multiple and independent instances of the same application. It offers a flexible and user-friendly approach to integrating custom cache solutions and hand-crafted, pre-configured cache strategies for Redis. +### Next.js Routers support + +- Full support for Pages Router. +- Almost full support for App Router. The only exception is the `revalidatePath` function. + ### The importance of shared cache in distributed environments Next.js applications are often deployed in a self-hosted distributed environment, where multiple instances of the same application are running simultaneously. In such cases, the default Next.js cache is not shared between instances, causing the data to diverge between independent instances because load balancers route requests to a different instance every time. Another significant issue with the default cache setup is on-demand revalidation; it requires manual revalidation across all application replicas. @@ -10,6 +15,7 @@ Next.js applications are often deployed in a self-hosted distributed environment - Comprehensive customization options. - Simplified on-demand revalidation, akin to managing a single application instance. - TTL by default to keep cache storage clean and space-efficient. +- One configuration for both Routes. ### Kickstarting Your Custom Cache Solution diff --git a/packages/cache-handler/README.md b/packages/cache-handler/README.md index a50ad59e..151a980d 100644 --- a/packages/cache-handler/README.md +++ b/packages/cache-handler/README.md @@ -24,6 +24,11 @@ Check out the [changelog](https://github.com/caching-tools/next-shared-cache/blo Welcome to `@neshca/cache-handler`, a specialized ISR/Data cache API crafted for Next.js applications. This library is designed to simplify the complex task of configuring shared cache strategies in distributed environments, such as those involving multiple and independent instances of the same application. It offers a flexible and user-friendly approach to integrating custom cache solutions and hand-crafted, pre-configured cache strategies for Redis. +### Next.js Routers support + +- Full support for Pages Router. +- Almost full support for App Router. The only exception is the `revalidatePath` function. + ### The importance of shared cache in distributed environments Next.js applications are often deployed in a self-hosted distributed environment, where multiple instances of the same application are running simultaneously. In such cases, the default Next.js cache is not shared between instances, causing the data to diverge between independent instances because load balancers route requests to a different instance every time. Another significant issue with the default cache setup is on-demand revalidation; it requires manual revalidation across all application replicas. @@ -34,6 +39,7 @@ Next.js applications are often deployed in a self-hosted distributed environment - Comprehensive customization options. - Simplified on-demand revalidation, akin to managing a single application instance. - TTL by default to keep cache storage clean and space-efficient. +- One configuration for both Routes. ### Kickstarting Your Custom Cache Solution From 6868122438d700837d19800f3dfb44a59d8556b8 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Thu, 29 Feb 2024 23:08:19 +0300 Subject: [PATCH 137/458] Version Packages (#380) Co-authored-by: github-actions[bot] --- .changeset/healthy-fishes-complain.md | 5 ----- packages/cache-handler/CHANGELOG.md | 6 ++++++ packages/cache-handler/package.json | 2 +- 3 files changed, 7 insertions(+), 6 deletions(-) delete mode 100644 .changeset/healthy-fishes-complain.md diff --git a/.changeset/healthy-fishes-complain.md b/.changeset/healthy-fishes-complain.md deleted file mode 100644 index 737797b5..00000000 --- a/.changeset/healthy-fishes-complain.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@neshca/cache-handler': patch ---- - -Add information about Next.js Routers support in readmes and documentation. diff --git a/packages/cache-handler/CHANGELOG.md b/packages/cache-handler/CHANGELOG.md index b93150a7..39472ec7 100644 --- a/packages/cache-handler/CHANGELOG.md +++ b/packages/cache-handler/CHANGELOG.md @@ -1,5 +1,11 @@ # @neshca/cache-handler +## 1.0.5 + +### Patch Changes + +- 00b6aaf: Add information about Next.js Routers support in readmes and documentation. + ## 1.0.4 ### Patch Changes diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index d9f314d6..48d49100 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -1,6 +1,6 @@ { "name": "@neshca/cache-handler", - "version": "1.0.4", + "version": "1.0.5", "description": "Next.js self-hosting simplified.", "keywords": [ "cache", From b035ec6ecdf6a0129d0f15c4c1edd97ae536b90a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 1 Mar 2024 01:37:32 +0300 Subject: [PATCH 138/458] Bump the definitely-typed group with 3 updates (#381) Bumps the definitely-typed group with 3 updates: [@types/eslint](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/eslint), [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) and [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react). Updates `@types/eslint` from 8.56.4 to 8.56.5 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/eslint) Updates `@types/node` from 20.11.22 to 20.11.24 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) Updates `@types/react` from 18.2.60 to 18.2.61 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react) --- updated-dependencies: - dependency-name: "@types/eslint" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed - dependency-name: "@types/node" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed - dependency-name: "@types/react" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 6 +-- docs/cache-handler-docs/package.json | 6 +-- internal/backend/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 48 ++++++++++----------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 10 files changed, 37 insertions(+), 37 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index e33be784..bdaacba2 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -27,9 +27,9 @@ "@playwright/test": "1.42.0", "@repo/eslint-config": "*", "@repo/typescript-config": "*", - "@types/eslint": "8.56.4", - "@types/node": "20.11.22", - "@types/react": "18.2.60", + "@types/eslint": "8.56.5", + "@types/node": "20.11.24", + "@types/react": "18.2.61", "@types/react-dom": "18.2.19", "dotenv-cli": "7.3.0", "eslint": "8.57.0", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index fb4adbd1..6d2cd8ac 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -21,9 +21,9 @@ "@next/eslint-plugin-next": "14.1.0", "@repo/eslint-config": "*", "@repo/typescript-config": "*", - "@types/eslint": "8.56.4", - "@types/node": "20.11.22", - "@types/react": "18.2.60", + "@types/eslint": "8.56.5", + "@types/node": "20.11.24", + "@types/react": "18.2.61", "@types/react-dom": "18.2.19", "eslint": "8.57.0", "typescript": "5.3.3" diff --git a/internal/backend/package.json b/internal/backend/package.json index ff35af34..0e139dbe 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.22", + "@types/node": "20.11.24", "pino-pretty": "10.3.1", "rimraf": "5.0.5", "tsx": "4.7.1", diff --git a/internal/next-common/package.json b/internal/next-common/package.json index bcf82636..1a5019ed 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.22", + "@types/node": "20.11.24", "rimraf": "5.0.5", "typescript": "5.3.3" } diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index 0e36a0ae..e15d8a9b 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -16,7 +16,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.22", + "@types/node": "20.11.24", "rimraf": "5.0.5", "typescript": "5.3.3" } diff --git a/package-lock.json b/package-lock.json index cd2f6139..c989c867 100644 --- a/package-lock.json +++ b/package-lock.json @@ -47,9 +47,9 @@ "@playwright/test": "1.42.0", "@repo/eslint-config": "*", "@repo/typescript-config": "*", - "@types/eslint": "8.56.4", - "@types/node": "20.11.22", - "@types/react": "18.2.60", + "@types/eslint": "8.56.5", + "@types/node": "20.11.24", + "@types/react": "18.2.61", "@types/react-dom": "18.2.19", "dotenv-cli": "7.3.0", "eslint": "8.57.0", @@ -107,7 +107,7 @@ } }, "docs/cache-handler-docs": { - "version": "0.6.6", + "version": "0.1.0", "dependencies": { "next": "14.1.0", "nextra": "2.13.3", @@ -119,9 +119,9 @@ "@next/eslint-plugin-next": "14.1.0", "@repo/eslint-config": "*", "@repo/typescript-config": "*", - "@types/eslint": "8.56.4", - "@types/node": "20.11.22", - "@types/react": "18.2.60", + "@types/eslint": "8.56.5", + "@types/node": "20.11.24", + "@types/react": "18.2.61", "@types/react-dom": "18.2.19", "eslint": "8.57.0", "typescript": "5.3.3" @@ -226,7 +226,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.22", + "@types/node": "20.11.24", "pino-pretty": "10.3.1", "rimraf": "5.0.5", "tsx": "4.7.1", @@ -379,7 +379,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.22", + "@types/node": "20.11.24", "rimraf": "5.0.5", "typescript": "5.3.3" } @@ -439,7 +439,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.22", + "@types/node": "20.11.24", "rimraf": "5.0.5", "typescript": "5.3.3" } @@ -3319,9 +3319,9 @@ } }, "node_modules/@types/eslint": { - "version": "8.56.4", - "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.56.4.tgz", - "integrity": "sha512-lG1GLUnL5vuRBGb3MgWUWLdGMH2Hps+pERuyQXCfWozuGKdnhf9Pbg4pkcrVUHjKrU7Rl+GCZ/299ObBXZFAxg==", + "version": "8.56.5", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.56.5.tgz", + "integrity": "sha512-u5/YPJHo1tvkSF2CE0USEkxon82Z5DBy2xR+qfyYNszpX9qcs4sT6uq2kBbj4BXY1+DBGDPnrhMZV3pKWGNukw==", "dev": true, "dependencies": { "@types/estree": "*", @@ -3395,9 +3395,9 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "20.11.22", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.22.tgz", - "integrity": "sha512-/G+IxWxma6V3E+pqK1tSl2Fo1kl41pK1yeCyDsgkF9WlVAme4j5ISYM2zR11bgLFJGLN5sVK40T4RJNuiZbEjA==", + "version": "20.11.24", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.24.tgz", + "integrity": "sha512-Kza43ewS3xoLgCEpQrsT+xRo/EJej1y0kVYGiLFE1NEODXGzTfwiC6tXTLMQskn1X4/Rjlh0MQUvx9W+L9long==", "dependencies": { "undici-types": "~5.26.4" } @@ -3423,9 +3423,9 @@ "integrity": "sha512-ga8y9v9uyeiLdpKddhxYQkxNDrfvuPrlFb0N1qnZZByvcElJaXthF1UhvCh9TLWJBEHeNtdnbysW7Y6Uq8CVng==" }, "node_modules/@types/react": { - "version": "18.2.60", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.60.tgz", - "integrity": "sha512-dfiPj9+k20jJrLGOu9Nf6eqxm2EyJRrq2NvwOFsfbb7sFExZ9WELPs67UImHj3Ayxg8ruTtKtNnbjaF8olPq0A==", + "version": "18.2.61", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.61.tgz", + "integrity": "sha512-NURTN0qNnJa7O/k4XUkEW2yfygA+NxS0V5h1+kp9jPwhzZy95q3ADoGMP0+JypMhrZBTTgjKAUlTctde1zzeQA==", "dependencies": { "@types/prop-types": "*", "@types/scheduler": "*", @@ -16652,7 +16652,7 @@ }, "packages/cache-handler": { "name": "@neshca/cache-handler", - "version": "1.0.4", + "version": "1.0.5", "license": "MIT", "dependencies": { "lru-cache": "10.2.0" @@ -16661,7 +16661,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.22", + "@types/node": "20.11.24", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.1", @@ -16680,7 +16680,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.22", + "@types/node": "20.11.24", "rimraf": "5.0.5", "tsup": "8.0.2", "typescript": "5.3.3" @@ -16696,7 +16696,7 @@ "license": "MIT", "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.22", + "@types/node": "20.11.24", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.1", @@ -16718,7 +16718,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.22", + "@types/node": "20.11.24", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.1", diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 48d49100..5f64fce1 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -72,7 +72,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.22", + "@types/node": "20.11.24", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.1", diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index 1e47eb28..59759035 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -25,7 +25,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.22", + "@types/node": "20.11.24", "rimraf": "5.0.5", "tsup": "8.0.2", "typescript": "5.3.3" diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 88e9aa25..d79ad6cc 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -28,7 +28,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.22", + "@types/node": "20.11.24", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.1", diff --git a/packages/server/package.json b/packages/server/package.json index 3754ae01..40be1824 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -32,7 +32,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.22", + "@types/node": "20.11.24", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.1", From 21010885cce26931a3025c36f00fc598813121d8 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 2 Mar 2024 10:04:10 +0300 Subject: [PATCH 139/458] Bump the nextra group with 2 updates (#383) Bumps the nextra group with 2 updates: [nextra](https://github.com/shuding/nextra) and [nextra-theme-docs](https://github.com/shuding/nextra). Updates `nextra` from 2.13.3 to 2.13.4 - [Release notes](https://github.com/shuding/nextra/releases) - [Commits](https://github.com/shuding/nextra/compare/nextra@2.13.3...nextra@2.13.4) Updates `nextra-theme-docs` from 2.13.3 to 2.13.4 - [Release notes](https://github.com/shuding/nextra/releases) - [Commits](https://github.com/shuding/nextra/compare/nextra-theme-docs@2.13.3...nextra-theme-docs@2.13.4) --- updated-dependencies: - dependency-name: nextra dependency-type: direct:production update-type: version-update:semver-patch dependency-group: nextra - dependency-name: nextra-theme-docs dependency-type: direct:production update-type: version-update:semver-patch dependency-group: nextra ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- docs/cache-handler-docs/package.json | 4 +- package-lock.json | 166 +++++++++++++-------------- 2 files changed, 85 insertions(+), 85 deletions(-) diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 6d2cd8ac..15a455d3 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -12,8 +12,8 @@ }, "dependencies": { "next": "14.1.0", - "nextra": "2.13.3", - "nextra-theme-docs": "2.13.3", + "nextra": "2.13.4", + "nextra-theme-docs": "2.13.4", "react": "18.2.0", "react-dom": "18.2.0" }, diff --git a/package-lock.json b/package-lock.json index c989c867..03d180bb 100644 --- a/package-lock.json +++ b/package-lock.json @@ -110,8 +110,8 @@ "version": "0.1.0", "dependencies": { "next": "14.1.0", - "nextra": "2.13.3", - "nextra-theme-docs": "2.13.3", + "nextra": "2.13.4", + "nextra-theme-docs": "2.13.4", "react": "18.2.0", "react-dom": "18.2.0" }, @@ -136,87 +136,6 @@ "glob": "10.3.10" } }, - "docs/cache-handler-docs/node_modules/nextra": { - "version": "2.13.3", - "resolved": "https://registry.npmjs.org/nextra/-/nextra-2.13.3.tgz", - "integrity": "sha512-OBVuyQKh+oqrbVt0AosgNYnuReWuNrtJVEN7q18b/oEg2wEpuiq3UJfmIvGgOdNYc3zv3OYrzbcq7IhwtdHHEw==", - "dependencies": { - "@headlessui/react": "^1.7.17", - "@mdx-js/mdx": "^2.3.0", - "@mdx-js/react": "^2.3.0", - "@napi-rs/simple-git": "^0.1.9", - "@theguild/remark-mermaid": "^0.0.5", - "@theguild/remark-npm2yarn": "^0.2.0", - "clsx": "^2.0.0", - "github-slugger": "^2.0.0", - "graceful-fs": "^4.2.11", - "gray-matter": "^4.0.3", - "katex": "^0.16.9", - "lodash.get": "^4.4.2", - "next-mdx-remote": "^4.2.1", - "p-limit": "^3.1.0", - "rehype-katex": "^7.0.0", - "rehype-pretty-code": "0.9.11", - "rehype-raw": "^7.0.0", - "remark-gfm": "^3.0.1", - "remark-math": "^5.1.1", - "remark-reading-time": "^2.0.1", - "shiki": "^0.14.3", - "slash": "^3.0.0", - "title": "^3.5.3", - "unist-util-remove": "^4.0.0", - "unist-util-visit": "^5.0.0", - "zod": "^3.22.3" - }, - "engines": { - "node": ">=16" - }, - "peerDependencies": { - "next": ">=9.5.3", - "react": ">=16.13.1", - "react-dom": ">=16.13.1" - } - }, - "docs/cache-handler-docs/node_modules/nextra-theme-docs": { - "version": "2.13.3", - "resolved": "https://registry.npmjs.org/nextra-theme-docs/-/nextra-theme-docs-2.13.3.tgz", - "integrity": "sha512-B6xrnR86Gg4GzV56AomSwtmvSyAvnJz1xKOGGav1XKxkwvC8QeI17jdt/CqiKyIObJ+5bLqSFiKhaAZ5DYQP3g==", - "dependencies": { - "@headlessui/react": "^1.7.17", - "@popperjs/core": "^2.11.8", - "clsx": "^2.0.0", - "escape-string-regexp": "^5.0.0", - "flexsearch": "^0.7.31", - "focus-visible": "^5.2.0", - "git-url-parse": "^13.1.0", - "intersection-observer": "^0.12.2", - "match-sorter": "^6.3.1", - "next-seo": "^6.0.0", - "next-themes": "^0.2.1", - "scroll-into-view-if-needed": "^3.1.0", - "zod": "^3.22.3" - }, - "peerDependencies": { - "next": ">=9.5.3", - "nextra": "2.13.3", - "react": ">=16.13.1", - "react-dom": ">=16.13.1" - } - }, - "docs/cache-handler-docs/node_modules/p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "dependencies": { - "yocto-queue": "^0.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "internal/backend": { "version": "0.0.0", "license": "MIT", @@ -11797,6 +11716,87 @@ "node": ">= 10" } }, + "node_modules/nextra": { + "version": "2.13.4", + "resolved": "https://registry.npmjs.org/nextra/-/nextra-2.13.4.tgz", + "integrity": "sha512-7of2rSBxuUa3+lbMmZwG9cqgftcoNOVQLTT6Rxf3EhBR9t1EI7b43dted8YoqSNaigdE3j1CoyNkX8N/ZzlEpw==", + "dependencies": { + "@headlessui/react": "^1.7.17", + "@mdx-js/mdx": "^2.3.0", + "@mdx-js/react": "^2.3.0", + "@napi-rs/simple-git": "^0.1.9", + "@theguild/remark-mermaid": "^0.0.5", + "@theguild/remark-npm2yarn": "^0.2.0", + "clsx": "^2.0.0", + "github-slugger": "^2.0.0", + "graceful-fs": "^4.2.11", + "gray-matter": "^4.0.3", + "katex": "^0.16.9", + "lodash.get": "^4.4.2", + "next-mdx-remote": "^4.2.1", + "p-limit": "^3.1.0", + "rehype-katex": "^7.0.0", + "rehype-pretty-code": "0.9.11", + "rehype-raw": "^7.0.0", + "remark-gfm": "^3.0.1", + "remark-math": "^5.1.1", + "remark-reading-time": "^2.0.1", + "shiki": "^0.14.3", + "slash": "^3.0.0", + "title": "^3.5.3", + "unist-util-remove": "^4.0.0", + "unist-util-visit": "^5.0.0", + "zod": "^3.22.3" + }, + "engines": { + "node": ">=16" + }, + "peerDependencies": { + "next": ">=9.5.3", + "react": ">=16.13.1", + "react-dom": ">=16.13.1" + } + }, + "node_modules/nextra-theme-docs": { + "version": "2.13.4", + "resolved": "https://registry.npmjs.org/nextra-theme-docs/-/nextra-theme-docs-2.13.4.tgz", + "integrity": "sha512-2XOoMfwBCTYBt8ds4ZHftt9Wyf2XsykiNo02eir/XEYB+sGeUoE77kzqfidjEOKCSzOHYbK9BDMcg2+B/2vYRw==", + "dependencies": { + "@headlessui/react": "^1.7.17", + "@popperjs/core": "^2.11.8", + "clsx": "^2.0.0", + "escape-string-regexp": "^5.0.0", + "flexsearch": "^0.7.31", + "focus-visible": "^5.2.0", + "git-url-parse": "^13.1.0", + "intersection-observer": "^0.12.2", + "match-sorter": "^6.3.1", + "next-seo": "^6.0.0", + "next-themes": "^0.2.1", + "scroll-into-view-if-needed": "^3.1.0", + "zod": "^3.22.3" + }, + "peerDependencies": { + "next": ">=9.5.3", + "nextra": "2.13.4", + "react": ">=16.13.1", + "react-dom": ">=16.13.1" + } + }, + "node_modules/nextra/node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/node-domexception": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/node-domexception/-/node-domexception-1.0.0.tgz", From de34edd95f96d0047a7e880e4b47941e3091dffe Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 5 Mar 2024 11:25:48 +0300 Subject: [PATCH 140/458] Bump fastify from 4.26.1 to 4.26.2 (#386) Bumps [fastify](https://github.com/fastify/fastify) from 4.26.1 to 4.26.2. - [Release notes](https://github.com/fastify/fastify/releases) - [Commits](https://github.com/fastify/fastify/compare/v4.26.1...v4.26.2) --- updated-dependencies: - dependency-name: fastify dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- internal/backend/package.json | 2 +- package-lock.json | 12 ++++++------ packages/server/package.json | 2 +- 4 files changed, 9 insertions(+), 9 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index bdaacba2..1f6edfa7 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -33,7 +33,7 @@ "@types/react-dom": "18.2.19", "dotenv-cli": "7.3.0", "eslint": "8.57.0", - "fastify": "4.26.1", + "fastify": "4.26.2", "pm2": "5.3.1", "redis": "4.6.13", "rimraf": "5.0.5", diff --git a/internal/backend/package.json b/internal/backend/package.json index 0e139dbe..f45a3d03 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -10,7 +10,7 @@ "start": "node --import tsx/esm ./src/backend.ts" }, "dependencies": { - "fastify": "4.26.1", + "fastify": "4.26.2", "pino": "8.19.0" }, "devDependencies": { diff --git a/package-lock.json b/package-lock.json index 03d180bb..58fee754 100644 --- a/package-lock.json +++ b/package-lock.json @@ -53,7 +53,7 @@ "@types/react-dom": "18.2.19", "dotenv-cli": "7.3.0", "eslint": "8.57.0", - "fastify": "4.26.1", + "fastify": "4.26.2", "pm2": "5.3.1", "redis": "4.6.13", "rimraf": "5.0.5", @@ -140,7 +140,7 @@ "version": "0.0.0", "license": "MIT", "dependencies": { - "fastify": "4.26.1", + "fastify": "4.26.2", "pino": "8.19.0" }, "devDependencies": { @@ -7593,9 +7593,9 @@ "integrity": "sha512-eel5UKGn369gGEWOqBShmFJWfq/xSJvsgDzgLYC845GneayWvXBf0lJCBn5qTABfewy1ZDPoaR5OZCP+kssfuw==" }, "node_modules/fastify": { - "version": "4.26.1", - "resolved": "https://registry.npmjs.org/fastify/-/fastify-4.26.1.tgz", - "integrity": "sha512-tznA/G55dsxzM5XChBfcvVSloG2ejeeotfPPJSFaWmHyCDVGMpvf3nRNbsCb/JTBF9RmQFBfuujWt3Nphjesng==", + "version": "4.26.2", + "resolved": "https://registry.npmjs.org/fastify/-/fastify-4.26.2.tgz", + "integrity": "sha512-90pjTuPGrfVKtdpLeLzND5nyC4woXZN5VadiNQCicj/iJU4viNHKhsAnb7jmv1vu2IzkLXyBiCzdWuzeXgQ5Ug==", "funding": [ { "type": "github", @@ -16708,7 +16708,7 @@ "version": "1.0.0", "license": "MIT", "dependencies": { - "fastify": "4.26.1", + "fastify": "4.26.2", "pino": "8.19.0" }, "bin": { diff --git a/packages/server/package.json b/packages/server/package.json index 40be1824..abd16272 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -25,7 +25,7 @@ "start": "node --import tsx/esm ./src/server.ts" }, "dependencies": { - "fastify": "4.26.1", + "fastify": "4.26.2", "pino": "8.19.0" }, "devDependencies": { From 89d81e78062d4208da395ffb8245af08f53569a8 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 5 Mar 2024 11:36:05 +0300 Subject: [PATCH 141/458] Bump @playwright/test from 1.42.0 to 1.42.1 (#387) Bumps [@playwright/test](https://github.com/microsoft/playwright) from 1.42.0 to 1.42.1. - [Release notes](https://github.com/microsoft/playwright/releases) - [Commits](https://github.com/microsoft/playwright/compare/v1.42.0...v1.42.1) --- updated-dependencies: - dependency-name: "@playwright/test" dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- package-lock.json | 24 ++++++++++++------------ 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 1f6edfa7..53405413 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -24,7 +24,7 @@ "devDependencies": { "@neshca/cache-handler": "*", "@next/eslint-plugin-next": "14.1.1-canary.27", - "@playwright/test": "1.42.0", + "@playwright/test": "1.42.1", "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.5", diff --git a/package-lock.json b/package-lock.json index 58fee754..bc0156f2 100644 --- a/package-lock.json +++ b/package-lock.json @@ -44,7 +44,7 @@ "devDependencies": { "@neshca/cache-handler": "*", "@next/eslint-plugin-next": "14.1.1-canary.27", - "@playwright/test": "1.42.0", + "@playwright/test": "1.42.1", "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.5", @@ -2644,12 +2644,12 @@ } }, "node_modules/@playwright/test": { - "version": "1.42.0", - "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.42.0.tgz", - "integrity": "sha512-2k1HzC28Fs+HiwbJOQDUwrWMttqSLUVdjCqitBOjdCD0svWOMQUVqrXX6iFD7POps6xXAojsX/dGBpKnjZctLA==", + "version": "1.42.1", + "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.42.1.tgz", + "integrity": "sha512-Gq9rmS54mjBL/7/MvBaNOBwbfnh7beHvS6oS4srqXFcQHpQCV1+c8JXWE8VLPyRDhgS3H8x8A7hztqI9VnwrAQ==", "dev": true, "dependencies": { - "playwright": "1.42.0" + "playwright": "1.42.1" }, "bin": { "playwright": "cli.js" @@ -12491,12 +12491,12 @@ } }, "node_modules/playwright": { - "version": "1.42.0", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.42.0.tgz", - "integrity": "sha512-Ko7YRUgj5xBHbntrgt4EIw/nE//XBHOKVKnBjO1KuZkmkhlbgyggTe5s9hjqQ1LpN+Xg+kHsQyt5Pa0Bw5XpvQ==", + "version": "1.42.1", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.42.1.tgz", + "integrity": "sha512-PgwB03s2DZBcNRoW+1w9E+VkLBxweib6KTXM0M3tkiT4jVxKSi6PmVJ591J+0u10LUrgxB7dLRbiJqO5s2QPMg==", "dev": true, "dependencies": { - "playwright-core": "1.42.0" + "playwright-core": "1.42.1" }, "bin": { "playwright": "cli.js" @@ -12509,9 +12509,9 @@ } }, "node_modules/playwright-core": { - "version": "1.42.0", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.42.0.tgz", - "integrity": "sha512-0HD9y8qEVlcbsAjdpBaFjmaTHf+1FeIddy8VJLeiqwhcNqGCBe4Wp2e8knpqiYbzxtxarxiXyNDw2cG8sCaNMQ==", + "version": "1.42.1", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.42.1.tgz", + "integrity": "sha512-mxz6zclokgrke9p1vtdy/COWBH+eOZgYUVVU34C73M+4j4HLlQJHtfcqiqqxpP0o8HhMkflvfbquLX5dg6wlfA==", "dev": true, "bin": { "playwright-core": "cli.js" From 895e90c849f5dc5fe10b32ac6cd630860e2db883 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 5 Mar 2024 12:00:23 +0300 Subject: [PATCH 142/458] Bump the eslint group with 2 updates (#385) Bumps the eslint group with 2 updates: [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) and [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser). Updates `@typescript-eslint/eslint-plugin` from 7.1.0 to 7.1.1 - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v7.1.1/packages/eslint-plugin) Updates `@typescript-eslint/parser` from 7.1.0 to 7.1.1 - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v7.1.1/packages/parser) --- updated-dependencies: - dependency-name: "@typescript-eslint/eslint-plugin" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: eslint - dependency-name: "@typescript-eslint/parser" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: eslint ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- internal/eslint-config/package.json | 4 +- package-lock.json | 122 ++++++++++++++-------------- 2 files changed, 63 insertions(+), 63 deletions(-) diff --git a/internal/eslint-config/package.json b/internal/eslint-config/package.json index 989b4a54..38b2e710 100644 --- a/internal/eslint-config/package.json +++ b/internal/eslint-config/package.json @@ -6,8 +6,8 @@ "next.js" ], "devDependencies": { - "@typescript-eslint/eslint-plugin": "7.1.0", - "@typescript-eslint/parser": "7.1.0", + "@typescript-eslint/eslint-plugin": "7.1.1", + "@typescript-eslint/parser": "7.1.1", "@vercel/style-guide": "5.2.0", "eslint-config-prettier": "9.1.0", "eslint-config-turbo": "1.12.4", diff --git a/package-lock.json b/package-lock.json index bc0156f2..8d2c35f4 100644 --- a/package-lock.json +++ b/package-lock.json @@ -156,8 +156,8 @@ "name": "@repo/eslint-config", "version": "0.0.0", "devDependencies": { - "@typescript-eslint/eslint-plugin": "7.1.0", - "@typescript-eslint/parser": "7.1.0", + "@typescript-eslint/eslint-plugin": "7.1.1", + "@typescript-eslint/parser": "7.1.1", "@vercel/style-guide": "5.2.0", "eslint-config-prettier": "9.1.0", "eslint-config-turbo": "1.12.4", @@ -3376,16 +3376,16 @@ "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.1.0.tgz", - "integrity": "sha512-j6vT/kCulhG5wBmGtstKeiVr1rdXE4nk+DT1k6trYkwlrvW9eOF5ZbgKnd/YR6PcM4uTEXa0h6Fcvf6X7Dxl0w==", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.1.1.tgz", + "integrity": "sha512-zioDz623d0RHNhvx0eesUmGfIjzrk18nSBC8xewepKXbBvN/7c1qImV7Hg8TI1URTxKax7/zxfxj3Uph8Chcuw==", "dev": true, "dependencies": { "@eslint-community/regexpp": "^4.5.1", - "@typescript-eslint/scope-manager": "7.1.0", - "@typescript-eslint/type-utils": "7.1.0", - "@typescript-eslint/utils": "7.1.0", - "@typescript-eslint/visitor-keys": "7.1.0", + "@typescript-eslint/scope-manager": "7.1.1", + "@typescript-eslint/type-utils": "7.1.1", + "@typescript-eslint/utils": "7.1.1", + "@typescript-eslint/visitor-keys": "7.1.1", "debug": "^4.3.4", "graphemer": "^1.4.0", "ignore": "^5.2.4", @@ -3411,13 +3411,13 @@ } }, "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/scope-manager": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-7.1.0.tgz", - "integrity": "sha512-6TmN4OJiohHfoOdGZ3huuLhpiUgOGTpgXNUPJgeZOZR3DnIpdSgtt83RS35OYNNXxM4TScVlpVKC9jyQSETR1A==", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-7.1.1.tgz", + "integrity": "sha512-cirZpA8bJMRb4WZ+rO6+mnOJrGFDd38WoXCEI57+CYBqta8Yc8aJym2i7vyqLL1vVYljgw0X27axkUXz32T8TA==", "dev": true, "dependencies": { - "@typescript-eslint/types": "7.1.0", - "@typescript-eslint/visitor-keys": "7.1.0" + "@typescript-eslint/types": "7.1.1", + "@typescript-eslint/visitor-keys": "7.1.1" }, "engines": { "node": "^16.0.0 || >=18.0.0" @@ -3428,13 +3428,13 @@ } }, "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/type-utils": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-7.1.0.tgz", - "integrity": "sha512-UZIhv8G+5b5skkcuhgvxYWHjk7FW7/JP5lPASMEUoliAPwIH/rxoUSQPia2cuOj9AmDZmwUl1usKm85t5VUMew==", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-7.1.1.tgz", + "integrity": "sha512-5r4RKze6XHEEhlZnJtR3GYeCh1IueUHdbrukV2KSlLXaTjuSfeVF8mZUVPLovidCuZfbVjfhi4c0DNSa/Rdg5g==", "dev": true, "dependencies": { - "@typescript-eslint/typescript-estree": "7.1.0", - "@typescript-eslint/utils": "7.1.0", + "@typescript-eslint/typescript-estree": "7.1.1", + "@typescript-eslint/utils": "7.1.1", "debug": "^4.3.4", "ts-api-utils": "^1.0.1" }, @@ -3455,9 +3455,9 @@ } }, "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/types": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.1.0.tgz", - "integrity": "sha512-qTWjWieJ1tRJkxgZYXx6WUYtWlBc48YRxgY2JN1aGeVpkhmnopq+SUC8UEVGNXIvWH7XyuTjwALfG6bFEgCkQA==", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.1.1.tgz", + "integrity": "sha512-KhewzrlRMrgeKm1U9bh2z5aoL4s7K3tK5DwHDn8MHv0yQfWFz/0ZR6trrIHHa5CsF83j/GgHqzdbzCXJ3crx0Q==", "dev": true, "engines": { "node": "^16.0.0 || >=18.0.0" @@ -3468,13 +3468,13 @@ } }, "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/typescript-estree": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-7.1.0.tgz", - "integrity": "sha512-k7MyrbD6E463CBbSpcOnwa8oXRdHzH1WiVzOipK3L5KSML92ZKgUBrTlehdi7PEIMT8k0bQixHUGXggPAlKnOQ==", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-7.1.1.tgz", + "integrity": "sha512-9ZOncVSfr+sMXVxxca2OJOPagRwT0u/UHikM2Rd6L/aB+kL/QAuTnsv6MeXtjzCJYb8PzrXarypSGIPx3Jemxw==", "dev": true, "dependencies": { - "@typescript-eslint/types": "7.1.0", - "@typescript-eslint/visitor-keys": "7.1.0", + "@typescript-eslint/types": "7.1.1", + "@typescript-eslint/visitor-keys": "7.1.1", "debug": "^4.3.4", "globby": "^11.1.0", "is-glob": "^4.0.3", @@ -3496,17 +3496,17 @@ } }, "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/utils": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-7.1.0.tgz", - "integrity": "sha512-WUFba6PZC5OCGEmbweGpnNJytJiLG7ZvDBJJoUcX4qZYf1mGZ97mO2Mps6O2efxJcJdRNpqweCistDbZMwIVHw==", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-7.1.1.tgz", + "integrity": "sha512-thOXM89xA03xAE0lW7alstvnyoBUbBX38YtY+zAUcpRPcq9EIhXPuJ0YTv948MbzmKh6e1AUszn5cBFK49Umqg==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.4.0", "@types/json-schema": "^7.0.12", "@types/semver": "^7.5.0", - "@typescript-eslint/scope-manager": "7.1.0", - "@typescript-eslint/types": "7.1.0", - "@typescript-eslint/typescript-estree": "7.1.0", + "@typescript-eslint/scope-manager": "7.1.1", + "@typescript-eslint/types": "7.1.1", + "@typescript-eslint/typescript-estree": "7.1.1", "semver": "^7.5.4" }, "engines": { @@ -3521,12 +3521,12 @@ } }, "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/visitor-keys": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-7.1.0.tgz", - "integrity": "sha512-FhUqNWluiGNzlvnDZiXad4mZRhtghdoKW6e98GoEOYSu5cND+E39rG5KwJMUzeENwm1ztYBRqof8wMLP+wNPIA==", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-7.1.1.tgz", + "integrity": "sha512-yTdHDQxY7cSoCcAtiBzVzxleJhkGB9NncSIyMYe2+OGON1ZsP9zOPws/Pqgopa65jvknOjlk/w7ulPlZ78PiLQ==", "dev": true, "dependencies": { - "@typescript-eslint/types": "7.1.0", + "@typescript-eslint/types": "7.1.1", "eslint-visitor-keys": "^3.4.1" }, "engines": { @@ -3562,15 +3562,15 @@ } }, "node_modules/@typescript-eslint/parser": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-7.1.0.tgz", - "integrity": "sha512-V1EknKUubZ1gWFjiOZhDSNToOjs63/9O0puCgGS8aDOgpZY326fzFu15QAUjwaXzRZjf/qdsdBrckYdv9YxB8w==", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-7.1.1.tgz", + "integrity": "sha512-ZWUFyL0z04R1nAEgr9e79YtV5LbafdOtN7yapNbn1ansMyaegl2D4bL7vHoJ4HPSc4CaLwuCVas8CVuneKzplQ==", "dev": true, "dependencies": { - "@typescript-eslint/scope-manager": "7.1.0", - "@typescript-eslint/types": "7.1.0", - "@typescript-eslint/typescript-estree": "7.1.0", - "@typescript-eslint/visitor-keys": "7.1.0", + "@typescript-eslint/scope-manager": "7.1.1", + "@typescript-eslint/types": "7.1.1", + "@typescript-eslint/typescript-estree": "7.1.1", + "@typescript-eslint/visitor-keys": "7.1.1", "debug": "^4.3.4" }, "engines": { @@ -3590,13 +3590,13 @@ } }, "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/scope-manager": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-7.1.0.tgz", - "integrity": "sha512-6TmN4OJiohHfoOdGZ3huuLhpiUgOGTpgXNUPJgeZOZR3DnIpdSgtt83RS35OYNNXxM4TScVlpVKC9jyQSETR1A==", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-7.1.1.tgz", + "integrity": "sha512-cirZpA8bJMRb4WZ+rO6+mnOJrGFDd38WoXCEI57+CYBqta8Yc8aJym2i7vyqLL1vVYljgw0X27axkUXz32T8TA==", "dev": true, "dependencies": { - "@typescript-eslint/types": "7.1.0", - "@typescript-eslint/visitor-keys": "7.1.0" + "@typescript-eslint/types": "7.1.1", + "@typescript-eslint/visitor-keys": "7.1.1" }, "engines": { "node": "^16.0.0 || >=18.0.0" @@ -3607,9 +3607,9 @@ } }, "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/types": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.1.0.tgz", - "integrity": "sha512-qTWjWieJ1tRJkxgZYXx6WUYtWlBc48YRxgY2JN1aGeVpkhmnopq+SUC8UEVGNXIvWH7XyuTjwALfG6bFEgCkQA==", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.1.1.tgz", + "integrity": "sha512-KhewzrlRMrgeKm1U9bh2z5aoL4s7K3tK5DwHDn8MHv0yQfWFz/0ZR6trrIHHa5CsF83j/GgHqzdbzCXJ3crx0Q==", "dev": true, "engines": { "node": "^16.0.0 || >=18.0.0" @@ -3620,13 +3620,13 @@ } }, "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/typescript-estree": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-7.1.0.tgz", - "integrity": "sha512-k7MyrbD6E463CBbSpcOnwa8oXRdHzH1WiVzOipK3L5KSML92ZKgUBrTlehdi7PEIMT8k0bQixHUGXggPAlKnOQ==", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-7.1.1.tgz", + "integrity": "sha512-9ZOncVSfr+sMXVxxca2OJOPagRwT0u/UHikM2Rd6L/aB+kL/QAuTnsv6MeXtjzCJYb8PzrXarypSGIPx3Jemxw==", "dev": true, "dependencies": { - "@typescript-eslint/types": "7.1.0", - "@typescript-eslint/visitor-keys": "7.1.0", + "@typescript-eslint/types": "7.1.1", + "@typescript-eslint/visitor-keys": "7.1.1", "debug": "^4.3.4", "globby": "^11.1.0", "is-glob": "^4.0.3", @@ -3648,12 +3648,12 @@ } }, "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/visitor-keys": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-7.1.0.tgz", - "integrity": "sha512-FhUqNWluiGNzlvnDZiXad4mZRhtghdoKW6e98GoEOYSu5cND+E39rG5KwJMUzeENwm1ztYBRqof8wMLP+wNPIA==", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-7.1.1.tgz", + "integrity": "sha512-yTdHDQxY7cSoCcAtiBzVzxleJhkGB9NncSIyMYe2+OGON1ZsP9zOPws/Pqgopa65jvknOjlk/w7ulPlZ78PiLQ==", "dev": true, "dependencies": { - "@typescript-eslint/types": "7.1.0", + "@typescript-eslint/types": "7.1.1", "eslint-visitor-keys": "^3.4.1" }, "engines": { From 17978545f365785a87ac78052b3d20894e87a384 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 5 Mar 2024 12:07:47 +0300 Subject: [PATCH 143/458] Bump the definitely-typed group with 1 update (#384) Bumps the definitely-typed group with 1 update: [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react). Updates `@types/react` from 18.2.61 to 18.2.62 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react) --- updated-dependencies: - dependency-name: "@types/react" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- package-lock.json | 10 +++++----- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 53405413..76a38a85 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -29,7 +29,7 @@ "@repo/typescript-config": "*", "@types/eslint": "8.56.5", "@types/node": "20.11.24", - "@types/react": "18.2.61", + "@types/react": "18.2.62", "@types/react-dom": "18.2.19", "dotenv-cli": "7.3.0", "eslint": "8.57.0", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 15a455d3..3bc4df1b 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -23,7 +23,7 @@ "@repo/typescript-config": "*", "@types/eslint": "8.56.5", "@types/node": "20.11.24", - "@types/react": "18.2.61", + "@types/react": "18.2.62", "@types/react-dom": "18.2.19", "eslint": "8.57.0", "typescript": "5.3.3" diff --git a/package-lock.json b/package-lock.json index 8d2c35f4..69b6a3b8 100644 --- a/package-lock.json +++ b/package-lock.json @@ -49,7 +49,7 @@ "@repo/typescript-config": "*", "@types/eslint": "8.56.5", "@types/node": "20.11.24", - "@types/react": "18.2.61", + "@types/react": "18.2.62", "@types/react-dom": "18.2.19", "dotenv-cli": "7.3.0", "eslint": "8.57.0", @@ -121,7 +121,7 @@ "@repo/typescript-config": "*", "@types/eslint": "8.56.5", "@types/node": "20.11.24", - "@types/react": "18.2.61", + "@types/react": "18.2.62", "@types/react-dom": "18.2.19", "eslint": "8.57.0", "typescript": "5.3.3" @@ -3342,9 +3342,9 @@ "integrity": "sha512-ga8y9v9uyeiLdpKddhxYQkxNDrfvuPrlFb0N1qnZZByvcElJaXthF1UhvCh9TLWJBEHeNtdnbysW7Y6Uq8CVng==" }, "node_modules/@types/react": { - "version": "18.2.61", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.61.tgz", - "integrity": "sha512-NURTN0qNnJa7O/k4XUkEW2yfygA+NxS0V5h1+kp9jPwhzZy95q3ADoGMP0+JypMhrZBTTgjKAUlTctde1zzeQA==", + "version": "18.2.62", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.62.tgz", + "integrity": "sha512-l3f57BbaEKP0xcFzf+5qRG8/PXykZiuVM6eEoPtqBPCp6dxO3HhDkLIgIyXPhPKNAeXn3KO2pEaNgzaEo/asaw==", "dependencies": { "@types/prop-types": "*", "@types/scheduler": "*", From a24bc9621f5915e22680dc855e662a784ecc5b4d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 6 Mar 2024 10:58:37 +0300 Subject: [PATCH 144/458] Bump @vercel/style-guide from 5.2.0 to 6.0.0 (#389) Bumps [@vercel/style-guide](https://github.com/vercel/style-guide) from 5.2.0 to 6.0.0. - [Release notes](https://github.com/vercel/style-guide/releases) - [Changelog](https://github.com/vercel/style-guide/blob/canary/.releaserc.js) - [Commits](https://github.com/vercel/style-guide/compare/v5.2.0...v6.0.0) --- updated-dependencies: - dependency-name: "@vercel/style-guide" dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- internal/eslint-config/package.json | 2 +- internal/prettier-config/package.json | 2 +- package-lock.json | 547 ++++++++++---------------- 3 files changed, 215 insertions(+), 336 deletions(-) diff --git a/internal/eslint-config/package.json b/internal/eslint-config/package.json index 38b2e710..9cfe276a 100644 --- a/internal/eslint-config/package.json +++ b/internal/eslint-config/package.json @@ -8,7 +8,7 @@ "devDependencies": { "@typescript-eslint/eslint-plugin": "7.1.1", "@typescript-eslint/parser": "7.1.1", - "@vercel/style-guide": "5.2.0", + "@vercel/style-guide": "6.0.0", "eslint-config-prettier": "9.1.0", "eslint-config-turbo": "1.12.4", "eslint-plugin-only-warn": "1.1.0", diff --git a/internal/prettier-config/package.json b/internal/prettier-config/package.json index 65206be6..635cf3b1 100644 --- a/internal/prettier-config/package.json +++ b/internal/prettier-config/package.json @@ -4,6 +4,6 @@ "private": true, "license": "MIT", "devDependencies": { - "@vercel/style-guide": "5.2.0" + "@vercel/style-guide": "6.0.0" } } diff --git a/package-lock.json b/package-lock.json index 69b6a3b8..f71fae18 100644 --- a/package-lock.json +++ b/package-lock.json @@ -61,6 +61,15 @@ "typescript": "5.3.3" } }, + "apps/cache-testing/node_modules/@next/eslint-plugin-next": { + "version": "14.1.1-canary.27", + "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.1.1-canary.27.tgz", + "integrity": "sha512-mXBXP962E5xBlUvG0M4CsQWEzC6vLJp3ghGKZ3bCRqASfbR1+NdCMq7wnl8w8mdm0g9TdcjfSXQR+xap6LeC0Q==", + "dev": true, + "dependencies": { + "glob": "10.3.10" + } + }, "apps/cache-testing/node_modules/next": { "version": "14.1.1-canary.27", "resolved": "https://registry.npmjs.org/next/-/next-14.1.1-canary.27.tgz", @@ -158,137 +167,13 @@ "devDependencies": { "@typescript-eslint/eslint-plugin": "7.1.1", "@typescript-eslint/parser": "7.1.1", - "@vercel/style-guide": "5.2.0", + "@vercel/style-guide": "6.0.0", "eslint-config-prettier": "9.1.0", "eslint-config-turbo": "1.12.4", "eslint-plugin-only-warn": "1.1.0", "typescript": "5.3.3" } }, - "internal/eslint-config/node_modules/@next/eslint-plugin-next": { - "version": "14.1.0", - "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.1.0.tgz", - "integrity": "sha512-x4FavbNEeXx/baD/zC/SdrvkjSby8nBn8KcCREqk6UuwvwoAPZmaV8TFCAuo/cpovBRTIY67mHhe86MQQm/68Q==", - "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "glob": "10.3.10" - } - }, - "internal/eslint-config/node_modules/@vercel/style-guide": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@vercel/style-guide/-/style-guide-5.2.0.tgz", - "integrity": "sha512-fNSKEaZvSkiBoF6XEefs8CcgAV9K9e+MbcsDZjUsktHycKdA0jvjAzQi1W/FzLS+Nr5zZ6oejCwq/97dHUKe0g==", - "dev": true, - "dependencies": { - "@babel/core": "^7.22.11", - "@babel/eslint-parser": "^7.22.11", - "@rushstack/eslint-patch": "^1.3.3", - "@typescript-eslint/eslint-plugin": "^6.5.0", - "@typescript-eslint/parser": "^6.5.0", - "eslint-config-prettier": "^9.0.0", - "eslint-import-resolver-alias": "^1.1.2", - "eslint-import-resolver-typescript": "^3.6.0", - "eslint-plugin-eslint-comments": "^3.2.0", - "eslint-plugin-import": "^2.28.1", - "eslint-plugin-jest": "^27.2.3", - "eslint-plugin-jsx-a11y": "^6.7.1", - "eslint-plugin-playwright": "^0.16.0", - "eslint-plugin-react": "^7.33.2", - "eslint-plugin-react-hooks": "^4.6.0", - "eslint-plugin-testing-library": "^6.0.1", - "eslint-plugin-tsdoc": "^0.2.17", - "eslint-plugin-unicorn": "^48.0.1", - "prettier-plugin-packagejson": "^2.4.5" - }, - "engines": { - "node": ">=16" - }, - "peerDependencies": { - "@next/eslint-plugin-next": ">=12.3.0 <15", - "eslint": ">=8.48.0 <9", - "prettier": ">=3.0.0 <4", - "typescript": ">=4.8.0 <6" - }, - "peerDependenciesMeta": { - "@next/eslint-plugin-next": { - "optional": true - }, - "eslint": { - "optional": true - }, - "prettier": { - "optional": true - }, - "typescript": { - "optional": true - } - } - }, - "internal/eslint-config/node_modules/@vercel/style-guide/node_modules/@typescript-eslint/eslint-plugin": { - "version": "6.21.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.21.0.tgz", - "integrity": "sha512-oy9+hTPCUFpngkEZUSzbf9MxI65wbKFoQYsgPdILTfbUldp5ovUuphZVe4i30emU9M/kP+T64Di0mxl7dSw3MA==", - "dev": true, - "dependencies": { - "@eslint-community/regexpp": "^4.5.1", - "@typescript-eslint/scope-manager": "6.21.0", - "@typescript-eslint/type-utils": "6.21.0", - "@typescript-eslint/utils": "6.21.0", - "@typescript-eslint/visitor-keys": "6.21.0", - "debug": "^4.3.4", - "graphemer": "^1.4.0", - "ignore": "^5.2.4", - "natural-compare": "^1.4.0", - "semver": "^7.5.4", - "ts-api-utils": "^1.0.1" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "@typescript-eslint/parser": "^6.0.0 || ^6.0.0-alpha", - "eslint": "^7.0.0 || ^8.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "internal/eslint-config/node_modules/@vercel/style-guide/node_modules/@typescript-eslint/parser": { - "version": "6.21.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.21.0.tgz", - "integrity": "sha512-tbsV1jPne5CkFQCgPBcDOt30ItF7aJoZL997JSF7MhGQqOeT3svWRYxiqlfA5RUdlHN6Fi+EI9bxqbdyAUZjYQ==", - "dev": true, - "dependencies": { - "@typescript-eslint/scope-manager": "6.21.0", - "@typescript-eslint/types": "6.21.0", - "@typescript-eslint/typescript-estree": "6.21.0", - "@typescript-eslint/visitor-keys": "6.21.0", - "debug": "^4.3.4" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^7.0.0 || ^8.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, "internal/next-common": { "name": "@neshca/next-common", "version": "0.0.0", @@ -368,131 +253,7 @@ "version": "0.0.0", "license": "MIT", "devDependencies": { - "@vercel/style-guide": "5.2.0" - } - }, - "internal/prettier-config/node_modules/@next/eslint-plugin-next": { - "version": "14.1.0", - "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.1.0.tgz", - "integrity": "sha512-x4FavbNEeXx/baD/zC/SdrvkjSby8nBn8KcCREqk6UuwvwoAPZmaV8TFCAuo/cpovBRTIY67mHhe86MQQm/68Q==", - "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "glob": "10.3.10" - } - }, - "internal/prettier-config/node_modules/@typescript-eslint/eslint-plugin": { - "version": "6.21.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.21.0.tgz", - "integrity": "sha512-oy9+hTPCUFpngkEZUSzbf9MxI65wbKFoQYsgPdILTfbUldp5ovUuphZVe4i30emU9M/kP+T64Di0mxl7dSw3MA==", - "dev": true, - "dependencies": { - "@eslint-community/regexpp": "^4.5.1", - "@typescript-eslint/scope-manager": "6.21.0", - "@typescript-eslint/type-utils": "6.21.0", - "@typescript-eslint/utils": "6.21.0", - "@typescript-eslint/visitor-keys": "6.21.0", - "debug": "^4.3.4", - "graphemer": "^1.4.0", - "ignore": "^5.2.4", - "natural-compare": "^1.4.0", - "semver": "^7.5.4", - "ts-api-utils": "^1.0.1" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "@typescript-eslint/parser": "^6.0.0 || ^6.0.0-alpha", - "eslint": "^7.0.0 || ^8.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "internal/prettier-config/node_modules/@typescript-eslint/parser": { - "version": "6.21.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.21.0.tgz", - "integrity": "sha512-tbsV1jPne5CkFQCgPBcDOt30ItF7aJoZL997JSF7MhGQqOeT3svWRYxiqlfA5RUdlHN6Fi+EI9bxqbdyAUZjYQ==", - "dev": true, - "dependencies": { - "@typescript-eslint/scope-manager": "6.21.0", - "@typescript-eslint/types": "6.21.0", - "@typescript-eslint/typescript-estree": "6.21.0", - "@typescript-eslint/visitor-keys": "6.21.0", - "debug": "^4.3.4" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^7.0.0 || ^8.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "internal/prettier-config/node_modules/@vercel/style-guide": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@vercel/style-guide/-/style-guide-5.2.0.tgz", - "integrity": "sha512-fNSKEaZvSkiBoF6XEefs8CcgAV9K9e+MbcsDZjUsktHycKdA0jvjAzQi1W/FzLS+Nr5zZ6oejCwq/97dHUKe0g==", - "dev": true, - "dependencies": { - "@babel/core": "^7.22.11", - "@babel/eslint-parser": "^7.22.11", - "@rushstack/eslint-patch": "^1.3.3", - "@typescript-eslint/eslint-plugin": "^6.5.0", - "@typescript-eslint/parser": "^6.5.0", - "eslint-config-prettier": "^9.0.0", - "eslint-import-resolver-alias": "^1.1.2", - "eslint-import-resolver-typescript": "^3.6.0", - "eslint-plugin-eslint-comments": "^3.2.0", - "eslint-plugin-import": "^2.28.1", - "eslint-plugin-jest": "^27.2.3", - "eslint-plugin-jsx-a11y": "^6.7.1", - "eslint-plugin-playwright": "^0.16.0", - "eslint-plugin-react": "^7.33.2", - "eslint-plugin-react-hooks": "^4.6.0", - "eslint-plugin-testing-library": "^6.0.1", - "eslint-plugin-tsdoc": "^0.2.17", - "eslint-plugin-unicorn": "^48.0.1", - "prettier-plugin-packagejson": "^2.4.5" - }, - "engines": { - "node": ">=16" - }, - "peerDependencies": { - "@next/eslint-plugin-next": ">=12.3.0 <15", - "eslint": ">=8.48.0 <9", - "prettier": ">=3.0.0 <4", - "typescript": ">=4.8.0 <6" - }, - "peerDependenciesMeta": { - "@next/eslint-plugin-next": { - "optional": true - }, - "eslint": { - "optional": true - }, - "prettier": { - "optional": true - }, - "typescript": { - "optional": true - } + "@vercel/style-guide": "6.0.0" } }, "internal/typescript-config": { @@ -564,9 +325,9 @@ } }, "node_modules/@babel/core": { - "version": "7.23.9", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.23.9.tgz", - "integrity": "sha512-5q0175NOjddqpvvzU+kDiSOAk4PfdO6FvwCWoQ6RO7rTzEe8vlo+4HVfcnAREhD4npMs0e9uZypjTwzZPCf/cw==", + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.0.tgz", + "integrity": "sha512-fQfkg0Gjkza3nf0c7/w6Xf34BW4YvzNfACRLmmb7XRLa6XHdR+K9AlJlxneFfWYf6uhOzuzZVTjF/8KfndZANw==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.2.0", @@ -574,11 +335,11 @@ "@babel/generator": "^7.23.6", "@babel/helper-compilation-targets": "^7.23.6", "@babel/helper-module-transforms": "^7.23.3", - "@babel/helpers": "^7.23.9", - "@babel/parser": "^7.23.9", - "@babel/template": "^7.23.9", - "@babel/traverse": "^7.23.9", - "@babel/types": "^7.23.9", + "@babel/helpers": "^7.24.0", + "@babel/parser": "^7.24.0", + "@babel/template": "^7.24.0", + "@babel/traverse": "^7.24.0", + "@babel/types": "^7.24.0", "convert-source-map": "^2.0.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -809,14 +570,14 @@ } }, "node_modules/@babel/helpers": { - "version": "7.23.9", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.23.9.tgz", - "integrity": "sha512-87ICKgU5t5SzOT7sBMfCOZQ2rHjRU+Pcb9BoILMYz600W6DkVRLFBPwQ18gwUVvggqXivaUakpnxWQGbpywbBQ==", + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.24.0.tgz", + "integrity": "sha512-ulDZdc0Aj5uLc5nETsa7EPx2L7rM0YJM8r7ck7U73AXi7qOV44IHHRAYZHY6iU1rr3C5N4NtTmMRUJP6kwCWeA==", "dev": true, "dependencies": { - "@babel/template": "^7.23.9", - "@babel/traverse": "^7.23.9", - "@babel/types": "^7.23.9" + "@babel/template": "^7.24.0", + "@babel/traverse": "^7.24.0", + "@babel/types": "^7.24.0" }, "engines": { "node": ">=6.9.0" @@ -836,9 +597,9 @@ } }, "node_modules/@babel/parser": { - "version": "7.23.9", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.9.tgz", - "integrity": "sha512-9tcKgqKbs3xGJ+NtKF2ndOBBLVwPjl1SHxPQkd36r3Dlirw3xWUeGaTbqr7uGZcTaxkVNwc+03SVP7aCdWrTlA==", + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.0.tgz", + "integrity": "sha512-QuP/FxEAzMSjXygs8v4N9dvdXzEHN4W1oF3PxuWAtPo08UdM17u89RDMgjLn/mlc56iM0HlLmVkO/wgR+rDgHg==", "dev": true, "bin": { "parser": "bin/babel-parser.js" @@ -859,23 +620,23 @@ } }, "node_modules/@babel/template": { - "version": "7.23.9", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.23.9.tgz", - "integrity": "sha512-+xrD2BWLpvHKNmX2QbpdpsBaWnRxahMwJjO+KZk2JOElj5nSmKezyS1B4u+QbHMTX69t4ukm6hh9lsYQ7GHCKA==", + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz", + "integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==", "dev": true, "dependencies": { "@babel/code-frame": "^7.23.5", - "@babel/parser": "^7.23.9", - "@babel/types": "^7.23.9" + "@babel/parser": "^7.24.0", + "@babel/types": "^7.24.0" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/traverse": { - "version": "7.23.9", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.23.9.tgz", - "integrity": "sha512-I/4UJ9vs90OkBtY6iiiTORVMyIhJ4kAVmsKo9KFc8UOxMeUfi2hvtIBsET5u9GizXE6/GFSuKCTNfgCswuEjRg==", + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.0.tgz", + "integrity": "sha512-HfuJlI8qq3dEDmNU5ChzzpZRWq+oxCZQyMzIMEqLho+AQnhMnKQUzH6ydo3RBl/YjPCuk68Y6s0Gx0AeyULiWw==", "dev": true, "dependencies": { "@babel/code-frame": "^7.23.5", @@ -884,8 +645,8 @@ "@babel/helper-function-name": "^7.23.0", "@babel/helper-hoist-variables": "^7.22.5", "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/parser": "^7.23.9", - "@babel/types": "^7.23.9", + "@babel/parser": "^7.24.0", + "@babel/types": "^7.24.0", "debug": "^4.3.1", "globals": "^11.1.0" }, @@ -903,9 +664,9 @@ } }, "node_modules/@babel/types": { - "version": "7.23.9", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.23.9.tgz", - "integrity": "sha512-dQjSq/7HaSjRM43FFGnv5keM2HsxpmyV1PfaSVm0nzzjwwTmjOe6J4bC8e3+pTEIgHaHj+1ZlLThRJ2auc/w1Q==", + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.0.tgz", + "integrity": "sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==", "dev": true, "dependencies": { "@babel/helper-string-parser": "^7.23.4", @@ -2332,10 +2093,12 @@ "integrity": "sha512-v6FRSD3aZ1lf9sLAaGBlvGccffSRx3NhbANdFO2yrj6TVdFkAOvemhwL6GBZ2V+2MlAbTqWtVW7oJie+GgQWoA==" }, "node_modules/@next/eslint-plugin-next": { - "version": "14.1.1-canary.27", - "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.1.1-canary.27.tgz", - "integrity": "sha512-mXBXP962E5xBlUvG0M4CsQWEzC6vLJp3ghGKZ3bCRqASfbR1+NdCMq7wnl8w8mdm0g9TdcjfSXQR+xap6LeC0Q==", + "version": "14.1.2", + "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.1.2.tgz", + "integrity": "sha512-k9h9NfR1joJI48uwdQd/DuOV1mBgcjlmWaX45eAXCFGT96oc+/6SMjO3s7naVtTXqSKjFAgk2GDlW6Hv41ROXQ==", "dev": true, + "optional": true, + "peer": true, "dependencies": { "glob": "10.3.10" } @@ -3705,33 +3468,6 @@ "url": "https://opencollective.com/typescript-eslint" } }, - "node_modules/@typescript-eslint/type-utils": { - "version": "6.21.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.21.0.tgz", - "integrity": "sha512-rZQI7wHfao8qMX3Rd3xqeYSMCL3SoiSQLBATSiVKARdFGCYSRvmViieZjqc58jKgs8Y8i9YvVVhRbHSTA4VBag==", - "dev": true, - "dependencies": { - "@typescript-eslint/typescript-estree": "6.21.0", - "@typescript-eslint/utils": "6.21.0", - "debug": "^4.3.4", - "ts-api-utils": "^1.0.1" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^7.0.0 || ^8.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, "node_modules/@typescript-eslint/types": { "version": "6.21.0", "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.21.0.tgz", @@ -3844,6 +3580,57 @@ "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz", "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==" }, + "node_modules/@vercel/style-guide": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/@vercel/style-guide/-/style-guide-6.0.0.tgz", + "integrity": "sha512-tu0wFINGz91EPwaT5VjSqUwbvCY9pvLach7SPG4XyfJKPU9Vku2TFa6+AyzJ4oroGbo9fK+TQhIFHrnFl0nCdg==", + "dev": true, + "dependencies": { + "@babel/core": "^7.24.0", + "@babel/eslint-parser": "^7.23.10", + "@rushstack/eslint-patch": "^1.7.2", + "@typescript-eslint/eslint-plugin": "^7.1.1", + "@typescript-eslint/parser": "^7.1.1", + "eslint-config-prettier": "^9.1.0", + "eslint-import-resolver-alias": "^1.1.2", + "eslint-import-resolver-typescript": "^3.6.1", + "eslint-plugin-eslint-comments": "^3.2.0", + "eslint-plugin-import": "^2.29.1", + "eslint-plugin-jest": "^27.9.0", + "eslint-plugin-jsx-a11y": "^6.8.0", + "eslint-plugin-playwright": "^1.5.2", + "eslint-plugin-react": "^7.34.0", + "eslint-plugin-react-hooks": "^4.6.0", + "eslint-plugin-testing-library": "^6.2.0", + "eslint-plugin-tsdoc": "^0.2.17", + "eslint-plugin-unicorn": "^51.0.1", + "eslint-plugin-vitest": "^0.3.22", + "prettier-plugin-packagejson": "^2.4.12" + }, + "engines": { + "node": ">=18.18" + }, + "peerDependencies": { + "@next/eslint-plugin-next": ">=12.3.0 <15.0.0-0", + "eslint": ">=8.48.0 <9", + "prettier": ">=3.0.0 <4", + "typescript": ">=4.8.0 <6" + }, + "peerDependenciesMeta": { + "@next/eslint-plugin-next": { + "optional": true + }, + "eslint": { + "optional": true + }, + "prettier": { + "optional": true + }, + "typescript": { + "optional": true + } + } + }, "node_modules/abort-controller": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz", @@ -4128,6 +3915,25 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/array.prototype.findlast": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/array.prototype.findlast/-/array.prototype.findlast-1.2.4.tgz", + "integrity": "sha512-BMtLxpV+8BD+6ZPFIWmnUBpQoy+A+ujcg4rhp2iwCRJYA7PEh2MS4NL3lz8EiDlLrJPp2hg9qWihr5pd//jcGw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.5", + "define-properties": "^1.2.1", + "es-abstract": "^1.22.3", + "es-errors": "^1.3.0", + "es-shim-unscopables": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/array.prototype.findlastindex": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.4.tgz", @@ -4182,6 +3988,18 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/array.prototype.toreversed": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/array.prototype.toreversed/-/array.prototype.toreversed-1.1.2.tgz", + "integrity": "sha512-wwDCoT4Ck4Cz7sLtgUmzR5UV3YF5mFHUlbChCzZBQZ+0m2cl/DH3tKgvphv1nKgFsJ48oCSg6p91q2Vm0I/ZMA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "es-shim-unscopables": "^1.0.0" + } + }, "node_modules/array.prototype.tosorted": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/array.prototype.tosorted/-/array.prototype.tosorted-1.1.3.tgz", @@ -5087,6 +4905,19 @@ "node": ">= 0.6" } }, + "node_modules/core-js-compat": { + "version": "3.36.0", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.36.0.tgz", + "integrity": "sha512-iV9Pd/PsgjNWBXeq8XRtWVSgz2tKAfhfvBs7qxYty+RlRd+OCksaWmOnc4JKrTc1cToXL1N0s3l/vwlxPtdElw==", + "dev": true, + "dependencies": { + "browserslist": "^4.22.3" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, "node_modules/cose-base": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/cose-base/-/cose-base-1.0.3.tgz", @@ -6666,12 +6497,18 @@ } }, "node_modules/eslint-plugin-playwright": { - "version": "0.16.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-playwright/-/eslint-plugin-playwright-0.16.0.tgz", - "integrity": "sha512-DcHpF0SLbNeh9MT4pMzUGuUSnJ7q5MWbP8sSEFIMS6j7Ggnduq8ghNlfhURgty4c1YFny7Ge9xYTO1FSAoV2Vw==", + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-playwright/-/eslint-plugin-playwright-1.5.2.tgz", + "integrity": "sha512-TMzLrLGQMccngU8GogtzIc9u5RzXGnfsQEUjLfEfshINuVR2fS4SHfDtU7xYP90Vwm5vflHECf610KTdGvO53w==", "dev": true, + "dependencies": { + "globals": "^13.23.0" + }, + "engines": { + "node": ">=16.6.0" + }, "peerDependencies": { - "eslint": ">=7", + "eslint": ">=8.40.0", "eslint-plugin-jest": ">=25" }, "peerDependenciesMeta": { @@ -6681,27 +6518,29 @@ } }, "node_modules/eslint-plugin-react": { - "version": "7.33.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.33.2.tgz", - "integrity": "sha512-73QQMKALArI8/7xGLNI/3LylrEYrlKZSb5C9+q3OtOewTnMQi5cT+aE9E41sLCmli3I9PGGmD1yiZydyo4FEPw==", + "version": "7.34.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.34.0.tgz", + "integrity": "sha512-MeVXdReleBTdkz/bvcQMSnCXGi+c9kvy51IpinjnJgutl3YTHWsDdke7Z1ufZpGfDG8xduBDKyjtB9JH1eBKIQ==", "dev": true, "dependencies": { - "array-includes": "^3.1.6", - "array.prototype.flatmap": "^1.3.1", - "array.prototype.tosorted": "^1.1.1", + "array-includes": "^3.1.7", + "array.prototype.findlast": "^1.2.4", + "array.prototype.flatmap": "^1.3.2", + "array.prototype.toreversed": "^1.1.2", + "array.prototype.tosorted": "^1.1.3", "doctrine": "^2.1.0", - "es-iterator-helpers": "^1.0.12", + "es-iterator-helpers": "^1.0.17", "estraverse": "^5.3.0", "jsx-ast-utils": "^2.4.1 || ^3.0.0", "minimatch": "^3.1.2", - "object.entries": "^1.1.6", - "object.fromentries": "^2.0.6", - "object.hasown": "^1.1.2", - "object.values": "^1.1.6", + "object.entries": "^1.1.7", + "object.fromentries": "^2.0.7", + "object.hasown": "^1.1.3", + "object.values": "^1.1.7", "prop-types": "^15.8.1", - "resolve": "^2.0.0-next.4", + "resolve": "^2.0.0-next.5", "semver": "^6.3.1", - "string.prototype.matchall": "^4.0.8" + "string.prototype.matchall": "^4.0.10" }, "engines": { "node": ">=4" @@ -6930,20 +6769,21 @@ } }, "node_modules/eslint-plugin-unicorn": { - "version": "48.0.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-unicorn/-/eslint-plugin-unicorn-48.0.1.tgz", - "integrity": "sha512-FW+4r20myG/DqFcCSzoumaddKBicIPeFnTrifon2mWIzlfyvzwyqZjqVP7m4Cqr/ZYisS2aiLghkUWaPg6vtCw==", + "version": "51.0.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-unicorn/-/eslint-plugin-unicorn-51.0.1.tgz", + "integrity": "sha512-MuR/+9VuB0fydoI0nIn2RDA5WISRn4AsJyNSaNKLVwie9/ONvQhxOBbkfSICBPnzKrB77Fh6CZZXjgTt/4Latw==", "dev": true, "dependencies": { - "@babel/helper-validator-identifier": "^7.22.5", + "@babel/helper-validator-identifier": "^7.22.20", "@eslint-community/eslint-utils": "^4.4.0", - "ci-info": "^3.8.0", + "@eslint/eslintrc": "^2.1.4", + "ci-info": "^4.0.0", "clean-regexp": "^1.0.0", + "core-js-compat": "^3.34.0", "esquery": "^1.5.0", "indent-string": "^4.0.0", "is-builtin-module": "^3.2.1", "jsesc": "^3.0.2", - "lodash": "^4.17.21", "pluralize": "^8.0.0", "read-pkg-up": "^7.0.1", "regexp-tree": "^0.1.27", @@ -6958,7 +6798,22 @@ "url": "https://github.com/sindresorhus/eslint-plugin-unicorn?sponsor=1" }, "peerDependencies": { - "eslint": ">=8.44.0" + "eslint": ">=8.56.0" + } + }, + "node_modules/eslint-plugin-unicorn/node_modules/ci-info": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-4.0.0.tgz", + "integrity": "sha512-TdHqgGf9odd8SXNuxtUBVx8Nv+qZOejE6qyqiy5NtbYYQOeFa6zmHkxlPzmaLxWWHsU6nJmB7AETdVPi+2NBUg==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/sibiraj-s" + } + ], + "engines": { + "node": ">=8" } }, "node_modules/eslint-plugin-unicorn/node_modules/jsesc": { @@ -6973,6 +6828,30 @@ "node": ">=6" } }, + "node_modules/eslint-plugin-vitest": { + "version": "0.3.22", + "resolved": "https://registry.npmjs.org/eslint-plugin-vitest/-/eslint-plugin-vitest-0.3.22.tgz", + "integrity": "sha512-atkFGQ7aVgcuSeSMDqnyevIyUpfBPMnosksgEPrKE7Y8xQlqG/5z2IQ6UDau05zXaaFv7Iz8uzqvIuKshjZ0Zw==", + "dev": true, + "dependencies": { + "@typescript-eslint/utils": "^6.21.0" + }, + "engines": { + "node": "^18.0.0 || >= 20.0.0" + }, + "peerDependencies": { + "eslint": ">=8.0.0", + "vitest": "*" + }, + "peerDependenciesMeta": { + "@typescript-eslint/eslint-plugin": { + "optional": true + }, + "vitest": { + "optional": true + } + } + }, "node_modules/eslint-scope": { "version": "7.2.2", "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", From 182cca4bbdbfb719e5e918dce8affbbc45b9ee43 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 6 Mar 2024 11:25:36 +0300 Subject: [PATCH 145/458] Bump the definitely-typed group with 2 updates (#388) Bumps the definitely-typed group with 2 updates: [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) and [@types/react-dom](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react-dom). Updates `@types/react` from 18.2.62 to 18.2.63 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react) Updates `@types/react-dom` from 18.2.19 to 18.2.20 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react-dom) --- updated-dependencies: - dependency-name: "@types/react" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed - dependency-name: "@types/react-dom" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 4 ++-- docs/cache-handler-docs/package.json | 4 ++-- package-lock.json | 20 ++++++++++---------- 3 files changed, 14 insertions(+), 14 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 76a38a85..80b4acf8 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -29,8 +29,8 @@ "@repo/typescript-config": "*", "@types/eslint": "8.56.5", "@types/node": "20.11.24", - "@types/react": "18.2.62", - "@types/react-dom": "18.2.19", + "@types/react": "18.2.63", + "@types/react-dom": "18.2.20", "dotenv-cli": "7.3.0", "eslint": "8.57.0", "fastify": "4.26.2", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 3bc4df1b..1cc0f05f 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -23,8 +23,8 @@ "@repo/typescript-config": "*", "@types/eslint": "8.56.5", "@types/node": "20.11.24", - "@types/react": "18.2.62", - "@types/react-dom": "18.2.19", + "@types/react": "18.2.63", + "@types/react-dom": "18.2.20", "eslint": "8.57.0", "typescript": "5.3.3" } diff --git a/package-lock.json b/package-lock.json index f71fae18..6bab6d7e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -49,8 +49,8 @@ "@repo/typescript-config": "*", "@types/eslint": "8.56.5", "@types/node": "20.11.24", - "@types/react": "18.2.62", - "@types/react-dom": "18.2.19", + "@types/react": "18.2.63", + "@types/react-dom": "18.2.20", "dotenv-cli": "7.3.0", "eslint": "8.57.0", "fastify": "4.26.2", @@ -130,8 +130,8 @@ "@repo/typescript-config": "*", "@types/eslint": "8.56.5", "@types/node": "20.11.24", - "@types/react": "18.2.62", - "@types/react-dom": "18.2.19", + "@types/react": "18.2.63", + "@types/react-dom": "18.2.20", "eslint": "8.57.0", "typescript": "5.3.3" } @@ -3105,9 +3105,9 @@ "integrity": "sha512-ga8y9v9uyeiLdpKddhxYQkxNDrfvuPrlFb0N1qnZZByvcElJaXthF1UhvCh9TLWJBEHeNtdnbysW7Y6Uq8CVng==" }, "node_modules/@types/react": { - "version": "18.2.62", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.62.tgz", - "integrity": "sha512-l3f57BbaEKP0xcFzf+5qRG8/PXykZiuVM6eEoPtqBPCp6dxO3HhDkLIgIyXPhPKNAeXn3KO2pEaNgzaEo/asaw==", + "version": "18.2.63", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.63.tgz", + "integrity": "sha512-ppaqODhs15PYL2nGUOaOu2RSCCB4Difu4UFrP4I3NHLloXC/ESQzQMi9nvjfT1+rudd0d2L3fQPJxRSey+rGlQ==", "dependencies": { "@types/prop-types": "*", "@types/scheduler": "*", @@ -3115,9 +3115,9 @@ } }, "node_modules/@types/react-dom": { - "version": "18.2.19", - "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.2.19.tgz", - "integrity": "sha512-aZvQL6uUbIJpjZk4U8JZGbau9KDeAwMfmhyWorxgBkqDIEf6ROjRozcmPIicqsUwPUjbkDfHKgGee1Lq65APcA==", + "version": "18.2.20", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.2.20.tgz", + "integrity": "sha512-HXN/biJY8nv20Cn9ZbCFq3liERd4CozVZmKbaiZ9KiKTrWqsP7eoGDO6OOGvJQwoVFuiXaiJ7nBBjiFFbRmQMQ==", "dev": true, "dependencies": { "@types/react": "*" From c8cc0af4c5cea9a2ea93641cf801803ca20441d9 Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Thu, 7 Mar 2024 13:48:56 +0300 Subject: [PATCH 146/458] Add unstable-cache page and test for it (#390) --- .changeset/chilled-boats-bathe.md | 5 + README.md | 2 +- apps/cache-testing/package.json | 5 +- .../unstable-cache/[slug]/page.tsx | 28 + .../src/utils/create-get-data.ts | 47 +- apps/cache-testing/tests/app.spec.ts | 18 + docs/cache-handler-docs/src/pages/index.mdx | 2 +- internal/next-common/package.json | 2 +- package-lock.json | 1581 ++++++++++------- packages/cache-handler/README.md | 2 +- 10 files changed, 1042 insertions(+), 650 deletions(-) create mode 100644 .changeset/chilled-boats-bathe.md create mode 100644 apps/cache-testing/src/app/app/with-params/unstable-cache/[slug]/page.tsx diff --git a/.changeset/chilled-boats-bathe.md b/.changeset/chilled-boats-bathe.md new file mode 100644 index 00000000..7ca52a6d --- /dev/null +++ b/.changeset/chilled-boats-bathe.md @@ -0,0 +1,5 @@ +--- +'@neshca/cache-handler': patch +--- + +Add tests for `unstable_cache` diff --git a/README.md b/README.md index e3f60fcd..ebd3b884 100644 --- a/README.md +++ b/README.md @@ -9,7 +9,7 @@ Welcome to [**`@neshca/cache-handler`**](./packages/cache-handler/README.md), a ### Next.js Routers support - Full support for Pages Router. -- Almost full support for App Router. The only exception is the `revalidatePath` function. +- Almost full support for App Router. The only exceptions are the [`unstable_cache`](https://github.com/caching-tools/next-shared-cache/issues/391) and the [`revalidatePath`](https://github.com/caching-tools/next-shared-cache/issues/382) functions. ### The importance of shared cache in distributed environments diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 80b4acf8..337c7a40 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -17,13 +17,13 @@ "start": "dotenv -e .env.local -v SERVER_STARTED=1 node .next/standalone/apps/cache-testing/server.js" }, "dependencies": { - "next": "14.1.1-canary.27", + "next": "14.2.0-canary.4", "react": "18.2.0", "react-dom": "18.2.0" }, "devDependencies": { "@neshca/cache-handler": "*", - "@next/eslint-plugin-next": "14.1.1-canary.27", + "@next/eslint-plugin-next": "14.2.0-canary.4", "@playwright/test": "1.42.1", "@repo/eslint-config": "*", "@repo/typescript-config": "*", @@ -31,6 +31,7 @@ "@types/node": "20.11.24", "@types/react": "18.2.63", "@types/react-dom": "18.2.20", + "axios": "1.6.7", "dotenv-cli": "7.3.0", "eslint": "8.57.0", "fastify": "4.26.2", diff --git a/apps/cache-testing/src/app/app/with-params/unstable-cache/[slug]/page.tsx b/apps/cache-testing/src/app/app/with-params/unstable-cache/[slug]/page.tsx new file mode 100644 index 00000000..2b3101eb --- /dev/null +++ b/apps/cache-testing/src/app/app/with-params/unstable-cache/[slug]/page.tsx @@ -0,0 +1,28 @@ +import { notFound } from 'next/navigation'; + +import { CommonAppPage } from 'cache-testing/utils/common-app-page'; +import { createGetData } from 'cache-testing/utils/create-get-data'; + +type PageParams = { params: { slug: string } }; + +export const dynamicParams = false; + +export const revalidate = 5; + +const getData = createGetData('app/with-params/unstable-cache', revalidate, 'unstable-cache'); + +export function generateStaticParams(): Promise { + return Promise.resolve([{ slug: '200' }, { slug: '404' }, { slug: 'alternate-200-404' }]); +} + +export default async function Index({ params }: PageParams): Promise { + const data = await getData(params.slug); + + if (!data) { + notFound(); + } + + const { count, path, time } = data; + + return ; +} diff --git a/apps/cache-testing/src/utils/create-get-data.ts b/apps/cache-testing/src/utils/create-get-data.ts index 704fe79c..a5b51d8e 100644 --- a/apps/cache-testing/src/utils/create-get-data.ts +++ b/apps/cache-testing/src/utils/create-get-data.ts @@ -1,22 +1,51 @@ +import axios from 'axios'; +import { unstable_cache } from 'next/cache'; import { normalizeSlug } from './normalize-slug'; import type { CountBackendApiResponseJson, PageProps } from './types'; -export function createGetData(path: string, revalidate?: number, cache?: RequestCache) { +async function getViaAxios(url: URL) { + try { + return (await axios.get(url.toString())).data; + } catch (_error) { + return null; + } +} + +export function createGetData(path: string, revalidate?: number, cache?: RequestCache | 'unstable-cache') { return async function getData(slug: string): Promise | null> { const pathAndTag = `/${path}/${normalizeSlug(slug)}`; const url = new URL(`/count${pathAndTag}`, 'http://localhost:8081'); - const result = await fetch(url, { - cache, - next: { revalidate, tags: [pathAndTag, 'whole-app-route'] }, - }); + let parsedResult: CountBackendApiResponseJson; - if (!result.ok) { - return null; - } + const tags = [pathAndTag, 'whole-app-route']; + + if (cache === 'unstable-cache') { + const cachedGet = unstable_cache(getViaAxios, tags, { + revalidate, + tags, + }); + + const data = await cachedGet(url); - const parsedResult = (await result.json()) as CountBackendApiResponseJson; + if (!data) { + return null; + } + + parsedResult = data; + } else { + const result = await fetch(url, { + cache, + next: { revalidate, tags }, + }); + + if (!result.ok) { + return null; + } + + parsedResult = (await result.json()) as CountBackendApiResponseJson; + } const newData = { count: parsedResult.count, path, time: parsedResult.unixTimeMs }; diff --git a/apps/cache-testing/tests/app.spec.ts b/apps/cache-testing/tests/app.spec.ts index cc2c6095..aeee8ff8 100644 --- a/apps/cache-testing/tests/app.spec.ts +++ b/apps/cache-testing/tests/app.spec.ts @@ -334,3 +334,21 @@ test.describe('Routes', () => { expect(message).toBe('OK'); }); }); + +test.describe('unstable_cache', () => { + test('unstable_cache works', async ({ page, baseURL }) => { + test.fixme(true, 'This test is failing because of unstable_cache is not supported yet.'); + + const url = new URL('/app/with-params/unstable-cache/200', `${baseURL}:3000`); + + await page.goto(url.href); + + const valueFromPage = Number.parseInt((await page.getByTestId('data').innerText()).valueOf(), 10); + + await page.reload(); + + const valueFromPageAfterReload = Number.parseInt((await page.getByTestId('data').innerText()).valueOf(), 10); + + expect(valueFromPageAfterReload === valueFromPage).toBe(true); + }); +}); diff --git a/docs/cache-handler-docs/src/pages/index.mdx b/docs/cache-handler-docs/src/pages/index.mdx index 07dc3750..5e4e1180 100644 --- a/docs/cache-handler-docs/src/pages/index.mdx +++ b/docs/cache-handler-docs/src/pages/index.mdx @@ -3,7 +3,7 @@ Welcome to `@neshca/cache-handler`, a specialized ISR/Data cache API crafted for ### Next.js Routers support - Full support for Pages Router. -- Almost full support for App Router. The only exception is the `revalidatePath` function. +- Almost full support for App Router. The only exceptions are the [`unstable_cache`](https://github.com/caching-tools/next-shared-cache/issues/391) and the [`revalidatePath`](https://github.com/caching-tools/next-shared-cache/issues/382) functions. ### The importance of shared cache in distributed environments diff --git a/internal/next-common/package.json b/internal/next-common/package.json index 1a5019ed..859562f2 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -11,7 +11,7 @@ "clean": "rimraf ./.turbo ./node_modules" }, "dependencies": { - "next": "14.1.1-canary.27" + "next": "14.2.0-canary.4" }, "devDependencies": { "@repo/typescript-config": "*", diff --git a/package-lock.json b/package-lock.json index 6bab6d7e..0d90eb99 100644 --- a/package-lock.json +++ b/package-lock.json @@ -37,13 +37,13 @@ "version": "0.0.0", "license": "MIT", "dependencies": { - "next": "14.1.1-canary.27", + "next": "14.2.0-canary.4", "react": "18.2.0", "react-dom": "18.2.0" }, "devDependencies": { "@neshca/cache-handler": "*", - "@next/eslint-plugin-next": "14.1.1-canary.27", + "@next/eslint-plugin-next": "14.2.0-canary.4", "@playwright/test": "1.42.1", "@repo/eslint-config": "*", "@repo/typescript-config": "*", @@ -51,6 +51,7 @@ "@types/node": "20.11.24", "@types/react": "18.2.63", "@types/react-dom": "18.2.20", + "axios": "1.6.7", "dotenv-cli": "7.3.0", "eslint": "8.57.0", "fastify": "4.26.2", @@ -61,22 +62,22 @@ "typescript": "5.3.3" } }, - "apps/cache-testing/node_modules/@next/eslint-plugin-next": { - "version": "14.1.1-canary.27", - "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.1.1-canary.27.tgz", - "integrity": "sha512-mXBXP962E5xBlUvG0M4CsQWEzC6vLJp3ghGKZ3bCRqASfbR1+NdCMq7wnl8w8mdm0g9TdcjfSXQR+xap6LeC0Q==", + "apps/cache-testing/node_modules/@types/node": { + "version": "20.11.24", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.24.tgz", + "integrity": "sha512-Kza43ewS3xoLgCEpQrsT+xRo/EJej1y0kVYGiLFE1NEODXGzTfwiC6tXTLMQskn1X4/Rjlh0MQUvx9W+L9long==", "dev": true, "dependencies": { - "glob": "10.3.10" + "undici-types": "~5.26.4" } }, "apps/cache-testing/node_modules/next": { - "version": "14.1.1-canary.27", - "resolved": "https://registry.npmjs.org/next/-/next-14.1.1-canary.27.tgz", - "integrity": "sha512-DedZm3VgO4i4Owt6xVeSs6VbwspdxyEXPzCE+gWz7c3QJSBa/0J3hV+uPETeZ2YexdVvWYAj5YxJMNTfLTKTqw==", + "version": "14.2.0-canary.4", + "resolved": "https://registry.npmjs.org/next/-/next-14.2.0-canary.4.tgz", + "integrity": "sha512-CoYamSDqBgsI3vZn/sqWkO37Fk908VNIqrqu+iEqCnFQlaoS/ceY5Ez5RU40zWgk3FRjnQerGyV+MDDIlLjRog==", "dependencies": { - "@next/env": "14.1.1-canary.27", - "@swc/helpers": "0.5.2", + "@next/env": "14.2.0-canary.4", + "@swc/helpers": "0.5.5", "busboy": "1.6.0", "caniuse-lite": "^1.0.30001579", "graceful-fs": "^4.2.11", @@ -90,15 +91,15 @@ "node": ">=18.17.0" }, "optionalDependencies": { - "@next/swc-darwin-arm64": "14.1.1-canary.27", - "@next/swc-darwin-x64": "14.1.1-canary.27", - "@next/swc-linux-arm64-gnu": "14.1.1-canary.27", - "@next/swc-linux-arm64-musl": "14.1.1-canary.27", - "@next/swc-linux-x64-gnu": "14.1.1-canary.27", - "@next/swc-linux-x64-musl": "14.1.1-canary.27", - "@next/swc-win32-arm64-msvc": "14.1.1-canary.27", - "@next/swc-win32-ia32-msvc": "14.1.1-canary.27", - "@next/swc-win32-x64-msvc": "14.1.1-canary.27" + "@next/swc-darwin-arm64": "14.2.0-canary.4", + "@next/swc-darwin-x64": "14.2.0-canary.4", + "@next/swc-linux-arm64-gnu": "14.2.0-canary.4", + "@next/swc-linux-arm64-musl": "14.2.0-canary.4", + "@next/swc-linux-x64-gnu": "14.2.0-canary.4", + "@next/swc-linux-x64-musl": "14.2.0-canary.4", + "@next/swc-win32-arm64-msvc": "14.2.0-canary.4", + "@next/swc-win32-ia32-msvc": "14.2.0-canary.4", + "@next/swc-win32-x64-msvc": "14.2.0-canary.4" }, "peerDependencies": { "@opentelemetry/api": "^1.1.0", @@ -136,6 +137,11 @@ "typescript": "5.3.3" } }, + "docs/cache-handler-docs/node_modules/@next/env": { + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/@next/env/-/env-14.1.0.tgz", + "integrity": "sha512-Py8zIo+02ht82brwwhTg36iogzFqGLPXlRGKQw5s+qP/kMNc4MAyDeEwBKDijk6zTIbegEgu8Qy7C1LboslQAw==" + }, "docs/cache-handler-docs/node_modules/@next/eslint-plugin-next": { "version": "14.1.0", "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.1.0.tgz", @@ -145,6 +151,284 @@ "glob": "10.3.10" } }, + "docs/cache-handler-docs/node_modules/@next/swc-darwin-arm64": { + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.1.0.tgz", + "integrity": "sha512-nUDn7TOGcIeyQni6lZHfzNoo9S0euXnu0jhsbMOmMJUBfgsnESdjN97kM7cBqQxZa8L/bM9om/S5/1dzCrW6wQ==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10" + } + }, + "docs/cache-handler-docs/node_modules/@next/swc-darwin-x64": { + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.1.0.tgz", + "integrity": "sha512-1jgudN5haWxiAl3O1ljUS2GfupPmcftu2RYJqZiMJmmbBT5M1XDffjUtRUzP4W3cBHsrvkfOFdQ71hAreNQP6g==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10" + } + }, + "docs/cache-handler-docs/node_modules/@next/swc-linux-arm64-gnu": { + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.1.0.tgz", + "integrity": "sha512-RHo7Tcj+jllXUbK7xk2NyIDod3YcCPDZxj1WLIYxd709BQ7WuRYl3OWUNG+WUfqeQBds6kvZYlc42NJJTNi4tQ==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "docs/cache-handler-docs/node_modules/@next/swc-linux-arm64-musl": { + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.1.0.tgz", + "integrity": "sha512-v6kP8sHYxjO8RwHmWMJSq7VZP2nYCkRVQ0qolh2l6xroe9QjbgV8siTbduED4u0hlk0+tjS6/Tuy4n5XCp+l6g==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "docs/cache-handler-docs/node_modules/@next/swc-linux-x64-gnu": { + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.1.0.tgz", + "integrity": "sha512-zJ2pnoFYB1F4vmEVlb/eSe+VH679zT1VdXlZKX+pE66grOgjmKJHKacf82g/sWE4MQ4Rk2FMBCRnX+l6/TVYzQ==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "docs/cache-handler-docs/node_modules/@next/swc-linux-x64-musl": { + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.1.0.tgz", + "integrity": "sha512-rbaIYFt2X9YZBSbH/CwGAjbBG2/MrACCVu2X0+kSykHzHnYH5FjHxwXLkcoJ10cX0aWCEynpu+rP76x0914atg==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "docs/cache-handler-docs/node_modules/@next/swc-win32-arm64-msvc": { + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.1.0.tgz", + "integrity": "sha512-o1N5TsYc8f/HpGt39OUQpQ9AKIGApd3QLueu7hXk//2xq5Z9OxmV6sQfNp8C7qYmiOlHYODOGqNNa0e9jvchGQ==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, + "docs/cache-handler-docs/node_modules/@next/swc-win32-ia32-msvc": { + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.1.0.tgz", + "integrity": "sha512-XXIuB1DBRCFwNO6EEzCTMHT5pauwaSj4SWs7CYnME57eaReAKBXCnkUE80p/pAZcewm7hs+vGvNqDPacEXHVkw==", + "cpu": [ + "ia32" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, + "docs/cache-handler-docs/node_modules/@next/swc-win32-x64-msvc": { + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.1.0.tgz", + "integrity": "sha512-9WEbVRRAqJ3YFVqEZIxUqkiO8l1nool1LmNxygr5HWF8AcSYsEpneUDhmjUVJEzO2A04+oPtZdombzzPPkTtgg==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, + "docs/cache-handler-docs/node_modules/@swc/helpers": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.2.tgz", + "integrity": "sha512-E4KcWTpoLHqwPHLxidpOqQbcrZVgi0rsmmZXUle1jXmJfuIf/UWpczUJ7MZZ5tlxytgJXyp0w4PGkkeLiuIdZw==", + "dependencies": { + "tslib": "^2.4.0" + } + }, + "docs/cache-handler-docs/node_modules/@types/node": { + "version": "20.11.24", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.24.tgz", + "integrity": "sha512-Kza43ewS3xoLgCEpQrsT+xRo/EJej1y0kVYGiLFE1NEODXGzTfwiC6tXTLMQskn1X4/Rjlh0MQUvx9W+L9long==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, + "docs/cache-handler-docs/node_modules/next": { + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/next/-/next-14.1.0.tgz", + "integrity": "sha512-wlzrsbfeSU48YQBjZhDzOwhWhGsy+uQycR8bHAOt1LY1bn3zZEcDyHQOEoN3aWzQ8LHCAJ1nqrWCc9XF2+O45Q==", + "dependencies": { + "@next/env": "14.1.0", + "@swc/helpers": "0.5.2", + "busboy": "1.6.0", + "caniuse-lite": "^1.0.30001579", + "graceful-fs": "^4.2.11", + "postcss": "8.4.31", + "styled-jsx": "5.1.1" + }, + "bin": { + "next": "dist/bin/next" + }, + "engines": { + "node": ">=18.17.0" + }, + "optionalDependencies": { + "@next/swc-darwin-arm64": "14.1.0", + "@next/swc-darwin-x64": "14.1.0", + "@next/swc-linux-arm64-gnu": "14.1.0", + "@next/swc-linux-arm64-musl": "14.1.0", + "@next/swc-linux-x64-gnu": "14.1.0", + "@next/swc-linux-x64-musl": "14.1.0", + "@next/swc-win32-arm64-msvc": "14.1.0", + "@next/swc-win32-ia32-msvc": "14.1.0", + "@next/swc-win32-x64-msvc": "14.1.0" + }, + "peerDependencies": { + "@opentelemetry/api": "^1.1.0", + "react": "^18.2.0", + "react-dom": "^18.2.0", + "sass": "^1.3.0" + }, + "peerDependenciesMeta": { + "@opentelemetry/api": { + "optional": true + }, + "sass": { + "optional": true + } + } + }, + "docs/cache-handler-docs/node_modules/nextra": { + "version": "2.13.4", + "resolved": "https://registry.npmjs.org/nextra/-/nextra-2.13.4.tgz", + "integrity": "sha512-7of2rSBxuUa3+lbMmZwG9cqgftcoNOVQLTT6Rxf3EhBR9t1EI7b43dted8YoqSNaigdE3j1CoyNkX8N/ZzlEpw==", + "dependencies": { + "@headlessui/react": "^1.7.17", + "@mdx-js/mdx": "^2.3.0", + "@mdx-js/react": "^2.3.0", + "@napi-rs/simple-git": "^0.1.9", + "@theguild/remark-mermaid": "^0.0.5", + "@theguild/remark-npm2yarn": "^0.2.0", + "clsx": "^2.0.0", + "github-slugger": "^2.0.0", + "graceful-fs": "^4.2.11", + "gray-matter": "^4.0.3", + "katex": "^0.16.9", + "lodash.get": "^4.4.2", + "next-mdx-remote": "^4.2.1", + "p-limit": "^3.1.0", + "rehype-katex": "^7.0.0", + "rehype-pretty-code": "0.9.11", + "rehype-raw": "^7.0.0", + "remark-gfm": "^3.0.1", + "remark-math": "^5.1.1", + "remark-reading-time": "^2.0.1", + "shiki": "^0.14.3", + "slash": "^3.0.0", + "title": "^3.5.3", + "unist-util-remove": "^4.0.0", + "unist-util-visit": "^5.0.0", + "zod": "^3.22.3" + }, + "engines": { + "node": ">=16" + }, + "peerDependencies": { + "next": ">=9.5.3", + "react": ">=16.13.1", + "react-dom": ">=16.13.1" + } + }, + "docs/cache-handler-docs/node_modules/nextra-theme-docs": { + "version": "2.13.4", + "resolved": "https://registry.npmjs.org/nextra-theme-docs/-/nextra-theme-docs-2.13.4.tgz", + "integrity": "sha512-2XOoMfwBCTYBt8ds4ZHftt9Wyf2XsykiNo02eir/XEYB+sGeUoE77kzqfidjEOKCSzOHYbK9BDMcg2+B/2vYRw==", + "dependencies": { + "@headlessui/react": "^1.7.17", + "@popperjs/core": "^2.11.8", + "clsx": "^2.0.0", + "escape-string-regexp": "^5.0.0", + "flexsearch": "^0.7.31", + "focus-visible": "^5.2.0", + "git-url-parse": "^13.1.0", + "intersection-observer": "^0.12.2", + "match-sorter": "^6.3.1", + "next-seo": "^6.0.0", + "next-themes": "^0.2.1", + "scroll-into-view-if-needed": "^3.1.0", + "zod": "^3.22.3" + }, + "peerDependencies": { + "next": ">=9.5.3", + "nextra": "2.13.4", + "react": ">=16.13.1", + "react-dom": ">=16.13.1" + } + }, + "docs/cache-handler-docs/node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "internal/backend": { "version": "0.0.0", "license": "MIT", @@ -161,6 +445,15 @@ "typescript": "5.3.3" } }, + "internal/backend/node_modules/@types/node": { + "version": "20.11.24", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.24.tgz", + "integrity": "sha512-Kza43ewS3xoLgCEpQrsT+xRo/EJej1y0kVYGiLFE1NEODXGzTfwiC6tXTLMQskn1X4/Rjlh0MQUvx9W+L9long==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "internal/eslint-config": { "name": "@repo/eslint-config", "version": "0.0.0", @@ -174,12 +467,98 @@ "typescript": "5.3.3" } }, + "internal/eslint-config/node_modules/@next/eslint-plugin-next": { + "version": "14.1.2", + "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.1.2.tgz", + "integrity": "sha512-k9h9NfR1joJI48uwdQd/DuOV1mBgcjlmWaX45eAXCFGT96oc+/6SMjO3s7naVtTXqSKjFAgk2GDlW6Hv41ROXQ==", + "dev": true, + "optional": true, + "peer": true, + "dependencies": { + "glob": "10.3.10" + } + }, + "internal/eslint-config/node_modules/@vercel/style-guide": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/@vercel/style-guide/-/style-guide-6.0.0.tgz", + "integrity": "sha512-tu0wFINGz91EPwaT5VjSqUwbvCY9pvLach7SPG4XyfJKPU9Vku2TFa6+AyzJ4oroGbo9fK+TQhIFHrnFl0nCdg==", + "dev": true, + "dependencies": { + "@babel/core": "^7.24.0", + "@babel/eslint-parser": "^7.23.10", + "@rushstack/eslint-patch": "^1.7.2", + "@typescript-eslint/eslint-plugin": "^7.1.1", + "@typescript-eslint/parser": "^7.1.1", + "eslint-config-prettier": "^9.1.0", + "eslint-import-resolver-alias": "^1.1.2", + "eslint-import-resolver-typescript": "^3.6.1", + "eslint-plugin-eslint-comments": "^3.2.0", + "eslint-plugin-import": "^2.29.1", + "eslint-plugin-jest": "^27.9.0", + "eslint-plugin-jsx-a11y": "^6.8.0", + "eslint-plugin-playwright": "^1.5.2", + "eslint-plugin-react": "^7.34.0", + "eslint-plugin-react-hooks": "^4.6.0", + "eslint-plugin-testing-library": "^6.2.0", + "eslint-plugin-tsdoc": "^0.2.17", + "eslint-plugin-unicorn": "^51.0.1", + "eslint-plugin-vitest": "^0.3.22", + "prettier-plugin-packagejson": "^2.4.12" + }, + "engines": { + "node": ">=18.18" + }, + "peerDependencies": { + "@next/eslint-plugin-next": ">=12.3.0 <15.0.0-0", + "eslint": ">=8.48.0 <9", + "prettier": ">=3.0.0 <4", + "typescript": ">=4.8.0 <6" + }, + "peerDependenciesMeta": { + "@next/eslint-plugin-next": { + "optional": true + }, + "eslint": { + "optional": true + }, + "prettier": { + "optional": true + }, + "typescript": { + "optional": true + } + } + }, + "internal/eslint-config/node_modules/eslint-plugin-vitest": { + "version": "0.3.22", + "resolved": "https://registry.npmjs.org/eslint-plugin-vitest/-/eslint-plugin-vitest-0.3.22.tgz", + "integrity": "sha512-atkFGQ7aVgcuSeSMDqnyevIyUpfBPMnosksgEPrKE7Y8xQlqG/5z2IQ6UDau05zXaaFv7Iz8uzqvIuKshjZ0Zw==", + "dev": true, + "dependencies": { + "@typescript-eslint/utils": "^6.21.0" + }, + "engines": { + "node": "^18.0.0 || >= 20.0.0" + }, + "peerDependencies": { + "eslint": ">=8.0.0", + "vitest": "*" + }, + "peerDependenciesMeta": { + "@typescript-eslint/eslint-plugin": { + "optional": true + }, + "vitest": { + "optional": true + } + } + }, "internal/next-common": { "name": "@neshca/next-common", "version": "0.0.0", "license": "MIT", "dependencies": { - "next": "14.1.1-canary.27" + "next": "14.2.0-canary.4" }, "devDependencies": { "@repo/typescript-config": "*", @@ -188,13 +567,22 @@ "typescript": "5.3.3" } }, + "internal/next-common/node_modules/@types/node": { + "version": "20.11.24", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.24.tgz", + "integrity": "sha512-Kza43ewS3xoLgCEpQrsT+xRo/EJej1y0kVYGiLFE1NEODXGzTfwiC6tXTLMQskn1X4/Rjlh0MQUvx9W+L9long==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "internal/next-common/node_modules/next": { - "version": "14.1.1-canary.27", - "resolved": "https://registry.npmjs.org/next/-/next-14.1.1-canary.27.tgz", - "integrity": "sha512-DedZm3VgO4i4Owt6xVeSs6VbwspdxyEXPzCE+gWz7c3QJSBa/0J3hV+uPETeZ2YexdVvWYAj5YxJMNTfLTKTqw==", + "version": "14.2.0-canary.4", + "resolved": "https://registry.npmjs.org/next/-/next-14.2.0-canary.4.tgz", + "integrity": "sha512-CoYamSDqBgsI3vZn/sqWkO37Fk908VNIqrqu+iEqCnFQlaoS/ceY5Ez5RU40zWgk3FRjnQerGyV+MDDIlLjRog==", "dependencies": { - "@next/env": "14.1.1-canary.27", - "@swc/helpers": "0.5.2", + "@next/env": "14.2.0-canary.4", + "@swc/helpers": "0.5.5", "busboy": "1.6.0", "caniuse-lite": "^1.0.30001579", "graceful-fs": "^4.2.11", @@ -208,15 +596,15 @@ "node": ">=18.17.0" }, "optionalDependencies": { - "@next/swc-darwin-arm64": "14.1.1-canary.27", - "@next/swc-darwin-x64": "14.1.1-canary.27", - "@next/swc-linux-arm64-gnu": "14.1.1-canary.27", - "@next/swc-linux-arm64-musl": "14.1.1-canary.27", - "@next/swc-linux-x64-gnu": "14.1.1-canary.27", - "@next/swc-linux-x64-musl": "14.1.1-canary.27", - "@next/swc-win32-arm64-msvc": "14.1.1-canary.27", - "@next/swc-win32-ia32-msvc": "14.1.1-canary.27", - "@next/swc-win32-x64-msvc": "14.1.1-canary.27" + "@next/swc-darwin-arm64": "14.2.0-canary.4", + "@next/swc-darwin-x64": "14.2.0-canary.4", + "@next/swc-linux-arm64-gnu": "14.2.0-canary.4", + "@next/swc-linux-arm64-musl": "14.2.0-canary.4", + "@next/swc-linux-x64-gnu": "14.2.0-canary.4", + "@next/swc-linux-x64-musl": "14.2.0-canary.4", + "@next/swc-win32-arm64-msvc": "14.2.0-canary.4", + "@next/swc-win32-ia32-msvc": "14.2.0-canary.4", + "@next/swc-win32-x64-msvc": "14.2.0-canary.4" }, "peerDependencies": { "@opentelemetry/api": "^1.1.0", @@ -248,6 +636,15 @@ "typescript": "5.3.3" } }, + "internal/next-lru-cache/node_modules/@types/node": { + "version": "20.11.24", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.24.tgz", + "integrity": "sha512-Kza43ewS3xoLgCEpQrsT+xRo/EJej1y0kVYGiLFE1NEODXGzTfwiC6tXTLMQskn1X4/Rjlh0MQUvx9W+L9long==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "internal/prettier-config": { "name": "@repo/prettier-config", "version": "0.0.0", @@ -256,6 +653,92 @@ "@vercel/style-guide": "6.0.0" } }, + "internal/prettier-config/node_modules/@next/eslint-plugin-next": { + "version": "14.1.2", + "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.1.2.tgz", + "integrity": "sha512-k9h9NfR1joJI48uwdQd/DuOV1mBgcjlmWaX45eAXCFGT96oc+/6SMjO3s7naVtTXqSKjFAgk2GDlW6Hv41ROXQ==", + "dev": true, + "optional": true, + "peer": true, + "dependencies": { + "glob": "10.3.10" + } + }, + "internal/prettier-config/node_modules/@vercel/style-guide": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/@vercel/style-guide/-/style-guide-6.0.0.tgz", + "integrity": "sha512-tu0wFINGz91EPwaT5VjSqUwbvCY9pvLach7SPG4XyfJKPU9Vku2TFa6+AyzJ4oroGbo9fK+TQhIFHrnFl0nCdg==", + "dev": true, + "dependencies": { + "@babel/core": "^7.24.0", + "@babel/eslint-parser": "^7.23.10", + "@rushstack/eslint-patch": "^1.7.2", + "@typescript-eslint/eslint-plugin": "^7.1.1", + "@typescript-eslint/parser": "^7.1.1", + "eslint-config-prettier": "^9.1.0", + "eslint-import-resolver-alias": "^1.1.2", + "eslint-import-resolver-typescript": "^3.6.1", + "eslint-plugin-eslint-comments": "^3.2.0", + "eslint-plugin-import": "^2.29.1", + "eslint-plugin-jest": "^27.9.0", + "eslint-plugin-jsx-a11y": "^6.8.0", + "eslint-plugin-playwright": "^1.5.2", + "eslint-plugin-react": "^7.34.0", + "eslint-plugin-react-hooks": "^4.6.0", + "eslint-plugin-testing-library": "^6.2.0", + "eslint-plugin-tsdoc": "^0.2.17", + "eslint-plugin-unicorn": "^51.0.1", + "eslint-plugin-vitest": "^0.3.22", + "prettier-plugin-packagejson": "^2.4.12" + }, + "engines": { + "node": ">=18.18" + }, + "peerDependencies": { + "@next/eslint-plugin-next": ">=12.3.0 <15.0.0-0", + "eslint": ">=8.48.0 <9", + "prettier": ">=3.0.0 <4", + "typescript": ">=4.8.0 <6" + }, + "peerDependenciesMeta": { + "@next/eslint-plugin-next": { + "optional": true + }, + "eslint": { + "optional": true + }, + "prettier": { + "optional": true + }, + "typescript": { + "optional": true + } + } + }, + "internal/prettier-config/node_modules/eslint-plugin-vitest": { + "version": "0.3.22", + "resolved": "https://registry.npmjs.org/eslint-plugin-vitest/-/eslint-plugin-vitest-0.3.22.tgz", + "integrity": "sha512-atkFGQ7aVgcuSeSMDqnyevIyUpfBPMnosksgEPrKE7Y8xQlqG/5z2IQ6UDau05zXaaFv7Iz8uzqvIuKshjZ0Zw==", + "dev": true, + "dependencies": { + "@typescript-eslint/utils": "^6.21.0" + }, + "engines": { + "node": "^18.0.0 || >= 20.0.0" + }, + "peerDependencies": { + "eslint": ">=8.0.0", + "vitest": "*" + }, + "peerDependenciesMeta": { + "@typescript-eslint/eslint-plugin": { + "optional": true + }, + "vitest": { + "optional": true + } + } + }, "internal/typescript-config": { "name": "@repo/typescript-config", "version": "0.0.0", @@ -281,9 +764,9 @@ } }, "node_modules/@actions/http-client": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@actions/http-client/-/http-client-2.2.0.tgz", - "integrity": "sha512-q+epW0trjVUUHboliPb4UF9g2msf+w61b32tAkFEwL/IwP0DQWgbCMM0Hbe3e3WXSKz5VcUXbzJQgy8Hkra/Lg==", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/@actions/http-client/-/http-client-2.2.1.tgz", + "integrity": "sha512-KhC/cZsq7f8I4LfZSJKgCvEwfkE8o1538VoBeoGzokVLLnbFDEAdFD3UhoMklxo2un9NJVBdANOresx7vTHlHw==", "dev": true, "dependencies": { "tunnel": "^0.0.6", @@ -291,13 +774,13 @@ } }, "node_modules/@ampproject/remapping": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.1.tgz", - "integrity": "sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.3.0.tgz", + "integrity": "sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==", "dev": true, "dependencies": { - "@jridgewell/gen-mapping": "^0.3.0", - "@jridgewell/trace-mapping": "^0.3.9" + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.24" }, "engines": { "node": ">=6.0.0" @@ -609,9 +1092,9 @@ } }, "node_modules/@babel/runtime": { - "version": "7.23.9", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.23.9.tgz", - "integrity": "sha512-0CX6F+BI2s9dkUqr08KFrAIZgNFj75rdBU/DjCyYLIaV/quFjkk6T+EJ2LkZHyZTbEV4L5p97mNkUsHl2wLFAw==", + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.24.0.tgz", + "integrity": "sha512-Chk32uHMg6TnQdvw2e9IlqPpFX/6NLuK0Ys2PqLb7/gL5uFn9mXvK715FGLlOLQrcO4qIkNHkvPGktzzXexsFw==", "dependencies": { "regenerator-runtime": "^0.14.0" }, @@ -1549,9 +2032,9 @@ "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==" }, "node_modules/@fastify/busboy": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@fastify/busboy/-/busboy-2.1.0.tgz", - "integrity": "sha512-+KpH+QxZU7O4675t3mnkQKcZZg56u+K/Ct2K+N2AZYNVK8kyeo/bI18tI8aPm3tvNNRyTWfj6s5tnGNlcbQRsA==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/@fastify/busboy/-/busboy-2.1.1.tgz", + "integrity": "sha512-vBZP4NlzfOlerQTnba4aqZoMhE/a9HY7HRqoOPaETQcSQuWEIyZMHGfVu6w9wGtGK5fED5qRs2DteVCjOH60sA==", "dev": true, "engines": { "node": ">=14" @@ -1672,14 +2155,14 @@ } }, "node_modules/@jridgewell/gen-mapping": { - "version": "0.3.4", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.4.tgz", - "integrity": "sha512-Oud2QPM5dHviZNn4y/WhhYKSXksv+1xLEIsNrAbGcFzUN3ubqWRFT5gwPchNc5NuzILOU4tPBDTZ4VwhL8Y7cw==", + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", + "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", "dev": true, "dependencies": { - "@jridgewell/set-array": "^1.0.1", + "@jridgewell/set-array": "^1.2.1", "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" + "@jridgewell/trace-mapping": "^0.3.24" }, "engines": { "node": ">=6.0.0" @@ -1695,9 +2178,9 @@ } }, "node_modules/@jridgewell/set-array": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", - "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", + "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", "dev": true, "engines": { "node": ">=6.0.0" @@ -1710,9 +2193,9 @@ "dev": true }, "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.23", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.23.tgz", - "integrity": "sha512-9/4foRoUKp8s96tSkh8DlAAc5A0Ty8vLXld+l9gjKKY6ckwI8G15f0hskGmuLZu78ZlGa1vtsfOa+lnB4vG6Jg==", + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", "dev": true, "dependencies": { "@jridgewell/resolve-uri": "^3.1.0", @@ -1730,11 +2213,6 @@ "fs-extra": "^8.1.0" } }, - "node_modules/@manypkg/find-root/node_modules/@types/node": { - "version": "12.20.55", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", - "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" - }, "node_modules/@manypkg/find-root/node_modules/fs-extra": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", @@ -2088,25 +2566,23 @@ "link": true }, "node_modules/@next/env": { - "version": "14.1.1-canary.27", - "resolved": "https://registry.npmjs.org/@next/env/-/env-14.1.1-canary.27.tgz", - "integrity": "sha512-v6FRSD3aZ1lf9sLAaGBlvGccffSRx3NhbANdFO2yrj6TVdFkAOvemhwL6GBZ2V+2MlAbTqWtVW7oJie+GgQWoA==" + "version": "14.2.0-canary.4", + "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.0-canary.4.tgz", + "integrity": "sha512-mIJubCPrEQj1b8RKPwmtqjPWWfbOHPkw16todFa/Bd8UwALOrpHZRdE5k6BP+TBGb2wvR0BRUC4jKx2cwgxIyQ==" }, "node_modules/@next/eslint-plugin-next": { - "version": "14.1.2", - "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.1.2.tgz", - "integrity": "sha512-k9h9NfR1joJI48uwdQd/DuOV1mBgcjlmWaX45eAXCFGT96oc+/6SMjO3s7naVtTXqSKjFAgk2GDlW6Hv41ROXQ==", + "version": "14.2.0-canary.4", + "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.2.0-canary.4.tgz", + "integrity": "sha512-8k2ow45Q3wb2gwnjEerEvGINwOFmojBiALnwFQilfeZ4KAhb9M5ir+4ecAK8DLaJi6W14OfzSeSe75OGahOgag==", "dev": true, - "optional": true, - "peer": true, "dependencies": { "glob": "10.3.10" } }, "node_modules/@next/swc-darwin-arm64": { - "version": "14.1.1-canary.27", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.1.1-canary.27.tgz", - "integrity": "sha512-9E38as2/pXDXiNILNESv8jyajghyBzQ4Vki9V2cMD2o48pfC97ZuewCZmV5pYkoAqY9iC2jHsWodyypNwHlS4w==", + "version": "14.2.0-canary.4", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.0-canary.4.tgz", + "integrity": "sha512-XMFVqRX2HXHJz8NBpAcjhU8b3Qb7W0JXEYx92pD4dnne776lILA+CDRH5nyRaUtXIMv7wLETo34tvdVMdzppMw==", "cpu": [ "arm64" ], @@ -2119,9 +2595,9 @@ } }, "node_modules/@next/swc-darwin-x64": { - "version": "14.1.1-canary.27", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.1.1-canary.27.tgz", - "integrity": "sha512-BQ7p8U3N+Zijh5oWfUDKoyTurw38jSUFs38K9vAoE3EZQJB+WFtHkS5X01K50YwacdgryjTlje5Bxf9PrqCvVA==", + "version": "14.2.0-canary.4", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.0-canary.4.tgz", + "integrity": "sha512-js0NKy+hFymtenjytslayKpsYer7gGHfJ2ilydRQbJMl0ptac27A6pQeaQNqhgB9tJnksDUyG4p/Wpdx7RX+bg==", "cpu": [ "x64" ], @@ -2134,9 +2610,9 @@ } }, "node_modules/@next/swc-linux-arm64-gnu": { - "version": "14.1.1-canary.27", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.1.1-canary.27.tgz", - "integrity": "sha512-/kcfFxteFg52mtEbNMt1emKTSJaHx0t2FDCrZNsasrWEbsx3T8d3J3ROUNLRiLpvDCeYaTDZO1PU52TYfj50dA==", + "version": "14.2.0-canary.4", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.0-canary.4.tgz", + "integrity": "sha512-Jr7tcL7GtSN1zegjDF39nidMBG99MRaM/kIJ81Az6lz0rqInVoF7BLItZdX3xRaJbuJqMfyakd7HtR4GXe1tzg==", "cpu": [ "arm64" ], @@ -2149,9 +2625,9 @@ } }, "node_modules/@next/swc-linux-arm64-musl": { - "version": "14.1.1-canary.27", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.1.1-canary.27.tgz", - "integrity": "sha512-Liugqgu29KODzg+GiJLxDyDdT42v4WgzqjOr+Xq3jUv7v28IBfyx1MRPlOrOUFoD2jOr8XHo02JLBlURg/0oLA==", + "version": "14.2.0-canary.4", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.0-canary.4.tgz", + "integrity": "sha512-SavUeVrv9MocMKDaEJaJJEDT0CR/SHIzR7ijxoK8CFHaiLPSi5DU/I3qSme4Ks/ih/vp+SOD0f3mZSztBXCcSw==", "cpu": [ "arm64" ], @@ -2164,9 +2640,9 @@ } }, "node_modules/@next/swc-linux-x64-gnu": { - "version": "14.1.1-canary.27", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.1.1-canary.27.tgz", - "integrity": "sha512-rWEdjhteOKBNN5IgX/xq+nJgUoh1qlZU4IZkM5G1R90f/HzNG/uux7k3GLiunAEx3cBZCKwmHXMwyUd8QY4KcQ==", + "version": "14.2.0-canary.4", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.0-canary.4.tgz", + "integrity": "sha512-2ZpPAwA/Ma8ZVTJEYOMsxY04vvFmTSGjNohSdJt6lke9Vm14aGEhyrQf+FRF3QvTkNHfdrWoMlQdrALfXBmxFA==", "cpu": [ "x64" ], @@ -2179,9 +2655,9 @@ } }, "node_modules/@next/swc-linux-x64-musl": { - "version": "14.1.1-canary.27", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.1.1-canary.27.tgz", - "integrity": "sha512-oXrh9UxTEoZI0kuiGcs2XHuI8VSdipBnIvZAAiOokY+GCkv163DgQh2IpKM/RlPso++m2a8Ch671pSWN8Zd4Iw==", + "version": "14.2.0-canary.4", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.0-canary.4.tgz", + "integrity": "sha512-LUeuGZtC93va/H8wNNGgZlXxZ8M9lzkKbmnL2k7h9wAPTFRgrUtFHOXu7ksm7qOSTtaP2xqa/WNlSkVQ9Vm7mQ==", "cpu": [ "x64" ], @@ -2194,9 +2670,9 @@ } }, "node_modules/@next/swc-win32-arm64-msvc": { - "version": "14.1.1-canary.27", - "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.1.1-canary.27.tgz", - "integrity": "sha512-fQsn+Y66UpFeppIe6TDMjM9BfMUM8h7WKh+gA/zCKBBpWv6BEo0QZTOHtoVbwYlb3VwDQi9T8yT8Ad3dl7TP2g==", + "version": "14.2.0-canary.4", + "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.0-canary.4.tgz", + "integrity": "sha512-0tFdt2b4pOF8ZqhF3OMrxfDqIhkUC+4m/bDVbymYwVUrYm25H/eyXvQYHsTUDWly58X1L7cm6PvkLgq0oZHFAQ==", "cpu": [ "arm64" ], @@ -2209,9 +2685,9 @@ } }, "node_modules/@next/swc-win32-ia32-msvc": { - "version": "14.1.1-canary.27", - "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.1.1-canary.27.tgz", - "integrity": "sha512-iLdMJG8hzJ2+a+YTalqqhjl0vuX+VC9SBJMs0nPth3XiKvhmwWtwOqQU7PiK1Ea8OgIvJvF+o1GAq+P/SeC5jA==", + "version": "14.2.0-canary.4", + "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.0-canary.4.tgz", + "integrity": "sha512-wHZGmaA2aZTZ3ljq05P/bQuJ5ppfuhACbd7njPGEZyheD0RkUXNH4qsOHlri6DcHe8Ug3FR2E9rc3T3ApyvqMg==", "cpu": [ "ia32" ], @@ -2224,9 +2700,9 @@ } }, "node_modules/@next/swc-win32-x64-msvc": { - "version": "14.1.1-canary.27", - "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.1.1-canary.27.tgz", - "integrity": "sha512-EpIJEBSWVig3E82wnNkaLgwkw6HkZ4+x6x5YB2wurHQZJt9+jFLFJex3wt7rO9XJI8R5sn+kVHwF2g25BJUihQ==", + "version": "14.2.0-canary.4", + "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.0-canary.4.tgz", + "integrity": "sha512-eWa4zsBEnsZ4miKmqbCuRBcq1pcruS/UmYp/qo3WyGaE6IH/NfJgx9pgkQGdv5QPMImxlocaMf98sLMQYKgL2w==", "cpu": [ "x64" ], @@ -2732,9 +3208,9 @@ "link": true }, "node_modules/@rollup/rollup-android-arm-eabi": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.12.0.tgz", - "integrity": "sha512-+ac02NL/2TCKRrJu2wffk1kZ+RyqxVUlbjSagNgPm94frxtr+XDL12E5Ll1enWskLrtrZ2r8L3wED1orIibV/w==", + "version": "4.12.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.12.1.tgz", + "integrity": "sha512-iU2Sya8hNn1LhsYyf0N+L4Gf9Qc+9eBTJJJsaOGUp+7x4n2M9dxTt8UvhJl3oeftSjblSlpCfvjA/IfP3g5VjQ==", "cpu": [ "arm" ], @@ -2745,9 +3221,9 @@ ] }, "node_modules/@rollup/rollup-android-arm64": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.12.0.tgz", - "integrity": "sha512-OBqcX2BMe6nvjQ0Nyp7cC90cnumt8PXmO7Dp3gfAju/6YwG0Tj74z1vKrfRz7qAv23nBcYM8BCbhrsWqO7PzQQ==", + "version": "4.12.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.12.1.tgz", + "integrity": "sha512-wlzcWiH2Ir7rdMELxFE5vuM7D6TsOcJ2Yw0c3vaBR3VOsJFVTx9xvwnAvhgU5Ii8Gd6+I11qNHwndDscIm0HXg==", "cpu": [ "arm64" ], @@ -2758,9 +3234,9 @@ ] }, "node_modules/@rollup/rollup-darwin-arm64": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.12.0.tgz", - "integrity": "sha512-X64tZd8dRE/QTrBIEs63kaOBG0b5GVEd3ccoLtyf6IdXtHdh8h+I56C2yC3PtC9Ucnv0CpNFJLqKFVgCYe0lOQ==", + "version": "4.12.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.12.1.tgz", + "integrity": "sha512-YRXa1+aZIFN5BaImK+84B3uNK8C6+ynKLPgvn29X9s0LTVCByp54TB7tdSMHDR7GTV39bz1lOmlLDuedgTwwHg==", "cpu": [ "arm64" ], @@ -2771,9 +3247,9 @@ ] }, "node_modules/@rollup/rollup-darwin-x64": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.12.0.tgz", - "integrity": "sha512-cc71KUZoVbUJmGP2cOuiZ9HSOP14AzBAThn3OU+9LcA1+IUqswJyR1cAJj3Mg55HbjZP6OLAIscbQsQLrpgTOg==", + "version": "4.12.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.12.1.tgz", + "integrity": "sha512-opjWJ4MevxeA8FhlngQWPBOvVWYNPFkq6/25rGgG+KOy0r8clYwL1CFd+PGwRqqMFVQ4/Qd3sQu5t7ucP7C/Uw==", "cpu": [ "x64" ], @@ -2784,9 +3260,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm-gnueabihf": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.12.0.tgz", - "integrity": "sha512-a6w/Y3hyyO6GlpKL2xJ4IOh/7d+APaqLYdMf86xnczU3nurFTaVN9s9jOXQg97BE4nYm/7Ga51rjec5nfRdrvA==", + "version": "4.12.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.12.1.tgz", + "integrity": "sha512-uBkwaI+gBUlIe+EfbNnY5xNyXuhZbDSx2nzzW8tRMjUmpScd6lCQYKY2V9BATHtv5Ef2OBq6SChEP8h+/cxifQ==", "cpu": [ "arm" ], @@ -2797,9 +3273,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-gnu": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.12.0.tgz", - "integrity": "sha512-0fZBq27b+D7Ar5CQMofVN8sggOVhEtzFUwOwPppQt0k+VR+7UHMZZY4y+64WJ06XOhBTKXtQB/Sv0NwQMXyNAA==", + "version": "4.12.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.12.1.tgz", + "integrity": "sha512-0bK9aG1kIg0Su7OcFTlexkVeNZ5IzEsnz1ept87a0TUgZ6HplSgkJAnFpEVRW7GRcikT4GlPV0pbtVedOaXHQQ==", "cpu": [ "arm64" ], @@ -2810,9 +3286,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-musl": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.12.0.tgz", - "integrity": "sha512-eTvzUS3hhhlgeAv6bfigekzWZjaEX9xP9HhxB0Dvrdbkk5w/b+1Sxct2ZuDxNJKzsRStSq1EaEkVSEe7A7ipgQ==", + "version": "4.12.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.12.1.tgz", + "integrity": "sha512-qB6AFRXuP8bdkBI4D7UPUbE7OQf7u5OL+R94JE42Z2Qjmyj74FtDdLGeriRyBDhm4rQSvqAGCGC01b8Fu2LthQ==", "cpu": [ "arm64" ], @@ -2823,9 +3299,9 @@ ] }, "node_modules/@rollup/rollup-linux-riscv64-gnu": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.12.0.tgz", - "integrity": "sha512-ix+qAB9qmrCRiaO71VFfY8rkiAZJL8zQRXveS27HS+pKdjwUfEhqo2+YF2oI+H/22Xsiski+qqwIBxVewLK7sw==", + "version": "4.12.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.12.1.tgz", + "integrity": "sha512-sHig3LaGlpNgDj5o8uPEoGs98RII8HpNIqFtAI8/pYABO8i0nb1QzT0JDoXF/pxzqO+FkxvwkHZo9k0NJYDedg==", "cpu": [ "riscv64" ], @@ -2836,9 +3312,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-gnu": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.12.0.tgz", - "integrity": "sha512-TenQhZVOtw/3qKOPa7d+QgkeM6xY0LtwzR8OplmyL5LrgTWIXpTQg2Q2ycBf8jm+SFW2Wt/DTn1gf7nFp3ssVA==", + "version": "4.12.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.12.1.tgz", + "integrity": "sha512-nD3YcUv6jBJbBNFvSbp0IV66+ba/1teuBcu+fBBPZ33sidxitc6ErhON3JNavaH8HlswhWMC3s5rgZpM4MtPqQ==", "cpu": [ "x64" ], @@ -2849,9 +3325,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-musl": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.12.0.tgz", - "integrity": "sha512-LfFdRhNnW0zdMvdCb5FNuWlls2WbbSridJvxOvYWgSBOYZtgBfW9UGNJG//rwMqTX1xQE9BAodvMH9tAusKDUw==", + "version": "4.12.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.12.1.tgz", + "integrity": "sha512-7/XVZqgBby2qp/cO0TQ8uJK+9xnSdJ9ct6gSDdEr4MfABrjTyrW6Bau7HQ73a2a5tPB7hno49A0y1jhWGDN9OQ==", "cpu": [ "x64" ], @@ -2862,9 +3338,9 @@ ] }, "node_modules/@rollup/rollup-win32-arm64-msvc": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.12.0.tgz", - "integrity": "sha512-JPDxovheWNp6d7AHCgsUlkuCKvtu3RB55iNEkaQcf0ttsDU/JZF+iQnYcQJSk/7PtT4mjjVG8N1kpwnI9SLYaw==", + "version": "4.12.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.12.1.tgz", + "integrity": "sha512-CYc64bnICG42UPL7TrhIwsJW4QcKkIt9gGlj21gq3VV0LL6XNb1yAdHVp1pIi9gkts9gGcT3OfUYHjGP7ETAiw==", "cpu": [ "arm64" ], @@ -2875,9 +3351,9 @@ ] }, "node_modules/@rollup/rollup-win32-ia32-msvc": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.12.0.tgz", - "integrity": "sha512-fjtuvMWRGJn1oZacG8IPnzIV6GF2/XG+h71FKn76OYFqySXInJtseAqdprVTDTyqPxQOG9Exak5/E9Z3+EJ8ZA==", + "version": "4.12.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.12.1.tgz", + "integrity": "sha512-LN+vnlZ9g0qlHGlS920GR4zFCqAwbv2lULrR29yGaWP9u7wF5L7GqWu9Ah6/kFZPXPUkpdZwd//TNR+9XC9hvA==", "cpu": [ "ia32" ], @@ -2888,9 +3364,9 @@ ] }, "node_modules/@rollup/rollup-win32-x64-msvc": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.12.0.tgz", - "integrity": "sha512-ZYmr5mS2wd4Dew/JjT0Fqi2NPB/ZhZ2VvPp7SmvPZb4Y1CG/LRcS6tcRo2cYU7zLK5A7cdbhWnnWmUjoI4qapg==", + "version": "4.12.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.12.1.tgz", + "integrity": "sha512-n+vkrSyphvmU0qkQ6QBNXCGr2mKjhP08mPRM/Xp5Ck2FV4NrHU+y6axzDeixUrCBHVUS51TZhjqrKBBsHLKb2Q==", "cpu": [ "x64" ], @@ -2906,20 +3382,26 @@ "integrity": "sha512-RbhOOTCNoCrbfkRyoXODZp75MlpiHMgbE5MEBZAnnnLyQNgrigEj4p0lzsMDyc1zVsJDLrivB58tgg3emX0eEA==", "dev": true }, + "node_modules/@swc/counter": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@swc/counter/-/counter-0.1.3.tgz", + "integrity": "sha512-e2BR4lsJkkRlKZ/qCHPw9ZaSxc0MVUd7gtbtaB7aMvHeJVYe8sOB8DBZkP2DtISHGSku9sCK6T6cnY0CtXrOCQ==" + }, "node_modules/@swc/helpers": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.2.tgz", - "integrity": "sha512-E4KcWTpoLHqwPHLxidpOqQbcrZVgi0rsmmZXUle1jXmJfuIf/UWpczUJ7MZZ5tlxytgJXyp0w4PGkkeLiuIdZw==", + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.5.tgz", + "integrity": "sha512-KGYxvIOXcceOAbEk4bi/dVLEK9z8sZ0uBB3Il5b1rhfClSpcX0yfRO0KmTkqR2cnQDymwLB+25ZyMzICg/cm/A==", "dependencies": { + "@swc/counter": "^0.1.3", "tslib": "^2.4.0" } }, "node_modules/@tanstack/react-virtual": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/@tanstack/react-virtual/-/react-virtual-3.1.2.tgz", - "integrity": "sha512-qibmxtctgOZo2I+3Rw5GR9kXgaa15U5r3/idDY1ItUKW15UK7GhCfyIfE6qYuJ1fxQF6dJDsD8SbpPyuJgpxuA==", + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/@tanstack/react-virtual/-/react-virtual-3.1.3.tgz", + "integrity": "sha512-YCzcbF/Ws/uZ0q3Z6fagH+JVhx4JLvbSflgldMgLsuvB8aXjZLLb3HvrEVxY480F9wFlBiXlvQxOyXb5ENPrNA==", "dependencies": { - "@tanstack/virtual-core": "3.1.2" + "@tanstack/virtual-core": "3.1.3" }, "funding": { "type": "github", @@ -2931,9 +3413,9 @@ } }, "node_modules/@tanstack/virtual-core": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/@tanstack/virtual-core/-/virtual-core-3.1.2.tgz", - "integrity": "sha512-DATZJs8iejkIUqXZe6ruDAnjFo78BKnIIgqQZrc7CmEFqfLEN/TPD91n4hRfo6hpRB6xC00bwKxv7vdjFNEmOg==", + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/@tanstack/virtual-core/-/virtual-core-3.1.3.tgz", + "integrity": "sha512-Y5B4EYyv1j9V8LzeAoOVeTg0LI7Fo5InYKgAjkY1Pu9GjtUwX/EKxNcU7ng3sKr99WEf+bPTcktAeybyMOYo+g==", "funding": { "type": "github", "url": "https://github.com/sponsors/tannerlinsley" @@ -3077,12 +3559,9 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "20.11.24", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.24.tgz", - "integrity": "sha512-Kza43ewS3xoLgCEpQrsT+xRo/EJej1y0kVYGiLFE1NEODXGzTfwiC6tXTLMQskn1X4/Rjlh0MQUvx9W+L9long==", - "dependencies": { - "undici-types": "~5.26.4" - } + "version": "12.20.55", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", + "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" }, "node_modules/@types/node-fetch": { "version": "2.6.11", @@ -3111,137 +3590,48 @@ "dependencies": { "@types/prop-types": "*", "@types/scheduler": "*", - "csstype": "^3.0.2" - } - }, - "node_modules/@types/react-dom": { - "version": "18.2.20", - "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.2.20.tgz", - "integrity": "sha512-HXN/biJY8nv20Cn9ZbCFq3liERd4CozVZmKbaiZ9KiKTrWqsP7eoGDO6OOGvJQwoVFuiXaiJ7nBBjiFFbRmQMQ==", - "dev": true, - "dependencies": { - "@types/react": "*" - } - }, - "node_modules/@types/scheduler": { - "version": "0.16.8", - "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.8.tgz", - "integrity": "sha512-WZLiwShhwLRmeV6zH+GkbOFT6Z6VklCItrDioxUnv+u4Ll+8vKeFySoFyK/0ctcRpOmwAicELfmys1sDc/Rw+A==" - }, - "node_modules/@types/semver": { - "version": "7.5.8", - "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.8.tgz", - "integrity": "sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==" - }, - "node_modules/@types/unist": { - "version": "2.0.10", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz", - "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" - }, - "node_modules/@typescript-eslint/eslint-plugin": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.1.1.tgz", - "integrity": "sha512-zioDz623d0RHNhvx0eesUmGfIjzrk18nSBC8xewepKXbBvN/7c1qImV7Hg8TI1URTxKax7/zxfxj3Uph8Chcuw==", - "dev": true, - "dependencies": { - "@eslint-community/regexpp": "^4.5.1", - "@typescript-eslint/scope-manager": "7.1.1", - "@typescript-eslint/type-utils": "7.1.1", - "@typescript-eslint/utils": "7.1.1", - "@typescript-eslint/visitor-keys": "7.1.1", - "debug": "^4.3.4", - "graphemer": "^1.4.0", - "ignore": "^5.2.4", - "natural-compare": "^1.4.0", - "semver": "^7.5.4", - "ts-api-utils": "^1.0.1" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "@typescript-eslint/parser": "^7.0.0", - "eslint": "^8.56.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/scope-manager": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-7.1.1.tgz", - "integrity": "sha512-cirZpA8bJMRb4WZ+rO6+mnOJrGFDd38WoXCEI57+CYBqta8Yc8aJym2i7vyqLL1vVYljgw0X27axkUXz32T8TA==", - "dev": true, - "dependencies": { - "@typescript-eslint/types": "7.1.1", - "@typescript-eslint/visitor-keys": "7.1.1" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/type-utils": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-7.1.1.tgz", - "integrity": "sha512-5r4RKze6XHEEhlZnJtR3GYeCh1IueUHdbrukV2KSlLXaTjuSfeVF8mZUVPLovidCuZfbVjfhi4c0DNSa/Rdg5g==", - "dev": true, - "dependencies": { - "@typescript-eslint/typescript-estree": "7.1.1", - "@typescript-eslint/utils": "7.1.1", - "debug": "^4.3.4", - "ts-api-utils": "^1.0.1" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^8.56.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } + "csstype": "^3.0.2" } }, - "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/types": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.1.1.tgz", - "integrity": "sha512-KhewzrlRMrgeKm1U9bh2z5aoL4s7K3tK5DwHDn8MHv0yQfWFz/0ZR6trrIHHa5CsF83j/GgHqzdbzCXJ3crx0Q==", + "node_modules/@types/react-dom": { + "version": "18.2.20", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.2.20.tgz", + "integrity": "sha512-HXN/biJY8nv20Cn9ZbCFq3liERd4CozVZmKbaiZ9KiKTrWqsP7eoGDO6OOGvJQwoVFuiXaiJ7nBBjiFFbRmQMQ==", "dev": true, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" + "dependencies": { + "@types/react": "*" } }, - "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/typescript-estree": { + "node_modules/@types/scheduler": { + "version": "0.16.8", + "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.8.tgz", + "integrity": "sha512-WZLiwShhwLRmeV6zH+GkbOFT6Z6VklCItrDioxUnv+u4Ll+8vKeFySoFyK/0ctcRpOmwAicELfmys1sDc/Rw+A==" + }, + "node_modules/@types/semver": { + "version": "7.5.8", + "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.8.tgz", + "integrity": "sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==" + }, + "node_modules/@types/unist": { + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz", + "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" + }, + "node_modules/@typescript-eslint/eslint-plugin": { "version": "7.1.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-7.1.1.tgz", - "integrity": "sha512-9ZOncVSfr+sMXVxxca2OJOPagRwT0u/UHikM2Rd6L/aB+kL/QAuTnsv6MeXtjzCJYb8PzrXarypSGIPx3Jemxw==", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.1.1.tgz", + "integrity": "sha512-zioDz623d0RHNhvx0eesUmGfIjzrk18nSBC8xewepKXbBvN/7c1qImV7Hg8TI1URTxKax7/zxfxj3Uph8Chcuw==", "dev": true, "dependencies": { - "@typescript-eslint/types": "7.1.1", + "@eslint-community/regexpp": "^4.5.1", + "@typescript-eslint/scope-manager": "7.1.1", + "@typescript-eslint/type-utils": "7.1.1", + "@typescript-eslint/utils": "7.1.1", "@typescript-eslint/visitor-keys": "7.1.1", "debug": "^4.3.4", - "globby": "^11.1.0", - "is-glob": "^4.0.3", - "minimatch": "9.0.3", + "graphemer": "^1.4.0", + "ignore": "^5.2.4", + "natural-compare": "^1.4.0", "semver": "^7.5.4", "ts-api-utils": "^1.0.1" }, @@ -3252,6 +3642,10 @@ "type": "opencollective", "url": "https://opencollective.com/typescript-eslint" }, + "peerDependencies": { + "@typescript-eslint/parser": "^7.0.0", + "eslint": "^8.56.0" + }, "peerDependenciesMeta": { "typescript": { "optional": true @@ -3283,14 +3677,17 @@ "eslint": "^8.56.0" } }, - "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/visitor-keys": { + "node_modules/@typescript-eslint/parser": { "version": "7.1.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-7.1.1.tgz", - "integrity": "sha512-yTdHDQxY7cSoCcAtiBzVzxleJhkGB9NncSIyMYe2+OGON1ZsP9zOPws/Pqgopa65jvknOjlk/w7ulPlZ78PiLQ==", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-7.1.1.tgz", + "integrity": "sha512-ZWUFyL0z04R1nAEgr9e79YtV5LbafdOtN7yapNbn1ansMyaegl2D4bL7vHoJ4HPSc4CaLwuCVas8CVuneKzplQ==", "dev": true, "dependencies": { + "@typescript-eslint/scope-manager": "7.1.1", "@typescript-eslint/types": "7.1.1", - "eslint-visitor-keys": "^3.4.1" + "@typescript-eslint/typescript-estree": "7.1.1", + "@typescript-eslint/visitor-keys": "7.1.1", + "debug": "^4.3.4" }, "engines": { "node": "^16.0.0 || >=18.0.0" @@ -3298,43 +3695,43 @@ "funding": { "type": "opencollective", "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.56.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, - "node_modules/@typescript-eslint/eslint-plugin/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/@typescript-eslint/eslint-plugin/node_modules/minimatch": { - "version": "9.0.3", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", - "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", + "node_modules/@typescript-eslint/scope-manager": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-7.1.1.tgz", + "integrity": "sha512-cirZpA8bJMRb4WZ+rO6+mnOJrGFDd38WoXCEI57+CYBqta8Yc8aJym2i7vyqLL1vVYljgw0X27axkUXz32T8TA==", "dev": true, "dependencies": { - "brace-expansion": "^2.0.1" + "@typescript-eslint/types": "7.1.1", + "@typescript-eslint/visitor-keys": "7.1.1" }, "engines": { - "node": ">=16 || 14 >=14.17" + "node": "^16.0.0 || >=18.0.0" }, "funding": { - "url": "https://github.com/sponsors/isaacs" + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" } }, - "node_modules/@typescript-eslint/parser": { + "node_modules/@typescript-eslint/type-utils": { "version": "7.1.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-7.1.1.tgz", - "integrity": "sha512-ZWUFyL0z04R1nAEgr9e79YtV5LbafdOtN7yapNbn1ansMyaegl2D4bL7vHoJ4HPSc4CaLwuCVas8CVuneKzplQ==", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-7.1.1.tgz", + "integrity": "sha512-5r4RKze6XHEEhlZnJtR3GYeCh1IueUHdbrukV2KSlLXaTjuSfeVF8mZUVPLovidCuZfbVjfhi4c0DNSa/Rdg5g==", "dev": true, "dependencies": { - "@typescript-eslint/scope-manager": "7.1.1", - "@typescript-eslint/types": "7.1.1", "@typescript-eslint/typescript-estree": "7.1.1", - "@typescript-eslint/visitor-keys": "7.1.1", - "debug": "^4.3.4" + "@typescript-eslint/utils": "7.1.1", + "debug": "^4.3.4", + "ts-api-utils": "^1.0.1" }, "engines": { "node": "^16.0.0 || >=18.0.0" @@ -3352,14 +3749,19 @@ } } }, - "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/scope-manager": { + "node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/utils": { "version": "7.1.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-7.1.1.tgz", - "integrity": "sha512-cirZpA8bJMRb4WZ+rO6+mnOJrGFDd38WoXCEI57+CYBqta8Yc8aJym2i7vyqLL1vVYljgw0X27axkUXz32T8TA==", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-7.1.1.tgz", + "integrity": "sha512-thOXM89xA03xAE0lW7alstvnyoBUbBX38YtY+zAUcpRPcq9EIhXPuJ0YTv948MbzmKh6e1AUszn5cBFK49Umqg==", "dev": true, "dependencies": { + "@eslint-community/eslint-utils": "^4.4.0", + "@types/json-schema": "^7.0.12", + "@types/semver": "^7.5.0", + "@typescript-eslint/scope-manager": "7.1.1", "@typescript-eslint/types": "7.1.1", - "@typescript-eslint/visitor-keys": "7.1.1" + "@typescript-eslint/typescript-estree": "7.1.1", + "semver": "^7.5.4" }, "engines": { "node": "^16.0.0 || >=18.0.0" @@ -3367,9 +3769,12 @@ "funding": { "type": "opencollective", "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.56.0" } }, - "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/types": { + "node_modules/@typescript-eslint/types": { "version": "7.1.1", "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.1.1.tgz", "integrity": "sha512-KhewzrlRMrgeKm1U9bh2z5aoL4s7K3tK5DwHDn8MHv0yQfWFz/0ZR6trrIHHa5CsF83j/GgHqzdbzCXJ3crx0Q==", @@ -3382,7 +3787,7 @@ "url": "https://opencollective.com/typescript-eslint" } }, - "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/typescript-estree": { + "node_modules/@typescript-eslint/typescript-estree": { "version": "7.1.1", "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-7.1.1.tgz", "integrity": "sha512-9ZOncVSfr+sMXVxxca2OJOPagRwT0u/UHikM2Rd6L/aB+kL/QAuTnsv6MeXtjzCJYb8PzrXarypSGIPx3Jemxw==", @@ -3410,24 +3815,7 @@ } } }, - "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/visitor-keys": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-7.1.1.tgz", - "integrity": "sha512-yTdHDQxY7cSoCcAtiBzVzxleJhkGB9NncSIyMYe2+OGON1ZsP9zOPws/Pqgopa65jvknOjlk/w7ulPlZ78PiLQ==", - "dev": true, - "dependencies": { - "@typescript-eslint/types": "7.1.1", - "eslint-visitor-keys": "^3.4.1" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/parser/node_modules/brace-expansion": { + "node_modules/@typescript-eslint/typescript-estree/node_modules/brace-expansion": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", @@ -3436,7 +3824,7 @@ "balanced-match": "^1.0.0" } }, - "node_modules/@typescript-eslint/parser/node_modules/minimatch": { + "node_modules/@typescript-eslint/typescript-estree/node_modules/minimatch": { "version": "9.0.3", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", @@ -3451,7 +3839,32 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/@typescript-eslint/scope-manager": { + "node_modules/@typescript-eslint/utils": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.21.0.tgz", + "integrity": "sha512-NfWVaC8HP9T8cbKQxHcsJBY5YE1O33+jpMwN45qzWWaPDZgLIbo12toGMWnmhvCpd3sIxkpDw3Wv1B3dYrbDQQ==", + "dev": true, + "dependencies": { + "@eslint-community/eslint-utils": "^4.4.0", + "@types/json-schema": "^7.0.12", + "@types/semver": "^7.5.0", + "@typescript-eslint/scope-manager": "6.21.0", + "@typescript-eslint/types": "6.21.0", + "@typescript-eslint/typescript-estree": "6.21.0", + "semver": "^7.5.4" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^7.0.0 || ^8.0.0" + } + }, + "node_modules/@typescript-eslint/utils/node_modules/@typescript-eslint/scope-manager": { "version": "6.21.0", "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.21.0.tgz", "integrity": "sha512-OwLUIWZJry80O99zvqXVEioyniJMa+d2GrqpUTqi5/v5D5rOrppJVBPa0yKCblcigC0/aYAzxxqQ1B+DS2RYsg==", @@ -3468,7 +3881,7 @@ "url": "https://opencollective.com/typescript-eslint" } }, - "node_modules/@typescript-eslint/types": { + "node_modules/@typescript-eslint/utils/node_modules/@typescript-eslint/types": { "version": "6.21.0", "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.21.0.tgz", "integrity": "sha512-1kFmZ1rOm5epu9NZEZm1kckCDGj5UJEf7P1kliH4LKu/RkwpsfqqGmY2OOcUs18lSlQBKLDYBOGxRVtrMN5lpg==", @@ -3481,7 +3894,7 @@ "url": "https://opencollective.com/typescript-eslint" } }, - "node_modules/@typescript-eslint/typescript-estree": { + "node_modules/@typescript-eslint/utils/node_modules/@typescript-eslint/typescript-estree": { "version": "6.21.0", "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.21.0.tgz", "integrity": "sha512-6npJTkZcO+y2/kr+z0hc4HwNfrrP4kNYh57ek7yCNlrBjWQ1Y0OS7jiZTkgumrvkX5HkEKXFZkkdFNkaW2wmUQ==", @@ -3509,7 +3922,24 @@ } } }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/brace-expansion": { + "node_modules/@typescript-eslint/utils/node_modules/@typescript-eslint/visitor-keys": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.21.0.tgz", + "integrity": "sha512-JJtkDduxLi9bivAB+cYOVMtbkqdPOhZ+ZI5LC47MIRrDV4Yn2o+ZnW10Nkmr28xRpSpdJ6Sm42Hjf2+REYXm0A==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "6.21.0", + "eslint-visitor-keys": "^3.4.1" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/utils/node_modules/brace-expansion": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", @@ -3518,7 +3948,7 @@ "balanced-match": "^1.0.0" } }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/minimatch": { + "node_modules/@typescript-eslint/utils/node_modules/minimatch": { "version": "9.0.3", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", @@ -3533,104 +3963,28 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/@typescript-eslint/utils": { - "version": "6.21.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.21.0.tgz", - "integrity": "sha512-NfWVaC8HP9T8cbKQxHcsJBY5YE1O33+jpMwN45qzWWaPDZgLIbo12toGMWnmhvCpd3sIxkpDw3Wv1B3dYrbDQQ==", - "dev": true, - "dependencies": { - "@eslint-community/eslint-utils": "^4.4.0", - "@types/json-schema": "^7.0.12", - "@types/semver": "^7.5.0", - "@typescript-eslint/scope-manager": "6.21.0", - "@typescript-eslint/types": "6.21.0", - "@typescript-eslint/typescript-estree": "6.21.0", - "semver": "^7.5.4" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^7.0.0 || ^8.0.0" - } - }, "node_modules/@typescript-eslint/visitor-keys": { - "version": "6.21.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.21.0.tgz", - "integrity": "sha512-JJtkDduxLi9bivAB+cYOVMtbkqdPOhZ+ZI5LC47MIRrDV4Yn2o+ZnW10Nkmr28xRpSpdJ6Sm42Hjf2+REYXm0A==", - "dev": true, - "dependencies": { - "@typescript-eslint/types": "6.21.0", - "eslint-visitor-keys": "^3.4.1" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@ungap/structured-clone": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz", - "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==" - }, - "node_modules/@vercel/style-guide": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/@vercel/style-guide/-/style-guide-6.0.0.tgz", - "integrity": "sha512-tu0wFINGz91EPwaT5VjSqUwbvCY9pvLach7SPG4XyfJKPU9Vku2TFa6+AyzJ4oroGbo9fK+TQhIFHrnFl0nCdg==", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-7.1.1.tgz", + "integrity": "sha512-yTdHDQxY7cSoCcAtiBzVzxleJhkGB9NncSIyMYe2+OGON1ZsP9zOPws/Pqgopa65jvknOjlk/w7ulPlZ78PiLQ==", "dev": true, "dependencies": { - "@babel/core": "^7.24.0", - "@babel/eslint-parser": "^7.23.10", - "@rushstack/eslint-patch": "^1.7.2", - "@typescript-eslint/eslint-plugin": "^7.1.1", - "@typescript-eslint/parser": "^7.1.1", - "eslint-config-prettier": "^9.1.0", - "eslint-import-resolver-alias": "^1.1.2", - "eslint-import-resolver-typescript": "^3.6.1", - "eslint-plugin-eslint-comments": "^3.2.0", - "eslint-plugin-import": "^2.29.1", - "eslint-plugin-jest": "^27.9.0", - "eslint-plugin-jsx-a11y": "^6.8.0", - "eslint-plugin-playwright": "^1.5.2", - "eslint-plugin-react": "^7.34.0", - "eslint-plugin-react-hooks": "^4.6.0", - "eslint-plugin-testing-library": "^6.2.0", - "eslint-plugin-tsdoc": "^0.2.17", - "eslint-plugin-unicorn": "^51.0.1", - "eslint-plugin-vitest": "^0.3.22", - "prettier-plugin-packagejson": "^2.4.12" + "@typescript-eslint/types": "7.1.1", + "eslint-visitor-keys": "^3.4.1" }, "engines": { - "node": ">=18.18" - }, - "peerDependencies": { - "@next/eslint-plugin-next": ">=12.3.0 <15.0.0-0", - "eslint": ">=8.48.0 <9", - "prettier": ">=3.0.0 <4", - "typescript": ">=4.8.0 <6" + "node": "^16.0.0 || >=18.0.0" }, - "peerDependenciesMeta": { - "@next/eslint-plugin-next": { - "optional": true - }, - "eslint": { - "optional": true - }, - "prettier": { - "optional": true - }, - "typescript": { - "optional": true - } + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" } }, + "node_modules/@ungap/structured-clone": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz", + "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==" + }, "node_modules/abort-controller": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz", @@ -4108,8 +4462,7 @@ "node_modules/asynckit": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", - "peer": true + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" }, "node_modules/atomic-sleep": { "version": "1.0.0", @@ -4153,6 +4506,17 @@ "node": ">=4" } }, + "node_modules/axios": { + "version": "1.6.7", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.6.7.tgz", + "integrity": "sha512-/hDJGff6/c7u0hDkvkGxR/oy6CbCs8ziCsC7SqmhjfozqiJGc8Z11wrv9z9lYfY4K8l+H9TpjcMDX0xOZmx+RA==", + "dev": true, + "dependencies": { + "follow-redirects": "^1.15.4", + "form-data": "^4.0.0", + "proxy-from-env": "^1.1.0" + } + }, "node_modules/axobject-query": { "version": "3.2.1", "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-3.2.1.tgz", @@ -4207,9 +4571,9 @@ ] }, "node_modules/basic-ftp": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/basic-ftp/-/basic-ftp-5.0.4.tgz", - "integrity": "sha512-8PzkB0arJFV4jJWSGOYR+OEic6aeKMu/osRhBULN6RY0ykby6LKhbmuQ5ublvaas5BOwboah5D87nrHyuh8PPA==", + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/basic-ftp/-/basic-ftp-5.0.5.tgz", + "integrity": "sha512-4Bcg1P8xhUuqcii/S0Z9wiHIrQVPMermM1any+MX5GeGD7faD3/msQUDGLol9wOcz4/jbg/WJnGqoJF6LiBdtg==", "dev": true, "engines": { "node": ">=10.0.0" @@ -4450,9 +4814,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001589", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001589.tgz", - "integrity": "sha512-vNQWS6kI+q6sBlHbh71IIeC+sRwK2N3EDySc/updIGhIee2x5z00J4c1242/5/d6EpEMdOnk/m+6tuk4/tcsqg==", + "version": "1.0.30001594", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001594.tgz", + "integrity": "sha512-VblSX6nYqyJVs8DKFMldE2IVCJjZ225LW00ydtUWwh5hk9IfkTOffO6r8gJNsH0qqqeAF8KrbMYA2VEwTlGW5g==", "funding": [ { "type": "opencollective", @@ -4845,7 +5209,6 @@ "version": "1.0.8", "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", - "peer": true, "dependencies": { "delayed-stream": "~1.0.0" }, @@ -5614,7 +5977,6 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", - "peer": true, "engines": { "node": ">=0.4.0" } @@ -5751,9 +6113,9 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.681", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.681.tgz", - "integrity": "sha512-1PpuqJUFWoXZ1E54m8bsLPVYwIVCRzvaL+n5cjigGga4z854abDnFRc+cTa2th4S79kyGqya/1xoR7h+Y5G5lg==", + "version": "1.4.693", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.693.tgz", + "integrity": "sha512-/if4Ueg0GUQlhCrW2ZlXwDAm40ipuKo+OgeHInlL8sbjt+hzISxZK949fZeJaVsheamrzANXvw1zQTvbxTvSHw==", "dev": true }, "node_modules/elkjs": { @@ -5786,9 +6148,9 @@ } }, "node_modules/enhanced-resolve": { - "version": "5.15.0", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.15.0.tgz", - "integrity": "sha512-LXYT42KJ7lpIKECr2mAXIaMldcNCh/7E0KBKOu4KSfkHmP+mZmSs+8V5gBAqisWBy0OO4W5Oyys0GO1Y8KtdKg==", + "version": "5.15.1", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.15.1.tgz", + "integrity": "sha512-3d3JRbwsCLJsYgvb6NuWEG44jjPSOMuS73L/6+7BZuoKm3W+qXnSoIYVHi8dG7Qcg4inAY4jbzkZ7MnskePeDg==", "dev": true, "dependencies": { "graceful-fs": "^4.2.4", @@ -5830,17 +6192,17 @@ } }, "node_modules/es-abstract": { - "version": "1.22.4", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.22.4.tgz", - "integrity": "sha512-vZYJlk2u6qHYxBOTjAeg7qUxHdNfih64Uu2J8QqWgXZ2cri0ZpJAkzDUK/q593+mvKwlxyaxr6F1Q+3LKoQRgg==", + "version": "1.22.5", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.22.5.tgz", + "integrity": "sha512-oW69R+4q2wG+Hc3KZePPZxOiisRIqfKBVo/HLx94QcJeWGU/8sZhCvc829rd1kS366vlJbzBfXf9yWwf0+Ko7w==", "dependencies": { "array-buffer-byte-length": "^1.0.1", "arraybuffer.prototype.slice": "^1.0.3", - "available-typed-arrays": "^1.0.6", + "available-typed-arrays": "^1.0.7", "call-bind": "^1.0.7", "es-define-property": "^1.0.0", "es-errors": "^1.3.0", - "es-set-tostringtag": "^2.0.2", + "es-set-tostringtag": "^2.0.3", "es-to-primitive": "^1.2.1", "function.prototype.name": "^1.1.6", "get-intrinsic": "^1.2.4", @@ -5848,15 +6210,15 @@ "globalthis": "^1.0.3", "gopd": "^1.0.1", "has-property-descriptors": "^1.0.2", - "has-proto": "^1.0.1", + "has-proto": "^1.0.3", "has-symbols": "^1.0.3", "hasown": "^2.0.1", "internal-slot": "^1.0.7", "is-array-buffer": "^3.0.4", "is-callable": "^1.2.7", - "is-negative-zero": "^2.0.2", + "is-negative-zero": "^2.0.3", "is-regex": "^1.1.4", - "is-shared-array-buffer": "^1.0.2", + "is-shared-array-buffer": "^1.0.3", "is-string": "^1.0.7", "is-typed-array": "^1.1.13", "is-weakref": "^1.0.2", @@ -5869,10 +6231,10 @@ "string.prototype.trim": "^1.2.8", "string.prototype.trimend": "^1.0.7", "string.prototype.trimstart": "^1.0.7", - "typed-array-buffer": "^1.0.1", - "typed-array-byte-length": "^1.0.0", - "typed-array-byte-offset": "^1.0.0", - "typed-array-length": "^1.0.4", + "typed-array-buffer": "^1.0.2", + "typed-array-byte-length": "^1.0.1", + "typed-array-byte-offset": "^1.0.2", + "typed-array-length": "^1.0.5", "unbox-primitive": "^1.0.2", "which-typed-array": "^1.1.14" }, @@ -6196,9 +6558,9 @@ } }, "node_modules/eslint-module-utils": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.8.0.tgz", - "integrity": "sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw==", + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.8.1.tgz", + "integrity": "sha512-rXDXR3h7cs7dy9RNpUlQf80nX31XWJEyGq1tRMo+6GsO5VmTe4UTwtmonAD4ZkAsrfMVDA2wlGJ3790Ys+D49Q==", "dev": true, "dependencies": { "debug": "^3.2.7" @@ -6828,30 +7190,6 @@ "node": ">=6" } }, - "node_modules/eslint-plugin-vitest": { - "version": "0.3.22", - "resolved": "https://registry.npmjs.org/eslint-plugin-vitest/-/eslint-plugin-vitest-0.3.22.tgz", - "integrity": "sha512-atkFGQ7aVgcuSeSMDqnyevIyUpfBPMnosksgEPrKE7Y8xQlqG/5z2IQ6UDau05zXaaFv7Iz8uzqvIuKshjZ0Zw==", - "dev": true, - "dependencies": { - "@typescript-eslint/utils": "^6.21.0" - }, - "engines": { - "node": "^18.0.0 || >= 20.0.0" - }, - "peerDependencies": { - "eslint": ">=8.0.0", - "vitest": "*" - }, - "peerDependenciesMeta": { - "@typescript-eslint/eslint-plugin": { - "optional": true - }, - "vitest": { - "optional": true - } - } - }, "node_modules/eslint-scope": { "version": "7.2.2", "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", @@ -7688,7 +8026,6 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", - "peer": true, "dependencies": { "asynckit": "^0.4.0", "combined-stream": "^1.0.8", @@ -10375,9 +10712,9 @@ } }, "node_modules/mermaid": { - "version": "10.8.0", - "resolved": "https://registry.npmjs.org/mermaid/-/mermaid-10.8.0.tgz", - "integrity": "sha512-9CzfSreRjdDJxX796+jW4zjEq0DVw5xVF0nWsqff8OTbrt+ml0TZ5PyYUjjUZJa2NYxYJZZXewEquxGiM8qZEA==", + "version": "10.9.0", + "resolved": "https://registry.npmjs.org/mermaid/-/mermaid-10.9.0.tgz", + "integrity": "sha512-swZju0hFox/B/qoLKK0rOxxgh8Cf7rJSfAUc1u8fezVihYMvrJAS45GzAxTVf4Q+xn9uMgitBcmWk7nWGXOs/g==", "dependencies": { "@braintree/sanitize-url": "^6.0.1", "@types/d3-scale": "^4.0.3", @@ -10390,6 +10727,7 @@ "dayjs": "^1.11.7", "dompurify": "^3.0.5", "elkjs": "^0.9.0", + "katex": "^0.16.9", "khroma": "^2.0.0", "lodash-es": "^4.17.21", "mdast-util-from-markdown": "^1.3.0", @@ -11180,7 +11518,6 @@ "version": "1.52.0", "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", - "peer": true, "engines": { "node": ">= 0.6" } @@ -11189,7 +11526,6 @@ "version": "2.1.35", "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "peer": true, "dependencies": { "mime-db": "1.52.0" }, @@ -11372,11 +11708,12 @@ } }, "node_modules/next": { - "version": "14.1.0", - "resolved": "https://registry.npmjs.org/next/-/next-14.1.0.tgz", - "integrity": "sha512-wlzrsbfeSU48YQBjZhDzOwhWhGsy+uQycR8bHAOt1LY1bn3zZEcDyHQOEoN3aWzQ8LHCAJ1nqrWCc9XF2+O45Q==", + "version": "14.1.2", + "resolved": "https://registry.npmjs.org/next/-/next-14.1.2.tgz", + "integrity": "sha512-p4RfNmopqkzRP1uUyBJnHii+qMg71f2udWhTTZopBB8b3T5QXNzn7yO+LCYHPWZG2kAvEn4l4neyJHqkXvo2wg==", + "peer": true, "dependencies": { - "@next/env": "14.1.0", + "@next/env": "14.1.2", "@swc/helpers": "0.5.2", "busboy": "1.6.0", "caniuse-lite": "^1.0.30001579", @@ -11391,15 +11728,15 @@ "node": ">=18.17.0" }, "optionalDependencies": { - "@next/swc-darwin-arm64": "14.1.0", - "@next/swc-darwin-x64": "14.1.0", - "@next/swc-linux-arm64-gnu": "14.1.0", - "@next/swc-linux-arm64-musl": "14.1.0", - "@next/swc-linux-x64-gnu": "14.1.0", - "@next/swc-linux-x64-musl": "14.1.0", - "@next/swc-win32-arm64-msvc": "14.1.0", - "@next/swc-win32-ia32-msvc": "14.1.0", - "@next/swc-win32-x64-msvc": "14.1.0" + "@next/swc-darwin-arm64": "14.1.2", + "@next/swc-darwin-x64": "14.1.2", + "@next/swc-linux-arm64-gnu": "14.1.2", + "@next/swc-linux-arm64-musl": "14.1.2", + "@next/swc-linux-x64-gnu": "14.1.2", + "@next/swc-linux-x64-musl": "14.1.2", + "@next/swc-win32-arm64-msvc": "14.1.2", + "@next/swc-win32-ia32-msvc": "14.1.2", + "@next/swc-win32-x64-msvc": "14.1.2" }, "peerDependencies": { "@opentelemetry/api": "^1.1.0", @@ -11456,14 +11793,15 @@ } }, "node_modules/next/node_modules/@next/env": { - "version": "14.1.0", - "resolved": "https://registry.npmjs.org/@next/env/-/env-14.1.0.tgz", - "integrity": "sha512-Py8zIo+02ht82brwwhTg36iogzFqGLPXlRGKQw5s+qP/kMNc4MAyDeEwBKDijk6zTIbegEgu8Qy7C1LboslQAw==" + "version": "14.1.2", + "resolved": "https://registry.npmjs.org/@next/env/-/env-14.1.2.tgz", + "integrity": "sha512-U0iEG+JF86j6qyu330sfPgsMmDVH8vWVmzZadl+an5EU3o5HqdNytOpM+HsFpl58PmhGBTKx3UmM9c+eoLK0mA==", + "peer": true }, "node_modules/next/node_modules/@next/swc-darwin-arm64": { - "version": "14.1.0", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.1.0.tgz", - "integrity": "sha512-nUDn7TOGcIeyQni6lZHfzNoo9S0euXnu0jhsbMOmMJUBfgsnESdjN97kM7cBqQxZa8L/bM9om/S5/1dzCrW6wQ==", + "version": "14.1.2", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.1.2.tgz", + "integrity": "sha512-E4/clgk0ZrYMo9eMRwP/4IO/cvXF1yEYSnGcdGfH+NYTR8bNFy76TSlc1Vb2rK3oaQY4BVHRpx8f/sMN/D5gNw==", "cpu": [ "arm64" ], @@ -11471,14 +11809,15 @@ "os": [ "darwin" ], + "peer": true, "engines": { "node": ">= 10" } }, "node_modules/next/node_modules/@next/swc-darwin-x64": { - "version": "14.1.0", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.1.0.tgz", - "integrity": "sha512-1jgudN5haWxiAl3O1ljUS2GfupPmcftu2RYJqZiMJmmbBT5M1XDffjUtRUzP4W3cBHsrvkfOFdQ71hAreNQP6g==", + "version": "14.1.2", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.1.2.tgz", + "integrity": "sha512-j8mEOI+ZM0tU9B/L/OGa6F7d9FXYMkog5OWWuhTWzz3iZ91UKIGGpD/ojTNKuejainDMgbqOBTNnLg0jZywM/g==", "cpu": [ "x64" ], @@ -11486,14 +11825,15 @@ "os": [ "darwin" ], + "peer": true, "engines": { "node": ">= 10" } }, "node_modules/next/node_modules/@next/swc-linux-arm64-gnu": { - "version": "14.1.0", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.1.0.tgz", - "integrity": "sha512-RHo7Tcj+jllXUbK7xk2NyIDod3YcCPDZxj1WLIYxd709BQ7WuRYl3OWUNG+WUfqeQBds6kvZYlc42NJJTNi4tQ==", + "version": "14.1.2", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.1.2.tgz", + "integrity": "sha512-qpRrd5hl6BFTWiFLgHtJmqqQGRMs+ol0MN9pEp0SYoLs3j8OTErPiDMhbKWjMWHGdc2E3kg4RRBV3cSTZiePiQ==", "cpu": [ "arm64" ], @@ -11501,14 +11841,15 @@ "os": [ "linux" ], + "peer": true, "engines": { "node": ">= 10" } }, "node_modules/next/node_modules/@next/swc-linux-arm64-musl": { - "version": "14.1.0", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.1.0.tgz", - "integrity": "sha512-v6kP8sHYxjO8RwHmWMJSq7VZP2nYCkRVQ0qolh2l6xroe9QjbgV8siTbduED4u0hlk0+tjS6/Tuy4n5XCp+l6g==", + "version": "14.1.2", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.1.2.tgz", + "integrity": "sha512-HAhvVXAv+wnbj0wztT0YnpgJVoHtw1Mv4Y1R/JJcg5yXSU8FsP2uEGUwjQaqPoD76YSZjuKl32YbJlmPgQbLFw==", "cpu": [ "arm64" ], @@ -11516,14 +11857,15 @@ "os": [ "linux" ], + "peer": true, "engines": { "node": ">= 10" } }, "node_modules/next/node_modules/@next/swc-linux-x64-gnu": { - "version": "14.1.0", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.1.0.tgz", - "integrity": "sha512-zJ2pnoFYB1F4vmEVlb/eSe+VH679zT1VdXlZKX+pE66grOgjmKJHKacf82g/sWE4MQ4Rk2FMBCRnX+l6/TVYzQ==", + "version": "14.1.2", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.1.2.tgz", + "integrity": "sha512-PCWC312woXLWOXiedi1E+fEw6B/ECP1fMiK1nSoGS2E43o56Z8kq4WeJLbJoufFQGVj5ZOKU3jIVyV//3CI4wQ==", "cpu": [ "x64" ], @@ -11531,14 +11873,15 @@ "os": [ "linux" ], + "peer": true, "engines": { "node": ">= 10" } }, "node_modules/next/node_modules/@next/swc-linux-x64-musl": { - "version": "14.1.0", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.1.0.tgz", - "integrity": "sha512-rbaIYFt2X9YZBSbH/CwGAjbBG2/MrACCVu2X0+kSykHzHnYH5FjHxwXLkcoJ10cX0aWCEynpu+rP76x0914atg==", + "version": "14.1.2", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.1.2.tgz", + "integrity": "sha512-KQSKzdWPNrYZjeTPCsepEpagOzU8Nf3Zzu53X1cLsSY6QlOIkYcSgEihRjsMKyeQW4aSvc+nN5pIpC2pLWNSMA==", "cpu": [ "x64" ], @@ -11546,14 +11889,15 @@ "os": [ "linux" ], + "peer": true, "engines": { "node": ">= 10" } }, "node_modules/next/node_modules/@next/swc-win32-arm64-msvc": { - "version": "14.1.0", - "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.1.0.tgz", - "integrity": "sha512-o1N5TsYc8f/HpGt39OUQpQ9AKIGApd3QLueu7hXk//2xq5Z9OxmV6sQfNp8C7qYmiOlHYODOGqNNa0e9jvchGQ==", + "version": "14.1.2", + "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.1.2.tgz", + "integrity": "sha512-3b0PouKd09Ulm2T1tjaRnwQj9+UwSsMO680d/sD4XAlm29KkNmVLAEIwWTfb3L+E11Qyw+jdcN3HtbDCg5+vYA==", "cpu": [ "arm64" ], @@ -11561,14 +11905,15 @@ "os": [ "win32" ], + "peer": true, "engines": { "node": ">= 10" } }, "node_modules/next/node_modules/@next/swc-win32-ia32-msvc": { - "version": "14.1.0", - "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.1.0.tgz", - "integrity": "sha512-XXIuB1DBRCFwNO6EEzCTMHT5pauwaSj4SWs7CYnME57eaReAKBXCnkUE80p/pAZcewm7hs+vGvNqDPacEXHVkw==", + "version": "14.1.2", + "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.1.2.tgz", + "integrity": "sha512-CC1gaJY4h+wg6d5r2biggGM6nCFXh/6WEim2VOQI0WrA6easCQi2P2hzWyrU6moQ0g1GOiWzesGc6nn0a92Kgg==", "cpu": [ "ia32" ], @@ -11576,14 +11921,15 @@ "os": [ "win32" ], + "peer": true, "engines": { "node": ">= 10" } }, "node_modules/next/node_modules/@next/swc-win32-x64-msvc": { - "version": "14.1.0", - "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.1.0.tgz", - "integrity": "sha512-9WEbVRRAqJ3YFVqEZIxUqkiO8l1nool1LmNxygr5HWF8AcSYsEpneUDhmjUVJEzO2A04+oPtZdombzzPPkTtgg==", + "version": "14.1.2", + "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.1.2.tgz", + "integrity": "sha512-pfASwanOd+yP3D80O63DuQffrBySZPuB7wRN0IGSRq/0rDm9p/MvvnLzzgP2kSiLOUklOrFYVax7P6AEzjGykQ==", "cpu": [ "x64" ], @@ -11591,89 +11937,18 @@ "os": [ "win32" ], + "peer": true, "engines": { "node": ">= 10" } }, - "node_modules/nextra": { - "version": "2.13.4", - "resolved": "https://registry.npmjs.org/nextra/-/nextra-2.13.4.tgz", - "integrity": "sha512-7of2rSBxuUa3+lbMmZwG9cqgftcoNOVQLTT6Rxf3EhBR9t1EI7b43dted8YoqSNaigdE3j1CoyNkX8N/ZzlEpw==", - "dependencies": { - "@headlessui/react": "^1.7.17", - "@mdx-js/mdx": "^2.3.0", - "@mdx-js/react": "^2.3.0", - "@napi-rs/simple-git": "^0.1.9", - "@theguild/remark-mermaid": "^0.0.5", - "@theguild/remark-npm2yarn": "^0.2.0", - "clsx": "^2.0.0", - "github-slugger": "^2.0.0", - "graceful-fs": "^4.2.11", - "gray-matter": "^4.0.3", - "katex": "^0.16.9", - "lodash.get": "^4.4.2", - "next-mdx-remote": "^4.2.1", - "p-limit": "^3.1.0", - "rehype-katex": "^7.0.0", - "rehype-pretty-code": "0.9.11", - "rehype-raw": "^7.0.0", - "remark-gfm": "^3.0.1", - "remark-math": "^5.1.1", - "remark-reading-time": "^2.0.1", - "shiki": "^0.14.3", - "slash": "^3.0.0", - "title": "^3.5.3", - "unist-util-remove": "^4.0.0", - "unist-util-visit": "^5.0.0", - "zod": "^3.22.3" - }, - "engines": { - "node": ">=16" - }, - "peerDependencies": { - "next": ">=9.5.3", - "react": ">=16.13.1", - "react-dom": ">=16.13.1" - } - }, - "node_modules/nextra-theme-docs": { - "version": "2.13.4", - "resolved": "https://registry.npmjs.org/nextra-theme-docs/-/nextra-theme-docs-2.13.4.tgz", - "integrity": "sha512-2XOoMfwBCTYBt8ds4ZHftt9Wyf2XsykiNo02eir/XEYB+sGeUoE77kzqfidjEOKCSzOHYbK9BDMcg2+B/2vYRw==", - "dependencies": { - "@headlessui/react": "^1.7.17", - "@popperjs/core": "^2.11.8", - "clsx": "^2.0.0", - "escape-string-regexp": "^5.0.0", - "flexsearch": "^0.7.31", - "focus-visible": "^5.2.0", - "git-url-parse": "^13.1.0", - "intersection-observer": "^0.12.2", - "match-sorter": "^6.3.1", - "next-seo": "^6.0.0", - "next-themes": "^0.2.1", - "scroll-into-view-if-needed": "^3.1.0", - "zod": "^3.22.3" - }, - "peerDependencies": { - "next": ">=9.5.3", - "nextra": "2.13.4", - "react": ">=16.13.1", - "react-dom": ">=16.13.1" - } - }, - "node_modules/nextra/node_modules/p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "node_modules/next/node_modules/@swc/helpers": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.2.tgz", + "integrity": "sha512-E4KcWTpoLHqwPHLxidpOqQbcrZVgi0rsmmZXUle1jXmJfuIf/UWpczUJ7MZZ5tlxytgJXyp0w4PGkkeLiuIdZw==", + "peer": true, "dependencies": { - "yocto-queue": "^0.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "tslib": "^2.4.0" } }, "node_modules/node-domexception": { @@ -11952,9 +12227,9 @@ } }, "node_modules/openai": { - "version": "4.28.0", - "resolved": "https://registry.npmjs.org/openai/-/openai-4.28.0.tgz", - "integrity": "sha512-JM8fhcpmpGN0vrUwGquYIzdcEQHtFuom6sRCbbCM6CfzZXNuRk33G7KfeRAIfnaCxSpzrP5iHtwJzIm6biUZ2Q==", + "version": "4.28.4", + "resolved": "https://registry.npmjs.org/openai/-/openai-4.28.4.tgz", + "integrity": "sha512-RNIwx4MT/F0zyizGcwS+bXKLzJ8QE9IOyigDG/ttnwB220d58bYjYFp0qjvGwEFBO6+pvFVIDABZPGDl46RFsg==", "peer": true, "dependencies": { "@types/node": "^18.11.18", @@ -11972,9 +12247,9 @@ } }, "node_modules/openai/node_modules/@types/node": { - "version": "18.19.18", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.18.tgz", - "integrity": "sha512-80CP7B8y4PzZF0GWx15/gVWRrB5y/bIjNI84NK3cmQJu0WZwvmj2WMA5LcofQFVfLqqCSp545+U2LsrVzX36Zg==", + "version": "18.19.21", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.21.tgz", + "integrity": "sha512-2Q2NeB6BmiTFQi4DHBzncSoq/cJMLDdhPaAoJFnFCyD9a8VPZRf7a1GAwp1Edb7ROaZc5Jz/tnZyL6EsWMRaqw==", "peer": true, "dependencies": { "undici-types": "~5.26.4" @@ -13607,9 +13882,9 @@ "integrity": "sha512-IXgzBWvWQwE6PrDI05OvmXUIruQTcoMDzRsOd5CDvHCVLcLHMTSYvOK5Cm46kWqlV3yAbuSpBZdJ5oP5OUoStg==" }, "node_modules/rollup": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.12.0.tgz", - "integrity": "sha512-wz66wn4t1OHIJw3+XU7mJJQV/2NAfw5OAk6G6Hoo3zcvz/XOfQ52Vgi+AN4Uxoxi0KBBwk2g8zPrTDA4btSB/Q==", + "version": "4.12.1", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.12.1.tgz", + "integrity": "sha512-ggqQKvx/PsB0FaWXhIvVkSWh7a/PCLQAsMjBc+nA2M8Rv2/HG0X6zvixAB7KyZBRtifBUhy5k8voQX/mRnABPg==", "dev": true, "dependencies": { "@types/estree": "1.0.5" @@ -13622,19 +13897,19 @@ "npm": ">=8.0.0" }, "optionalDependencies": { - "@rollup/rollup-android-arm-eabi": "4.12.0", - "@rollup/rollup-android-arm64": "4.12.0", - "@rollup/rollup-darwin-arm64": "4.12.0", - "@rollup/rollup-darwin-x64": "4.12.0", - "@rollup/rollup-linux-arm-gnueabihf": "4.12.0", - "@rollup/rollup-linux-arm64-gnu": "4.12.0", - "@rollup/rollup-linux-arm64-musl": "4.12.0", - "@rollup/rollup-linux-riscv64-gnu": "4.12.0", - "@rollup/rollup-linux-x64-gnu": "4.12.0", - "@rollup/rollup-linux-x64-musl": "4.12.0", - "@rollup/rollup-win32-arm64-msvc": "4.12.0", - "@rollup/rollup-win32-ia32-msvc": "4.12.0", - "@rollup/rollup-win32-x64-msvc": "4.12.0", + "@rollup/rollup-android-arm-eabi": "4.12.1", + "@rollup/rollup-android-arm64": "4.12.1", + "@rollup/rollup-darwin-arm64": "4.12.1", + "@rollup/rollup-darwin-x64": "4.12.1", + "@rollup/rollup-linux-arm-gnueabihf": "4.12.1", + "@rollup/rollup-linux-arm64-gnu": "4.12.1", + "@rollup/rollup-linux-arm64-musl": "4.12.1", + "@rollup/rollup-linux-riscv64-gnu": "4.12.1", + "@rollup/rollup-linux-x64-gnu": "4.12.1", + "@rollup/rollup-linux-x64-musl": "4.12.1", + "@rollup/rollup-win32-arm64-msvc": "4.12.1", + "@rollup/rollup-win32-ia32-msvc": "4.12.1", + "@rollup/rollup-win32-x64-msvc": "4.12.1", "fsevents": "~2.3.2" } }, @@ -13912,11 +14187,11 @@ "dev": true }, "node_modules/side-channel": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.5.tgz", - "integrity": "sha512-QcgiIWV4WV7qWExbN5llt6frQB/lBven9pqliLXfGPB+K9ZYXxDozp0wLkHS24kWCm+6YXH/f0HhnObZnZOBnQ==", + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.6.tgz", + "integrity": "sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==", "dependencies": { - "call-bind": "^1.0.6", + "call-bind": "^1.0.7", "es-errors": "^1.3.0", "get-intrinsic": "^1.2.4", "object-inspect": "^1.13.1" @@ -16401,9 +16676,9 @@ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" }, "node_modules/yaml": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.4.0.tgz", - "integrity": "sha512-j9iR8g+/t0lArF4V6NE/QCfT+CO7iLqrXAHZbJdo+LfjqP1vR8Fg5bSiaq6Q2lOD1AUEVrEVIgABvBFYojJVYQ==", + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.4.1.tgz", + "integrity": "sha512-pIXzoImaqmfOrL7teGUBt/T7ZDnyeGBWyXQBvOVhLkWLN37GXv8NMLK406UY6dS51JfcQHsmcW5cJ441bHg6Lg==", "dev": true, "bin": { "yaml": "bin.mjs" @@ -16551,6 +16826,15 @@ "redis": ">=4.6" } }, + "packages/cache-handler/node_modules/@types/node": { + "version": "20.11.24", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.24.tgz", + "integrity": "sha512-Kza43ewS3xoLgCEpQrsT+xRo/EJej1y0kVYGiLFE1NEODXGzTfwiC6tXTLMQskn1X4/Rjlh0MQUvx9W+L9long==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "packages/diffscribe": { "version": "0.2.3", "license": "MIT", @@ -16569,6 +16853,15 @@ "openai": "^4.12.3" } }, + "packages/diffscribe/node_modules/@types/node": { + "version": "20.11.24", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.24.tgz", + "integrity": "sha512-Kza43ewS3xoLgCEpQrsT+xRo/EJej1y0kVYGiLFE1NEODXGzTfwiC6tXTLMQskn1X4/Rjlh0MQUvx9W+L9long==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "packages/json-replacer-reviver": { "name": "@neshca/json-replacer-reviver", "version": "1.1.2", @@ -16582,6 +16875,15 @@ "typescript": "5.3.3" } }, + "packages/json-replacer-reviver/node_modules/@types/node": { + "version": "20.11.24", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.24.tgz", + "integrity": "sha512-Kza43ewS3xoLgCEpQrsT+xRo/EJej1y0kVYGiLFE1NEODXGzTfwiC6tXTLMQskn1X4/Rjlh0MQUvx9W+L9long==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "packages/server": { "name": "@neshca/server", "version": "1.0.0", @@ -16603,6 +16905,15 @@ "tsx": "4.7.1", "typescript": "5.3.3" } + }, + "packages/server/node_modules/@types/node": { + "version": "20.11.24", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.24.tgz", + "integrity": "sha512-Kza43ewS3xoLgCEpQrsT+xRo/EJej1y0kVYGiLFE1NEODXGzTfwiC6tXTLMQskn1X4/Rjlh0MQUvx9W+L9long==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } } } } diff --git a/packages/cache-handler/README.md b/packages/cache-handler/README.md index 151a980d..9a50d942 100644 --- a/packages/cache-handler/README.md +++ b/packages/cache-handler/README.md @@ -27,7 +27,7 @@ Welcome to `@neshca/cache-handler`, a specialized ISR/Data cache API crafted for ### Next.js Routers support - Full support for Pages Router. -- Almost full support for App Router. The only exception is the `revalidatePath` function. +- Almost full support for App Router. The only exceptions are the [`unstable_cache`](https://github.com/caching-tools/next-shared-cache/issues/391) and the [`revalidatePath`](https://github.com/caching-tools/next-shared-cache/issues/382) functions. ### The importance of shared cache in distributed environments From e90a84109df95fa6bee657ddc59c6d6aa06b7def Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Thu, 7 Mar 2024 14:08:48 +0300 Subject: [PATCH 147/458] Version Packages (#396) Co-authored-by: github-actions[bot] --- .changeset/chilled-boats-bathe.md | 5 ----- packages/cache-handler/CHANGELOG.md | 6 ++++++ packages/cache-handler/package.json | 2 +- 3 files changed, 7 insertions(+), 6 deletions(-) delete mode 100644 .changeset/chilled-boats-bathe.md diff --git a/.changeset/chilled-boats-bathe.md b/.changeset/chilled-boats-bathe.md deleted file mode 100644 index 7ca52a6d..00000000 --- a/.changeset/chilled-boats-bathe.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@neshca/cache-handler': patch ---- - -Add tests for `unstable_cache` diff --git a/packages/cache-handler/CHANGELOG.md b/packages/cache-handler/CHANGELOG.md index 39472ec7..95b81710 100644 --- a/packages/cache-handler/CHANGELOG.md +++ b/packages/cache-handler/CHANGELOG.md @@ -1,5 +1,11 @@ # @neshca/cache-handler +## 1.0.6 + +### Patch Changes + +- c8cc0af: Add tests for `unstable_cache` + ## 1.0.5 ### Patch Changes diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 5f64fce1..d3598772 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -1,6 +1,6 @@ { "name": "@neshca/cache-handler", - "version": "1.0.5", + "version": "1.0.6", "description": "Next.js self-hosting simplified.", "keywords": [ "cache", From d343446d98bcc79d247fbf9be1cb802ec1b4e6b1 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 7 Mar 2024 14:56:54 +0300 Subject: [PATCH 148/458] Bump the definitely-typed group with 3 updates (#397) Bumps the definitely-typed group with 3 updates: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node), [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) and [@types/react-dom](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react-dom). Updates `@types/node` from 20.11.24 to 20.11.25 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) Updates `@types/react` from 18.2.63 to 18.2.64 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react) Updates `@types/react-dom` from 18.2.20 to 18.2.21 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react-dom) --- updated-dependencies: - dependency-name: "@types/node" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed - dependency-name: "@types/react" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed - dependency-name: "@types/react-dom" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 6 +- docs/cache-handler-docs/package.json | 6 +- internal/backend/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 135 +++++--------------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 10 files changed, 44 insertions(+), 117 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 337c7a40..4f3a10fc 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -28,9 +28,9 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.5", - "@types/node": "20.11.24", - "@types/react": "18.2.63", - "@types/react-dom": "18.2.20", + "@types/node": "20.11.25", + "@types/react": "18.2.64", + "@types/react-dom": "18.2.21", "axios": "1.6.7", "dotenv-cli": "7.3.0", "eslint": "8.57.0", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 1cc0f05f..df09c1d5 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -22,9 +22,9 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.5", - "@types/node": "20.11.24", - "@types/react": "18.2.63", - "@types/react-dom": "18.2.20", + "@types/node": "20.11.25", + "@types/react": "18.2.64", + "@types/react-dom": "18.2.21", "eslint": "8.57.0", "typescript": "5.3.3" } diff --git a/internal/backend/package.json b/internal/backend/package.json index f45a3d03..db826fb9 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.24", + "@types/node": "20.11.25", "pino-pretty": "10.3.1", "rimraf": "5.0.5", "tsx": "4.7.1", diff --git a/internal/next-common/package.json b/internal/next-common/package.json index 859562f2..16efb6d0 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.24", + "@types/node": "20.11.25", "rimraf": "5.0.5", "typescript": "5.3.3" } diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index e15d8a9b..1dc2e47b 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -16,7 +16,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.24", + "@types/node": "20.11.25", "rimraf": "5.0.5", "typescript": "5.3.3" } diff --git a/package-lock.json b/package-lock.json index 0d90eb99..98344865 100644 --- a/package-lock.json +++ b/package-lock.json @@ -48,9 +48,9 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.5", - "@types/node": "20.11.24", - "@types/react": "18.2.63", - "@types/react-dom": "18.2.20", + "@types/node": "20.11.25", + "@types/react": "18.2.64", + "@types/react-dom": "18.2.21", "axios": "1.6.7", "dotenv-cli": "7.3.0", "eslint": "8.57.0", @@ -62,15 +62,6 @@ "typescript": "5.3.3" } }, - "apps/cache-testing/node_modules/@types/node": { - "version": "20.11.24", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.24.tgz", - "integrity": "sha512-Kza43ewS3xoLgCEpQrsT+xRo/EJej1y0kVYGiLFE1NEODXGzTfwiC6tXTLMQskn1X4/Rjlh0MQUvx9W+L9long==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "apps/cache-testing/node_modules/next": { "version": "14.2.0-canary.4", "resolved": "https://registry.npmjs.org/next/-/next-14.2.0-canary.4.tgz", @@ -130,9 +121,9 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.5", - "@types/node": "20.11.24", - "@types/react": "18.2.63", - "@types/react-dom": "18.2.20", + "@types/node": "20.11.25", + "@types/react": "18.2.64", + "@types/react-dom": "18.2.21", "eslint": "8.57.0", "typescript": "5.3.3" } @@ -294,15 +285,6 @@ "tslib": "^2.4.0" } }, - "docs/cache-handler-docs/node_modules/@types/node": { - "version": "20.11.24", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.24.tgz", - "integrity": "sha512-Kza43ewS3xoLgCEpQrsT+xRo/EJej1y0kVYGiLFE1NEODXGzTfwiC6tXTLMQskn1X4/Rjlh0MQUvx9W+L9long==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "docs/cache-handler-docs/node_modules/next": { "version": "14.1.0", "resolved": "https://registry.npmjs.org/next/-/next-14.1.0.tgz", @@ -438,22 +420,13 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.24", + "@types/node": "20.11.25", "pino-pretty": "10.3.1", "rimraf": "5.0.5", "tsx": "4.7.1", "typescript": "5.3.3" } }, - "internal/backend/node_modules/@types/node": { - "version": "20.11.24", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.24.tgz", - "integrity": "sha512-Kza43ewS3xoLgCEpQrsT+xRo/EJej1y0kVYGiLFE1NEODXGzTfwiC6tXTLMQskn1X4/Rjlh0MQUvx9W+L9long==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "internal/eslint-config": { "name": "@repo/eslint-config", "version": "0.0.0", @@ -562,20 +535,11 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.24", + "@types/node": "20.11.25", "rimraf": "5.0.5", "typescript": "5.3.3" } }, - "internal/next-common/node_modules/@types/node": { - "version": "20.11.24", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.24.tgz", - "integrity": "sha512-Kza43ewS3xoLgCEpQrsT+xRo/EJej1y0kVYGiLFE1NEODXGzTfwiC6tXTLMQskn1X4/Rjlh0MQUvx9W+L9long==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "internal/next-common/node_modules/next": { "version": "14.2.0-canary.4", "resolved": "https://registry.npmjs.org/next/-/next-14.2.0-canary.4.tgz", @@ -631,20 +595,11 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.24", + "@types/node": "20.11.25", "rimraf": "5.0.5", "typescript": "5.3.3" } }, - "internal/next-lru-cache/node_modules/@types/node": { - "version": "20.11.24", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.24.tgz", - "integrity": "sha512-Kza43ewS3xoLgCEpQrsT+xRo/EJej1y0kVYGiLFE1NEODXGzTfwiC6tXTLMQskn1X4/Rjlh0MQUvx9W+L9long==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "internal/prettier-config": { "name": "@repo/prettier-config", "version": "0.0.0", @@ -2213,6 +2168,11 @@ "fs-extra": "^8.1.0" } }, + "node_modules/@manypkg/find-root/node_modules/@types/node": { + "version": "12.20.55", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", + "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" + }, "node_modules/@manypkg/find-root/node_modules/fs-extra": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", @@ -3559,9 +3519,12 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "12.20.55", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", - "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" + "version": "20.11.25", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.25.tgz", + "integrity": "sha512-TBHyJxk2b7HceLVGFcpAUjsa5zIdsPWlR6XHfyGzd0SFu+/NFgQgMAl96MSDZgQDvJAvV6BKsFOrt6zIL09JDw==", + "dependencies": { + "undici-types": "~5.26.4" + } }, "node_modules/@types/node-fetch": { "version": "2.6.11", @@ -3584,9 +3547,9 @@ "integrity": "sha512-ga8y9v9uyeiLdpKddhxYQkxNDrfvuPrlFb0N1qnZZByvcElJaXthF1UhvCh9TLWJBEHeNtdnbysW7Y6Uq8CVng==" }, "node_modules/@types/react": { - "version": "18.2.63", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.63.tgz", - "integrity": "sha512-ppaqODhs15PYL2nGUOaOu2RSCCB4Difu4UFrP4I3NHLloXC/ESQzQMi9nvjfT1+rudd0d2L3fQPJxRSey+rGlQ==", + "version": "18.2.64", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.64.tgz", + "integrity": "sha512-MlmPvHgjj2p3vZaxbQgFUQFvD8QiZwACfGqEdDSWou5yISWxDQ4/74nCAwsUiX7UFLKZz3BbVSPj+YxeoGGCfg==", "dependencies": { "@types/prop-types": "*", "@types/scheduler": "*", @@ -3594,9 +3557,9 @@ } }, "node_modules/@types/react-dom": { - "version": "18.2.20", - "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.2.20.tgz", - "integrity": "sha512-HXN/biJY8nv20Cn9ZbCFq3liERd4CozVZmKbaiZ9KiKTrWqsP7eoGDO6OOGvJQwoVFuiXaiJ7nBBjiFFbRmQMQ==", + "version": "18.2.21", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.2.21.tgz", + "integrity": "sha512-gnvBA/21SA4xxqNXEwNiVcP0xSGHh/gi1VhWv9Bl46a0ItbTT5nFY+G9VSQpaG/8N/qdJpJ+vftQ4zflTtnjLw==", "dev": true, "dependencies": { "@types/react": "*" @@ -16806,7 +16769,7 @@ }, "packages/cache-handler": { "name": "@neshca/cache-handler", - "version": "1.0.5", + "version": "1.0.6", "license": "MIT", "dependencies": { "lru-cache": "10.2.0" @@ -16815,7 +16778,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.24", + "@types/node": "20.11.25", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.1", @@ -16826,15 +16789,6 @@ "redis": ">=4.6" } }, - "packages/cache-handler/node_modules/@types/node": { - "version": "20.11.24", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.24.tgz", - "integrity": "sha512-Kza43ewS3xoLgCEpQrsT+xRo/EJej1y0kVYGiLFE1NEODXGzTfwiC6tXTLMQskn1X4/Rjlh0MQUvx9W+L9long==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "packages/diffscribe": { "version": "0.2.3", "license": "MIT", @@ -16843,7 +16797,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.24", + "@types/node": "20.11.25", "rimraf": "5.0.5", "tsup": "8.0.2", "typescript": "5.3.3" @@ -16853,37 +16807,19 @@ "openai": "^4.12.3" } }, - "packages/diffscribe/node_modules/@types/node": { - "version": "20.11.24", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.24.tgz", - "integrity": "sha512-Kza43ewS3xoLgCEpQrsT+xRo/EJej1y0kVYGiLFE1NEODXGzTfwiC6tXTLMQskn1X4/Rjlh0MQUvx9W+L9long==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "packages/json-replacer-reviver": { "name": "@neshca/json-replacer-reviver", "version": "1.1.2", "license": "MIT", "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.24", + "@types/node": "20.11.25", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.1", "typescript": "5.3.3" } }, - "packages/json-replacer-reviver/node_modules/@types/node": { - "version": "20.11.24", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.24.tgz", - "integrity": "sha512-Kza43ewS3xoLgCEpQrsT+xRo/EJej1y0kVYGiLFE1NEODXGzTfwiC6tXTLMQskn1X4/Rjlh0MQUvx9W+L9long==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "packages/server": { "name": "@neshca/server", "version": "1.0.0", @@ -16899,21 +16835,12 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.24", + "@types/node": "20.11.25", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.1", "typescript": "5.3.3" } - }, - "packages/server/node_modules/@types/node": { - "version": "20.11.24", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.24.tgz", - "integrity": "sha512-Kza43ewS3xoLgCEpQrsT+xRo/EJej1y0kVYGiLFE1NEODXGzTfwiC6tXTLMQskn1X4/Rjlh0MQUvx9W+L9long==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } } } } diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index d3598772..53f3ed41 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -72,7 +72,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.24", + "@types/node": "20.11.25", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.1", diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index 59759035..e868d1dd 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -25,7 +25,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.24", + "@types/node": "20.11.25", "rimraf": "5.0.5", "tsup": "8.0.2", "typescript": "5.3.3" diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index d79ad6cc..9a55e1fd 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -28,7 +28,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.24", + "@types/node": "20.11.25", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.1", diff --git a/packages/server/package.json b/packages/server/package.json index abd16272..2a795f2e 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -32,7 +32,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.24", + "@types/node": "20.11.25", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.1", From 088141c7c2e9729a95f5ad374579770e9a9b770c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 7 Mar 2024 15:18:05 +0300 Subject: [PATCH 149/458] Bump the turbo group with 2 updates (#393) Bumps the turbo group with 2 updates: [turbo](https://github.com/vercel/turbo) and [eslint-config-turbo](https://github.com/vercel/turbo/tree/HEAD/packages/eslint-config-turbo). Updates `turbo` from 1.12.4 to 1.12.5 - [Release notes](https://github.com/vercel/turbo/releases) - [Changelog](https://github.com/vercel/turbo/blob/main/release.md) - [Commits](https://github.com/vercel/turbo/compare/v1.12.4...v1.12.5) Updates `eslint-config-turbo` from 1.12.4 to 1.12.5 - [Release notes](https://github.com/vercel/turbo/releases) - [Changelog](https://github.com/vercel/turbo/blob/main/release.md) - [Commits](https://github.com/vercel/turbo/commits/v1.12.5/packages/eslint-config-turbo) --- updated-dependencies: - dependency-name: turbo dependency-type: direct:development update-type: version-update:semver-patch dependency-group: turbo - dependency-name: eslint-config-turbo dependency-type: direct:development update-type: version-update:semver-patch dependency-group: turbo ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- internal/eslint-config/package.json | 2 +- package-lock.json | 72 ++++++++++++++--------------- package.json | 2 +- 3 files changed, 38 insertions(+), 38 deletions(-) diff --git a/internal/eslint-config/package.json b/internal/eslint-config/package.json index 9cfe276a..6fd6a1ae 100644 --- a/internal/eslint-config/package.json +++ b/internal/eslint-config/package.json @@ -10,7 +10,7 @@ "@typescript-eslint/parser": "7.1.1", "@vercel/style-guide": "6.0.0", "eslint-config-prettier": "9.1.0", - "eslint-config-turbo": "1.12.4", + "eslint-config-turbo": "1.12.5", "eslint-plugin-only-warn": "1.1.0", "typescript": "5.3.3" } diff --git a/package-lock.json b/package-lock.json index 98344865..a77c6f25 100644 --- a/package-lock.json +++ b/package-lock.json @@ -26,7 +26,7 @@ "diffscribe": "*", "glob": "10.3.10", "prettier": "3.2.5", - "turbo": "1.12.4" + "turbo": "1.12.5" }, "engines": { "node": ">=20.9.0", @@ -435,7 +435,7 @@ "@typescript-eslint/parser": "7.1.1", "@vercel/style-guide": "6.0.0", "eslint-config-prettier": "9.1.0", - "eslint-config-turbo": "1.12.4", + "eslint-config-turbo": "1.12.5", "eslint-plugin-only-warn": "1.1.0", "typescript": "5.3.3" } @@ -6452,12 +6452,12 @@ } }, "node_modules/eslint-config-turbo": { - "version": "1.12.4", - "resolved": "https://registry.npmjs.org/eslint-config-turbo/-/eslint-config-turbo-1.12.4.tgz", - "integrity": "sha512-5hqEaV6PNmAYLL4RTmq74OcCt8pgzOLnfDVPG/7PUXpQ0Mpz0gr926oCSFukywKKXjdum3VHD84S7Z9A/DqTAw==", + "version": "1.12.5", + "resolved": "https://registry.npmjs.org/eslint-config-turbo/-/eslint-config-turbo-1.12.5.tgz", + "integrity": "sha512-wXytbX+vTzQ6rwgM6sIr447tjYJBlRj5V/eBFNGNXw5Xs1R715ppPYhbmxaFbkrWNQSGJsWRrYGAlyq0sT/OsQ==", "dev": true, "dependencies": { - "eslint-plugin-turbo": "1.12.4" + "eslint-plugin-turbo": "1.12.5" }, "peerDependencies": { "eslint": ">6.6.0" @@ -7073,9 +7073,9 @@ } }, "node_modules/eslint-plugin-turbo": { - "version": "1.12.4", - "resolved": "https://registry.npmjs.org/eslint-plugin-turbo/-/eslint-plugin-turbo-1.12.4.tgz", - "integrity": "sha512-3AGmXvH7E4i/XTWqBrcgu+G7YKZJV/8FrEn79kTd50ilNsv+U3nS2IlcCrQB6Xm2m9avGD9cadLzKDR1/UF2+g==", + "version": "1.12.5", + "resolved": "https://registry.npmjs.org/eslint-plugin-turbo/-/eslint-plugin-turbo-1.12.5.tgz", + "integrity": "sha512-cXy7mCzAdngBTJIWH4DASXHy0vQpujWDBqRTu0YYqCN/QEGsi3HWM+STZEbPYELdjtm5EsN2HshOSSqWnjdRHg==", "dev": true, "dependencies": { "dotenv": "16.0.3" @@ -15529,26 +15529,26 @@ } }, "node_modules/turbo": { - "version": "1.12.4", - "resolved": "https://registry.npmjs.org/turbo/-/turbo-1.12.4.tgz", - "integrity": "sha512-yUJ7elEUSToiGwFZogXpYKJpQ0BvaMbkEuQECIWtkBLcmWzlMOt6bActsIm29oN83mRU0WbzGt4e8H1KHWedhg==", + "version": "1.12.5", + "resolved": "https://registry.npmjs.org/turbo/-/turbo-1.12.5.tgz", + "integrity": "sha512-FATU5EnhrYG8RvQJYFJnDd18DpccDjyvd53hggw9T9JEg9BhWtIEoeaKtBjYbpXwOVrJQMDdXcIB4f2nD3QPPg==", "dev": true, "bin": { "turbo": "bin/turbo" }, "optionalDependencies": { - "turbo-darwin-64": "1.12.4", - "turbo-darwin-arm64": "1.12.4", - "turbo-linux-64": "1.12.4", - "turbo-linux-arm64": "1.12.4", - "turbo-windows-64": "1.12.4", - "turbo-windows-arm64": "1.12.4" + "turbo-darwin-64": "1.12.5", + "turbo-darwin-arm64": "1.12.5", + "turbo-linux-64": "1.12.5", + "turbo-linux-arm64": "1.12.5", + "turbo-windows-64": "1.12.5", + "turbo-windows-arm64": "1.12.5" } }, "node_modules/turbo-darwin-64": { - "version": "1.12.4", - "resolved": "https://registry.npmjs.org/turbo-darwin-64/-/turbo-darwin-64-1.12.4.tgz", - "integrity": "sha512-dBwFxhp9isTa9RS/fz2gDVk5wWhKQsPQMozYhjM7TT4jTrnYn0ZJMzr7V3B/M/T8QF65TbniW7w1gtgxQgX5Zg==", + "version": "1.12.5", + "resolved": "https://registry.npmjs.org/turbo-darwin-64/-/turbo-darwin-64-1.12.5.tgz", + "integrity": "sha512-0GZ8reftwNQgIQLHkHjHEXTc/Z1NJm+YjsrBP+qhM/7yIZ3TEy9gJhuogDt2U0xIWwFgisTyzbtU7xNaQydtoA==", "cpu": [ "x64" ], @@ -15559,9 +15559,9 @@ ] }, "node_modules/turbo-darwin-arm64": { - "version": "1.12.4", - "resolved": "https://registry.npmjs.org/turbo-darwin-arm64/-/turbo-darwin-arm64-1.12.4.tgz", - "integrity": "sha512-1Uo5iI6xsJ1j9ObsqxYRsa3W26mEbUe6fnj4rQYV6kDaqYD54oAMJ6hM53q9rB8JvFxwdrUXGp3PwTw9A0qqkA==", + "version": "1.12.5", + "resolved": "https://registry.npmjs.org/turbo-darwin-arm64/-/turbo-darwin-arm64-1.12.5.tgz", + "integrity": "sha512-8WpOLNNzvH6kohQOjihD+gaWL+ZFNfjvBwhOF0rjEzvW+YR3Pa7KjhulrjWyeN2yMFqAPubTbZIGOz1EVXLuQA==", "cpu": [ "arm64" ], @@ -15572,9 +15572,9 @@ ] }, "node_modules/turbo-linux-64": { - "version": "1.12.4", - "resolved": "https://registry.npmjs.org/turbo-linux-64/-/turbo-linux-64-1.12.4.tgz", - "integrity": "sha512-ONg2aSqKP7LAQOg7ysmU5WpEQp4DGNxSlAiR7um+LKtbmC/UxogbR5+T+Uuq6zGuQ5kJyKjWJ4NhtvUswOqBsA==", + "version": "1.12.5", + "resolved": "https://registry.npmjs.org/turbo-linux-64/-/turbo-linux-64-1.12.5.tgz", + "integrity": "sha512-INit73+bNUpwqGZCxgXCR3I+cQsdkQ3/LkfkgSOibkpg+oGqxJRzeXw3sp990d7SCoE8QOcs3iw+PtiFX/LDAA==", "cpu": [ "x64" ], @@ -15585,9 +15585,9 @@ ] }, "node_modules/turbo-linux-arm64": { - "version": "1.12.4", - "resolved": "https://registry.npmjs.org/turbo-linux-arm64/-/turbo-linux-arm64-1.12.4.tgz", - "integrity": "sha512-9FPufkwdgfIKg/9jj87Cdtftw8o36y27/S2vLN7FTR2pp9c0MQiTBOLVYadUr1FlShupddmaMbTkXEhyt9SdrA==", + "version": "1.12.5", + "resolved": "https://registry.npmjs.org/turbo-linux-arm64/-/turbo-linux-arm64-1.12.5.tgz", + "integrity": "sha512-6lkRBvxtI/GQdGtaAec9LvVQUoRw6nXFp0kM+Eu+5PbZqq7yn6cMkgDJLI08zdeui36yXhone8XGI8pHg8bpUQ==", "cpu": [ "arm64" ], @@ -15598,9 +15598,9 @@ ] }, "node_modules/turbo-windows-64": { - "version": "1.12.4", - "resolved": "https://registry.npmjs.org/turbo-windows-64/-/turbo-windows-64-1.12.4.tgz", - "integrity": "sha512-2mOtxHW5Vjh/5rDVu/aFwsMzI+chs8XcEuJHlY1sYOpEymYTz+u6AXbnzRvwZFMrLKr7J7fQOGl+v96sLKbNdA==", + "version": "1.12.5", + "resolved": "https://registry.npmjs.org/turbo-windows-64/-/turbo-windows-64-1.12.5.tgz", + "integrity": "sha512-gQYbOhZg5Ww0bQ/bC0w/4W6yQRwBumUUnkB+QPo15VznwxZe2a7bo6JM+9Xy9dKLa/kn+p7zTqme4OEp6M3/Yg==", "cpu": [ "x64" ], @@ -15611,9 +15611,9 @@ ] }, "node_modules/turbo-windows-arm64": { - "version": "1.12.4", - "resolved": "https://registry.npmjs.org/turbo-windows-arm64/-/turbo-windows-arm64-1.12.4.tgz", - "integrity": "sha512-nOY5wae9qnxPOpT1fRuYO0ks6dTwpKMPV6++VkDkamFDLFHUDVM/9kmD2UTeh1yyrKnrZksbb9zmShhmfj1wog==", + "version": "1.12.5", + "resolved": "https://registry.npmjs.org/turbo-windows-arm64/-/turbo-windows-arm64-1.12.5.tgz", + "integrity": "sha512-auvhZ9FrhnvQ4mgBlY9O68MT4dIfprYGvd2uPICba/mHUZZvVy5SGgbHJ0KbMwaJfnnFoPgLJO6M+3N2gDprKw==", "cpu": [ "arm64" ], diff --git a/package.json b/package.json index e72026be..b9c538bc 100644 --- a/package.json +++ b/package.json @@ -44,7 +44,7 @@ "diffscribe": "*", "glob": "10.3.10", "prettier": "3.2.5", - "turbo": "1.12.4" + "turbo": "1.12.5" }, "engines": { "node": ">=20.9.0", From 9a4156e28b1d26df7c2c73acd5c0a31dc69870b2 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 8 Mar 2024 13:12:59 +0300 Subject: [PATCH 150/458] Bump dotenv-cli from 7.3.0 to 7.4.0 (#400) Bumps [dotenv-cli](https://github.com/entropitor/dotenv-cli) from 7.3.0 to 7.4.0. - [Release notes](https://github.com/entropitor/dotenv-cli/releases) - [Commits](https://github.com/entropitor/dotenv-cli/compare/v7.3.0...v7.4.0) --- updated-dependencies: - dependency-name: dotenv-cli dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- package-lock.json | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 4f3a10fc..1b55a3e1 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -32,7 +32,7 @@ "@types/react": "18.2.64", "@types/react-dom": "18.2.21", "axios": "1.6.7", - "dotenv-cli": "7.3.0", + "dotenv-cli": "7.4.0", "eslint": "8.57.0", "fastify": "4.26.2", "pm2": "5.3.1", diff --git a/package-lock.json b/package-lock.json index a77c6f25..7169c5fc 100644 --- a/package-lock.json +++ b/package-lock.json @@ -52,7 +52,7 @@ "@types/react": "18.2.64", "@types/react-dom": "18.2.21", "axios": "1.6.7", - "dotenv-cli": "7.3.0", + "dotenv-cli": "7.4.0", "eslint": "8.57.0", "fastify": "4.26.2", "pm2": "5.3.1", @@ -6046,9 +6046,9 @@ } }, "node_modules/dotenv-cli": { - "version": "7.3.0", - "resolved": "https://registry.npmjs.org/dotenv-cli/-/dotenv-cli-7.3.0.tgz", - "integrity": "sha512-314CA4TyK34YEJ6ntBf80eUY+t1XaFLyem1k9P0sX1gn30qThZ5qZr/ZwE318gEnzyYP9yj9HJk6SqwE0upkfw==", + "version": "7.4.0", + "resolved": "https://registry.npmjs.org/dotenv-cli/-/dotenv-cli-7.4.0.tgz", + "integrity": "sha512-fZGFOGCC5rEz1OJ0Pp+1LN8y78ClMcyXDmBEmjvJwqCqZVsPHcQ85bLCh5hZ4Bqotw4dptXOLvvw0vxm2MD30g==", "dev": true, "dependencies": { "cross-spawn": "^7.0.3", From e6b4eba8dd95b7c973d0e023e25fe2723a921dad Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 9 Mar 2024 11:23:56 +0300 Subject: [PATCH 151/458] Bump @biomejs/biome from 1.5.3 to 1.6.0 (#401) * Bump @biomejs/biome from 1.5.3 to 1.6.0 Bumps [@biomejs/biome](https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome) from 1.5.3 to 1.6.0. - [Release notes](https://github.com/biomejs/biome/releases) - [Changelog](https://github.com/biomejs/biome/blob/main/CHANGELOG.md) - [Commits](https://github.com/biomejs/biome/commits/cli/v1.6.0/packages/@biomejs/biome) --- updated-dependencies: - dependency-name: "@biomejs/biome" dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] * Update linter rules and fix linter errors --------- Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Arseny <132773930+better-salmon@users.noreply.github.com> --- .../actions/add-dist-tags/add-dist-tags.js | 4 +- .../cache-handler-next-example.js | 6 +- biome.json | 31 ++++---- internal/next-common/src/next-common.ts | 1 + package-lock.json | 72 +++++++++---------- package.json | 2 +- packages/cache-handler/src/cache-handler.ts | 2 +- .../cache-handler/src/handlers/redis-stack.ts | 2 +- .../src/handlers/redis-strings.ts | 2 +- 9 files changed, 62 insertions(+), 60 deletions(-) diff --git a/.github/actions/add-dist-tags/add-dist-tags.js b/.github/actions/add-dist-tags/add-dist-tags.js index 1de78969..4be44b48 100644 --- a/.github/actions/add-dist-tags/add-dist-tags.js +++ b/.github/actions/add-dist-tags/add-dist-tags.js @@ -2,9 +2,9 @@ // @ts-check const core = require('@actions/core'); -const { execFileSync } = require('child_process'); +const { execFileSync } = require('node:child_process'); const { globSync } = require('glob'); -const fs = require('fs'); +const fs = require('node:fs'); function run() { try { diff --git a/apps/cache-testing/cache-handler-next-example.js b/apps/cache-testing/cache-handler-next-example.js index 1854b9c0..7eed4af9 100644 --- a/apps/cache-testing/cache-handler-next-example.js +++ b/apps/cache-testing/cache-handler-next-example.js @@ -5,13 +5,13 @@ module.exports = class CacheHandler { this.options = options; } - // biome-ignore lint/nursery/useAwait: don't bother + // biome-ignore lint/suspicious/useAwait: don't bother async get(key) { // This could be stored anywhere, like durable storage return cache.get(key); } - // biome-ignore lint/nursery/useAwait: don't bother + // biome-ignore lint/suspicious/useAwait: don't bother async set(key, data, ctx) { // This could be stored anywhere, like durable storage cache.set(key, { @@ -21,7 +21,7 @@ module.exports = class CacheHandler { }); } - // biome-ignore lint/nursery/useAwait: don't bother + // biome-ignore lint/suspicious/useAwait: don't bother async revalidateTag(tag) { // Iterate over all entries in the cache // biome-ignore lint/style/useConst: don't bother diff --git a/biome.json b/biome.json index 00abefdc..e8710dca 100644 --- a/biome.json +++ b/biome.json @@ -10,11 +10,14 @@ "suspicious": { "noConsoleLog": "error", "noApproximativeNumericConstant": "error", - "noMisrefactoredShorthandAssign": "error" + "noMisrefactoredShorthandAssign": "error", + "useAwait": "error" }, "correctness": { "noUndeclaredVariables": "error", - "noUnusedVariables": "error" + "noUnusedVariables": "error", + "noUnusedImports": "error", + "noUnusedPrivateClassMembers": "error" }, "style": { "noNamespace": "error", @@ -26,22 +29,20 @@ "useCollapsedElseIf": "error", "useShorthandArrayType": "error", "useShorthandAssign": "error", - "useSingleCaseStatement": "error" - }, - "nursery": { - "noUnusedImports": "error", - "noUnusedPrivateClassMembers": "error", - "noUselessTernary": "error", - "useAwait": "error", + "useSingleCaseStatement": "error", + "useImportType": "error", + "useNumberNamespace": "error", + "useShorthandFunctionType": "error", "useFilenamingConvention": { "level": "error", "options": { "filenameCases": ["kebab-case"] } - }, - "useImportType": "error", - "useNumberNamespace": "error", - "useShorthandFunctionType": "error" + } + }, + "nursery": { + "noUselessTernary": "error", + "noDuplicateTestHooks": "error" }, "complexity": { "useSimplifiedLogicExpression": "error" @@ -73,8 +74,8 @@ }, "overrides": [ { - "include": ["[slug].tsx", "[length].tsx"], - "linter": { "rules": { "nursery": { "useFilenamingConvention": "off" } } } + "include": ["[slug].tsx", "[length].tsx", "200.tsx"], + "linter": { "rules": { "style": { "useFilenamingConvention": "off" } } } } ] } diff --git a/internal/next-common/src/next-common.ts b/internal/next-common/src/next-common.ts index cd3301cc..8aa097e7 100644 --- a/internal/next-common/src/next-common.ts +++ b/internal/next-common/src/next-common.ts @@ -1,3 +1,4 @@ +// biome-ignore lint/style/useNodejsImportProtocol: RollupError: "OutgoingHttpHeaders" is not exported by "node:http" import type { OutgoingHttpHeaders } from 'http'; import type { RouteMetadata as NextRouteMetadata } from 'next/dist/export/routes/types'; diff --git a/package-lock.json b/package-lock.json index 7169c5fc..a8ee4f3a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -20,7 +20,7 @@ }, "devDependencies": { "@actions/core": "1.10.1", - "@biomejs/biome": "1.5.3", + "@biomejs/biome": "1.6.0", "@repo/prettier-config": "*", "@repo/typescript-config": "*", "diffscribe": "*", @@ -1116,9 +1116,9 @@ } }, "node_modules/@biomejs/biome": { - "version": "1.5.3", - "resolved": "https://registry.npmjs.org/@biomejs/biome/-/biome-1.5.3.tgz", - "integrity": "sha512-yvZCa/g3akwTaAQ7PCwPWDCkZs3Qa5ONg/fgOUT9e6wAWsPftCjLQFPXBeGxPK30yZSSpgEmRCfpGTmVbUjGgg==", + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@biomejs/biome/-/biome-1.6.0.tgz", + "integrity": "sha512-hvP8K1+CV8qc9eNdXtPwzScVxFSHB448CPKSqX6+8IW8G7bbhBVKGC80BowExJN5+vu+kzsj4xkWa780MAOlJw==", "dev": true, "hasInstallScript": true, "bin": { @@ -1132,20 +1132,20 @@ "url": "https://opencollective.com/biome" }, "optionalDependencies": { - "@biomejs/cli-darwin-arm64": "1.5.3", - "@biomejs/cli-darwin-x64": "1.5.3", - "@biomejs/cli-linux-arm64": "1.5.3", - "@biomejs/cli-linux-arm64-musl": "1.5.3", - "@biomejs/cli-linux-x64": "1.5.3", - "@biomejs/cli-linux-x64-musl": "1.5.3", - "@biomejs/cli-win32-arm64": "1.5.3", - "@biomejs/cli-win32-x64": "1.5.3" + "@biomejs/cli-darwin-arm64": "1.6.0", + "@biomejs/cli-darwin-x64": "1.6.0", + "@biomejs/cli-linux-arm64": "1.6.0", + "@biomejs/cli-linux-arm64-musl": "1.6.0", + "@biomejs/cli-linux-x64": "1.6.0", + "@biomejs/cli-linux-x64-musl": "1.6.0", + "@biomejs/cli-win32-arm64": "1.6.0", + "@biomejs/cli-win32-x64": "1.6.0" } }, "node_modules/@biomejs/cli-darwin-arm64": { - "version": "1.5.3", - "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-1.5.3.tgz", - "integrity": "sha512-ImU7mh1HghEDyqNmxEZBoMPr8SxekkZuYcs+gynKlNW+TALQs7swkERiBLkG9NR0K1B3/2uVzlvYowXrmlW8hw==", + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-1.6.0.tgz", + "integrity": "sha512-K1Fjqye5pt+Ua+seC7V/2bFjfnqOaEOcQbBQSiiefB/VPNOb6lA5NFIfJ1PskTA3JrMXE1k7iqKQn56qrKFS6A==", "cpu": [ "arm64" ], @@ -1159,9 +1159,9 @@ } }, "node_modules/@biomejs/cli-darwin-x64": { - "version": "1.5.3", - "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-x64/-/cli-darwin-x64-1.5.3.tgz", - "integrity": "sha512-vCdASqYnlpq/swErH7FD6nrFz0czFtK4k/iLgj0/+VmZVjineFPgevOb+Sr9vz0tk0GfdQO60bSpI74zU8M9Dw==", + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-x64/-/cli-darwin-x64-1.6.0.tgz", + "integrity": "sha512-CjEALu6vN9RbcfhaBDoj481mesUIsUjxgQn+/kiMCea+Paypqslhez1I7OwRBJnkzz+Pa+PXdABd7S30eyy6+Q==", "cpu": [ "x64" ], @@ -1175,9 +1175,9 @@ } }, "node_modules/@biomejs/cli-linux-arm64": { - "version": "1.5.3", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64/-/cli-linux-arm64-1.5.3.tgz", - "integrity": "sha512-cupBQv0sNF1OKqBfx7EDWMSsKwRrBUZfjXawT4s6hKV6ALq7p0QzWlxr/sDmbKMLOaLQtw2Qgu/77N9rm+f9Rg==", + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64/-/cli-linux-arm64-1.6.0.tgz", + "integrity": "sha512-32LVrC7dAgQT39YZ0ieO/VzzpAflozs9mW5K0oKNef7S4ocCdk89E98eXApxOdei0JTf3vfseDCl1AUIp6MwJw==", "cpu": [ "arm64" ], @@ -1191,9 +1191,9 @@ } }, "node_modules/@biomejs/cli-linux-arm64-musl": { - "version": "1.5.3", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-1.5.3.tgz", - "integrity": "sha512-DYuMizUYUBYfS0IHGjDrOP1RGipqWfMGEvNEJ398zdtmCKLXaUvTimiox5dvx4X15mBK5M2m8wgWUgOP1giUpQ==", + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-1.6.0.tgz", + "integrity": "sha512-prww6AUuJ+IO/GziN3WjtGM/DNOVuPFxqWrK97wKTZygEDdA+o1qHUN2HeCkSyk084xnzbMSbls5xscAKAn43A==", "cpu": [ "arm64" ], @@ -1207,9 +1207,9 @@ } }, "node_modules/@biomejs/cli-linux-x64": { - "version": "1.5.3", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64/-/cli-linux-x64-1.5.3.tgz", - "integrity": "sha512-YQrSArQvcv4FYsk7Q91Yv4uuu5F8hJyORVcv3zsjCLGkjIjx2RhjYLpTL733SNL7v33GmOlZY0eFR1ko38tuUw==", + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64/-/cli-linux-x64-1.6.0.tgz", + "integrity": "sha512-b6mWu9Cu4w5B3K46wq9SlxKEZEEL6II/6HFNAuZ4YL8mOeQ0FTMU+wNMJFKkmkSE2zvim3xwW3PknmbLKbe3Mg==", "cpu": [ "x64" ], @@ -1223,9 +1223,9 @@ } }, "node_modules/@biomejs/cli-linux-x64-musl": { - "version": "1.5.3", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-1.5.3.tgz", - "integrity": "sha512-UUHiAnlDqr2Y/LpvshBFhUYMWkl2/Jn+bi3U6jKuav0qWbbBKU/ByHgR4+NBxpKBYoCtWxhnmatfH1bpPIuZMw==", + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-1.6.0.tgz", + "integrity": "sha512-NwitWeUKCy8G/rr+rgHPYirnrsOjJEJBWODdaRzweeFNcJjvO6de6AmNdSJzsewzLEaxjOWyoXU03MdzbGz/6Q==", "cpu": [ "x64" ], @@ -1239,9 +1239,9 @@ } }, "node_modules/@biomejs/cli-win32-arm64": { - "version": "1.5.3", - "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-arm64/-/cli-win32-arm64-1.5.3.tgz", - "integrity": "sha512-HxatYH7vf/kX9nrD+pDYuV2GI9GV8EFo6cfKkahAecTuZLPxryHx1WEfJthp5eNsE0+09STGkKIKjirP0ufaZA==", + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-arm64/-/cli-win32-arm64-1.6.0.tgz", + "integrity": "sha512-DlNOL6mG+76iZS1gL/UiuMme7jnt+auzo2+u0aUq6UXYsb75juchwlnVLy2UV5CQjVBRB8+RM+KVoXRZ8NlBjQ==", "cpu": [ "arm64" ], @@ -1255,9 +1255,9 @@ } }, "node_modules/@biomejs/cli-win32-x64": { - "version": "1.5.3", - "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-x64/-/cli-win32-x64-1.5.3.tgz", - "integrity": "sha512-fMvbSouZEASU7mZH8SIJSANDm5OqsjgtVXlbUqxwed6BP7uuHRSs396Aqwh2+VoW8fwTpp6ybIUoC9FrzB0kyA==", + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-x64/-/cli-win32-x64-1.6.0.tgz", + "integrity": "sha512-sXBcXIOGuG8/XcHqmnkhLIs0oy6Dp+TkH4Alr4WH/P8mNsp5GcStI/ZwbEiEoxA0P3Fi+oUppQ6srxaY2rSCHg==", "cpu": [ "x64" ], diff --git a/package.json b/package.json index b9c538bc..3853533b 100644 --- a/package.json +++ b/package.json @@ -38,7 +38,7 @@ }, "devDependencies": { "@actions/core": "1.10.1", - "@biomejs/biome": "1.5.3", + "@biomejs/biome": "1.6.0", "@repo/prettier-config": "*", "@repo/typescript-config": "*", "diffscribe": "*", diff --git a/packages/cache-handler/src/cache-handler.ts b/packages/cache-handler/src/cache-handler.ts index 2dc6df1e..f21e446a 100644 --- a/packages/cache-handler/src/cache-handler.ts +++ b/packages/cache-handler/src/cache-handler.ts @@ -2,7 +2,6 @@ import { promises as fsPromises } from 'node:fs'; import path from 'node:path'; import type { - CacheHandler as NextCacheHandler, CacheHandlerParametersGet, CacheHandlerParametersRevalidateTag, CacheHandlerParametersSet, @@ -10,6 +9,7 @@ import type { FileSystemCacheContext, IncrementalCachedPageValue, LifespanParameters, + CacheHandler as NextCacheHandler, PrerenderManifest, Revalidate, } from '@neshca/next-common'; diff --git a/packages/cache-handler/src/handlers/redis-stack.ts b/packages/cache-handler/src/handlers/redis-stack.ts index d1e03569..df87abc9 100644 --- a/packages/cache-handler/src/handlers/redis-stack.ts +++ b/packages/cache-handler/src/handlers/redis-stack.ts @@ -4,7 +4,7 @@ import type { CacheHandlerValue, Handler } from '../cache-handler'; import type { CreateRedisStackHandlerOptions, RedisJSON } from '../common-types'; import { getTimeoutRedisCommandOptions } from '../helpers/get-timeout-redis-command-options'; -export { CreateRedisStackHandlerOptions }; +export type { CreateRedisStackHandlerOptions }; /** * Creates a Handler using Redis client. diff --git a/packages/cache-handler/src/handlers/redis-strings.ts b/packages/cache-handler/src/handlers/redis-strings.ts index 3a01542c..9e3bbba3 100644 --- a/packages/cache-handler/src/handlers/redis-strings.ts +++ b/packages/cache-handler/src/handlers/redis-strings.ts @@ -5,7 +5,7 @@ import type { CreateRedisStringsHandlerOptions } from '../common-types'; import { getTimeoutRedisCommandOptions } from '../helpers/get-timeout-redis-command-options'; -export { CreateRedisStringsHandlerOptions }; +export type { CreateRedisStringsHandlerOptions }; /** * Creates a Handler using Redis client. From e92658a2c3fac3e7c4a40b5aeb953056be0dbff2 Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Mon, 11 Mar 2024 04:58:23 +0300 Subject: [PATCH 152/458] Fix the redis-stack Handler `revalidateTag` method (#402) - Add pagination to tags search - Replace `del` operation with `unlink` --- .changeset/six-paws-kick.md | 10 + .../pages/usage/creating-a-custom-handler.mdx | 2 +- package-lock.json | 500 ++++++++---------- .../cache-handler/src/handlers/redis-stack.ts | 25 +- .../src/handlers/redis-strings.ts | 2 +- 5 files changed, 249 insertions(+), 290 deletions(-) create mode 100644 .changeset/six-paws-kick.md diff --git a/.changeset/six-paws-kick.md b/.changeset/six-paws-kick.md new file mode 100644 index 00000000..d9b06fef --- /dev/null +++ b/.changeset/six-paws-kick.md @@ -0,0 +1,10 @@ +--- +'@neshca/cache-handler': patch +--- + +Fix the redis-stack Handler `revalidateTag` method. + +#### Changes + +- Add pagination to tags search +- Replace `del` operation with `unlink` diff --git a/docs/cache-handler-docs/src/pages/usage/creating-a-custom-handler.mdx b/docs/cache-handler-docs/src/pages/usage/creating-a-custom-handler.mdx index 54f10452..1f98570c 100644 --- a/docs/cache-handler-docs/src/pages/usage/creating-a-custom-handler.mdx +++ b/docs/cache-handler-docs/src/pages/usage/creating-a-custom-handler.mdx @@ -145,7 +145,7 @@ CacheHandler.onCreation(async () => { const options = commandOptions({ signal: AbortSignal.timeout(timeoutMs) }); // Delete the keys from Redis. - const deleteKeysOperation = client.del(options, keysToDelete); + const deleteKeysOperation = client.unlink(options, keysToDelete); // Update the tags in Redis by deleting the revalidated tags. const updateTagsOperation = client.hDel(options, keyPrefix + sharedTagsKey, tagsToDelete); diff --git a/package-lock.json b/package-lock.json index a8ee4f3a..80146413 100644 --- a/package-lock.json +++ b/package-lock.json @@ -62,6 +62,15 @@ "typescript": "5.3.3" } }, + "apps/cache-testing/node_modules/@types/node": { + "version": "20.11.25", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.25.tgz", + "integrity": "sha512-TBHyJxk2b7HceLVGFcpAUjsa5zIdsPWlR6XHfyGzd0SFu+/NFgQgMAl96MSDZgQDvJAvV6BKsFOrt6zIL09JDw==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "apps/cache-testing/node_modules/next": { "version": "14.2.0-canary.4", "resolved": "https://registry.npmjs.org/next/-/next-14.2.0-canary.4.tgz", @@ -285,6 +294,15 @@ "tslib": "^2.4.0" } }, + "docs/cache-handler-docs/node_modules/@types/node": { + "version": "20.11.25", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.25.tgz", + "integrity": "sha512-TBHyJxk2b7HceLVGFcpAUjsa5zIdsPWlR6XHfyGzd0SFu+/NFgQgMAl96MSDZgQDvJAvV6BKsFOrt6zIL09JDw==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "docs/cache-handler-docs/node_modules/next": { "version": "14.1.0", "resolved": "https://registry.npmjs.org/next/-/next-14.1.0.tgz", @@ -427,6 +445,15 @@ "typescript": "5.3.3" } }, + "internal/backend/node_modules/@types/node": { + "version": "20.11.25", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.25.tgz", + "integrity": "sha512-TBHyJxk2b7HceLVGFcpAUjsa5zIdsPWlR6XHfyGzd0SFu+/NFgQgMAl96MSDZgQDvJAvV6BKsFOrt6zIL09JDw==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "internal/eslint-config": { "name": "@repo/eslint-config", "version": "0.0.0", @@ -441,9 +468,9 @@ } }, "internal/eslint-config/node_modules/@next/eslint-plugin-next": { - "version": "14.1.2", - "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.1.2.tgz", - "integrity": "sha512-k9h9NfR1joJI48uwdQd/DuOV1mBgcjlmWaX45eAXCFGT96oc+/6SMjO3s7naVtTXqSKjFAgk2GDlW6Hv41ROXQ==", + "version": "14.1.3", + "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.1.3.tgz", + "integrity": "sha512-VCnZI2cy77Yaj3L7Uhs3+44ikMM1VD/fBMwvTBb3hIaTIuqa+DmG4dhUDq+MASu3yx97KhgsVJbsas0XuiKyww==", "dev": true, "optional": true, "peer": true, @@ -503,12 +530,12 @@ } }, "internal/eslint-config/node_modules/eslint-plugin-vitest": { - "version": "0.3.22", - "resolved": "https://registry.npmjs.org/eslint-plugin-vitest/-/eslint-plugin-vitest-0.3.22.tgz", - "integrity": "sha512-atkFGQ7aVgcuSeSMDqnyevIyUpfBPMnosksgEPrKE7Y8xQlqG/5z2IQ6UDau05zXaaFv7Iz8uzqvIuKshjZ0Zw==", + "version": "0.3.24", + "resolved": "https://registry.npmjs.org/eslint-plugin-vitest/-/eslint-plugin-vitest-0.3.24.tgz", + "integrity": "sha512-MjxQCfOzLVJwi5EBHZYtv6zKHVUMRDh269D3KHCxHW0skoJhNDgE5MKvuxQ0Rh6B1aa6KuGUcvffRCdtN4Bg7A==", "dev": true, "dependencies": { - "@typescript-eslint/utils": "^6.21.0" + "@typescript-eslint/utils": "^7.1.1" }, "engines": { "node": "^18.0.0 || >= 20.0.0" @@ -540,6 +567,15 @@ "typescript": "5.3.3" } }, + "internal/next-common/node_modules/@types/node": { + "version": "20.11.25", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.25.tgz", + "integrity": "sha512-TBHyJxk2b7HceLVGFcpAUjsa5zIdsPWlR6XHfyGzd0SFu+/NFgQgMAl96MSDZgQDvJAvV6BKsFOrt6zIL09JDw==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "internal/next-common/node_modules/next": { "version": "14.2.0-canary.4", "resolved": "https://registry.npmjs.org/next/-/next-14.2.0-canary.4.tgz", @@ -600,6 +636,15 @@ "typescript": "5.3.3" } }, + "internal/next-lru-cache/node_modules/@types/node": { + "version": "20.11.25", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.25.tgz", + "integrity": "sha512-TBHyJxk2b7HceLVGFcpAUjsa5zIdsPWlR6XHfyGzd0SFu+/NFgQgMAl96MSDZgQDvJAvV6BKsFOrt6zIL09JDw==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "internal/prettier-config": { "name": "@repo/prettier-config", "version": "0.0.0", @@ -609,9 +654,9 @@ } }, "internal/prettier-config/node_modules/@next/eslint-plugin-next": { - "version": "14.1.2", - "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.1.2.tgz", - "integrity": "sha512-k9h9NfR1joJI48uwdQd/DuOV1mBgcjlmWaX45eAXCFGT96oc+/6SMjO3s7naVtTXqSKjFAgk2GDlW6Hv41ROXQ==", + "version": "14.1.3", + "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.1.3.tgz", + "integrity": "sha512-VCnZI2cy77Yaj3L7Uhs3+44ikMM1VD/fBMwvTBb3hIaTIuqa+DmG4dhUDq+MASu3yx97KhgsVJbsas0XuiKyww==", "dev": true, "optional": true, "peer": true, @@ -671,12 +716,12 @@ } }, "internal/prettier-config/node_modules/eslint-plugin-vitest": { - "version": "0.3.22", - "resolved": "https://registry.npmjs.org/eslint-plugin-vitest/-/eslint-plugin-vitest-0.3.22.tgz", - "integrity": "sha512-atkFGQ7aVgcuSeSMDqnyevIyUpfBPMnosksgEPrKE7Y8xQlqG/5z2IQ6UDau05zXaaFv7Iz8uzqvIuKshjZ0Zw==", + "version": "0.3.24", + "resolved": "https://registry.npmjs.org/eslint-plugin-vitest/-/eslint-plugin-vitest-0.3.24.tgz", + "integrity": "sha512-MjxQCfOzLVJwi5EBHZYtv6zKHVUMRDh269D3KHCxHW0skoJhNDgE5MKvuxQ0Rh6B1aa6KuGUcvffRCdtN4Bg7A==", "dev": true, "dependencies": { - "@typescript-eslint/utils": "^6.21.0" + "@typescript-eslint/utils": "^7.1.1" }, "engines": { "node": "^18.0.0 || >= 20.0.0" @@ -2168,11 +2213,6 @@ "fs-extra": "^8.1.0" } }, - "node_modules/@manypkg/find-root/node_modules/@types/node": { - "version": "12.20.55", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", - "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" - }, "node_modules/@manypkg/find-root/node_modules/fs-extra": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", @@ -3519,12 +3559,9 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "20.11.25", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.25.tgz", - "integrity": "sha512-TBHyJxk2b7HceLVGFcpAUjsa5zIdsPWlR6XHfyGzd0SFu+/NFgQgMAl96MSDZgQDvJAvV6BKsFOrt6zIL09JDw==", - "dependencies": { - "undici-types": "~5.26.4" - } + "version": "12.20.55", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", + "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" }, "node_modules/@types/node-fetch": { "version": "2.6.11", @@ -3615,31 +3652,6 @@ } } }, - "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/utils": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-7.1.1.tgz", - "integrity": "sha512-thOXM89xA03xAE0lW7alstvnyoBUbBX38YtY+zAUcpRPcq9EIhXPuJ0YTv948MbzmKh6e1AUszn5cBFK49Umqg==", - "dev": true, - "dependencies": { - "@eslint-community/eslint-utils": "^4.4.0", - "@types/json-schema": "^7.0.12", - "@types/semver": "^7.5.0", - "@typescript-eslint/scope-manager": "7.1.1", - "@typescript-eslint/types": "7.1.1", - "@typescript-eslint/typescript-estree": "7.1.1", - "semver": "^7.5.4" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^8.56.0" - } - }, "node_modules/@typescript-eslint/parser": { "version": "7.1.1", "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-7.1.1.tgz", @@ -3712,31 +3724,6 @@ } } }, - "node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/utils": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-7.1.1.tgz", - "integrity": "sha512-thOXM89xA03xAE0lW7alstvnyoBUbBX38YtY+zAUcpRPcq9EIhXPuJ0YTv948MbzmKh6e1AUszn5cBFK49Umqg==", - "dev": true, - "dependencies": { - "@eslint-community/eslint-utils": "^4.4.0", - "@types/json-schema": "^7.0.12", - "@types/semver": "^7.5.0", - "@typescript-eslint/scope-manager": "7.1.1", - "@typescript-eslint/types": "7.1.1", - "@typescript-eslint/typescript-estree": "7.1.1", - "semver": "^7.5.4" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^8.56.0" - } - }, "node_modules/@typescript-eslint/types": { "version": "7.1.1", "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.1.1.tgz", @@ -3803,17 +3790,17 @@ } }, "node_modules/@typescript-eslint/utils": { - "version": "6.21.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.21.0.tgz", - "integrity": "sha512-NfWVaC8HP9T8cbKQxHcsJBY5YE1O33+jpMwN45qzWWaPDZgLIbo12toGMWnmhvCpd3sIxkpDw3Wv1B3dYrbDQQ==", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-7.1.1.tgz", + "integrity": "sha512-thOXM89xA03xAE0lW7alstvnyoBUbBX38YtY+zAUcpRPcq9EIhXPuJ0YTv948MbzmKh6e1AUszn5cBFK49Umqg==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.4.0", "@types/json-schema": "^7.0.12", "@types/semver": "^7.5.0", - "@typescript-eslint/scope-manager": "6.21.0", - "@typescript-eslint/types": "6.21.0", - "@typescript-eslint/typescript-estree": "6.21.0", + "@typescript-eslint/scope-manager": "7.1.1", + "@typescript-eslint/types": "7.1.1", + "@typescript-eslint/typescript-estree": "7.1.1", "semver": "^7.5.4" }, "engines": { @@ -3824,106 +3811,7 @@ "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "eslint": "^7.0.0 || ^8.0.0" - } - }, - "node_modules/@typescript-eslint/utils/node_modules/@typescript-eslint/scope-manager": { - "version": "6.21.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.21.0.tgz", - "integrity": "sha512-OwLUIWZJry80O99zvqXVEioyniJMa+d2GrqpUTqi5/v5D5rOrppJVBPa0yKCblcigC0/aYAzxxqQ1B+DS2RYsg==", - "dev": true, - "dependencies": { - "@typescript-eslint/types": "6.21.0", - "@typescript-eslint/visitor-keys": "6.21.0" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/utils/node_modules/@typescript-eslint/types": { - "version": "6.21.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.21.0.tgz", - "integrity": "sha512-1kFmZ1rOm5epu9NZEZm1kckCDGj5UJEf7P1kliH4LKu/RkwpsfqqGmY2OOcUs18lSlQBKLDYBOGxRVtrMN5lpg==", - "dev": true, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/utils/node_modules/@typescript-eslint/typescript-estree": { - "version": "6.21.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.21.0.tgz", - "integrity": "sha512-6npJTkZcO+y2/kr+z0hc4HwNfrrP4kNYh57ek7yCNlrBjWQ1Y0OS7jiZTkgumrvkX5HkEKXFZkkdFNkaW2wmUQ==", - "dev": true, - "dependencies": { - "@typescript-eslint/types": "6.21.0", - "@typescript-eslint/visitor-keys": "6.21.0", - "debug": "^4.3.4", - "globby": "^11.1.0", - "is-glob": "^4.0.3", - "minimatch": "9.0.3", - "semver": "^7.5.4", - "ts-api-utils": "^1.0.1" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/@typescript-eslint/utils/node_modules/@typescript-eslint/visitor-keys": { - "version": "6.21.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.21.0.tgz", - "integrity": "sha512-JJtkDduxLi9bivAB+cYOVMtbkqdPOhZ+ZI5LC47MIRrDV4Yn2o+ZnW10Nkmr28xRpSpdJ6Sm42Hjf2+REYXm0A==", - "dev": true, - "dependencies": { - "@typescript-eslint/types": "6.21.0", - "eslint-visitor-keys": "^3.4.1" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/utils/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/@typescript-eslint/utils/node_modules/minimatch": { - "version": "9.0.3", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", - "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", - "dev": true, - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "eslint": "^8.56.0" } }, "node_modules/@typescript-eslint/visitor-keys": { @@ -4777,9 +4665,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001594", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001594.tgz", - "integrity": "sha512-VblSX6nYqyJVs8DKFMldE2IVCJjZ225LW00ydtUWwh5hk9IfkTOffO6r8gJNsH0qqqeAF8KrbMYA2VEwTlGW5g==", + "version": "1.0.30001596", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001596.tgz", + "integrity": "sha512-zpkZ+kEr6We7w63ORkoJ2pOfBwBkY/bJrG/UZ90qNb45Isblu8wzDgevEOrRL1r9dWayHjYiiyCMEXPn4DweGQ==", "funding": [ { "type": "opencollective", @@ -6076,9 +5964,9 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.693", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.693.tgz", - "integrity": "sha512-/if4Ueg0GUQlhCrW2ZlXwDAm40ipuKo+OgeHInlL8sbjt+hzISxZK949fZeJaVsheamrzANXvw1zQTvbxTvSHw==", + "version": "1.4.699", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.699.tgz", + "integrity": "sha512-I7q3BbQi6e4tJJN5CRcyvxhK0iJb34TV8eJQcgh+fR2fQ8miMgZcEInckCo1U9exDHbfz7DLDnFn8oqH/VcRKw==", "dev": true }, "node_modules/elkjs": { @@ -7754,9 +7642,9 @@ } }, "node_modules/fast-redact": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/fast-redact/-/fast-redact-3.3.0.tgz", - "integrity": "sha512-6T5V1QK1u4oF+ATxs1lWUmlEk6P2T9HqJG3e2DnHOdVgZy2rFJBoEnrIedcTXlkAHU/zKC+7KETJ+KGGKwxgMQ==", + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/fast-redact/-/fast-redact-3.4.0.tgz", + "integrity": "sha512-2gwPvyna0zwBdxKnng1suu/dTL5s8XEy2ZqH8mwDUwJdDkV8w5kp+JV26mupdK68HmPMbm6yjW9m7/Ys/BHEHg==", "engines": { "node": ">=6" } @@ -8180,9 +8068,9 @@ } }, "node_modules/get-tsconfig": { - "version": "4.7.2", - "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.7.2.tgz", - "integrity": "sha512-wuMsz4leaj5hbGgg4IvDU0bqJagpftG5l5cXIAvo8uZrqn0NJqwtfupTN00VnkQJPcIRrxYrm1Ue24btpCha2A==", + "version": "4.7.3", + "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.7.3.tgz", + "integrity": "sha512-ZvkrzoUA0PQZM6fy6+/Hce561s+faD1rsNwhnO5FelNjyy7EMGJ3Rz1AQ8GYDWjhRs/7dBLOEJvhK8MiEJOAFg==", "dev": true, "dependencies": { "resolve-pkg-maps": "^1.0.0" @@ -9394,10 +9282,13 @@ } }, "node_modules/is-map": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.2.tgz", - "integrity": "sha512-cOZFQQozTha1f4MxLFzlgKYPTyj26picdZTx82hbc/Xf4K/tZOOXSCkMvU4pKioRXGDLJRn0GM7Upe7kR721yg==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.3.tgz", + "integrity": "sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==", "dev": true, + "engines": { + "node": ">= 0.4" + }, "funding": { "url": "https://github.com/sponsors/ljharb" } @@ -9487,10 +9378,13 @@ } }, "node_modules/is-set": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.2.tgz", - "integrity": "sha512-+2cnTEZeY5z/iXGbLhPrOAaK/Mau5k5eXq9j14CpRTftq0pAJu2MwVRSZhyZWBzx3o6X795Lz6Bpb6R0GKf37g==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.3.tgz", + "integrity": "sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==", "dev": true, + "engines": { + "node": ">= 0.4" + }, "funding": { "url": "https://github.com/sponsors/ljharb" } @@ -9579,10 +9473,13 @@ } }, "node_modules/is-weakmap": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.1.tgz", - "integrity": "sha512-NSBR4kH5oVj1Uwvv970ruUkCV7O1mzgVFO4/rev2cLRda9Tm9HrL70ZPut4rOHgY0FNrUu9BCbXA2sdQ+x0chA==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.2.tgz", + "integrity": "sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==", "dev": true, + "engines": { + "node": ">= 0.4" + }, "funding": { "url": "https://github.com/sponsors/ljharb" } @@ -9599,13 +9496,16 @@ } }, "node_modules/is-weakset": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.2.tgz", - "integrity": "sha512-t2yVvttHkQktwnNNmBQ98AhENLdPUTDTE21uPqAQ0ARwQfGeQKRVS0NNurH7bTf7RrvcVn1OOge45CnBeHCSmg==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.3.tgz", + "integrity": "sha512-LvIm3/KWzS9oRFHugab7d+M/GcBXuXX5xZkzPmN+NxihdQlZUQ4dWuSV1xR/sq6upL1TJEDrfBgRepHFdBtSNQ==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.1" + "call-bind": "^1.0.7", + "get-intrinsic": "^1.2.4" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -9891,20 +9791,15 @@ } }, "node_modules/light-my-request": { - "version": "5.11.1", - "resolved": "https://registry.npmjs.org/light-my-request/-/light-my-request-5.11.1.tgz", - "integrity": "sha512-KXAh2m6VRlkWCk2KfmHE7tLBXKh30JE0tXUJY4dNxje4oLmPKUqlUfImiEQZLphx+Z9KTQcVv4DjGnJxkVOIbA==", + "version": "5.12.0", + "resolved": "https://registry.npmjs.org/light-my-request/-/light-my-request-5.12.0.tgz", + "integrity": "sha512-P526OX6E7aeCIfw/9UyJNsAISfcFETghysaWHQAlQYayynShT08MOj4c6fBCvTWBrHXSvqBAKDp3amUPSCQI4w==", "dependencies": { "cookie": "^0.6.0", - "process-warning": "^2.0.0", + "process-warning": "^3.0.0", "set-cookie-parser": "^2.4.1" } }, - "node_modules/light-my-request/node_modules/process-warning": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/process-warning/-/process-warning-2.3.2.tgz", - "integrity": "sha512-n9wh8tvBe5sFmsqlg+XQhaQLumwpqoAUruLwjCopgTmUBjJ/fjtBsJzKleCaIGBOMXYEhp1YfKl4d7rJ5ZKJGA==" - }, "node_modules/lilconfig": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-3.1.1.tgz", @@ -11671,12 +11566,12 @@ } }, "node_modules/next": { - "version": "14.1.2", - "resolved": "https://registry.npmjs.org/next/-/next-14.1.2.tgz", - "integrity": "sha512-p4RfNmopqkzRP1uUyBJnHii+qMg71f2udWhTTZopBB8b3T5QXNzn7yO+LCYHPWZG2kAvEn4l4neyJHqkXvo2wg==", + "version": "14.1.3", + "resolved": "https://registry.npmjs.org/next/-/next-14.1.3.tgz", + "integrity": "sha512-oexgMV2MapI0UIWiXKkixF8J8ORxpy64OuJ/J9oVUmIthXOUCcuVEZX+dtpgq7wIfIqtBwQsKEDXejcjTsan9g==", "peer": true, "dependencies": { - "@next/env": "14.1.2", + "@next/env": "14.1.3", "@swc/helpers": "0.5.2", "busboy": "1.6.0", "caniuse-lite": "^1.0.30001579", @@ -11691,15 +11586,15 @@ "node": ">=18.17.0" }, "optionalDependencies": { - "@next/swc-darwin-arm64": "14.1.2", - "@next/swc-darwin-x64": "14.1.2", - "@next/swc-linux-arm64-gnu": "14.1.2", - "@next/swc-linux-arm64-musl": "14.1.2", - "@next/swc-linux-x64-gnu": "14.1.2", - "@next/swc-linux-x64-musl": "14.1.2", - "@next/swc-win32-arm64-msvc": "14.1.2", - "@next/swc-win32-ia32-msvc": "14.1.2", - "@next/swc-win32-x64-msvc": "14.1.2" + "@next/swc-darwin-arm64": "14.1.3", + "@next/swc-darwin-x64": "14.1.3", + "@next/swc-linux-arm64-gnu": "14.1.3", + "@next/swc-linux-arm64-musl": "14.1.3", + "@next/swc-linux-x64-gnu": "14.1.3", + "@next/swc-linux-x64-musl": "14.1.3", + "@next/swc-win32-arm64-msvc": "14.1.3", + "@next/swc-win32-ia32-msvc": "14.1.3", + "@next/swc-win32-x64-msvc": "14.1.3" }, "peerDependencies": { "@opentelemetry/api": "^1.1.0", @@ -11756,15 +11651,15 @@ } }, "node_modules/next/node_modules/@next/env": { - "version": "14.1.2", - "resolved": "https://registry.npmjs.org/@next/env/-/env-14.1.2.tgz", - "integrity": "sha512-U0iEG+JF86j6qyu330sfPgsMmDVH8vWVmzZadl+an5EU3o5HqdNytOpM+HsFpl58PmhGBTKx3UmM9c+eoLK0mA==", + "version": "14.1.3", + "resolved": "https://registry.npmjs.org/@next/env/-/env-14.1.3.tgz", + "integrity": "sha512-VhgXTvrgeBRxNPjyfBsDIMvgsKDxjlpw4IAUsHCX8Gjl1vtHUYRT3+xfQ/wwvLPDd/6kqfLqk9Pt4+7gysuCKQ==", "peer": true }, "node_modules/next/node_modules/@next/swc-darwin-arm64": { - "version": "14.1.2", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.1.2.tgz", - "integrity": "sha512-E4/clgk0ZrYMo9eMRwP/4IO/cvXF1yEYSnGcdGfH+NYTR8bNFy76TSlc1Vb2rK3oaQY4BVHRpx8f/sMN/D5gNw==", + "version": "14.1.3", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.1.3.tgz", + "integrity": "sha512-LALu0yIBPRiG9ANrD5ncB3pjpO0Gli9ZLhxdOu6ZUNf3x1r3ea1rd9Q+4xxUkGrUXLqKVK9/lDkpYIJaCJ6AHQ==", "cpu": [ "arm64" ], @@ -11778,9 +11673,9 @@ } }, "node_modules/next/node_modules/@next/swc-darwin-x64": { - "version": "14.1.2", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.1.2.tgz", - "integrity": "sha512-j8mEOI+ZM0tU9B/L/OGa6F7d9FXYMkog5OWWuhTWzz3iZ91UKIGGpD/ojTNKuejainDMgbqOBTNnLg0jZywM/g==", + "version": "14.1.3", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.1.3.tgz", + "integrity": "sha512-E/9WQeXxkqw2dfcn5UcjApFgUq73jqNKaE5bysDm58hEUdUGedVrnRhblhJM7HbCZNhtVl0j+6TXsK0PuzXTCg==", "cpu": [ "x64" ], @@ -11794,9 +11689,9 @@ } }, "node_modules/next/node_modules/@next/swc-linux-arm64-gnu": { - "version": "14.1.2", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.1.2.tgz", - "integrity": "sha512-qpRrd5hl6BFTWiFLgHtJmqqQGRMs+ol0MN9pEp0SYoLs3j8OTErPiDMhbKWjMWHGdc2E3kg4RRBV3cSTZiePiQ==", + "version": "14.1.3", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.1.3.tgz", + "integrity": "sha512-USArX9B+3rZSXYLFvgy0NVWQgqh6LHWDmMt38O4lmiJNQcwazeI6xRvSsliDLKt+78KChVacNiwvOMbl6g6BBw==", "cpu": [ "arm64" ], @@ -11810,9 +11705,9 @@ } }, "node_modules/next/node_modules/@next/swc-linux-arm64-musl": { - "version": "14.1.2", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.1.2.tgz", - "integrity": "sha512-HAhvVXAv+wnbj0wztT0YnpgJVoHtw1Mv4Y1R/JJcg5yXSU8FsP2uEGUwjQaqPoD76YSZjuKl32YbJlmPgQbLFw==", + "version": "14.1.3", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.1.3.tgz", + "integrity": "sha512-esk1RkRBLSIEp1qaQXv1+s6ZdYzuVCnDAZySpa62iFTMGTisCyNQmqyCTL9P+cLJ4N9FKCI3ojtSfsyPHJDQNw==", "cpu": [ "arm64" ], @@ -11826,9 +11721,9 @@ } }, "node_modules/next/node_modules/@next/swc-linux-x64-gnu": { - "version": "14.1.2", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.1.2.tgz", - "integrity": "sha512-PCWC312woXLWOXiedi1E+fEw6B/ECP1fMiK1nSoGS2E43o56Z8kq4WeJLbJoufFQGVj5ZOKU3jIVyV//3CI4wQ==", + "version": "14.1.3", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.1.3.tgz", + "integrity": "sha512-8uOgRlYEYiKo0L8YGeS+3TudHVDWDjPVDUcST+z+dUzgBbTEwSSIaSgF/vkcC1T/iwl4QX9iuUyUdQEl0Kxalg==", "cpu": [ "x64" ], @@ -11842,9 +11737,9 @@ } }, "node_modules/next/node_modules/@next/swc-linux-x64-musl": { - "version": "14.1.2", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.1.2.tgz", - "integrity": "sha512-KQSKzdWPNrYZjeTPCsepEpagOzU8Nf3Zzu53X1cLsSY6QlOIkYcSgEihRjsMKyeQW4aSvc+nN5pIpC2pLWNSMA==", + "version": "14.1.3", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.1.3.tgz", + "integrity": "sha512-DX2zqz05ziElLoxskgHasaJBREC5Y9TJcbR2LYqu4r7naff25B4iXkfXWfcp69uD75/0URmmoSgT8JclJtrBoQ==", "cpu": [ "x64" ], @@ -11858,9 +11753,9 @@ } }, "node_modules/next/node_modules/@next/swc-win32-arm64-msvc": { - "version": "14.1.2", - "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.1.2.tgz", - "integrity": "sha512-3b0PouKd09Ulm2T1tjaRnwQj9+UwSsMO680d/sD4XAlm29KkNmVLAEIwWTfb3L+E11Qyw+jdcN3HtbDCg5+vYA==", + "version": "14.1.3", + "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.1.3.tgz", + "integrity": "sha512-HjssFsCdsD4GHstXSQxsi2l70F/5FsRTRQp8xNgmQs15SxUfUJRvSI9qKny/jLkY3gLgiCR3+6A7wzzK0DBlfA==", "cpu": [ "arm64" ], @@ -11874,9 +11769,9 @@ } }, "node_modules/next/node_modules/@next/swc-win32-ia32-msvc": { - "version": "14.1.2", - "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.1.2.tgz", - "integrity": "sha512-CC1gaJY4h+wg6d5r2biggGM6nCFXh/6WEim2VOQI0WrA6easCQi2P2hzWyrU6moQ0g1GOiWzesGc6nn0a92Kgg==", + "version": "14.1.3", + "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.1.3.tgz", + "integrity": "sha512-DRuxD5axfDM1/Ue4VahwSxl1O5rn61hX8/sF0HY8y0iCbpqdxw3rB3QasdHn/LJ6Wb2y5DoWzXcz3L1Cr+Thrw==", "cpu": [ "ia32" ], @@ -11890,9 +11785,9 @@ } }, "node_modules/next/node_modules/@next/swc-win32-x64-msvc": { - "version": "14.1.2", - "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.1.2.tgz", - "integrity": "sha512-pfASwanOd+yP3D80O63DuQffrBySZPuB7wRN0IGSRq/0rDm9p/MvvnLzzgP2kSiLOUklOrFYVax7P6AEzjGykQ==", + "version": "14.1.3", + "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.1.3.tgz", + "integrity": "sha512-uC2DaDoWH7h1P/aJ4Fok3Xiw6P0Lo4ez7NbowW2VGNXw/Xv6tOuLUcxhBYZxsSUJtpeknCi8/fvnSpyCFp4Rcg==", "cpu": [ "x64" ], @@ -12210,9 +12105,9 @@ } }, "node_modules/openai/node_modules/@types/node": { - "version": "18.19.21", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.21.tgz", - "integrity": "sha512-2Q2NeB6BmiTFQi4DHBzncSoq/cJMLDdhPaAoJFnFCyD9a8VPZRf7a1GAwp1Edb7ROaZc5Jz/tnZyL6EsWMRaqw==", + "version": "18.19.22", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.22.tgz", + "integrity": "sha512-p3pDIfuMg/aXBmhkyanPshdfJuX5c5+bQjYLIikPLXAUycEogij/c50n/C+8XOA5L93cU4ZRXtn+dNQGi0IZqQ==", "peer": true, "dependencies": { "undici-types": "~5.26.4" @@ -13935,12 +13830,12 @@ } }, "node_modules/safe-array-concat": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.0.tgz", - "integrity": "sha512-ZdQ0Jeb9Ofti4hbt5lX3T2JcAamT9hfzYU1MNB+z/jaEbB6wfFfPIR/zEORmZqobkCCJhSjodobH6WHNmJ97dg==", + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.2.tgz", + "integrity": "sha512-vj6RsCsWBCf19jIeHEfkRMw8DPiBb+DMXklQ/1SGDHOMlHdPUkZXFQ2YdplS23zESTijAcurb1aSgJA3AgMu1Q==", "dependencies": { - "call-bind": "^1.0.5", - "get-intrinsic": "^1.2.2", + "call-bind": "^1.0.7", + "get-intrinsic": "^1.2.4", "has-symbols": "^1.0.3", "isarray": "^2.0.5" }, @@ -14082,16 +13977,16 @@ "integrity": "sha512-RVnVQxTXuerk653XfuliOxBP81Sf0+qfQE73LIYKcyMYHG94AuH0kgrQpRDuTZnSmjpysHmzxJXKNfa6PjFhyQ==" }, "node_modules/set-function-length": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.1.tgz", - "integrity": "sha512-j4t6ccc+VsKwYHso+kElc5neZpjtq9EnRICFZtWyBsLojhmeF/ZBd/elqm22WJh/BziDe/SBiOeAt0m2mfLD0g==", + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", + "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", "dependencies": { - "define-data-property": "^1.1.2", + "define-data-property": "^1.1.4", "es-errors": "^1.3.0", "function-bind": "^1.1.2", - "get-intrinsic": "^1.2.3", + "get-intrinsic": "^1.2.4", "gopd": "^1.0.1", - "has-property-descriptors": "^1.0.1" + "has-property-descriptors": "^1.0.2" }, "engines": { "node": ">= 0.4" @@ -15175,9 +15070,9 @@ } }, "node_modules/ts-api-utils": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.2.1.tgz", - "integrity": "sha512-RIYA36cJn2WiH9Hy77hdF9r7oEwxAtB/TS9/S4Qd90Ap4z5FSiin5zEiTL44OII1Y3IIlEvxwxFUVgrHSZ/UpA==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.3.0.tgz", + "integrity": "sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ==", "dev": true, "engines": { "node": ">=16" @@ -16422,15 +16317,18 @@ } }, "node_modules/which-collection": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.1.tgz", - "integrity": "sha512-W8xeTUwaln8i3K/cY1nGXzdnVZlidBcagyNFtBdD5kxnb4TvGKR7FfSIS3mYpwWS1QUCutfKz8IY8RjftB0+1A==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.2.tgz", + "integrity": "sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==", "dev": true, "dependencies": { - "is-map": "^2.0.1", - "is-set": "^2.0.1", - "is-weakmap": "^2.0.1", - "is-weakset": "^2.0.1" + "is-map": "^2.0.3", + "is-set": "^2.0.3", + "is-weakmap": "^2.0.2", + "is-weakset": "^2.0.3" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -16789,6 +16687,15 @@ "redis": ">=4.6" } }, + "packages/cache-handler/node_modules/@types/node": { + "version": "20.11.25", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.25.tgz", + "integrity": "sha512-TBHyJxk2b7HceLVGFcpAUjsa5zIdsPWlR6XHfyGzd0SFu+/NFgQgMAl96MSDZgQDvJAvV6BKsFOrt6zIL09JDw==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "packages/diffscribe": { "version": "0.2.3", "license": "MIT", @@ -16807,6 +16714,15 @@ "openai": "^4.12.3" } }, + "packages/diffscribe/node_modules/@types/node": { + "version": "20.11.25", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.25.tgz", + "integrity": "sha512-TBHyJxk2b7HceLVGFcpAUjsa5zIdsPWlR6XHfyGzd0SFu+/NFgQgMAl96MSDZgQDvJAvV6BKsFOrt6zIL09JDw==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "packages/json-replacer-reviver": { "name": "@neshca/json-replacer-reviver", "version": "1.1.2", @@ -16820,6 +16736,15 @@ "typescript": "5.3.3" } }, + "packages/json-replacer-reviver/node_modules/@types/node": { + "version": "20.11.25", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.25.tgz", + "integrity": "sha512-TBHyJxk2b7HceLVGFcpAUjsa5zIdsPWlR6XHfyGzd0SFu+/NFgQgMAl96MSDZgQDvJAvV6BKsFOrt6zIL09JDw==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "packages/server": { "name": "@neshca/server", "version": "1.0.0", @@ -16841,6 +16766,15 @@ "tsx": "4.7.1", "typescript": "5.3.3" } + }, + "packages/server/node_modules/@types/node": { + "version": "20.11.25", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.25.tgz", + "integrity": "sha512-TBHyJxk2b7HceLVGFcpAUjsa5zIdsPWlR6XHfyGzd0SFu+/NFgQgMAl96MSDZgQDvJAvV6BKsFOrt6zIL09JDw==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } } } } diff --git a/packages/cache-handler/src/handlers/redis-stack.ts b/packages/cache-handler/src/handlers/redis-stack.ts index df87abc9..e6cd1909 100644 --- a/packages/cache-handler/src/handlers/redis-stack.ts +++ b/packages/cache-handler/src/handlers/redis-stack.ts @@ -97,17 +97,32 @@ export default async function createHandler({ async revalidateTag(tag) { assertClientIsReady(); - const query = await client.ft.search('idx:tags', `@tag:(${sanitizeTag(tag)})`); + let from = 0; - const keysToDelete = query.documents.map((document) => document.id); + const querySize = 25; - if (keysToDelete.length === 0) { - return; + const keysToDelete: string[] = []; + + while (true) { + const { documents } = await client.ft.search('idx:tags', `@tag:(${sanitizeTag(tag)})`, { + LIMIT: { from, size: querySize }, + TIMEOUT: timeoutMs, + }); + + for (const { id } of documents) { + keysToDelete.push(id); + } + + if (documents.length < querySize) { + break; + } + + from += querySize; } const options = getTimeoutRedisCommandOptions(timeoutMs); - await client.del(options, keysToDelete); + await client.unlink(options, keysToDelete); }, }; } diff --git a/packages/cache-handler/src/handlers/redis-strings.ts b/packages/cache-handler/src/handlers/redis-strings.ts index 9e3bbba3..6f30ab47 100644 --- a/packages/cache-handler/src/handlers/redis-strings.ts +++ b/packages/cache-handler/src/handlers/redis-strings.ts @@ -106,7 +106,7 @@ export default function createHandler({ const options = getTimeoutRedisCommandOptions(timeoutMs); - const deleteKeysOperation = client.del(options, keysToDelete); + const deleteKeysOperation = client.unlink(options, keysToDelete); const updateTagsOperation = client.hDel(options, keyPrefix + sharedTagsKey, tagsToDelete); From 34ba10998539dc703efcaf16025453e7ce922477 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Mon, 11 Mar 2024 05:12:24 +0300 Subject: [PATCH 153/458] Version Packages (#403) Co-authored-by: github-actions[bot] --- .changeset/six-paws-kick.md | 10 ---------- packages/cache-handler/CHANGELOG.md | 11 +++++++++++ packages/cache-handler/package.json | 2 +- 3 files changed, 12 insertions(+), 11 deletions(-) delete mode 100644 .changeset/six-paws-kick.md diff --git a/.changeset/six-paws-kick.md b/.changeset/six-paws-kick.md deleted file mode 100644 index d9b06fef..00000000 --- a/.changeset/six-paws-kick.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -'@neshca/cache-handler': patch ---- - -Fix the redis-stack Handler `revalidateTag` method. - -#### Changes - -- Add pagination to tags search -- Replace `del` operation with `unlink` diff --git a/packages/cache-handler/CHANGELOG.md b/packages/cache-handler/CHANGELOG.md index 95b81710..2cd1328c 100644 --- a/packages/cache-handler/CHANGELOG.md +++ b/packages/cache-handler/CHANGELOG.md @@ -1,5 +1,16 @@ # @neshca/cache-handler +## 1.0.7 + +### Patch Changes + +- e92658a: Fix the redis-stack Handler `revalidateTag` method. + + #### Changes + + - Add pagination to tags search + - Replace `del` operation with `unlink` + ## 1.0.6 ### Patch Changes diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 53f3ed41..4cd8b160 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -1,6 +1,6 @@ { "name": "@neshca/cache-handler", - "version": "1.0.6", + "version": "1.0.7", "description": "Next.js self-hosting simplified.", "keywords": [ "cache", From b7224166b3330c76e86f259ceed0e3fba8fe8a9c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 12 Mar 2024 00:15:12 +0300 Subject: [PATCH 154/458] Bump the eslint group with 2 updates (#405) Bumps the eslint group with 2 updates: [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) and [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser). Updates `@typescript-eslint/eslint-plugin` from 7.1.1 to 7.2.0 - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v7.2.0/packages/eslint-plugin) Updates `@typescript-eslint/parser` from 7.1.1 to 7.2.0 - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v7.2.0/packages/parser) --- updated-dependencies: - dependency-name: "@typescript-eslint/eslint-plugin" dependency-type: direct:development update-type: version-update:semver-minor dependency-group: eslint - dependency-name: "@typescript-eslint/parser" dependency-type: direct:development update-type: version-update:semver-minor dependency-group: eslint ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- internal/eslint-config/package.json | 4 +- package-lock.json | 90 ++++++++++++++--------------- 2 files changed, 47 insertions(+), 47 deletions(-) diff --git a/internal/eslint-config/package.json b/internal/eslint-config/package.json index 6fd6a1ae..3fb25eb9 100644 --- a/internal/eslint-config/package.json +++ b/internal/eslint-config/package.json @@ -6,8 +6,8 @@ "next.js" ], "devDependencies": { - "@typescript-eslint/eslint-plugin": "7.1.1", - "@typescript-eslint/parser": "7.1.1", + "@typescript-eslint/eslint-plugin": "7.2.0", + "@typescript-eslint/parser": "7.2.0", "@vercel/style-guide": "6.0.0", "eslint-config-prettier": "9.1.0", "eslint-config-turbo": "1.12.5", diff --git a/package-lock.json b/package-lock.json index 80146413..4918ff7a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -458,8 +458,8 @@ "name": "@repo/eslint-config", "version": "0.0.0", "devDependencies": { - "@typescript-eslint/eslint-plugin": "7.1.1", - "@typescript-eslint/parser": "7.1.1", + "@typescript-eslint/eslint-plugin": "7.2.0", + "@typescript-eslint/parser": "7.2.0", "@vercel/style-guide": "6.0.0", "eslint-config-prettier": "9.1.0", "eslint-config-turbo": "1.12.5", @@ -3618,16 +3618,16 @@ "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.1.1.tgz", - "integrity": "sha512-zioDz623d0RHNhvx0eesUmGfIjzrk18nSBC8xewepKXbBvN/7c1qImV7Hg8TI1URTxKax7/zxfxj3Uph8Chcuw==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.2.0.tgz", + "integrity": "sha512-mdekAHOqS9UjlmyF/LSs6AIEvfceV749GFxoBAjwAv0nkevfKHWQFDMcBZWUiIC5ft6ePWivXoS36aKQ0Cy3sw==", "dev": true, "dependencies": { "@eslint-community/regexpp": "^4.5.1", - "@typescript-eslint/scope-manager": "7.1.1", - "@typescript-eslint/type-utils": "7.1.1", - "@typescript-eslint/utils": "7.1.1", - "@typescript-eslint/visitor-keys": "7.1.1", + "@typescript-eslint/scope-manager": "7.2.0", + "@typescript-eslint/type-utils": "7.2.0", + "@typescript-eslint/utils": "7.2.0", + "@typescript-eslint/visitor-keys": "7.2.0", "debug": "^4.3.4", "graphemer": "^1.4.0", "ignore": "^5.2.4", @@ -3653,15 +3653,15 @@ } }, "node_modules/@typescript-eslint/parser": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-7.1.1.tgz", - "integrity": "sha512-ZWUFyL0z04R1nAEgr9e79YtV5LbafdOtN7yapNbn1ansMyaegl2D4bL7vHoJ4HPSc4CaLwuCVas8CVuneKzplQ==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-7.2.0.tgz", + "integrity": "sha512-5FKsVcHTk6TafQKQbuIVkXq58Fnbkd2wDL4LB7AURN7RUOu1utVP+G8+6u3ZhEroW3DF6hyo3ZEXxgKgp4KeCg==", "dev": true, "dependencies": { - "@typescript-eslint/scope-manager": "7.1.1", - "@typescript-eslint/types": "7.1.1", - "@typescript-eslint/typescript-estree": "7.1.1", - "@typescript-eslint/visitor-keys": "7.1.1", + "@typescript-eslint/scope-manager": "7.2.0", + "@typescript-eslint/types": "7.2.0", + "@typescript-eslint/typescript-estree": "7.2.0", + "@typescript-eslint/visitor-keys": "7.2.0", "debug": "^4.3.4" }, "engines": { @@ -3681,13 +3681,13 @@ } }, "node_modules/@typescript-eslint/scope-manager": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-7.1.1.tgz", - "integrity": "sha512-cirZpA8bJMRb4WZ+rO6+mnOJrGFDd38WoXCEI57+CYBqta8Yc8aJym2i7vyqLL1vVYljgw0X27axkUXz32T8TA==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-7.2.0.tgz", + "integrity": "sha512-Qh976RbQM/fYtjx9hs4XkayYujB/aPwglw2choHmf3zBjB4qOywWSdt9+KLRdHubGcoSwBnXUH2sR3hkyaERRg==", "dev": true, "dependencies": { - "@typescript-eslint/types": "7.1.1", - "@typescript-eslint/visitor-keys": "7.1.1" + "@typescript-eslint/types": "7.2.0", + "@typescript-eslint/visitor-keys": "7.2.0" }, "engines": { "node": "^16.0.0 || >=18.0.0" @@ -3698,13 +3698,13 @@ } }, "node_modules/@typescript-eslint/type-utils": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-7.1.1.tgz", - "integrity": "sha512-5r4RKze6XHEEhlZnJtR3GYeCh1IueUHdbrukV2KSlLXaTjuSfeVF8mZUVPLovidCuZfbVjfhi4c0DNSa/Rdg5g==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-7.2.0.tgz", + "integrity": "sha512-xHi51adBHo9O9330J8GQYQwrKBqbIPJGZZVQTHHmy200hvkLZFWJIFtAG/7IYTWUyun6DE6w5InDReePJYJlJA==", "dev": true, "dependencies": { - "@typescript-eslint/typescript-estree": "7.1.1", - "@typescript-eslint/utils": "7.1.1", + "@typescript-eslint/typescript-estree": "7.2.0", + "@typescript-eslint/utils": "7.2.0", "debug": "^4.3.4", "ts-api-utils": "^1.0.1" }, @@ -3725,9 +3725,9 @@ } }, "node_modules/@typescript-eslint/types": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.1.1.tgz", - "integrity": "sha512-KhewzrlRMrgeKm1U9bh2z5aoL4s7K3tK5DwHDn8MHv0yQfWFz/0ZR6trrIHHa5CsF83j/GgHqzdbzCXJ3crx0Q==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.2.0.tgz", + "integrity": "sha512-XFtUHPI/abFhm4cbCDc5Ykc8npOKBSJePY3a3s+lwumt7XWJuzP5cZcfZ610MIPHjQjNsOLlYK8ASPaNG8UiyA==", "dev": true, "engines": { "node": "^16.0.0 || >=18.0.0" @@ -3738,13 +3738,13 @@ } }, "node_modules/@typescript-eslint/typescript-estree": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-7.1.1.tgz", - "integrity": "sha512-9ZOncVSfr+sMXVxxca2OJOPagRwT0u/UHikM2Rd6L/aB+kL/QAuTnsv6MeXtjzCJYb8PzrXarypSGIPx3Jemxw==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-7.2.0.tgz", + "integrity": "sha512-cyxS5WQQCoBwSakpMrvMXuMDEbhOo9bNHHrNcEWis6XHx6KF518tkF1wBvKIn/tpq5ZpUYK7Bdklu8qY0MsFIA==", "dev": true, "dependencies": { - "@typescript-eslint/types": "7.1.1", - "@typescript-eslint/visitor-keys": "7.1.1", + "@typescript-eslint/types": "7.2.0", + "@typescript-eslint/visitor-keys": "7.2.0", "debug": "^4.3.4", "globby": "^11.1.0", "is-glob": "^4.0.3", @@ -3790,17 +3790,17 @@ } }, "node_modules/@typescript-eslint/utils": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-7.1.1.tgz", - "integrity": "sha512-thOXM89xA03xAE0lW7alstvnyoBUbBX38YtY+zAUcpRPcq9EIhXPuJ0YTv948MbzmKh6e1AUszn5cBFK49Umqg==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-7.2.0.tgz", + "integrity": "sha512-YfHpnMAGb1Eekpm3XRK8hcMwGLGsnT6L+7b2XyRv6ouDuJU1tZir1GS2i0+VXRatMwSI1/UfcyPe53ADkU+IuA==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.4.0", "@types/json-schema": "^7.0.12", "@types/semver": "^7.5.0", - "@typescript-eslint/scope-manager": "7.1.1", - "@typescript-eslint/types": "7.1.1", - "@typescript-eslint/typescript-estree": "7.1.1", + "@typescript-eslint/scope-manager": "7.2.0", + "@typescript-eslint/types": "7.2.0", + "@typescript-eslint/typescript-estree": "7.2.0", "semver": "^7.5.4" }, "engines": { @@ -3815,12 +3815,12 @@ } }, "node_modules/@typescript-eslint/visitor-keys": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-7.1.1.tgz", - "integrity": "sha512-yTdHDQxY7cSoCcAtiBzVzxleJhkGB9NncSIyMYe2+OGON1ZsP9zOPws/Pqgopa65jvknOjlk/w7ulPlZ78PiLQ==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-7.2.0.tgz", + "integrity": "sha512-c6EIQRHhcpl6+tO8EMR+kjkkV+ugUNXOmeASA1rlzkd8EPIriavpWoiEz1HR/VLhbVIdhqnV6E7JZm00cBDx2A==", "dev": true, "dependencies": { - "@typescript-eslint/types": "7.1.1", + "@typescript-eslint/types": "7.2.0", "eslint-visitor-keys": "^3.4.1" }, "engines": { @@ -16667,7 +16667,7 @@ }, "packages/cache-handler": { "name": "@neshca/cache-handler", - "version": "1.0.6", + "version": "1.0.7", "license": "MIT", "dependencies": { "lru-cache": "10.2.0" From 5fc850c3e2335322048c6c311dd02e8c277b194c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 12 Mar 2024 01:40:15 +0300 Subject: [PATCH 155/458] Bump dotenv-cli from 7.4.0 to 7.4.1 (#406) Bumps [dotenv-cli](https://github.com/entropitor/dotenv-cli) from 7.4.0 to 7.4.1. - [Release notes](https://github.com/entropitor/dotenv-cli/releases) - [Commits](https://github.com/entropitor/dotenv-cli/compare/v7.4.0...v7.4.1) --- updated-dependencies: - dependency-name: dotenv-cli dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- package-lock.json | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 1b55a3e1..1107c592 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -32,7 +32,7 @@ "@types/react": "18.2.64", "@types/react-dom": "18.2.21", "axios": "1.6.7", - "dotenv-cli": "7.4.0", + "dotenv-cli": "7.4.1", "eslint": "8.57.0", "fastify": "4.26.2", "pm2": "5.3.1", diff --git a/package-lock.json b/package-lock.json index 4918ff7a..c0890f9b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -52,7 +52,7 @@ "@types/react": "18.2.64", "@types/react-dom": "18.2.21", "axios": "1.6.7", - "dotenv-cli": "7.4.0", + "dotenv-cli": "7.4.1", "eslint": "8.57.0", "fastify": "4.26.2", "pm2": "5.3.1", @@ -5934,9 +5934,9 @@ } }, "node_modules/dotenv-cli": { - "version": "7.4.0", - "resolved": "https://registry.npmjs.org/dotenv-cli/-/dotenv-cli-7.4.0.tgz", - "integrity": "sha512-fZGFOGCC5rEz1OJ0Pp+1LN8y78ClMcyXDmBEmjvJwqCqZVsPHcQ85bLCh5hZ4Bqotw4dptXOLvvw0vxm2MD30g==", + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/dotenv-cli/-/dotenv-cli-7.4.1.tgz", + "integrity": "sha512-fE1aywjRrWGxV3miaiUr3d2zC/VAiuzEGghi+QzgIA9fEf/M5hLMaRSXb4IxbUAwGmaLi0IozdZddnVU96acag==", "dev": true, "dependencies": { "cross-spawn": "^7.0.3", From ce958c0a3a340d145c03fe57b27ad68fd5e11c3d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 13 Mar 2024 08:18:42 +0300 Subject: [PATCH 156/458] Bump @biomejs/biome from 1.6.0 to 1.6.1 (#408) Bumps [@biomejs/biome](https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome) from 1.6.0 to 1.6.1. - [Release notes](https://github.com/biomejs/biome/releases) - [Changelog](https://github.com/biomejs/biome/blob/main/CHANGELOG.md) - [Commits](https://github.com/biomejs/biome/commits/cli/v1.6.1/packages/@biomejs/biome) --- updated-dependencies: - dependency-name: "@biomejs/biome" dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 72 +++++++++++++++++++++++------------------------ package.json | 2 +- 2 files changed, 37 insertions(+), 37 deletions(-) diff --git a/package-lock.json b/package-lock.json index c0890f9b..efd3e958 100644 --- a/package-lock.json +++ b/package-lock.json @@ -20,7 +20,7 @@ }, "devDependencies": { "@actions/core": "1.10.1", - "@biomejs/biome": "1.6.0", + "@biomejs/biome": "1.6.1", "@repo/prettier-config": "*", "@repo/typescript-config": "*", "diffscribe": "*", @@ -1161,9 +1161,9 @@ } }, "node_modules/@biomejs/biome": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/@biomejs/biome/-/biome-1.6.0.tgz", - "integrity": "sha512-hvP8K1+CV8qc9eNdXtPwzScVxFSHB448CPKSqX6+8IW8G7bbhBVKGC80BowExJN5+vu+kzsj4xkWa780MAOlJw==", + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/@biomejs/biome/-/biome-1.6.1.tgz", + "integrity": "sha512-SILQvA2S0XeaOuu1bivv6fQmMo7zMfr2xqDEN+Sz78pGbAKZnGmg0emsXjQWoBY/RVm9kPCgX+aGEpZZTYaM7w==", "dev": true, "hasInstallScript": true, "bin": { @@ -1177,20 +1177,20 @@ "url": "https://opencollective.com/biome" }, "optionalDependencies": { - "@biomejs/cli-darwin-arm64": "1.6.0", - "@biomejs/cli-darwin-x64": "1.6.0", - "@biomejs/cli-linux-arm64": "1.6.0", - "@biomejs/cli-linux-arm64-musl": "1.6.0", - "@biomejs/cli-linux-x64": "1.6.0", - "@biomejs/cli-linux-x64-musl": "1.6.0", - "@biomejs/cli-win32-arm64": "1.6.0", - "@biomejs/cli-win32-x64": "1.6.0" + "@biomejs/cli-darwin-arm64": "1.6.1", + "@biomejs/cli-darwin-x64": "1.6.1", + "@biomejs/cli-linux-arm64": "1.6.1", + "@biomejs/cli-linux-arm64-musl": "1.6.1", + "@biomejs/cli-linux-x64": "1.6.1", + "@biomejs/cli-linux-x64-musl": "1.6.1", + "@biomejs/cli-win32-arm64": "1.6.1", + "@biomejs/cli-win32-x64": "1.6.1" } }, "node_modules/@biomejs/cli-darwin-arm64": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-1.6.0.tgz", - "integrity": "sha512-K1Fjqye5pt+Ua+seC7V/2bFjfnqOaEOcQbBQSiiefB/VPNOb6lA5NFIfJ1PskTA3JrMXE1k7iqKQn56qrKFS6A==", + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-1.6.1.tgz", + "integrity": "sha512-KlvY00iB9T/vFi4m/GXxEyYkYnYy6aw06uapzUIIdiMMj7I/pmZu7CsZlzWdekVD0j+SsQbxdZMsb0wPhnRSsg==", "cpu": [ "arm64" ], @@ -1204,9 +1204,9 @@ } }, "node_modules/@biomejs/cli-darwin-x64": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-x64/-/cli-darwin-x64-1.6.0.tgz", - "integrity": "sha512-CjEALu6vN9RbcfhaBDoj481mesUIsUjxgQn+/kiMCea+Paypqslhez1I7OwRBJnkzz+Pa+PXdABd7S30eyy6+Q==", + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-x64/-/cli-darwin-x64-1.6.1.tgz", + "integrity": "sha512-jP4E8TXaQX5e3nvRJSzB+qicZrdIDCrjR0sSb1DaDTx4JPZH5WXq/BlTqAyWi3IijM+IYMjWqAAK4kOHsSCzxw==", "cpu": [ "x64" ], @@ -1220,9 +1220,9 @@ } }, "node_modules/@biomejs/cli-linux-arm64": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64/-/cli-linux-arm64-1.6.0.tgz", - "integrity": "sha512-32LVrC7dAgQT39YZ0ieO/VzzpAflozs9mW5K0oKNef7S4ocCdk89E98eXApxOdei0JTf3vfseDCl1AUIp6MwJw==", + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64/-/cli-linux-arm64-1.6.1.tgz", + "integrity": "sha512-nxD1UyX3bWSl/RSKlib/JsOmt+652/9yieogdSC/UTLgVCZYOF7u8L/LK7kAa0Y4nA8zSPavAQTgko7mHC2ObA==", "cpu": [ "arm64" ], @@ -1236,9 +1236,9 @@ } }, "node_modules/@biomejs/cli-linux-arm64-musl": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-1.6.0.tgz", - "integrity": "sha512-prww6AUuJ+IO/GziN3WjtGM/DNOVuPFxqWrK97wKTZygEDdA+o1qHUN2HeCkSyk084xnzbMSbls5xscAKAn43A==", + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-1.6.1.tgz", + "integrity": "sha512-YdkDgFecdHJg7PJxAMaZIixVWGB6St4yH08BHagO0fEhNNiY8cAKEVo2mcXlsnEiTMpeSEAY9VxLUrVT3IVxpw==", "cpu": [ "arm64" ], @@ -1252,9 +1252,9 @@ } }, "node_modules/@biomejs/cli-linux-x64": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64/-/cli-linux-x64-1.6.0.tgz", - "integrity": "sha512-b6mWu9Cu4w5B3K46wq9SlxKEZEEL6II/6HFNAuZ4YL8mOeQ0FTMU+wNMJFKkmkSE2zvim3xwW3PknmbLKbe3Mg==", + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64/-/cli-linux-x64-1.6.1.tgz", + "integrity": "sha512-BYAzenlMF3QdngjNFw9QVBXKGNzeecqwF3pwDgUGEvU7OJpn1/lyVkJVxYPtVGRNdjQ9e6l/s8NjKuBpW/ZR4Q==", "cpu": [ "x64" ], @@ -1268,9 +1268,9 @@ } }, "node_modules/@biomejs/cli-linux-x64-musl": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-1.6.0.tgz", - "integrity": "sha512-NwitWeUKCy8G/rr+rgHPYirnrsOjJEJBWODdaRzweeFNcJjvO6de6AmNdSJzsewzLEaxjOWyoXU03MdzbGz/6Q==", + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-1.6.1.tgz", + "integrity": "sha512-aSISIDmxq04NNy7tm4x9rBk2vH0ub2VDIE4outEmdC2LBtEJoINiphlZagx/FvjbsqUfygent9QUSn0oREnAXg==", "cpu": [ "x64" ], @@ -1284,9 +1284,9 @@ } }, "node_modules/@biomejs/cli-win32-arm64": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-arm64/-/cli-win32-arm64-1.6.0.tgz", - "integrity": "sha512-DlNOL6mG+76iZS1gL/UiuMme7jnt+auzo2+u0aUq6UXYsb75juchwlnVLy2UV5CQjVBRB8+RM+KVoXRZ8NlBjQ==", + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-arm64/-/cli-win32-arm64-1.6.1.tgz", + "integrity": "sha512-/eCHQKZ1kEawUpkSuXq4urtxMsD1P1678OPG3zNKt3ru16AqqspLdO3jzBe3k74xCPYnQ36e9Yqc97Mo0qgPtg==", "cpu": [ "arm64" ], @@ -1300,9 +1300,9 @@ } }, "node_modules/@biomejs/cli-win32-x64": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-x64/-/cli-win32-x64-1.6.0.tgz", - "integrity": "sha512-sXBcXIOGuG8/XcHqmnkhLIs0oy6Dp+TkH4Alr4WH/P8mNsp5GcStI/ZwbEiEoxA0P3Fi+oUppQ6srxaY2rSCHg==", + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-x64/-/cli-win32-x64-1.6.1.tgz", + "integrity": "sha512-5TUZbzBwnDLFxLVGEPsorNi6eC2Gt+z4Oei9Qvq0M/4c4/mjZ96ABgwao/tMxf4ZBr/qyy2YdvF+gX9Rc+xC0A==", "cpu": [ "x64" ], diff --git a/package.json b/package.json index 3853533b..f4627f70 100644 --- a/package.json +++ b/package.json @@ -38,7 +38,7 @@ }, "devDependencies": { "@actions/core": "1.10.1", - "@biomejs/biome": "1.6.0", + "@biomejs/biome": "1.6.1", "@repo/prettier-config": "*", "@repo/typescript-config": "*", "diffscribe": "*", From 7d2448e528b82ca449438d7b48b0f0a98d082798 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 13 Mar 2024 11:14:46 +0300 Subject: [PATCH 157/458] Bump the definitely-typed group with 2 updates (#407) Bumps the definitely-typed group with 2 updates: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) and [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react). Updates `@types/node` from 20.11.25 to 20.11.26 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) Updates `@types/react` from 18.2.64 to 18.2.65 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react) --- updated-dependencies: - dependency-name: "@types/node" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed - dependency-name: "@types/react" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 4 +- docs/cache-handler-docs/package.json | 4 +- internal/backend/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 123 ++++---------------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 10 files changed, 36 insertions(+), 109 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 1107c592..0b55df34 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -28,8 +28,8 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.5", - "@types/node": "20.11.25", - "@types/react": "18.2.64", + "@types/node": "20.11.26", + "@types/react": "18.2.65", "@types/react-dom": "18.2.21", "axios": "1.6.7", "dotenv-cli": "7.4.1", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index df09c1d5..99d4308b 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -22,8 +22,8 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.5", - "@types/node": "20.11.25", - "@types/react": "18.2.64", + "@types/node": "20.11.26", + "@types/react": "18.2.65", "@types/react-dom": "18.2.21", "eslint": "8.57.0", "typescript": "5.3.3" diff --git a/internal/backend/package.json b/internal/backend/package.json index db826fb9..855d2276 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.25", + "@types/node": "20.11.26", "pino-pretty": "10.3.1", "rimraf": "5.0.5", "tsx": "4.7.1", diff --git a/internal/next-common/package.json b/internal/next-common/package.json index 16efb6d0..4ef870e6 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.25", + "@types/node": "20.11.26", "rimraf": "5.0.5", "typescript": "5.3.3" } diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index 1dc2e47b..991aa0a9 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -16,7 +16,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.25", + "@types/node": "20.11.26", "rimraf": "5.0.5", "typescript": "5.3.3" } diff --git a/package-lock.json b/package-lock.json index efd3e958..14bc422a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -48,8 +48,8 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.5", - "@types/node": "20.11.25", - "@types/react": "18.2.64", + "@types/node": "20.11.26", + "@types/react": "18.2.65", "@types/react-dom": "18.2.21", "axios": "1.6.7", "dotenv-cli": "7.4.1", @@ -62,15 +62,6 @@ "typescript": "5.3.3" } }, - "apps/cache-testing/node_modules/@types/node": { - "version": "20.11.25", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.25.tgz", - "integrity": "sha512-TBHyJxk2b7HceLVGFcpAUjsa5zIdsPWlR6XHfyGzd0SFu+/NFgQgMAl96MSDZgQDvJAvV6BKsFOrt6zIL09JDw==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "apps/cache-testing/node_modules/next": { "version": "14.2.0-canary.4", "resolved": "https://registry.npmjs.org/next/-/next-14.2.0-canary.4.tgz", @@ -130,8 +121,8 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.5", - "@types/node": "20.11.25", - "@types/react": "18.2.64", + "@types/node": "20.11.26", + "@types/react": "18.2.65", "@types/react-dom": "18.2.21", "eslint": "8.57.0", "typescript": "5.3.3" @@ -294,15 +285,6 @@ "tslib": "^2.4.0" } }, - "docs/cache-handler-docs/node_modules/@types/node": { - "version": "20.11.25", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.25.tgz", - "integrity": "sha512-TBHyJxk2b7HceLVGFcpAUjsa5zIdsPWlR6XHfyGzd0SFu+/NFgQgMAl96MSDZgQDvJAvV6BKsFOrt6zIL09JDw==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "docs/cache-handler-docs/node_modules/next": { "version": "14.1.0", "resolved": "https://registry.npmjs.org/next/-/next-14.1.0.tgz", @@ -438,22 +420,13 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.25", + "@types/node": "20.11.26", "pino-pretty": "10.3.1", "rimraf": "5.0.5", "tsx": "4.7.1", "typescript": "5.3.3" } }, - "internal/backend/node_modules/@types/node": { - "version": "20.11.25", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.25.tgz", - "integrity": "sha512-TBHyJxk2b7HceLVGFcpAUjsa5zIdsPWlR6XHfyGzd0SFu+/NFgQgMAl96MSDZgQDvJAvV6BKsFOrt6zIL09JDw==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "internal/eslint-config": { "name": "@repo/eslint-config", "version": "0.0.0", @@ -562,20 +535,11 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.25", + "@types/node": "20.11.26", "rimraf": "5.0.5", "typescript": "5.3.3" } }, - "internal/next-common/node_modules/@types/node": { - "version": "20.11.25", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.25.tgz", - "integrity": "sha512-TBHyJxk2b7HceLVGFcpAUjsa5zIdsPWlR6XHfyGzd0SFu+/NFgQgMAl96MSDZgQDvJAvV6BKsFOrt6zIL09JDw==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "internal/next-common/node_modules/next": { "version": "14.2.0-canary.4", "resolved": "https://registry.npmjs.org/next/-/next-14.2.0-canary.4.tgz", @@ -631,20 +595,11 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.25", + "@types/node": "20.11.26", "rimraf": "5.0.5", "typescript": "5.3.3" } }, - "internal/next-lru-cache/node_modules/@types/node": { - "version": "20.11.25", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.25.tgz", - "integrity": "sha512-TBHyJxk2b7HceLVGFcpAUjsa5zIdsPWlR6XHfyGzd0SFu+/NFgQgMAl96MSDZgQDvJAvV6BKsFOrt6zIL09JDw==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "internal/prettier-config": { "name": "@repo/prettier-config", "version": "0.0.0", @@ -2213,6 +2168,11 @@ "fs-extra": "^8.1.0" } }, + "node_modules/@manypkg/find-root/node_modules/@types/node": { + "version": "12.20.55", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", + "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" + }, "node_modules/@manypkg/find-root/node_modules/fs-extra": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", @@ -3559,9 +3519,12 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "12.20.55", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", - "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" + "version": "20.11.26", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.26.tgz", + "integrity": "sha512-YwOMmyhNnAWijOBQweOJnQPl068Oqd4K3OFbTc6AHJwzweUwwWG3GIFY74OKks2PJUDkQPeddOQES9mLn1CTEQ==", + "dependencies": { + "undici-types": "~5.26.4" + } }, "node_modules/@types/node-fetch": { "version": "2.6.11", @@ -3584,9 +3547,9 @@ "integrity": "sha512-ga8y9v9uyeiLdpKddhxYQkxNDrfvuPrlFb0N1qnZZByvcElJaXthF1UhvCh9TLWJBEHeNtdnbysW7Y6Uq8CVng==" }, "node_modules/@types/react": { - "version": "18.2.64", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.64.tgz", - "integrity": "sha512-MlmPvHgjj2p3vZaxbQgFUQFvD8QiZwACfGqEdDSWou5yISWxDQ4/74nCAwsUiX7UFLKZz3BbVSPj+YxeoGGCfg==", + "version": "18.2.65", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.65.tgz", + "integrity": "sha512-98TsY0aW4jqx/3RqsUXwMDZSWR1Z4CUlJNue8ueS2/wcxZOsz4xmW1X8ieaWVRHcmmQM3R8xVA4XWB3dJnWwDQ==", "dependencies": { "@types/prop-types": "*", "@types/scheduler": "*", @@ -16676,7 +16639,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.25", + "@types/node": "20.11.26", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.1", @@ -16687,15 +16650,6 @@ "redis": ">=4.6" } }, - "packages/cache-handler/node_modules/@types/node": { - "version": "20.11.25", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.25.tgz", - "integrity": "sha512-TBHyJxk2b7HceLVGFcpAUjsa5zIdsPWlR6XHfyGzd0SFu+/NFgQgMAl96MSDZgQDvJAvV6BKsFOrt6zIL09JDw==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "packages/diffscribe": { "version": "0.2.3", "license": "MIT", @@ -16704,7 +16658,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.25", + "@types/node": "20.11.26", "rimraf": "5.0.5", "tsup": "8.0.2", "typescript": "5.3.3" @@ -16714,37 +16668,19 @@ "openai": "^4.12.3" } }, - "packages/diffscribe/node_modules/@types/node": { - "version": "20.11.25", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.25.tgz", - "integrity": "sha512-TBHyJxk2b7HceLVGFcpAUjsa5zIdsPWlR6XHfyGzd0SFu+/NFgQgMAl96MSDZgQDvJAvV6BKsFOrt6zIL09JDw==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "packages/json-replacer-reviver": { "name": "@neshca/json-replacer-reviver", "version": "1.1.2", "license": "MIT", "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.25", + "@types/node": "20.11.26", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.1", "typescript": "5.3.3" } }, - "packages/json-replacer-reviver/node_modules/@types/node": { - "version": "20.11.25", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.25.tgz", - "integrity": "sha512-TBHyJxk2b7HceLVGFcpAUjsa5zIdsPWlR6XHfyGzd0SFu+/NFgQgMAl96MSDZgQDvJAvV6BKsFOrt6zIL09JDw==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "packages/server": { "name": "@neshca/server", "version": "1.0.0", @@ -16760,21 +16696,12 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.25", + "@types/node": "20.11.26", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.1", "typescript": "5.3.3" } - }, - "packages/server/node_modules/@types/node": { - "version": "20.11.25", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.25.tgz", - "integrity": "sha512-TBHyJxk2b7HceLVGFcpAUjsa5zIdsPWlR6XHfyGzd0SFu+/NFgQgMAl96MSDZgQDvJAvV6BKsFOrt6zIL09JDw==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } } } } diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 4cd8b160..1535d891 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -72,7 +72,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.25", + "@types/node": "20.11.26", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.1", diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index e868d1dd..913a2ee7 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -25,7 +25,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.25", + "@types/node": "20.11.26", "rimraf": "5.0.5", "tsup": "8.0.2", "typescript": "5.3.3" diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 9a55e1fd..2a82f3e2 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -28,7 +28,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.25", + "@types/node": "20.11.26", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.1", diff --git a/packages/server/package.json b/packages/server/package.json index 2a795f2e..e78577a6 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -32,7 +32,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.25", + "@types/node": "20.11.26", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.1", From e5ec3a3a1ec5e471932999b95a068cef8b65852f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 15 Mar 2024 14:56:47 +0300 Subject: [PATCH 158/458] Bump the definitely-typed group with 3 updates (#410) Bumps the definitely-typed group with 3 updates: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node), [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) and [@types/react-dom](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react-dom). Updates `@types/node` from 20.11.26 to 20.11.27 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) Updates `@types/react` from 18.2.65 to 18.2.66 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react) Updates `@types/react-dom` from 18.2.21 to 18.2.22 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react-dom) --- updated-dependencies: - dependency-name: "@types/node" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed - dependency-name: "@types/react" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed - dependency-name: "@types/react-dom" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 6 +-- docs/cache-handler-docs/package.json | 6 +-- internal/backend/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 44 ++++++++++----------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 10 files changed, 35 insertions(+), 35 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 0b55df34..70cf5bf4 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -28,9 +28,9 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.5", - "@types/node": "20.11.26", - "@types/react": "18.2.65", - "@types/react-dom": "18.2.21", + "@types/node": "20.11.27", + "@types/react": "18.2.66", + "@types/react-dom": "18.2.22", "axios": "1.6.7", "dotenv-cli": "7.4.1", "eslint": "8.57.0", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 99d4308b..e228eca6 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -22,9 +22,9 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.5", - "@types/node": "20.11.26", - "@types/react": "18.2.65", - "@types/react-dom": "18.2.21", + "@types/node": "20.11.27", + "@types/react": "18.2.66", + "@types/react-dom": "18.2.22", "eslint": "8.57.0", "typescript": "5.3.3" } diff --git a/internal/backend/package.json b/internal/backend/package.json index 855d2276..20f04a53 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.26", + "@types/node": "20.11.27", "pino-pretty": "10.3.1", "rimraf": "5.0.5", "tsx": "4.7.1", diff --git a/internal/next-common/package.json b/internal/next-common/package.json index 4ef870e6..c5e05ae2 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.26", + "@types/node": "20.11.27", "rimraf": "5.0.5", "typescript": "5.3.3" } diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index 991aa0a9..02584fcc 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -16,7 +16,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.26", + "@types/node": "20.11.27", "rimraf": "5.0.5", "typescript": "5.3.3" } diff --git a/package-lock.json b/package-lock.json index 14bc422a..25880d5e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -48,9 +48,9 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.5", - "@types/node": "20.11.26", - "@types/react": "18.2.65", - "@types/react-dom": "18.2.21", + "@types/node": "20.11.27", + "@types/react": "18.2.66", + "@types/react-dom": "18.2.22", "axios": "1.6.7", "dotenv-cli": "7.4.1", "eslint": "8.57.0", @@ -121,9 +121,9 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.5", - "@types/node": "20.11.26", - "@types/react": "18.2.65", - "@types/react-dom": "18.2.21", + "@types/node": "20.11.27", + "@types/react": "18.2.66", + "@types/react-dom": "18.2.22", "eslint": "8.57.0", "typescript": "5.3.3" } @@ -420,7 +420,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.26", + "@types/node": "20.11.27", "pino-pretty": "10.3.1", "rimraf": "5.0.5", "tsx": "4.7.1", @@ -535,7 +535,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.26", + "@types/node": "20.11.27", "rimraf": "5.0.5", "typescript": "5.3.3" } @@ -595,7 +595,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.26", + "@types/node": "20.11.27", "rimraf": "5.0.5", "typescript": "5.3.3" } @@ -3519,9 +3519,9 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "20.11.26", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.26.tgz", - "integrity": "sha512-YwOMmyhNnAWijOBQweOJnQPl068Oqd4K3OFbTc6AHJwzweUwwWG3GIFY74OKks2PJUDkQPeddOQES9mLn1CTEQ==", + "version": "20.11.27", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.27.tgz", + "integrity": "sha512-qyUZfMnCg1KEz57r7pzFtSGt49f6RPkPBis3Vo4PbS7roQEDn22hiHzl/Lo1q4i4hDEgBJmBF/NTNg2XR0HbFg==", "dependencies": { "undici-types": "~5.26.4" } @@ -3547,9 +3547,9 @@ "integrity": "sha512-ga8y9v9uyeiLdpKddhxYQkxNDrfvuPrlFb0N1qnZZByvcElJaXthF1UhvCh9TLWJBEHeNtdnbysW7Y6Uq8CVng==" }, "node_modules/@types/react": { - "version": "18.2.65", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.65.tgz", - "integrity": "sha512-98TsY0aW4jqx/3RqsUXwMDZSWR1Z4CUlJNue8ueS2/wcxZOsz4xmW1X8ieaWVRHcmmQM3R8xVA4XWB3dJnWwDQ==", + "version": "18.2.66", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.66.tgz", + "integrity": "sha512-OYTmMI4UigXeFMF/j4uv0lBBEbongSgptPrHBxqME44h9+yNov+oL6Z3ocJKo0WyXR84sQUNeyIp9MRfckvZpg==", "dependencies": { "@types/prop-types": "*", "@types/scheduler": "*", @@ -3557,9 +3557,9 @@ } }, "node_modules/@types/react-dom": { - "version": "18.2.21", - "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.2.21.tgz", - "integrity": "sha512-gnvBA/21SA4xxqNXEwNiVcP0xSGHh/gi1VhWv9Bl46a0ItbTT5nFY+G9VSQpaG/8N/qdJpJ+vftQ4zflTtnjLw==", + "version": "18.2.22", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.2.22.tgz", + "integrity": "sha512-fHkBXPeNtfvri6gdsMYyW+dW7RXFo6Ad09nLFK0VQWR7yGLai/Cyvyj696gbwYvBnhGtevUG9cET0pmUbMtoPQ==", "dev": true, "dependencies": { "@types/react": "*" @@ -16639,7 +16639,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.26", + "@types/node": "20.11.27", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.1", @@ -16658,7 +16658,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.26", + "@types/node": "20.11.27", "rimraf": "5.0.5", "tsup": "8.0.2", "typescript": "5.3.3" @@ -16674,7 +16674,7 @@ "license": "MIT", "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.26", + "@types/node": "20.11.27", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.1", @@ -16696,7 +16696,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.26", + "@types/node": "20.11.27", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.1", diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 1535d891..c3525a7d 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -72,7 +72,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.26", + "@types/node": "20.11.27", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.1", diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index 913a2ee7..d6cc4765 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -25,7 +25,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.26", + "@types/node": "20.11.27", "rimraf": "5.0.5", "tsup": "8.0.2", "typescript": "5.3.3" diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 2a82f3e2..80224118 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -28,7 +28,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.26", + "@types/node": "20.11.27", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.1", diff --git a/packages/server/package.json b/packages/server/package.json index e78577a6..3a2c92c6 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -32,7 +32,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.26", + "@types/node": "20.11.27", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.1", From 3c1773b0e4714d75bb8f73f537d34f903c1d2685 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 18 Mar 2024 11:04:58 +0300 Subject: [PATCH 159/458] Bump axios from 1.6.7 to 1.6.8 (#413) Bumps [axios](https://github.com/axios/axios) from 1.6.7 to 1.6.8. - [Release notes](https://github.com/axios/axios/releases) - [Changelog](https://github.com/axios/axios/blob/v1.x/CHANGELOG.md) - [Commits](https://github.com/axios/axios/compare/v1.6.7...v1.6.8) --- updated-dependencies: - dependency-name: axios dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- package-lock.json | 16 ++++++++-------- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 70cf5bf4..6ef63139 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -31,7 +31,7 @@ "@types/node": "20.11.27", "@types/react": "18.2.66", "@types/react-dom": "18.2.22", - "axios": "1.6.7", + "axios": "1.6.8", "dotenv-cli": "7.4.1", "eslint": "8.57.0", "fastify": "4.26.2", diff --git a/package-lock.json b/package-lock.json index 25880d5e..db78253d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -51,7 +51,7 @@ "@types/node": "20.11.27", "@types/react": "18.2.66", "@types/react-dom": "18.2.22", - "axios": "1.6.7", + "axios": "1.6.8", "dotenv-cli": "7.4.1", "eslint": "8.57.0", "fastify": "4.26.2", @@ -4321,12 +4321,12 @@ } }, "node_modules/axios": { - "version": "1.6.7", - "resolved": "https://registry.npmjs.org/axios/-/axios-1.6.7.tgz", - "integrity": "sha512-/hDJGff6/c7u0hDkvkGxR/oy6CbCs8ziCsC7SqmhjfozqiJGc8Z11wrv9z9lYfY4K8l+H9TpjcMDX0xOZmx+RA==", + "version": "1.6.8", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.6.8.tgz", + "integrity": "sha512-v/ZHtJDU39mDpyBoFVkETcd/uNdxrWRrg3bKpOKzXFA6Bvqopts6ALSMU3y6ijYxbw2B+wPrIv46egTzJXCLGQ==", "dev": true, "dependencies": { - "follow-redirects": "^1.15.4", + "follow-redirects": "^1.15.6", "form-data": "^4.0.0", "proxy-from-env": "^1.1.0" } @@ -7793,9 +7793,9 @@ "integrity": "sha512-Rwix9pBtC1Nuy5wysTmKy+UjbDJpIfg8eHjw0rjZ1mX4GNLz1Bmd16uDpI3Gk1i70Fgcs8Csg2lPm8HULFg9DQ==" }, "node_modules/follow-redirects": { - "version": "1.15.5", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.5.tgz", - "integrity": "sha512-vSFWUON1B+yAw1VN4xMfxgn5fTUiaOzAJCKBwIIgT/+7CuGy9+r+5gITvP62j3RmaD5Ph65UaERdOSRGUzZtgw==", + "version": "1.15.6", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.6.tgz", + "integrity": "sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA==", "dev": true, "funding": [ { From 4657a123132cf66556615b91b6e767d2a316cbd5 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 18 Mar 2024 11:22:19 +0300 Subject: [PATCH 160/458] Bump the definitely-typed group with 1 update (#412) Bumps the definitely-typed group with 1 update: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node). Updates `@types/node` from 20.11.27 to 20.11.28 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) --- updated-dependencies: - dependency-name: "@types/node" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- internal/backend/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 24 ++++++++++----------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 10 files changed, 21 insertions(+), 21 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 6ef63139..309769a2 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -28,7 +28,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.5", - "@types/node": "20.11.27", + "@types/node": "20.11.28", "@types/react": "18.2.66", "@types/react-dom": "18.2.22", "axios": "1.6.8", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index e228eca6..50434d1d 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -22,7 +22,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.5", - "@types/node": "20.11.27", + "@types/node": "20.11.28", "@types/react": "18.2.66", "@types/react-dom": "18.2.22", "eslint": "8.57.0", diff --git a/internal/backend/package.json b/internal/backend/package.json index 20f04a53..b9d1c5f6 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.27", + "@types/node": "20.11.28", "pino-pretty": "10.3.1", "rimraf": "5.0.5", "tsx": "4.7.1", diff --git a/internal/next-common/package.json b/internal/next-common/package.json index c5e05ae2..82e907bf 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.27", + "@types/node": "20.11.28", "rimraf": "5.0.5", "typescript": "5.3.3" } diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index 02584fcc..875c7ad7 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -16,7 +16,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.27", + "@types/node": "20.11.28", "rimraf": "5.0.5", "typescript": "5.3.3" } diff --git a/package-lock.json b/package-lock.json index db78253d..e47a90a9 100644 --- a/package-lock.json +++ b/package-lock.json @@ -48,7 +48,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.5", - "@types/node": "20.11.27", + "@types/node": "20.11.28", "@types/react": "18.2.66", "@types/react-dom": "18.2.22", "axios": "1.6.8", @@ -121,7 +121,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.5", - "@types/node": "20.11.27", + "@types/node": "20.11.28", "@types/react": "18.2.66", "@types/react-dom": "18.2.22", "eslint": "8.57.0", @@ -420,7 +420,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.27", + "@types/node": "20.11.28", "pino-pretty": "10.3.1", "rimraf": "5.0.5", "tsx": "4.7.1", @@ -535,7 +535,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.27", + "@types/node": "20.11.28", "rimraf": "5.0.5", "typescript": "5.3.3" } @@ -595,7 +595,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.27", + "@types/node": "20.11.28", "rimraf": "5.0.5", "typescript": "5.3.3" } @@ -3519,9 +3519,9 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "20.11.27", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.27.tgz", - "integrity": "sha512-qyUZfMnCg1KEz57r7pzFtSGt49f6RPkPBis3Vo4PbS7roQEDn22hiHzl/Lo1q4i4hDEgBJmBF/NTNg2XR0HbFg==", + "version": "20.11.28", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.28.tgz", + "integrity": "sha512-M/GPWVS2wLkSkNHVeLkrF2fD5Lx5UC4PxA0uZcKc6QqbIQUJyW1jVjueJYi1z8n0I5PxYrtpnPnWglE+y9A0KA==", "dependencies": { "undici-types": "~5.26.4" } @@ -16639,7 +16639,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.27", + "@types/node": "20.11.28", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.1", @@ -16658,7 +16658,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.27", + "@types/node": "20.11.28", "rimraf": "5.0.5", "tsup": "8.0.2", "typescript": "5.3.3" @@ -16674,7 +16674,7 @@ "license": "MIT", "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.27", + "@types/node": "20.11.28", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.1", @@ -16696,7 +16696,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.27", + "@types/node": "20.11.28", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.1", diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index c3525a7d..11f255e0 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -72,7 +72,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.27", + "@types/node": "20.11.28", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.1", diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index d6cc4765..70bfea40 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -25,7 +25,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.27", + "@types/node": "20.11.28", "rimraf": "5.0.5", "tsup": "8.0.2", "typescript": "5.3.3" diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 80224118..7297afb7 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -28,7 +28,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.27", + "@types/node": "20.11.28", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.1", diff --git a/packages/server/package.json b/packages/server/package.json index 3a2c92c6..97084872 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -32,7 +32,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.27", + "@types/node": "20.11.28", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.1", From b6356d22f8e0665279a888e9c5fc16f53e05ec76 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 19 Mar 2024 14:05:57 +0300 Subject: [PATCH 161/458] Bump the eslint group with 2 updates (#415) Bumps the eslint group with 2 updates: [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) and [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser). Updates `@typescript-eslint/eslint-plugin` from 7.2.0 to 7.3.0 - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v7.3.0/packages/eslint-plugin) Updates `@typescript-eslint/parser` from 7.2.0 to 7.3.0 - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v7.3.0/packages/parser) --- updated-dependencies: - dependency-name: "@typescript-eslint/eslint-plugin" dependency-type: direct:development update-type: version-update:semver-minor dependency-group: eslint - dependency-name: "@typescript-eslint/parser" dependency-type: direct:development update-type: version-update:semver-minor dependency-group: eslint ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- internal/eslint-config/package.json | 4 +- package-lock.json | 104 ++++++++++++++-------------- 2 files changed, 54 insertions(+), 54 deletions(-) diff --git a/internal/eslint-config/package.json b/internal/eslint-config/package.json index 3fb25eb9..7fde6520 100644 --- a/internal/eslint-config/package.json +++ b/internal/eslint-config/package.json @@ -6,8 +6,8 @@ "next.js" ], "devDependencies": { - "@typescript-eslint/eslint-plugin": "7.2.0", - "@typescript-eslint/parser": "7.2.0", + "@typescript-eslint/eslint-plugin": "7.3.0", + "@typescript-eslint/parser": "7.3.0", "@vercel/style-guide": "6.0.0", "eslint-config-prettier": "9.1.0", "eslint-config-turbo": "1.12.5", diff --git a/package-lock.json b/package-lock.json index e47a90a9..67b808b1 100644 --- a/package-lock.json +++ b/package-lock.json @@ -431,8 +431,8 @@ "name": "@repo/eslint-config", "version": "0.0.0", "devDependencies": { - "@typescript-eslint/eslint-plugin": "7.2.0", - "@typescript-eslint/parser": "7.2.0", + "@typescript-eslint/eslint-plugin": "7.3.0", + "@typescript-eslint/parser": "7.3.0", "@vercel/style-guide": "6.0.0", "eslint-config-prettier": "9.1.0", "eslint-config-turbo": "1.12.5", @@ -3581,16 +3581,16 @@ "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.2.0.tgz", - "integrity": "sha512-mdekAHOqS9UjlmyF/LSs6AIEvfceV749GFxoBAjwAv0nkevfKHWQFDMcBZWUiIC5ft6ePWivXoS36aKQ0Cy3sw==", + "version": "7.3.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.3.0.tgz", + "integrity": "sha512-e65ii0Y/jkqX3GXSBM7v9qt9ufxd4omcWyPVVC/msq/hP+hYC6CddLRvlvclni+u7UcaNYT/QhBYlaMHaR2ixw==", "dev": true, "dependencies": { "@eslint-community/regexpp": "^4.5.1", - "@typescript-eslint/scope-manager": "7.2.0", - "@typescript-eslint/type-utils": "7.2.0", - "@typescript-eslint/utils": "7.2.0", - "@typescript-eslint/visitor-keys": "7.2.0", + "@typescript-eslint/scope-manager": "7.3.0", + "@typescript-eslint/type-utils": "7.3.0", + "@typescript-eslint/utils": "7.3.0", + "@typescript-eslint/visitor-keys": "7.3.0", "debug": "^4.3.4", "graphemer": "^1.4.0", "ignore": "^5.2.4", @@ -3599,7 +3599,7 @@ "ts-api-utils": "^1.0.1" }, "engines": { - "node": "^16.0.0 || >=18.0.0" + "node": "^18.18.0 || >=20.0.0" }, "funding": { "type": "opencollective", @@ -3616,19 +3616,19 @@ } }, "node_modules/@typescript-eslint/parser": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-7.2.0.tgz", - "integrity": "sha512-5FKsVcHTk6TafQKQbuIVkXq58Fnbkd2wDL4LB7AURN7RUOu1utVP+G8+6u3ZhEroW3DF6hyo3ZEXxgKgp4KeCg==", + "version": "7.3.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-7.3.0.tgz", + "integrity": "sha512-OZcvH8zipGILuxJmtFgzjAJ+bOpWidzEppIRsT2P4ZUrizU0EsPt4hhzDn3lNfM1Hv7slZPTEQGKjUEn/ftQYA==", "dev": true, "dependencies": { - "@typescript-eslint/scope-manager": "7.2.0", - "@typescript-eslint/types": "7.2.0", - "@typescript-eslint/typescript-estree": "7.2.0", - "@typescript-eslint/visitor-keys": "7.2.0", + "@typescript-eslint/scope-manager": "7.3.0", + "@typescript-eslint/types": "7.3.0", + "@typescript-eslint/typescript-estree": "7.3.0", + "@typescript-eslint/visitor-keys": "7.3.0", "debug": "^4.3.4" }, "engines": { - "node": "^16.0.0 || >=18.0.0" + "node": "^18.18.0 || >=20.0.0" }, "funding": { "type": "opencollective", @@ -3644,16 +3644,16 @@ } }, "node_modules/@typescript-eslint/scope-manager": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-7.2.0.tgz", - "integrity": "sha512-Qh976RbQM/fYtjx9hs4XkayYujB/aPwglw2choHmf3zBjB4qOywWSdt9+KLRdHubGcoSwBnXUH2sR3hkyaERRg==", + "version": "7.3.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-7.3.0.tgz", + "integrity": "sha512-KlG7xH3J/+nHpZRcYeskO5QVJCnnssxYKBlrj3MoyMONihn3P4xu5jIelrS5YWvBjbytgHmFkzjDApranoYkNA==", "dev": true, "dependencies": { - "@typescript-eslint/types": "7.2.0", - "@typescript-eslint/visitor-keys": "7.2.0" + "@typescript-eslint/types": "7.3.0", + "@typescript-eslint/visitor-keys": "7.3.0" }, "engines": { - "node": "^16.0.0 || >=18.0.0" + "node": "^18.18.0 || >=20.0.0" }, "funding": { "type": "opencollective", @@ -3661,18 +3661,18 @@ } }, "node_modules/@typescript-eslint/type-utils": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-7.2.0.tgz", - "integrity": "sha512-xHi51adBHo9O9330J8GQYQwrKBqbIPJGZZVQTHHmy200hvkLZFWJIFtAG/7IYTWUyun6DE6w5InDReePJYJlJA==", + "version": "7.3.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-7.3.0.tgz", + "integrity": "sha512-TyQ19ydo248eFjTfHFSvZbxalFUOxU9o2M6SUk3wOA0yRF1ZiB2VP5iaoLrGKcg7TyUxS4knYIHnE55ih82Cfg==", "dev": true, "dependencies": { - "@typescript-eslint/typescript-estree": "7.2.0", - "@typescript-eslint/utils": "7.2.0", + "@typescript-eslint/typescript-estree": "7.3.0", + "@typescript-eslint/utils": "7.3.0", "debug": "^4.3.4", "ts-api-utils": "^1.0.1" }, "engines": { - "node": "^16.0.0 || >=18.0.0" + "node": "^18.18.0 || >=20.0.0" }, "funding": { "type": "opencollective", @@ -3688,12 +3688,12 @@ } }, "node_modules/@typescript-eslint/types": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.2.0.tgz", - "integrity": "sha512-XFtUHPI/abFhm4cbCDc5Ykc8npOKBSJePY3a3s+lwumt7XWJuzP5cZcfZ610MIPHjQjNsOLlYK8ASPaNG8UiyA==", + "version": "7.3.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.3.0.tgz", + "integrity": "sha512-oYCBkD0xVxzmZZmYiIWVewyy/q/ugq7PPm4pHhE1IgcT062i96G0Ww3gd8BvUYpk2yvg95q00Hj2CHRLjAuZBA==", "dev": true, "engines": { - "node": "^16.0.0 || >=18.0.0" + "node": "^18.18.0 || >=20.0.0" }, "funding": { "type": "opencollective", @@ -3701,13 +3701,13 @@ } }, "node_modules/@typescript-eslint/typescript-estree": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-7.2.0.tgz", - "integrity": "sha512-cyxS5WQQCoBwSakpMrvMXuMDEbhOo9bNHHrNcEWis6XHx6KF518tkF1wBvKIn/tpq5ZpUYK7Bdklu8qY0MsFIA==", + "version": "7.3.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-7.3.0.tgz", + "integrity": "sha512-UF85+bInQZ3olhI/zxv0c2b2SMuymn3t6/lkRkSB239HHxFmPSlmcggOKAjYzqRCdtqhPDftpsV1LlDH66AXrA==", "dev": true, "dependencies": { - "@typescript-eslint/types": "7.2.0", - "@typescript-eslint/visitor-keys": "7.2.0", + "@typescript-eslint/types": "7.3.0", + "@typescript-eslint/visitor-keys": "7.3.0", "debug": "^4.3.4", "globby": "^11.1.0", "is-glob": "^4.0.3", @@ -3716,7 +3716,7 @@ "ts-api-utils": "^1.0.1" }, "engines": { - "node": "^16.0.0 || >=18.0.0" + "node": "^18.18.0 || >=20.0.0" }, "funding": { "type": "opencollective", @@ -3753,21 +3753,21 @@ } }, "node_modules/@typescript-eslint/utils": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-7.2.0.tgz", - "integrity": "sha512-YfHpnMAGb1Eekpm3XRK8hcMwGLGsnT6L+7b2XyRv6ouDuJU1tZir1GS2i0+VXRatMwSI1/UfcyPe53ADkU+IuA==", + "version": "7.3.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-7.3.0.tgz", + "integrity": "sha512-7PKIDoe2ppR1SK56TLv7WQXrdHqEiueVwLVIjdSR4ROY2LprmJenf4+tT8iJIfxrsPzjSJGNeQ7GVmfoYbqrhw==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.4.0", "@types/json-schema": "^7.0.12", "@types/semver": "^7.5.0", - "@typescript-eslint/scope-manager": "7.2.0", - "@typescript-eslint/types": "7.2.0", - "@typescript-eslint/typescript-estree": "7.2.0", + "@typescript-eslint/scope-manager": "7.3.0", + "@typescript-eslint/types": "7.3.0", + "@typescript-eslint/typescript-estree": "7.3.0", "semver": "^7.5.4" }, "engines": { - "node": "^16.0.0 || >=18.0.0" + "node": "^18.18.0 || >=20.0.0" }, "funding": { "type": "opencollective", @@ -3778,16 +3778,16 @@ } }, "node_modules/@typescript-eslint/visitor-keys": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-7.2.0.tgz", - "integrity": "sha512-c6EIQRHhcpl6+tO8EMR+kjkkV+ugUNXOmeASA1rlzkd8EPIriavpWoiEz1HR/VLhbVIdhqnV6E7JZm00cBDx2A==", + "version": "7.3.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-7.3.0.tgz", + "integrity": "sha512-Gz8Su+QjOI5qP8UQ74VqKaTt/BLy23IhCCHLbYxhmNzHCGFHrvfgq4hISZvuqQ690ubkD0746qLcWC647nScuQ==", "dev": true, "dependencies": { - "@typescript-eslint/types": "7.2.0", + "@typescript-eslint/types": "7.3.0", "eslint-visitor-keys": "^3.4.1" }, "engines": { - "node": "^16.0.0 || >=18.0.0" + "node": "^18.18.0 || >=20.0.0" }, "funding": { "type": "opencollective", From b972ba7f478ddc7340141416a59be6f02ce69d1b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 20 Mar 2024 10:15:53 +0300 Subject: [PATCH 162/458] Bump the definitely-typed group with 3 updates (#417) Bumps the definitely-typed group with 3 updates: [@types/eslint](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/eslint), [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) and [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react). Updates `@types/eslint` from 8.56.5 to 8.56.6 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/eslint) Updates `@types/node` from 20.11.28 to 20.11.30 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) Updates `@types/react` from 18.2.66 to 18.2.67 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react) --- updated-dependencies: - dependency-name: "@types/eslint" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed - dependency-name: "@types/node" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed - dependency-name: "@types/react" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 6 +-- docs/cache-handler-docs/package.json | 6 +-- internal/backend/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 44 ++++++++++----------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 10 files changed, 35 insertions(+), 35 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 309769a2..8ade8466 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -27,9 +27,9 @@ "@playwright/test": "1.42.1", "@repo/eslint-config": "*", "@repo/typescript-config": "*", - "@types/eslint": "8.56.5", - "@types/node": "20.11.28", - "@types/react": "18.2.66", + "@types/eslint": "8.56.6", + "@types/node": "20.11.30", + "@types/react": "18.2.67", "@types/react-dom": "18.2.22", "axios": "1.6.8", "dotenv-cli": "7.4.1", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 50434d1d..df03ebcf 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -21,9 +21,9 @@ "@next/eslint-plugin-next": "14.1.0", "@repo/eslint-config": "*", "@repo/typescript-config": "*", - "@types/eslint": "8.56.5", - "@types/node": "20.11.28", - "@types/react": "18.2.66", + "@types/eslint": "8.56.6", + "@types/node": "20.11.30", + "@types/react": "18.2.67", "@types/react-dom": "18.2.22", "eslint": "8.57.0", "typescript": "5.3.3" diff --git a/internal/backend/package.json b/internal/backend/package.json index b9d1c5f6..7d3a5488 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.28", + "@types/node": "20.11.30", "pino-pretty": "10.3.1", "rimraf": "5.0.5", "tsx": "4.7.1", diff --git a/internal/next-common/package.json b/internal/next-common/package.json index 82e907bf..a6ae369d 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.28", + "@types/node": "20.11.30", "rimraf": "5.0.5", "typescript": "5.3.3" } diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index 875c7ad7..ea84c20e 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -16,7 +16,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.28", + "@types/node": "20.11.30", "rimraf": "5.0.5", "typescript": "5.3.3" } diff --git a/package-lock.json b/package-lock.json index 67b808b1..ff295efc 100644 --- a/package-lock.json +++ b/package-lock.json @@ -47,9 +47,9 @@ "@playwright/test": "1.42.1", "@repo/eslint-config": "*", "@repo/typescript-config": "*", - "@types/eslint": "8.56.5", - "@types/node": "20.11.28", - "@types/react": "18.2.66", + "@types/eslint": "8.56.6", + "@types/node": "20.11.30", + "@types/react": "18.2.67", "@types/react-dom": "18.2.22", "axios": "1.6.8", "dotenv-cli": "7.4.1", @@ -120,9 +120,9 @@ "@next/eslint-plugin-next": "14.1.0", "@repo/eslint-config": "*", "@repo/typescript-config": "*", - "@types/eslint": "8.56.5", - "@types/node": "20.11.28", - "@types/react": "18.2.66", + "@types/eslint": "8.56.6", + "@types/node": "20.11.30", + "@types/react": "18.2.67", "@types/react-dom": "18.2.22", "eslint": "8.57.0", "typescript": "5.3.3" @@ -420,7 +420,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.28", + "@types/node": "20.11.30", "pino-pretty": "10.3.1", "rimraf": "5.0.5", "tsx": "4.7.1", @@ -535,7 +535,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.28", + "@types/node": "20.11.30", "rimraf": "5.0.5", "typescript": "5.3.3" } @@ -595,7 +595,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.28", + "@types/node": "20.11.30", "rimraf": "5.0.5", "typescript": "5.3.3" } @@ -3443,9 +3443,9 @@ } }, "node_modules/@types/eslint": { - "version": "8.56.5", - "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.56.5.tgz", - "integrity": "sha512-u5/YPJHo1tvkSF2CE0USEkxon82Z5DBy2xR+qfyYNszpX9qcs4sT6uq2kBbj4BXY1+DBGDPnrhMZV3pKWGNukw==", + "version": "8.56.6", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.56.6.tgz", + "integrity": "sha512-ymwc+qb1XkjT/gfoQwxIeHZ6ixH23A+tCT2ADSA/DPVKzAjwYkTXBMCQ/f6fe4wEa85Lhp26VPeUxI7wMhAi7A==", "dev": true, "dependencies": { "@types/estree": "*", @@ -3519,9 +3519,9 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "20.11.28", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.28.tgz", - "integrity": "sha512-M/GPWVS2wLkSkNHVeLkrF2fD5Lx5UC4PxA0uZcKc6QqbIQUJyW1jVjueJYi1z8n0I5PxYrtpnPnWglE+y9A0KA==", + "version": "20.11.30", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.30.tgz", + "integrity": "sha512-dHM6ZxwlmuZaRmUPfv1p+KrdD1Dci04FbdEm/9wEMouFqxYoFl5aMkt0VMAUtYRQDyYvD41WJLukhq/ha3YuTw==", "dependencies": { "undici-types": "~5.26.4" } @@ -3547,9 +3547,9 @@ "integrity": "sha512-ga8y9v9uyeiLdpKddhxYQkxNDrfvuPrlFb0N1qnZZByvcElJaXthF1UhvCh9TLWJBEHeNtdnbysW7Y6Uq8CVng==" }, "node_modules/@types/react": { - "version": "18.2.66", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.66.tgz", - "integrity": "sha512-OYTmMI4UigXeFMF/j4uv0lBBEbongSgptPrHBxqME44h9+yNov+oL6Z3ocJKo0WyXR84sQUNeyIp9MRfckvZpg==", + "version": "18.2.67", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.67.tgz", + "integrity": "sha512-vkIE2vTIMHQ/xL0rgmuoECBCkZFZeHr49HeWSc24AptMbNRo7pwSBvj73rlJJs9fGKj0koS+V7kQB1jHS0uCgw==", "dependencies": { "@types/prop-types": "*", "@types/scheduler": "*", @@ -16639,7 +16639,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.28", + "@types/node": "20.11.30", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.1", @@ -16658,7 +16658,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.28", + "@types/node": "20.11.30", "rimraf": "5.0.5", "tsup": "8.0.2", "typescript": "5.3.3" @@ -16674,7 +16674,7 @@ "license": "MIT", "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.28", + "@types/node": "20.11.30", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.1", @@ -16696,7 +16696,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.28", + "@types/node": "20.11.30", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.1", diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 11f255e0..e261883f 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -72,7 +72,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.28", + "@types/node": "20.11.30", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.1", diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index 70bfea40..d70dd5a8 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -25,7 +25,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.28", + "@types/node": "20.11.30", "rimraf": "5.0.5", "tsup": "8.0.2", "typescript": "5.3.3" diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 7297afb7..3e6131bf 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -28,7 +28,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.28", + "@types/node": "20.11.30", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.1", diff --git a/packages/server/package.json b/packages/server/package.json index 97084872..11a1dbe1 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -32,7 +32,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.28", + "@types/node": "20.11.30", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.1", From 40557edc8eef30f1a6bede00e4932f58da8fe98c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 27 Mar 2024 18:51:32 +0300 Subject: [PATCH 163/458] Bump the eslint group with 2 updates (#426) Bumps the eslint group with 2 updates: [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) and [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser). Updates `@typescript-eslint/eslint-plugin` from 7.3.0 to 7.4.0 - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v7.4.0/packages/eslint-plugin) Updates `@typescript-eslint/parser` from 7.3.0 to 7.4.0 - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v7.4.0/packages/parser) --- updated-dependencies: - dependency-name: "@typescript-eslint/eslint-plugin" dependency-type: direct:development update-type: version-update:semver-minor dependency-group: eslint - dependency-name: "@typescript-eslint/parser" dependency-type: direct:development update-type: version-update:semver-minor dependency-group: eslint ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- internal/eslint-config/package.json | 4 +- package-lock.json | 88 ++++++++++++++--------------- 2 files changed, 46 insertions(+), 46 deletions(-) diff --git a/internal/eslint-config/package.json b/internal/eslint-config/package.json index 7fde6520..c2e127e1 100644 --- a/internal/eslint-config/package.json +++ b/internal/eslint-config/package.json @@ -6,8 +6,8 @@ "next.js" ], "devDependencies": { - "@typescript-eslint/eslint-plugin": "7.3.0", - "@typescript-eslint/parser": "7.3.0", + "@typescript-eslint/eslint-plugin": "7.4.0", + "@typescript-eslint/parser": "7.4.0", "@vercel/style-guide": "6.0.0", "eslint-config-prettier": "9.1.0", "eslint-config-turbo": "1.12.5", diff --git a/package-lock.json b/package-lock.json index ff295efc..95c58530 100644 --- a/package-lock.json +++ b/package-lock.json @@ -431,8 +431,8 @@ "name": "@repo/eslint-config", "version": "0.0.0", "devDependencies": { - "@typescript-eslint/eslint-plugin": "7.3.0", - "@typescript-eslint/parser": "7.3.0", + "@typescript-eslint/eslint-plugin": "7.4.0", + "@typescript-eslint/parser": "7.4.0", "@vercel/style-guide": "6.0.0", "eslint-config-prettier": "9.1.0", "eslint-config-turbo": "1.12.5", @@ -3581,16 +3581,16 @@ "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "7.3.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.3.0.tgz", - "integrity": "sha512-e65ii0Y/jkqX3GXSBM7v9qt9ufxd4omcWyPVVC/msq/hP+hYC6CddLRvlvclni+u7UcaNYT/QhBYlaMHaR2ixw==", + "version": "7.4.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.4.0.tgz", + "integrity": "sha512-yHMQ/oFaM7HZdVrVm/M2WHaNPgyuJH4WelkSVEWSSsir34kxW2kDJCxlXRhhGWEsMN0WAW/vLpKfKVcm8k+MPw==", "dev": true, "dependencies": { "@eslint-community/regexpp": "^4.5.1", - "@typescript-eslint/scope-manager": "7.3.0", - "@typescript-eslint/type-utils": "7.3.0", - "@typescript-eslint/utils": "7.3.0", - "@typescript-eslint/visitor-keys": "7.3.0", + "@typescript-eslint/scope-manager": "7.4.0", + "@typescript-eslint/type-utils": "7.4.0", + "@typescript-eslint/utils": "7.4.0", + "@typescript-eslint/visitor-keys": "7.4.0", "debug": "^4.3.4", "graphemer": "^1.4.0", "ignore": "^5.2.4", @@ -3616,15 +3616,15 @@ } }, "node_modules/@typescript-eslint/parser": { - "version": "7.3.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-7.3.0.tgz", - "integrity": "sha512-OZcvH8zipGILuxJmtFgzjAJ+bOpWidzEppIRsT2P4ZUrizU0EsPt4hhzDn3lNfM1Hv7slZPTEQGKjUEn/ftQYA==", + "version": "7.4.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-7.4.0.tgz", + "integrity": "sha512-ZvKHxHLusweEUVwrGRXXUVzFgnWhigo4JurEj0dGF1tbcGh6buL+ejDdjxOQxv6ytcY1uhun1p2sm8iWStlgLQ==", "dev": true, "dependencies": { - "@typescript-eslint/scope-manager": "7.3.0", - "@typescript-eslint/types": "7.3.0", - "@typescript-eslint/typescript-estree": "7.3.0", - "@typescript-eslint/visitor-keys": "7.3.0", + "@typescript-eslint/scope-manager": "7.4.0", + "@typescript-eslint/types": "7.4.0", + "@typescript-eslint/typescript-estree": "7.4.0", + "@typescript-eslint/visitor-keys": "7.4.0", "debug": "^4.3.4" }, "engines": { @@ -3644,13 +3644,13 @@ } }, "node_modules/@typescript-eslint/scope-manager": { - "version": "7.3.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-7.3.0.tgz", - "integrity": "sha512-KlG7xH3J/+nHpZRcYeskO5QVJCnnssxYKBlrj3MoyMONihn3P4xu5jIelrS5YWvBjbytgHmFkzjDApranoYkNA==", + "version": "7.4.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-7.4.0.tgz", + "integrity": "sha512-68VqENG5HK27ypafqLVs8qO+RkNc7TezCduYrx8YJpXq2QGZ30vmNZGJJJC48+MVn4G2dCV8m5ZTVnzRexTVtw==", "dev": true, "dependencies": { - "@typescript-eslint/types": "7.3.0", - "@typescript-eslint/visitor-keys": "7.3.0" + "@typescript-eslint/types": "7.4.0", + "@typescript-eslint/visitor-keys": "7.4.0" }, "engines": { "node": "^18.18.0 || >=20.0.0" @@ -3661,13 +3661,13 @@ } }, "node_modules/@typescript-eslint/type-utils": { - "version": "7.3.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-7.3.0.tgz", - "integrity": "sha512-TyQ19ydo248eFjTfHFSvZbxalFUOxU9o2M6SUk3wOA0yRF1ZiB2VP5iaoLrGKcg7TyUxS4knYIHnE55ih82Cfg==", + "version": "7.4.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-7.4.0.tgz", + "integrity": "sha512-247ETeHgr9WTRMqHbbQdzwzhuyaJ8dPTuyuUEMANqzMRB1rj/9qFIuIXK7l0FX9i9FXbHeBQl/4uz6mYuCE7Aw==", "dev": true, "dependencies": { - "@typescript-eslint/typescript-estree": "7.3.0", - "@typescript-eslint/utils": "7.3.0", + "@typescript-eslint/typescript-estree": "7.4.0", + "@typescript-eslint/utils": "7.4.0", "debug": "^4.3.4", "ts-api-utils": "^1.0.1" }, @@ -3688,9 +3688,9 @@ } }, "node_modules/@typescript-eslint/types": { - "version": "7.3.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.3.0.tgz", - "integrity": "sha512-oYCBkD0xVxzmZZmYiIWVewyy/q/ugq7PPm4pHhE1IgcT062i96G0Ww3gd8BvUYpk2yvg95q00Hj2CHRLjAuZBA==", + "version": "7.4.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.4.0.tgz", + "integrity": "sha512-mjQopsbffzJskos5B4HmbsadSJQWaRK0UxqQ7GuNA9Ga4bEKeiO6b2DnB6cM6bpc8lemaPseh0H9B/wyg+J7rw==", "dev": true, "engines": { "node": "^18.18.0 || >=20.0.0" @@ -3701,13 +3701,13 @@ } }, "node_modules/@typescript-eslint/typescript-estree": { - "version": "7.3.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-7.3.0.tgz", - "integrity": "sha512-UF85+bInQZ3olhI/zxv0c2b2SMuymn3t6/lkRkSB239HHxFmPSlmcggOKAjYzqRCdtqhPDftpsV1LlDH66AXrA==", + "version": "7.4.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-7.4.0.tgz", + "integrity": "sha512-A99j5AYoME/UBQ1ucEbbMEmGkN7SE0BvZFreSnTd1luq7yulcHdyGamZKizU7canpGDWGJ+Q6ZA9SyQobipePg==", "dev": true, "dependencies": { - "@typescript-eslint/types": "7.3.0", - "@typescript-eslint/visitor-keys": "7.3.0", + "@typescript-eslint/types": "7.4.0", + "@typescript-eslint/visitor-keys": "7.4.0", "debug": "^4.3.4", "globby": "^11.1.0", "is-glob": "^4.0.3", @@ -3753,17 +3753,17 @@ } }, "node_modules/@typescript-eslint/utils": { - "version": "7.3.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-7.3.0.tgz", - "integrity": "sha512-7PKIDoe2ppR1SK56TLv7WQXrdHqEiueVwLVIjdSR4ROY2LprmJenf4+tT8iJIfxrsPzjSJGNeQ7GVmfoYbqrhw==", + "version": "7.4.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-7.4.0.tgz", + "integrity": "sha512-NQt9QLM4Tt8qrlBVY9lkMYzfYtNz8/6qwZg8pI3cMGlPnj6mOpRxxAm7BMJN9K0AiY+1BwJ5lVC650YJqYOuNg==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.4.0", "@types/json-schema": "^7.0.12", "@types/semver": "^7.5.0", - "@typescript-eslint/scope-manager": "7.3.0", - "@typescript-eslint/types": "7.3.0", - "@typescript-eslint/typescript-estree": "7.3.0", + "@typescript-eslint/scope-manager": "7.4.0", + "@typescript-eslint/types": "7.4.0", + "@typescript-eslint/typescript-estree": "7.4.0", "semver": "^7.5.4" }, "engines": { @@ -3778,12 +3778,12 @@ } }, "node_modules/@typescript-eslint/visitor-keys": { - "version": "7.3.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-7.3.0.tgz", - "integrity": "sha512-Gz8Su+QjOI5qP8UQ74VqKaTt/BLy23IhCCHLbYxhmNzHCGFHrvfgq4hISZvuqQ690ubkD0746qLcWC647nScuQ==", + "version": "7.4.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-7.4.0.tgz", + "integrity": "sha512-0zkC7YM0iX5Y41homUUeW1CHtZR01K3ybjM1l6QczoMuay0XKtrb93kv95AxUGwdjGr64nNqnOCwmEl616N8CA==", "dev": true, "dependencies": { - "@typescript-eslint/types": "7.3.0", + "@typescript-eslint/types": "7.4.0", "eslint-visitor-keys": "^3.4.1" }, "engines": { From 425dfc0d99e94e84f278b0ab9a75178677a802da Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 28 Mar 2024 00:30:12 +0300 Subject: [PATCH 164/458] Bump the definitely-typed group with 1 update (#432) Bumps the definitely-typed group with 1 update: [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react). Updates `@types/react` from 18.2.67 to 18.2.73 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react) --- updated-dependencies: - dependency-name: "@types/react" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- package-lock.json | 16 +++++----------- 3 files changed, 7 insertions(+), 13 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 8ade8466..e47c5c04 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -29,7 +29,7 @@ "@repo/typescript-config": "*", "@types/eslint": "8.56.6", "@types/node": "20.11.30", - "@types/react": "18.2.67", + "@types/react": "18.2.73", "@types/react-dom": "18.2.22", "axios": "1.6.8", "dotenv-cli": "7.4.1", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index df03ebcf..32a7d0e3 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -23,7 +23,7 @@ "@repo/typescript-config": "*", "@types/eslint": "8.56.6", "@types/node": "20.11.30", - "@types/react": "18.2.67", + "@types/react": "18.2.73", "@types/react-dom": "18.2.22", "eslint": "8.57.0", "typescript": "5.3.3" diff --git a/package-lock.json b/package-lock.json index 95c58530..fc21b46a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -49,7 +49,7 @@ "@repo/typescript-config": "*", "@types/eslint": "8.56.6", "@types/node": "20.11.30", - "@types/react": "18.2.67", + "@types/react": "18.2.73", "@types/react-dom": "18.2.22", "axios": "1.6.8", "dotenv-cli": "7.4.1", @@ -122,7 +122,7 @@ "@repo/typescript-config": "*", "@types/eslint": "8.56.6", "@types/node": "20.11.30", - "@types/react": "18.2.67", + "@types/react": "18.2.73", "@types/react-dom": "18.2.22", "eslint": "8.57.0", "typescript": "5.3.3" @@ -3547,12 +3547,11 @@ "integrity": "sha512-ga8y9v9uyeiLdpKddhxYQkxNDrfvuPrlFb0N1qnZZByvcElJaXthF1UhvCh9TLWJBEHeNtdnbysW7Y6Uq8CVng==" }, "node_modules/@types/react": { - "version": "18.2.67", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.67.tgz", - "integrity": "sha512-vkIE2vTIMHQ/xL0rgmuoECBCkZFZeHr49HeWSc24AptMbNRo7pwSBvj73rlJJs9fGKj0koS+V7kQB1jHS0uCgw==", + "version": "18.2.73", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.73.tgz", + "integrity": "sha512-XcGdod0Jjv84HOC7N5ziY3x+qL0AfmubvKOZ9hJjJ2yd5EE+KYjWhdOjt387e9HPheHkdggF9atTifMRtyAaRA==", "dependencies": { "@types/prop-types": "*", - "@types/scheduler": "*", "csstype": "^3.0.2" } }, @@ -3565,11 +3564,6 @@ "@types/react": "*" } }, - "node_modules/@types/scheduler": { - "version": "0.16.8", - "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.8.tgz", - "integrity": "sha512-WZLiwShhwLRmeV6zH+GkbOFT6Z6VklCItrDioxUnv+u4Ll+8vKeFySoFyK/0ctcRpOmwAicELfmys1sDc/Rw+A==" - }, "node_modules/@types/semver": { "version": "7.5.8", "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.8.tgz", From a012a839d9afc90fabe2c803046c39db004dc82d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 28 Mar 2024 09:57:45 +0300 Subject: [PATCH 165/458] Bump @biomejs/biome from 1.6.1 to 1.6.3 (#424) Bumps [@biomejs/biome](https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome) from 1.6.1 to 1.6.3. - [Release notes](https://github.com/biomejs/biome/releases) - [Changelog](https://github.com/biomejs/biome/blob/main/CHANGELOG.md) - [Commits](https://github.com/biomejs/biome/commits/cli/v1.6.3/packages/@biomejs/biome) --- updated-dependencies: - dependency-name: "@biomejs/biome" dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 72 +++++++++++++++++++++++------------------------ package.json | 2 +- 2 files changed, 37 insertions(+), 37 deletions(-) diff --git a/package-lock.json b/package-lock.json index fc21b46a..a3ddcde5 100644 --- a/package-lock.json +++ b/package-lock.json @@ -20,7 +20,7 @@ }, "devDependencies": { "@actions/core": "1.10.1", - "@biomejs/biome": "1.6.1", + "@biomejs/biome": "1.6.3", "@repo/prettier-config": "*", "@repo/typescript-config": "*", "diffscribe": "*", @@ -1116,9 +1116,9 @@ } }, "node_modules/@biomejs/biome": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/@biomejs/biome/-/biome-1.6.1.tgz", - "integrity": "sha512-SILQvA2S0XeaOuu1bivv6fQmMo7zMfr2xqDEN+Sz78pGbAKZnGmg0emsXjQWoBY/RVm9kPCgX+aGEpZZTYaM7w==", + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/@biomejs/biome/-/biome-1.6.3.tgz", + "integrity": "sha512-Xnp/TIpIcTnRA4LwerJuoGYQJEqwXtn5AL0U0OPXll/QGbAKmcUAfizU880xTwZRD4f53iceqODLDaD3wxYlIw==", "dev": true, "hasInstallScript": true, "bin": { @@ -1132,20 +1132,20 @@ "url": "https://opencollective.com/biome" }, "optionalDependencies": { - "@biomejs/cli-darwin-arm64": "1.6.1", - "@biomejs/cli-darwin-x64": "1.6.1", - "@biomejs/cli-linux-arm64": "1.6.1", - "@biomejs/cli-linux-arm64-musl": "1.6.1", - "@biomejs/cli-linux-x64": "1.6.1", - "@biomejs/cli-linux-x64-musl": "1.6.1", - "@biomejs/cli-win32-arm64": "1.6.1", - "@biomejs/cli-win32-x64": "1.6.1" + "@biomejs/cli-darwin-arm64": "1.6.3", + "@biomejs/cli-darwin-x64": "1.6.3", + "@biomejs/cli-linux-arm64": "1.6.3", + "@biomejs/cli-linux-arm64-musl": "1.6.3", + "@biomejs/cli-linux-x64": "1.6.3", + "@biomejs/cli-linux-x64-musl": "1.6.3", + "@biomejs/cli-win32-arm64": "1.6.3", + "@biomejs/cli-win32-x64": "1.6.3" } }, "node_modules/@biomejs/cli-darwin-arm64": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-1.6.1.tgz", - "integrity": "sha512-KlvY00iB9T/vFi4m/GXxEyYkYnYy6aw06uapzUIIdiMMj7I/pmZu7CsZlzWdekVD0j+SsQbxdZMsb0wPhnRSsg==", + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-1.6.3.tgz", + "integrity": "sha512-0E8PGu3/8HSkBJdtjno+niJE1ANS/12D7sPK65vw5lTBYmmaYwJdfclDp6XO0IAX7uVd3/YtXlsEua0SVrNt3Q==", "cpu": [ "arm64" ], @@ -1159,9 +1159,9 @@ } }, "node_modules/@biomejs/cli-darwin-x64": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-x64/-/cli-darwin-x64-1.6.1.tgz", - "integrity": "sha512-jP4E8TXaQX5e3nvRJSzB+qicZrdIDCrjR0sSb1DaDTx4JPZH5WXq/BlTqAyWi3IijM+IYMjWqAAK4kOHsSCzxw==", + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-x64/-/cli-darwin-x64-1.6.3.tgz", + "integrity": "sha512-UWu0We/aIRtWXgJKe6ygWt2xR0yXs64BwWqtZbfxBojRn3jgW8UdFAkV5yiUOX3TQlsV6BZH1EQaUAVsccUeeA==", "cpu": [ "x64" ], @@ -1175,9 +1175,9 @@ } }, "node_modules/@biomejs/cli-linux-arm64": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64/-/cli-linux-arm64-1.6.1.tgz", - "integrity": "sha512-nxD1UyX3bWSl/RSKlib/JsOmt+652/9yieogdSC/UTLgVCZYOF7u8L/LK7kAa0Y4nA8zSPavAQTgko7mHC2ObA==", + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64/-/cli-linux-arm64-1.6.3.tgz", + "integrity": "sha512-wFVkQw38kOssfnkbpSh6ums5TaElw3RAt5i/VZwHmgR2nQgE0fHXLO7HwIE9VBkOEdbiIFq+2PxvFIHuJF3z3Q==", "cpu": [ "arm64" ], @@ -1191,9 +1191,9 @@ } }, "node_modules/@biomejs/cli-linux-arm64-musl": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-1.6.1.tgz", - "integrity": "sha512-YdkDgFecdHJg7PJxAMaZIixVWGB6St4yH08BHagO0fEhNNiY8cAKEVo2mcXlsnEiTMpeSEAY9VxLUrVT3IVxpw==", + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-1.6.3.tgz", + "integrity": "sha512-AntGCSfLN1nPcQj4VOk3X2JgnDw07DaPC8BuBmRcsRmn+7GPSWLllVN5awIKlRPZEbGJtSnLkTiDc5Bxw8OiuA==", "cpu": [ "arm64" ], @@ -1207,9 +1207,9 @@ } }, "node_modules/@biomejs/cli-linux-x64": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64/-/cli-linux-x64-1.6.1.tgz", - "integrity": "sha512-BYAzenlMF3QdngjNFw9QVBXKGNzeecqwF3pwDgUGEvU7OJpn1/lyVkJVxYPtVGRNdjQ9e6l/s8NjKuBpW/ZR4Q==", + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64/-/cli-linux-x64-1.6.3.tgz", + "integrity": "sha512-vyn8TQaTZg617hjqFitwGmb1St5XXvq6I3vmxU/QFalM74BryMSvYCrYWb2Yw/TkykdEwZTMGYp+SWHRb04fTg==", "cpu": [ "x64" ], @@ -1223,9 +1223,9 @@ } }, "node_modules/@biomejs/cli-linux-x64-musl": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-1.6.1.tgz", - "integrity": "sha512-aSISIDmxq04NNy7tm4x9rBk2vH0ub2VDIE4outEmdC2LBtEJoINiphlZagx/FvjbsqUfygent9QUSn0oREnAXg==", + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-1.6.3.tgz", + "integrity": "sha512-GelAvGsUwbxfFpKLG+7+dvDmbrfkGqn08sL8CMQrGnhjE1krAqHWiXQsjfmi0UMFdMsk7hbc4oSAP+1+mrXcHQ==", "cpu": [ "x64" ], @@ -1239,9 +1239,9 @@ } }, "node_modules/@biomejs/cli-win32-arm64": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-arm64/-/cli-win32-arm64-1.6.1.tgz", - "integrity": "sha512-/eCHQKZ1kEawUpkSuXq4urtxMsD1P1678OPG3zNKt3ru16AqqspLdO3jzBe3k74xCPYnQ36e9Yqc97Mo0qgPtg==", + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-arm64/-/cli-win32-arm64-1.6.3.tgz", + "integrity": "sha512-Gx8N2Tixke6pAI1BniteCVZgUUmaFEDYosdWxoaCus15BZI/7RcBxhsRM0ZL/lC66StSQ8vHl8JBrrld1k570Q==", "cpu": [ "arm64" ], @@ -1255,9 +1255,9 @@ } }, "node_modules/@biomejs/cli-win32-x64": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-x64/-/cli-win32-x64-1.6.1.tgz", - "integrity": "sha512-5TUZbzBwnDLFxLVGEPsorNi6eC2Gt+z4Oei9Qvq0M/4c4/mjZ96ABgwao/tMxf4ZBr/qyy2YdvF+gX9Rc+xC0A==", + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-x64/-/cli-win32-x64-1.6.3.tgz", + "integrity": "sha512-meungPJw64SqoR7LXY1wG7GC4+4wgpyThdFUMGXa6PCe0BLFOIOcZ9VMj9PstuczMPdgmt/BUMPsj25dK1VO8A==", "cpu": [ "x64" ], diff --git a/package.json b/package.json index f4627f70..b798305f 100644 --- a/package.json +++ b/package.json @@ -38,7 +38,7 @@ }, "devDependencies": { "@actions/core": "1.10.1", - "@biomejs/biome": "1.6.1", + "@biomejs/biome": "1.6.3", "@repo/prettier-config": "*", "@repo/typescript-config": "*", "diffscribe": "*", From e9c96a34c0155c0fb3ae30f3b7250b1dfe7a63e9 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 28 Mar 2024 12:36:18 +0300 Subject: [PATCH 166/458] Bump the turbo group with 2 updates (#421) Bumps the turbo group with 2 updates: [turbo](https://github.com/vercel/turbo) and [eslint-config-turbo](https://github.com/vercel/turbo/tree/HEAD/packages/eslint-config-turbo). Updates `turbo` from 1.12.5 to 1.13.0 - [Release notes](https://github.com/vercel/turbo/releases) - [Changelog](https://github.com/vercel/turbo/blob/main/release.md) - [Commits](https://github.com/vercel/turbo/compare/v1.12.5...v1.13.0) Updates `eslint-config-turbo` from 1.12.5 to 1.13.0 - [Release notes](https://github.com/vercel/turbo/releases) - [Changelog](https://github.com/vercel/turbo/blob/main/release.md) - [Commits](https://github.com/vercel/turbo/commits/v1.13.0/packages/eslint-config-turbo) --- updated-dependencies: - dependency-name: turbo dependency-type: direct:development update-type: version-update:semver-minor dependency-group: turbo - dependency-name: eslint-config-turbo dependency-type: direct:development update-type: version-update:semver-minor dependency-group: turbo ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- internal/eslint-config/package.json | 2 +- package-lock.json | 72 ++++++++++++++--------------- package.json | 2 +- 3 files changed, 38 insertions(+), 38 deletions(-) diff --git a/internal/eslint-config/package.json b/internal/eslint-config/package.json index c2e127e1..6552aefd 100644 --- a/internal/eslint-config/package.json +++ b/internal/eslint-config/package.json @@ -10,7 +10,7 @@ "@typescript-eslint/parser": "7.4.0", "@vercel/style-guide": "6.0.0", "eslint-config-prettier": "9.1.0", - "eslint-config-turbo": "1.12.5", + "eslint-config-turbo": "1.13.0", "eslint-plugin-only-warn": "1.1.0", "typescript": "5.3.3" } diff --git a/package-lock.json b/package-lock.json index a3ddcde5..e56c84c7 100644 --- a/package-lock.json +++ b/package-lock.json @@ -26,7 +26,7 @@ "diffscribe": "*", "glob": "10.3.10", "prettier": "3.2.5", - "turbo": "1.12.5" + "turbo": "1.13.0" }, "engines": { "node": ">=20.9.0", @@ -435,7 +435,7 @@ "@typescript-eslint/parser": "7.4.0", "@vercel/style-guide": "6.0.0", "eslint-config-prettier": "9.1.0", - "eslint-config-turbo": "1.12.5", + "eslint-config-turbo": "1.13.0", "eslint-plugin-only-warn": "1.1.0", "typescript": "5.3.3" } @@ -6297,12 +6297,12 @@ } }, "node_modules/eslint-config-turbo": { - "version": "1.12.5", - "resolved": "https://registry.npmjs.org/eslint-config-turbo/-/eslint-config-turbo-1.12.5.tgz", - "integrity": "sha512-wXytbX+vTzQ6rwgM6sIr447tjYJBlRj5V/eBFNGNXw5Xs1R715ppPYhbmxaFbkrWNQSGJsWRrYGAlyq0sT/OsQ==", + "version": "1.13.0", + "resolved": "https://registry.npmjs.org/eslint-config-turbo/-/eslint-config-turbo-1.13.0.tgz", + "integrity": "sha512-xV13WrEjAJLeo6yqR1YEv5R5WPwNMyw8f4FlK2C4zWMr7e8ZiRg81jajltabEOZdeVboHIQ6gGn+FnSmgdVSSQ==", "dev": true, "dependencies": { - "eslint-plugin-turbo": "1.12.5" + "eslint-plugin-turbo": "1.13.0" }, "peerDependencies": { "eslint": ">6.6.0" @@ -6918,9 +6918,9 @@ } }, "node_modules/eslint-plugin-turbo": { - "version": "1.12.5", - "resolved": "https://registry.npmjs.org/eslint-plugin-turbo/-/eslint-plugin-turbo-1.12.5.tgz", - "integrity": "sha512-cXy7mCzAdngBTJIWH4DASXHy0vQpujWDBqRTu0YYqCN/QEGsi3HWM+STZEbPYELdjtm5EsN2HshOSSqWnjdRHg==", + "version": "1.13.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-turbo/-/eslint-plugin-turbo-1.13.0.tgz", + "integrity": "sha512-y9YRXMSOc43SijAFFkDnrFpstV2k/w6Qmbr5mO/w7tUGzDWkHc87btLa0e/L2PJxod5bzNwsmzeyj8c/AsMMCQ==", "dev": true, "dependencies": { "dotenv": "16.0.3" @@ -15381,26 +15381,26 @@ } }, "node_modules/turbo": { - "version": "1.12.5", - "resolved": "https://registry.npmjs.org/turbo/-/turbo-1.12.5.tgz", - "integrity": "sha512-FATU5EnhrYG8RvQJYFJnDd18DpccDjyvd53hggw9T9JEg9BhWtIEoeaKtBjYbpXwOVrJQMDdXcIB4f2nD3QPPg==", + "version": "1.13.0", + "resolved": "https://registry.npmjs.org/turbo/-/turbo-1.13.0.tgz", + "integrity": "sha512-r02GtNmkOPcQvUzVE6lg474QVLyU02r3yh3lUGqrFHf5h5ZEjgDGWILsAUqplVqjri1Y/oOkTssks4CObTAaiw==", "dev": true, "bin": { "turbo": "bin/turbo" }, "optionalDependencies": { - "turbo-darwin-64": "1.12.5", - "turbo-darwin-arm64": "1.12.5", - "turbo-linux-64": "1.12.5", - "turbo-linux-arm64": "1.12.5", - "turbo-windows-64": "1.12.5", - "turbo-windows-arm64": "1.12.5" + "turbo-darwin-64": "1.13.0", + "turbo-darwin-arm64": "1.13.0", + "turbo-linux-64": "1.13.0", + "turbo-linux-arm64": "1.13.0", + "turbo-windows-64": "1.13.0", + "turbo-windows-arm64": "1.13.0" } }, "node_modules/turbo-darwin-64": { - "version": "1.12.5", - "resolved": "https://registry.npmjs.org/turbo-darwin-64/-/turbo-darwin-64-1.12.5.tgz", - "integrity": "sha512-0GZ8reftwNQgIQLHkHjHEXTc/Z1NJm+YjsrBP+qhM/7yIZ3TEy9gJhuogDt2U0xIWwFgisTyzbtU7xNaQydtoA==", + "version": "1.13.0", + "resolved": "https://registry.npmjs.org/turbo-darwin-64/-/turbo-darwin-64-1.13.0.tgz", + "integrity": "sha512-ctHeJXtQgBcgxnCXwrJTGiq57HtwF7zWz5NTuSv//5yeU01BtQIt62ArKfjudOhRefWJbX3Z5srn88XTb9hfww==", "cpu": [ "x64" ], @@ -15411,9 +15411,9 @@ ] }, "node_modules/turbo-darwin-arm64": { - "version": "1.12.5", - "resolved": "https://registry.npmjs.org/turbo-darwin-arm64/-/turbo-darwin-arm64-1.12.5.tgz", - "integrity": "sha512-8WpOLNNzvH6kohQOjihD+gaWL+ZFNfjvBwhOF0rjEzvW+YR3Pa7KjhulrjWyeN2yMFqAPubTbZIGOz1EVXLuQA==", + "version": "1.13.0", + "resolved": "https://registry.npmjs.org/turbo-darwin-arm64/-/turbo-darwin-arm64-1.13.0.tgz", + "integrity": "sha512-/Q9/pNFkF9w83tNxwMpgapwLYdQ12p8mpty2YQRoUiS9ClWkcqe136jR0mtuMqzlNlpREOFZaoyIthjt6Sdo0g==", "cpu": [ "arm64" ], @@ -15424,9 +15424,9 @@ ] }, "node_modules/turbo-linux-64": { - "version": "1.12.5", - "resolved": "https://registry.npmjs.org/turbo-linux-64/-/turbo-linux-64-1.12.5.tgz", - "integrity": "sha512-INit73+bNUpwqGZCxgXCR3I+cQsdkQ3/LkfkgSOibkpg+oGqxJRzeXw3sp990d7SCoE8QOcs3iw+PtiFX/LDAA==", + "version": "1.13.0", + "resolved": "https://registry.npmjs.org/turbo-linux-64/-/turbo-linux-64-1.13.0.tgz", + "integrity": "sha512-hgbT7o020BGV4L7Sd8hhFTd5zVKPKxbsr0dPfel/9NkdTmptz2aGZ0Vb2MAa18SY3XaCQpDxmdYuOzvvRpo5ZA==", "cpu": [ "x64" ], @@ -15437,9 +15437,9 @@ ] }, "node_modules/turbo-linux-arm64": { - "version": "1.12.5", - "resolved": "https://registry.npmjs.org/turbo-linux-arm64/-/turbo-linux-arm64-1.12.5.tgz", - "integrity": "sha512-6lkRBvxtI/GQdGtaAec9LvVQUoRw6nXFp0kM+Eu+5PbZqq7yn6cMkgDJLI08zdeui36yXhone8XGI8pHg8bpUQ==", + "version": "1.13.0", + "resolved": "https://registry.npmjs.org/turbo-linux-arm64/-/turbo-linux-arm64-1.13.0.tgz", + "integrity": "sha512-WK01i2wDZARrV+HEs495A3hNeGMwQR5suYk7G+ceqqW7b+dOTlQdvUjnI3sg7wAnZPgjafFs/hoBaZdJjVa/nw==", "cpu": [ "arm64" ], @@ -15450,9 +15450,9 @@ ] }, "node_modules/turbo-windows-64": { - "version": "1.12.5", - "resolved": "https://registry.npmjs.org/turbo-windows-64/-/turbo-windows-64-1.12.5.tgz", - "integrity": "sha512-gQYbOhZg5Ww0bQ/bC0w/4W6yQRwBumUUnkB+QPo15VznwxZe2a7bo6JM+9Xy9dKLa/kn+p7zTqme4OEp6M3/Yg==", + "version": "1.13.0", + "resolved": "https://registry.npmjs.org/turbo-windows-64/-/turbo-windows-64-1.13.0.tgz", + "integrity": "sha512-hJgSZJZwlWHNwLEthaqJqJWGm4NqF5X/I7vE0sPE4i/jeDl8f0n1hcOkgJkJiNXVxhj+qy/9+4dzbPLKT9imaQ==", "cpu": [ "x64" ], @@ -15463,9 +15463,9 @@ ] }, "node_modules/turbo-windows-arm64": { - "version": "1.12.5", - "resolved": "https://registry.npmjs.org/turbo-windows-arm64/-/turbo-windows-arm64-1.12.5.tgz", - "integrity": "sha512-auvhZ9FrhnvQ4mgBlY9O68MT4dIfprYGvd2uPICba/mHUZZvVy5SGgbHJ0KbMwaJfnnFoPgLJO6M+3N2gDprKw==", + "version": "1.13.0", + "resolved": "https://registry.npmjs.org/turbo-windows-arm64/-/turbo-windows-arm64-1.13.0.tgz", + "integrity": "sha512-L/ErxYoXeq8tmjU/AIGicC9VyBN1zdYw8JlM4yPmMI0pJdY8E4GaYK1IiIazqq7M72lmQhU/WW7fV9FqEktwrw==", "cpu": [ "arm64" ], diff --git a/package.json b/package.json index b798305f..f1ce98e5 100644 --- a/package.json +++ b/package.json @@ -44,7 +44,7 @@ "diffscribe": "*", "glob": "10.3.10", "prettier": "3.2.5", - "turbo": "1.12.5" + "turbo": "1.13.0" }, "engines": { "node": ">=20.9.0", From 796bebc43d6b97a828218e81d16a530a5a51b391 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 28 Mar 2024 12:53:26 +0300 Subject: [PATCH 167/458] Bump the pino group with 1 update (#419) Bumps the pino group with 1 update: [pino-pretty](https://github.com/pinojs/pino-pretty). Updates `pino-pretty` from 10.3.1 to 11.0.0 - [Release notes](https://github.com/pinojs/pino-pretty/releases) - [Commits](https://github.com/pinojs/pino-pretty/compare/v10.3.1...v11.0.0) --- updated-dependencies: - dependency-name: pino-pretty dependency-type: direct:development update-type: version-update:semver-major dependency-group: pino ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- internal/backend/package.json | 2 +- package-lock.json | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/internal/backend/package.json b/internal/backend/package.json index 7d3a5488..313d67ca 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -16,7 +16,7 @@ "devDependencies": { "@repo/typescript-config": "*", "@types/node": "20.11.30", - "pino-pretty": "10.3.1", + "pino-pretty": "11.0.0", "rimraf": "5.0.5", "tsx": "4.7.1", "typescript": "5.3.3" diff --git a/package-lock.json b/package-lock.json index e56c84c7..6839bd24 100644 --- a/package-lock.json +++ b/package-lock.json @@ -421,7 +421,7 @@ "devDependencies": { "@repo/typescript-config": "*", "@types/node": "20.11.30", - "pino-pretty": "10.3.1", + "pino-pretty": "11.0.0", "rimraf": "5.0.5", "tsx": "4.7.1", "typescript": "5.3.3" @@ -12410,9 +12410,9 @@ } }, "node_modules/pino-pretty": { - "version": "10.3.1", - "resolved": "https://registry.npmjs.org/pino-pretty/-/pino-pretty-10.3.1.tgz", - "integrity": "sha512-az8JbIYeN/1iLj2t0jR9DV48/LQ3RC6hZPpapKPkb84Q+yTidMCpgWxIT3N0flnBDilyBQ1luWNpOeJptjdp/g==", + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/pino-pretty/-/pino-pretty-11.0.0.tgz", + "integrity": "sha512-YFJZqw59mHIY72wBnBs7XhLGG6qpJMa4pEQTRgEPEbjIYbng2LXEZZF1DoyDg9CfejEy8uZCyzpcBXXG0oOCwQ==", "dev": true, "dependencies": { "colorette": "^2.0.7", From 8b15863b0a5f1a6d34a69171bf81727612ebf3f3 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 28 Mar 2024 13:04:17 +0300 Subject: [PATCH 168/458] Bump the npm_and_yarn group group with 1 update (#433) Bumps the npm_and_yarn group group with 1 update: [katex](https://github.com/KaTeX/KaTeX). Updates `katex` from 0.16.9 to 0.16.10 - [Release notes](https://github.com/KaTeX/KaTeX/releases) - [Changelog](https://github.com/KaTeX/KaTeX/blob/main/CHANGELOG.md) - [Commits](https://github.com/KaTeX/KaTeX/compare/v0.16.9...v0.16.10) --- updated-dependencies: - dependency-name: katex dependency-type: indirect dependency-group: npm_and_yarn-security-group ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index 6839bd24..823a7f04 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9658,9 +9658,9 @@ } }, "node_modules/katex": { - "version": "0.16.9", - "resolved": "https://registry.npmjs.org/katex/-/katex-0.16.9.tgz", - "integrity": "sha512-fsSYjWS0EEOwvy81j3vRA8TEAhQhKiqO+FQaKWp0m39qwOzHVBgAUBIXWj1pB+O2W3fIpNa6Y9KSKCVbfPhyAQ==", + "version": "0.16.10", + "resolved": "https://registry.npmjs.org/katex/-/katex-0.16.10.tgz", + "integrity": "sha512-ZiqaC04tp2O5utMsl2TEZTXxa6WSC4yo0fv5ML++D3QZv/vx2Mct0mTlRx3O+uUkjfuAgOkzsCmq5MiUEsDDdA==", "funding": [ "https://opencollective.com/katex", "https://github.com/sponsors/katex" From 8c894b156d0adf99489e698d91dc5f76dc342a9a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 29 Mar 2024 09:14:06 +0300 Subject: [PATCH 169/458] Bump the definitely-typed group with 1 update (#434) Bumps the definitely-typed group with 1 update: [@types/react-dom](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react-dom). Updates `@types/react-dom` from 18.2.22 to 18.2.23 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react-dom) --- updated-dependencies: - dependency-name: "@types/react-dom" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- package-lock.json | 10 +++++----- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index e47c5c04..d915969e 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -30,7 +30,7 @@ "@types/eslint": "8.56.6", "@types/node": "20.11.30", "@types/react": "18.2.73", - "@types/react-dom": "18.2.22", + "@types/react-dom": "18.2.23", "axios": "1.6.8", "dotenv-cli": "7.4.1", "eslint": "8.57.0", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 32a7d0e3..ab3a29b7 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -24,7 +24,7 @@ "@types/eslint": "8.56.6", "@types/node": "20.11.30", "@types/react": "18.2.73", - "@types/react-dom": "18.2.22", + "@types/react-dom": "18.2.23", "eslint": "8.57.0", "typescript": "5.3.3" } diff --git a/package-lock.json b/package-lock.json index 823a7f04..fc802a7e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -50,7 +50,7 @@ "@types/eslint": "8.56.6", "@types/node": "20.11.30", "@types/react": "18.2.73", - "@types/react-dom": "18.2.22", + "@types/react-dom": "18.2.23", "axios": "1.6.8", "dotenv-cli": "7.4.1", "eslint": "8.57.0", @@ -123,7 +123,7 @@ "@types/eslint": "8.56.6", "@types/node": "20.11.30", "@types/react": "18.2.73", - "@types/react-dom": "18.2.22", + "@types/react-dom": "18.2.23", "eslint": "8.57.0", "typescript": "5.3.3" } @@ -3556,9 +3556,9 @@ } }, "node_modules/@types/react-dom": { - "version": "18.2.22", - "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.2.22.tgz", - "integrity": "sha512-fHkBXPeNtfvri6gdsMYyW+dW7RXFo6Ad09nLFK0VQWR7yGLai/Cyvyj696gbwYvBnhGtevUG9cET0pmUbMtoPQ==", + "version": "18.2.23", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.2.23.tgz", + "integrity": "sha512-ZQ71wgGOTmDYpnav2knkjr3qXdAFu0vsk8Ci5w3pGAIdj7/kKAyn+VsQDhXsmzzzepAiI9leWMmubXz690AI/A==", "dev": true, "dependencies": { "@types/react": "*" From bc8c4d4a0da9ae4630777e4950e8dcc19a506d3e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 29 Mar 2024 18:38:06 +0300 Subject: [PATCH 170/458] Bump glob from 10.3.10 to 10.3.12 (#435) Bumps [glob](https://github.com/isaacs/node-glob) from 10.3.10 to 10.3.12. - [Changelog](https://github.com/isaacs/node-glob/blob/main/changelog.md) - [Commits](https://github.com/isaacs/node-glob/compare/v10.3.10...v10.3.12) --- updated-dependencies: - dependency-name: glob dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 218 +++++++++++++++++++++++++++++++++++++++++++--- package.json | 2 +- 2 files changed, 208 insertions(+), 12 deletions(-) diff --git a/package-lock.json b/package-lock.json index fc802a7e..28a9083a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -24,7 +24,7 @@ "@repo/prettier-config": "*", "@repo/typescript-config": "*", "diffscribe": "*", - "glob": "10.3.10", + "glob": "10.3.12", "prettier": "3.2.5", "turbo": "1.13.0" }, @@ -285,6 +285,52 @@ "tslib": "^2.4.0" } }, + "docs/cache-handler-docs/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "docs/cache-handler-docs/node_modules/glob": { + "version": "10.3.10", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", + "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", + "dev": true, + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^2.3.5", + "minimatch": "^9.0.1", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", + "path-scurry": "^1.10.1" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "docs/cache-handler-docs/node_modules/minimatch": { + "version": "9.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.4.tgz", + "integrity": "sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "docs/cache-handler-docs/node_modules/next": { "version": "14.1.0", "resolved": "https://registry.npmjs.org/next/-/next-14.1.0.tgz", @@ -502,6 +548,17 @@ } } }, + "internal/eslint-config/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "optional": true, + "peer": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, "internal/eslint-config/node_modules/eslint-plugin-vitest": { "version": "0.3.24", "resolved": "https://registry.npmjs.org/eslint-plugin-vitest/-/eslint-plugin-vitest-0.3.24.tgz", @@ -526,6 +583,47 @@ } } }, + "internal/eslint-config/node_modules/glob": { + "version": "10.3.10", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", + "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", + "dev": true, + "optional": true, + "peer": true, + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^2.3.5", + "minimatch": "^9.0.1", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", + "path-scurry": "^1.10.1" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "internal/eslint-config/node_modules/minimatch": { + "version": "9.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.4.tgz", + "integrity": "sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==", + "dev": true, + "optional": true, + "peer": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "internal/next-common": { "name": "@neshca/next-common", "version": "0.0.0", @@ -670,6 +768,17 @@ } } }, + "internal/prettier-config/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "optional": true, + "peer": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, "internal/prettier-config/node_modules/eslint-plugin-vitest": { "version": "0.3.24", "resolved": "https://registry.npmjs.org/eslint-plugin-vitest/-/eslint-plugin-vitest-0.3.24.tgz", @@ -694,6 +803,47 @@ } } }, + "internal/prettier-config/node_modules/glob": { + "version": "10.3.10", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", + "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", + "dev": true, + "optional": true, + "peer": true, + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^2.3.5", + "minimatch": "^9.0.1", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", + "path-scurry": "^1.10.1" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "internal/prettier-config/node_modules/minimatch": { + "version": "9.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.4.tgz", + "integrity": "sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==", + "dev": true, + "optional": true, + "peer": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "internal/typescript-config": { "name": "@repo/typescript-config", "version": "0.0.0", @@ -2539,6 +2689,52 @@ "glob": "10.3.10" } }, + "node_modules/@next/eslint-plugin-next/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/@next/eslint-plugin-next/node_modules/glob": { + "version": "10.3.10", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", + "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", + "dev": true, + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^2.3.5", + "minimatch": "^9.0.1", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", + "path-scurry": "^1.10.1" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@next/eslint-plugin-next/node_modules/minimatch": { + "version": "9.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.4.tgz", + "integrity": "sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/@next/swc-darwin-arm64": { "version": "14.2.0-canary.4", "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.0-canary.4.tgz", @@ -8130,16 +8326,16 @@ "integrity": "sha512-IaOQ9puYtjrkq7Y0Ygl9KDZnrf/aiUJYUpVf89y8kyaxbRG7Y1SrX/jaumrv81vc61+kiMempujsM3Yw7w5qcw==" }, "node_modules/glob": { - "version": "10.3.10", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", - "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", + "version": "10.3.12", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.12.tgz", + "integrity": "sha512-TCNv8vJ+xz4QiqTpfOJA7HvYv+tNIRHKfUWw/q+v2jdgN4ebz+KY9tGx5J4rHP0o84mNP+ApH66HRX8us3Khqg==", "dev": true, "dependencies": { "foreground-child": "^3.1.0", - "jackspeak": "^2.3.5", + "jackspeak": "^2.3.6", "minimatch": "^9.0.1", - "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", - "path-scurry": "^1.10.1" + "minipass": "^7.0.4", + "path-scurry": "^1.10.2" }, "bin": { "glob": "dist/esm/bin.mjs" @@ -12310,12 +12506,12 @@ "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" }, "node_modules/path-scurry": { - "version": "1.10.1", - "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.10.1.tgz", - "integrity": "sha512-MkhCqzzBEpPvxxQ71Md0b1Kk51W01lrYvlMzSUaIzNsODdd7mqhiimSZlr+VegAz5Z6Vzt9Xg2ttE//XBhH3EQ==", + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.10.2.tgz", + "integrity": "sha512-7xTavNy5RQXnsjANvVvMkEjvloOinkAjv/Z6Ildz9v2RinZ4SBKTWFOVRbaF8p0vpHnyjV/UwNDdKuUv6M5qcA==", "dev": true, "dependencies": { - "lru-cache": "^9.1.1 || ^10.0.0", + "lru-cache": "^10.2.0", "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" }, "engines": { diff --git a/package.json b/package.json index f1ce98e5..689b1d56 100644 --- a/package.json +++ b/package.json @@ -42,7 +42,7 @@ "@repo/prettier-config": "*", "@repo/typescript-config": "*", "diffscribe": "*", - "glob": "10.3.10", + "glob": "10.3.12", "prettier": "3.2.5", "turbo": "1.13.0" }, From 46dca3d6ac7c392eeb565293a9ebb9959eefe6e8 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 4 Apr 2024 18:34:14 +0300 Subject: [PATCH 171/458] Bump the eslint group with 2 updates (#440) Bumps the eslint group with 2 updates: [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) and [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser). Updates `@typescript-eslint/eslint-plugin` from 7.4.0 to 7.5.0 - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v7.5.0/packages/eslint-plugin) Updates `@typescript-eslint/parser` from 7.4.0 to 7.5.0 - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v7.5.0/packages/parser) --- updated-dependencies: - dependency-name: "@typescript-eslint/eslint-plugin" dependency-type: direct:development update-type: version-update:semver-minor dependency-group: eslint - dependency-name: "@typescript-eslint/parser" dependency-type: direct:development update-type: version-update:semver-minor dependency-group: eslint ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- internal/eslint-config/package.json | 4 +- package-lock.json | 88 ++++++++++++++--------------- 2 files changed, 46 insertions(+), 46 deletions(-) diff --git a/internal/eslint-config/package.json b/internal/eslint-config/package.json index 6552aefd..90561a20 100644 --- a/internal/eslint-config/package.json +++ b/internal/eslint-config/package.json @@ -6,8 +6,8 @@ "next.js" ], "devDependencies": { - "@typescript-eslint/eslint-plugin": "7.4.0", - "@typescript-eslint/parser": "7.4.0", + "@typescript-eslint/eslint-plugin": "7.5.0", + "@typescript-eslint/parser": "7.5.0", "@vercel/style-guide": "6.0.0", "eslint-config-prettier": "9.1.0", "eslint-config-turbo": "1.13.0", diff --git a/package-lock.json b/package-lock.json index 28a9083a..1775d8f4 100644 --- a/package-lock.json +++ b/package-lock.json @@ -477,8 +477,8 @@ "name": "@repo/eslint-config", "version": "0.0.0", "devDependencies": { - "@typescript-eslint/eslint-plugin": "7.4.0", - "@typescript-eslint/parser": "7.4.0", + "@typescript-eslint/eslint-plugin": "7.5.0", + "@typescript-eslint/parser": "7.5.0", "@vercel/style-guide": "6.0.0", "eslint-config-prettier": "9.1.0", "eslint-config-turbo": "1.13.0", @@ -3771,16 +3771,16 @@ "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "7.4.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.4.0.tgz", - "integrity": "sha512-yHMQ/oFaM7HZdVrVm/M2WHaNPgyuJH4WelkSVEWSSsir34kxW2kDJCxlXRhhGWEsMN0WAW/vLpKfKVcm8k+MPw==", + "version": "7.5.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.5.0.tgz", + "integrity": "sha512-HpqNTH8Du34nLxbKgVMGljZMG0rJd2O9ecvr2QLYp+7512ty1j42KnsFwspPXg1Vh8an9YImf6CokUBltisZFQ==", "dev": true, "dependencies": { "@eslint-community/regexpp": "^4.5.1", - "@typescript-eslint/scope-manager": "7.4.0", - "@typescript-eslint/type-utils": "7.4.0", - "@typescript-eslint/utils": "7.4.0", - "@typescript-eslint/visitor-keys": "7.4.0", + "@typescript-eslint/scope-manager": "7.5.0", + "@typescript-eslint/type-utils": "7.5.0", + "@typescript-eslint/utils": "7.5.0", + "@typescript-eslint/visitor-keys": "7.5.0", "debug": "^4.3.4", "graphemer": "^1.4.0", "ignore": "^5.2.4", @@ -3806,15 +3806,15 @@ } }, "node_modules/@typescript-eslint/parser": { - "version": "7.4.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-7.4.0.tgz", - "integrity": "sha512-ZvKHxHLusweEUVwrGRXXUVzFgnWhigo4JurEj0dGF1tbcGh6buL+ejDdjxOQxv6ytcY1uhun1p2sm8iWStlgLQ==", + "version": "7.5.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-7.5.0.tgz", + "integrity": "sha512-cj+XGhNujfD2/wzR1tabNsidnYRaFfEkcULdcIyVBYcXjBvBKOes+mpMBP7hMpOyk+gBcfXsrg4NBGAStQyxjQ==", "dev": true, "dependencies": { - "@typescript-eslint/scope-manager": "7.4.0", - "@typescript-eslint/types": "7.4.0", - "@typescript-eslint/typescript-estree": "7.4.0", - "@typescript-eslint/visitor-keys": "7.4.0", + "@typescript-eslint/scope-manager": "7.5.0", + "@typescript-eslint/types": "7.5.0", + "@typescript-eslint/typescript-estree": "7.5.0", + "@typescript-eslint/visitor-keys": "7.5.0", "debug": "^4.3.4" }, "engines": { @@ -3834,13 +3834,13 @@ } }, "node_modules/@typescript-eslint/scope-manager": { - "version": "7.4.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-7.4.0.tgz", - "integrity": "sha512-68VqENG5HK27ypafqLVs8qO+RkNc7TezCduYrx8YJpXq2QGZ30vmNZGJJJC48+MVn4G2dCV8m5ZTVnzRexTVtw==", + "version": "7.5.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-7.5.0.tgz", + "integrity": "sha512-Z1r7uJY0MDeUlql9XJ6kRVgk/sP11sr3HKXn268HZyqL7i4cEfrdFuSSY/0tUqT37l5zT0tJOsuDP16kio85iA==", "dev": true, "dependencies": { - "@typescript-eslint/types": "7.4.0", - "@typescript-eslint/visitor-keys": "7.4.0" + "@typescript-eslint/types": "7.5.0", + "@typescript-eslint/visitor-keys": "7.5.0" }, "engines": { "node": "^18.18.0 || >=20.0.0" @@ -3851,13 +3851,13 @@ } }, "node_modules/@typescript-eslint/type-utils": { - "version": "7.4.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-7.4.0.tgz", - "integrity": "sha512-247ETeHgr9WTRMqHbbQdzwzhuyaJ8dPTuyuUEMANqzMRB1rj/9qFIuIXK7l0FX9i9FXbHeBQl/4uz6mYuCE7Aw==", + "version": "7.5.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-7.5.0.tgz", + "integrity": "sha512-A021Rj33+G8mx2Dqh0nMO9GyjjIBK3MqgVgZ2qlKf6CJy51wY/lkkFqq3TqqnH34XyAHUkq27IjlUkWlQRpLHw==", "dev": true, "dependencies": { - "@typescript-eslint/typescript-estree": "7.4.0", - "@typescript-eslint/utils": "7.4.0", + "@typescript-eslint/typescript-estree": "7.5.0", + "@typescript-eslint/utils": "7.5.0", "debug": "^4.3.4", "ts-api-utils": "^1.0.1" }, @@ -3878,9 +3878,9 @@ } }, "node_modules/@typescript-eslint/types": { - "version": "7.4.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.4.0.tgz", - "integrity": "sha512-mjQopsbffzJskos5B4HmbsadSJQWaRK0UxqQ7GuNA9Ga4bEKeiO6b2DnB6cM6bpc8lemaPseh0H9B/wyg+J7rw==", + "version": "7.5.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.5.0.tgz", + "integrity": "sha512-tv5B4IHeAdhR7uS4+bf8Ov3k793VEVHd45viRRkehIUZxm0WF82VPiLgHzA/Xl4TGPg1ZD49vfxBKFPecD5/mg==", "dev": true, "engines": { "node": "^18.18.0 || >=20.0.0" @@ -3891,13 +3891,13 @@ } }, "node_modules/@typescript-eslint/typescript-estree": { - "version": "7.4.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-7.4.0.tgz", - "integrity": "sha512-A99j5AYoME/UBQ1ucEbbMEmGkN7SE0BvZFreSnTd1luq7yulcHdyGamZKizU7canpGDWGJ+Q6ZA9SyQobipePg==", + "version": "7.5.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-7.5.0.tgz", + "integrity": "sha512-YklQQfe0Rv2PZEueLTUffiQGKQneiIEKKnfIqPIOxgM9lKSZFCjT5Ad4VqRKj/U4+kQE3fa8YQpskViL7WjdPQ==", "dev": true, "dependencies": { - "@typescript-eslint/types": "7.4.0", - "@typescript-eslint/visitor-keys": "7.4.0", + "@typescript-eslint/types": "7.5.0", + "@typescript-eslint/visitor-keys": "7.5.0", "debug": "^4.3.4", "globby": "^11.1.0", "is-glob": "^4.0.3", @@ -3943,17 +3943,17 @@ } }, "node_modules/@typescript-eslint/utils": { - "version": "7.4.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-7.4.0.tgz", - "integrity": "sha512-NQt9QLM4Tt8qrlBVY9lkMYzfYtNz8/6qwZg8pI3cMGlPnj6mOpRxxAm7BMJN9K0AiY+1BwJ5lVC650YJqYOuNg==", + "version": "7.5.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-7.5.0.tgz", + "integrity": "sha512-3vZl9u0R+/FLQcpy2EHyRGNqAS/ofJ3Ji8aebilfJe+fobK8+LbIFmrHciLVDxjDoONmufDcnVSF38KwMEOjzw==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.4.0", "@types/json-schema": "^7.0.12", "@types/semver": "^7.5.0", - "@typescript-eslint/scope-manager": "7.4.0", - "@typescript-eslint/types": "7.4.0", - "@typescript-eslint/typescript-estree": "7.4.0", + "@typescript-eslint/scope-manager": "7.5.0", + "@typescript-eslint/types": "7.5.0", + "@typescript-eslint/typescript-estree": "7.5.0", "semver": "^7.5.4" }, "engines": { @@ -3968,12 +3968,12 @@ } }, "node_modules/@typescript-eslint/visitor-keys": { - "version": "7.4.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-7.4.0.tgz", - "integrity": "sha512-0zkC7YM0iX5Y41homUUeW1CHtZR01K3ybjM1l6QczoMuay0XKtrb93kv95AxUGwdjGr64nNqnOCwmEl616N8CA==", + "version": "7.5.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-7.5.0.tgz", + "integrity": "sha512-mcuHM/QircmA6O7fy6nn2w/3ditQkj+SgtOc8DW3uQ10Yfj42amm2i+6F2K4YAOPNNTmE6iM1ynM6lrSwdendA==", "dev": true, "dependencies": { - "@typescript-eslint/types": "7.4.0", + "@typescript-eslint/types": "7.5.0", "eslint-visitor-keys": "^3.4.1" }, "engines": { From d186a7cded673f3a15df9b712c7da7d4d769bc4f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 4 Apr 2024 18:42:54 +0300 Subject: [PATCH 172/458] Bump the turbo group with 2 updates (#439) Bumps the turbo group with 2 updates: [turbo](https://github.com/vercel/turbo) and [eslint-config-turbo](https://github.com/vercel/turbo/tree/HEAD/packages/eslint-config-turbo). Updates `turbo` from 1.13.0 to 1.13.2 - [Release notes](https://github.com/vercel/turbo/releases) - [Changelog](https://github.com/vercel/turbo/blob/main/release.md) - [Commits](https://github.com/vercel/turbo/compare/v1.13.0...v1.13.2) Updates `eslint-config-turbo` from 1.13.0 to 1.13.2 - [Release notes](https://github.com/vercel/turbo/releases) - [Changelog](https://github.com/vercel/turbo/blob/main/release.md) - [Commits](https://github.com/vercel/turbo/commits/v1.13.2/packages/eslint-config-turbo) --- updated-dependencies: - dependency-name: turbo dependency-type: direct:development update-type: version-update:semver-patch dependency-group: turbo - dependency-name: eslint-config-turbo dependency-type: direct:development update-type: version-update:semver-patch dependency-group: turbo ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- internal/eslint-config/package.json | 2 +- package-lock.json | 72 ++++++++++++++--------------- package.json | 2 +- 3 files changed, 38 insertions(+), 38 deletions(-) diff --git a/internal/eslint-config/package.json b/internal/eslint-config/package.json index 90561a20..d462f94c 100644 --- a/internal/eslint-config/package.json +++ b/internal/eslint-config/package.json @@ -10,7 +10,7 @@ "@typescript-eslint/parser": "7.5.0", "@vercel/style-guide": "6.0.0", "eslint-config-prettier": "9.1.0", - "eslint-config-turbo": "1.13.0", + "eslint-config-turbo": "1.13.2", "eslint-plugin-only-warn": "1.1.0", "typescript": "5.3.3" } diff --git a/package-lock.json b/package-lock.json index 1775d8f4..ec5f3a76 100644 --- a/package-lock.json +++ b/package-lock.json @@ -26,7 +26,7 @@ "diffscribe": "*", "glob": "10.3.12", "prettier": "3.2.5", - "turbo": "1.13.0" + "turbo": "1.13.2" }, "engines": { "node": ">=20.9.0", @@ -481,7 +481,7 @@ "@typescript-eslint/parser": "7.5.0", "@vercel/style-guide": "6.0.0", "eslint-config-prettier": "9.1.0", - "eslint-config-turbo": "1.13.0", + "eslint-config-turbo": "1.13.2", "eslint-plugin-only-warn": "1.1.0", "typescript": "5.3.3" } @@ -6493,12 +6493,12 @@ } }, "node_modules/eslint-config-turbo": { - "version": "1.13.0", - "resolved": "https://registry.npmjs.org/eslint-config-turbo/-/eslint-config-turbo-1.13.0.tgz", - "integrity": "sha512-xV13WrEjAJLeo6yqR1YEv5R5WPwNMyw8f4FlK2C4zWMr7e8ZiRg81jajltabEOZdeVboHIQ6gGn+FnSmgdVSSQ==", + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/eslint-config-turbo/-/eslint-config-turbo-1.13.2.tgz", + "integrity": "sha512-TzvsMwNJx/P4JYw79iFqbyQApnyT050gW7dBxnNeNVl3pVMnT2rwaFo9Q3Hc49Tp5NANxEwYN9RStF50P/IwGA==", "dev": true, "dependencies": { - "eslint-plugin-turbo": "1.13.0" + "eslint-plugin-turbo": "1.13.2" }, "peerDependencies": { "eslint": ">6.6.0" @@ -7114,9 +7114,9 @@ } }, "node_modules/eslint-plugin-turbo": { - "version": "1.13.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-turbo/-/eslint-plugin-turbo-1.13.0.tgz", - "integrity": "sha512-y9YRXMSOc43SijAFFkDnrFpstV2k/w6Qmbr5mO/w7tUGzDWkHc87btLa0e/L2PJxod5bzNwsmzeyj8c/AsMMCQ==", + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-turbo/-/eslint-plugin-turbo-1.13.2.tgz", + "integrity": "sha512-QNaihF0hTRjfOBd1SLHrftm8V3pOU35CNS/C0/Z6qY1xxdL1PSv4IctEIldSMX7/A1jOPYwMPO7wYwPXgjgp/g==", "dev": true, "dependencies": { "dotenv": "16.0.3" @@ -15577,26 +15577,26 @@ } }, "node_modules/turbo": { - "version": "1.13.0", - "resolved": "https://registry.npmjs.org/turbo/-/turbo-1.13.0.tgz", - "integrity": "sha512-r02GtNmkOPcQvUzVE6lg474QVLyU02r3yh3lUGqrFHf5h5ZEjgDGWILsAUqplVqjri1Y/oOkTssks4CObTAaiw==", + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/turbo/-/turbo-1.13.2.tgz", + "integrity": "sha512-rX/d9f4MgRT3yK6cERPAkfavIxbpBZowDQpgvkYwGMGDQ0Nvw1nc0NVjruE76GrzXQqoxR1UpnmEP54vBARFHQ==", "dev": true, "bin": { "turbo": "bin/turbo" }, "optionalDependencies": { - "turbo-darwin-64": "1.13.0", - "turbo-darwin-arm64": "1.13.0", - "turbo-linux-64": "1.13.0", - "turbo-linux-arm64": "1.13.0", - "turbo-windows-64": "1.13.0", - "turbo-windows-arm64": "1.13.0" + "turbo-darwin-64": "1.13.2", + "turbo-darwin-arm64": "1.13.2", + "turbo-linux-64": "1.13.2", + "turbo-linux-arm64": "1.13.2", + "turbo-windows-64": "1.13.2", + "turbo-windows-arm64": "1.13.2" } }, "node_modules/turbo-darwin-64": { - "version": "1.13.0", - "resolved": "https://registry.npmjs.org/turbo-darwin-64/-/turbo-darwin-64-1.13.0.tgz", - "integrity": "sha512-ctHeJXtQgBcgxnCXwrJTGiq57HtwF7zWz5NTuSv//5yeU01BtQIt62ArKfjudOhRefWJbX3Z5srn88XTb9hfww==", + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/turbo-darwin-64/-/turbo-darwin-64-1.13.2.tgz", + "integrity": "sha512-CCSuD8CfmtncpohCuIgq7eAzUas0IwSbHfI8/Q3vKObTdXyN8vAo01gwqXjDGpzG9bTEVedD0GmLbD23dR0MLA==", "cpu": [ "x64" ], @@ -15607,9 +15607,9 @@ ] }, "node_modules/turbo-darwin-arm64": { - "version": "1.13.0", - "resolved": "https://registry.npmjs.org/turbo-darwin-arm64/-/turbo-darwin-arm64-1.13.0.tgz", - "integrity": "sha512-/Q9/pNFkF9w83tNxwMpgapwLYdQ12p8mpty2YQRoUiS9ClWkcqe136jR0mtuMqzlNlpREOFZaoyIthjt6Sdo0g==", + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/turbo-darwin-arm64/-/turbo-darwin-arm64-1.13.2.tgz", + "integrity": "sha512-0HySm06/D2N91rJJ89FbiI/AodmY8B3WDSFTVEpu2+8spUw7hOJ8okWOT0e5iGlyayUP9gr31eOeL3VFZkpfCw==", "cpu": [ "arm64" ], @@ -15620,9 +15620,9 @@ ] }, "node_modules/turbo-linux-64": { - "version": "1.13.0", - "resolved": "https://registry.npmjs.org/turbo-linux-64/-/turbo-linux-64-1.13.0.tgz", - "integrity": "sha512-hgbT7o020BGV4L7Sd8hhFTd5zVKPKxbsr0dPfel/9NkdTmptz2aGZ0Vb2MAa18SY3XaCQpDxmdYuOzvvRpo5ZA==", + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/turbo-linux-64/-/turbo-linux-64-1.13.2.tgz", + "integrity": "sha512-7HnibgbqZrjn4lcfIouzlPu8ZHSBtURG4c7Bedu7WJUDeZo+RE1crlrQm8wuwO54S0siYqUqo7GNHxu4IXbioQ==", "cpu": [ "x64" ], @@ -15633,9 +15633,9 @@ ] }, "node_modules/turbo-linux-arm64": { - "version": "1.13.0", - "resolved": "https://registry.npmjs.org/turbo-linux-arm64/-/turbo-linux-arm64-1.13.0.tgz", - "integrity": "sha512-WK01i2wDZARrV+HEs495A3hNeGMwQR5suYk7G+ceqqW7b+dOTlQdvUjnI3sg7wAnZPgjafFs/hoBaZdJjVa/nw==", + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/turbo-linux-arm64/-/turbo-linux-arm64-1.13.2.tgz", + "integrity": "sha512-sUq4dbpk6SNKg/Hkwn256Vj2AEYSQdG96repio894h5/LEfauIK2QYiC/xxAeW3WBMc6BngmvNyURIg7ltrePg==", "cpu": [ "arm64" ], @@ -15646,9 +15646,9 @@ ] }, "node_modules/turbo-windows-64": { - "version": "1.13.0", - "resolved": "https://registry.npmjs.org/turbo-windows-64/-/turbo-windows-64-1.13.0.tgz", - "integrity": "sha512-hJgSZJZwlWHNwLEthaqJqJWGm4NqF5X/I7vE0sPE4i/jeDl8f0n1hcOkgJkJiNXVxhj+qy/9+4dzbPLKT9imaQ==", + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/turbo-windows-64/-/turbo-windows-64-1.13.2.tgz", + "integrity": "sha512-DqzhcrciWq3dpzllJR2VVIyOhSlXYCo4mNEWl98DJ3FZ08PEzcI3ceudlH6F0t/nIcfSItK1bDP39cs7YoZHEA==", "cpu": [ "x64" ], @@ -15659,9 +15659,9 @@ ] }, "node_modules/turbo-windows-arm64": { - "version": "1.13.0", - "resolved": "https://registry.npmjs.org/turbo-windows-arm64/-/turbo-windows-arm64-1.13.0.tgz", - "integrity": "sha512-L/ErxYoXeq8tmjU/AIGicC9VyBN1zdYw8JlM4yPmMI0pJdY8E4GaYK1IiIazqq7M72lmQhU/WW7fV9FqEktwrw==", + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/turbo-windows-arm64/-/turbo-windows-arm64-1.13.2.tgz", + "integrity": "sha512-WnPMrwfCXxK69CdDfS1/j2DlzcKxSmycgDAqV0XCYpK/812KB0KlvsVAt5PjEbZGXkY88pCJ1BLZHAjF5FcbqA==", "cpu": [ "arm64" ], diff --git a/package.json b/package.json index 689b1d56..143c1d7b 100644 --- a/package.json +++ b/package.json @@ -44,7 +44,7 @@ "diffscribe": "*", "glob": "10.3.12", "prettier": "3.2.5", - "turbo": "1.13.0" + "turbo": "1.13.2" }, "engines": { "node": ">=20.9.0", From a016b13bbaceaa63ef7271ab3effebe38ae64536 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 4 Apr 2024 18:53:33 +0300 Subject: [PATCH 173/458] Bump @biomejs/biome from 1.6.3 to 1.6.4 (#442) Bumps [@biomejs/biome](https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome) from 1.6.3 to 1.6.4. - [Release notes](https://github.com/biomejs/biome/releases) - [Changelog](https://github.com/biomejs/biome/blob/main/CHANGELOG.md) - [Commits](https://github.com/biomejs/biome/commits/cli/v1.6.4/packages/@biomejs/biome) --- updated-dependencies: - dependency-name: "@biomejs/biome" dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 90 +++++++++++++++++++++++------------------------ package.json | 2 +- 2 files changed, 46 insertions(+), 46 deletions(-) diff --git a/package-lock.json b/package-lock.json index ec5f3a76..6c453245 100644 --- a/package-lock.json +++ b/package-lock.json @@ -20,7 +20,7 @@ }, "devDependencies": { "@actions/core": "1.10.1", - "@biomejs/biome": "1.6.3", + "@biomejs/biome": "1.6.4", "@repo/prettier-config": "*", "@repo/typescript-config": "*", "diffscribe": "*", @@ -1266,36 +1266,36 @@ } }, "node_modules/@biomejs/biome": { - "version": "1.6.3", - "resolved": "https://registry.npmjs.org/@biomejs/biome/-/biome-1.6.3.tgz", - "integrity": "sha512-Xnp/TIpIcTnRA4LwerJuoGYQJEqwXtn5AL0U0OPXll/QGbAKmcUAfizU880xTwZRD4f53iceqODLDaD3wxYlIw==", + "version": "1.6.4", + "resolved": "https://registry.npmjs.org/@biomejs/biome/-/biome-1.6.4.tgz", + "integrity": "sha512-3groVd2oWsLC0ZU+XXgHSNbq31lUcOCBkCcA7sAQGBopHcmL+jmmdoWlY3S61zIh+f2mqQTQte1g6PZKb3JJjA==", "dev": true, "hasInstallScript": true, "bin": { "biome": "bin/biome" }, "engines": { - "node": ">=14.*" + "node": ">=14.21.3" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/biome" }, "optionalDependencies": { - "@biomejs/cli-darwin-arm64": "1.6.3", - "@biomejs/cli-darwin-x64": "1.6.3", - "@biomejs/cli-linux-arm64": "1.6.3", - "@biomejs/cli-linux-arm64-musl": "1.6.3", - "@biomejs/cli-linux-x64": "1.6.3", - "@biomejs/cli-linux-x64-musl": "1.6.3", - "@biomejs/cli-win32-arm64": "1.6.3", - "@biomejs/cli-win32-x64": "1.6.3" + "@biomejs/cli-darwin-arm64": "1.6.4", + "@biomejs/cli-darwin-x64": "1.6.4", + "@biomejs/cli-linux-arm64": "1.6.4", + "@biomejs/cli-linux-arm64-musl": "1.6.4", + "@biomejs/cli-linux-x64": "1.6.4", + "@biomejs/cli-linux-x64-musl": "1.6.4", + "@biomejs/cli-win32-arm64": "1.6.4", + "@biomejs/cli-win32-x64": "1.6.4" } }, "node_modules/@biomejs/cli-darwin-arm64": { - "version": "1.6.3", - "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-1.6.3.tgz", - "integrity": "sha512-0E8PGu3/8HSkBJdtjno+niJE1ANS/12D7sPK65vw5lTBYmmaYwJdfclDp6XO0IAX7uVd3/YtXlsEua0SVrNt3Q==", + "version": "1.6.4", + "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-1.6.4.tgz", + "integrity": "sha512-2WZef8byI9NRzGajGj5RTrroW9BxtfbP9etigW1QGAtwu/6+cLkdPOWRAs7uFtaxBNiKFYA8j/BxV5zeAo5QOQ==", "cpu": [ "arm64" ], @@ -1305,13 +1305,13 @@ "darwin" ], "engines": { - "node": ">=14.*" + "node": ">=14.21.3" } }, "node_modules/@biomejs/cli-darwin-x64": { - "version": "1.6.3", - "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-x64/-/cli-darwin-x64-1.6.3.tgz", - "integrity": "sha512-UWu0We/aIRtWXgJKe6ygWt2xR0yXs64BwWqtZbfxBojRn3jgW8UdFAkV5yiUOX3TQlsV6BZH1EQaUAVsccUeeA==", + "version": "1.6.4", + "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-x64/-/cli-darwin-x64-1.6.4.tgz", + "integrity": "sha512-uo1zgM7jvzcoDpF6dbGizejDLCqNpUIRkCj/oEK0PB0NUw8re/cn1EnxuOLZqDpn+8G75COLQTOx8UQIBBN/Kg==", "cpu": [ "x64" ], @@ -1321,13 +1321,13 @@ "darwin" ], "engines": { - "node": ">=14.*" + "node": ">=14.21.3" } }, "node_modules/@biomejs/cli-linux-arm64": { - "version": "1.6.3", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64/-/cli-linux-arm64-1.6.3.tgz", - "integrity": "sha512-wFVkQw38kOssfnkbpSh6ums5TaElw3RAt5i/VZwHmgR2nQgE0fHXLO7HwIE9VBkOEdbiIFq+2PxvFIHuJF3z3Q==", + "version": "1.6.4", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64/-/cli-linux-arm64-1.6.4.tgz", + "integrity": "sha512-wAOieaMNIpLrxGc2/xNvM//CIZg7ueWy3V5A4T7gDZ3OL/Go27EKE59a+vMKsBCYmTt7jFl4yHz0TUkUbodA/w==", "cpu": [ "arm64" ], @@ -1337,13 +1337,13 @@ "linux" ], "engines": { - "node": ">=14.*" + "node": ">=14.21.3" } }, "node_modules/@biomejs/cli-linux-arm64-musl": { - "version": "1.6.3", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-1.6.3.tgz", - "integrity": "sha512-AntGCSfLN1nPcQj4VOk3X2JgnDw07DaPC8BuBmRcsRmn+7GPSWLllVN5awIKlRPZEbGJtSnLkTiDc5Bxw8OiuA==", + "version": "1.6.4", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-1.6.4.tgz", + "integrity": "sha512-Hp8Jwt6rjj0wCcYAEN6/cfwrrPLLlGOXZ56Lei4Pt4jy39+UuPeAVFPeclrrCfxyL1wQ2xPrhd/saTHSL6DoJg==", "cpu": [ "arm64" ], @@ -1353,13 +1353,13 @@ "linux" ], "engines": { - "node": ">=14.*" + "node": ">=14.21.3" } }, "node_modules/@biomejs/cli-linux-x64": { - "version": "1.6.3", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64/-/cli-linux-x64-1.6.3.tgz", - "integrity": "sha512-vyn8TQaTZg617hjqFitwGmb1St5XXvq6I3vmxU/QFalM74BryMSvYCrYWb2Yw/TkykdEwZTMGYp+SWHRb04fTg==", + "version": "1.6.4", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64/-/cli-linux-x64-1.6.4.tgz", + "integrity": "sha512-qTWhuIw+/ePvOkjE9Zxf5OqSCYxtAvcTJtVmZT8YQnmY2I62JKNV2m7tf6O5ViKZUOP0mOQ6NgqHKcHH1eT8jw==", "cpu": [ "x64" ], @@ -1369,13 +1369,13 @@ "linux" ], "engines": { - "node": ">=14.*" + "node": ">=14.21.3" } }, "node_modules/@biomejs/cli-linux-x64-musl": { - "version": "1.6.3", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-1.6.3.tgz", - "integrity": "sha512-GelAvGsUwbxfFpKLG+7+dvDmbrfkGqn08sL8CMQrGnhjE1krAqHWiXQsjfmi0UMFdMsk7hbc4oSAP+1+mrXcHQ==", + "version": "1.6.4", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-1.6.4.tgz", + "integrity": "sha512-wqi0hr8KAx5kBO0B+m5u8QqiYFFBJOSJVSuRqTeGWW+GYLVUtXNidykNqf1JsW6jJDpbkSp2xHKE/bTlVaG2Kg==", "cpu": [ "x64" ], @@ -1385,13 +1385,13 @@ "linux" ], "engines": { - "node": ">=14.*" + "node": ">=14.21.3" } }, "node_modules/@biomejs/cli-win32-arm64": { - "version": "1.6.3", - "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-arm64/-/cli-win32-arm64-1.6.3.tgz", - "integrity": "sha512-Gx8N2Tixke6pAI1BniteCVZgUUmaFEDYosdWxoaCus15BZI/7RcBxhsRM0ZL/lC66StSQ8vHl8JBrrld1k570Q==", + "version": "1.6.4", + "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-arm64/-/cli-win32-arm64-1.6.4.tgz", + "integrity": "sha512-Wp3FiEeF6v6C5qMfLkHwf4YsoNHr/n0efvoC8jCKO/kX05OXaVExj+1uVQ1eGT7Pvx0XVm/TLprRO0vq/V6UzA==", "cpu": [ "arm64" ], @@ -1401,13 +1401,13 @@ "win32" ], "engines": { - "node": ">=14.*" + "node": ">=14.21.3" } }, "node_modules/@biomejs/cli-win32-x64": { - "version": "1.6.3", - "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-x64/-/cli-win32-x64-1.6.3.tgz", - "integrity": "sha512-meungPJw64SqoR7LXY1wG7GC4+4wgpyThdFUMGXa6PCe0BLFOIOcZ9VMj9PstuczMPdgmt/BUMPsj25dK1VO8A==", + "version": "1.6.4", + "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-x64/-/cli-win32-x64-1.6.4.tgz", + "integrity": "sha512-mz183Di5hTSGP7KjNWEhivcP1wnHLGmOxEROvoFsIxMYtDhzJDad4k5gI/1JbmA0xe4n52vsgqo09tBhrMT/Zg==", "cpu": [ "x64" ], @@ -1417,7 +1417,7 @@ "win32" ], "engines": { - "node": ">=14.*" + "node": ">=14.21.3" } }, "node_modules/@braintree/sanitize-url": { diff --git a/package.json b/package.json index 143c1d7b..e157b65b 100644 --- a/package.json +++ b/package.json @@ -38,7 +38,7 @@ }, "devDependencies": { "@actions/core": "1.10.1", - "@biomejs/biome": "1.6.3", + "@biomejs/biome": "1.6.4", "@repo/prettier-config": "*", "@repo/typescript-config": "*", "diffscribe": "*", From 7891dbf2819cc6d85d5372a1e7c6e87b200657ab Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 4 Apr 2024 19:08:10 +0300 Subject: [PATCH 174/458] Bump the definitely-typed group with 4 updates (#445) Bumps the definitely-typed group with 4 updates: [@types/eslint](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/eslint), [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node), [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) and [@types/react-dom](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react-dom). Updates `@types/eslint` from 8.56.6 to 8.56.7 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/eslint) Updates `@types/node` from 20.11.30 to 20.12.4 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) Updates `@types/react` from 18.2.73 to 18.2.74 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react) Updates `@types/react-dom` from 18.2.23 to 18.2.24 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react-dom) --- updated-dependencies: - dependency-name: "@types/eslint" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed - dependency-name: "@types/node" dependency-type: direct:development update-type: version-update:semver-minor dependency-group: definitely-typed - dependency-name: "@types/react" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed - dependency-name: "@types/react-dom" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 8 +-- docs/cache-handler-docs/package.json | 8 +-- internal/backend/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 54 ++++++++++----------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 10 files changed, 42 insertions(+), 42 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index d915969e..2ec25ccd 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -27,10 +27,10 @@ "@playwright/test": "1.42.1", "@repo/eslint-config": "*", "@repo/typescript-config": "*", - "@types/eslint": "8.56.6", - "@types/node": "20.11.30", - "@types/react": "18.2.73", - "@types/react-dom": "18.2.23", + "@types/eslint": "8.56.7", + "@types/node": "20.12.4", + "@types/react": "18.2.74", + "@types/react-dom": "18.2.24", "axios": "1.6.8", "dotenv-cli": "7.4.1", "eslint": "8.57.0", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index ab3a29b7..f0830e51 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -21,10 +21,10 @@ "@next/eslint-plugin-next": "14.1.0", "@repo/eslint-config": "*", "@repo/typescript-config": "*", - "@types/eslint": "8.56.6", - "@types/node": "20.11.30", - "@types/react": "18.2.73", - "@types/react-dom": "18.2.23", + "@types/eslint": "8.56.7", + "@types/node": "20.12.4", + "@types/react": "18.2.74", + "@types/react-dom": "18.2.24", "eslint": "8.57.0", "typescript": "5.3.3" } diff --git a/internal/backend/package.json b/internal/backend/package.json index 313d67ca..502dd75f 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.30", + "@types/node": "20.12.4", "pino-pretty": "11.0.0", "rimraf": "5.0.5", "tsx": "4.7.1", diff --git a/internal/next-common/package.json b/internal/next-common/package.json index a6ae369d..139bb131 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.30", + "@types/node": "20.12.4", "rimraf": "5.0.5", "typescript": "5.3.3" } diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index ea84c20e..fa7a00af 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -16,7 +16,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.30", + "@types/node": "20.12.4", "rimraf": "5.0.5", "typescript": "5.3.3" } diff --git a/package-lock.json b/package-lock.json index 6c453245..65266a36 100644 --- a/package-lock.json +++ b/package-lock.json @@ -47,10 +47,10 @@ "@playwright/test": "1.42.1", "@repo/eslint-config": "*", "@repo/typescript-config": "*", - "@types/eslint": "8.56.6", - "@types/node": "20.11.30", - "@types/react": "18.2.73", - "@types/react-dom": "18.2.23", + "@types/eslint": "8.56.7", + "@types/node": "20.12.4", + "@types/react": "18.2.74", + "@types/react-dom": "18.2.24", "axios": "1.6.8", "dotenv-cli": "7.4.1", "eslint": "8.57.0", @@ -120,10 +120,10 @@ "@next/eslint-plugin-next": "14.1.0", "@repo/eslint-config": "*", "@repo/typescript-config": "*", - "@types/eslint": "8.56.6", - "@types/node": "20.11.30", - "@types/react": "18.2.73", - "@types/react-dom": "18.2.23", + "@types/eslint": "8.56.7", + "@types/node": "20.12.4", + "@types/react": "18.2.74", + "@types/react-dom": "18.2.24", "eslint": "8.57.0", "typescript": "5.3.3" } @@ -466,7 +466,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.30", + "@types/node": "20.12.4", "pino-pretty": "11.0.0", "rimraf": "5.0.5", "tsx": "4.7.1", @@ -633,7 +633,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.30", + "@types/node": "20.12.4", "rimraf": "5.0.5", "typescript": "5.3.3" } @@ -693,7 +693,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.30", + "@types/node": "20.12.4", "rimraf": "5.0.5", "typescript": "5.3.3" } @@ -3639,9 +3639,9 @@ } }, "node_modules/@types/eslint": { - "version": "8.56.6", - "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.56.6.tgz", - "integrity": "sha512-ymwc+qb1XkjT/gfoQwxIeHZ6ixH23A+tCT2ADSA/DPVKzAjwYkTXBMCQ/f6fe4wEa85Lhp26VPeUxI7wMhAi7A==", + "version": "8.56.7", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.56.7.tgz", + "integrity": "sha512-SjDvI/x3zsZnOkYZ3lCt9lOZWZLB2jIlNKz+LBgCtDurK0JZcwucxYHn1w2BJkD34dgX9Tjnak0txtq4WTggEA==", "dev": true, "dependencies": { "@types/estree": "*", @@ -3715,9 +3715,9 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "20.11.30", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.30.tgz", - "integrity": "sha512-dHM6ZxwlmuZaRmUPfv1p+KrdD1Dci04FbdEm/9wEMouFqxYoFl5aMkt0VMAUtYRQDyYvD41WJLukhq/ha3YuTw==", + "version": "20.12.4", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.4.tgz", + "integrity": "sha512-E+Fa9z3wSQpzgYQdYmme5X3OTuejnnTx88A6p6vkkJosR3KBz+HpE3kqNm98VE6cfLFcISx7zW7MsJkH6KwbTw==", "dependencies": { "undici-types": "~5.26.4" } @@ -3743,18 +3743,18 @@ "integrity": "sha512-ga8y9v9uyeiLdpKddhxYQkxNDrfvuPrlFb0N1qnZZByvcElJaXthF1UhvCh9TLWJBEHeNtdnbysW7Y6Uq8CVng==" }, "node_modules/@types/react": { - "version": "18.2.73", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.73.tgz", - "integrity": "sha512-XcGdod0Jjv84HOC7N5ziY3x+qL0AfmubvKOZ9hJjJ2yd5EE+KYjWhdOjt387e9HPheHkdggF9atTifMRtyAaRA==", + "version": "18.2.74", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.74.tgz", + "integrity": "sha512-9AEqNZZyBx8OdZpxzQlaFEVCSFUM2YXJH46yPOiOpm078k6ZLOCcuAzGum/zK8YBwY+dbahVNbHrbgrAwIRlqw==", "dependencies": { "@types/prop-types": "*", "csstype": "^3.0.2" } }, "node_modules/@types/react-dom": { - "version": "18.2.23", - "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.2.23.tgz", - "integrity": "sha512-ZQ71wgGOTmDYpnav2knkjr3qXdAFu0vsk8Ci5w3pGAIdj7/kKAyn+VsQDhXsmzzzepAiI9leWMmubXz690AI/A==", + "version": "18.2.24", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.2.24.tgz", + "integrity": "sha512-cN6upcKd8zkGy4HU9F1+/s98Hrp6D4MOcippK4PoE8OZRngohHZpbJn1GsaDLz87MqvHNoT13nHvNqM9ocRHZg==", "dev": true, "dependencies": { "@types/react": "*" @@ -16829,7 +16829,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.30", + "@types/node": "20.12.4", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.1", @@ -16848,7 +16848,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.30", + "@types/node": "20.12.4", "rimraf": "5.0.5", "tsup": "8.0.2", "typescript": "5.3.3" @@ -16864,7 +16864,7 @@ "license": "MIT", "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.30", + "@types/node": "20.12.4", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.1", @@ -16886,7 +16886,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.30", + "@types/node": "20.12.4", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.1", diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index e261883f..2529026c 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -72,7 +72,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.30", + "@types/node": "20.12.4", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.1", diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index d70dd5a8..5455ed9f 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -25,7 +25,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.30", + "@types/node": "20.12.4", "rimraf": "5.0.5", "tsup": "8.0.2", "typescript": "5.3.3" diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 3e6131bf..583be515 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -28,7 +28,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.11.30", + "@types/node": "20.12.4", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.1", diff --git a/packages/server/package.json b/packages/server/package.json index 11a1dbe1..818a0b18 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -32,7 +32,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.11.30", + "@types/node": "20.12.4", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.1", From 31c579f6ff9eedf96a86357fa31033a9628df1a0 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 5 Apr 2024 11:47:01 +0300 Subject: [PATCH 175/458] Bump the npm_and_yarn group with 1 update (#444) Bumps the npm_and_yarn group with 1 update: [undici](https://github.com/nodejs/undici). Updates `undici` from 5.28.3 to 5.28.4 - [Release notes](https://github.com/nodejs/undici/releases) - [Commits](https://github.com/nodejs/undici/compare/v5.28.3...v5.28.4) --- updated-dependencies: - dependency-name: undici dependency-type: indirect dependency-group: npm_and_yarn-security-group ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index 65266a36..f3ffa152 100644 --- a/package-lock.json +++ b/package-lock.json @@ -15811,9 +15811,9 @@ } }, "node_modules/undici": { - "version": "5.28.3", - "resolved": "https://registry.npmjs.org/undici/-/undici-5.28.3.tgz", - "integrity": "sha512-3ItfzbrhDlINjaP0duwnNsKpDQk3acHI3gVJ1z4fmwMK31k5G9OVIAMLSIaP6w4FaGkaAkN6zaQO9LUvZ1t7VA==", + "version": "5.28.4", + "resolved": "https://registry.npmjs.org/undici/-/undici-5.28.4.tgz", + "integrity": "sha512-72RFADWFqKmUb2hmmvNODKL3p9hcB6Gt2DOQMis1SEBaV6a4MH8soBvzg+95CYhCKPFedut2JY9bMfrDl9D23g==", "dev": true, "dependencies": { "@fastify/busboy": "^2.0.0" From a0d534e35012386f79f1bb6240367b67784287ed Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 5 Apr 2024 12:58:31 +0300 Subject: [PATCH 176/458] Bump tsx from 4.7.1 to 4.7.2 (#447) Bumps [tsx](https://github.com/privatenumber/tsx) from 4.7.1 to 4.7.2. - [Release notes](https://github.com/privatenumber/tsx/releases) - [Changelog](https://github.com/privatenumber/tsx/blob/develop/release.config.cjs) - [Commits](https://github.com/privatenumber/tsx/compare/v4.7.1...v4.7.2) --- updated-dependencies: - dependency-name: tsx dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- internal/backend/package.json | 2 +- package-lock.json | 16 ++++++++-------- packages/cache-handler/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 6 files changed, 13 insertions(+), 13 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 2ec25ccd..911b8085 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -38,7 +38,7 @@ "pm2": "5.3.1", "redis": "4.6.13", "rimraf": "5.0.5", - "tsx": "4.7.1", + "tsx": "4.7.2", "typescript": "5.3.3" } } diff --git a/internal/backend/package.json b/internal/backend/package.json index 502dd75f..9a7d0d00 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -18,7 +18,7 @@ "@types/node": "20.12.4", "pino-pretty": "11.0.0", "rimraf": "5.0.5", - "tsx": "4.7.1", + "tsx": "4.7.2", "typescript": "5.3.3" } } diff --git a/package-lock.json b/package-lock.json index f3ffa152..3fda0857 100644 --- a/package-lock.json +++ b/package-lock.json @@ -58,7 +58,7 @@ "pm2": "5.3.1", "redis": "4.6.13", "rimraf": "5.0.5", - "tsx": "4.7.1", + "tsx": "4.7.2", "typescript": "5.3.3" } }, @@ -469,7 +469,7 @@ "@types/node": "20.12.4", "pino-pretty": "11.0.0", "rimraf": "5.0.5", - "tsx": "4.7.1", + "tsx": "4.7.2", "typescript": "5.3.3" } }, @@ -15451,9 +15451,9 @@ "dev": true }, "node_modules/tsx": { - "version": "4.7.1", - "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.7.1.tgz", - "integrity": "sha512-8d6VuibXHtlN5E3zFkgY8u4DX7Y3Z27zvvPKVmLon/D4AjuKzarkUBTLDBgj9iTQ0hg5xM7c/mYiRVM+HETf0g==", + "version": "4.7.2", + "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.7.2.tgz", + "integrity": "sha512-BCNd4kz6fz12fyrgCTEdZHGJ9fWTGeUzXmQysh0RVocDY3h4frk05ZNCXSy4kIenF7y/QnrdiVpTsyNRn6vlAw==", "dev": true, "dependencies": { "esbuild": "~0.19.10", @@ -16832,7 +16832,7 @@ "@types/node": "20.12.4", "rimraf": "5.0.5", "tsup": "8.0.2", - "tsx": "4.7.1", + "tsx": "4.7.2", "typescript": "5.3.3" }, "peerDependencies": { @@ -16867,7 +16867,7 @@ "@types/node": "20.12.4", "rimraf": "5.0.5", "tsup": "8.0.2", - "tsx": "4.7.1", + "tsx": "4.7.2", "typescript": "5.3.3" } }, @@ -16889,7 +16889,7 @@ "@types/node": "20.12.4", "rimraf": "5.0.5", "tsup": "8.0.2", - "tsx": "4.7.1", + "tsx": "4.7.2", "typescript": "5.3.3" } } diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 2529026c..ce0429a4 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -75,7 +75,7 @@ "@types/node": "20.12.4", "rimraf": "5.0.5", "tsup": "8.0.2", - "tsx": "4.7.1", + "tsx": "4.7.2", "typescript": "5.3.3" }, "peerDependencies": { diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 583be515..57d1261d 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -31,7 +31,7 @@ "@types/node": "20.12.4", "rimraf": "5.0.5", "tsup": "8.0.2", - "tsx": "4.7.1", + "tsx": "4.7.2", "typescript": "5.3.3" } } diff --git a/packages/server/package.json b/packages/server/package.json index 818a0b18..f5173395 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -35,7 +35,7 @@ "@types/node": "20.12.4", "rimraf": "5.0.5", "tsup": "8.0.2", - "tsx": "4.7.1", + "tsx": "4.7.2", "typescript": "5.3.3" }, "distTags": [ From 8ae00448acd4f49405a28208a82c1344da65ea9b Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Fri, 5 Apr 2024 15:00:24 +0300 Subject: [PATCH 177/458] Fix unlink calls for Redis Handlers (#448) --- .../pages/usage/creating-a-custom-handler.mdx | 5 + package-lock.json | 1469 +++++++++-------- .../cache-handler/src/handlers/redis-stack.ts | 4 + 3 files changed, 800 insertions(+), 678 deletions(-) diff --git a/docs/cache-handler-docs/src/pages/usage/creating-a-custom-handler.mdx b/docs/cache-handler-docs/src/pages/usage/creating-a-custom-handler.mdx index 1f98570c..02d1a012 100644 --- a/docs/cache-handler-docs/src/pages/usage/creating-a-custom-handler.mdx +++ b/docs/cache-handler-docs/src/pages/usage/creating-a-custom-handler.mdx @@ -141,6 +141,11 @@ CacheHandler.onCreation(async () => { } } + // If there are no keys to delete, return early. + if (keysToDelete.length === 0) { + return; + } + // Create a new AbortSignal with a timeout for the Redis operation. const options = commandOptions({ signal: AbortSignal.timeout(timeoutMs) }); diff --git a/package-lock.json b/package-lock.json index 3fda0857..8f9a16dc 100644 --- a/package-lock.json +++ b/package-lock.json @@ -62,6 +62,15 @@ "typescript": "5.3.3" } }, + "apps/cache-testing/node_modules/@types/node": { + "version": "20.12.4", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.4.tgz", + "integrity": "sha512-E+Fa9z3wSQpzgYQdYmme5X3OTuejnnTx88A6p6vkkJosR3KBz+HpE3kqNm98VE6cfLFcISx7zW7MsJkH6KwbTw==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "apps/cache-testing/node_modules/next": { "version": "14.2.0-canary.4", "resolved": "https://registry.npmjs.org/next/-/next-14.2.0-canary.4.tgz", @@ -285,13 +294,13 @@ "tslib": "^2.4.0" } }, - "docs/cache-handler-docs/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "docs/cache-handler-docs/node_modules/@types/node": { + "version": "20.12.4", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.4.tgz", + "integrity": "sha512-E+Fa9z3wSQpzgYQdYmme5X3OTuejnnTx88A6p6vkkJosR3KBz+HpE3kqNm98VE6cfLFcISx7zW7MsJkH6KwbTw==", "dev": true, "dependencies": { - "balanced-match": "^1.0.0" + "undici-types": "~5.26.4" } }, "docs/cache-handler-docs/node_modules/glob": { @@ -316,21 +325,6 @@ "url": "https://github.com/sponsors/isaacs" } }, - "docs/cache-handler-docs/node_modules/minimatch": { - "version": "9.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.4.tgz", - "integrity": "sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==", - "dev": true, - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, "docs/cache-handler-docs/node_modules/next": { "version": "14.1.0", "resolved": "https://registry.npmjs.org/next/-/next-14.1.0.tgz", @@ -473,6 +467,15 @@ "typescript": "5.3.3" } }, + "internal/backend/node_modules/@types/node": { + "version": "20.12.4", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.4.tgz", + "integrity": "sha512-E+Fa9z3wSQpzgYQdYmme5X3OTuejnnTx88A6p6vkkJosR3KBz+HpE3kqNm98VE6cfLFcISx7zW7MsJkH6KwbTw==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "internal/eslint-config": { "name": "@repo/eslint-config", "version": "0.0.0", @@ -487,9 +490,9 @@ } }, "internal/eslint-config/node_modules/@next/eslint-plugin-next": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.1.3.tgz", - "integrity": "sha512-VCnZI2cy77Yaj3L7Uhs3+44ikMM1VD/fBMwvTBb3hIaTIuqa+DmG4dhUDq+MASu3yx97KhgsVJbsas0XuiKyww==", + "version": "14.1.4", + "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.1.4.tgz", + "integrity": "sha512-n4zYNLSyCo0Ln5b7qxqQeQ34OZKXwgbdcx6kmkQbywr+0k6M3Vinft0T72R6CDAcDrne2IAgSud4uWCzFgc5HA==", "dev": true, "optional": true, "peer": true, @@ -548,21 +551,10 @@ } } }, - "internal/eslint-config/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "balanced-match": "^1.0.0" - } - }, "internal/eslint-config/node_modules/eslint-plugin-vitest": { - "version": "0.3.24", - "resolved": "https://registry.npmjs.org/eslint-plugin-vitest/-/eslint-plugin-vitest-0.3.24.tgz", - "integrity": "sha512-MjxQCfOzLVJwi5EBHZYtv6zKHVUMRDh269D3KHCxHW0skoJhNDgE5MKvuxQ0Rh6B1aa6KuGUcvffRCdtN4Bg7A==", + "version": "0.3.26", + "resolved": "https://registry.npmjs.org/eslint-plugin-vitest/-/eslint-plugin-vitest-0.3.26.tgz", + "integrity": "sha512-oxe5JSPgRjco8caVLTh7Ti8PxpwJdhSV0hTQAmkFcNcmy/9DnqLB/oNVRA11RmVRP//2+jIIT6JuBEcpW3obYg==", "dev": true, "dependencies": { "@typescript-eslint/utils": "^7.1.1" @@ -607,23 +599,6 @@ "url": "https://github.com/sponsors/isaacs" } }, - "internal/eslint-config/node_modules/minimatch": { - "version": "9.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.4.tgz", - "integrity": "sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==", - "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, "internal/next-common": { "name": "@neshca/next-common", "version": "0.0.0", @@ -638,6 +613,15 @@ "typescript": "5.3.3" } }, + "internal/next-common/node_modules/@types/node": { + "version": "20.12.4", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.4.tgz", + "integrity": "sha512-E+Fa9z3wSQpzgYQdYmme5X3OTuejnnTx88A6p6vkkJosR3KBz+HpE3kqNm98VE6cfLFcISx7zW7MsJkH6KwbTw==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "internal/next-common/node_modules/next": { "version": "14.2.0-canary.4", "resolved": "https://registry.npmjs.org/next/-/next-14.2.0-canary.4.tgz", @@ -698,6 +682,15 @@ "typescript": "5.3.3" } }, + "internal/next-lru-cache/node_modules/@types/node": { + "version": "20.12.4", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.4.tgz", + "integrity": "sha512-E+Fa9z3wSQpzgYQdYmme5X3OTuejnnTx88A6p6vkkJosR3KBz+HpE3kqNm98VE6cfLFcISx7zW7MsJkH6KwbTw==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "internal/prettier-config": { "name": "@repo/prettier-config", "version": "0.0.0", @@ -707,9 +700,9 @@ } }, "internal/prettier-config/node_modules/@next/eslint-plugin-next": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.1.3.tgz", - "integrity": "sha512-VCnZI2cy77Yaj3L7Uhs3+44ikMM1VD/fBMwvTBb3hIaTIuqa+DmG4dhUDq+MASu3yx97KhgsVJbsas0XuiKyww==", + "version": "14.1.4", + "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.1.4.tgz", + "integrity": "sha512-n4zYNLSyCo0Ln5b7qxqQeQ34OZKXwgbdcx6kmkQbywr+0k6M3Vinft0T72R6CDAcDrne2IAgSud4uWCzFgc5HA==", "dev": true, "optional": true, "peer": true, @@ -768,21 +761,10 @@ } } }, - "internal/prettier-config/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "balanced-match": "^1.0.0" - } - }, "internal/prettier-config/node_modules/eslint-plugin-vitest": { - "version": "0.3.24", - "resolved": "https://registry.npmjs.org/eslint-plugin-vitest/-/eslint-plugin-vitest-0.3.24.tgz", - "integrity": "sha512-MjxQCfOzLVJwi5EBHZYtv6zKHVUMRDh269D3KHCxHW0skoJhNDgE5MKvuxQ0Rh6B1aa6KuGUcvffRCdtN4Bg7A==", + "version": "0.3.26", + "resolved": "https://registry.npmjs.org/eslint-plugin-vitest/-/eslint-plugin-vitest-0.3.26.tgz", + "integrity": "sha512-oxe5JSPgRjco8caVLTh7Ti8PxpwJdhSV0hTQAmkFcNcmy/9DnqLB/oNVRA11RmVRP//2+jIIT6JuBEcpW3obYg==", "dev": true, "dependencies": { "@typescript-eslint/utils": "^7.1.1" @@ -827,23 +809,6 @@ "url": "https://github.com/sponsors/isaacs" } }, - "internal/prettier-config/node_modules/minimatch": { - "version": "9.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.4.tgz", - "integrity": "sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==", - "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, "internal/typescript-config": { "name": "@repo/typescript-config", "version": "0.0.0", @@ -892,41 +857,41 @@ } }, "node_modules/@babel/code-frame": { - "version": "7.23.5", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.23.5.tgz", - "integrity": "sha512-CgH3s1a96LipHCmSUmYFPwY7MNx8C3avkq7i4Wl3cfa662ldtUe4VM1TPXX70pfmrlWTb6jLqTYrZyT2ZTJBgA==", + "version": "7.24.2", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.2.tgz", + "integrity": "sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==", "dependencies": { - "@babel/highlight": "^7.23.4", - "chalk": "^2.4.2" + "@babel/highlight": "^7.24.2", + "picocolors": "^1.0.0" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/compat-data": { - "version": "7.23.5", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.23.5.tgz", - "integrity": "sha512-uU27kfDRlhfKl+w1U6vp16IuvSLtjAxdArVXPa9BvLkrr7CYIsxH5adpHObeAGY/41+syctUWOZ140a2Rvkgjw==", + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.24.4.tgz", + "integrity": "sha512-vg8Gih2MLK+kOkHJp4gBEIkyaIi00jgWot2D9QOmmfLC8jINSOzmCLta6Bvz/JSBCqnegV0L80jhxkol5GWNfQ==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/core": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.0.tgz", - "integrity": "sha512-fQfkg0Gjkza3nf0c7/w6Xf34BW4YvzNfACRLmmb7XRLa6XHdR+K9AlJlxneFfWYf6uhOzuzZVTjF/8KfndZANw==", + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.4.tgz", + "integrity": "sha512-MBVlMXP+kkl5394RBLSxxk/iLTeVGuXTV3cIDXavPpMMqnSnt6apKgan/U8O3USWZCWZT/TbgfEpKa4uMgN4Dg==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.2.0", - "@babel/code-frame": "^7.23.5", - "@babel/generator": "^7.23.6", + "@babel/code-frame": "^7.24.2", + "@babel/generator": "^7.24.4", "@babel/helper-compilation-targets": "^7.23.6", "@babel/helper-module-transforms": "^7.23.3", - "@babel/helpers": "^7.24.0", - "@babel/parser": "^7.24.0", + "@babel/helpers": "^7.24.4", + "@babel/parser": "^7.24.4", "@babel/template": "^7.24.0", - "@babel/traverse": "^7.24.0", + "@babel/traverse": "^7.24.1", "@babel/types": "^7.24.0", "convert-source-map": "^2.0.0", "debug": "^4.1.0", @@ -952,9 +917,9 @@ } }, "node_modules/@babel/eslint-parser": { - "version": "7.23.10", - "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.23.10.tgz", - "integrity": "sha512-3wSYDPZVnhseRnxRJH6ZVTNknBz76AEnyC+AYYhasjP3Yy23qz0ERR7Fcd2SHmYuSFJ2kY9gaaDd3vyqU09eSw==", + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.24.1.tgz", + "integrity": "sha512-d5guuzMlPeDfZIbpQ8+g1NaCNuAGBBGNECh0HVqz1sjOeVLh2CEaifuOysCH18URW6R7pqXINvf5PaR/dC6jLQ==", "dev": true, "dependencies": { "@nicolo-ribaudo/eslint-scope-5-internals": "5.1.1-v1", @@ -988,14 +953,14 @@ } }, "node_modules/@babel/generator": { - "version": "7.23.6", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.23.6.tgz", - "integrity": "sha512-qrSfCYxYQB5owCmGLbl8XRpX1ytXlpueOb0N0UmQwA073KZxejgQTzAmJezxvpwQD9uGtK2shHdi55QT+MbjIw==", + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.4.tgz", + "integrity": "sha512-Xd6+v6SnjWVx/nus+y0l1sxMOTOMBkyL4+BIdbALyatQnAe/SRVjANeDPSCYaX+i1iJmuGSKf3Z+E+V/va1Hvw==", "dev": true, "dependencies": { - "@babel/types": "^7.23.6", - "@jridgewell/gen-mapping": "^0.3.2", - "@jridgewell/trace-mapping": "^0.3.17", + "@babel/types": "^7.24.0", + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25", "jsesc": "^2.5.1" }, "engines": { @@ -1077,12 +1042,12 @@ } }, "node_modules/@babel/helper-module-imports": { - "version": "7.22.15", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.22.15.tgz", - "integrity": "sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==", + "version": "7.24.3", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.24.3.tgz", + "integrity": "sha512-viKb0F9f2s0BCS22QSF308z/+1YWKV/76mwt61NBzS5izMzDPwdq1pTrzf+Li3npBWX9KdQbkeCt1jSAM7lZqg==", "dev": true, "dependencies": { - "@babel/types": "^7.22.15" + "@babel/types": "^7.24.0" }, "engines": { "node": ">=6.9.0" @@ -1132,9 +1097,9 @@ } }, "node_modules/@babel/helper-string-parser": { - "version": "7.23.4", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.23.4.tgz", - "integrity": "sha512-803gmbQdqwdf4olxrX4AJyFBV/RTr3rSmOj0rKwesmzlfhYNDEs+/iOcznzpNWlJlIlTJC2QfPFcHB6DlzdVLQ==", + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz", + "integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==", "dev": true, "engines": { "node": ">=6.9.0" @@ -1158,13 +1123,13 @@ } }, "node_modules/@babel/helpers": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.24.0.tgz", - "integrity": "sha512-ulDZdc0Aj5uLc5nETsa7EPx2L7rM0YJM8r7ck7U73AXi7qOV44IHHRAYZHY6iU1rr3C5N4NtTmMRUJP6kwCWeA==", + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.24.4.tgz", + "integrity": "sha512-FewdlZbSiwaVGlgT1DPANDuCHaDMiOo+D/IDYRFYjHOuv66xMSJ7fQwwODwRNAPkADIO/z1EoF/l2BCWlWABDw==", "dev": true, "dependencies": { "@babel/template": "^7.24.0", - "@babel/traverse": "^7.24.0", + "@babel/traverse": "^7.24.1", "@babel/types": "^7.24.0" }, "engines": { @@ -1172,22 +1137,23 @@ } }, "node_modules/@babel/highlight": { - "version": "7.23.4", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.23.4.tgz", - "integrity": "sha512-acGdbYSfp2WheJoJm/EBBBLh/ID8KDc64ISZ9DYtBmC8/Q204PZJLHyzeB5qMzJ5trcOkybd78M4x2KWsUq++A==", + "version": "7.24.2", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.2.tgz", + "integrity": "sha512-Yac1ao4flkTxTteCDZLEvdxg2fZfz1v8M4QpaGypq/WPDqg3ijHYbDfs+LG5hvzSoqaSZ9/Z9lKSP3CjZjv+pA==", "dependencies": { "@babel/helper-validator-identifier": "^7.22.20", "chalk": "^2.4.2", - "js-tokens": "^4.0.0" + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/parser": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.0.tgz", - "integrity": "sha512-QuP/FxEAzMSjXygs8v4N9dvdXzEHN4W1oF3PxuWAtPo08UdM17u89RDMgjLn/mlc56iM0HlLmVkO/wgR+rDgHg==", + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.4.tgz", + "integrity": "sha512-zTvEBcghmeBma9QIGunWevvBAp4/Qu9Bdq+2k0Ot4fVMD6v3dsC9WOcRSKk7tRRyBM/53yKMJko9xOatGQAwSg==", "dev": true, "bin": { "parser": "bin/babel-parser.js" @@ -1197,9 +1163,9 @@ } }, "node_modules/@babel/runtime": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.24.0.tgz", - "integrity": "sha512-Chk32uHMg6TnQdvw2e9IlqPpFX/6NLuK0Ys2PqLb7/gL5uFn9mXvK715FGLlOLQrcO4qIkNHkvPGktzzXexsFw==", + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.24.4.tgz", + "integrity": "sha512-dkxf7+hn8mFBwKjs9bvBlArzLVxVbS8usaPUDd5p2a9JCL9tB8OaOVN1isD4+Xyk4ns89/xeOmbQvgdK7IIVdA==", "dependencies": { "regenerator-runtime": "^0.14.0" }, @@ -1222,18 +1188,18 @@ } }, "node_modules/@babel/traverse": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.0.tgz", - "integrity": "sha512-HfuJlI8qq3dEDmNU5ChzzpZRWq+oxCZQyMzIMEqLho+AQnhMnKQUzH6ydo3RBl/YjPCuk68Y6s0Gx0AeyULiWw==", + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.1.tgz", + "integrity": "sha512-xuU6o9m68KeqZbQuDt2TcKSxUw/mrsvavlEqQ1leZ/B+C9tk6E4sRWy97WaXgvq5E+nU3cXMxv3WKOCanVMCmQ==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.23.5", - "@babel/generator": "^7.23.6", + "@babel/code-frame": "^7.24.1", + "@babel/generator": "^7.24.1", "@babel/helper-environment-visitor": "^7.22.20", "@babel/helper-function-name": "^7.23.0", "@babel/helper-hoist-variables": "^7.22.5", "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/parser": "^7.24.0", + "@babel/parser": "^7.24.1", "@babel/types": "^7.24.0", "debug": "^4.3.1", "globals": "^11.1.0" @@ -2085,6 +2051,16 @@ "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", "dev": true }, + "node_modules/@eslint/eslintrc/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, "node_modules/@eslint/eslintrc/node_modules/js-yaml": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", @@ -2097,6 +2073,18 @@ "js-yaml": "bin/js-yaml.js" } }, + "node_modules/@eslint/eslintrc/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, "node_modules/@eslint/js": { "version": "8.57.0", "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.57.0.tgz", @@ -2196,6 +2184,28 @@ "node": ">=10.10.0" } }, + "node_modules/@humanwhocodes/config-array/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/@humanwhocodes/config-array/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, "node_modules/@humanwhocodes/module-importer": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", @@ -2210,9 +2220,9 @@ } }, "node_modules/@humanwhocodes/object-schema": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.2.tgz", - "integrity": "sha512-6EwiSjwWYP7pTckG6I5eyFANjPhmPjUX9JRLUSfNPC7FX7zK9gyZAfUEaECL6ALTpGX5AjnBq3C9XmVWPitNpw==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.3.tgz", + "integrity": "sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==", "dev": true }, "node_modules/@isaacs/cliui": { @@ -2318,11 +2328,6 @@ "fs-extra": "^8.1.0" } }, - "node_modules/@manypkg/find-root/node_modules/@types/node": { - "version": "12.20.55", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", - "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" - }, "node_modules/@manypkg/find-root/node_modules/fs-extra": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", @@ -2689,15 +2694,6 @@ "glob": "10.3.10" } }, - "node_modules/@next/eslint-plugin-next/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0" - } - }, "node_modules/@next/eslint-plugin-next/node_modules/glob": { "version": "10.3.10", "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", @@ -2720,21 +2716,6 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/@next/eslint-plugin-next/node_modules/minimatch": { - "version": "9.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.4.tgz", - "integrity": "sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==", - "dev": true, - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, "node_modules/@next/swc-darwin-arm64": { "version": "14.2.0-canary.4", "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.0-canary.4.tgz", @@ -3364,9 +3345,9 @@ "link": true }, "node_modules/@rollup/rollup-android-arm-eabi": { - "version": "4.12.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.12.1.tgz", - "integrity": "sha512-iU2Sya8hNn1LhsYyf0N+L4Gf9Qc+9eBTJJJsaOGUp+7x4n2M9dxTt8UvhJl3oeftSjblSlpCfvjA/IfP3g5VjQ==", + "version": "4.14.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.14.0.tgz", + "integrity": "sha512-jwXtxYbRt1V+CdQSy6Z+uZti7JF5irRKF8hlKfEnF/xJpcNGuuiZMBvuoYM+x9sr9iWGnzrlM0+9hvQ1kgkf1w==", "cpu": [ "arm" ], @@ -3377,9 +3358,9 @@ ] }, "node_modules/@rollup/rollup-android-arm64": { - "version": "4.12.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.12.1.tgz", - "integrity": "sha512-wlzcWiH2Ir7rdMELxFE5vuM7D6TsOcJ2Yw0c3vaBR3VOsJFVTx9xvwnAvhgU5Ii8Gd6+I11qNHwndDscIm0HXg==", + "version": "4.14.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.14.0.tgz", + "integrity": "sha512-fI9nduZhCccjzlsA/OuAwtFGWocxA4gqXGTLvOyiF8d+8o0fZUeSztixkYjcGq1fGZY3Tkq4yRvHPFxU+jdZ9Q==", "cpu": [ "arm64" ], @@ -3390,9 +3371,9 @@ ] }, "node_modules/@rollup/rollup-darwin-arm64": { - "version": "4.12.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.12.1.tgz", - "integrity": "sha512-YRXa1+aZIFN5BaImK+84B3uNK8C6+ynKLPgvn29X9s0LTVCByp54TB7tdSMHDR7GTV39bz1lOmlLDuedgTwwHg==", + "version": "4.14.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.14.0.tgz", + "integrity": "sha512-BcnSPRM76/cD2gQC+rQNGBN6GStBs2pl/FpweW8JYuz5J/IEa0Fr4AtrPv766DB/6b2MZ/AfSIOSGw3nEIP8SA==", "cpu": [ "arm64" ], @@ -3403,9 +3384,9 @@ ] }, "node_modules/@rollup/rollup-darwin-x64": { - "version": "4.12.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.12.1.tgz", - "integrity": "sha512-opjWJ4MevxeA8FhlngQWPBOvVWYNPFkq6/25rGgG+KOy0r8clYwL1CFd+PGwRqqMFVQ4/Qd3sQu5t7ucP7C/Uw==", + "version": "4.14.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.14.0.tgz", + "integrity": "sha512-LDyFB9GRolGN7XI6955aFeI3wCdCUszFWumWU0deHA8VpR3nWRrjG6GtGjBrQxQKFevnUTHKCfPR4IvrW3kCgQ==", "cpu": [ "x64" ], @@ -3416,9 +3397,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm-gnueabihf": { - "version": "4.12.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.12.1.tgz", - "integrity": "sha512-uBkwaI+gBUlIe+EfbNnY5xNyXuhZbDSx2nzzW8tRMjUmpScd6lCQYKY2V9BATHtv5Ef2OBq6SChEP8h+/cxifQ==", + "version": "4.14.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.14.0.tgz", + "integrity": "sha512-ygrGVhQP47mRh0AAD0zl6QqCbNsf0eTo+vgwkY6LunBcg0f2Jv365GXlDUECIyoXp1kKwL5WW6rsO429DBY/bA==", "cpu": [ "arm" ], @@ -3429,9 +3410,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-gnu": { - "version": "4.12.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.12.1.tgz", - "integrity": "sha512-0bK9aG1kIg0Su7OcFTlexkVeNZ5IzEsnz1ept87a0TUgZ6HplSgkJAnFpEVRW7GRcikT4GlPV0pbtVedOaXHQQ==", + "version": "4.14.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.14.0.tgz", + "integrity": "sha512-x+uJ6MAYRlHGe9wi4HQjxpaKHPM3d3JjqqCkeC5gpnnI6OWovLdXTpfa8trjxPLnWKyBsSi5kne+146GAxFt4A==", "cpu": [ "arm64" ], @@ -3442,9 +3423,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-musl": { - "version": "4.12.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.12.1.tgz", - "integrity": "sha512-qB6AFRXuP8bdkBI4D7UPUbE7OQf7u5OL+R94JE42Z2Qjmyj74FtDdLGeriRyBDhm4rQSvqAGCGC01b8Fu2LthQ==", + "version": "4.14.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.14.0.tgz", + "integrity": "sha512-nrRw8ZTQKg6+Lttwqo6a2VxR9tOroa2m91XbdQ2sUUzHoedXlsyvY1fN4xWdqz8PKmf4orDwejxXHjh7YBGUCA==", "cpu": [ "arm64" ], @@ -3454,10 +3435,23 @@ "linux" ] }, + "node_modules/@rollup/rollup-linux-powerpc64le-gnu": { + "version": "4.14.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.14.0.tgz", + "integrity": "sha512-xV0d5jDb4aFu84XKr+lcUJ9y3qpIWhttO3Qev97z8DKLXR62LC3cXT/bMZXrjLF9X+P5oSmJTzAhqwUbY96PnA==", + "cpu": [ + "ppc64le" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, "node_modules/@rollup/rollup-linux-riscv64-gnu": { - "version": "4.12.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.12.1.tgz", - "integrity": "sha512-sHig3LaGlpNgDj5o8uPEoGs98RII8HpNIqFtAI8/pYABO8i0nb1QzT0JDoXF/pxzqO+FkxvwkHZo9k0NJYDedg==", + "version": "4.14.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.14.0.tgz", + "integrity": "sha512-SDDhBQwZX6LPRoPYjAZWyL27LbcBo7WdBFWJi5PI9RPCzU8ijzkQn7tt8NXiXRiFMJCVpkuMkBf4OxSxVMizAw==", "cpu": [ "riscv64" ], @@ -3467,10 +3461,23 @@ "linux" ] }, + "node_modules/@rollup/rollup-linux-s390x-gnu": { + "version": "4.14.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.14.0.tgz", + "integrity": "sha512-RxB/qez8zIDshNJDufYlTT0ZTVut5eCpAZ3bdXDU9yTxBzui3KhbGjROK2OYTTor7alM7XBhssgoO3CZ0XD3qA==", + "cpu": [ + "s390x" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, "node_modules/@rollup/rollup-linux-x64-gnu": { - "version": "4.12.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.12.1.tgz", - "integrity": "sha512-nD3YcUv6jBJbBNFvSbp0IV66+ba/1teuBcu+fBBPZ33sidxitc6ErhON3JNavaH8HlswhWMC3s5rgZpM4MtPqQ==", + "version": "4.14.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.14.0.tgz", + "integrity": "sha512-C6y6z2eCNCfhZxT9u+jAM2Fup89ZjiG5pIzZIDycs1IwESviLxwkQcFRGLjnDrP+PT+v5i4YFvlcfAs+LnreXg==", "cpu": [ "x64" ], @@ -3481,9 +3488,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-musl": { - "version": "4.12.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.12.1.tgz", - "integrity": "sha512-7/XVZqgBby2qp/cO0TQ8uJK+9xnSdJ9ct6gSDdEr4MfABrjTyrW6Bau7HQ73a2a5tPB7hno49A0y1jhWGDN9OQ==", + "version": "4.14.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.14.0.tgz", + "integrity": "sha512-i0QwbHYfnOMYsBEyjxcwGu5SMIi9sImDVjDg087hpzXqhBSosxkE7gyIYFHgfFl4mr7RrXksIBZ4DoLoP4FhJg==", "cpu": [ "x64" ], @@ -3494,9 +3501,9 @@ ] }, "node_modules/@rollup/rollup-win32-arm64-msvc": { - "version": "4.12.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.12.1.tgz", - "integrity": "sha512-CYc64bnICG42UPL7TrhIwsJW4QcKkIt9gGlj21gq3VV0LL6XNb1yAdHVp1pIi9gkts9gGcT3OfUYHjGP7ETAiw==", + "version": "4.14.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.14.0.tgz", + "integrity": "sha512-Fq52EYb0riNHLBTAcL0cun+rRwyZ10S9vKzhGKKgeD+XbwunszSY0rVMco5KbOsTlwovP2rTOkiII/fQ4ih/zQ==", "cpu": [ "arm64" ], @@ -3507,9 +3514,9 @@ ] }, "node_modules/@rollup/rollup-win32-ia32-msvc": { - "version": "4.12.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.12.1.tgz", - "integrity": "sha512-LN+vnlZ9g0qlHGlS920GR4zFCqAwbv2lULrR29yGaWP9u7wF5L7GqWu9Ah6/kFZPXPUkpdZwd//TNR+9XC9hvA==", + "version": "4.14.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.14.0.tgz", + "integrity": "sha512-e/PBHxPdJ00O9p5Ui43+vixSgVf4NlLsmV6QneGERJ3lnjIua/kim6PRFe3iDueT1rQcgSkYP8ZBBXa/h4iPvw==", "cpu": [ "ia32" ], @@ -3520,9 +3527,9 @@ ] }, "node_modules/@rollup/rollup-win32-x64-msvc": { - "version": "4.12.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.12.1.tgz", - "integrity": "sha512-n+vkrSyphvmU0qkQ6QBNXCGr2mKjhP08mPRM/Xp5Ck2FV4NrHU+y6axzDeixUrCBHVUS51TZhjqrKBBsHLKb2Q==", + "version": "4.14.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.14.0.tgz", + "integrity": "sha512-aGg7iToJjdklmxlUlJh/PaPNa4PmqHfyRMLunbL3eaMO0gp656+q1zOKkpJ/CVe9CryJv6tAN1HDoR8cNGzkag==", "cpu": [ "x64" ], @@ -3533,9 +3540,9 @@ ] }, "node_modules/@rushstack/eslint-patch": { - "version": "1.7.2", - "resolved": "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.7.2.tgz", - "integrity": "sha512-RbhOOTCNoCrbfkRyoXODZp75MlpiHMgbE5MEBZAnnnLyQNgrigEj4p0lzsMDyc1zVsJDLrivB58tgg3emX0eEA==", + "version": "1.10.1", + "resolved": "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.10.1.tgz", + "integrity": "sha512-S3Kq8e7LqxkA9s7HKLqXGTGck1uwis5vAXan3FnU5yw1Ec5hsSGnq4s/UCaSqABPOnOTg7zASLyst7+ohgWexg==", "dev": true }, "node_modules/@swc/counter": { @@ -3553,11 +3560,11 @@ } }, "node_modules/@tanstack/react-virtual": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/@tanstack/react-virtual/-/react-virtual-3.1.3.tgz", - "integrity": "sha512-YCzcbF/Ws/uZ0q3Z6fagH+JVhx4JLvbSflgldMgLsuvB8aXjZLLb3HvrEVxY480F9wFlBiXlvQxOyXb5ENPrNA==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/@tanstack/react-virtual/-/react-virtual-3.2.0.tgz", + "integrity": "sha512-OEdMByf2hEfDa6XDbGlZN8qO6bTjlNKqjM3im9JG+u3mCL8jALy0T/67oDI001raUUPh1Bdmfn4ZvPOV5knpcg==", "dependencies": { - "@tanstack/virtual-core": "3.1.3" + "@tanstack/virtual-core": "3.2.0" }, "funding": { "type": "github", @@ -3569,9 +3576,9 @@ } }, "node_modules/@tanstack/virtual-core": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/@tanstack/virtual-core/-/virtual-core-3.1.3.tgz", - "integrity": "sha512-Y5B4EYyv1j9V8LzeAoOVeTg0LI7Fo5InYKgAjkY1Pu9GjtUwX/EKxNcU7ng3sKr99WEf+bPTcktAeybyMOYo+g==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/@tanstack/virtual-core/-/virtual-core-3.2.0.tgz", + "integrity": "sha512-P5XgYoAw/vfW65byBbJQCw+cagdXDT/qH6wmABiLt4v4YBT2q2vqCOhihe+D1Nt325F/S/0Tkv6C5z0Lv+VBQQ==", "funding": { "type": "github", "url": "https://github.com/sponsors/tannerlinsley" @@ -3700,9 +3707,9 @@ } }, "node_modules/@types/mdx": { - "version": "2.0.11", - "resolved": "https://registry.npmjs.org/@types/mdx/-/mdx-2.0.11.tgz", - "integrity": "sha512-HM5bwOaIQJIQbAYfax35HCKxx7a3KrK3nBtIqJgSOitivTD1y3oW9P3rxY9RkXYPUk7y/AjAohfHKmFpGE79zw==" + "version": "2.0.12", + "resolved": "https://registry.npmjs.org/@types/mdx/-/mdx-2.0.12.tgz", + "integrity": "sha512-H9VZ9YqE+H28FQVchC83RCs5xQ2J7mAAv6qdDEaWmXEVl3OpdH+xfrSUzQ1lp7U7oSTRZ0RvW08ASPJsYBi7Cw==" }, "node_modules/@types/minimist": { "version": "1.2.5", @@ -3715,12 +3722,9 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "20.12.4", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.4.tgz", - "integrity": "sha512-E+Fa9z3wSQpzgYQdYmme5X3OTuejnnTx88A6p6vkkJosR3KBz+HpE3kqNm98VE6cfLFcISx7zW7MsJkH6KwbTw==", - "dependencies": { - "undici-types": "~5.26.4" - } + "version": "12.20.55", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", + "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" }, "node_modules/@types/node-fetch": { "version": "2.6.11", @@ -3738,9 +3742,9 @@ "integrity": "sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==" }, "node_modules/@types/prop-types": { - "version": "15.7.11", - "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.11.tgz", - "integrity": "sha512-ga8y9v9uyeiLdpKddhxYQkxNDrfvuPrlFb0N1qnZZByvcElJaXthF1UhvCh9TLWJBEHeNtdnbysW7Y6Uq8CVng==" + "version": "15.7.12", + "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.12.tgz", + "integrity": "sha512-5zvhXYtRNRluoE/jAp4GVsSduVUzNWKkOZrCDBWYtE7biZywwdC2AcEzg+cSMLFRfVgeAFqpfNabiPjxFddV1Q==" }, "node_modules/@types/react": { "version": "18.2.74", @@ -3918,15 +3922,6 @@ } } }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0" - } - }, "node_modules/@typescript-eslint/typescript-estree/node_modules/minimatch": { "version": "9.0.3", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", @@ -4025,9 +4020,9 @@ } }, "node_modules/agent-base": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.0.tgz", - "integrity": "sha512-o/zjMZRhJxny7OyEF+Op8X+efiELC7k7yOjMzgfzVqOzXqkBkWI79YoTdOtsuWd5BWhAGAuOY/Xa6xpiaWXiNg==", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz", + "integrity": "sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==", "dev": true, "dependencies": { "debug": "^4.3.4" @@ -4228,15 +4223,16 @@ } }, "node_modules/array-includes": { - "version": "3.1.7", - "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.7.tgz", - "integrity": "sha512-dlcsNBIiWhPkHdOEEKnehA+RNUWDc4UqFtnIXU4uuYDPtA4LDkr7qip2p0VvFAEXNDr0yWZ9PJyIRiGjRLQzwQ==", + "version": "3.1.8", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.8.tgz", + "integrity": "sha512-itaWrbYbqpGXkGhZPGUulwnhVf5Hpy1xiCFsGqyIGglbBxmG5vSjxQen3/WGOjPpNEv1RtBLKxbmVXm8HpJStQ==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "get-intrinsic": "^1.2.1", + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-object-atoms": "^1.0.0", + "get-intrinsic": "^1.2.4", "is-string": "^1.0.7" }, "engines": { @@ -4254,35 +4250,17 @@ "node": ">=8" } }, - "node_modules/array.prototype.filter": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/array.prototype.filter/-/array.prototype.filter-1.0.3.tgz", - "integrity": "sha512-VizNcj/RGJiUyQBgzwxzE5oHdeuXY5hSbbmKMlphj1cy1Vl7Pn2asCGbSrru6hSQjmCzqTBPVWAF/whmEOVHbw==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "es-array-method-boxes-properly": "^1.0.0", - "is-string": "^1.0.7" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/array.prototype.findlast": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/array.prototype.findlast/-/array.prototype.findlast-1.2.4.tgz", - "integrity": "sha512-BMtLxpV+8BD+6ZPFIWmnUBpQoy+A+ujcg4rhp2iwCRJYA7PEh2MS4NL3lz8EiDlLrJPp2hg9qWihr5pd//jcGw==", + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/array.prototype.findlast/-/array.prototype.findlast-1.2.5.tgz", + "integrity": "sha512-CVvd6FHg1Z3POpBLxO6E6zr+rSKEQ9L6rZHAaY7lLfhKsWYUBBOuMs0e9o24oopj6H+geRCX0YJ+TJLBK2eHyQ==", "dev": true, "dependencies": { - "call-bind": "^1.0.5", + "call-bind": "^1.0.7", "define-properties": "^1.2.1", - "es-abstract": "^1.22.3", + "es-abstract": "^1.23.2", "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", "es-shim-unscopables": "^1.0.2" }, "engines": { @@ -4293,15 +4271,16 @@ } }, "node_modules/array.prototype.findlastindex": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.4.tgz", - "integrity": "sha512-hzvSHUshSpCflDR1QMUBLHGHP1VIEBegT4pix9H/Z92Xw3ySoy6c2qh7lJWTJnRJ8JCZ9bJNCgTyYaJGcJu6xQ==", + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.5.tgz", + "integrity": "sha512-zfETvRFA8o7EiNn++N5f/kaCw221hrpGsDmcpndVupkPzEc1Wuf3VgC0qby1BbHs7f5DVYjgtEU2LLh5bqeGfQ==", "dev": true, "dependencies": { - "call-bind": "^1.0.5", + "call-bind": "^1.0.7", "define-properties": "^1.2.1", - "es-abstract": "^1.22.3", + "es-abstract": "^1.23.2", "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", "es-shim-unscopables": "^1.0.2" }, "engines": { @@ -4454,15 +4433,6 @@ "semver": "bin/semver" } }, - "node_modules/asynciterator.prototype": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/asynciterator.prototype/-/asynciterator.prototype-1.0.0.tgz", - "integrity": "sha512-wwHYEIS0Q80f5mosx3L/dfG5t5rjEa9Ft51GTaNt862EnpyGHpgz2RkZvLPp1oF5TnAiTohkEKVEu8pQPJI7Vg==", - "dev": true, - "dependencies": { - "has-symbols": "^1.0.3" - } - }, "node_modules/asynckit": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", @@ -4549,12 +4519,6 @@ "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", "dev": true }, - "node_modules/base-64": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/base-64/-/base-64-0.1.0.tgz", - "integrity": "sha512-Y5gU45svrR5tI2Vt/X9GPd3L0HNIKzGu202EjxrXMpuc2V2CiKgemAbUUsqYmZJvPtCXoUKjNZwBJzsNScUbXA==", - "peer": true - }, "node_modules/base64-js": { "version": "1.5.1", "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", @@ -4595,12 +4559,15 @@ } }, "node_modules/binary-extensions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", - "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", + "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", "dev": true, "engines": { "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/blessed": { @@ -4622,13 +4589,12 @@ "dev": true }, "node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", "dev": true, "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" + "balanced-match": "^1.0.0" } }, "node_modules/braces": { @@ -4818,9 +4784,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001596", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001596.tgz", - "integrity": "sha512-zpkZ+kEr6We7w63ORkoJ2pOfBwBkY/bJrG/UZ90qNb45Isblu8wzDgevEOrRL1r9dWayHjYiiyCMEXPn4DweGQ==", + "version": "1.0.30001606", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001606.tgz", + "integrity": "sha512-LPbwnW4vfpJId225pwjZJOgX1m9sGfbw/RKJvw/t0QhYOOaTXHvkjVGFGPpvwEzufrjvTlsULnVTxdy4/6cqkg==", "funding": [ { "type": "opencollective", @@ -4907,15 +4873,6 @@ "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==" }, - "node_modules/charenc": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/charenc/-/charenc-0.0.2.tgz", - "integrity": "sha512-yrLQ/yVUFXkzg7EDQsPieE/53+0RlaWTs+wBrvW36cyilJ2SaDWfl4Yj7MtLTXleV9uEKefbAGUPv2/iWSooRA==", - "peer": true, - "engines": { - "node": "*" - } - }, "node_modules/charm": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/charm/-/charm-0.1.2.tgz", @@ -5273,12 +5230,12 @@ } }, "node_modules/core-js-compat": { - "version": "3.36.0", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.36.0.tgz", - "integrity": "sha512-iV9Pd/PsgjNWBXeq8XRtWVSgz2tKAfhfvBs7qxYty+RlRd+OCksaWmOnc4JKrTc1cToXL1N0s3l/vwlxPtdElw==", + "version": "3.36.1", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.36.1.tgz", + "integrity": "sha512-Dk997v9ZCt3X/npqzyGdTlq6t7lDBhZwGvV94PKzDArjp7BTRm7WlDAXYd/OWdeFHO8OChQYRJNJvUCqCbrtKA==", "dev": true, "dependencies": { - "browserslist": "^4.22.3" + "browserslist": "^4.23.0" }, "funding": { "type": "opencollective", @@ -5313,15 +5270,6 @@ "node": ">= 8" } }, - "node_modules/crypt": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/crypt/-/crypt-0.0.2.tgz", - "integrity": "sha512-mCxBlsHFYh9C+HVpiEacem8FEBnMXgU9gy4zmNC+SXAZNB/1idgp/aulFJ4FgCi7GPEVbfyng092GqL2k2rmow==", - "peer": true, - "engines": { - "node": "*" - } - }, "node_modules/csstype": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", @@ -5386,9 +5334,9 @@ } }, "node_modules/d3": { - "version": "7.8.5", - "resolved": "https://registry.npmjs.org/d3/-/d3-7.8.5.tgz", - "integrity": "sha512-JgoahDG51ncUfJu6wX/1vWQEqOflgXyl4MaHqlcSruTez7yhaRKR9i8VjjcQGeS2en/jnFivXuaIMnseMMt0XA==", + "version": "7.9.0", + "resolved": "https://registry.npmjs.org/d3/-/d3-7.9.0.tgz", + "integrity": "sha512-e1U46jVP+w7Iut8Jt8ri1YsPOvFpg46k+K8TpCb0P+zjCkjkPnV7WzfDJzMHy1LnA+wj5pLT1wjO901gLXeEhA==", "dependencies": { "d3-array": "3", "d3-axis": "3", @@ -5604,9 +5552,9 @@ } }, "node_modules/d3-geo": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/d3-geo/-/d3-geo-3.1.0.tgz", - "integrity": "sha512-JEo5HxXDdDYXCaWdwLRt79y7giK8SbhZJbFWXqbRTolCHFI5jRqteLzCsq51NKbUoX0PjBVSohxrx+NoOUujYA==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/d3-geo/-/d3-geo-3.1.1.tgz", + "integrity": "sha512-637ln3gXKXOwhalDzinUgY83KzNWZRKbYubaG+fGVuc/dxO64RRljtCTnf5ecMyE1RIdtqpkVcq0IbtU2S8j2Q==", "dependencies": { "d3-array": "2.5.0 - 3" }, @@ -5716,9 +5664,9 @@ } }, "node_modules/d3-scale-chromatic": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/d3-scale-chromatic/-/d3-scale-chromatic-3.0.0.tgz", - "integrity": "sha512-Lx9thtxAKrO2Pq6OO2Ua474opeziKr279P/TKZsMAhYyNDD3EnCffdbgeSYN5O7m2ByQsxtuP2CSDczNUIZ22g==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/d3-scale-chromatic/-/d3-scale-chromatic-3.1.0.tgz", + "integrity": "sha512-A3s5PWiZ9YCXFye1o246KoscMWqf8BsD9eRiJ3He7C9OBaxKhAd5TFCdEx/7VbKtxxTsu//1mMJFrEt572cEyQ==", "dependencies": { "d3-color": "1 - 3", "d3-interpolate": "1 - 3" @@ -5833,6 +5781,54 @@ "node": ">= 14" } }, + "node_modules/data-view-buffer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.1.tgz", + "integrity": "sha512-0lht7OugA5x3iJLOWFhWK/5ehONdprk0ISXqVFn/NFrDu+cuc8iADFrGQz5BnRK7LLU3JmkbXSxaqX+/mXYtUA==", + "dependencies": { + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/data-view-byte-length": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.1.tgz", + "integrity": "sha512-4J7wRJD3ABAzr8wP+OcIcqq2dlUKp4DVflx++hs5h5ZKydWMI6/D/fAot+yh6g2tHh8fLFTvNOaVN357NvSrOQ==", + "dependencies": { + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/data-view-byte-offset": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.0.tgz", + "integrity": "sha512-t/Ygsytq+R995EJ5PZlD4Cu56sWa8InXySaViRzw9apusqsOO2bQP+SbYzAhR0pFKoB+43lYy8rWban9JSuXnA==", + "dependencies": { + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/dateformat": { "version": "4.6.3", "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-4.6.3.tgz", @@ -6037,16 +6033,6 @@ "resolved": "packages/diffscribe", "link": true }, - "node_modules/digest-fetch": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/digest-fetch/-/digest-fetch-1.3.0.tgz", - "integrity": "sha512-CGJuv6iKNM7QyZlM2T3sPAdZWd/p9zQiRNS9G+9COUCwzWFTs0Xp8NF5iePx7wtvhDykReiRRrSeNb4oMmB8lA==", - "peer": true, - "dependencies": { - "base-64": "^0.1.0", - "md5": "^2.3.0" - } - }, "node_modules/dir-glob": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", @@ -6071,9 +6057,9 @@ } }, "node_modules/dompurify": { - "version": "3.0.9", - "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-3.0.9.tgz", - "integrity": "sha512-uyb4NDIvQ3hRn6NiC+SIFaP4mJ/MdXlvtunaqK9Bn6dD3RuB/1S/gasEjDHD8eiaqdSael2vBv+hOs7Y+jhYOQ==" + "version": "3.0.11", + "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-3.0.11.tgz", + "integrity": "sha512-Fan4uMuyB26gFV3ovPoEoQbxRRPfTu3CvImyZnhGq5fsIEO+gEFLp45ISFt+kQBWsK5ulDdT0oV28jS1UrwQLg==" }, "node_modules/dotenv": { "version": "16.4.5", @@ -6117,9 +6103,9 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.699", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.699.tgz", - "integrity": "sha512-I7q3BbQi6e4tJJN5CRcyvxhK0iJb34TV8eJQcgh+fR2fQ8miMgZcEInckCo1U9exDHbfz7DLDnFn8oqH/VcRKw==", + "version": "1.4.728", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.728.tgz", + "integrity": "sha512-Ud1v7hJJYIqehlUJGqR6PF1Ek8l80zWwxA6nGxigBsGJ9f9M2fciHyrIiNMerSHSH3p+0/Ia7jIlnDkt41h5cw==", "dev": true }, "node_modules/elkjs": { @@ -6152,9 +6138,9 @@ } }, "node_modules/enhanced-resolve": { - "version": "5.15.1", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.15.1.tgz", - "integrity": "sha512-3d3JRbwsCLJsYgvb6NuWEG44jjPSOMuS73L/6+7BZuoKm3W+qXnSoIYVHi8dG7Qcg4inAY4jbzkZ7MnskePeDg==", + "version": "5.16.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.16.0.tgz", + "integrity": "sha512-O+QWCviPNSSLAD9Ucn8Awv+poAkqn3T1XY5/N7kR7rQO9yfSGWkYZDwpJ+iKF7B8rxaQKWngSqACpgzeapSyoA==", "dev": true, "dependencies": { "graceful-fs": "^4.2.4", @@ -6196,16 +6182,20 @@ } }, "node_modules/es-abstract": { - "version": "1.22.5", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.22.5.tgz", - "integrity": "sha512-oW69R+4q2wG+Hc3KZePPZxOiisRIqfKBVo/HLx94QcJeWGU/8sZhCvc829rd1kS366vlJbzBfXf9yWwf0+Ko7w==", + "version": "1.23.3", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.23.3.tgz", + "integrity": "sha512-e+HfNH61Bj1X9/jLc5v1owaLYuHdeHHSQlkhCBiTK8rBvKaULl/beGMxwrMXjpYrv4pz22BlY570vVePA2ho4A==", "dependencies": { "array-buffer-byte-length": "^1.0.1", "arraybuffer.prototype.slice": "^1.0.3", "available-typed-arrays": "^1.0.7", "call-bind": "^1.0.7", + "data-view-buffer": "^1.0.1", + "data-view-byte-length": "^1.0.1", + "data-view-byte-offset": "^1.0.0", "es-define-property": "^1.0.0", "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", "es-set-tostringtag": "^2.0.3", "es-to-primitive": "^1.2.1", "function.prototype.name": "^1.1.6", @@ -6216,10 +6206,11 @@ "has-property-descriptors": "^1.0.2", "has-proto": "^1.0.3", "has-symbols": "^1.0.3", - "hasown": "^2.0.1", + "hasown": "^2.0.2", "internal-slot": "^1.0.7", "is-array-buffer": "^3.0.4", "is-callable": "^1.2.7", + "is-data-view": "^1.0.1", "is-negative-zero": "^2.0.3", "is-regex": "^1.1.4", "is-shared-array-buffer": "^1.0.3", @@ -6230,17 +6221,17 @@ "object-keys": "^1.1.1", "object.assign": "^4.1.5", "regexp.prototype.flags": "^1.5.2", - "safe-array-concat": "^1.1.0", + "safe-array-concat": "^1.1.2", "safe-regex-test": "^1.0.3", - "string.prototype.trim": "^1.2.8", - "string.prototype.trimend": "^1.0.7", - "string.prototype.trimstart": "^1.0.7", + "string.prototype.trim": "^1.2.9", + "string.prototype.trimend": "^1.0.8", + "string.prototype.trimstart": "^1.0.8", "typed-array-buffer": "^1.0.2", "typed-array-byte-length": "^1.0.1", "typed-array-byte-offset": "^1.0.2", - "typed-array-length": "^1.0.5", + "typed-array-length": "^1.0.6", "unbox-primitive": "^1.0.2", - "which-typed-array": "^1.1.14" + "which-typed-array": "^1.1.15" }, "engines": { "node": ">= 0.4" @@ -6249,12 +6240,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/es-array-method-boxes-properly": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/es-array-method-boxes-properly/-/es-array-method-boxes-properly-1.0.0.tgz", - "integrity": "sha512-wd6JXUmyHmt8T5a2xreUwKcGPq6f1f+WwIJkijUqiGcJz1qqnZgP6XIK+QyIWU5lT7imeNxUll48bziG+TSYcA==", - "dev": true - }, "node_modules/es-define-property": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.0.tgz", @@ -6275,26 +6260,36 @@ } }, "node_modules/es-iterator-helpers": { - "version": "1.0.17", - "resolved": "https://registry.npmjs.org/es-iterator-helpers/-/es-iterator-helpers-1.0.17.tgz", - "integrity": "sha512-lh7BsUqelv4KUbR5a/ZTaGGIMLCjPGPqJ6q+Oq24YP0RdyptX1uzm4vvaqzk7Zx3bpl/76YLTTDj9L7uYQ92oQ==", + "version": "1.0.18", + "resolved": "https://registry.npmjs.org/es-iterator-helpers/-/es-iterator-helpers-1.0.18.tgz", + "integrity": "sha512-scxAJaewsahbqTYrGKJihhViaM6DDZDDoucfvzNbK0pOren1g/daDQ3IAhzn+1G14rBG7w+i5N+qul60++zlKA==", "dev": true, "dependencies": { - "asynciterator.prototype": "^1.0.0", "call-bind": "^1.0.7", "define-properties": "^1.2.1", - "es-abstract": "^1.22.4", + "es-abstract": "^1.23.0", "es-errors": "^1.3.0", - "es-set-tostringtag": "^2.0.2", + "es-set-tostringtag": "^2.0.3", "function-bind": "^1.1.2", "get-intrinsic": "^1.2.4", "globalthis": "^1.0.3", "has-property-descriptors": "^1.0.2", - "has-proto": "^1.0.1", + "has-proto": "^1.0.3", "has-symbols": "^1.0.3", "internal-slot": "^1.0.7", "iterator.prototype": "^1.1.2", - "safe-array-concat": "^1.1.0" + "safe-array-concat": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-object-atoms": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.0.0.tgz", + "integrity": "sha512-MZ4iQ6JwHOBQjahnjwaC1ZtIBH+2ohjamzAO3oaHcXYup7qxjF2fixyH+Q71voWHeOkI2q/TnJao/KfXYIZWbw==", + "dependencies": { + "es-errors": "^1.3.0" }, "engines": { "node": ">= 0.4" @@ -6646,6 +6641,16 @@ "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8" } }, + "node_modules/eslint-plugin-import/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, "node_modules/eslint-plugin-import/node_modules/debug": { "version": "3.2.7", "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", @@ -6667,6 +6672,18 @@ "node": ">=0.10.0" } }, + "node_modules/eslint-plugin-import/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, "node_modules/eslint-plugin-import/node_modules/semver": { "version": "6.3.1", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", @@ -6853,6 +6870,28 @@ "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8" } }, + "node_modules/eslint-plugin-jsx-a11y/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/eslint-plugin-jsx-a11y/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, "node_modules/eslint-plugin-only-warn": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/eslint-plugin-only-warn/-/eslint-plugin-only-warn-1.1.0.tgz", @@ -6863,9 +6902,9 @@ } }, "node_modules/eslint-plugin-playwright": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-playwright/-/eslint-plugin-playwright-1.5.2.tgz", - "integrity": "sha512-TMzLrLGQMccngU8GogtzIc9u5RzXGnfsQEUjLfEfshINuVR2fS4SHfDtU7xYP90Vwm5vflHECf610KTdGvO53w==", + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/eslint-plugin-playwright/-/eslint-plugin-playwright-1.5.4.tgz", + "integrity": "sha512-J38Wy3Vc2f9y73J+KRmgXgbYI8TZ3zbz6qBbTj3PhpFndUS572jZ7kqQ3rJ9si5BaMHT7lmZzraO+3UjwIDV4Q==", "dev": true, "dependencies": { "globals": "^13.23.0" @@ -6884,9 +6923,9 @@ } }, "node_modules/eslint-plugin-react": { - "version": "7.34.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.34.0.tgz", - "integrity": "sha512-MeVXdReleBTdkz/bvcQMSnCXGi+c9kvy51IpinjnJgutl3YTHWsDdke7Z1ufZpGfDG8xduBDKyjtB9JH1eBKIQ==", + "version": "7.34.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.34.1.tgz", + "integrity": "sha512-N97CxlouPT1AHt8Jn0mhhN2RrADlUAsk1/atcT2KyA/l9Q/E6ll7OIGwNumFmWfZ9skV3XXccYS19h80rHtgkw==", "dev": true, "dependencies": { "array-includes": "^3.1.7", @@ -6927,6 +6966,16 @@ "eslint": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0" } }, + "node_modules/eslint-plugin-react/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, "node_modules/eslint-plugin-react/node_modules/doctrine": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", @@ -6939,6 +6988,18 @@ "node": ">=0.10.0" } }, + "node_modules/eslint-plugin-react/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, "node_modules/eslint-plugin-react/node_modules/resolve": { "version": "2.0.0-next.5", "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.5.tgz", @@ -7243,6 +7304,16 @@ "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", "dev": true }, + "node_modules/eslint/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, "node_modules/eslint/node_modules/chalk": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", @@ -7341,6 +7412,18 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/eslint/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, "node_modules/eslint/node_modules/p-limit": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", @@ -7693,9 +7776,9 @@ "integrity": "sha512-fBHHqSTFLVnR61C+gltJuE5GkVQMV0S2nqUO8TJ+5Z3qAKG8vAx4FKai1s5jq/inV1+sREynIWSuQ6HgoSXpDQ==" }, "node_modules/fast-copy": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/fast-copy/-/fast-copy-3.0.1.tgz", - "integrity": "sha512-Knr7NOtK3HWRYGtHoJrjkaWepqT8thIVGAwt0p0aUs1zqkAzXZV4vo9fFNwyb5fcqK1GKYFYxldQdIDVKhUAfA==", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/fast-copy/-/fast-copy-3.0.2.tgz", + "integrity": "sha512-dl0O9Vhju8IrcLndv2eU4ldt1ftXMqqfgN4H1cpmGV7P6jeB9FwpN9a2c8DPGE1Ys88rNUJVYDHq73CGAGOPfQ==", "dev": true }, "node_modules/fast-decode-uri-component": { @@ -7747,9 +7830,9 @@ "dev": true }, "node_modules/fast-json-stringify": { - "version": "5.12.0", - "resolved": "https://registry.npmjs.org/fast-json-stringify/-/fast-json-stringify-5.12.0.tgz", - "integrity": "sha512-7Nnm9UPa7SfHRbHVA1kJQrGXCRzB7LMlAAqHXQFkEQqueJm1V8owm0FsE/2Do55/4CcdhwiLQERaKomOnKQkyA==", + "version": "5.13.0", + "resolved": "https://registry.npmjs.org/fast-json-stringify/-/fast-json-stringify-5.13.0.tgz", + "integrity": "sha512-XjTDWKHP3GoMQUOfnjYUbqeHeEt+PvYgvBdG2fRSmYaORILbSr8xTJvZX+w1YSAP5pw2NwKrGRmQleYueZEoxw==", "dependencies": { "@fastify/merge-json-schemas": "^0.1.0", "ajv": "^8.10.0", @@ -7795,9 +7878,9 @@ } }, "node_modules/fast-redact": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/fast-redact/-/fast-redact-3.4.0.tgz", - "integrity": "sha512-2gwPvyna0zwBdxKnng1suu/dTL5s8XEy2ZqH8mwDUwJdDkV8w5kp+JV26mupdK68HmPMbm6yjW9m7/Ys/BHEHg==", + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/fast-redact/-/fast-redact-3.5.0.tgz", + "integrity": "sha512-dwsoQlS7h9hMeYUq1W++23NDcBLV4KqONnITDV9DjfS3q1SgDGVrBdvvTLUotWtPSD7asWDV9/CmsZPy8Hf70A==", "engines": { "node": ">=6" } @@ -7931,6 +8014,16 @@ "node": "^10.12.0 || >=12.0.0" } }, + "node_modules/flat-cache/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, "node_modules/flat-cache/node_modules/glob": { "version": "7.2.3", "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", @@ -7951,6 +8044,18 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/flat-cache/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, "node_modules/flat-cache/node_modules/rimraf": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", @@ -8355,32 +8460,8 @@ "dependencies": { "is-glob": "^4.0.3" }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/glob/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/glob/node_modules/minimatch": { - "version": "9.0.3", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", - "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", - "dev": true, - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "engines": { + "node": ">=10.13.0" } }, "node_modules/globals": { @@ -8571,9 +8652,9 @@ } }, "node_modules/hasown": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.1.tgz", - "integrity": "sha512-1/th4MHjnwncwXsIW6QMzlvYL9kG5e/CpVvLRZe4XPa8TOUNbCELqmvhDmnkNsAjwaG4+I8gJJL0JBvTTLO9qA==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", "dependencies": { "function-bind": "^1.1.2" }, @@ -9298,10 +9379,26 @@ } }, "node_modules/is-buffer": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", - "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", - "peer": true + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz", + "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "engines": { + "node": ">=4" + } }, "node_modules/is-builtin-module": { "version": "3.2.1", @@ -9340,6 +9437,20 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/is-data-view": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.1.tgz", + "integrity": "sha512-AHkaJrsUVW6wq6JS8y3JnM/GJF/9cf+k20+iDzlSaJrinEo5+7vRiteOSwBhHRiAyQATN1AmY4hwzxJKPmYf+w==", + "dependencies": { + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/is-date-object": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", @@ -10110,17 +10221,6 @@ "remove-accents": "0.5.0" } }, - "node_modules/md5": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/md5/-/md5-2.3.0.tgz", - "integrity": "sha512-T1GITYmFaKuO91vxyoQMFETst+O71VUPEU3ze5GNzDm0OWdP8v1ziTaAEPUr/3kLsY3Sftgz242A1SetQiDL7g==", - "peer": true, - "dependencies": { - "charenc": "0.0.2", - "crypt": "0.0.2", - "is-buffer": "~1.1.6" - } - }, "node_modules/mdast-util-definitions": { "version": "5.1.2", "resolved": "https://registry.npmjs.org/mdast-util-definitions/-/mdast-util-definitions-5.1.2.tgz", @@ -11562,15 +11662,18 @@ } }, "node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "version": "9.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.4.tgz", + "integrity": "sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==", "dev": true, "dependencies": { - "brace-expansion": "^1.1.7" + "brace-expansion": "^2.0.1" }, "engines": { - "node": "*" + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, "node_modules/minimist": { @@ -11719,12 +11822,12 @@ } }, "node_modules/next": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/next/-/next-14.1.3.tgz", - "integrity": "sha512-oexgMV2MapI0UIWiXKkixF8J8ORxpy64OuJ/J9oVUmIthXOUCcuVEZX+dtpgq7wIfIqtBwQsKEDXejcjTsan9g==", + "version": "14.1.4", + "resolved": "https://registry.npmjs.org/next/-/next-14.1.4.tgz", + "integrity": "sha512-1WTaXeSrUwlz/XcnhGTY7+8eiaFvdet5z9u3V2jb+Ek1vFo0VhHKSAIJvDWfQpttWjnyw14kBeq28TPq7bTeEQ==", "peer": true, "dependencies": { - "@next/env": "14.1.3", + "@next/env": "14.1.4", "@swc/helpers": "0.5.2", "busboy": "1.6.0", "caniuse-lite": "^1.0.30001579", @@ -11739,15 +11842,15 @@ "node": ">=18.17.0" }, "optionalDependencies": { - "@next/swc-darwin-arm64": "14.1.3", - "@next/swc-darwin-x64": "14.1.3", - "@next/swc-linux-arm64-gnu": "14.1.3", - "@next/swc-linux-arm64-musl": "14.1.3", - "@next/swc-linux-x64-gnu": "14.1.3", - "@next/swc-linux-x64-musl": "14.1.3", - "@next/swc-win32-arm64-msvc": "14.1.3", - "@next/swc-win32-ia32-msvc": "14.1.3", - "@next/swc-win32-x64-msvc": "14.1.3" + "@next/swc-darwin-arm64": "14.1.4", + "@next/swc-darwin-x64": "14.1.4", + "@next/swc-linux-arm64-gnu": "14.1.4", + "@next/swc-linux-arm64-musl": "14.1.4", + "@next/swc-linux-x64-gnu": "14.1.4", + "@next/swc-linux-x64-musl": "14.1.4", + "@next/swc-win32-arm64-msvc": "14.1.4", + "@next/swc-win32-ia32-msvc": "14.1.4", + "@next/swc-win32-x64-msvc": "14.1.4" }, "peerDependencies": { "@opentelemetry/api": "^1.1.0", @@ -11804,15 +11907,15 @@ } }, "node_modules/next/node_modules/@next/env": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@next/env/-/env-14.1.3.tgz", - "integrity": "sha512-VhgXTvrgeBRxNPjyfBsDIMvgsKDxjlpw4IAUsHCX8Gjl1vtHUYRT3+xfQ/wwvLPDd/6kqfLqk9Pt4+7gysuCKQ==", + "version": "14.1.4", + "resolved": "https://registry.npmjs.org/@next/env/-/env-14.1.4.tgz", + "integrity": "sha512-e7X7bbn3Z6DWnDi75UWn+REgAbLEqxI8Tq2pkFOFAMpWAWApz/YCUhtWMWn410h8Q2fYiYL7Yg5OlxMOCfFjJQ==", "peer": true }, "node_modules/next/node_modules/@next/swc-darwin-arm64": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.1.3.tgz", - "integrity": "sha512-LALu0yIBPRiG9ANrD5ncB3pjpO0Gli9ZLhxdOu6ZUNf3x1r3ea1rd9Q+4xxUkGrUXLqKVK9/lDkpYIJaCJ6AHQ==", + "version": "14.1.4", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.1.4.tgz", + "integrity": "sha512-ubmUkbmW65nIAOmoxT1IROZdmmJMmdYvXIe8211send9ZYJu+SqxSnJM4TrPj9wmL6g9Atvj0S/2cFmMSS99jg==", "cpu": [ "arm64" ], @@ -11826,9 +11929,9 @@ } }, "node_modules/next/node_modules/@next/swc-darwin-x64": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.1.3.tgz", - "integrity": "sha512-E/9WQeXxkqw2dfcn5UcjApFgUq73jqNKaE5bysDm58hEUdUGedVrnRhblhJM7HbCZNhtVl0j+6TXsK0PuzXTCg==", + "version": "14.1.4", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.1.4.tgz", + "integrity": "sha512-b0Xo1ELj3u7IkZWAKcJPJEhBop117U78l70nfoQGo4xUSvv0PJSTaV4U9xQBLvZlnjsYkc8RwQN1HoH/oQmLlQ==", "cpu": [ "x64" ], @@ -11842,9 +11945,9 @@ } }, "node_modules/next/node_modules/@next/swc-linux-arm64-gnu": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.1.3.tgz", - "integrity": "sha512-USArX9B+3rZSXYLFvgy0NVWQgqh6LHWDmMt38O4lmiJNQcwazeI6xRvSsliDLKt+78KChVacNiwvOMbl6g6BBw==", + "version": "14.1.4", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.1.4.tgz", + "integrity": "sha512-457G0hcLrdYA/u1O2XkRMsDKId5VKe3uKPvrKVOyuARa6nXrdhJOOYU9hkKKyQTMru1B8qEP78IAhf/1XnVqKA==", "cpu": [ "arm64" ], @@ -11858,9 +11961,9 @@ } }, "node_modules/next/node_modules/@next/swc-linux-arm64-musl": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.1.3.tgz", - "integrity": "sha512-esk1RkRBLSIEp1qaQXv1+s6ZdYzuVCnDAZySpa62iFTMGTisCyNQmqyCTL9P+cLJ4N9FKCI3ojtSfsyPHJDQNw==", + "version": "14.1.4", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.1.4.tgz", + "integrity": "sha512-l/kMG+z6MB+fKA9KdtyprkTQ1ihlJcBh66cf0HvqGP+rXBbOXX0dpJatjZbHeunvEHoBBS69GYQG5ry78JMy3g==", "cpu": [ "arm64" ], @@ -11874,9 +11977,9 @@ } }, "node_modules/next/node_modules/@next/swc-linux-x64-gnu": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.1.3.tgz", - "integrity": "sha512-8uOgRlYEYiKo0L8YGeS+3TudHVDWDjPVDUcST+z+dUzgBbTEwSSIaSgF/vkcC1T/iwl4QX9iuUyUdQEl0Kxalg==", + "version": "14.1.4", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.1.4.tgz", + "integrity": "sha512-BapIFZ3ZRnvQ1uWbmqEGJuPT9cgLwvKtxhK/L2t4QYO7l+/DxXuIGjvp1x8rvfa/x1FFSsipERZK70pewbtJtw==", "cpu": [ "x64" ], @@ -11890,9 +11993,9 @@ } }, "node_modules/next/node_modules/@next/swc-linux-x64-musl": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.1.3.tgz", - "integrity": "sha512-DX2zqz05ziElLoxskgHasaJBREC5Y9TJcbR2LYqu4r7naff25B4iXkfXWfcp69uD75/0URmmoSgT8JclJtrBoQ==", + "version": "14.1.4", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.1.4.tgz", + "integrity": "sha512-mqVxTwk4XuBl49qn2A5UmzFImoL1iLm0KQQwtdRJRKl21ylQwwGCxJtIYo2rbfkZHoSKlh/YgztY0qH3wG1xIg==", "cpu": [ "x64" ], @@ -11906,9 +12009,9 @@ } }, "node_modules/next/node_modules/@next/swc-win32-arm64-msvc": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.1.3.tgz", - "integrity": "sha512-HjssFsCdsD4GHstXSQxsi2l70F/5FsRTRQp8xNgmQs15SxUfUJRvSI9qKny/jLkY3gLgiCR3+6A7wzzK0DBlfA==", + "version": "14.1.4", + "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.1.4.tgz", + "integrity": "sha512-xzxF4ErcumXjO2Pvg/wVGrtr9QQJLk3IyQX1ddAC/fi6/5jZCZ9xpuL9Tzc4KPWMFq8GGWFVDMshZOdHGdkvag==", "cpu": [ "arm64" ], @@ -11922,9 +12025,9 @@ } }, "node_modules/next/node_modules/@next/swc-win32-ia32-msvc": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.1.3.tgz", - "integrity": "sha512-DRuxD5axfDM1/Ue4VahwSxl1O5rn61hX8/sF0HY8y0iCbpqdxw3rB3QasdHn/LJ6Wb2y5DoWzXcz3L1Cr+Thrw==", + "version": "14.1.4", + "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.1.4.tgz", + "integrity": "sha512-WZiz8OdbkpRw6/IU/lredZWKKZopUMhcI2F+XiMAcPja0uZYdMTZQRoQ0WZcvinn9xZAidimE7tN9W5v9Yyfyw==", "cpu": [ "ia32" ], @@ -11938,9 +12041,9 @@ } }, "node_modules/next/node_modules/@next/swc-win32-x64-msvc": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.1.3.tgz", - "integrity": "sha512-uC2DaDoWH7h1P/aJ4Fok3Xiw6P0Lo4ez7NbowW2VGNXw/Xv6tOuLUcxhBYZxsSUJtpeknCi8/fvnSpyCFp4Rcg==", + "version": "14.1.4", + "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.1.4.tgz", + "integrity": "sha512-4Rto21sPfw555sZ/XNLqfxDUNeLhNYGO2dlPqsnuCg8N8a2a9u1ltqBOPQ4vj1Gf7eJC0W2hHG2eYUHuiXgY2w==", "cpu": [ "x64" ], @@ -12132,28 +12235,29 @@ } }, "node_modules/object.entries": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.7.tgz", - "integrity": "sha512-jCBs/0plmPsOnrKAfFQXRG2NFjlhZgjjcBLSmTnEhU8U6vVTsVe8ANeQJCHTl3gSsI4J+0emOoCgoKlmQPMgmA==", + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.8.tgz", + "integrity": "sha512-cmopxi8VwRIAw/fkijJohSfpef5PdN0pMQJN6VC/ZKvn0LIknWD8KtgY6KlQdEc4tIjcQ3HxSMmnvtzIscdaYQ==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" }, "engines": { "node": ">= 0.4" } }, "node_modules/object.fromentries": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.7.tgz", - "integrity": "sha512-UPbPHML6sL8PI/mOqPwsH4G6iyXcCGzLin8KvEPenOZN5lpCNBZZQ+V62vdjB1mQHrmqGQt5/OJzemUA+KJmEA==", + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.8.tgz", + "integrity": "sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-object-atoms": "^1.0.0" }, "engines": { "node": ">= 0.4" @@ -12163,40 +12267,45 @@ } }, "node_modules/object.groupby": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/object.groupby/-/object.groupby-1.0.2.tgz", - "integrity": "sha512-bzBq58S+x+uo0VjurFT0UktpKHOZmv4/xePiOA1nbB9pMqpGK7rUPNgf+1YC+7mE+0HzhTMqNUuCqvKhj6FnBw==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/object.groupby/-/object.groupby-1.0.3.tgz", + "integrity": "sha512-+Lhy3TQTuzXI5hevh8sBGqbmurHbbIjAi0Z4S63nthVLmLxfbj4T54a4CfZrXIrt9iP4mVAPYMo/v99taj3wjQ==", "dev": true, "dependencies": { - "array.prototype.filter": "^1.0.3", - "call-bind": "^1.0.5", + "call-bind": "^1.0.7", "define-properties": "^1.2.1", - "es-abstract": "^1.22.3", - "es-errors": "^1.0.0" + "es-abstract": "^1.23.2" + }, + "engines": { + "node": ">= 0.4" } }, "node_modules/object.hasown": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/object.hasown/-/object.hasown-1.1.3.tgz", - "integrity": "sha512-fFI4VcYpRHvSLXxP7yiZOMAd331cPfd2p7PFDVbgUsYOfCT3tICVqXWngbjr4m49OvsBwUBQ6O2uQoJvy3RexA==", + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/object.hasown/-/object.hasown-1.1.4.tgz", + "integrity": "sha512-FZ9LZt9/RHzGySlBARE3VF+gE26TxR38SdmqOqliuTnl9wrKulaQs+4dee1V+Io8VfxqzAfHu6YuRgUy8OHoTg==", "dev": true, "dependencies": { - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1" + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/object.values": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.7.tgz", - "integrity": "sha512-aU6xnDFYT3x17e/f0IiiwlGPTy2jzMySGfUB4fq6z7CV8l85CWHDk5ErhyhpfDHhrOMwGFhSQkhMGHaIotA6Ng==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.2.0.tgz", + "integrity": "sha512-yBYjY9QX2hnRmZHAjG/f13MzmBzxzYgQhFrke06TTyKY5zSTEqkOeukBzIdVA3j3ulu8Qa3MbVFShV7T2RmGtQ==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" }, "engines": { "node": ">= 0.4" @@ -12238,16 +12347,15 @@ } }, "node_modules/openai": { - "version": "4.28.4", - "resolved": "https://registry.npmjs.org/openai/-/openai-4.28.4.tgz", - "integrity": "sha512-RNIwx4MT/F0zyizGcwS+bXKLzJ8QE9IOyigDG/ttnwB220d58bYjYFp0qjvGwEFBO6+pvFVIDABZPGDl46RFsg==", + "version": "4.32.2", + "resolved": "https://registry.npmjs.org/openai/-/openai-4.32.2.tgz", + "integrity": "sha512-JXU5ttiL4liZJ2GRYvyqd/m9zA64bI8e6B5BtyKlbkcv5DAd5wiDgd0cQ1CIIdsEH90k5p3TdK6MyjnUhvOe7w==", "peer": true, "dependencies": { "@types/node": "^18.11.18", "@types/node-fetch": "^2.6.4", "abort-controller": "^3.0.0", "agentkeepalive": "^4.2.1", - "digest-fetch": "^1.3.0", "form-data-encoder": "1.7.2", "formdata-node": "^4.3.2", "node-fetch": "^2.6.7", @@ -12258,9 +12366,9 @@ } }, "node_modules/openai/node_modules/@types/node": { - "version": "18.19.22", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.22.tgz", - "integrity": "sha512-p3pDIfuMg/aXBmhkyanPshdfJuX5c5+bQjYLIikPLXAUycEogij/c50n/C+8XOA5L93cU4ZRXtn+dNQGi0IZqQ==", + "version": "18.19.29", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.29.tgz", + "integrity": "sha512-5pAX7ggTmWZdhUrhRWLPf+5oM7F80bcKVCBbr0zwEkTNzTJL2CWQjznpFgHYy6GrzkYi2Yjy7DHKoynFxqPV8g==", "peer": true, "dependencies": { "undici-types": "~5.26.4" @@ -13088,12 +13196,12 @@ } }, "node_modules/prettier-plugin-packagejson": { - "version": "2.4.12", - "resolved": "https://registry.npmjs.org/prettier-plugin-packagejson/-/prettier-plugin-packagejson-2.4.12.tgz", - "integrity": "sha512-hifuuOgw5rHHTdouw9VrhT8+Nd7UwxtL1qco8dUfd4XUFQL6ia3xyjSxhPQTsGnSYFraTWy5Omb+MZm/OWDTpQ==", + "version": "2.4.14", + "resolved": "https://registry.npmjs.org/prettier-plugin-packagejson/-/prettier-plugin-packagejson-2.4.14.tgz", + "integrity": "sha512-sli+gV5tW7uxvzDZQscaBtSfbyAW2ToL6n/HGt51PipwX9vI7M54vefG0mKSfklVkT29TNGO6Mo6g8c6Z79gmw==", "dev": true, "dependencies": { - "sort-package-json": "2.8.0", + "sort-package-json": "2.10.0", "synckit": "0.9.0" }, "peerDependencies": { @@ -13139,9 +13247,9 @@ } }, "node_modules/property-information": { - "version": "6.4.1", - "resolved": "https://registry.npmjs.org/property-information/-/property-information-6.4.1.tgz", - "integrity": "sha512-OHYtXfu5aI2sS2LWFSN5rgJjrQ4pCy8i1jubJLe2QvMF8JJ++HXTUIVWFLfXJoaOfvYYjk2SN8J2wFUWIGXT4w==", + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/property-information/-/property-information-6.5.0.tgz", + "integrity": "sha512-PgTgs/BlvHxOu8QuEN7wi5A0OmXaBcHpmCSTehcs6Uuu9IkDIEo13Hy7n898RHfrQ49vKCoGeWZSaAK01nwVig==", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" @@ -13420,16 +13528,16 @@ } }, "node_modules/reflect.getprototypeof": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/reflect.getprototypeof/-/reflect.getprototypeof-1.0.5.tgz", - "integrity": "sha512-62wgfC8dJWrmxv44CA36pLDnP6KKl3Vhxb7PL+8+qrrFMMoJij4vgiMP8zV4O8+CBMXY1mHxI5fITGHXFHVmQQ==", + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/reflect.getprototypeof/-/reflect.getprototypeof-1.0.6.tgz", + "integrity": "sha512-fmfw4XgoDke3kdI6h4xcUz1dG8uaiv5q9gcEwLS4Pnth2kxT+GZ7YehS1JTMGBQmtV7Y4GFGbs2re2NqhdozUg==", "dev": true, "dependencies": { - "call-bind": "^1.0.5", + "call-bind": "^1.0.7", "define-properties": "^1.2.1", - "es-abstract": "^1.22.3", - "es-errors": "^1.0.0", - "get-intrinsic": "^1.2.3", + "es-abstract": "^1.23.1", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4", "globalthis": "^1.0.3", "which-builtin-type": "^1.1.3" }, @@ -13893,9 +14001,9 @@ "integrity": "sha512-IXgzBWvWQwE6PrDI05OvmXUIruQTcoMDzRsOd5CDvHCVLcLHMTSYvOK5Cm46kWqlV3yAbuSpBZdJ5oP5OUoStg==" }, "node_modules/rollup": { - "version": "4.12.1", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.12.1.tgz", - "integrity": "sha512-ggqQKvx/PsB0FaWXhIvVkSWh7a/PCLQAsMjBc+nA2M8Rv2/HG0X6zvixAB7KyZBRtifBUhy5k8voQX/mRnABPg==", + "version": "4.14.0", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.14.0.tgz", + "integrity": "sha512-Qe7w62TyawbDzB4yt32R0+AbIo6m1/sqO7UPzFS8Z/ksL5mrfhA0v4CavfdmFav3D+ub4QeAgsGEe84DoWe/nQ==", "dev": true, "dependencies": { "@types/estree": "1.0.5" @@ -13908,19 +14016,21 @@ "npm": ">=8.0.0" }, "optionalDependencies": { - "@rollup/rollup-android-arm-eabi": "4.12.1", - "@rollup/rollup-android-arm64": "4.12.1", - "@rollup/rollup-darwin-arm64": "4.12.1", - "@rollup/rollup-darwin-x64": "4.12.1", - "@rollup/rollup-linux-arm-gnueabihf": "4.12.1", - "@rollup/rollup-linux-arm64-gnu": "4.12.1", - "@rollup/rollup-linux-arm64-musl": "4.12.1", - "@rollup/rollup-linux-riscv64-gnu": "4.12.1", - "@rollup/rollup-linux-x64-gnu": "4.12.1", - "@rollup/rollup-linux-x64-musl": "4.12.1", - "@rollup/rollup-win32-arm64-msvc": "4.12.1", - "@rollup/rollup-win32-ia32-msvc": "4.12.1", - "@rollup/rollup-win32-x64-msvc": "4.12.1", + "@rollup/rollup-android-arm-eabi": "4.14.0", + "@rollup/rollup-android-arm64": "4.14.0", + "@rollup/rollup-darwin-arm64": "4.14.0", + "@rollup/rollup-darwin-x64": "4.14.0", + "@rollup/rollup-linux-arm-gnueabihf": "4.14.0", + "@rollup/rollup-linux-arm64-gnu": "4.14.0", + "@rollup/rollup-linux-arm64-musl": "4.14.0", + "@rollup/rollup-linux-powerpc64le-gnu": "4.14.0", + "@rollup/rollup-linux-riscv64-gnu": "4.14.0", + "@rollup/rollup-linux-s390x-gnu": "4.14.0", + "@rollup/rollup-linux-x64-gnu": "4.14.0", + "@rollup/rollup-linux-x64-musl": "4.14.0", + "@rollup/rollup-win32-arm64-msvc": "4.14.0", + "@rollup/rollup-win32-ia32-msvc": "4.14.0", + "@rollup/rollup-win32-x64-msvc": "4.14.0", "fsevents": "~2.3.2" } }, @@ -14375,12 +14485,12 @@ } }, "node_modules/socks-proxy-agent": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-8.0.2.tgz", - "integrity": "sha512-8zuqoLv1aP/66PHF5TqwJ7Czm3Yv32urJQHrVyhD7mmA6d61Zv8cIXQYPTWwmg6qlupnPvs/QKDmfa4P/qct2g==", + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-8.0.3.tgz", + "integrity": "sha512-VNegTZKhuGq5vSD6XNKlbqWhyt/40CgoEw8XxD6dhnm8Jq9IEa3nIa4HwnM8XOqU0CdB0BwWVXusqiFXfHB3+A==", "dev": true, "dependencies": { - "agent-base": "^7.0.2", + "agent-base": "^7.1.1", "debug": "^4.3.4", "socks": "^2.7.1" }, @@ -14389,9 +14499,9 @@ } }, "node_modules/sonic-boom": { - "version": "3.8.0", - "resolved": "https://registry.npmjs.org/sonic-boom/-/sonic-boom-3.8.0.tgz", - "integrity": "sha512-ybz6OYOUjoQQCQ/i4LU8kaToD8ACtYP+Cj5qd2AO36bwbdewxWJ3ArmJ2cr6AvxlL2o0PqnCcPGUgkILbfkaCA==", + "version": "3.8.1", + "resolved": "https://registry.npmjs.org/sonic-boom/-/sonic-boom-3.8.1.tgz", + "integrity": "sha512-y4Z8LCDBuum+PBP3lSV7RHrXscqksve/bi0as7mhwVnBW+/wUqKT/2Kb7um8yqcFy0duYbbPxzt89Zy2nOCaxg==", "dependencies": { "atomic-sleep": "^1.0.0" } @@ -14428,9 +14538,9 @@ "dev": true }, "node_modules/sort-package-json": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/sort-package-json/-/sort-package-json-2.8.0.tgz", - "integrity": "sha512-PxeNg93bTJWmDGnu0HADDucoxfFiKkIr73Kv85EBThlI1YQPdc0XovBgg2llD0iABZbu2SlKo8ntGmOP9wOj/g==", + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/sort-package-json/-/sort-package-json-2.10.0.tgz", + "integrity": "sha512-MYecfvObMwJjjJskhxYfuOADkXp1ZMMnCFC8yhp+9HDsk7HhR336hd7eiBs96lTXfiqmUNI+WQCeCMRBhl251g==", "dev": true, "dependencies": { "detect-indent": "^7.0.1", @@ -14439,6 +14549,7 @@ "git-hooks-list": "^3.0.0", "globby": "^13.1.2", "is-plain-obj": "^4.1.0", + "semver": "^7.6.0", "sort-object-keys": "^1.1.3" }, "bin": { @@ -14506,9 +14617,9 @@ } }, "node_modules/source-map-js": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", - "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.0.tgz", + "integrity": "sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==", "engines": { "node": ">=0.10.0" } @@ -14740,33 +14851,40 @@ } }, "node_modules/string.prototype.matchall": { - "version": "4.0.10", - "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.10.tgz", - "integrity": "sha512-rGXbGmOEosIQi6Qva94HUjgPs9vKW+dkG7Y8Q5O2OYkWL6wFaTRZO8zM4mhP94uX55wgyrXzfS2aGtGzUL7EJQ==", + "version": "4.0.11", + "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.11.tgz", + "integrity": "sha512-NUdh0aDavY2og7IbBPenWqR9exH+E26Sv8e0/eTe1tltDGZL+GtBkDAnnyBtmekfK6/Dq3MkcGtzXFEd1LQrtg==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "get-intrinsic": "^1.2.1", + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "get-intrinsic": "^1.2.4", + "gopd": "^1.0.1", "has-symbols": "^1.0.3", - "internal-slot": "^1.0.5", - "regexp.prototype.flags": "^1.5.0", - "set-function-name": "^2.0.0", - "side-channel": "^1.0.4" + "internal-slot": "^1.0.7", + "regexp.prototype.flags": "^1.5.2", + "set-function-name": "^2.0.2", + "side-channel": "^1.0.6" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/string.prototype.trim": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.8.tgz", - "integrity": "sha512-lfjY4HcixfQXOfaqCvcBuOIapyaroTXhbkfJN3gcB1OtyupngWK4sEET9Knd0cXd28kTUqu/kHoV4HKSJdnjiQ==", + "version": "1.2.9", + "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.9.tgz", + "integrity": "sha512-klHuCNxiMZ8MlsOihJhJEBJAiMVqU3Z2nEXWfWnIqjN0gEFS9J9+IxKozWWtQGcgoa1WUZzLjKPTr4ZHNFTFxw==", "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.0", + "es-object-atoms": "^1.0.0" }, "engines": { "node": ">= 0.4" @@ -14776,35 +14894,38 @@ } }, "node_modules/string.prototype.trimend": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.7.tgz", - "integrity": "sha512-Ni79DqeB72ZFq1uH/L6zJ+DKZTkOtPIHovb3YZHQViE+HDouuU4mBrLOLDn5Dde3RF8qw5qVETEjhu9locMLvA==", + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.8.tgz", + "integrity": "sha512-p73uL5VCHCO2BZZ6krwwQE3kCzM7NKmis8S//xEC6fQonchbum4eP6kR4DLEjQFO3Wnj3Fuo8NM0kOSjVdHjZQ==", "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/string.prototype.trimstart": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.7.tgz", - "integrity": "sha512-NGhtDFu3jCEm7B4Fy0DpLewdJQOZcQ0rGbwQ/+stjnrp2i+rlKeCvos9hOIeCmqwratM47OBxY7uFZzjxHXmrg==", + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz", + "integrity": "sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==", "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/stringify-entities": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/stringify-entities/-/stringify-entities-4.0.3.tgz", - "integrity": "sha512-BP9nNHMhhfcMbiuQKCqMjhDP5yBCAxsPu4pHFFzJ6Alo9dZgY4VLDPutXqIjpRiMoKdp7Av85Gr73Q5uH9k7+g==", + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/stringify-entities/-/stringify-entities-4.0.4.tgz", + "integrity": "sha512-IwfBptatlO+QCJUo19AqvrPNqlVMpW9YEL2LIVY+Rpv2qsjCGxaDLNRgeGsQWJhfItebuJhsGSLjaBbNSQ+ieg==", "dependencies": { "character-entities-html4": "^2.0.0", "character-entities-legacy": "^3.0.0" @@ -14999,9 +15120,9 @@ } }, "node_modules/systeminformation": { - "version": "5.22.0", - "resolved": "https://registry.npmjs.org/systeminformation/-/systeminformation-5.22.0.tgz", - "integrity": "sha512-oAP80ymt8ssrAzjX8k3frbL7ys6AotqC35oikG6/SG15wBw+tG9nCk4oPaXIhEaAOAZ8XngxUv3ORq2IuR3r4Q==", + "version": "5.22.7", + "resolved": "https://registry.npmjs.org/systeminformation/-/systeminformation-5.22.7.tgz", + "integrity": "sha512-AWxlP05KeHbpGdgvZkcudJpsmChc2Y5Eo/GvxG/iUA/Aws5LZKHAMSeAo+V+nD+nxWZaxrwpWcnx4SH3oxNL3A==", "dev": true, "optional": true, "os": [ @@ -15765,9 +15886,9 @@ } }, "node_modules/typed-array-length": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.5.tgz", - "integrity": "sha512-yMi0PlwuznKHxKmcpoOdeLwxBoVPkqZxd7q2FgMkmD3bNwvF5VW0+UlUQ1k1vmktTu4Yu13Q0RIxEP8+B+wloA==", + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.6.tgz", + "integrity": "sha512-/OxDN6OtAk5KBpGb28T+HZc2M+ADtvRxXrKKbUwtsLgdoxgX13hyy7ek6bFRl5+aBs2yZzB0c4CnQfAtVypW/g==", "dependencies": { "call-bind": "^1.0.7", "for-each": "^0.3.3", @@ -15845,28 +15966,6 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/unified/node_modules/is-buffer": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz", - "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "engines": { - "node": ">=4" - } - }, "node_modules/unified/node_modules/is-plain-obj": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz", @@ -16234,28 +16333,6 @@ "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==" }, - "node_modules/vfile-matter/node_modules/is-buffer": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz", - "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "engines": { - "node": ">=4" - } - }, "node_modules/vfile-matter/node_modules/js-yaml": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", @@ -16297,28 +16374,6 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/vfile/node_modules/is-buffer": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz", - "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "engines": { - "node": ">=4" - } - }, "node_modules/vfile/node_modules/vfile-message": { "version": "3.1.4", "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-3.1.4.tgz", @@ -16505,15 +16560,15 @@ } }, "node_modules/which-typed-array": { - "version": "1.1.14", - "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.14.tgz", - "integrity": "sha512-VnXFiIW8yNn9kIHN88xvZ4yOWchftKDsRJ8fEPacX/wl1lOvBrhsJ/OeJCXq7B0AaijRuqgzSKalJoPk+D8MPg==", + "version": "1.1.15", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.15.tgz", + "integrity": "sha512-oV0jmFtUky6CXfkqehVvBP/LSWJ2sy4vWMioiENyJLePrBO/yKyV9OyJySfAKosh+RYkIl5zJCNZ8/4JncrpdA==", "dependencies": { - "available-typed-arrays": "^1.0.6", - "call-bind": "^1.0.5", + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", "for-each": "^0.3.3", "gopd": "^1.0.1", - "has-tostringtag": "^1.0.1" + "has-tostringtag": "^1.0.2" }, "engines": { "node": ">= 0.4" @@ -16715,6 +16770,16 @@ "yaml2json": "bin/yaml2json" } }, + "node_modules/yamljs/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, "node_modules/yamljs/node_modules/glob": { "version": "7.2.3", "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", @@ -16735,6 +16800,18 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/yamljs/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, "node_modules/yargs": { "version": "17.7.2", "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", @@ -16840,6 +16917,15 @@ "redis": ">=4.6" } }, + "packages/cache-handler/node_modules/@types/node": { + "version": "20.12.4", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.4.tgz", + "integrity": "sha512-E+Fa9z3wSQpzgYQdYmme5X3OTuejnnTx88A6p6vkkJosR3KBz+HpE3kqNm98VE6cfLFcISx7zW7MsJkH6KwbTw==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "packages/diffscribe": { "version": "0.2.3", "license": "MIT", @@ -16858,6 +16944,15 @@ "openai": "^4.12.3" } }, + "packages/diffscribe/node_modules/@types/node": { + "version": "20.12.4", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.4.tgz", + "integrity": "sha512-E+Fa9z3wSQpzgYQdYmme5X3OTuejnnTx88A6p6vkkJosR3KBz+HpE3kqNm98VE6cfLFcISx7zW7MsJkH6KwbTw==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "packages/json-replacer-reviver": { "name": "@neshca/json-replacer-reviver", "version": "1.1.2", @@ -16871,6 +16966,15 @@ "typescript": "5.3.3" } }, + "packages/json-replacer-reviver/node_modules/@types/node": { + "version": "20.12.4", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.4.tgz", + "integrity": "sha512-E+Fa9z3wSQpzgYQdYmme5X3OTuejnnTx88A6p6vkkJosR3KBz+HpE3kqNm98VE6cfLFcISx7zW7MsJkH6KwbTw==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "packages/server": { "name": "@neshca/server", "version": "1.0.0", @@ -16892,6 +16996,15 @@ "tsx": "4.7.2", "typescript": "5.3.3" } + }, + "packages/server/node_modules/@types/node": { + "version": "20.12.4", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.4.tgz", + "integrity": "sha512-E+Fa9z3wSQpzgYQdYmme5X3OTuejnnTx88A6p6vkkJosR3KBz+HpE3kqNm98VE6cfLFcISx7zW7MsJkH6KwbTw==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } } } } diff --git a/packages/cache-handler/src/handlers/redis-stack.ts b/packages/cache-handler/src/handlers/redis-stack.ts index e6cd1909..ac6a4b1c 100644 --- a/packages/cache-handler/src/handlers/redis-stack.ts +++ b/packages/cache-handler/src/handlers/redis-stack.ts @@ -120,6 +120,10 @@ export default async function createHandler({ from += querySize; } + if (keysToDelete.length === 0) { + return; + } + const options = getTimeoutRedisCommandOptions(timeoutMs); await client.unlink(options, keysToDelete); From 45c8e8b189c092ec0c35e4e73bc1e786722464ea Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Fri, 5 Apr 2024 17:04:02 +0300 Subject: [PATCH 178/458] Create changeset (#449) --- .changeset/bright-pianos-film.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 .changeset/bright-pianos-film.md diff --git a/.changeset/bright-pianos-film.md b/.changeset/bright-pianos-film.md new file mode 100644 index 00000000..3d3739f6 --- /dev/null +++ b/.changeset/bright-pianos-film.md @@ -0,0 +1,5 @@ +--- +'@neshca/cache-handler': patch +--- + +Fixed unlink calls for Redis Handlers and updated dependencies. From ac07278578c2f0afe846c8bf9c57f5076432b7a6 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Fri, 5 Apr 2024 17:20:27 +0300 Subject: [PATCH 179/458] Version Packages (#450) Co-authored-by: github-actions[bot] --- .changeset/bright-pianos-film.md | 5 ----- packages/cache-handler/CHANGELOG.md | 6 ++++++ packages/cache-handler/package.json | 2 +- 3 files changed, 7 insertions(+), 6 deletions(-) delete mode 100644 .changeset/bright-pianos-film.md diff --git a/.changeset/bright-pianos-film.md b/.changeset/bright-pianos-film.md deleted file mode 100644 index 3d3739f6..00000000 --- a/.changeset/bright-pianos-film.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@neshca/cache-handler': patch ---- - -Fixed unlink calls for Redis Handlers and updated dependencies. diff --git a/packages/cache-handler/CHANGELOG.md b/packages/cache-handler/CHANGELOG.md index 2cd1328c..7d9d0d36 100644 --- a/packages/cache-handler/CHANGELOG.md +++ b/packages/cache-handler/CHANGELOG.md @@ -1,5 +1,11 @@ # @neshca/cache-handler +## 1.0.8 + +### Patch Changes + +- 45c8e8b: Fixed unlink calls for Redis Handlers and updated dependencies. + ## 1.0.7 ### Patch Changes diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index ce0429a4..31301230 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -1,6 +1,6 @@ { "name": "@neshca/cache-handler", - "version": "1.0.7", + "version": "1.0.8", "description": "Next.js self-hosting simplified.", "keywords": [ "cache", From 9e69f9636546c67305cfd270be4cbe66aa699b6c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 6 Apr 2024 10:08:13 +0300 Subject: [PATCH 180/458] Bump @playwright/test from 1.42.1 to 1.43.0 (#451) Bumps [@playwright/test](https://github.com/microsoft/playwright) from 1.42.1 to 1.43.0. - [Release notes](https://github.com/microsoft/playwright/releases) - [Commits](https://github.com/microsoft/playwright/compare/v1.42.1...v1.43.0) --- updated-dependencies: - dependency-name: "@playwright/test" dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- package-lock.json | 26 +++++++++++++------------- 2 files changed, 14 insertions(+), 14 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 911b8085..45d7c0ad 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -24,7 +24,7 @@ "devDependencies": { "@neshca/cache-handler": "*", "@next/eslint-plugin-next": "14.2.0-canary.4", - "@playwright/test": "1.42.1", + "@playwright/test": "1.43.0", "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", diff --git a/package-lock.json b/package-lock.json index 8f9a16dc..b0ec5307 100644 --- a/package-lock.json +++ b/package-lock.json @@ -44,7 +44,7 @@ "devDependencies": { "@neshca/cache-handler": "*", "@next/eslint-plugin-next": "14.2.0-canary.4", - "@playwright/test": "1.42.1", + "@playwright/test": "1.43.0", "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", @@ -3020,12 +3020,12 @@ } }, "node_modules/@playwright/test": { - "version": "1.42.1", - "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.42.1.tgz", - "integrity": "sha512-Gq9rmS54mjBL/7/MvBaNOBwbfnh7beHvS6oS4srqXFcQHpQCV1+c8JXWE8VLPyRDhgS3H8x8A7hztqI9VnwrAQ==", + "version": "1.43.0", + "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.43.0.tgz", + "integrity": "sha512-Ebw0+MCqoYflop7wVKj711ccbNlrwTBCtjY5rlbiY9kHL2bCYxq+qltK6uPsVBGGAOb033H2VO0YobcQVxoW7Q==", "dev": true, "dependencies": { - "playwright": "1.42.1" + "playwright": "1.43.0" }, "bin": { "playwright": "cli.js" @@ -12764,12 +12764,12 @@ } }, "node_modules/playwright": { - "version": "1.42.1", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.42.1.tgz", - "integrity": "sha512-PgwB03s2DZBcNRoW+1w9E+VkLBxweib6KTXM0M3tkiT4jVxKSi6PmVJ591J+0u10LUrgxB7dLRbiJqO5s2QPMg==", + "version": "1.43.0", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.43.0.tgz", + "integrity": "sha512-SiOKHbVjTSf6wHuGCbqrEyzlm6qvXcv7mENP+OZon1I07brfZLGdfWV0l/efAzVx7TF3Z45ov1gPEkku9q25YQ==", "dev": true, "dependencies": { - "playwright-core": "1.42.1" + "playwright-core": "1.43.0" }, "bin": { "playwright": "cli.js" @@ -12782,9 +12782,9 @@ } }, "node_modules/playwright-core": { - "version": "1.42.1", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.42.1.tgz", - "integrity": "sha512-mxz6zclokgrke9p1vtdy/COWBH+eOZgYUVVU34C73M+4j4HLlQJHtfcqiqqxpP0o8HhMkflvfbquLX5dg6wlfA==", + "version": "1.43.0", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.43.0.tgz", + "integrity": "sha512-iWFjyBUH97+pUFiyTqSLd8cDMMOS0r2ZYz2qEsPjH8/bX++sbIJT35MSwKnp1r/OQBAqC5XO99xFbJ9XClhf4w==", "dev": true, "bin": { "playwright-core": "cli.js" @@ -16897,7 +16897,7 @@ }, "packages/cache-handler": { "name": "@neshca/cache-handler", - "version": "1.0.7", + "version": "1.0.8", "license": "MIT", "dependencies": { "lru-cache": "10.2.0" From 9a48f39bf4bb76469ee29b63099cb9439f70ffd2 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 7 Apr 2024 18:53:18 +0300 Subject: [PATCH 181/458] Bump typescript from 5.3.3 to 5.4.4 (#446) Bumps [typescript](https://github.com/Microsoft/TypeScript) from 5.3.3 to 5.4.4. - [Release notes](https://github.com/Microsoft/TypeScript/releases) - [Changelog](https://github.com/microsoft/TypeScript/blob/main/azure-pipelines.release.yml) - [Commits](https://github.com/Microsoft/TypeScript/compare/v5.3.3...v5.4.4) --- updated-dependencies: - dependency-name: typescript dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- internal/backend/package.json | 2 +- internal/eslint-config/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 26 ++++++++++----------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 11 files changed, 23 insertions(+), 23 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 45d7c0ad..fbc12cd9 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -39,6 +39,6 @@ "redis": "4.6.13", "rimraf": "5.0.5", "tsx": "4.7.2", - "typescript": "5.3.3" + "typescript": "5.4.4" } } diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index f0830e51..b0a8d6d4 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -26,6 +26,6 @@ "@types/react": "18.2.74", "@types/react-dom": "18.2.24", "eslint": "8.57.0", - "typescript": "5.3.3" + "typescript": "5.4.4" } } diff --git a/internal/backend/package.json b/internal/backend/package.json index 9a7d0d00..046ffddd 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -19,6 +19,6 @@ "pino-pretty": "11.0.0", "rimraf": "5.0.5", "tsx": "4.7.2", - "typescript": "5.3.3" + "typescript": "5.4.4" } } diff --git a/internal/eslint-config/package.json b/internal/eslint-config/package.json index d462f94c..adbd3b26 100644 --- a/internal/eslint-config/package.json +++ b/internal/eslint-config/package.json @@ -12,6 +12,6 @@ "eslint-config-prettier": "9.1.0", "eslint-config-turbo": "1.13.2", "eslint-plugin-only-warn": "1.1.0", - "typescript": "5.3.3" + "typescript": "5.4.4" } } diff --git a/internal/next-common/package.json b/internal/next-common/package.json index 139bb131..568352d8 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -17,6 +17,6 @@ "@repo/typescript-config": "*", "@types/node": "20.12.4", "rimraf": "5.0.5", - "typescript": "5.3.3" + "typescript": "5.4.4" } } diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index fa7a00af..eace8232 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -18,6 +18,6 @@ "@repo/typescript-config": "*", "@types/node": "20.12.4", "rimraf": "5.0.5", - "typescript": "5.3.3" + "typescript": "5.4.4" } } diff --git a/package-lock.json b/package-lock.json index b0ec5307..e89551fc 100644 --- a/package-lock.json +++ b/package-lock.json @@ -59,7 +59,7 @@ "redis": "4.6.13", "rimraf": "5.0.5", "tsx": "4.7.2", - "typescript": "5.3.3" + "typescript": "5.4.4" } }, "apps/cache-testing/node_modules/@types/node": { @@ -134,7 +134,7 @@ "@types/react": "18.2.74", "@types/react-dom": "18.2.24", "eslint": "8.57.0", - "typescript": "5.3.3" + "typescript": "5.4.4" } }, "docs/cache-handler-docs/node_modules/@next/env": { @@ -464,7 +464,7 @@ "pino-pretty": "11.0.0", "rimraf": "5.0.5", "tsx": "4.7.2", - "typescript": "5.3.3" + "typescript": "5.4.4" } }, "internal/backend/node_modules/@types/node": { @@ -486,7 +486,7 @@ "eslint-config-prettier": "9.1.0", "eslint-config-turbo": "1.13.2", "eslint-plugin-only-warn": "1.1.0", - "typescript": "5.3.3" + "typescript": "5.4.4" } }, "internal/eslint-config/node_modules/@next/eslint-plugin-next": { @@ -610,7 +610,7 @@ "@repo/typescript-config": "*", "@types/node": "20.12.4", "rimraf": "5.0.5", - "typescript": "5.3.3" + "typescript": "5.4.4" } }, "internal/next-common/node_modules/@types/node": { @@ -679,7 +679,7 @@ "@repo/typescript-config": "*", "@types/node": "20.12.4", "rimraf": "5.0.5", - "typescript": "5.3.3" + "typescript": "5.4.4" } }, "internal/next-lru-cache/node_modules/@types/node": { @@ -15905,9 +15905,9 @@ } }, "node_modules/typescript": { - "version": "5.3.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.3.3.tgz", - "integrity": "sha512-pXWcraxM0uxAS+tN0AG/BF2TyqmHO014Z070UsJ+pFvYuRSq8KH8DmWpnbXe0pEPDHXZV3FcAbJkijJ5oNEnWw==", + "version": "5.4.4", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.4.4.tgz", + "integrity": "sha512-dGE2Vv8cpVvw28v8HCPqyb08EzbBURxDpuhJvTrusShUfGnhHBafDsLdS1EhhxyL6BJQE+2cT3dDPAv+MQ6oLw==", "dev": true, "bin": { "tsc": "bin/tsc", @@ -16910,7 +16910,7 @@ "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.2", - "typescript": "5.3.3" + "typescript": "5.4.4" }, "peerDependencies": { "next": ">=13.5.1", @@ -16937,7 +16937,7 @@ "@types/node": "20.12.4", "rimraf": "5.0.5", "tsup": "8.0.2", - "typescript": "5.3.3" + "typescript": "5.4.4" }, "peerDependencies": { "dotenv": "^16.3.1", @@ -16963,7 +16963,7 @@ "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.2", - "typescript": "5.3.3" + "typescript": "5.4.4" } }, "packages/json-replacer-reviver/node_modules/@types/node": { @@ -16994,7 +16994,7 @@ "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.2", - "typescript": "5.3.3" + "typescript": "5.4.4" } }, "packages/server/node_modules/@types/node": { diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 31301230..deb0925e 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -76,7 +76,7 @@ "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.2", - "typescript": "5.3.3" + "typescript": "5.4.4" }, "peerDependencies": { "next": ">=13.5.1", diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index 5455ed9f..f8be0888 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -28,7 +28,7 @@ "@types/node": "20.12.4", "rimraf": "5.0.5", "tsup": "8.0.2", - "typescript": "5.3.3" + "typescript": "5.4.4" }, "peerDependencies": { "dotenv": "^16.3.1", diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 57d1261d..5661bf1a 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -32,6 +32,6 @@ "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.2", - "typescript": "5.3.3" + "typescript": "5.4.4" } } diff --git a/packages/server/package.json b/packages/server/package.json index f5173395..0cc4df80 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -36,7 +36,7 @@ "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.2", - "typescript": "5.3.3" + "typescript": "5.4.4" }, "distTags": [ "next13.5", From 2de5f98e4238e34096e93232ccf6ca21ea363518 Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Mon, 8 Apr 2024 16:07:12 +0300 Subject: [PATCH 182/458] Fix unstable_cache test (#453) --- apps/cache-testing/package.json | 4 +- .../unstable-cache/[slug]/page.tsx | 2 +- .../src/utils/create-get-data.ts | 2 +- apps/cache-testing/tests/app.spec.ts | 2 - docs/cache-handler-docs/src/pages/index.mdx | 2 +- internal/next-common/package.json | 2 +- package-lock.json | 310 +++++++++--------- packages/cache-handler/README.md | 2 +- 8 files changed, 170 insertions(+), 156 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index fbc12cd9..ea8f2655 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -17,13 +17,13 @@ "start": "dotenv -e .env.local -v SERVER_STARTED=1 node .next/standalone/apps/cache-testing/server.js" }, "dependencies": { - "next": "14.2.0-canary.4", + "next": "14.2.0-canary.61", "react": "18.2.0", "react-dom": "18.2.0" }, "devDependencies": { "@neshca/cache-handler": "*", - "@next/eslint-plugin-next": "14.2.0-canary.4", + "@next/eslint-plugin-next": "14.2.0-canary.61", "@playwright/test": "1.43.0", "@repo/eslint-config": "*", "@repo/typescript-config": "*", diff --git a/apps/cache-testing/src/app/app/with-params/unstable-cache/[slug]/page.tsx b/apps/cache-testing/src/app/app/with-params/unstable-cache/[slug]/page.tsx index 2b3101eb..de01ae58 100644 --- a/apps/cache-testing/src/app/app/with-params/unstable-cache/[slug]/page.tsx +++ b/apps/cache-testing/src/app/app/with-params/unstable-cache/[slug]/page.tsx @@ -5,7 +5,7 @@ import { createGetData } from 'cache-testing/utils/create-get-data'; type PageParams = { params: { slug: string } }; -export const dynamicParams = false; +export const dynamicParams = true; export const revalidate = 5; diff --git a/apps/cache-testing/src/utils/create-get-data.ts b/apps/cache-testing/src/utils/create-get-data.ts index a5b51d8e..4f712625 100644 --- a/apps/cache-testing/src/utils/create-get-data.ts +++ b/apps/cache-testing/src/utils/create-get-data.ts @@ -5,7 +5,7 @@ import type { CountBackendApiResponseJson, PageProps } from './types'; async function getViaAxios(url: URL) { try { - return (await axios.get(url.toString())).data; + return (await axios.get(url.href)).data; } catch (_error) { return null; } diff --git a/apps/cache-testing/tests/app.spec.ts b/apps/cache-testing/tests/app.spec.ts index aeee8ff8..9bdc0e73 100644 --- a/apps/cache-testing/tests/app.spec.ts +++ b/apps/cache-testing/tests/app.spec.ts @@ -337,8 +337,6 @@ test.describe('Routes', () => { test.describe('unstable_cache', () => { test('unstable_cache works', async ({ page, baseURL }) => { - test.fixme(true, 'This test is failing because of unstable_cache is not supported yet.'); - const url = new URL('/app/with-params/unstable-cache/200', `${baseURL}:3000`); await page.goto(url.href); diff --git a/docs/cache-handler-docs/src/pages/index.mdx b/docs/cache-handler-docs/src/pages/index.mdx index 5e4e1180..54613b31 100644 --- a/docs/cache-handler-docs/src/pages/index.mdx +++ b/docs/cache-handler-docs/src/pages/index.mdx @@ -3,7 +3,7 @@ Welcome to `@neshca/cache-handler`, a specialized ISR/Data cache API crafted for ### Next.js Routers support - Full support for Pages Router. -- Almost full support for App Router. The only exceptions are the [`unstable_cache`](https://github.com/caching-tools/next-shared-cache/issues/391) and the [`revalidatePath`](https://github.com/caching-tools/next-shared-cache/issues/382) functions. +- Almost full support for App Router. The only exception is the [`revalidatePath`](https://github.com/caching-tools/next-shared-cache/issues/382) functions. ### The importance of shared cache in distributed environments diff --git a/internal/next-common/package.json b/internal/next-common/package.json index 568352d8..2ca71ac0 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -11,7 +11,7 @@ "clean": "rimraf ./.turbo ./node_modules" }, "dependencies": { - "next": "14.2.0-canary.4" + "next": "14.2.0-canary.61" }, "devDependencies": { "@repo/typescript-config": "*", diff --git a/package-lock.json b/package-lock.json index e89551fc..88364eb1 100644 --- a/package-lock.json +++ b/package-lock.json @@ -37,13 +37,13 @@ "version": "0.0.0", "license": "MIT", "dependencies": { - "next": "14.2.0-canary.4", + "next": "14.2.0-canary.61", "react": "18.2.0", "react-dom": "18.2.0" }, "devDependencies": { "@neshca/cache-handler": "*", - "@next/eslint-plugin-next": "14.2.0-canary.4", + "@next/eslint-plugin-next": "14.2.0-canary.61", "@playwright/test": "1.43.0", "@repo/eslint-config": "*", "@repo/typescript-config": "*", @@ -72,11 +72,11 @@ } }, "apps/cache-testing/node_modules/next": { - "version": "14.2.0-canary.4", - "resolved": "https://registry.npmjs.org/next/-/next-14.2.0-canary.4.tgz", - "integrity": "sha512-CoYamSDqBgsI3vZn/sqWkO37Fk908VNIqrqu+iEqCnFQlaoS/ceY5Ez5RU40zWgk3FRjnQerGyV+MDDIlLjRog==", + "version": "14.2.0-canary.61", + "resolved": "https://registry.npmjs.org/next/-/next-14.2.0-canary.61.tgz", + "integrity": "sha512-UbdoNkGX04TO0Q0N3k7fmiNCliE1yihVBHd/nwg2zMnpjB6dGU3r1UNgCBpfUUlrs1t19FAWazfVQANOOfBT4w==", "dependencies": { - "@next/env": "14.2.0-canary.4", + "@next/env": "14.2.0-canary.61", "@swc/helpers": "0.5.5", "busboy": "1.6.0", "caniuse-lite": "^1.0.30001579", @@ -91,18 +91,19 @@ "node": ">=18.17.0" }, "optionalDependencies": { - "@next/swc-darwin-arm64": "14.2.0-canary.4", - "@next/swc-darwin-x64": "14.2.0-canary.4", - "@next/swc-linux-arm64-gnu": "14.2.0-canary.4", - "@next/swc-linux-arm64-musl": "14.2.0-canary.4", - "@next/swc-linux-x64-gnu": "14.2.0-canary.4", - "@next/swc-linux-x64-musl": "14.2.0-canary.4", - "@next/swc-win32-arm64-msvc": "14.2.0-canary.4", - "@next/swc-win32-ia32-msvc": "14.2.0-canary.4", - "@next/swc-win32-x64-msvc": "14.2.0-canary.4" + "@next/swc-darwin-arm64": "14.2.0-canary.61", + "@next/swc-darwin-x64": "14.2.0-canary.61", + "@next/swc-linux-arm64-gnu": "14.2.0-canary.61", + "@next/swc-linux-arm64-musl": "14.2.0-canary.61", + "@next/swc-linux-x64-gnu": "14.2.0-canary.61", + "@next/swc-linux-x64-musl": "14.2.0-canary.61", + "@next/swc-win32-arm64-msvc": "14.2.0-canary.61", + "@next/swc-win32-ia32-msvc": "14.2.0-canary.61", + "@next/swc-win32-x64-msvc": "14.2.0-canary.61" }, "peerDependencies": { "@opentelemetry/api": "^1.1.0", + "@playwright/test": "^1.41.2", "react": "^18.2.0", "react-dom": "^18.2.0", "sass": "^1.3.0" @@ -111,6 +112,9 @@ "@opentelemetry/api": { "optional": true }, + "@playwright/test": { + "optional": true + }, "sass": { "optional": true } @@ -604,7 +608,7 @@ "version": "0.0.0", "license": "MIT", "dependencies": { - "next": "14.2.0-canary.4" + "next": "14.2.0-canary.61" }, "devDependencies": { "@repo/typescript-config": "*", @@ -623,11 +627,11 @@ } }, "internal/next-common/node_modules/next": { - "version": "14.2.0-canary.4", - "resolved": "https://registry.npmjs.org/next/-/next-14.2.0-canary.4.tgz", - "integrity": "sha512-CoYamSDqBgsI3vZn/sqWkO37Fk908VNIqrqu+iEqCnFQlaoS/ceY5Ez5RU40zWgk3FRjnQerGyV+MDDIlLjRog==", + "version": "14.2.0-canary.61", + "resolved": "https://registry.npmjs.org/next/-/next-14.2.0-canary.61.tgz", + "integrity": "sha512-UbdoNkGX04TO0Q0N3k7fmiNCliE1yihVBHd/nwg2zMnpjB6dGU3r1UNgCBpfUUlrs1t19FAWazfVQANOOfBT4w==", "dependencies": { - "@next/env": "14.2.0-canary.4", + "@next/env": "14.2.0-canary.61", "@swc/helpers": "0.5.5", "busboy": "1.6.0", "caniuse-lite": "^1.0.30001579", @@ -642,18 +646,19 @@ "node": ">=18.17.0" }, "optionalDependencies": { - "@next/swc-darwin-arm64": "14.2.0-canary.4", - "@next/swc-darwin-x64": "14.2.0-canary.4", - "@next/swc-linux-arm64-gnu": "14.2.0-canary.4", - "@next/swc-linux-arm64-musl": "14.2.0-canary.4", - "@next/swc-linux-x64-gnu": "14.2.0-canary.4", - "@next/swc-linux-x64-musl": "14.2.0-canary.4", - "@next/swc-win32-arm64-msvc": "14.2.0-canary.4", - "@next/swc-win32-ia32-msvc": "14.2.0-canary.4", - "@next/swc-win32-x64-msvc": "14.2.0-canary.4" + "@next/swc-darwin-arm64": "14.2.0-canary.61", + "@next/swc-darwin-x64": "14.2.0-canary.61", + "@next/swc-linux-arm64-gnu": "14.2.0-canary.61", + "@next/swc-linux-arm64-musl": "14.2.0-canary.61", + "@next/swc-linux-x64-gnu": "14.2.0-canary.61", + "@next/swc-linux-x64-musl": "14.2.0-canary.61", + "@next/swc-win32-arm64-msvc": "14.2.0-canary.61", + "@next/swc-win32-ia32-msvc": "14.2.0-canary.61", + "@next/swc-win32-x64-msvc": "14.2.0-canary.61" }, "peerDependencies": { "@opentelemetry/api": "^1.1.0", + "@playwright/test": "^1.41.2", "react": "^18.2.0", "react-dom": "^18.2.0", "sass": "^1.3.0" @@ -662,6 +667,9 @@ "@opentelemetry/api": { "optional": true }, + "@playwright/test": { + "optional": true + }, "sass": { "optional": true } @@ -2681,14 +2689,14 @@ "link": true }, "node_modules/@next/env": { - "version": "14.2.0-canary.4", - "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.0-canary.4.tgz", - "integrity": "sha512-mIJubCPrEQj1b8RKPwmtqjPWWfbOHPkw16todFa/Bd8UwALOrpHZRdE5k6BP+TBGb2wvR0BRUC4jKx2cwgxIyQ==" + "version": "14.2.0-canary.61", + "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.0-canary.61.tgz", + "integrity": "sha512-Ueqse8kdwaoebGrpSo60M4/cjFaMJEE7BMsKZufYwZDTlE0qXw7N4GsdVpUZzJG00sXf6CoTnCU1lCTPrUMC4g==" }, "node_modules/@next/eslint-plugin-next": { - "version": "14.2.0-canary.4", - "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.2.0-canary.4.tgz", - "integrity": "sha512-8k2ow45Q3wb2gwnjEerEvGINwOFmojBiALnwFQilfeZ4KAhb9M5ir+4ecAK8DLaJi6W14OfzSeSe75OGahOgag==", + "version": "14.2.0-canary.61", + "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.2.0-canary.61.tgz", + "integrity": "sha512-FEjzPxDw1S7oqxDYG2EMl8mAzW4hrB0OR1bWUA4DwxoyNs+rLlqU6pIgwGJo+oegbVmbqnMyDogTi3Khys0OFg==", "dev": true, "dependencies": { "glob": "10.3.10" @@ -2717,9 +2725,9 @@ } }, "node_modules/@next/swc-darwin-arm64": { - "version": "14.2.0-canary.4", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.0-canary.4.tgz", - "integrity": "sha512-XMFVqRX2HXHJz8NBpAcjhU8b3Qb7W0JXEYx92pD4dnne776lILA+CDRH5nyRaUtXIMv7wLETo34tvdVMdzppMw==", + "version": "14.2.0-canary.61", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.0-canary.61.tgz", + "integrity": "sha512-mMlp2/hvtaBbCY5qYhuvAqX9Z/aFC+Rgme4FjFSxq2C3TC/mL3G4fVG/TVl7bqjikKCxSvJgiWXRwvhIaqGktw==", "cpu": [ "arm64" ], @@ -2732,9 +2740,9 @@ } }, "node_modules/@next/swc-darwin-x64": { - "version": "14.2.0-canary.4", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.0-canary.4.tgz", - "integrity": "sha512-js0NKy+hFymtenjytslayKpsYer7gGHfJ2ilydRQbJMl0ptac27A6pQeaQNqhgB9tJnksDUyG4p/Wpdx7RX+bg==", + "version": "14.2.0-canary.61", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.0-canary.61.tgz", + "integrity": "sha512-4bEjO0WK6keRi972eAY1AfvTXOQRHnM59klNqnUh5zfalbi7VkEdluhYAZOop2NycCHjF+m8p+ytYtrF1uCO1Q==", "cpu": [ "x64" ], @@ -2747,9 +2755,9 @@ } }, "node_modules/@next/swc-linux-arm64-gnu": { - "version": "14.2.0-canary.4", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.0-canary.4.tgz", - "integrity": "sha512-Jr7tcL7GtSN1zegjDF39nidMBG99MRaM/kIJ81Az6lz0rqInVoF7BLItZdX3xRaJbuJqMfyakd7HtR4GXe1tzg==", + "version": "14.2.0-canary.61", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.0-canary.61.tgz", + "integrity": "sha512-wIXc3EdxrETlL2XwlGlLQkMU9godhNSMAXxiJotd/mhN3K4iKajPahAStvFxY2Zwc/on2IBa0NpUGpzDONNt9A==", "cpu": [ "arm64" ], @@ -2762,9 +2770,9 @@ } }, "node_modules/@next/swc-linux-arm64-musl": { - "version": "14.2.0-canary.4", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.0-canary.4.tgz", - "integrity": "sha512-SavUeVrv9MocMKDaEJaJJEDT0CR/SHIzR7ijxoK8CFHaiLPSi5DU/I3qSme4Ks/ih/vp+SOD0f3mZSztBXCcSw==", + "version": "14.2.0-canary.61", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.0-canary.61.tgz", + "integrity": "sha512-95aMF55sq2N6+5iLEqxCfz7ccYMBURQ8D0KYmcq+rMJTE5z/qvxEToSJWAbV4jGyd2Eq/vXjPdR1rFytv2FnOw==", "cpu": [ "arm64" ], @@ -2777,9 +2785,9 @@ } }, "node_modules/@next/swc-linux-x64-gnu": { - "version": "14.2.0-canary.4", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.0-canary.4.tgz", - "integrity": "sha512-2ZpPAwA/Ma8ZVTJEYOMsxY04vvFmTSGjNohSdJt6lke9Vm14aGEhyrQf+FRF3QvTkNHfdrWoMlQdrALfXBmxFA==", + "version": "14.2.0-canary.61", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.0-canary.61.tgz", + "integrity": "sha512-LWG5OC9hNSCYtDb+7MQcIjE1PO70Sho+ZJkqJnmLxJ08Atp/nJQBo9nAMjORdcO5Nz+hPNVY5vmrY+5Fl5kadw==", "cpu": [ "x64" ], @@ -2792,9 +2800,9 @@ } }, "node_modules/@next/swc-linux-x64-musl": { - "version": "14.2.0-canary.4", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.0-canary.4.tgz", - "integrity": "sha512-LUeuGZtC93va/H8wNNGgZlXxZ8M9lzkKbmnL2k7h9wAPTFRgrUtFHOXu7ksm7qOSTtaP2xqa/WNlSkVQ9Vm7mQ==", + "version": "14.2.0-canary.61", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.0-canary.61.tgz", + "integrity": "sha512-EjOXbSmDTPVi8xkOix4/WYJM6OUert+lfBtdUJBRba+oGiRw/mheih8FliFZKFOmQbPYj67A9z/QCus2ZDnfSw==", "cpu": [ "x64" ], @@ -2807,9 +2815,9 @@ } }, "node_modules/@next/swc-win32-arm64-msvc": { - "version": "14.2.0-canary.4", - "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.0-canary.4.tgz", - "integrity": "sha512-0tFdt2b4pOF8ZqhF3OMrxfDqIhkUC+4m/bDVbymYwVUrYm25H/eyXvQYHsTUDWly58X1L7cm6PvkLgq0oZHFAQ==", + "version": "14.2.0-canary.61", + "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.0-canary.61.tgz", + "integrity": "sha512-TK8oV4ozzUGWAwvZp/0SBsNgAUhrUFLWCMSXsFHz+YMRjHg7nT0KdK8BYh2Ln4Qt0jjDTUHbI1jaQKxmSMEMmA==", "cpu": [ "arm64" ], @@ -2822,9 +2830,9 @@ } }, "node_modules/@next/swc-win32-ia32-msvc": { - "version": "14.2.0-canary.4", - "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.0-canary.4.tgz", - "integrity": "sha512-wHZGmaA2aZTZ3ljq05P/bQuJ5ppfuhACbd7njPGEZyheD0RkUXNH4qsOHlri6DcHe8Ug3FR2E9rc3T3ApyvqMg==", + "version": "14.2.0-canary.61", + "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.0-canary.61.tgz", + "integrity": "sha512-i0iWCehuLKDOfVbQ6MEKG9v0lfcJU0DPWkYINFSi6p3fkFobI/+7DVT3KvYH5VVng/+opx+pA6cesV5eyQnBtw==", "cpu": [ "ia32" ], @@ -2837,9 +2845,9 @@ } }, "node_modules/@next/swc-win32-x64-msvc": { - "version": "14.2.0-canary.4", - "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.0-canary.4.tgz", - "integrity": "sha512-eWa4zsBEnsZ4miKmqbCuRBcq1pcruS/UmYp/qo3WyGaE6IH/NfJgx9pgkQGdv5QPMImxlocaMf98sLMQYKgL2w==", + "version": "14.2.0-canary.61", + "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.0-canary.61.tgz", + "integrity": "sha512-WB0UjpWcu+oXQOMFDTHDZWKcL2jiXeQfN+1RRkb0x7ZjVxvA/O66vOJE08fLSu7rdymLiGXxX+AKlGFq1Tpisg==", "cpu": [ "x64" ], @@ -3023,7 +3031,7 @@ "version": "1.43.0", "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.43.0.tgz", "integrity": "sha512-Ebw0+MCqoYflop7wVKj711ccbNlrwTBCtjY5rlbiY9kHL2bCYxq+qltK6uPsVBGGAOb033H2VO0YobcQVxoW7Q==", - "dev": true, + "devOptional": true, "dependencies": { "playwright": "1.43.0" }, @@ -3345,9 +3353,9 @@ "link": true }, "node_modules/@rollup/rollup-android-arm-eabi": { - "version": "4.14.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.14.0.tgz", - "integrity": "sha512-jwXtxYbRt1V+CdQSy6Z+uZti7JF5irRKF8hlKfEnF/xJpcNGuuiZMBvuoYM+x9sr9iWGnzrlM0+9hvQ1kgkf1w==", + "version": "4.14.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.14.1.tgz", + "integrity": "sha512-fH8/o8nSUek8ceQnT7K4EQbSiV7jgkHq81m9lWZFIXjJ7lJzpWXbQFpT/Zh6OZYnpFykvzC3fbEvEAFZu03dPA==", "cpu": [ "arm" ], @@ -3358,9 +3366,9 @@ ] }, "node_modules/@rollup/rollup-android-arm64": { - "version": "4.14.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.14.0.tgz", - "integrity": "sha512-fI9nduZhCccjzlsA/OuAwtFGWocxA4gqXGTLvOyiF8d+8o0fZUeSztixkYjcGq1fGZY3Tkq4yRvHPFxU+jdZ9Q==", + "version": "4.14.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.14.1.tgz", + "integrity": "sha512-Y/9OHLjzkunF+KGEoJr3heiD5X9OLa8sbT1lm0NYeKyaM3oMhhQFvPB0bNZYJwlq93j8Z6wSxh9+cyKQaxS7PQ==", "cpu": [ "arm64" ], @@ -3371,9 +3379,9 @@ ] }, "node_modules/@rollup/rollup-darwin-arm64": { - "version": "4.14.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.14.0.tgz", - "integrity": "sha512-BcnSPRM76/cD2gQC+rQNGBN6GStBs2pl/FpweW8JYuz5J/IEa0Fr4AtrPv766DB/6b2MZ/AfSIOSGw3nEIP8SA==", + "version": "4.14.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.14.1.tgz", + "integrity": "sha512-+kecg3FY84WadgcuSVm6llrABOdQAEbNdnpi5X3UwWiFVhZIZvKgGrF7kmLguvxHNQy+UuRV66cLVl3S+Rkt+Q==", "cpu": [ "arm64" ], @@ -3384,9 +3392,9 @@ ] }, "node_modules/@rollup/rollup-darwin-x64": { - "version": "4.14.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.14.0.tgz", - "integrity": "sha512-LDyFB9GRolGN7XI6955aFeI3wCdCUszFWumWU0deHA8VpR3nWRrjG6GtGjBrQxQKFevnUTHKCfPR4IvrW3kCgQ==", + "version": "4.14.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.14.1.tgz", + "integrity": "sha512-2pYRzEjVqq2TB/UNv47BV/8vQiXkFGVmPFwJb+1E0IFFZbIX8/jo1olxqqMbo6xCXf8kabANhp5bzCij2tFLUA==", "cpu": [ "x64" ], @@ -3397,9 +3405,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm-gnueabihf": { - "version": "4.14.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.14.0.tgz", - "integrity": "sha512-ygrGVhQP47mRh0AAD0zl6QqCbNsf0eTo+vgwkY6LunBcg0f2Jv365GXlDUECIyoXp1kKwL5WW6rsO429DBY/bA==", + "version": "4.14.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.14.1.tgz", + "integrity": "sha512-mS6wQ6Do6/wmrF9aTFVpIJ3/IDXhg1EZcQFYHZLHqw6AzMBjTHWnCG35HxSqUNphh0EHqSM6wRTT8HsL1C0x5g==", "cpu": [ "arm" ], @@ -3410,9 +3418,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-gnu": { - "version": "4.14.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.14.0.tgz", - "integrity": "sha512-x+uJ6MAYRlHGe9wi4HQjxpaKHPM3d3JjqqCkeC5gpnnI6OWovLdXTpfa8trjxPLnWKyBsSi5kne+146GAxFt4A==", + "version": "4.14.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.14.1.tgz", + "integrity": "sha512-p9rGKYkHdFMzhckOTFubfxgyIO1vw//7IIjBBRVzyZebWlzRLeNhqxuSaZ7kCEKVkm/kuC9fVRW9HkC/zNRG2w==", "cpu": [ "arm64" ], @@ -3423,9 +3431,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-musl": { - "version": "4.14.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.14.0.tgz", - "integrity": "sha512-nrRw8ZTQKg6+Lttwqo6a2VxR9tOroa2m91XbdQ2sUUzHoedXlsyvY1fN4xWdqz8PKmf4orDwejxXHjh7YBGUCA==", + "version": "4.14.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.14.1.tgz", + "integrity": "sha512-nDY6Yz5xS/Y4M2i9JLQd3Rofh5OR8Bn8qe3Mv/qCVpHFlwtZSBYSPaU4mrGazWkXrdQ98GB//H0BirGR/SKFSw==", "cpu": [ "arm64" ], @@ -3436,9 +3444,9 @@ ] }, "node_modules/@rollup/rollup-linux-powerpc64le-gnu": { - "version": "4.14.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.14.0.tgz", - "integrity": "sha512-xV0d5jDb4aFu84XKr+lcUJ9y3qpIWhttO3Qev97z8DKLXR62LC3cXT/bMZXrjLF9X+P5oSmJTzAhqwUbY96PnA==", + "version": "4.14.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.14.1.tgz", + "integrity": "sha512-im7HE4VBL+aDswvcmfx88Mp1soqL9OBsdDBU8NqDEYtkri0qV0THhQsvZtZeNNlLeCUQ16PZyv7cqutjDF35qw==", "cpu": [ "ppc64le" ], @@ -3449,9 +3457,9 @@ ] }, "node_modules/@rollup/rollup-linux-riscv64-gnu": { - "version": "4.14.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.14.0.tgz", - "integrity": "sha512-SDDhBQwZX6LPRoPYjAZWyL27LbcBo7WdBFWJi5PI9RPCzU8ijzkQn7tt8NXiXRiFMJCVpkuMkBf4OxSxVMizAw==", + "version": "4.14.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.14.1.tgz", + "integrity": "sha512-RWdiHuAxWmzPJgaHJdpvUUlDz8sdQz4P2uv367T2JocdDa98iRw2UjIJ4QxSyt077mXZT2X6pKfT2iYtVEvOFw==", "cpu": [ "riscv64" ], @@ -3462,9 +3470,9 @@ ] }, "node_modules/@rollup/rollup-linux-s390x-gnu": { - "version": "4.14.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.14.0.tgz", - "integrity": "sha512-RxB/qez8zIDshNJDufYlTT0ZTVut5eCpAZ3bdXDU9yTxBzui3KhbGjROK2OYTTor7alM7XBhssgoO3CZ0XD3qA==", + "version": "4.14.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.14.1.tgz", + "integrity": "sha512-VMgaGQ5zRX6ZqV/fas65/sUGc9cPmsntq2FiGmayW9KMNfWVG/j0BAqImvU4KTeOOgYSf1F+k6at1UfNONuNjA==", "cpu": [ "s390x" ], @@ -3475,9 +3483,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-gnu": { - "version": "4.14.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.14.0.tgz", - "integrity": "sha512-C6y6z2eCNCfhZxT9u+jAM2Fup89ZjiG5pIzZIDycs1IwESviLxwkQcFRGLjnDrP+PT+v5i4YFvlcfAs+LnreXg==", + "version": "4.14.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.14.1.tgz", + "integrity": "sha512-9Q7DGjZN+hTdJomaQ3Iub4m6VPu1r94bmK2z3UeWP3dGUecRC54tmVu9vKHTm1bOt3ASoYtEz6JSRLFzrysKlA==", "cpu": [ "x64" ], @@ -3488,9 +3496,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-musl": { - "version": "4.14.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.14.0.tgz", - "integrity": "sha512-i0QwbHYfnOMYsBEyjxcwGu5SMIi9sImDVjDg087hpzXqhBSosxkE7gyIYFHgfFl4mr7RrXksIBZ4DoLoP4FhJg==", + "version": "4.14.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.14.1.tgz", + "integrity": "sha512-JNEG/Ti55413SsreTguSx0LOVKX902OfXIKVg+TCXO6Gjans/k9O6ww9q3oLGjNDaTLxM+IHFMeXy/0RXL5R/g==", "cpu": [ "x64" ], @@ -3501,9 +3509,9 @@ ] }, "node_modules/@rollup/rollup-win32-arm64-msvc": { - "version": "4.14.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.14.0.tgz", - "integrity": "sha512-Fq52EYb0riNHLBTAcL0cun+rRwyZ10S9vKzhGKKgeD+XbwunszSY0rVMco5KbOsTlwovP2rTOkiII/fQ4ih/zQ==", + "version": "4.14.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.14.1.tgz", + "integrity": "sha512-ryS22I9y0mumlLNwDFYZRDFLwWh3aKaC72CWjFcFvxK0U6v/mOkM5Up1bTbCRAhv3kEIwW2ajROegCIQViUCeA==", "cpu": [ "arm64" ], @@ -3514,9 +3522,9 @@ ] }, "node_modules/@rollup/rollup-win32-ia32-msvc": { - "version": "4.14.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.14.0.tgz", - "integrity": "sha512-e/PBHxPdJ00O9p5Ui43+vixSgVf4NlLsmV6QneGERJ3lnjIua/kim6PRFe3iDueT1rQcgSkYP8ZBBXa/h4iPvw==", + "version": "4.14.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.14.1.tgz", + "integrity": "sha512-TdloItiGk+T0mTxKx7Hp279xy30LspMso+GzQvV2maYePMAWdmrzqSNZhUpPj3CGw12aGj57I026PgLCTu8CGg==", "cpu": [ "ia32" ], @@ -3527,9 +3535,9 @@ ] }, "node_modules/@rollup/rollup-win32-x64-msvc": { - "version": "4.14.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.14.0.tgz", - "integrity": "sha512-aGg7iToJjdklmxlUlJh/PaPNa4PmqHfyRMLunbL3eaMO0gp656+q1zOKkpJ/CVe9CryJv6tAN1HDoR8cNGzkag==", + "version": "4.14.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.14.1.tgz", + "integrity": "sha512-wQGI+LY/Py20zdUPq+XCem7JcPOyzIJBm3dli+56DJsQOHbnXZFEwgmnC6el1TPAfC8lBT3m+z69RmLykNUbew==", "cpu": [ "x64" ], @@ -4784,9 +4792,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001606", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001606.tgz", - "integrity": "sha512-LPbwnW4vfpJId225pwjZJOgX1m9sGfbw/RKJvw/t0QhYOOaTXHvkjVGFGPpvwEzufrjvTlsULnVTxdy4/6cqkg==", + "version": "1.0.30001607", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001607.tgz", + "integrity": "sha512-WcvhVRjXLKFB/kmOFVwELtMxyhq3iM/MvmXcyCe2PNf166c39mptscOc/45TTS96n2gpNV2z7+NakArTWZCQ3w==", "funding": [ { "type": "opencollective", @@ -6057,9 +6065,9 @@ } }, "node_modules/dompurify": { - "version": "3.0.11", - "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-3.0.11.tgz", - "integrity": "sha512-Fan4uMuyB26gFV3ovPoEoQbxRRPfTu3CvImyZnhGq5fsIEO+gEFLp45ISFt+kQBWsK5ulDdT0oV28jS1UrwQLg==" + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-3.1.0.tgz", + "integrity": "sha512-yoU4rhgPKCo+p5UrWWWNKiIq+ToGqmVVhk0PmMYBK4kRsR3/qhemNFL8f6CFmBd4gMwm3F4T7HBoydP5uY07fA==" }, "node_modules/dotenv": { "version": "16.4.5", @@ -6103,9 +6111,9 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.728", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.728.tgz", - "integrity": "sha512-Ud1v7hJJYIqehlUJGqR6PF1Ek8l80zWwxA6nGxigBsGJ9f9M2fciHyrIiNMerSHSH3p+0/Ia7jIlnDkt41h5cw==", + "version": "1.4.729", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.729.tgz", + "integrity": "sha512-bx7+5Saea/qu14kmPTDHQxkp2UnziG3iajUQu3BxFvCOnpAJdDbMV4rSl+EqFDkkpNNVUFlR1kDfpL59xfy1HA==", "dev": true }, "node_modules/elkjs": { @@ -6906,6 +6914,9 @@ "resolved": "https://registry.npmjs.org/eslint-plugin-playwright/-/eslint-plugin-playwright-1.5.4.tgz", "integrity": "sha512-J38Wy3Vc2f9y73J+KRmgXgbYI8TZ3zbz6qBbTj3PhpFndUS572jZ7kqQ3rJ9si5BaMHT7lmZzraO+3UjwIDV4Q==", "dev": true, + "workspaces": [ + "examples" + ], "dependencies": { "globals": "^13.23.0" }, @@ -8203,7 +8214,6 @@ "version": "2.3.2", "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", - "dev": true, "hasInstallScript": true, "optional": true, "os": [ @@ -8989,9 +8999,9 @@ } }, "node_modules/hast-util-to-text": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/hast-util-to-text/-/hast-util-to-text-4.0.0.tgz", - "integrity": "sha512-EWiE1FSArNBPUo1cKWtzqgnuRQwEeQbQtnFJRYV1hb1BWDgrAlBU0ExptvZMM/KSA82cDpm2sFGf3Dmc5Mza3w==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/hast-util-to-text/-/hast-util-to-text-4.0.1.tgz", + "integrity": "sha512-RHL7Vo2n06ZocCFWqmbyhZ1pCYX/mSKdywt9YD5U6Hquu5syV+dImCXFKLFt02JoK5QxkQFS0PoVdFdPXuPffQ==", "dependencies": { "@types/hast": "^3.0.0", "@types/unist": "^3.0.0", @@ -12347,9 +12357,9 @@ } }, "node_modules/openai": { - "version": "4.32.2", - "resolved": "https://registry.npmjs.org/openai/-/openai-4.32.2.tgz", - "integrity": "sha512-JXU5ttiL4liZJ2GRYvyqd/m9zA64bI8e6B5BtyKlbkcv5DAd5wiDgd0cQ1CIIdsEH90k5p3TdK6MyjnUhvOe7w==", + "version": "4.33.0", + "resolved": "https://registry.npmjs.org/openai/-/openai-4.33.0.tgz", + "integrity": "sha512-Sh4KvplkvkAREuhb8yZpohqsOo08cBBu6LNWLD8YyMxe8yCxbE+ouJYUs1X2oDPrzQGANj0rFNQYiwW9gWLBOg==", "peer": true, "dependencies": { "@types/node": "^18.11.18", @@ -12366,9 +12376,9 @@ } }, "node_modules/openai/node_modules/@types/node": { - "version": "18.19.29", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.29.tgz", - "integrity": "sha512-5pAX7ggTmWZdhUrhRWLPf+5oM7F80bcKVCBbr0zwEkTNzTJL2CWQjznpFgHYy6GrzkYi2Yjy7DHKoynFxqPV8g==", + "version": "18.19.30", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.30.tgz", + "integrity": "sha512-453z1zPuJLVDbyahaa1sSD5C2sht6ZpHp5rgJNs+H8YGqhluCXcuOUmBYsAo0Tos0cHySJ3lVUGbGgLlqIkpyg==", "peer": true, "dependencies": { "undici-types": "~5.26.4" @@ -12767,7 +12777,7 @@ "version": "1.43.0", "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.43.0.tgz", "integrity": "sha512-SiOKHbVjTSf6wHuGCbqrEyzlm6qvXcv7mENP+OZon1I07brfZLGdfWV0l/efAzVx7TF3Z45ov1gPEkku9q25YQ==", - "dev": true, + "devOptional": true, "dependencies": { "playwright-core": "1.43.0" }, @@ -12785,7 +12795,7 @@ "version": "1.43.0", "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.43.0.tgz", "integrity": "sha512-iWFjyBUH97+pUFiyTqSLd8cDMMOS0r2ZYz2qEsPjH8/bX++sbIJT35MSwKnp1r/OQBAqC5XO99xFbJ9XClhf4w==", - "dev": true, + "devOptional": true, "bin": { "playwright-core": "cli.js" }, @@ -13518,6 +13528,9 @@ "version": "4.6.13", "resolved": "https://registry.npmjs.org/redis/-/redis-4.6.13.tgz", "integrity": "sha512-MHgkS4B+sPjCXpf+HfdetBwbRz6vCtsceTmw1pHNYJAsYxrfpOP6dz+piJWGos8wqG7qb3vj/Rrc5qOlmInUuA==", + "workspaces": [ + "./packages/*" + ], "dependencies": { "@redis/bloom": "1.2.0", "@redis/client": "1.5.14", @@ -13661,6 +13674,9 @@ "version": "0.9.11", "resolved": "https://registry.npmjs.org/rehype-pretty-code/-/rehype-pretty-code-0.9.11.tgz", "integrity": "sha512-Eq90eCYXQJISktfRZ8PPtwc5SUyH6fJcxS8XOMnHPUQZBtC6RYo67gGlley9X2nR8vlniPj0/7oCDEYHKQa/oA==", + "workspaces": [ + "./word-highlighter-playground" + ], "dependencies": { "@types/hast": "^2.0.0", "hash-obj": "^4.0.0", @@ -14001,9 +14017,9 @@ "integrity": "sha512-IXgzBWvWQwE6PrDI05OvmXUIruQTcoMDzRsOd5CDvHCVLcLHMTSYvOK5Cm46kWqlV3yAbuSpBZdJ5oP5OUoStg==" }, "node_modules/rollup": { - "version": "4.14.0", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.14.0.tgz", - "integrity": "sha512-Qe7w62TyawbDzB4yt32R0+AbIo6m1/sqO7UPzFS8Z/ksL5mrfhA0v4CavfdmFav3D+ub4QeAgsGEe84DoWe/nQ==", + "version": "4.14.1", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.14.1.tgz", + "integrity": "sha512-4LnHSdd3QK2pa1J6dFbfm1HN0D7vSK/ZuZTsdyUAlA6Rr1yTouUTL13HaDOGJVgby461AhrNGBS7sCGXXtT+SA==", "dev": true, "dependencies": { "@types/estree": "1.0.5" @@ -14016,21 +14032,21 @@ "npm": ">=8.0.0" }, "optionalDependencies": { - "@rollup/rollup-android-arm-eabi": "4.14.0", - "@rollup/rollup-android-arm64": "4.14.0", - "@rollup/rollup-darwin-arm64": "4.14.0", - "@rollup/rollup-darwin-x64": "4.14.0", - "@rollup/rollup-linux-arm-gnueabihf": "4.14.0", - "@rollup/rollup-linux-arm64-gnu": "4.14.0", - "@rollup/rollup-linux-arm64-musl": "4.14.0", - "@rollup/rollup-linux-powerpc64le-gnu": "4.14.0", - "@rollup/rollup-linux-riscv64-gnu": "4.14.0", - "@rollup/rollup-linux-s390x-gnu": "4.14.0", - "@rollup/rollup-linux-x64-gnu": "4.14.0", - "@rollup/rollup-linux-x64-musl": "4.14.0", - "@rollup/rollup-win32-arm64-msvc": "4.14.0", - "@rollup/rollup-win32-ia32-msvc": "4.14.0", - "@rollup/rollup-win32-x64-msvc": "4.14.0", + "@rollup/rollup-android-arm-eabi": "4.14.1", + "@rollup/rollup-android-arm64": "4.14.1", + "@rollup/rollup-darwin-arm64": "4.14.1", + "@rollup/rollup-darwin-x64": "4.14.1", + "@rollup/rollup-linux-arm-gnueabihf": "4.14.1", + "@rollup/rollup-linux-arm64-gnu": "4.14.1", + "@rollup/rollup-linux-arm64-musl": "4.14.1", + "@rollup/rollup-linux-powerpc64le-gnu": "4.14.1", + "@rollup/rollup-linux-riscv64-gnu": "4.14.1", + "@rollup/rollup-linux-s390x-gnu": "4.14.1", + "@rollup/rollup-linux-x64-gnu": "4.14.1", + "@rollup/rollup-linux-x64-musl": "4.14.1", + "@rollup/rollup-win32-arm64-msvc": "4.14.1", + "@rollup/rollup-win32-ia32-msvc": "4.14.1", + "@rollup/rollup-win32-x64-msvc": "4.14.1", "fsevents": "~2.3.2" } }, diff --git a/packages/cache-handler/README.md b/packages/cache-handler/README.md index 9a50d942..0bf55168 100644 --- a/packages/cache-handler/README.md +++ b/packages/cache-handler/README.md @@ -27,7 +27,7 @@ Welcome to `@neshca/cache-handler`, a specialized ISR/Data cache API crafted for ### Next.js Routers support - Full support for Pages Router. -- Almost full support for App Router. The only exceptions are the [`unstable_cache`](https://github.com/caching-tools/next-shared-cache/issues/391) and the [`revalidatePath`](https://github.com/caching-tools/next-shared-cache/issues/382) functions. +- Almost full support for App Router. The only exception is the [`revalidatePath`](https://github.com/caching-tools/next-shared-cache/issues/382) functions. ### The importance of shared cache in distributed environments From 99310abd180f1253cf8d23cbf2d202c7836569bc Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 9 Apr 2024 00:38:44 +0300 Subject: [PATCH 183/458] Bump @types/node from 20.12.4 to 20.12.5 in the definitely-typed group (#455) Bumps the definitely-typed group with 1 update: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node). Updates `@types/node` from 20.12.4 to 20.12.5 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) --- updated-dependencies: - dependency-name: "@types/node" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- internal/backend/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 113 ++++---------------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 10 files changed, 29 insertions(+), 102 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index ea8f2655..4af2a6a2 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -28,7 +28,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "20.12.4", + "@types/node": "20.12.5", "@types/react": "18.2.74", "@types/react-dom": "18.2.24", "axios": "1.6.8", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index b0a8d6d4..c7e5d28f 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -22,7 +22,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "20.12.4", + "@types/node": "20.12.5", "@types/react": "18.2.74", "@types/react-dom": "18.2.24", "eslint": "8.57.0", diff --git a/internal/backend/package.json b/internal/backend/package.json index 046ffddd..12c7e2a4 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.12.4", + "@types/node": "20.12.5", "pino-pretty": "11.0.0", "rimraf": "5.0.5", "tsx": "4.7.2", diff --git a/internal/next-common/package.json b/internal/next-common/package.json index 2ca71ac0..3503778f 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.12.4", + "@types/node": "20.12.5", "rimraf": "5.0.5", "typescript": "5.4.4" } diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index eace8232..c42f025f 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -16,7 +16,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "20.12.4", + "@types/node": "20.12.5", "rimraf": "5.0.5", "typescript": "5.4.4" } diff --git a/package-lock.json b/package-lock.json index 88364eb1..9454509a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -48,7 +48,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "20.12.4", + "@types/node": "20.12.5", "@types/react": "18.2.74", "@types/react-dom": "18.2.24", "axios": "1.6.8", @@ -62,15 +62,6 @@ "typescript": "5.4.4" } }, - "apps/cache-testing/node_modules/@types/node": { - "version": "20.12.4", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.4.tgz", - "integrity": "sha512-E+Fa9z3wSQpzgYQdYmme5X3OTuejnnTx88A6p6vkkJosR3KBz+HpE3kqNm98VE6cfLFcISx7zW7MsJkH6KwbTw==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "apps/cache-testing/node_modules/next": { "version": "14.2.0-canary.61", "resolved": "https://registry.npmjs.org/next/-/next-14.2.0-canary.61.tgz", @@ -134,7 +125,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "20.12.4", + "@types/node": "20.12.5", "@types/react": "18.2.74", "@types/react-dom": "18.2.24", "eslint": "8.57.0", @@ -298,15 +289,6 @@ "tslib": "^2.4.0" } }, - "docs/cache-handler-docs/node_modules/@types/node": { - "version": "20.12.4", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.4.tgz", - "integrity": "sha512-E+Fa9z3wSQpzgYQdYmme5X3OTuejnnTx88A6p6vkkJosR3KBz+HpE3kqNm98VE6cfLFcISx7zW7MsJkH6KwbTw==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "docs/cache-handler-docs/node_modules/glob": { "version": "10.3.10", "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", @@ -464,22 +446,13 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.12.4", + "@types/node": "20.12.5", "pino-pretty": "11.0.0", "rimraf": "5.0.5", "tsx": "4.7.2", "typescript": "5.4.4" } }, - "internal/backend/node_modules/@types/node": { - "version": "20.12.4", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.4.tgz", - "integrity": "sha512-E+Fa9z3wSQpzgYQdYmme5X3OTuejnnTx88A6p6vkkJosR3KBz+HpE3kqNm98VE6cfLFcISx7zW7MsJkH6KwbTw==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "internal/eslint-config": { "name": "@repo/eslint-config", "version": "0.0.0", @@ -612,20 +585,11 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.12.4", + "@types/node": "20.12.5", "rimraf": "5.0.5", "typescript": "5.4.4" } }, - "internal/next-common/node_modules/@types/node": { - "version": "20.12.4", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.4.tgz", - "integrity": "sha512-E+Fa9z3wSQpzgYQdYmme5X3OTuejnnTx88A6p6vkkJosR3KBz+HpE3kqNm98VE6cfLFcISx7zW7MsJkH6KwbTw==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "internal/next-common/node_modules/next": { "version": "14.2.0-canary.61", "resolved": "https://registry.npmjs.org/next/-/next-14.2.0-canary.61.tgz", @@ -685,20 +649,11 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "20.12.4", + "@types/node": "20.12.5", "rimraf": "5.0.5", "typescript": "5.4.4" } }, - "internal/next-lru-cache/node_modules/@types/node": { - "version": "20.12.4", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.4.tgz", - "integrity": "sha512-E+Fa9z3wSQpzgYQdYmme5X3OTuejnnTx88A6p6vkkJosR3KBz+HpE3kqNm98VE6cfLFcISx7zW7MsJkH6KwbTw==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "internal/prettier-config": { "name": "@repo/prettier-config", "version": "0.0.0", @@ -2336,6 +2291,11 @@ "fs-extra": "^8.1.0" } }, + "node_modules/@manypkg/find-root/node_modules/@types/node": { + "version": "12.20.55", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", + "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" + }, "node_modules/@manypkg/find-root/node_modules/fs-extra": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", @@ -3730,9 +3690,12 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "12.20.55", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", - "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" + "version": "20.12.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.5.tgz", + "integrity": "sha512-BD+BjQ9LS/D8ST9p5uqBxghlN+S42iuNxjsUGjeZobe/ciXzk2qb1B6IXc6AnRLS+yFJRpN2IPEHMzwspfDJNw==", + "dependencies": { + "undici-types": "~5.26.4" + } }, "node_modules/@types/node-fetch": { "version": "2.6.11", @@ -16922,7 +16885,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.12.4", + "@types/node": "20.12.5", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.2", @@ -16933,15 +16896,6 @@ "redis": ">=4.6" } }, - "packages/cache-handler/node_modules/@types/node": { - "version": "20.12.4", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.4.tgz", - "integrity": "sha512-E+Fa9z3wSQpzgYQdYmme5X3OTuejnnTx88A6p6vkkJosR3KBz+HpE3kqNm98VE6cfLFcISx7zW7MsJkH6KwbTw==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "packages/diffscribe": { "version": "0.2.3", "license": "MIT", @@ -16950,7 +16904,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.12.4", + "@types/node": "20.12.5", "rimraf": "5.0.5", "tsup": "8.0.2", "typescript": "5.4.4" @@ -16960,37 +16914,19 @@ "openai": "^4.12.3" } }, - "packages/diffscribe/node_modules/@types/node": { - "version": "20.12.4", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.4.tgz", - "integrity": "sha512-E+Fa9z3wSQpzgYQdYmme5X3OTuejnnTx88A6p6vkkJosR3KBz+HpE3kqNm98VE6cfLFcISx7zW7MsJkH6KwbTw==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "packages/json-replacer-reviver": { "name": "@neshca/json-replacer-reviver", "version": "1.1.2", "license": "MIT", "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.12.4", + "@types/node": "20.12.5", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.2", "typescript": "5.4.4" } }, - "packages/json-replacer-reviver/node_modules/@types/node": { - "version": "20.12.4", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.4.tgz", - "integrity": "sha512-E+Fa9z3wSQpzgYQdYmme5X3OTuejnnTx88A6p6vkkJosR3KBz+HpE3kqNm98VE6cfLFcISx7zW7MsJkH6KwbTw==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "packages/server": { "name": "@neshca/server", "version": "1.0.0", @@ -17006,21 +16942,12 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.12.4", + "@types/node": "20.12.5", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.2", "typescript": "5.4.4" } - }, - "packages/server/node_modules/@types/node": { - "version": "20.12.4", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.4.tgz", - "integrity": "sha512-E+Fa9z3wSQpzgYQdYmme5X3OTuejnnTx88A6p6vkkJosR3KBz+HpE3kqNm98VE6cfLFcISx7zW7MsJkH6KwbTw==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } } } } diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index deb0925e..217ea9d4 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -72,7 +72,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.12.4", + "@types/node": "20.12.5", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.2", diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index f8be0888..fff178e9 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -25,7 +25,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.12.4", + "@types/node": "20.12.5", "rimraf": "5.0.5", "tsup": "8.0.2", "typescript": "5.4.4" diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 5661bf1a..7d2ff9a6 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -28,7 +28,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.12.4", + "@types/node": "20.12.5", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.2", diff --git a/packages/server/package.json b/packages/server/package.json index 0cc4df80..c8176e83 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -32,7 +32,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.12.4", + "@types/node": "20.12.5", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.2", From 25fee8a0debab7ba58512f12f8839a3f1d52a319 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 9 Apr 2024 11:02:01 +0300 Subject: [PATCH 184/458] Bump pino from 8.19.0 to 8.20.0 in the pino group (#456) Bumps the pino group with 1 update: [pino](https://github.com/pinojs/pino). Updates `pino` from 8.19.0 to 8.20.0 - [Release notes](https://github.com/pinojs/pino/releases) - [Commits](https://github.com/pinojs/pino/compare/v8.19.0...v8.20.0) --- updated-dependencies: - dependency-name: pino dependency-type: direct:production update-type: version-update:semver-minor dependency-group: pino ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- internal/backend/package.json | 2 +- package-lock.json | 12 ++++++------ packages/server/package.json | 2 +- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/internal/backend/package.json b/internal/backend/package.json index 12c7e2a4..ec673ffc 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -11,7 +11,7 @@ }, "dependencies": { "fastify": "4.26.2", - "pino": "8.19.0" + "pino": "8.20.0" }, "devDependencies": { "@repo/typescript-config": "*", diff --git a/package-lock.json b/package-lock.json index 9454509a..660a8a5b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -442,7 +442,7 @@ "license": "MIT", "dependencies": { "fastify": "4.26.2", - "pino": "8.19.0" + "pino": "8.20.0" }, "devDependencies": { "@repo/typescript-config": "*", @@ -12657,14 +12657,14 @@ } }, "node_modules/pino": { - "version": "8.19.0", - "resolved": "https://registry.npmjs.org/pino/-/pino-8.19.0.tgz", - "integrity": "sha512-oswmokxkav9bADfJ2ifrvfHUwad6MLp73Uat0IkQWY3iAw5xTRoznXbXksZs8oaOUMpmhVWD+PZogNzllWpJaA==", + "version": "8.20.0", + "resolved": "https://registry.npmjs.org/pino/-/pino-8.20.0.tgz", + "integrity": "sha512-uhIfMj5TVp+WynVASaVEJFTncTUe4dHBq6CWplu/vBgvGHhvBvQfxz+vcOrnnBQdORH3izaGEurLfNlq3YxdFQ==", "dependencies": { "atomic-sleep": "^1.0.0", "fast-redact": "^3.1.1", "on-exit-leak-free": "^2.1.0", - "pino-abstract-transport": "v1.1.0", + "pino-abstract-transport": "^1.1.0", "pino-std-serializers": "^6.0.0", "process-warning": "^3.0.0", "quick-format-unescaped": "^4.0.3", @@ -16933,7 +16933,7 @@ "license": "MIT", "dependencies": { "fastify": "4.26.2", - "pino": "8.19.0" + "pino": "8.20.0" }, "bin": { "next-cache-server": "dist/server.js" diff --git a/packages/server/package.json b/packages/server/package.json index c8176e83..81b63348 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -26,7 +26,7 @@ }, "dependencies": { "fastify": "4.26.2", - "pino": "8.19.0" + "pino": "8.20.0" }, "devDependencies": { "@neshca/next-common": "*", From 1315dc1cfe8c8fb7ce3a0c3553780a0133e6b235 Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Tue, 9 Apr 2024 11:28:44 +0300 Subject: [PATCH 185/458] Fix typo in Next.js Routers support documentation (#458) --- README.md | 2 +- docs/cache-handler-docs/src/pages/index.mdx | 2 +- package-lock.json | 274 +++++++++++++++++--- packages/cache-handler/README.md | 2 +- 4 files changed, 247 insertions(+), 33 deletions(-) diff --git a/README.md b/README.md index ebd3b884..35c9a4f2 100644 --- a/README.md +++ b/README.md @@ -9,7 +9,7 @@ Welcome to [**`@neshca/cache-handler`**](./packages/cache-handler/README.md), a ### Next.js Routers support - Full support for Pages Router. -- Almost full support for App Router. The only exceptions are the [`unstable_cache`](https://github.com/caching-tools/next-shared-cache/issues/391) and the [`revalidatePath`](https://github.com/caching-tools/next-shared-cache/issues/382) functions. +- Almost full support for App Router. The only exception is the [`revalidatePath`](https://github.com/caching-tools/next-shared-cache/issues/382) function. ### The importance of shared cache in distributed environments diff --git a/docs/cache-handler-docs/src/pages/index.mdx b/docs/cache-handler-docs/src/pages/index.mdx index 54613b31..1a82976a 100644 --- a/docs/cache-handler-docs/src/pages/index.mdx +++ b/docs/cache-handler-docs/src/pages/index.mdx @@ -3,7 +3,7 @@ Welcome to `@neshca/cache-handler`, a specialized ISR/Data cache API crafted for ### Next.js Routers support - Full support for Pages Router. -- Almost full support for App Router. The only exception is the [`revalidatePath`](https://github.com/caching-tools/next-shared-cache/issues/382) functions. +- Almost full support for App Router. The only exception is the [`revalidatePath`](https://github.com/caching-tools/next-shared-cache/issues/382) function. ### The importance of shared cache in distributed environments diff --git a/package-lock.json b/package-lock.json index 660a8a5b..c0f8a45d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -62,6 +62,15 @@ "typescript": "5.4.4" } }, + "apps/cache-testing/node_modules/@types/node": { + "version": "20.12.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.5.tgz", + "integrity": "sha512-BD+BjQ9LS/D8ST9p5uqBxghlN+S42iuNxjsUGjeZobe/ciXzk2qb1B6IXc6AnRLS+yFJRpN2IPEHMzwspfDJNw==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "apps/cache-testing/node_modules/next": { "version": "14.2.0-canary.61", "resolved": "https://registry.npmjs.org/next/-/next-14.2.0-canary.61.tgz", @@ -289,6 +298,15 @@ "tslib": "^2.4.0" } }, + "docs/cache-handler-docs/node_modules/@types/node": { + "version": "20.12.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.5.tgz", + "integrity": "sha512-BD+BjQ9LS/D8ST9p5uqBxghlN+S42iuNxjsUGjeZobe/ciXzk2qb1B6IXc6AnRLS+yFJRpN2IPEHMzwspfDJNw==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "docs/cache-handler-docs/node_modules/glob": { "version": "10.3.10", "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", @@ -453,6 +471,15 @@ "typescript": "5.4.4" } }, + "internal/backend/node_modules/@types/node": { + "version": "20.12.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.5.tgz", + "integrity": "sha512-BD+BjQ9LS/D8ST9p5uqBxghlN+S42iuNxjsUGjeZobe/ciXzk2qb1B6IXc6AnRLS+yFJRpN2IPEHMzwspfDJNw==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "internal/eslint-config": { "name": "@repo/eslint-config", "version": "0.0.0", @@ -590,6 +617,15 @@ "typescript": "5.4.4" } }, + "internal/next-common/node_modules/@types/node": { + "version": "20.12.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.5.tgz", + "integrity": "sha512-BD+BjQ9LS/D8ST9p5uqBxghlN+S42iuNxjsUGjeZobe/ciXzk2qb1B6IXc6AnRLS+yFJRpN2IPEHMzwspfDJNw==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "internal/next-common/node_modules/next": { "version": "14.2.0-canary.61", "resolved": "https://registry.npmjs.org/next/-/next-14.2.0-canary.61.tgz", @@ -654,6 +690,15 @@ "typescript": "5.4.4" } }, + "internal/next-lru-cache/node_modules/@types/node": { + "version": "20.12.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.5.tgz", + "integrity": "sha512-BD+BjQ9LS/D8ST9p5uqBxghlN+S42iuNxjsUGjeZobe/ciXzk2qb1B6IXc6AnRLS+yFJRpN2IPEHMzwspfDJNw==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "internal/prettier-config": { "name": "@repo/prettier-config", "version": "0.0.0", @@ -2291,11 +2336,6 @@ "fs-extra": "^8.1.0" } }, - "node_modules/@manypkg/find-root/node_modules/@types/node": { - "version": "12.20.55", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", - "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" - }, "node_modules/@manypkg/find-root/node_modules/fs-extra": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", @@ -3690,12 +3730,9 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "20.12.5", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.5.tgz", - "integrity": "sha512-BD+BjQ9LS/D8ST9p5uqBxghlN+S42iuNxjsUGjeZobe/ciXzk2qb1B6IXc6AnRLS+yFJRpN2IPEHMzwspfDJNw==", - "dependencies": { - "undici-types": "~5.26.4" - } + "version": "12.20.55", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", + "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" }, "node_modules/@types/node-fetch": { "version": "2.6.11", @@ -3780,6 +3817,31 @@ } } }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/utils": { + "version": "7.5.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-7.5.0.tgz", + "integrity": "sha512-3vZl9u0R+/FLQcpy2EHyRGNqAS/ofJ3Ji8aebilfJe+fobK8+LbIFmrHciLVDxjDoONmufDcnVSF38KwMEOjzw==", + "dev": true, + "dependencies": { + "@eslint-community/eslint-utils": "^4.4.0", + "@types/json-schema": "^7.0.12", + "@types/semver": "^7.5.0", + "@typescript-eslint/scope-manager": "7.5.0", + "@typescript-eslint/types": "7.5.0", + "@typescript-eslint/typescript-estree": "7.5.0", + "semver": "^7.5.4" + }, + "engines": { + "node": "^18.18.0 || >=20.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.56.0" + } + }, "node_modules/@typescript-eslint/parser": { "version": "7.5.0", "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-7.5.0.tgz", @@ -3852,6 +3914,31 @@ } } }, + "node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/utils": { + "version": "7.5.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-7.5.0.tgz", + "integrity": "sha512-3vZl9u0R+/FLQcpy2EHyRGNqAS/ofJ3Ji8aebilfJe+fobK8+LbIFmrHciLVDxjDoONmufDcnVSF38KwMEOjzw==", + "dev": true, + "dependencies": { + "@eslint-community/eslint-utils": "^4.4.0", + "@types/json-schema": "^7.0.12", + "@types/semver": "^7.5.0", + "@typescript-eslint/scope-manager": "7.5.0", + "@typescript-eslint/types": "7.5.0", + "@typescript-eslint/typescript-estree": "7.5.0", + "semver": "^7.5.4" + }, + "engines": { + "node": "^18.18.0 || >=20.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.56.0" + } + }, "node_modules/@typescript-eslint/types": { "version": "7.5.0", "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.5.0.tgz", @@ -3909,18 +3996,18 @@ } }, "node_modules/@typescript-eslint/utils": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-7.5.0.tgz", - "integrity": "sha512-3vZl9u0R+/FLQcpy2EHyRGNqAS/ofJ3Ji8aebilfJe+fobK8+LbIFmrHciLVDxjDoONmufDcnVSF38KwMEOjzw==", + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-7.6.0.tgz", + "integrity": "sha512-x54gaSsRRI+Nwz59TXpCsr6harB98qjXYzsRxGqvA5Ue3kQH+FxS7FYU81g/omn22ML2pZJkisy6Q+ElK8pBCA==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.4.0", - "@types/json-schema": "^7.0.12", - "@types/semver": "^7.5.0", - "@typescript-eslint/scope-manager": "7.5.0", - "@typescript-eslint/types": "7.5.0", - "@typescript-eslint/typescript-estree": "7.5.0", - "semver": "^7.5.4" + "@types/json-schema": "^7.0.15", + "@types/semver": "^7.5.8", + "@typescript-eslint/scope-manager": "7.6.0", + "@typescript-eslint/types": "7.6.0", + "@typescript-eslint/typescript-estree": "7.6.0", + "semver": "^7.6.0" }, "engines": { "node": "^18.18.0 || >=20.0.0" @@ -3933,6 +4020,81 @@ "eslint": "^8.56.0" } }, + "node_modules/@typescript-eslint/utils/node_modules/@typescript-eslint/scope-manager": { + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-7.6.0.tgz", + "integrity": "sha512-ngttyfExA5PsHSx0rdFgnADMYQi+Zkeiv4/ZxGYUWd0nLs63Ha0ksmp8VMxAIC0wtCFxMos7Lt3PszJssG/E6w==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "7.6.0", + "@typescript-eslint/visitor-keys": "7.6.0" + }, + "engines": { + "node": "^18.18.0 || >=20.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/utils/node_modules/@typescript-eslint/types": { + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.6.0.tgz", + "integrity": "sha512-h02rYQn8J+MureCvHVVzhl69/GAfQGPQZmOMjG1KfCl7o3HtMSlPaPUAPu6lLctXI5ySRGIYk94clD/AUMCUgQ==", + "dev": true, + "engines": { + "node": "^18.18.0 || >=20.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/utils/node_modules/@typescript-eslint/typescript-estree": { + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-7.6.0.tgz", + "integrity": "sha512-+7Y/GP9VuYibecrCQWSKgl3GvUM5cILRttpWtnAu8GNL9j11e4tbuGZmZjJ8ejnKYyBRb2ddGQ3rEFCq3QjMJw==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "7.6.0", + "@typescript-eslint/visitor-keys": "7.6.0", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "minimatch": "^9.0.4", + "semver": "^7.6.0", + "ts-api-utils": "^1.3.0" + }, + "engines": { + "node": "^18.18.0 || >=20.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/utils/node_modules/@typescript-eslint/visitor-keys": { + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-7.6.0.tgz", + "integrity": "sha512-4eLB7t+LlNUmXzfOu1VAIAdkjbu5xNSerURS9X/S5TUKWFRpXRQZbmtPqgKmYx8bj3J0irtQXSiWAOY82v+cgw==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "7.6.0", + "eslint-visitor-keys": "^3.4.3" + }, + "engines": { + "node": "^18.18.0 || >=20.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, "node_modules/@typescript-eslint/visitor-keys": { "version": "7.5.0", "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-7.5.0.tgz", @@ -6074,9 +6236,9 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.729", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.729.tgz", - "integrity": "sha512-bx7+5Saea/qu14kmPTDHQxkp2UnziG3iajUQu3BxFvCOnpAJdDbMV4rSl+EqFDkkpNNVUFlR1kDfpL59xfy1HA==", + "version": "1.4.730", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.730.tgz", + "integrity": "sha512-oJRPo82XEqtQAobHpJIR3zW5YO3sSRRkPz2an4yxi1UvqhsGm54vR/wzTFV74a3soDOJ8CKW7ajOOX5ESzddwg==", "dev": true }, "node_modules/elkjs": { @@ -7804,13 +7966,13 @@ "dev": true }, "node_modules/fast-json-stringify": { - "version": "5.13.0", - "resolved": "https://registry.npmjs.org/fast-json-stringify/-/fast-json-stringify-5.13.0.tgz", - "integrity": "sha512-XjTDWKHP3GoMQUOfnjYUbqeHeEt+PvYgvBdG2fRSmYaORILbSr8xTJvZX+w1YSAP5pw2NwKrGRmQleYueZEoxw==", + "version": "5.14.0", + "resolved": "https://registry.npmjs.org/fast-json-stringify/-/fast-json-stringify-5.14.0.tgz", + "integrity": "sha512-6m9a2JN9kDFMADmP9MHLbLPrFu5oSSfrwFLzpcqt/aFgcEi+SVhTJGsx/Wivlls8fQ3OnP8UDNfIY1d1qCC50w==", "dependencies": { "@fastify/merge-json-schemas": "^0.1.0", "ajv": "^8.10.0", - "ajv-formats": "^2.1.1", + "ajv-formats": "^3.0.1", "fast-deep-equal": "^3.1.3", "fast-uri": "^2.1.0", "json-schema-ref-resolver": "^1.0.1", @@ -7832,6 +7994,22 @@ "url": "https://github.com/sponsors/epoberezkin" } }, + "node_modules/fast-json-stringify/node_modules/ajv-formats": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-3.0.1.tgz", + "integrity": "sha512-8iUql50EUR+uUcdRQ3HDqa6EVyo3docL8g5WJ3FNcWmu62IbkGUue/pEyLBW8VGKKucTPgqeks4fIU1DA4yowQ==", + "dependencies": { + "ajv": "^8.0.0" + }, + "peerDependencies": { + "ajv": "^8.0.0" + }, + "peerDependenciesMeta": { + "ajv": { + "optional": true + } + } + }, "node_modules/fast-json-stringify/node_modules/json-schema-traverse": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", @@ -12339,9 +12517,9 @@ } }, "node_modules/openai/node_modules/@types/node": { - "version": "18.19.30", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.30.tgz", - "integrity": "sha512-453z1zPuJLVDbyahaa1sSD5C2sht6ZpHp5rgJNs+H8YGqhluCXcuOUmBYsAo0Tos0cHySJ3lVUGbGgLlqIkpyg==", + "version": "18.19.31", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.31.tgz", + "integrity": "sha512-ArgCD39YpyyrtFKIqMDvjz79jto5fcI/SVUs2HwB+f0dAzq68yqOdyaSivLiLugSziTpNXLQrVb7RZFmdZzbhA==", "peer": true, "dependencies": { "undici-types": "~5.26.4" @@ -16896,6 +17074,15 @@ "redis": ">=4.6" } }, + "packages/cache-handler/node_modules/@types/node": { + "version": "20.12.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.5.tgz", + "integrity": "sha512-BD+BjQ9LS/D8ST9p5uqBxghlN+S42iuNxjsUGjeZobe/ciXzk2qb1B6IXc6AnRLS+yFJRpN2IPEHMzwspfDJNw==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "packages/diffscribe": { "version": "0.2.3", "license": "MIT", @@ -16914,6 +17101,15 @@ "openai": "^4.12.3" } }, + "packages/diffscribe/node_modules/@types/node": { + "version": "20.12.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.5.tgz", + "integrity": "sha512-BD+BjQ9LS/D8ST9p5uqBxghlN+S42iuNxjsUGjeZobe/ciXzk2qb1B6IXc6AnRLS+yFJRpN2IPEHMzwspfDJNw==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "packages/json-replacer-reviver": { "name": "@neshca/json-replacer-reviver", "version": "1.1.2", @@ -16927,6 +17123,15 @@ "typescript": "5.4.4" } }, + "packages/json-replacer-reviver/node_modules/@types/node": { + "version": "20.12.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.5.tgz", + "integrity": "sha512-BD+BjQ9LS/D8ST9p5uqBxghlN+S42iuNxjsUGjeZobe/ciXzk2qb1B6IXc6AnRLS+yFJRpN2IPEHMzwspfDJNw==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "packages/server": { "name": "@neshca/server", "version": "1.0.0", @@ -16948,6 +17153,15 @@ "tsx": "4.7.2", "typescript": "5.4.4" } + }, + "packages/server/node_modules/@types/node": { + "version": "20.12.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.5.tgz", + "integrity": "sha512-BD+BjQ9LS/D8ST9p5uqBxghlN+S42iuNxjsUGjeZobe/ciXzk2qb1B6IXc6AnRLS+yFJRpN2IPEHMzwspfDJNw==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } } } } diff --git a/packages/cache-handler/README.md b/packages/cache-handler/README.md index 0bf55168..55bc9e26 100644 --- a/packages/cache-handler/README.md +++ b/packages/cache-handler/README.md @@ -27,7 +27,7 @@ Welcome to `@neshca/cache-handler`, a specialized ISR/Data cache API crafted for ### Next.js Routers support - Full support for Pages Router. -- Almost full support for App Router. The only exception is the [`revalidatePath`](https://github.com/caching-tools/next-shared-cache/issues/382) functions. +- Almost full support for App Router. The only exception is the [`revalidatePath`](https://github.com/caching-tools/next-shared-cache/issues/382) function. ### The importance of shared cache in distributed environments From 588153b0d92c59832755080bc17cacfbcad0f27c Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Thu, 11 Apr 2024 11:47:07 +0300 Subject: [PATCH 186/458] Implement `revalidatePath` functionality for the App Router (#460) --- .changeset/long-sheep-play.md | 29 +++++ .changeset/tricky-cobras-pull.md | 5 + README.md | 3 +- apps/cache-testing/tests/app.spec.ts | 28 ++++- .../src/pages/api-reference/handler.mdx | 1 + docs/cache-handler-docs/src/pages/index.mdx | 3 +- .../pages/usage/creating-a-custom-handler.mdx | 101 +++++++++++++++--- .../pages/usage/on-demand-revalidation.mdx | 14 ++- docs/cache-handler-docs/theme.config.jsx | 4 +- internal/next-common/src/next-common.ts | 2 + .../src/create-configured-cache.ts | 6 ++ package-lock.json | 42 ++++---- packages/cache-handler/README.md | 5 +- packages/cache-handler/src/cache-handler.ts | 85 ++++++++++++--- packages/cache-handler/src/common-types.ts | 10 ++ packages/cache-handler/src/constants.ts | 2 + .../cache-handler/src/handlers/local-lru.ts | 29 ++++- .../cache-handler/src/handlers/redis-stack.ts | 47 +++++++- .../src/handlers/redis-strings.ts | 73 ++++++++++--- packages/cache-handler/src/handlers/server.ts | 7 +- .../src/helpers/get-tags-from-page-data.ts | 16 +-- packages/cache-handler/src/helpers/helpers.ts | 2 + .../src/helpers/is-implicit-tag.ts | 12 +++ packages/server/src/server.ts | 27 ++++- packages/server/tsconfig.json | 7 +- 25 files changed, 458 insertions(+), 102 deletions(-) create mode 100644 .changeset/long-sheep-play.md create mode 100644 .changeset/tricky-cobras-pull.md create mode 100644 packages/cache-handler/src/helpers/is-implicit-tag.ts diff --git a/.changeset/long-sheep-play.md b/.changeset/long-sheep-play.md new file mode 100644 index 00000000..2ef4d8f3 --- /dev/null +++ b/.changeset/long-sheep-play.md @@ -0,0 +1,29 @@ +--- +'@neshca/cache-handler': minor +--- + +Add `revalidatePath` functionality. + +#### New Features + +##### `@neshca/cache-handler` + +- add `implicitTags` parameter to the `get` method for Handlers +- remove implicit tags filtration for the `PAGE` kind cache values + +##### `@neshca/cache-handle/local-lru` + +- implement `revalidatePath` functionality + +##### `@neshca/cache-handle/redis-stack` + +- implement `revalidatePath` functionality + +##### `@neshca/cache-handle/redis-strings` + +- implement `revalidatePath` functionality +- refactor `revalidateTag` method to use `HSCAN` instead of `HGETALL` + +##### `@neshca/cache-handle/helpers` + +- add `isImplicitTag` and `getTimeoutRedisCommandOptions` functions diff --git a/.changeset/tricky-cobras-pull.md b/.changeset/tricky-cobras-pull.md new file mode 100644 index 00000000..9511b518 --- /dev/null +++ b/.changeset/tricky-cobras-pull.md @@ -0,0 +1,5 @@ +--- +'@neshca/server': minor +--- + +Add support for the new `implicitTags` parameter. diff --git a/README.md b/README.md index 35c9a4f2..157c62dd 100644 --- a/README.md +++ b/README.md @@ -8,8 +8,7 @@ Welcome to [**`@neshca/cache-handler`**](./packages/cache-handler/README.md), a ### Next.js Routers support -- Full support for Pages Router. -- Almost full support for App Router. The only exception is the [`revalidatePath`](https://github.com/caching-tools/next-shared-cache/issues/382) function. +- Full support for the Pages and the App Router. ### The importance of shared cache in distributed environments diff --git a/apps/cache-testing/tests/app.spec.ts b/apps/cache-testing/tests/app.spec.ts index 9bdc0e73..64e9356c 100644 --- a/apps/cache-testing/tests/app.spec.ts +++ b/apps/cache-testing/tests/app.spec.ts @@ -36,13 +36,37 @@ test.describe('On-demand revalidation', () => { }); } + for (const path of paths) { + test(`If revalidate by path is clicked, then page should be fresh after reload ${path}`, async ({ + page, + baseURL, + }) => { + const url = new URL(path, `${baseURL}:3000`); + + await page.goto(url.href); + + await refreshPageCache(page, 'path'); + + const valueFromPage = Number.parseInt((await page.getByTestId('data').innerText()).valueOf(), 10); + + await refreshPageCache(page, 'path'); + + await expect(page.getByTestId('cache-state')).toContainText('fresh'); + + const valueFromPageAfterReload = Number.parseInt( + (await page.getByTestId('data').innerText()).valueOf(), + 10, + ); + + expect(valueFromPageAfterReload - valueFromPage === 1).toBe(true); + }); + } + for (const path of paths) { test(`If revalidate by path is clicked on page A, then page B should be fresh on load ${path}`, async ({ context, baseURL, }) => { - test.fail(true, 'This test is failing because of revalidate by path is not supported yet.'); - const appAUrl = new URL(path, `${baseURL}:3000`); const appA = await context.newPage(); diff --git a/docs/cache-handler-docs/src/pages/api-reference/handler.mdx b/docs/cache-handler-docs/src/pages/api-reference/handler.mdx index 450190bd..df3a2f14 100644 --- a/docs/cache-handler-docs/src/pages/api-reference/handler.mdx +++ b/docs/cache-handler-docs/src/pages/api-reference/handler.mdx @@ -21,6 +21,7 @@ A descriptive name for the cache Handler. This is used to identify the cache Han #### Parameters - `key` - The unique string identifier for the cache entry. +- `implicitTags` - An array of tags that are implicitly associated with the cache entry. #### Return value diff --git a/docs/cache-handler-docs/src/pages/index.mdx b/docs/cache-handler-docs/src/pages/index.mdx index 1a82976a..c60e1a1a 100644 --- a/docs/cache-handler-docs/src/pages/index.mdx +++ b/docs/cache-handler-docs/src/pages/index.mdx @@ -2,8 +2,7 @@ Welcome to `@neshca/cache-handler`, a specialized ISR/Data cache API crafted for ### Next.js Routers support -- Full support for Pages Router. -- Almost full support for App Router. The only exception is the [`revalidatePath`](https://github.com/caching-tools/next-shared-cache/issues/382) function. +- Full support for the Pages and the App Router. ### The importance of shared cache in distributed environments diff --git a/docs/cache-handler-docs/src/pages/usage/creating-a-custom-handler.mdx b/docs/cache-handler-docs/src/pages/usage/creating-a-custom-handler.mdx index 02d1a012..eb030ae3 100644 --- a/docs/cache-handler-docs/src/pages/usage/creating-a-custom-handler.mdx +++ b/docs/cache-handler-docs/src/pages/usage/creating-a-custom-handler.mdx @@ -18,6 +18,7 @@ Create a file called `cache-handler.mjs` next to your `next.config.js` with the ```js filename="cache-handler.mjs" copy import { CacheHandler } from '@neshca/cache-handler'; +import { isImplicitTag } from '@neshca/cache-handler/helpers'; import createLruHandler from '@neshca/cache-handler/local-lru'; import { createClient, commandOptions } from 'redis'; @@ -30,6 +31,8 @@ CacheHandler.onCreation(async () => { // Ignore Redis errors: https://github.com/redis/node-redis?tab=readme-ov-file#events. client.on('error', () => {}); + await client.connect(); + // Define a timeout for Redis operations. const timeoutMs = 1000; @@ -51,6 +54,8 @@ CacheHandler.onCreation(async () => { } } + const revalidatedTagsKey = `${keyPrefix}__revalidated_tags__`; + // Create a custom Redis Handler const customRedisHandler = { // Give the handler a name. @@ -58,7 +63,7 @@ CacheHandler.onCreation(async () => { name: 'redis-strings-custom', // We do not use try/catch blocks in the Handler methods. // CacheHandler will handle errors and use the next available Handler. - async get(key) { + async get(key, implicitTags) { // Ensure that the client is ready before using it. // If the client is not ready, the CacheHandler will use the next available Handler. assertClientIsReady(); @@ -77,7 +82,43 @@ CacheHandler.onCreation(async () => { } // Redis stores strings, so we need to parse the JSON. - return JSON.parse(result); + const cacheValue = JSON.parse(result); + + // If the cache value has no tags, return it early. + if (!cacheValue) { + return null; + } + + // Get the set of explicit and implicit tags. + // implicitTags are available only on the `get` method. + const combinedTags = new Set([...cacheValue.tags, ...implicitTags]); + + // If there are no tags, return the cache value early. + if (combinedTags.size === 0) { + return cacheValue; + } + + // Get the revalidation times for the tags. + const revalidationTimes = await client.hmGet( + commandOptions({ signal: AbortSignal.timeout(timeoutMs) }), + revalidatedTagsKey, + Array.from(combinedTags), + ); + + // Iterate over all revalidation times. + for (const timeString of revalidationTimes) { + // If the revalidation time is greater than the last modified time of the cache value, + if (timeString && Number.parseInt(timeString, 10) > cacheValue.lastModified) { + // Delete the key from Redis. + await client.unlink(commandOptions({ signal: AbortSignal.timeout(timeoutMs) }), keyPrefix + key); + + // Return null to indicate cache miss. + return null; + } + } + + // Return the cache value. + return cacheValue; }, async set(key, cacheHandlerValue) { // Ensure that the client is ready before using it. @@ -99,9 +140,7 @@ CacheHandler.onCreation(async () => { // If the cache handler value has tags, set the tags. // We store them separately to save time to retrieve them in the `revalidateTag` method. const setTagsOperation = cacheHandlerValue.tags.length - ? client.hSet(options, keyPrefix + sharedTagsKey, { - [key]: JSON.stringify(cacheHandlerValue.tags), - }) + ? client.hSet(options, keyPrefix + sharedTagsKey, key, JSON.stringify(cacheHandlerValue.tags)) : undefined; // Wait for all operations to complete. @@ -111,14 +150,46 @@ CacheHandler.onCreation(async () => { // Ensure that the client is ready before using it. assertClientIsReady(); - // Create a new AbortSignal with a timeout for the Redis operation. - const getOptions = commandOptions({ signal: AbortSignal.timeout(timeoutMs) }); + // Check if the tag is implicit. + // Implicit tags are not stored in the cached values. + if (isImplicitTag(tag)) { + // Mark the tag as revalidated at the current time. + await client.hSet( + commandOptions({ signal: AbortSignal.timeout(timeoutMs) }), + revalidatedTagsKey, + tag, + Date.now(), + ); + } + + // Create a map to store the tags for each key. + const tagsMap = new Map(); - // Get all keys and their tags from Redis from the hash map we've created in the `set` method. - const remoteTags = await client.hGetAll(getOptions, keyPrefix + sharedTagsKey); + // Cursor for the hScan operation. + let cursor = 0; - // Create a map from the tags. - const tagsMap = new Map(Object.entries(remoteTags)); + // Query size for the hScan operation. + const querySize = 25; + + // Iterate over all keys in the shared tags. + while (true) { + // Get a portion of the keys. + const remoteTagsPortion = await client.hScan(keyPrefix + sharedTagsKey, cursor, { COUNT: querySize }); + + // Iterate over all keys in the portion. + for (const { field, value } of remoteTagsPortion.tuples) { + // Parse the tags from the value. + tagsMap.set(field, JSON.parse(value)); + } + + // If the cursor is 0, we have reached the end. + if (remoteTagsPortion.cursor === 0) { + break; + } + + // Update the cursor for the next iteration. + cursor = remoteTagsPortion.cursor; + } // Create an array of keys to delete. const keysToDelete = []; @@ -126,12 +197,8 @@ CacheHandler.onCreation(async () => { // Create an array of tags to delete form the hash map. const tagsToDelete = []; - // Iterate over all keys and their tags. - for (const [key, tagsString] of tagsMap) { - // In the set method, we store tags as a stringified array. - // So, we need to parse it back to an array. - const tags = JSON.parse(tagsString); - + // Iterate over all keys and tags. + for (const [key, tags] of tagsMap) { // If the tags include the specified tag, add the key to the delete list. if (tags.includes(tag)) { // Key must be prefixed because we use the key prefix in the set method. diff --git a/docs/cache-handler-docs/src/pages/usage/on-demand-revalidation.mdx b/docs/cache-handler-docs/src/pages/usage/on-demand-revalidation.mdx index dd13b235..d87f8d11 100644 --- a/docs/cache-handler-docs/src/pages/usage/on-demand-revalidation.mdx +++ b/docs/cache-handler-docs/src/pages/usage/on-demand-revalidation.mdx @@ -6,12 +6,22 @@ Next.js provides a way to revalidate a page or a result of a `fetch` call on dem ### Pages Router -The Pages Router supports only the `revalidatePath` option. +The Pages Router supports only the `response.revalidate(path)`. See [Using On-Demand Revalidation](https://nextjs.org/docs/pages/building-your-application/data-fetching/incremental-static-regeneration#using-on-demand-revalidation) in the Next.js documentation. +#### `response.revalidate(path)` caveat + +Calling `response.revalidate(path)` will synchronously call `getStaticProps` and render the page with a given `path`. Then it will revalidate the cache for this page. If you want to revalidate multiple paths at once, you need to call `response.revalidate(path)` multiple times. + ### App Router -The App Router supports both `revalidatePath` and `revalidateTag` functions. However due to current limitations, `revalidatePath` is disabled for the App Router. +The App Router supports both `revalidatePath` and `revalidateTag` functions. These functions will remove the cache values from the store. See [On-demand Revalidation](https://nextjs.org/docs/app/building-your-application/data-fetching/fetching-caching-and-revalidating#on-demand-revalidation) in the Next.js documentation. + +#### `revalidatePath` caveat + +The `revalidatePath` function works differently from the `response.revalidate(path)` and `revalidateTag` functions. It does not revalidate the cached `fetch` result immediately. Instead, it marks the cache as revalidated and the next request will revalidate the cache. + +If you are creating a custom cache Handler, you need to manually mark the cache as revalidated in Handler's `revalidateTag` method. Later in the Handler's `get` method, you must check if the cache is revalidated and return `null` if necessary. See [Custom Redis strings example](/usage/creating-a-custom-handler#guide) diff --git a/docs/cache-handler-docs/theme.config.jsx b/docs/cache-handler-docs/theme.config.jsx index 76aa51e8..51e8b829 100644 --- a/docs/cache-handler-docs/theme.config.jsx +++ b/docs/cache-handler-docs/theme.config.jsx @@ -53,10 +53,10 @@ export default { ), }, banner: { - key: 'version-1.0.0', + key: 'version-1.1.0', text: ( - 🎉 1.0.0 is out! It features an improved API and TTL by default. + 🎉 1.1.0 is out! It features Full support for the App Router! ), }, diff --git a/internal/next-common/src/next-common.ts b/internal/next-common/src/next-common.ts index 8aa097e7..70b5330a 100644 --- a/internal/next-common/src/next-common.ts +++ b/internal/next-common/src/next-common.ts @@ -110,3 +110,5 @@ export type TagsManifest = { version: 1; items: Record; }; + +export const NEXT_CACHE_IMPLICIT_TAG_ID = '_N_T_'; diff --git a/internal/next-lru-cache/src/create-configured-cache.ts b/internal/next-lru-cache/src/create-configured-cache.ts index c9e025b3..98a6743a 100644 --- a/internal/next-lru-cache/src/create-configured-cache.ts +++ b/internal/next-lru-cache/src/create-configured-cache.ts @@ -2,14 +2,20 @@ import { LRUCache } from 'lru-cache'; /** * Configuration options for the LRU cache. + * + * @since 1.0.0 */ export type LruCacheOptions = { /** * Optional. Maximum number of items the cache can hold. Defaults to 1000. + * + * @since 1.0.0 */ maxItemsNumber?: number; /** * Optional. Maximum size in bytes for each item in the cache. Defaults to 100 MB. + * + * @since 1.0.0 */ maxItemSizeBytes?: number; }; diff --git a/package-lock.json b/package-lock.json index c0f8a45d..48919e01 100644 --- a/package-lock.json +++ b/package-lock.json @@ -3548,9 +3548,9 @@ ] }, "node_modules/@rushstack/eslint-patch": { - "version": "1.10.1", - "resolved": "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.10.1.tgz", - "integrity": "sha512-S3Kq8e7LqxkA9s7HKLqXGTGck1uwis5vAXan3FnU5yw1Ec5hsSGnq4s/UCaSqABPOnOTg7zASLyst7+ohgWexg==", + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.10.2.tgz", + "integrity": "sha512-hw437iINopmQuxWPSUEvqE56NCPsiU8N4AYtfHmJFckclktzK9YQJieD3XkDCDH4OjL+C7zgPUh73R/nrcHrqw==", "dev": true }, "node_modules/@swc/counter": { @@ -4917,9 +4917,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001607", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001607.tgz", - "integrity": "sha512-WcvhVRjXLKFB/kmOFVwELtMxyhq3iM/MvmXcyCe2PNf166c39mptscOc/45TTS96n2gpNV2z7+NakArTWZCQ3w==", + "version": "1.0.30001608", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001608.tgz", + "integrity": "sha512-cjUJTQkk9fQlJR2s4HMuPMvTiRggl0rAVMtthQuyOlDWuqHXqN8azLq+pi8B2TjwKJ32diHjUqRIKeFX4z1FoA==", "funding": [ { "type": "opencollective", @@ -6236,9 +6236,9 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.730", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.730.tgz", - "integrity": "sha512-oJRPo82XEqtQAobHpJIR3zW5YO3sSRRkPz2an4yxi1UvqhsGm54vR/wzTFV74a3soDOJ8CKW7ajOOX5ESzddwg==", + "version": "1.4.733", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.733.tgz", + "integrity": "sha512-gUI9nhI2iBGF0OaYYLKOaOtliFMl+Bt1rY7VmEjwxOxqoYLub/D9xmduPEhbw2imE6gYkJKhIE5it+KE2ulVxQ==", "dev": true }, "node_modules/elkjs": { @@ -7035,9 +7035,9 @@ } }, "node_modules/eslint-plugin-playwright": { - "version": "1.5.4", - "resolved": "https://registry.npmjs.org/eslint-plugin-playwright/-/eslint-plugin-playwright-1.5.4.tgz", - "integrity": "sha512-J38Wy3Vc2f9y73J+KRmgXgbYI8TZ3zbz6qBbTj3PhpFndUS572jZ7kqQ3rJ9si5BaMHT7lmZzraO+3UjwIDV4Q==", + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-playwright/-/eslint-plugin-playwright-1.6.0.tgz", + "integrity": "sha512-tI1E/EDbHT4Fx5KvukUG3RTIT0gk44gvTP8bNwxLCFsUXVM98ZJG5zWU6Om5JOzH9FrmN4AhMu/UKyEsu0ZoDA==", "dev": true, "workspaces": [ "examples" @@ -7966,9 +7966,9 @@ "dev": true }, "node_modules/fast-json-stringify": { - "version": "5.14.0", - "resolved": "https://registry.npmjs.org/fast-json-stringify/-/fast-json-stringify-5.14.0.tgz", - "integrity": "sha512-6m9a2JN9kDFMADmP9MHLbLPrFu5oSSfrwFLzpcqt/aFgcEi+SVhTJGsx/Wivlls8fQ3OnP8UDNfIY1d1qCC50w==", + "version": "5.14.1", + "resolved": "https://registry.npmjs.org/fast-json-stringify/-/fast-json-stringify-5.14.1.tgz", + "integrity": "sha512-J1Grbf0oSXV3lKsBf3itz1AvRk43qVrx3Ac10sNvi3LZaz1by4oDdYKFrJycPhS8+Gb7y8rgV/Jqw1UZVjyNvw==", "dependencies": { "@fastify/merge-json-schemas": "^0.1.0", "ajv": "^8.10.0", @@ -10206,9 +10206,9 @@ } }, "node_modules/light-my-request": { - "version": "5.12.0", - "resolved": "https://registry.npmjs.org/light-my-request/-/light-my-request-5.12.0.tgz", - "integrity": "sha512-P526OX6E7aeCIfw/9UyJNsAISfcFETghysaWHQAlQYayynShT08MOj4c6fBCvTWBrHXSvqBAKDp3amUPSCQI4w==", + "version": "5.13.0", + "resolved": "https://registry.npmjs.org/light-my-request/-/light-my-request-5.13.0.tgz", + "integrity": "sha512-9IjUN9ZyCS9pTG+KqTDEQo68Sui2lHsYBrfMyVUTTZ3XhH8PMZq7xO94Kr+eP9dhi/kcKsx4N41p2IXEBil1pQ==", "dependencies": { "cookie": "^0.6.0", "process-warning": "^3.0.0", @@ -14628,9 +14628,9 @@ } }, "node_modules/socks": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/socks/-/socks-2.8.1.tgz", - "integrity": "sha512-B6w7tkwNid7ToxjZ08rQMT8M9BJAf8DKx8Ft4NivzH0zBUfd6jldGcisJn/RLgxcX3FPNDdNQCUEMMT79b+oCQ==", + "version": "2.8.3", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.8.3.tgz", + "integrity": "sha512-l5x7VUUWbjVFbafGLxPWkYsHIhEvmF85tbIeFZWc8ZPtoMyybuEhL7Jye/ooC4/d48FgOjSJXgsF/AJPYCW8Zw==", "dev": true, "dependencies": { "ip-address": "^9.0.5", diff --git a/packages/cache-handler/README.md b/packages/cache-handler/README.md index 55bc9e26..bd28f389 100644 --- a/packages/cache-handler/README.md +++ b/packages/cache-handler/README.md @@ -2,7 +2,7 @@ **Flexible API to replace the default Next.js cache, accommodating custom cache solutions for multi-instance self-hosted deployments** -🎉 1.0.0 is out! It features an improved API and TTL by default. +🎉 1.1.0 is out! It features Full support for the App Router! Check out the [changelog](https://github.com/caching-tools/next-shared-cache/blob/canary/packages/cache-handler/CHANGELOG.md) @@ -26,8 +26,7 @@ Welcome to `@neshca/cache-handler`, a specialized ISR/Data cache API crafted for ### Next.js Routers support -- Full support for Pages Router. -- Almost full support for App Router. The only exception is the [`revalidatePath`](https://github.com/caching-tools/next-shared-cache/issues/382) function. +- Full support for the Pages and the App Router. ### The importance of shared cache in distributed environments diff --git a/packages/cache-handler/src/cache-handler.ts b/packages/cache-handler/src/cache-handler.ts index f21e446a..4f412d1e 100644 --- a/packages/cache-handler/src/cache-handler.ts +++ b/packages/cache-handler/src/cache-handler.ts @@ -3,7 +3,6 @@ import path from 'node:path'; import type { CacheHandlerParametersGet, - CacheHandlerParametersRevalidateTag, CacheHandlerParametersSet, CacheHandlerValue, FileSystemCacheContext, @@ -19,12 +18,31 @@ import { getTagsFromPageData } from './helpers/get-tags-from-page-data'; export type { CacheHandlerValue }; +/** + * Represents an internal Next.js metadata for a `get` method. + * This metadata is available in the `get` method of the cache handler. + * + * @since 1.1.0 + */ +type HandlerGetMeta = { + /** + * An array of tags that are implicitly associated with the cache entry. + * + * @since 1.1.0 + */ + implicitTags: string[]; +}; + /** * Represents a cache Handler. + * + * @since 1.0.0 */ export type Handler = { /** * A descriptive name for the cache Handler. + * + * @since 1.0.0 */ name: string; /** @@ -32,6 +50,8 @@ export type Handler = { * * @param key - The unique string identifier for the cache entry. * + * @param meta - The metadata object for the `get` method. See {@link HandlerGetMeta}. + * * @returns A Promise that resolves to the cached value (if found), `null` or `undefined` if the entry is not found. * * @example @@ -74,8 +94,10 @@ export type Handler = { * } * } * ``` + * + * @since 1.0.0 */ - get: (key: string) => Promise; + get: (key: string, meta: HandlerGetMeta) => Promise; /** * Sets or updates a value in the cache store. * @@ -94,6 +116,8 @@ export type Handler = { * the `lifespan` parameter will be `null` and you should consider the cache entry as always fresh and never stale. * * Use the absolute time (`expireAt`) to set and expiration time for the cache entry in your cache store to be in sync with the file system cache. + * + * @since 1.0.0 */ set: (key: string, value: CacheHandlerValue) => Promise; /** @@ -102,6 +126,8 @@ export type Handler = { * * @param tag - A string representing the cache tag associated with the data you want to revalidate. * Must be less than or equal to 256 characters. This value is case-sensitive. + * + * @since 1.0.0 */ revalidateTag: (tag: string) => Promise; /** @@ -112,16 +138,22 @@ export type Handler = { * @param key - The unique string identifier for the cache entry. * * @returns A Promise that resolves when the cache entry has been successfully deleted. + * + * @since 1.0.0 */ delete?: (key: string) => Promise; }; /** * Represents the parameters for Time-to-Live (TTL) configuration. + * + * @since 1.0.0 */ export type TTLParameters = { /** * The time in seconds for when the cache entry becomes stale. Defaults to 1 year. + * + * @since 1.0.0 */ defaultStaleAge: number; /** @@ -132,36 +164,50 @@ export type TTLParameters = { * Revalidation is handled by the `CacheHandler` class. * * @returns The expiration age in seconds. + * + * @since 1.0.0 */ estimateExpireAge(staleAge: number): number; }; /** * Configuration options for the {@link CacheHandler}. + * + * @since 1.0.0 */ export type CacheHandlerConfig = { /** * An array of cache instances that conform to the Handler interface. * Multiple caches can be used to implement various caching strategies or layers. + * + * @since 1.0.0 */ handlers: (Handler | undefined | null)[]; /** * Time-to-live (TTL) options for the cache entries. + * + * @since 1.0.0 */ ttl?: Partial; }; /** * Contextual information provided during cache creation, including server directory paths and environment mode. + * + * @since 1.0.0 */ export type CacheCreationContext = { /** * The absolute path to the Next.js server directory. + * + * @since 1.0.0 */ serverDistDir: string; /** * Indicates if the Next.js application is running in development mode. * When in development mode, caching behavior might differ. + * + * @since 1.0.0 */ dev?: boolean; /** @@ -195,6 +241,8 @@ export type CacheCreationContext = { * }; * }); * ``` + * + * @since 1.0.0 */ buildId?: string; }; @@ -207,6 +255,8 @@ export type CacheCreationContext = { * * @returns Either a {@link CacheHandlerConfig} object or a Promise that resolves to a {@link CacheHandlerConfig}, * specifying how the cache should be configured. + * + * @since 1.0.0 */ export type OnCreationHook = (context: CacheCreationContext) => Promise | CacheHandlerConfig; @@ -370,6 +420,8 @@ export class CacheHandler implements NextCacheHandler { * or extended based on specific application requirements or environmental conditions. * * @param onCreationHook - The {@link OnCreationHook} function to be called during cache creation. + * + * @since 1.0.0 */ static onCreation(onCreationHook: OnCreationHook): void { CacheHandler.#onCreationHook = onCreationHook; @@ -432,10 +484,10 @@ export class CacheHandler implements NextCacheHandler { CacheHandler.#cacheListLength = handlersList.length; CacheHandler.#mergedHandler = { - async get(key) { + async get(key, meta) { for await (const handler of handlersList) { try { - let cacheHandlerValue = await handler.get(key); + let cacheHandlerValue = await handler.get(key, meta); if ( cacheHandlerValue?.lifespan && @@ -510,14 +562,17 @@ export class CacheHandler implements NextCacheHandler { CacheHandler.#context = context; } - async get(...args: CacheHandlerParametersGet): Promise { + async get( + cacheKey: CacheHandlerParametersGet[0], + ctx: CacheHandlerParametersGet[1] = {}, + ): Promise { await CacheHandler.#configureCacheHandler(); - const [cacheKey, ctx = {}] = args; + const { tags = [], kindHint, softTags = [] } = ctx; - const { tags = [], kindHint } = ctx; - - let cachedData: CacheHandlerValue | null | undefined = await CacheHandler.#mergedHandler.get(cacheKey); + let cachedData: CacheHandlerValue | null | undefined = await CacheHandler.#mergedHandler.get(cacheKey, { + implicitTags: softTags, + }); if (cachedData?.value?.kind === 'ROUTE') { cachedData.value.body = Buffer.from(cachedData.value.body as unknown as string, 'base64'); @@ -539,11 +594,13 @@ export class CacheHandler implements NextCacheHandler { return cachedData ?? null; } - async set(...args: CacheHandlerParametersSet): Promise { + async set( + cacheKey: CacheHandlerParametersSet[0], + incrementalCacheValue: CacheHandlerParametersSet[1], + ctx: CacheHandlerParametersSet[2], + ): Promise { await CacheHandler.#configureCacheHandler(); - const [cacheKey, incrementalCacheValue, ctx] = args; - const { revalidate, tags = [] } = ctx; const lastModified = Date.now(); @@ -604,11 +661,9 @@ export class CacheHandler implements NextCacheHandler { } } - async revalidateTag(...args: CacheHandlerParametersRevalidateTag): Promise { + async revalidateTag(tag: string): Promise { await CacheHandler.#configureCacheHandler(); - const [tag] = args; - if (CacheHandler.#debug) { console.info('revalidateTag', tag); } diff --git a/packages/cache-handler/src/common-types.ts b/packages/cache-handler/src/common-types.ts index ebb2b987..ca422381 100644 --- a/packages/cache-handler/src/common-types.ts +++ b/packages/cache-handler/src/common-types.ts @@ -4,18 +4,26 @@ export type RedisJSON = Parameters['2']; /** * The configuration options for the Redis Handler + * + * @since 1.0.0 */ export type CreateRedisStackHandlerOptions> = { /** * The Redis client instance. + * + * @since 1.0.0 */ client: T; /** * Optional. Prefix for all keys, useful for namespacing. Defaults to an empty string. + * + * @since 1.0.0 */ keyPrefix?: string; /** * Timeout in milliseconds for Redis operations. Defaults to 5000. + * + * @since 1.0.0 */ timeoutMs?: number; }; @@ -23,6 +31,8 @@ export type CreateRedisStackHandlerOptions> export type CreateRedisStringsHandlerOptions = CreateRedisStackHandlerOptions & { /** * Optional. Key for storing cache tags. Defaults to `__sharedTags__`. + * + * @since 1.0.0 */ sharedTagsKey?: string; }; diff --git a/packages/cache-handler/src/constants.ts b/packages/cache-handler/src/constants.ts index 7712c9c4..ad2f88e9 100644 --- a/packages/cache-handler/src/constants.ts +++ b/packages/cache-handler/src/constants.ts @@ -1 +1,3 @@ export const MAX_INT32 = 2 ** 31 - 1; + +export const REVALIDATED_TAGS_KEY = '__revalidated_tags__'; diff --git a/packages/cache-handler/src/handlers/local-lru.ts b/packages/cache-handler/src/handlers/local-lru.ts index a234ce5f..aedc5b61 100644 --- a/packages/cache-handler/src/handlers/local-lru.ts +++ b/packages/cache-handler/src/handlers/local-lru.ts @@ -1,6 +1,7 @@ import type { LruCacheOptions } from '@neshca/next-lru-cache/next-cache-handler-value'; import createCacheStore from '@neshca/next-lru-cache/next-cache-handler-value'; +import { NEXT_CACHE_IMPLICIT_TAG_ID } from '@neshca/next-common'; import type { Handler } from '../cache-handler'; export type LruCacheHandlerOptions = LruCacheOptions; @@ -27,19 +28,41 @@ export type LruCacheHandlerOptions = LruCacheOptions; * * @remarks * - Use this Handler as a fallback for any remote store Handler. + * + * @since 1.0.0 */ export default function createHandler({ ...lruOptions }: LruCacheHandlerOptions = {}): Handler { const lruCacheStore = createCacheStore(lruOptions); + const revalidatedTags = new Map(); + return { name: 'local-lru', - get(key) { + get(key, { implicitTags }) { const cacheValue = lruCacheStore.get(key); if (!cacheValue) { return Promise.resolve(null); } + const sanitizedImplicitTags = implicitTags; + + const combinedTags = new Set([...cacheValue.tags, ...sanitizedImplicitTags]); + + if (combinedTags.size === 0) { + return Promise.resolve(cacheValue); + } + + for (const tag of combinedTags) { + const revalidationTime = revalidatedTags.get(tag); + + if (revalidationTime && revalidationTime > cacheValue.lastModified) { + lruCacheStore.delete(key); + + return Promise.resolve(null); + } + } + return Promise.resolve(cacheValue); }, set(key, cacheHandlerValue) { @@ -56,6 +79,10 @@ export default function createHandler({ ...lruOptions }: LruCacheHandlerOptions } } + if (tag.startsWith(NEXT_CACHE_IMPLICIT_TAG_ID)) { + revalidatedTags.set(tag, Date.now()); + } + return Promise.resolve(); }, delete(key) { diff --git a/packages/cache-handler/src/handlers/redis-stack.ts b/packages/cache-handler/src/handlers/redis-stack.ts index ac6a4b1c..d9bceeec 100644 --- a/packages/cache-handler/src/handlers/redis-stack.ts +++ b/packages/cache-handler/src/handlers/redis-stack.ts @@ -2,7 +2,9 @@ import { SchemaFieldTypes } from 'redis'; import type { CacheHandlerValue, Handler } from '../cache-handler'; import type { CreateRedisStackHandlerOptions, RedisJSON } from '../common-types'; +import { REVALIDATED_TAGS_KEY } from '../constants'; import { getTimeoutRedisCommandOptions } from '../helpers/get-timeout-redis-command-options'; +import { isImplicitTag } from '../helpers/is-implicit-tag'; export type { CreateRedisStackHandlerOptions }; @@ -62,9 +64,11 @@ export default async function createHandler({ // Index already exists } + const revalidatedTagsKey = keyPrefix + REVALIDATED_TAGS_KEY; + return { name: 'redis-stack', - async get(key) { + async get(key, { implicitTags }) { assertClientIsReady(); const cacheValue = (await client.json.get( @@ -72,6 +76,32 @@ export default async function createHandler({ keyPrefix + key, )) as CacheHandlerValue | null; + if (!cacheValue) { + return null; + } + + const sanitizedImplicitTags = implicitTags.map(sanitizeTag); + + const combinedTags = new Set([...cacheValue.tags, ...sanitizedImplicitTags]); + + if (combinedTags.size === 0) { + return cacheValue; + } + + const revalidationTimes = await client.hmGet( + getTimeoutRedisCommandOptions(timeoutMs), + revalidatedTagsKey, + Array.from(combinedTags), + ); + + for (const timeString of revalidationTimes) { + if (timeString && Number.parseInt(timeString, 10) > cacheValue.lastModified) { + await client.unlink(getTimeoutRedisCommandOptions(timeoutMs), keyPrefix + key); + + return null; + } + } + return cacheValue; }, async set(key, cacheHandlerValue) { @@ -97,6 +127,19 @@ export default async function createHandler({ async revalidateTag(tag) { assertClientIsReady(); + const sanitizedTag = sanitizeTag(tag); + + // If the tag is an implicit tag, we need to mark it as revalidated. + // The revalidation process is done by the CacheHandler class on the next get operation. + if (isImplicitTag(tag)) { + await client.hSet( + getTimeoutRedisCommandOptions(timeoutMs), + revalidatedTagsKey, + sanitizedTag, + Date.now(), + ); + } + let from = 0; const querySize = 25; @@ -104,7 +147,7 @@ export default async function createHandler({ const keysToDelete: string[] = []; while (true) { - const { documents } = await client.ft.search('idx:tags', `@tag:(${sanitizeTag(tag)})`, { + const { documents } = await client.ft.search('idx:tags', `@tag:(${sanitizedTag})`, { LIMIT: { from, size: querySize }, TIMEOUT: timeoutMs, }); diff --git a/packages/cache-handler/src/handlers/redis-strings.ts b/packages/cache-handler/src/handlers/redis-strings.ts index 6f30ab47..e9535077 100644 --- a/packages/cache-handler/src/handlers/redis-strings.ts +++ b/packages/cache-handler/src/handlers/redis-strings.ts @@ -1,9 +1,9 @@ -// import type { RedisClientType } from 'redis'; - import type { CacheHandlerValue, Handler } from '../cache-handler'; import type { CreateRedisStringsHandlerOptions } from '../common-types'; +import { REVALIDATED_TAGS_KEY } from '../constants'; import { getTimeoutRedisCommandOptions } from '../helpers/get-timeout-redis-command-options'; +import { isImplicitTag } from '../helpers/is-implicit-tag'; export type { CreateRedisStringsHandlerOptions }; @@ -45,9 +45,11 @@ export default function createHandler({ } } + const revalidatedTagsKey = keyPrefix + REVALIDATED_TAGS_KEY; + return { name: 'redis-strings', - async get(key) { + async get(key, { implicitTags }) { assertClientIsReady(); const result = await client.get(getTimeoutRedisCommandOptions(timeoutMs), keyPrefix + key); @@ -56,7 +58,33 @@ export default function createHandler({ return null; } - return JSON.parse(result) as CacheHandlerValue | null; + const cacheValue = JSON.parse(result) as CacheHandlerValue | null; + + if (!cacheValue) { + return null; + } + + const combinedTags = new Set([...cacheValue.tags, ...implicitTags]); + + if (combinedTags.size === 0) { + return cacheValue; + } + + const revalidationTimes = await client.hmGet( + getTimeoutRedisCommandOptions(timeoutMs), + revalidatedTagsKey, + Array.from(combinedTags), + ); + + for (const timeString of revalidationTimes) { + if (timeString && Number.parseInt(timeString, 10) > cacheValue.lastModified) { + await client.unlink(getTimeoutRedisCommandOptions(timeoutMs), keyPrefix + key); + + return null; + } + } + + return cacheValue; }, async set(key, cacheHandlerValue) { assertClientIsReady(); @@ -70,9 +98,7 @@ export default function createHandler({ : undefined; const setTagsOperation = cacheHandlerValue.tags.length - ? client.hSet(options, keyPrefix + sharedTagsKey, { - [key]: JSON.stringify(cacheHandlerValue.tags), - }) + ? client.hSet(options, keyPrefix + sharedTagsKey, key, JSON.stringify(cacheHandlerValue.tags)) : undefined; await Promise.all([setOperation, expireOperation, setTagsOperation]); @@ -80,20 +106,37 @@ export default function createHandler({ async revalidateTag(tag) { assertClientIsReady(); - const remoteTags: Record = await client.hGetAll( - getTimeoutRedisCommandOptions(timeoutMs), - keyPrefix + sharedTagsKey, - ); + // If the tag is an implicit tag, we need to mark it as revalidated. + // The revalidation process is done by the CacheHandler class on the next get operation. + if (isImplicitTag(tag)) { + await client.hSet(getTimeoutRedisCommandOptions(timeoutMs), revalidatedTagsKey, tag, Date.now()); + } + + const tagsMap: Map = new Map(); + + let cursor = 0; + + const querySize = 25; - const tagsMap = new Map(Object.entries(remoteTags)); + while (true) { + const remoteTagsPortion = await client.hScan(keyPrefix + sharedTagsKey, cursor, { COUNT: querySize }); + + for (const { field, value } of remoteTagsPortion.tuples) { + tagsMap.set(field, JSON.parse(value)); + } + + if (remoteTagsPortion.cursor === 0) { + break; + } + + cursor = remoteTagsPortion.cursor; + } const keysToDelete = []; const tagsToDelete = []; - for (const [key, tagsString] of tagsMap) { - const tags = JSON.parse(tagsString); - + for (const [key, tags] of tagsMap) { if (tags.includes(tag)) { keysToDelete.push(keyPrefix + key); tagsToDelete.push(key); diff --git a/packages/cache-handler/src/handlers/server.ts b/packages/cache-handler/src/handlers/server.ts index 7ed63893..aa393dba 100644 --- a/packages/cache-handler/src/handlers/server.ts +++ b/packages/cache-handler/src/handlers/server.ts @@ -3,10 +3,14 @@ import type { CacheHandlerValue, Handler } from '../cache-handler'; export type ServerCacheHandlerOptions = { /** * The base URL of the cache store server. + * + * @since 1.0.0 */ baseUrl: URL | string; /** * Timeout in milliseconds for remote cache store operations. + * + * @since 1.0.0 */ timeoutMs?: number; }; @@ -37,10 +41,11 @@ export type ServerCacheHandlerOptions = { export default function createHandler({ baseUrl, timeoutMs }: ServerCacheHandlerOptions): Handler { return { name: 'server', - async get(key) { + async get(key, { implicitTags }) { const url = new URL('/get', baseUrl); url.searchParams.set('key', key); + url.searchParams.set('implicitTags', JSON.stringify(implicitTags)); const response = await fetch(url, { signal: timeoutMs ? AbortSignal.timeout(timeoutMs) : undefined, diff --git a/packages/cache-handler/src/helpers/get-tags-from-page-data.ts b/packages/cache-handler/src/helpers/get-tags-from-page-data.ts index 58b3543e..02d4dbeb 100644 --- a/packages/cache-handler/src/helpers/get-tags-from-page-data.ts +++ b/packages/cache-handler/src/helpers/get-tags-from-page-data.ts @@ -1,19 +1,5 @@ import type { IncrementalCachedPageValue } from '@neshca/next-common'; -export const NEXT_CACHE_IMPLICIT_TAG_ID = '_N_T_'; - -/** - * Checks if a tag is an internal tag. - * Internal tags start with '\_N_T\_'. - * - * @param tag - The tag to check. - * - * @returns True if the tag is an internal tag, false otherwise. - */ -function filterInternalTag(tag: string): boolean { - return !tag.startsWith(NEXT_CACHE_IMPLICIT_TAG_ID); -} - /** * Retrieves the cache tags from the given page data. * @@ -25,5 +11,5 @@ export function getTagsFromPageData(data: IncrementalCachedPageValue): string[] const headers = data.headers?.['x-next-cache-tags']; const pageTags = typeof headers === 'string' ? headers.split(',') : []; - return pageTags.filter(filterInternalTag); + return pageTags; } diff --git a/packages/cache-handler/src/helpers/helpers.ts b/packages/cache-handler/src/helpers/helpers.ts index 707d8028..a85c7fcc 100644 --- a/packages/cache-handler/src/helpers/helpers.ts +++ b/packages/cache-handler/src/helpers/helpers.ts @@ -1 +1,3 @@ export { promiseWithTimeout } from './promise-with-timeout'; +export { isImplicitTag } from './is-implicit-tag'; +export { getTimeoutRedisCommandOptions } from './get-timeout-redis-command-options'; diff --git a/packages/cache-handler/src/helpers/is-implicit-tag.ts b/packages/cache-handler/src/helpers/is-implicit-tag.ts new file mode 100644 index 00000000..40817c55 --- /dev/null +++ b/packages/cache-handler/src/helpers/is-implicit-tag.ts @@ -0,0 +1,12 @@ +import { NEXT_CACHE_IMPLICIT_TAG_ID } from '@neshca/next-common'; + +/** + * Checks if a given tag is an implicit tag. + * + * @param tag - The tag to check. + * + * @returns A boolean indicating whether the tag is an implicit tag. + */ +export function isImplicitTag(tag: string): boolean { + return tag.startsWith(NEXT_CACHE_IMPLICIT_TAG_ID); +} diff --git a/packages/server/src/server.ts b/packages/server/src/server.ts index 1cd1292b..9a8ed01c 100644 --- a/packages/server/src/server.ts +++ b/packages/server/src/server.ts @@ -1,5 +1,6 @@ #!/usr/bin/env node +import { NEXT_CACHE_IMPLICIT_TAG_ID } from '@neshca/next-common'; import createCacheStore from '@neshca/next-lru-cache/next-cache-handler-value'; import Fastify from 'fastify'; import { pino } from 'pino'; @@ -18,8 +19,10 @@ const lruCacheStore = createCacheStore(); const host = process.env.HOST ?? 'localhost'; const port = Number.parseInt(process.env.PORT ?? '8080', 10); +const revalidatedTags = new Map(); + server.get('/get', async (request, reply): Promise => { - const { key } = request.query as { key: string }; + const { key, implicitTags: implicitTagsString } = request.query as { key: string; implicitTags: string }; const cacheValue = lruCacheStore.get(key); @@ -35,6 +38,24 @@ server.get('/get', async (request, reply): Promise => { await reply.code(404).send(null); } + const implicitTags = JSON.parse(implicitTagsString); + + const combinedTags = new Set([...cacheValue.tags, ...implicitTags]); + + if (combinedTags.size === 0) { + await reply.code(404).send(null); + } + + for (const tag of combinedTags) { + const revalidationTime = revalidatedTags.get(tag); + + if (revalidationTime && revalidationTime > cacheValue.lastModified) { + lruCacheStore.delete(key); + + await reply.code(404).send(null); + } + } + await reply.code(200).send(cacheValue); }); @@ -56,6 +77,10 @@ server.post('/revalidateTag', async (request, reply): Promise => { } } + if (tag.startsWith(NEXT_CACHE_IMPLICIT_TAG_ID)) { + revalidatedTags.set(tag, Date.now()); + } + await reply.code(200).send(); }); diff --git a/packages/server/tsconfig.json b/packages/server/tsconfig.json index b0d5b0ac..5809638a 100644 --- a/packages/server/tsconfig.json +++ b/packages/server/tsconfig.json @@ -1,5 +1,10 @@ { "extends": "@repo/typescript-config/library.json", "include": ["."], - "exclude": ["dist", "node_modules"] + "exclude": ["dist", "node_modules"], + "compilerOptions": { + "paths": { + "@neshca/next-common": ["../../internal/next-common/src/next-common.ts"] + } + } } From 23ae2a7e5a6fc6fb1cee2d240c7ed275a1705ff8 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Thu, 11 Apr 2024 12:02:05 +0300 Subject: [PATCH 187/458] Version Packages (#464) Co-authored-by: github-actions[bot] --- .changeset/long-sheep-play.md | 29 ---------------------------- .changeset/tricky-cobras-pull.md | 5 ----- packages/cache-handler/CHANGELOG.md | 30 +++++++++++++++++++++++++++++ packages/cache-handler/package.json | 2 +- packages/server/CHANGELOG.md | 6 ++++++ packages/server/package.json | 2 +- 6 files changed, 38 insertions(+), 36 deletions(-) delete mode 100644 .changeset/long-sheep-play.md delete mode 100644 .changeset/tricky-cobras-pull.md diff --git a/.changeset/long-sheep-play.md b/.changeset/long-sheep-play.md deleted file mode 100644 index 2ef4d8f3..00000000 --- a/.changeset/long-sheep-play.md +++ /dev/null @@ -1,29 +0,0 @@ ---- -'@neshca/cache-handler': minor ---- - -Add `revalidatePath` functionality. - -#### New Features - -##### `@neshca/cache-handler` - -- add `implicitTags` parameter to the `get` method for Handlers -- remove implicit tags filtration for the `PAGE` kind cache values - -##### `@neshca/cache-handle/local-lru` - -- implement `revalidatePath` functionality - -##### `@neshca/cache-handle/redis-stack` - -- implement `revalidatePath` functionality - -##### `@neshca/cache-handle/redis-strings` - -- implement `revalidatePath` functionality -- refactor `revalidateTag` method to use `HSCAN` instead of `HGETALL` - -##### `@neshca/cache-handle/helpers` - -- add `isImplicitTag` and `getTimeoutRedisCommandOptions` functions diff --git a/.changeset/tricky-cobras-pull.md b/.changeset/tricky-cobras-pull.md deleted file mode 100644 index 9511b518..00000000 --- a/.changeset/tricky-cobras-pull.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@neshca/server': minor ---- - -Add support for the new `implicitTags` parameter. diff --git a/packages/cache-handler/CHANGELOG.md b/packages/cache-handler/CHANGELOG.md index 7d9d0d36..e093257d 100644 --- a/packages/cache-handler/CHANGELOG.md +++ b/packages/cache-handler/CHANGELOG.md @@ -1,5 +1,35 @@ # @neshca/cache-handler +## 1.1.0 + +### Minor Changes + +- 588153b: Add `revalidatePath` functionality. + + #### New Features + + ##### `@neshca/cache-handler` + + - add `implicitTags` parameter to the `get` method for Handlers + - remove implicit tags filtration for the `PAGE` kind cache values + + ##### `@neshca/cache-handle/local-lru` + + - implement `revalidatePath` functionality + + ##### `@neshca/cache-handle/redis-stack` + + - implement `revalidatePath` functionality + + ##### `@neshca/cache-handle/redis-strings` + + - implement `revalidatePath` functionality + - refactor `revalidateTag` method to use `HSCAN` instead of `HGETALL` + + ##### `@neshca/cache-handle/helpers` + + - add `isImplicitTag` and `getTimeoutRedisCommandOptions` functions + ## 1.0.8 ### Patch Changes diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 217ea9d4..8baa1cf7 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -1,6 +1,6 @@ { "name": "@neshca/cache-handler", - "version": "1.0.8", + "version": "1.1.0", "description": "Next.js self-hosting simplified.", "keywords": [ "cache", diff --git a/packages/server/CHANGELOG.md b/packages/server/CHANGELOG.md index 7613468e..0d0818aa 100644 --- a/packages/server/CHANGELOG.md +++ b/packages/server/CHANGELOG.md @@ -1,5 +1,11 @@ # @neshca/server +## 1.1.0 + +### Minor Changes + +- 588153b: Add support for the new `implicitTags` parameter. + ## 1.0.0 ### Major Changes diff --git a/packages/server/package.json b/packages/server/package.json index 81b63348..1ee4d016 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -1,6 +1,6 @@ { "name": "@neshca/server", - "version": "1.0.0", + "version": "1.1.0", "description": "Efficient and simple HTTP caching server with LRU eviction, tailored for seamless integration with `@neshca/cache-handler/server` Handler", "homepage": "https://github.com/caching-tools/next-shared-cache/tree/canary/packages/server", "bugs": "https://github.com/caching-tools/next-shared-cache/issues", From 3aec39b49acf9db5425b2cd799c0feff0c020b54 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 11 Apr 2024 12:27:14 +0300 Subject: [PATCH 188/458] Bump the definitely-typed group with 2 updates (#462) Bumps the definitely-typed group with 2 updates: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) and [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react). Updates `@types/node` from 20.12.5 to 20.12.7 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) Updates `@types/react` from 18.2.74 to 18.2.75 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react) --- updated-dependencies: - dependency-name: "@types/node" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed - dependency-name: "@types/react" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 4 +- docs/cache-handler-docs/package.json | 4 +- internal/backend/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 127 +++++--------------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 10 files changed, 38 insertions(+), 111 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 4af2a6a2..70323367 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -28,8 +28,8 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "20.12.5", - "@types/react": "18.2.74", + "@types/node": "20.12.7", + "@types/react": "18.2.75", "@types/react-dom": "18.2.24", "axios": "1.6.8", "dotenv-cli": "7.4.1", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index c7e5d28f..40425bfd 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -22,8 +22,8 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "20.12.5", - "@types/react": "18.2.74", + "@types/node": "20.12.7", + "@types/react": "18.2.75", "@types/react-dom": "18.2.24", "eslint": "8.57.0", "typescript": "5.4.4" diff --git a/internal/backend/package.json b/internal/backend/package.json index ec673ffc..d09b9119 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.12.5", + "@types/node": "20.12.7", "pino-pretty": "11.0.0", "rimraf": "5.0.5", "tsx": "4.7.2", diff --git a/internal/next-common/package.json b/internal/next-common/package.json index 3503778f..2802b43e 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.12.5", + "@types/node": "20.12.7", "rimraf": "5.0.5", "typescript": "5.4.4" } diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index c42f025f..d997944e 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -16,7 +16,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "20.12.5", + "@types/node": "20.12.7", "rimraf": "5.0.5", "typescript": "5.4.4" } diff --git a/package-lock.json b/package-lock.json index 48919e01..c39aa8da 100644 --- a/package-lock.json +++ b/package-lock.json @@ -48,8 +48,8 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "20.12.5", - "@types/react": "18.2.74", + "@types/node": "20.12.7", + "@types/react": "18.2.75", "@types/react-dom": "18.2.24", "axios": "1.6.8", "dotenv-cli": "7.4.1", @@ -62,15 +62,6 @@ "typescript": "5.4.4" } }, - "apps/cache-testing/node_modules/@types/node": { - "version": "20.12.5", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.5.tgz", - "integrity": "sha512-BD+BjQ9LS/D8ST9p5uqBxghlN+S42iuNxjsUGjeZobe/ciXzk2qb1B6IXc6AnRLS+yFJRpN2IPEHMzwspfDJNw==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "apps/cache-testing/node_modules/next": { "version": "14.2.0-canary.61", "resolved": "https://registry.npmjs.org/next/-/next-14.2.0-canary.61.tgz", @@ -134,8 +125,8 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "20.12.5", - "@types/react": "18.2.74", + "@types/node": "20.12.7", + "@types/react": "18.2.75", "@types/react-dom": "18.2.24", "eslint": "8.57.0", "typescript": "5.4.4" @@ -298,15 +289,6 @@ "tslib": "^2.4.0" } }, - "docs/cache-handler-docs/node_modules/@types/node": { - "version": "20.12.5", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.5.tgz", - "integrity": "sha512-BD+BjQ9LS/D8ST9p5uqBxghlN+S42iuNxjsUGjeZobe/ciXzk2qb1B6IXc6AnRLS+yFJRpN2IPEHMzwspfDJNw==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "docs/cache-handler-docs/node_modules/glob": { "version": "10.3.10", "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", @@ -464,22 +446,13 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.12.5", + "@types/node": "20.12.7", "pino-pretty": "11.0.0", "rimraf": "5.0.5", "tsx": "4.7.2", "typescript": "5.4.4" } }, - "internal/backend/node_modules/@types/node": { - "version": "20.12.5", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.5.tgz", - "integrity": "sha512-BD+BjQ9LS/D8ST9p5uqBxghlN+S42iuNxjsUGjeZobe/ciXzk2qb1B6IXc6AnRLS+yFJRpN2IPEHMzwspfDJNw==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "internal/eslint-config": { "name": "@repo/eslint-config", "version": "0.0.0", @@ -612,20 +585,11 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.12.5", + "@types/node": "20.12.7", "rimraf": "5.0.5", "typescript": "5.4.4" } }, - "internal/next-common/node_modules/@types/node": { - "version": "20.12.5", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.5.tgz", - "integrity": "sha512-BD+BjQ9LS/D8ST9p5uqBxghlN+S42iuNxjsUGjeZobe/ciXzk2qb1B6IXc6AnRLS+yFJRpN2IPEHMzwspfDJNw==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "internal/next-common/node_modules/next": { "version": "14.2.0-canary.61", "resolved": "https://registry.npmjs.org/next/-/next-14.2.0-canary.61.tgz", @@ -685,20 +649,11 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "20.12.5", + "@types/node": "20.12.7", "rimraf": "5.0.5", "typescript": "5.4.4" } }, - "internal/next-lru-cache/node_modules/@types/node": { - "version": "20.12.5", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.5.tgz", - "integrity": "sha512-BD+BjQ9LS/D8ST9p5uqBxghlN+S42iuNxjsUGjeZobe/ciXzk2qb1B6IXc6AnRLS+yFJRpN2IPEHMzwspfDJNw==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "internal/prettier-config": { "name": "@repo/prettier-config", "version": "0.0.0", @@ -2336,6 +2291,11 @@ "fs-extra": "^8.1.0" } }, + "node_modules/@manypkg/find-root/node_modules/@types/node": { + "version": "12.20.55", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", + "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" + }, "node_modules/@manypkg/find-root/node_modules/fs-extra": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", @@ -3730,9 +3690,12 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "12.20.55", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", - "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" + "version": "20.12.7", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.7.tgz", + "integrity": "sha512-wq0cICSkRLVaf3UGLMGItu/PtdY7oaXaI/RVU+xliKVOtRna3PRY57ZDfztpDL0n11vfymMUnXv8QwYCO7L1wg==", + "dependencies": { + "undici-types": "~5.26.4" + } }, "node_modules/@types/node-fetch": { "version": "2.6.11", @@ -3755,9 +3718,9 @@ "integrity": "sha512-5zvhXYtRNRluoE/jAp4GVsSduVUzNWKkOZrCDBWYtE7biZywwdC2AcEzg+cSMLFRfVgeAFqpfNabiPjxFddV1Q==" }, "node_modules/@types/react": { - "version": "18.2.74", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.74.tgz", - "integrity": "sha512-9AEqNZZyBx8OdZpxzQlaFEVCSFUM2YXJH46yPOiOpm078k6ZLOCcuAzGum/zK8YBwY+dbahVNbHrbgrAwIRlqw==", + "version": "18.2.75", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.75.tgz", + "integrity": "sha512-+DNnF7yc5y0bHkBTiLKqXFe+L4B3nvOphiMY3tuA5X10esmjqk7smyBZzbGTy2vsiy/Bnzj8yFIBL8xhRacoOg==", "dependencies": { "@types/prop-types": "*", "csstype": "^3.0.2" @@ -17054,7 +17017,7 @@ }, "packages/cache-handler": { "name": "@neshca/cache-handler", - "version": "1.0.8", + "version": "1.1.0", "license": "MIT", "dependencies": { "lru-cache": "10.2.0" @@ -17063,7 +17026,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.12.5", + "@types/node": "20.12.7", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.2", @@ -17074,15 +17037,6 @@ "redis": ">=4.6" } }, - "packages/cache-handler/node_modules/@types/node": { - "version": "20.12.5", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.5.tgz", - "integrity": "sha512-BD+BjQ9LS/D8ST9p5uqBxghlN+S42iuNxjsUGjeZobe/ciXzk2qb1B6IXc6AnRLS+yFJRpN2IPEHMzwspfDJNw==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "packages/diffscribe": { "version": "0.2.3", "license": "MIT", @@ -17091,7 +17045,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.12.5", + "@types/node": "20.12.7", "rimraf": "5.0.5", "tsup": "8.0.2", "typescript": "5.4.4" @@ -17101,40 +17055,22 @@ "openai": "^4.12.3" } }, - "packages/diffscribe/node_modules/@types/node": { - "version": "20.12.5", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.5.tgz", - "integrity": "sha512-BD+BjQ9LS/D8ST9p5uqBxghlN+S42iuNxjsUGjeZobe/ciXzk2qb1B6IXc6AnRLS+yFJRpN2IPEHMzwspfDJNw==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "packages/json-replacer-reviver": { "name": "@neshca/json-replacer-reviver", "version": "1.1.2", "license": "MIT", "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.12.5", + "@types/node": "20.12.7", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.2", "typescript": "5.4.4" } }, - "packages/json-replacer-reviver/node_modules/@types/node": { - "version": "20.12.5", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.5.tgz", - "integrity": "sha512-BD+BjQ9LS/D8ST9p5uqBxghlN+S42iuNxjsUGjeZobe/ciXzk2qb1B6IXc6AnRLS+yFJRpN2IPEHMzwspfDJNw==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "packages/server": { "name": "@neshca/server", - "version": "1.0.0", + "version": "1.1.0", "license": "MIT", "dependencies": { "fastify": "4.26.2", @@ -17147,21 +17083,12 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.12.5", + "@types/node": "20.12.7", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.2", "typescript": "5.4.4" } - }, - "packages/server/node_modules/@types/node": { - "version": "20.12.5", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.5.tgz", - "integrity": "sha512-BD+BjQ9LS/D8ST9p5uqBxghlN+S42iuNxjsUGjeZobe/ciXzk2qb1B6IXc6AnRLS+yFJRpN2IPEHMzwspfDJNw==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } } } } diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 8baa1cf7..91428cb6 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -72,7 +72,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.12.5", + "@types/node": "20.12.7", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.2", diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index fff178e9..a60e0f44 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -25,7 +25,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.12.5", + "@types/node": "20.12.7", "rimraf": "5.0.5", "tsup": "8.0.2", "typescript": "5.4.4" diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 7d2ff9a6..0267ac34 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -28,7 +28,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.12.5", + "@types/node": "20.12.7", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.2", diff --git a/packages/server/package.json b/packages/server/package.json index 1ee4d016..43f05546 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -32,7 +32,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.12.5", + "@types/node": "20.12.7", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.2", From 000c62d2a000c81ce20bcac879ad8e78a956b878 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 11 Apr 2024 13:11:34 +0300 Subject: [PATCH 189/458] Bump typescript from 5.4.4 to 5.4.5 (#461) Bumps [typescript](https://github.com/Microsoft/TypeScript) from 5.4.4 to 5.4.5. - [Release notes](https://github.com/Microsoft/TypeScript/releases) - [Changelog](https://github.com/microsoft/TypeScript/blob/main/azure-pipelines.release.yml) - [Commits](https://github.com/Microsoft/TypeScript/compare/v5.4.4...v5.4.5) --- updated-dependencies: - dependency-name: typescript dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- internal/backend/package.json | 2 +- internal/eslint-config/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 26 ++++++++++----------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 11 files changed, 23 insertions(+), 23 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 70323367..afefb655 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -39,6 +39,6 @@ "redis": "4.6.13", "rimraf": "5.0.5", "tsx": "4.7.2", - "typescript": "5.4.4" + "typescript": "5.4.5" } } diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 40425bfd..1d0ad966 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -26,6 +26,6 @@ "@types/react": "18.2.75", "@types/react-dom": "18.2.24", "eslint": "8.57.0", - "typescript": "5.4.4" + "typescript": "5.4.5" } } diff --git a/internal/backend/package.json b/internal/backend/package.json index d09b9119..79f6c162 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -19,6 +19,6 @@ "pino-pretty": "11.0.0", "rimraf": "5.0.5", "tsx": "4.7.2", - "typescript": "5.4.4" + "typescript": "5.4.5" } } diff --git a/internal/eslint-config/package.json b/internal/eslint-config/package.json index adbd3b26..3b20b3c4 100644 --- a/internal/eslint-config/package.json +++ b/internal/eslint-config/package.json @@ -12,6 +12,6 @@ "eslint-config-prettier": "9.1.0", "eslint-config-turbo": "1.13.2", "eslint-plugin-only-warn": "1.1.0", - "typescript": "5.4.4" + "typescript": "5.4.5" } } diff --git a/internal/next-common/package.json b/internal/next-common/package.json index 2802b43e..755bcb04 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -17,6 +17,6 @@ "@repo/typescript-config": "*", "@types/node": "20.12.7", "rimraf": "5.0.5", - "typescript": "5.4.4" + "typescript": "5.4.5" } } diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index d997944e..dd52bee8 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -18,6 +18,6 @@ "@repo/typescript-config": "*", "@types/node": "20.12.7", "rimraf": "5.0.5", - "typescript": "5.4.4" + "typescript": "5.4.5" } } diff --git a/package-lock.json b/package-lock.json index c39aa8da..3cd0df83 100644 --- a/package-lock.json +++ b/package-lock.json @@ -59,7 +59,7 @@ "redis": "4.6.13", "rimraf": "5.0.5", "tsx": "4.7.2", - "typescript": "5.4.4" + "typescript": "5.4.5" } }, "apps/cache-testing/node_modules/next": { @@ -129,7 +129,7 @@ "@types/react": "18.2.75", "@types/react-dom": "18.2.24", "eslint": "8.57.0", - "typescript": "5.4.4" + "typescript": "5.4.5" } }, "docs/cache-handler-docs/node_modules/@next/env": { @@ -450,7 +450,7 @@ "pino-pretty": "11.0.0", "rimraf": "5.0.5", "tsx": "4.7.2", - "typescript": "5.4.4" + "typescript": "5.4.5" } }, "internal/eslint-config": { @@ -463,7 +463,7 @@ "eslint-config-prettier": "9.1.0", "eslint-config-turbo": "1.13.2", "eslint-plugin-only-warn": "1.1.0", - "typescript": "5.4.4" + "typescript": "5.4.5" } }, "internal/eslint-config/node_modules/@next/eslint-plugin-next": { @@ -587,7 +587,7 @@ "@repo/typescript-config": "*", "@types/node": "20.12.7", "rimraf": "5.0.5", - "typescript": "5.4.4" + "typescript": "5.4.5" } }, "internal/next-common/node_modules/next": { @@ -651,7 +651,7 @@ "@repo/typescript-config": "*", "@types/node": "20.12.7", "rimraf": "5.0.5", - "typescript": "5.4.4" + "typescript": "5.4.5" } }, "internal/prettier-config": { @@ -16025,9 +16025,9 @@ } }, "node_modules/typescript": { - "version": "5.4.4", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.4.4.tgz", - "integrity": "sha512-dGE2Vv8cpVvw28v8HCPqyb08EzbBURxDpuhJvTrusShUfGnhHBafDsLdS1EhhxyL6BJQE+2cT3dDPAv+MQ6oLw==", + "version": "5.4.5", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.4.5.tgz", + "integrity": "sha512-vcI4UpRgg81oIRUFwR0WSIHKt11nJ7SAVlYNIu+QpqeyXP+gpQJy/Z4+F0aGxSE4MqwjyXvW/TzgkLAx2AGHwQ==", "dev": true, "bin": { "tsc": "bin/tsc", @@ -17030,7 +17030,7 @@ "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.2", - "typescript": "5.4.4" + "typescript": "5.4.5" }, "peerDependencies": { "next": ">=13.5.1", @@ -17048,7 +17048,7 @@ "@types/node": "20.12.7", "rimraf": "5.0.5", "tsup": "8.0.2", - "typescript": "5.4.4" + "typescript": "5.4.5" }, "peerDependencies": { "dotenv": "^16.3.1", @@ -17065,7 +17065,7 @@ "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.2", - "typescript": "5.4.4" + "typescript": "5.4.5" } }, "packages/server": { @@ -17087,7 +17087,7 @@ "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.2", - "typescript": "5.4.4" + "typescript": "5.4.5" } } } diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 91428cb6..5e19b080 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -76,7 +76,7 @@ "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.2", - "typescript": "5.4.4" + "typescript": "5.4.5" }, "peerDependencies": { "next": ">=13.5.1", diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index a60e0f44..45d33c8d 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -28,7 +28,7 @@ "@types/node": "20.12.7", "rimraf": "5.0.5", "tsup": "8.0.2", - "typescript": "5.4.4" + "typescript": "5.4.5" }, "peerDependencies": { "dotenv": "^16.3.1", diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 0267ac34..029625a8 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -32,6 +32,6 @@ "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.2", - "typescript": "5.4.4" + "typescript": "5.4.5" } } diff --git a/packages/server/package.json b/packages/server/package.json index 43f05546..77ffc9d3 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -36,7 +36,7 @@ "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.7.2", - "typescript": "5.4.4" + "typescript": "5.4.5" }, "distTags": [ "next13.5", From cf43d31e6632bb0294324355f325add727a26f50 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 12 Apr 2024 23:34:05 +0300 Subject: [PATCH 190/458] Bump the definitely-typed group with 2 updates (#465) Bumps the definitely-typed group with 2 updates: [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) and [@types/react-dom](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react-dom). Updates `@types/react` from 18.2.75 to 18.2.76 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react) Updates `@types/react-dom` from 18.2.24 to 18.2.25 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react-dom) --- updated-dependencies: - dependency-name: "@types/react" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed - dependency-name: "@types/react-dom" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 4 ++-- docs/cache-handler-docs/package.json | 4 ++-- package-lock.json | 20 ++++++++++---------- 3 files changed, 14 insertions(+), 14 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index afefb655..42ebfebe 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -29,8 +29,8 @@ "@repo/typescript-config": "*", "@types/eslint": "8.56.7", "@types/node": "20.12.7", - "@types/react": "18.2.75", - "@types/react-dom": "18.2.24", + "@types/react": "18.2.76", + "@types/react-dom": "18.2.25", "axios": "1.6.8", "dotenv-cli": "7.4.1", "eslint": "8.57.0", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 1d0ad966..c08d3970 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -23,8 +23,8 @@ "@repo/typescript-config": "*", "@types/eslint": "8.56.7", "@types/node": "20.12.7", - "@types/react": "18.2.75", - "@types/react-dom": "18.2.24", + "@types/react": "18.2.76", + "@types/react-dom": "18.2.25", "eslint": "8.57.0", "typescript": "5.4.5" } diff --git a/package-lock.json b/package-lock.json index 3cd0df83..02254a82 100644 --- a/package-lock.json +++ b/package-lock.json @@ -49,8 +49,8 @@ "@repo/typescript-config": "*", "@types/eslint": "8.56.7", "@types/node": "20.12.7", - "@types/react": "18.2.75", - "@types/react-dom": "18.2.24", + "@types/react": "18.2.76", + "@types/react-dom": "18.2.25", "axios": "1.6.8", "dotenv-cli": "7.4.1", "eslint": "8.57.0", @@ -126,8 +126,8 @@ "@repo/typescript-config": "*", "@types/eslint": "8.56.7", "@types/node": "20.12.7", - "@types/react": "18.2.75", - "@types/react-dom": "18.2.24", + "@types/react": "18.2.76", + "@types/react-dom": "18.2.25", "eslint": "8.57.0", "typescript": "5.4.5" } @@ -3718,18 +3718,18 @@ "integrity": "sha512-5zvhXYtRNRluoE/jAp4GVsSduVUzNWKkOZrCDBWYtE7biZywwdC2AcEzg+cSMLFRfVgeAFqpfNabiPjxFddV1Q==" }, "node_modules/@types/react": { - "version": "18.2.75", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.75.tgz", - "integrity": "sha512-+DNnF7yc5y0bHkBTiLKqXFe+L4B3nvOphiMY3tuA5X10esmjqk7smyBZzbGTy2vsiy/Bnzj8yFIBL8xhRacoOg==", + "version": "18.2.76", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.76.tgz", + "integrity": "sha512-T6z/v7YxpswDM61Vq5KoSPTJqCkroJfsDIsvXCr4+qOY6gik5Ju4w0jf67cpC5z7ydOnp/E0V0W08pDRy8u9Xw==", "dependencies": { "@types/prop-types": "*", "csstype": "^3.0.2" } }, "node_modules/@types/react-dom": { - "version": "18.2.24", - "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.2.24.tgz", - "integrity": "sha512-cN6upcKd8zkGy4HU9F1+/s98Hrp6D4MOcippK4PoE8OZRngohHZpbJn1GsaDLz87MqvHNoT13nHvNqM9ocRHZg==", + "version": "18.2.25", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.2.25.tgz", + "integrity": "sha512-o/V48vf4MQh7juIKZU2QGDfli6p1+OOi5oXx36Hffpc9adsHeXjVp8rHuPkjd8VT8sOJ2Zp05HR7CdpGTIUFUA==", "dev": true, "dependencies": { "@types/react": "*" From d3973704b18354ead8d2782c42cbb4bb832a5597 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 14 Apr 2024 10:54:20 +0300 Subject: [PATCH 191/458] Bump @playwright/test from 1.43.0 to 1.43.1 (#467) Bumps [@playwright/test](https://github.com/microsoft/playwright) from 1.43.0 to 1.43.1. - [Release notes](https://github.com/microsoft/playwright/releases) - [Commits](https://github.com/microsoft/playwright/compare/v1.43.0...v1.43.1) --- updated-dependencies: - dependency-name: "@playwright/test" dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- package-lock.json | 24 ++++++++++++------------ 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 42ebfebe..2c839ee7 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -24,7 +24,7 @@ "devDependencies": { "@neshca/cache-handler": "*", "@next/eslint-plugin-next": "14.2.0-canary.61", - "@playwright/test": "1.43.0", + "@playwright/test": "1.43.1", "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", diff --git a/package-lock.json b/package-lock.json index 02254a82..47e43ebf 100644 --- a/package-lock.json +++ b/package-lock.json @@ -44,7 +44,7 @@ "devDependencies": { "@neshca/cache-handler": "*", "@next/eslint-plugin-next": "14.2.0-canary.61", - "@playwright/test": "1.43.0", + "@playwright/test": "1.43.1", "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", @@ -2988,12 +2988,12 @@ } }, "node_modules/@playwright/test": { - "version": "1.43.0", - "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.43.0.tgz", - "integrity": "sha512-Ebw0+MCqoYflop7wVKj711ccbNlrwTBCtjY5rlbiY9kHL2bCYxq+qltK6uPsVBGGAOb033H2VO0YobcQVxoW7Q==", + "version": "1.43.1", + "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.43.1.tgz", + "integrity": "sha512-HgtQzFgNEEo4TE22K/X7sYTYNqEMMTZmFS8kTq6m8hXj+m1D8TgwgIbumHddJa9h4yl4GkKb8/bgAl2+g7eDgA==", "devOptional": true, "dependencies": { - "playwright": "1.43.0" + "playwright": "1.43.1" }, "bin": { "playwright": "cli.js" @@ -12878,12 +12878,12 @@ } }, "node_modules/playwright": { - "version": "1.43.0", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.43.0.tgz", - "integrity": "sha512-SiOKHbVjTSf6wHuGCbqrEyzlm6qvXcv7mENP+OZon1I07brfZLGdfWV0l/efAzVx7TF3Z45ov1gPEkku9q25YQ==", + "version": "1.43.1", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.43.1.tgz", + "integrity": "sha512-V7SoH0ai2kNt1Md9E3Gwas5B9m8KR2GVvwZnAI6Pg0m3sh7UvgiYhRrhsziCmqMJNouPckiOhk8T+9bSAK0VIA==", "devOptional": true, "dependencies": { - "playwright-core": "1.43.0" + "playwright-core": "1.43.1" }, "bin": { "playwright": "cli.js" @@ -12896,9 +12896,9 @@ } }, "node_modules/playwright-core": { - "version": "1.43.0", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.43.0.tgz", - "integrity": "sha512-iWFjyBUH97+pUFiyTqSLd8cDMMOS0r2ZYz2qEsPjH8/bX++sbIJT35MSwKnp1r/OQBAqC5XO99xFbJ9XClhf4w==", + "version": "1.43.1", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.43.1.tgz", + "integrity": "sha512-EI36Mto2Vrx6VF7rm708qSnesVQKbxEWvPrfA1IPY6HgczBplDx7ENtx+K2n4kJ41sLLkuGfmb0ZLSSXlDhqPg==", "devOptional": true, "bin": { "playwright-core": "cli.js" From 640f2803610ce4f3c605537677d5e48ca8ebda18 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 14 Apr 2024 11:03:22 +0300 Subject: [PATCH 192/458] Bump @types/react from 18.2.76 to 18.2.78 in the definitely-typed group (#469) Bumps the definitely-typed group with 1 update: [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react). Updates `@types/react` from 18.2.76 to 18.2.78 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react) --- updated-dependencies: - dependency-name: "@types/react" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- package-lock.json | 10 +++++----- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 2c839ee7..20199ecf 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -29,7 +29,7 @@ "@repo/typescript-config": "*", "@types/eslint": "8.56.7", "@types/node": "20.12.7", - "@types/react": "18.2.76", + "@types/react": "18.2.78", "@types/react-dom": "18.2.25", "axios": "1.6.8", "dotenv-cli": "7.4.1", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index c08d3970..c128534d 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -23,7 +23,7 @@ "@repo/typescript-config": "*", "@types/eslint": "8.56.7", "@types/node": "20.12.7", - "@types/react": "18.2.76", + "@types/react": "18.2.78", "@types/react-dom": "18.2.25", "eslint": "8.57.0", "typescript": "5.4.5" diff --git a/package-lock.json b/package-lock.json index 47e43ebf..c333533d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -49,7 +49,7 @@ "@repo/typescript-config": "*", "@types/eslint": "8.56.7", "@types/node": "20.12.7", - "@types/react": "18.2.76", + "@types/react": "18.2.78", "@types/react-dom": "18.2.25", "axios": "1.6.8", "dotenv-cli": "7.4.1", @@ -126,7 +126,7 @@ "@repo/typescript-config": "*", "@types/eslint": "8.56.7", "@types/node": "20.12.7", - "@types/react": "18.2.76", + "@types/react": "18.2.78", "@types/react-dom": "18.2.25", "eslint": "8.57.0", "typescript": "5.4.5" @@ -3718,9 +3718,9 @@ "integrity": "sha512-5zvhXYtRNRluoE/jAp4GVsSduVUzNWKkOZrCDBWYtE7biZywwdC2AcEzg+cSMLFRfVgeAFqpfNabiPjxFddV1Q==" }, "node_modules/@types/react": { - "version": "18.2.76", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.76.tgz", - "integrity": "sha512-T6z/v7YxpswDM61Vq5KoSPTJqCkroJfsDIsvXCr4+qOY6gik5Ju4w0jf67cpC5z7ydOnp/E0V0W08pDRy8u9Xw==", + "version": "18.2.78", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.78.tgz", + "integrity": "sha512-qOwdPnnitQY4xKlKayt42q5W5UQrSHjgoXNVEtxeqdITJ99k4VXJOP3vt8Rkm9HmgJpH50UNU+rlqfkfWOqp0A==", "dependencies": { "@types/prop-types": "*", "csstype": "^3.0.2" From 76bcdcdecd0bd022d6e77c98ad7f9cae3146896a Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Sun, 14 Apr 2024 11:21:42 +0300 Subject: [PATCH 193/458] Add experimental `neshCache` function and related documentation (#468) --- .changeset/honest-schools-study.md | 12 + README.md | 1 + .../with-params/nesh-cache/[slug]/page.tsx | 28 ++ .../src/utils/create-get-data.ts | 68 ++- apps/cache-testing/tests/app.spec.ts | 1 + docs/cache-handler-docs/src/pages/_meta.json | 1 + .../src/pages/functions/_meta.json | 3 + .../src/pages/functions/nesh-cache.mdx | 60 +++ docs/cache-handler-docs/theme.config.jsx | 6 +- internal/next-common/src/next-common.ts | 5 + package-lock.json | 386 ++++++++++-------- packages/cache-handler/README.md | 3 +- packages/cache-handler/package.json | 7 + .../cache-handler/src/functions/functions.ts | 1 + .../cache-handler/src/functions/nesh-cache.ts | 329 +++++++++++++++ packages/cache-handler/tsup.config.ts | 2 +- 16 files changed, 731 insertions(+), 182 deletions(-) create mode 100644 .changeset/honest-schools-study.md create mode 100644 apps/cache-testing/src/app/app/with-params/nesh-cache/[slug]/page.tsx create mode 100644 docs/cache-handler-docs/src/pages/functions/_meta.json create mode 100644 docs/cache-handler-docs/src/pages/functions/nesh-cache.mdx create mode 100644 packages/cache-handler/src/functions/functions.ts create mode 100644 packages/cache-handler/src/functions/nesh-cache.ts diff --git a/.changeset/honest-schools-study.md b/.changeset/honest-schools-study.md new file mode 100644 index 00000000..61a445f4 --- /dev/null +++ b/.changeset/honest-schools-study.md @@ -0,0 +1,12 @@ +--- +'@neshca/cache-handler': minor +--- + +Add experimental `neshCache` function and related documentation. + +#### New features + +##### `@neshca/cache-handler/functions` + +- add new endpoint `@neshca/cache-handler/functions` with useful application-side functions +- add experimental function `neshCache` and related documentation diff --git a/README.md b/README.md index 157c62dd..f15850a1 100644 --- a/README.md +++ b/README.md @@ -21,6 +21,7 @@ Next.js applications are often deployed in a self-hosted distributed environment - Simplified on-demand revalidation, akin to managing a single application instance. - TTL by default to keep cache storage clean and space-efficient. - One configuration for both Routes. +- [`neshCache`](https://caching-tools.github.io/next-shared-cache/functions/nesh-cache) application-side function. ### Kickstarting Your Custom Cache Solution diff --git a/apps/cache-testing/src/app/app/with-params/nesh-cache/[slug]/page.tsx b/apps/cache-testing/src/app/app/with-params/nesh-cache/[slug]/page.tsx new file mode 100644 index 00000000..3e69dff3 --- /dev/null +++ b/apps/cache-testing/src/app/app/with-params/nesh-cache/[slug]/page.tsx @@ -0,0 +1,28 @@ +import { notFound } from 'next/navigation'; + +import { CommonAppPage } from 'cache-testing/utils/common-app-page'; +import { createGetData } from 'cache-testing/utils/create-get-data'; + +type PageParams = { params: { slug: string } }; + +export const dynamicParams = true; + +export const revalidate = 5; + +const getData = createGetData('app/with-params/nesh-cache', revalidate, 'nesh-cache'); + +export function generateStaticParams(): Promise { + return Promise.resolve([{ slug: '200' }, { slug: '404' }, { slug: 'alternate-200-404' }]); +} + +export default async function Index({ params }: PageParams): Promise { + const data = await getData(params.slug); + + if (!data) { + notFound(); + } + + const { count, path, time } = data; + + return ; +} diff --git a/apps/cache-testing/src/utils/create-get-data.ts b/apps/cache-testing/src/utils/create-get-data.ts index 4f712625..292c27d7 100644 --- a/apps/cache-testing/src/utils/create-get-data.ts +++ b/apps/cache-testing/src/utils/create-get-data.ts @@ -1,3 +1,4 @@ +import { neshCache } from '@neshca/cache-handler/functions'; import axios from 'axios'; import { unstable_cache } from 'next/cache'; import { normalizeSlug } from './normalize-slug'; @@ -11,7 +12,13 @@ async function getViaAxios(url: URL) { } } -export function createGetData(path: string, revalidate?: number, cache?: RequestCache | 'unstable-cache') { +const cachedAxios = neshCache(getViaAxios); + +export function createGetData( + path: string, + revalidate?: number, + cache?: RequestCache | 'unstable-cache' | 'nesh-cache', +) { return async function getData(slug: string): Promise | null> { const pathAndTag = `/${path}/${normalizeSlug(slug)}`; @@ -21,30 +28,55 @@ export function createGetData(path: string, revalidate?: number, cache?: Request const tags = [pathAndTag, 'whole-app-route']; - if (cache === 'unstable-cache') { - const cachedGet = unstable_cache(getViaAxios, tags, { - revalidate, - tags, - }); + switch (cache) { + case 'unstable-cache': { + const cachedGet = unstable_cache(getViaAxios, tags, { + revalidate, + tags, + }); + + const data = await cachedGet(url); - const data = await cachedGet(url); + if (!data) { + return null; + } - if (!data) { - return null; + parsedResult = data; + + break; } + case 'nesh-cache': { + const data = await cachedAxios( + { + revalidate, + tags, + }, + url, + ); + + if (!data) { + return null; + } - parsedResult = data; - } else { - const result = await fetch(url, { - cache, - next: { revalidate, tags }, - }); + parsedResult = data; - if (!result.ok) { - return null; + break; } - parsedResult = (await result.json()) as CountBackendApiResponseJson; + default: { + const result = await fetch(url, { + cache, + next: { revalidate, tags }, + }); + + if (!result.ok) { + return null; + } + + parsedResult = (await result.json()) as CountBackendApiResponseJson; + + break; + } } const newData = { count: parsedResult.count, path, time: parsedResult.unixTimeMs }; diff --git a/apps/cache-testing/tests/app.spec.ts b/apps/cache-testing/tests/app.spec.ts index 64e9356c..f0a57e49 100644 --- a/apps/cache-testing/tests/app.spec.ts +++ b/apps/cache-testing/tests/app.spec.ts @@ -4,6 +4,7 @@ import { refreshPageCache, revalidateByPath, revalidateByTag } from './test-help const paths = [ '/app/with-params/dynamic-true/200', + '/app/with-params/nesh-cache/200', // '/app/with-params/dynamic-false/200', // this fails with native next.js cache '/app/no-params/dynamic-true/200', '/app/no-params/dynamic-false/200', diff --git a/docs/cache-handler-docs/src/pages/_meta.json b/docs/cache-handler-docs/src/pages/_meta.json index 88f8a946..fdf9da87 100644 --- a/docs/cache-handler-docs/src/pages/_meta.json +++ b/docs/cache-handler-docs/src/pages/_meta.json @@ -11,6 +11,7 @@ }, "configuration": "Configuration", "api-reference": "API reference", + "functions": "Functions", "-- Usage": { "type": "separator", "title": "Usage" diff --git a/docs/cache-handler-docs/src/pages/functions/_meta.json b/docs/cache-handler-docs/src/pages/functions/_meta.json new file mode 100644 index 00000000..22765203 --- /dev/null +++ b/docs/cache-handler-docs/src/pages/functions/_meta.json @@ -0,0 +1,3 @@ +{ + "nesh-cache": "neshCache" +} diff --git a/docs/cache-handler-docs/src/pages/functions/nesh-cache.mdx b/docs/cache-handler-docs/src/pages/functions/nesh-cache.mdx new file mode 100644 index 00000000..c3ad8492 --- /dev/null +++ b/docs/cache-handler-docs/src/pages/functions/nesh-cache.mdx @@ -0,0 +1,60 @@ +# nashCache + +`nashCache` allows you to cache the results of expensive operations, like database queries, and reuse them across multiple requests. Unlike Next.js' `unstable_cache` function, `nashCache` passes all e2e tests, and provides more control over the cache's behavior such as customizing the serialization and deserialization of the cache data. It allows to store any type of data in the cache and not just JSON serializable data. + +This function is experimental, the API may change in the future. Use with caution. + +## Parameters + +### `fetchData` + +This is an asynchronous function that fetches the data you want to cache. It must be a function that returns a `Promise`. + +### `commonOptions` + +This is an object that controls how the cache behaves. It can contain the following properties: + +- `tags` - An array of tags to associate with the cached result. Tags are used to revalidate the cache using the `revalidateTag` and `revalidatePath` functions. + +- `revalidate` - The revalidation interval in milliseconds. Must be a positive integer or `false` to disable revalidation. Defaults to `export const revalidate = time;` in the current route. + +- `argumentsSerializer` - A function that serializes the arguments passed to the callback function. Use it to create a cache key. Defaults to `JSON.stringify(args)`. + +- `resultSerializer` - A function that serializes the result of the callback function.Defaults to `Buffer.from(JSON.stringify(data)).toString('base64')`. + +- `resultDeserializer` - A function that deserializes the string representation of the result of the callback function. Defaults to `JSON.parse(Buffer.from(data, 'base64').toString('utf-8'))`. + +## Returns + +`nashCache` returns a function that when invoked, returns a `Promise` that resolves to the cached data. If the data is not in the cache, the provided function will be invoked, and its result will be cached and returned. The first argument is the `options` which can be used to override the common [`options`](/functions/nesh-cache#commonoptions). In addition, there is a `cacheKey` option that can be used to provide a custom cache key. + +## Example + +```jsx filename="./src/app/page.js" copy +import { neshCache } from '@neshca/cache-handler/functions'; +import axios from 'axios'; + +async function getViaAxios(url) { + try { + return (await axios.get(url.href)).data; + } catch (_error) { + return null; + } +} + +const cachedAxios = neshCache(getViaAxios); + +export default async function Index() { + const url = new URL('https://api.example.com/data.json'); + + const data = await cachedAxios(url); + + if (!data) { + notFound(); + } + + const { id } = data; + + return

id is {id}
; +} +``` diff --git a/docs/cache-handler-docs/theme.config.jsx b/docs/cache-handler-docs/theme.config.jsx index 51e8b829..1b74eb96 100644 --- a/docs/cache-handler-docs/theme.config.jsx +++ b/docs/cache-handler-docs/theme.config.jsx @@ -53,10 +53,10 @@ export default { ), }, banner: { - key: 'version-1.1.0', + key: 'version-1.2.0', text: ( - - 🎉 1.1.0 is out! It features Full support for the App Router! + + 🎉 1.2.0 is out! It features `neshCache`` application-side function! ), }, diff --git a/internal/next-common/src/next-common.ts b/internal/next-common/src/next-common.ts index 70b5330a..fb62de0d 100644 --- a/internal/next-common/src/next-common.ts +++ b/internal/next-common/src/next-common.ts @@ -19,6 +19,11 @@ export type { IncrementalCacheKindHint, } from 'next/dist/server/response-cache/types'; +export { + type StaticGenerationStore, + staticGenerationAsyncStorage, +} from 'next/dist/client/components/static-generation-async-storage.external.js'; + /** * A set of time periods and timestamps for controlling cache behavior. */ diff --git a/package-lock.json b/package-lock.json index c333533d..2c469c60 100644 --- a/package-lock.json +++ b/package-lock.json @@ -62,6 +62,15 @@ "typescript": "5.4.5" } }, + "apps/cache-testing/node_modules/@types/node": { + "version": "20.12.7", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.7.tgz", + "integrity": "sha512-wq0cICSkRLVaf3UGLMGItu/PtdY7oaXaI/RVU+xliKVOtRna3PRY57ZDfztpDL0n11vfymMUnXv8QwYCO7L1wg==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "apps/cache-testing/node_modules/next": { "version": "14.2.0-canary.61", "resolved": "https://registry.npmjs.org/next/-/next-14.2.0-canary.61.tgz", @@ -289,6 +298,15 @@ "tslib": "^2.4.0" } }, + "docs/cache-handler-docs/node_modules/@types/node": { + "version": "20.12.7", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.7.tgz", + "integrity": "sha512-wq0cICSkRLVaf3UGLMGItu/PtdY7oaXaI/RVU+xliKVOtRna3PRY57ZDfztpDL0n11vfymMUnXv8QwYCO7L1wg==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "docs/cache-handler-docs/node_modules/glob": { "version": "10.3.10", "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", @@ -453,6 +471,15 @@ "typescript": "5.4.5" } }, + "internal/backend/node_modules/@types/node": { + "version": "20.12.7", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.7.tgz", + "integrity": "sha512-wq0cICSkRLVaf3UGLMGItu/PtdY7oaXaI/RVU+xliKVOtRna3PRY57ZDfztpDL0n11vfymMUnXv8QwYCO7L1wg==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "internal/eslint-config": { "name": "@repo/eslint-config", "version": "0.0.0", @@ -467,9 +494,9 @@ } }, "internal/eslint-config/node_modules/@next/eslint-plugin-next": { - "version": "14.1.4", - "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.1.4.tgz", - "integrity": "sha512-n4zYNLSyCo0Ln5b7qxqQeQ34OZKXwgbdcx6kmkQbywr+0k6M3Vinft0T72R6CDAcDrne2IAgSud4uWCzFgc5HA==", + "version": "14.2.1", + "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.2.1.tgz", + "integrity": "sha512-Fp+mthEBjkn8r9qd6o4JgxKp0IDEzW0VYHD8ZC05xS5/lFNwHKuOdr2kVhWG7BQCO9L6eeepshM1Wbs2T+LgSg==", "dev": true, "optional": true, "peer": true, @@ -590,6 +617,15 @@ "typescript": "5.4.5" } }, + "internal/next-common/node_modules/@types/node": { + "version": "20.12.7", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.7.tgz", + "integrity": "sha512-wq0cICSkRLVaf3UGLMGItu/PtdY7oaXaI/RVU+xliKVOtRna3PRY57ZDfztpDL0n11vfymMUnXv8QwYCO7L1wg==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "internal/next-common/node_modules/next": { "version": "14.2.0-canary.61", "resolved": "https://registry.npmjs.org/next/-/next-14.2.0-canary.61.tgz", @@ -654,6 +690,15 @@ "typescript": "5.4.5" } }, + "internal/next-lru-cache/node_modules/@types/node": { + "version": "20.12.7", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.7.tgz", + "integrity": "sha512-wq0cICSkRLVaf3UGLMGItu/PtdY7oaXaI/RVU+xliKVOtRna3PRY57ZDfztpDL0n11vfymMUnXv8QwYCO7L1wg==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "internal/prettier-config": { "name": "@repo/prettier-config", "version": "0.0.0", @@ -663,9 +708,9 @@ } }, "internal/prettier-config/node_modules/@next/eslint-plugin-next": { - "version": "14.1.4", - "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.1.4.tgz", - "integrity": "sha512-n4zYNLSyCo0Ln5b7qxqQeQ34OZKXwgbdcx6kmkQbywr+0k6M3Vinft0T72R6CDAcDrne2IAgSud4uWCzFgc5HA==", + "version": "14.2.1", + "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.2.1.tgz", + "integrity": "sha512-Fp+mthEBjkn8r9qd6o4JgxKp0IDEzW0VYHD8ZC05xS5/lFNwHKuOdr2kVhWG7BQCO9L6eeepshM1Wbs2T+LgSg==", "dev": true, "optional": true, "peer": true, @@ -2291,11 +2336,6 @@ "fs-extra": "^8.1.0" } }, - "node_modules/@manypkg/find-root/node_modules/@types/node": { - "version": "12.20.55", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", - "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" - }, "node_modules/@manypkg/find-root/node_modules/fs-extra": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", @@ -3313,9 +3353,9 @@ "link": true }, "node_modules/@rollup/rollup-android-arm-eabi": { - "version": "4.14.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.14.1.tgz", - "integrity": "sha512-fH8/o8nSUek8ceQnT7K4EQbSiV7jgkHq81m9lWZFIXjJ7lJzpWXbQFpT/Zh6OZYnpFykvzC3fbEvEAFZu03dPA==", + "version": "4.14.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.14.2.tgz", + "integrity": "sha512-ahxSgCkAEk+P/AVO0vYr7DxOD3CwAQrT0Go9BJyGQ9Ef0QxVOfjDZMiF4Y2s3mLyPrjonchIMH/tbWHucJMykQ==", "cpu": [ "arm" ], @@ -3326,9 +3366,9 @@ ] }, "node_modules/@rollup/rollup-android-arm64": { - "version": "4.14.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.14.1.tgz", - "integrity": "sha512-Y/9OHLjzkunF+KGEoJr3heiD5X9OLa8sbT1lm0NYeKyaM3oMhhQFvPB0bNZYJwlq93j8Z6wSxh9+cyKQaxS7PQ==", + "version": "4.14.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.14.2.tgz", + "integrity": "sha512-lAarIdxZWbFSHFSDao9+I/F5jDaKyCqAPMq5HqnfpBw8dKDiCaaqM0lq5h1pQTLeIqueeay4PieGR5jGZMWprw==", "cpu": [ "arm64" ], @@ -3339,9 +3379,9 @@ ] }, "node_modules/@rollup/rollup-darwin-arm64": { - "version": "4.14.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.14.1.tgz", - "integrity": "sha512-+kecg3FY84WadgcuSVm6llrABOdQAEbNdnpi5X3UwWiFVhZIZvKgGrF7kmLguvxHNQy+UuRV66cLVl3S+Rkt+Q==", + "version": "4.14.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.14.2.tgz", + "integrity": "sha512-SWsr8zEUk82KSqquIMgZEg2GE5mCSfr9sE/thDROkX6pb3QQWPp8Vw8zOq2GyxZ2t0XoSIUlvHDkrf5Gmf7x3Q==", "cpu": [ "arm64" ], @@ -3352,9 +3392,9 @@ ] }, "node_modules/@rollup/rollup-darwin-x64": { - "version": "4.14.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.14.1.tgz", - "integrity": "sha512-2pYRzEjVqq2TB/UNv47BV/8vQiXkFGVmPFwJb+1E0IFFZbIX8/jo1olxqqMbo6xCXf8kabANhp5bzCij2tFLUA==", + "version": "4.14.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.14.2.tgz", + "integrity": "sha512-o/HAIrQq0jIxJAhgtIvV5FWviYK4WB0WwV91SLUnsliw1lSAoLsmgEEgRWzDguAFeUEUUoIWXiJrPqU7vGiVkA==", "cpu": [ "x64" ], @@ -3365,9 +3405,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm-gnueabihf": { - "version": "4.14.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.14.1.tgz", - "integrity": "sha512-mS6wQ6Do6/wmrF9aTFVpIJ3/IDXhg1EZcQFYHZLHqw6AzMBjTHWnCG35HxSqUNphh0EHqSM6wRTT8HsL1C0x5g==", + "version": "4.14.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.14.2.tgz", + "integrity": "sha512-nwlJ65UY9eGq91cBi6VyDfArUJSKOYt5dJQBq8xyLhvS23qO+4Nr/RreibFHjP6t+5ap2ohZrUJcHv5zk5ju/g==", "cpu": [ "arm" ], @@ -3378,9 +3418,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-gnu": { - "version": "4.14.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.14.1.tgz", - "integrity": "sha512-p9rGKYkHdFMzhckOTFubfxgyIO1vw//7IIjBBRVzyZebWlzRLeNhqxuSaZ7kCEKVkm/kuC9fVRW9HkC/zNRG2w==", + "version": "4.14.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.14.2.tgz", + "integrity": "sha512-Pg5TxxO2IVlMj79+c/9G0LREC9SY3HM+pfAwX7zj5/cAuwrbfj2Wv9JbMHIdPCfQpYsI4g9mE+2Bw/3aeSs2rQ==", "cpu": [ "arm64" ], @@ -3391,9 +3431,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-musl": { - "version": "4.14.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.14.1.tgz", - "integrity": "sha512-nDY6Yz5xS/Y4M2i9JLQd3Rofh5OR8Bn8qe3Mv/qCVpHFlwtZSBYSPaU4mrGazWkXrdQ98GB//H0BirGR/SKFSw==", + "version": "4.14.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.14.2.tgz", + "integrity": "sha512-cAOTjGNm84gc6tS02D1EXtG7tDRsVSDTBVXOLbj31DkwfZwgTPYZ6aafSU7rD/4R2a34JOwlF9fQayuTSkoclA==", "cpu": [ "arm64" ], @@ -3404,11 +3444,11 @@ ] }, "node_modules/@rollup/rollup-linux-powerpc64le-gnu": { - "version": "4.14.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.14.1.tgz", - "integrity": "sha512-im7HE4VBL+aDswvcmfx88Mp1soqL9OBsdDBU8NqDEYtkri0qV0THhQsvZtZeNNlLeCUQ16PZyv7cqutjDF35qw==", + "version": "4.14.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.14.2.tgz", + "integrity": "sha512-4RyT6v1kXb7C0fn6zV33rvaX05P0zHoNzaXI/5oFHklfKm602j+N4mn2YvoezQViRLPnxP8M1NaY4s/5kXO5cw==", "cpu": [ - "ppc64le" + "ppc64" ], "dev": true, "optional": true, @@ -3417,9 +3457,9 @@ ] }, "node_modules/@rollup/rollup-linux-riscv64-gnu": { - "version": "4.14.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.14.1.tgz", - "integrity": "sha512-RWdiHuAxWmzPJgaHJdpvUUlDz8sdQz4P2uv367T2JocdDa98iRw2UjIJ4QxSyt077mXZT2X6pKfT2iYtVEvOFw==", + "version": "4.14.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.14.2.tgz", + "integrity": "sha512-KNUH6jC/vRGAKSorySTyc/yRYlCwN/5pnMjXylfBniwtJx5O7X17KG/0efj8XM3TZU7raYRXJFFReOzNmL1n1w==", "cpu": [ "riscv64" ], @@ -3430,9 +3470,9 @@ ] }, "node_modules/@rollup/rollup-linux-s390x-gnu": { - "version": "4.14.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.14.1.tgz", - "integrity": "sha512-VMgaGQ5zRX6ZqV/fas65/sUGc9cPmsntq2FiGmayW9KMNfWVG/j0BAqImvU4KTeOOgYSf1F+k6at1UfNONuNjA==", + "version": "4.14.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.14.2.tgz", + "integrity": "sha512-xPV4y73IBEXToNPa3h5lbgXOi/v0NcvKxU0xejiFw6DtIYQqOTMhZ2DN18/HrrP0PmiL3rGtRG9gz1QE8vFKXQ==", "cpu": [ "s390x" ], @@ -3443,9 +3483,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-gnu": { - "version": "4.14.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.14.1.tgz", - "integrity": "sha512-9Q7DGjZN+hTdJomaQ3Iub4m6VPu1r94bmK2z3UeWP3dGUecRC54tmVu9vKHTm1bOt3ASoYtEz6JSRLFzrysKlA==", + "version": "4.14.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.14.2.tgz", + "integrity": "sha512-QBhtr07iFGmF9egrPOWyO5wciwgtzKkYPNLVCFZTmr4TWmY0oY2Dm/bmhHjKRwZoGiaKdNcKhFtUMBKvlchH+Q==", "cpu": [ "x64" ], @@ -3456,9 +3496,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-musl": { - "version": "4.14.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.14.1.tgz", - "integrity": "sha512-JNEG/Ti55413SsreTguSx0LOVKX902OfXIKVg+TCXO6Gjans/k9O6ww9q3oLGjNDaTLxM+IHFMeXy/0RXL5R/g==", + "version": "4.14.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.14.2.tgz", + "integrity": "sha512-8zfsQRQGH23O6qazZSFY5jP5gt4cFvRuKTpuBsC1ZnSWxV8ZKQpPqOZIUtdfMOugCcBvFGRa1pDC/tkf19EgBw==", "cpu": [ "x64" ], @@ -3469,9 +3509,9 @@ ] }, "node_modules/@rollup/rollup-win32-arm64-msvc": { - "version": "4.14.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.14.1.tgz", - "integrity": "sha512-ryS22I9y0mumlLNwDFYZRDFLwWh3aKaC72CWjFcFvxK0U6v/mOkM5Up1bTbCRAhv3kEIwW2ajROegCIQViUCeA==", + "version": "4.14.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.14.2.tgz", + "integrity": "sha512-H4s8UjgkPnlChl6JF5empNvFHp77Jx+Wfy2EtmYPe9G22XV+PMuCinZVHurNe8ggtwoaohxARJZbaH/3xjB/FA==", "cpu": [ "arm64" ], @@ -3482,9 +3522,9 @@ ] }, "node_modules/@rollup/rollup-win32-ia32-msvc": { - "version": "4.14.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.14.1.tgz", - "integrity": "sha512-TdloItiGk+T0mTxKx7Hp279xy30LspMso+GzQvV2maYePMAWdmrzqSNZhUpPj3CGw12aGj57I026PgLCTu8CGg==", + "version": "4.14.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.14.2.tgz", + "integrity": "sha512-djqpAjm/i8erWYF0K6UY4kRO3X5+T4TypIqw60Q8MTqSBaQNpNXDhxdjpZ3ikgb+wn99svA7jxcXpiyg9MUsdw==", "cpu": [ "ia32" ], @@ -3495,9 +3535,9 @@ ] }, "node_modules/@rollup/rollup-win32-x64-msvc": { - "version": "4.14.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.14.1.tgz", - "integrity": "sha512-wQGI+LY/Py20zdUPq+XCem7JcPOyzIJBm3dli+56DJsQOHbnXZFEwgmnC6el1TPAfC8lBT3m+z69RmLykNUbew==", + "version": "4.14.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.14.2.tgz", + "integrity": "sha512-teAqzLT0yTYZa8ZP7zhFKEx4cotS8Tkk5XiqNMJhD4CpaWB1BHARE4Qy+RzwnXvSAYv+Q3jAqCVBS+PS+Yee8Q==", "cpu": [ "x64" ], @@ -3528,11 +3568,11 @@ } }, "node_modules/@tanstack/react-virtual": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@tanstack/react-virtual/-/react-virtual-3.2.0.tgz", - "integrity": "sha512-OEdMByf2hEfDa6XDbGlZN8qO6bTjlNKqjM3im9JG+u3mCL8jALy0T/67oDI001raUUPh1Bdmfn4ZvPOV5knpcg==", + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/@tanstack/react-virtual/-/react-virtual-3.2.1.tgz", + "integrity": "sha512-i9Nt0ssIh2bSjomJZlr6Iq5usT/9+ewo2/fKHRNk6kjVKS8jrhXbnO8NEawarCuBx/efv0xpoUUKKGxa0cQb4Q==", "dependencies": { - "@tanstack/virtual-core": "3.2.0" + "@tanstack/virtual-core": "3.2.1" }, "funding": { "type": "github", @@ -3544,9 +3584,9 @@ } }, "node_modules/@tanstack/virtual-core": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@tanstack/virtual-core/-/virtual-core-3.2.0.tgz", - "integrity": "sha512-P5XgYoAw/vfW65byBbJQCw+cagdXDT/qH6wmABiLt4v4YBT2q2vqCOhihe+D1Nt325F/S/0Tkv6C5z0Lv+VBQQ==", + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/@tanstack/virtual-core/-/virtual-core-3.2.1.tgz", + "integrity": "sha512-nO0d4vRzsmpBQCJYyClNHPPoUMI4nXNfrm6IcCRL33ncWMoNVpURh9YebEHPw8KrtsP2VSJIHE4gf4XFGk1OGg==", "funding": { "type": "github", "url": "https://github.com/sponsors/tannerlinsley" @@ -3675,9 +3715,9 @@ } }, "node_modules/@types/mdx": { - "version": "2.0.12", - "resolved": "https://registry.npmjs.org/@types/mdx/-/mdx-2.0.12.tgz", - "integrity": "sha512-H9VZ9YqE+H28FQVchC83RCs5xQ2J7mAAv6qdDEaWmXEVl3OpdH+xfrSUzQ1lp7U7oSTRZ0RvW08ASPJsYBi7Cw==" + "version": "2.0.13", + "resolved": "https://registry.npmjs.org/@types/mdx/-/mdx-2.0.13.tgz", + "integrity": "sha512-+OWZQfAYyio6YkJb3HLxDrvnx6SWWDbC0zVPfBRzUk0/nqoDyf6dNxQi3eArPe8rJ473nobTMQ/8Zk+LxJ+Yuw==" }, "node_modules/@types/minimist": { "version": "1.2.5", @@ -3690,12 +3730,9 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "20.12.7", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.7.tgz", - "integrity": "sha512-wq0cICSkRLVaf3UGLMGItu/PtdY7oaXaI/RVU+xliKVOtRna3PRY57ZDfztpDL0n11vfymMUnXv8QwYCO7L1wg==", - "dependencies": { - "undici-types": "~5.26.4" - } + "version": "12.20.55", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", + "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" }, "node_modules/@types/node-fetch": { "version": "2.6.11", @@ -4880,9 +4917,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001608", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001608.tgz", - "integrity": "sha512-cjUJTQkk9fQlJR2s4HMuPMvTiRggl0rAVMtthQuyOlDWuqHXqN8azLq+pi8B2TjwKJ32diHjUqRIKeFX4z1FoA==", + "version": "1.0.30001609", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001609.tgz", + "integrity": "sha512-JFPQs34lHKx1B5t1EpQpWH4c+29zIyn/haGsbpfq3suuV9v56enjFt23zqijxGTMwy1p/4H2tjnQMY+p1WoAyA==", "funding": [ { "type": "opencollective", @@ -6199,9 +6236,9 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.733", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.733.tgz", - "integrity": "sha512-gUI9nhI2iBGF0OaYYLKOaOtliFMl+Bt1rY7VmEjwxOxqoYLub/D9xmduPEhbw2imE6gYkJKhIE5it+KE2ulVxQ==", + "version": "1.4.736", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.736.tgz", + "integrity": "sha512-Rer6wc3ynLelKNM4lOCg7/zPQj8tPOCB2hzD32PX9wd3hgRRi9MxEbmkFCokzcEhRVMiOVLjnL9ig9cefJ+6+Q==", "dev": true }, "node_modules/elkjs": { @@ -7126,9 +7163,9 @@ } }, "node_modules/eslint-plugin-testing-library": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-testing-library/-/eslint-plugin-testing-library-6.2.0.tgz", - "integrity": "sha512-+LCYJU81WF2yQ+Xu4A135CgK8IszcFcyMF4sWkbiu6Oj+Nel0TrkZq/HvDw0/1WuO3dhDQsZA/OpEMGd0NfcUw==", + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-testing-library/-/eslint-plugin-testing-library-6.2.1.tgz", + "integrity": "sha512-CP2YV/AxtgyrXgizM4648UkuVrFGDcCA8uDmrLytGqtsa7wgC6MTuIQqEAT1Qm4/zCxnC8xRtiGgfEwEt6hmdw==", "dev": true, "dependencies": { "@typescript-eslint/utils": "^5.58.0" @@ -11936,13 +11973,13 @@ } }, "node_modules/next": { - "version": "14.1.4", - "resolved": "https://registry.npmjs.org/next/-/next-14.1.4.tgz", - "integrity": "sha512-1WTaXeSrUwlz/XcnhGTY7+8eiaFvdet5z9u3V2jb+Ek1vFo0VhHKSAIJvDWfQpttWjnyw14kBeq28TPq7bTeEQ==", + "version": "14.2.1", + "resolved": "https://registry.npmjs.org/next/-/next-14.2.1.tgz", + "integrity": "sha512-SF3TJnKdH43PMkCcErLPv+x/DY1YCklslk3ZmwaVoyUfDgHKexuKlf9sEfBQ69w+ue8jQ3msLb+hSj1T19hGag==", "peer": true, "dependencies": { - "@next/env": "14.1.4", - "@swc/helpers": "0.5.2", + "@next/env": "14.2.1", + "@swc/helpers": "0.5.5", "busboy": "1.6.0", "caniuse-lite": "^1.0.30001579", "graceful-fs": "^4.2.11", @@ -11956,18 +11993,19 @@ "node": ">=18.17.0" }, "optionalDependencies": { - "@next/swc-darwin-arm64": "14.1.4", - "@next/swc-darwin-x64": "14.1.4", - "@next/swc-linux-arm64-gnu": "14.1.4", - "@next/swc-linux-arm64-musl": "14.1.4", - "@next/swc-linux-x64-gnu": "14.1.4", - "@next/swc-linux-x64-musl": "14.1.4", - "@next/swc-win32-arm64-msvc": "14.1.4", - "@next/swc-win32-ia32-msvc": "14.1.4", - "@next/swc-win32-x64-msvc": "14.1.4" + "@next/swc-darwin-arm64": "14.2.1", + "@next/swc-darwin-x64": "14.2.1", + "@next/swc-linux-arm64-gnu": "14.2.1", + "@next/swc-linux-arm64-musl": "14.2.1", + "@next/swc-linux-x64-gnu": "14.2.1", + "@next/swc-linux-x64-musl": "14.2.1", + "@next/swc-win32-arm64-msvc": "14.2.1", + "@next/swc-win32-ia32-msvc": "14.2.1", + "@next/swc-win32-x64-msvc": "14.2.1" }, "peerDependencies": { "@opentelemetry/api": "^1.1.0", + "@playwright/test": "^1.41.2", "react": "^18.2.0", "react-dom": "^18.2.0", "sass": "^1.3.0" @@ -11976,6 +12014,9 @@ "@opentelemetry/api": { "optional": true }, + "@playwright/test": { + "optional": true + }, "sass": { "optional": true } @@ -12021,15 +12062,15 @@ } }, "node_modules/next/node_modules/@next/env": { - "version": "14.1.4", - "resolved": "https://registry.npmjs.org/@next/env/-/env-14.1.4.tgz", - "integrity": "sha512-e7X7bbn3Z6DWnDi75UWn+REgAbLEqxI8Tq2pkFOFAMpWAWApz/YCUhtWMWn410h8Q2fYiYL7Yg5OlxMOCfFjJQ==", + "version": "14.2.1", + "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.1.tgz", + "integrity": "sha512-qsHJle3GU3CmVx7pUoXcghX4sRN+vINkbLdH611T8ZlsP//grzqVW87BSUgOZeSAD4q7ZdZicdwNe/20U2janA==", "peer": true }, "node_modules/next/node_modules/@next/swc-darwin-arm64": { - "version": "14.1.4", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.1.4.tgz", - "integrity": "sha512-ubmUkbmW65nIAOmoxT1IROZdmmJMmdYvXIe8211send9ZYJu+SqxSnJM4TrPj9wmL6g9Atvj0S/2cFmMSS99jg==", + "version": "14.2.1", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.1.tgz", + "integrity": "sha512-kGjnjcIJehEcd3rT/3NAATJQndAEELk0J9GmGMXHSC75TMnvpOhONcjNHbjtcWE5HUQnIHy5JVkatrnYm1QhVw==", "cpu": [ "arm64" ], @@ -12043,9 +12084,9 @@ } }, "node_modules/next/node_modules/@next/swc-darwin-x64": { - "version": "14.1.4", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.1.4.tgz", - "integrity": "sha512-b0Xo1ELj3u7IkZWAKcJPJEhBop117U78l70nfoQGo4xUSvv0PJSTaV4U9xQBLvZlnjsYkc8RwQN1HoH/oQmLlQ==", + "version": "14.2.1", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.1.tgz", + "integrity": "sha512-dAdWndgdQi7BK2WSXrx4lae7mYcOYjbHJUhvOUnJjMNYrmYhxbbvJ2xElZpxNxdfA6zkqagIB9He2tQk+l16ew==", "cpu": [ "x64" ], @@ -12059,9 +12100,9 @@ } }, "node_modules/next/node_modules/@next/swc-linux-arm64-gnu": { - "version": "14.1.4", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.1.4.tgz", - "integrity": "sha512-457G0hcLrdYA/u1O2XkRMsDKId5VKe3uKPvrKVOyuARa6nXrdhJOOYU9hkKKyQTMru1B8qEP78IAhf/1XnVqKA==", + "version": "14.2.1", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.1.tgz", + "integrity": "sha512-2ZctfnyFOGvTkoD6L+DtQtO3BfFz4CapoHnyLTXkOxbZkVRgg3TQBUjTD/xKrO1QWeydeo8AWfZRg8539qNKrg==", "cpu": [ "arm64" ], @@ -12075,9 +12116,9 @@ } }, "node_modules/next/node_modules/@next/swc-linux-arm64-musl": { - "version": "14.1.4", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.1.4.tgz", - "integrity": "sha512-l/kMG+z6MB+fKA9KdtyprkTQ1ihlJcBh66cf0HvqGP+rXBbOXX0dpJatjZbHeunvEHoBBS69GYQG5ry78JMy3g==", + "version": "14.2.1", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.1.tgz", + "integrity": "sha512-jazZXctiaanemy4r+TPIpFP36t1mMwWCKMsmrTRVChRqE6putyAxZA4PDujx0SnfvZHosjdkx9xIq9BzBB5tWg==", "cpu": [ "arm64" ], @@ -12091,9 +12132,9 @@ } }, "node_modules/next/node_modules/@next/swc-linux-x64-gnu": { - "version": "14.1.4", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.1.4.tgz", - "integrity": "sha512-BapIFZ3ZRnvQ1uWbmqEGJuPT9cgLwvKtxhK/L2t4QYO7l+/DxXuIGjvp1x8rvfa/x1FFSsipERZK70pewbtJtw==", + "version": "14.2.1", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.1.tgz", + "integrity": "sha512-VjCHWCjsAzQAAo8lkBOLEIkBZFdfW+Z18qcQ056kL4KpUYc8o59JhLDCBlhg+hINQRgzQ2UPGma2AURGOH0+Qg==", "cpu": [ "x64" ], @@ -12107,9 +12148,9 @@ } }, "node_modules/next/node_modules/@next/swc-linux-x64-musl": { - "version": "14.1.4", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.1.4.tgz", - "integrity": "sha512-mqVxTwk4XuBl49qn2A5UmzFImoL1iLm0KQQwtdRJRKl21ylQwwGCxJtIYo2rbfkZHoSKlh/YgztY0qH3wG1xIg==", + "version": "14.2.1", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.1.tgz", + "integrity": "sha512-7HZKYKvAp4nAHiHIbY04finRqjeYvkITOGOurP1aLMexIFG/1+oCnqhGogBdc4lao/lkMW1c+AkwWSzSlLasqw==", "cpu": [ "x64" ], @@ -12123,9 +12164,9 @@ } }, "node_modules/next/node_modules/@next/swc-win32-arm64-msvc": { - "version": "14.1.4", - "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.1.4.tgz", - "integrity": "sha512-xzxF4ErcumXjO2Pvg/wVGrtr9QQJLk3IyQX1ddAC/fi6/5jZCZ9xpuL9Tzc4KPWMFq8GGWFVDMshZOdHGdkvag==", + "version": "14.2.1", + "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.1.tgz", + "integrity": "sha512-YGHklaJ/Cj/F0Xd8jxgj2p8po4JTCi6H7Z3Yics3xJhm9CPIqtl8erlpK1CLv+HInDqEWfXilqatF8YsLxxA2Q==", "cpu": [ "arm64" ], @@ -12139,9 +12180,9 @@ } }, "node_modules/next/node_modules/@next/swc-win32-ia32-msvc": { - "version": "14.1.4", - "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.1.4.tgz", - "integrity": "sha512-WZiz8OdbkpRw6/IU/lredZWKKZopUMhcI2F+XiMAcPja0uZYdMTZQRoQ0WZcvinn9xZAidimE7tN9W5v9Yyfyw==", + "version": "14.2.1", + "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.1.tgz", + "integrity": "sha512-o+ISKOlvU/L43ZhtAAfCjwIfcwuZstiHVXq/BDsZwGqQE0h/81td95MPHliWCnFoikzWcYqh+hz54ZB2FIT8RA==", "cpu": [ "ia32" ], @@ -12155,9 +12196,9 @@ } }, "node_modules/next/node_modules/@next/swc-win32-x64-msvc": { - "version": "14.1.4", - "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.1.4.tgz", - "integrity": "sha512-4Rto21sPfw555sZ/XNLqfxDUNeLhNYGO2dlPqsnuCg8N8a2a9u1ltqBOPQ4vj1Gf7eJC0W2hHG2eYUHuiXgY2w==", + "version": "14.2.1", + "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.1.tgz", + "integrity": "sha512-GmRoTiLcvCLifujlisknv4zu9/C4i9r0ktsA8E51EMqJL4bD4CpO7lDYr7SrUxCR0tS4RVcrqKmCak24T0ohaw==", "cpu": [ "x64" ], @@ -12170,15 +12211,6 @@ "node": ">= 10" } }, - "node_modules/next/node_modules/@swc/helpers": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.2.tgz", - "integrity": "sha512-E4KcWTpoLHqwPHLxidpOqQbcrZVgi0rsmmZXUle1jXmJfuIf/UWpczUJ7MZZ5tlxytgJXyp0w4PGkkeLiuIdZw==", - "peer": true, - "dependencies": { - "tslib": "^2.4.0" - } - }, "node_modules/node-domexception": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/node-domexception/-/node-domexception-1.0.0.tgz", @@ -12461,9 +12493,9 @@ } }, "node_modules/openai": { - "version": "4.33.0", - "resolved": "https://registry.npmjs.org/openai/-/openai-4.33.0.tgz", - "integrity": "sha512-Sh4KvplkvkAREuhb8yZpohqsOo08cBBu6LNWLD8YyMxe8yCxbE+ouJYUs1X2oDPrzQGANj0rFNQYiwW9gWLBOg==", + "version": "4.33.1", + "resolved": "https://registry.npmjs.org/openai/-/openai-4.33.1.tgz", + "integrity": "sha512-0DH572aSxGTT1JPOXgJQ9mjiuSPg/7scPot8hLc5I1mfQxPxLXTZWJpWerKaIWOuPkR2nrB0SamGDEehH8RuWA==", "peer": true, "dependencies": { "@types/node": "^18.11.18", @@ -13310,9 +13342,9 @@ } }, "node_modules/prettier-plugin-packagejson": { - "version": "2.4.14", - "resolved": "https://registry.npmjs.org/prettier-plugin-packagejson/-/prettier-plugin-packagejson-2.4.14.tgz", - "integrity": "sha512-sli+gV5tW7uxvzDZQscaBtSfbyAW2ToL6n/HGt51PipwX9vI7M54vefG0mKSfklVkT29TNGO6Mo6g8c6Z79gmw==", + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/prettier-plugin-packagejson/-/prettier-plugin-packagejson-2.5.0.tgz", + "integrity": "sha512-6XkH3rpin5QEQodBSVNg+rBo4r91g/1mCaRwS1YGdQJZ6jwqrg2UchBsIG9tpS1yK1kNBvOt84OILsX8uHzBGg==", "dev": true, "dependencies": { "sort-package-json": "2.10.0", @@ -14121,9 +14153,9 @@ "integrity": "sha512-IXgzBWvWQwE6PrDI05OvmXUIruQTcoMDzRsOd5CDvHCVLcLHMTSYvOK5Cm46kWqlV3yAbuSpBZdJ5oP5OUoStg==" }, "node_modules/rollup": { - "version": "4.14.1", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.14.1.tgz", - "integrity": "sha512-4LnHSdd3QK2pa1J6dFbfm1HN0D7vSK/ZuZTsdyUAlA6Rr1yTouUTL13HaDOGJVgby461AhrNGBS7sCGXXtT+SA==", + "version": "4.14.2", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.14.2.tgz", + "integrity": "sha512-WkeoTWvuBoFjFAhsEOHKRoZ3r9GfTyhh7Vff1zwebEFLEFjT1lG3784xEgKiTa7E+e70vsC81roVL2MP4tgEEQ==", "dev": true, "dependencies": { "@types/estree": "1.0.5" @@ -14136,21 +14168,21 @@ "npm": ">=8.0.0" }, "optionalDependencies": { - "@rollup/rollup-android-arm-eabi": "4.14.1", - "@rollup/rollup-android-arm64": "4.14.1", - "@rollup/rollup-darwin-arm64": "4.14.1", - "@rollup/rollup-darwin-x64": "4.14.1", - "@rollup/rollup-linux-arm-gnueabihf": "4.14.1", - "@rollup/rollup-linux-arm64-gnu": "4.14.1", - "@rollup/rollup-linux-arm64-musl": "4.14.1", - "@rollup/rollup-linux-powerpc64le-gnu": "4.14.1", - "@rollup/rollup-linux-riscv64-gnu": "4.14.1", - "@rollup/rollup-linux-s390x-gnu": "4.14.1", - "@rollup/rollup-linux-x64-gnu": "4.14.1", - "@rollup/rollup-linux-x64-musl": "4.14.1", - "@rollup/rollup-win32-arm64-msvc": "4.14.1", - "@rollup/rollup-win32-ia32-msvc": "4.14.1", - "@rollup/rollup-win32-x64-msvc": "4.14.1", + "@rollup/rollup-android-arm-eabi": "4.14.2", + "@rollup/rollup-android-arm64": "4.14.2", + "@rollup/rollup-darwin-arm64": "4.14.2", + "@rollup/rollup-darwin-x64": "4.14.2", + "@rollup/rollup-linux-arm-gnueabihf": "4.14.2", + "@rollup/rollup-linux-arm64-gnu": "4.14.2", + "@rollup/rollup-linux-arm64-musl": "4.14.2", + "@rollup/rollup-linux-powerpc64le-gnu": "4.14.2", + "@rollup/rollup-linux-riscv64-gnu": "4.14.2", + "@rollup/rollup-linux-s390x-gnu": "4.14.2", + "@rollup/rollup-linux-x64-gnu": "4.14.2", + "@rollup/rollup-linux-x64-musl": "4.14.2", + "@rollup/rollup-win32-arm64-msvc": "4.14.2", + "@rollup/rollup-win32-ia32-msvc": "4.14.2", + "@rollup/rollup-win32-x64-msvc": "4.14.2", "fsevents": "~2.3.2" } }, @@ -17037,6 +17069,15 @@ "redis": ">=4.6" } }, + "packages/cache-handler/node_modules/@types/node": { + "version": "20.12.7", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.7.tgz", + "integrity": "sha512-wq0cICSkRLVaf3UGLMGItu/PtdY7oaXaI/RVU+xliKVOtRna3PRY57ZDfztpDL0n11vfymMUnXv8QwYCO7L1wg==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "packages/diffscribe": { "version": "0.2.3", "license": "MIT", @@ -17055,6 +17096,15 @@ "openai": "^4.12.3" } }, + "packages/diffscribe/node_modules/@types/node": { + "version": "20.12.7", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.7.tgz", + "integrity": "sha512-wq0cICSkRLVaf3UGLMGItu/PtdY7oaXaI/RVU+xliKVOtRna3PRY57ZDfztpDL0n11vfymMUnXv8QwYCO7L1wg==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "packages/json-replacer-reviver": { "name": "@neshca/json-replacer-reviver", "version": "1.1.2", @@ -17068,6 +17118,15 @@ "typescript": "5.4.5" } }, + "packages/json-replacer-reviver/node_modules/@types/node": { + "version": "20.12.7", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.7.tgz", + "integrity": "sha512-wq0cICSkRLVaf3UGLMGItu/PtdY7oaXaI/RVU+xliKVOtRna3PRY57ZDfztpDL0n11vfymMUnXv8QwYCO7L1wg==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "packages/server": { "name": "@neshca/server", "version": "1.1.0", @@ -17089,6 +17148,15 @@ "tsx": "4.7.2", "typescript": "5.4.5" } + }, + "packages/server/node_modules/@types/node": { + "version": "20.12.7", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.7.tgz", + "integrity": "sha512-wq0cICSkRLVaf3UGLMGItu/PtdY7oaXaI/RVU+xliKVOtRna3PRY57ZDfztpDL0n11vfymMUnXv8QwYCO7L1wg==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } } } } diff --git a/packages/cache-handler/README.md b/packages/cache-handler/README.md index bd28f389..f62d7dc8 100644 --- a/packages/cache-handler/README.md +++ b/packages/cache-handler/README.md @@ -2,7 +2,7 @@ **Flexible API to replace the default Next.js cache, accommodating custom cache solutions for multi-instance self-hosted deployments** -🎉 1.1.0 is out! It features Full support for the App Router! +🎉 1.2.0 is out! It features [`neshCache`](https://caching-tools.github.io/next-shared-cache/functions/nesh-cache) application-side function! Check out the [changelog](https://github.com/caching-tools/next-shared-cache/blob/canary/packages/cache-handler/CHANGELOG.md) @@ -39,6 +39,7 @@ Next.js applications are often deployed in a self-hosted distributed environment - Simplified on-demand revalidation, akin to managing a single application instance. - TTL by default to keep cache storage clean and space-efficient. - One configuration for both Routes. +- [`neshCache`](https://caching-tools.github.io/next-shared-cache/functions/nesh-cache) application-side function. ### Kickstarting Your Custom Cache Solution diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 5e19b080..f6238a11 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -31,6 +31,10 @@ "require": "./dist/helpers/helpers.cjs", "import": "./dist/helpers/helpers.js" }, + "./functions": { + "require": "./dist/functions/functions.cjs", + "import": "./dist/functions/functions.js" + }, "./*": { "require": "./dist/handlers/*.cjs", "import": "./dist/handlers/*.js" @@ -44,6 +48,9 @@ "helpers": [ "dist/helpers/helpers.d.ts" ], + "functions": [ + "dist/functions/functions.d.ts" + ], "redis-stack": [ "dist/handlers/redis-stack.d.ts" ], diff --git a/packages/cache-handler/src/functions/functions.ts b/packages/cache-handler/src/functions/functions.ts new file mode 100644 index 00000000..c120ccb1 --- /dev/null +++ b/packages/cache-handler/src/functions/functions.ts @@ -0,0 +1 @@ +export { neshCache } from './nesh-cache'; diff --git a/packages/cache-handler/src/functions/nesh-cache.ts b/packages/cache-handler/src/functions/nesh-cache.ts new file mode 100644 index 00000000..a3795135 --- /dev/null +++ b/packages/cache-handler/src/functions/nesh-cache.ts @@ -0,0 +1,329 @@ +import assert from 'node:assert'; +import { + type IncrementalCacheEntry, + NEXT_CACHE_IMPLICIT_TAG_ID, + type Revalidate, + type StaticGenerationStore, + staticGenerationAsyncStorage, +} from '@neshca/next-common'; + +const CACHE_ONE_YEAR = 31536000; + +function getDerivedTags(pathname: string): string[] { + const derivedTags: string[] = ['/layout']; + + if (!pathname.startsWith('/')) { + return derivedTags; + } + + const pathnameParts = pathname.split('/'); + + for (let i = 1; i < pathnameParts.length + 1; i++) { + let curPathname = pathnameParts.slice(0, i).join('/'); + + if (curPathname) { + if (!(curPathname.endsWith('/page') || curPathname.endsWith('/route'))) { + curPathname = `${curPathname}${curPathname.endsWith('/') ? '' : '/'}layout`; + } + + derivedTags.push(curPathname); + } + } + + return derivedTags; +} + +function addImplicitTags(staticGenerationStore: StaticGenerationStore) { + const newTags: string[] = []; + + const { pagePath, urlPathname } = staticGenerationStore; + + if (!Array.isArray(staticGenerationStore.tags)) { + staticGenerationStore.tags = []; + } + + if (pagePath) { + const derivedTags = getDerivedTags(pagePath); + + for (let tag of derivedTags) { + tag = `${NEXT_CACHE_IMPLICIT_TAG_ID}${tag}`; + if (!staticGenerationStore.tags?.includes(tag)) { + staticGenerationStore.tags.push(tag); + } + newTags.push(tag); + } + } + + if (urlPathname) { + const parsedPathname = new URL(urlPathname, 'http://n').pathname; + + const tag = `${NEXT_CACHE_IMPLICIT_TAG_ID}${parsedPathname}`; + if (!staticGenerationStore.tags?.includes(tag)) { + staticGenerationStore.tags.push(tag); + } + newTags.push(tag); + } + + return newTags; +} + +/** + * Serializes the given arguments into a string representation. + * + * @param object - The arguments to be serialized. + * + * @returns The serialized string representation of the arguments. + */ +function serializeArguments(object: object): string { + return JSON.stringify(object); +} + +/** + * Serializes the given object into a string representation. + * + * @param object - The object to be serialized. + * + * @returns The serialized string representation of the object. + */ +function serializeResult(object: object): string { + return Buffer.from(JSON.stringify(object), 'utf-8').toString('base64'); +} + +/** + * Deserializes a string representation of an object into its original form. + * + * @param string - The string representation of the object. + * + * @returns The deserialized object. + */ +function deserializeResult(string: string): T { + return JSON.parse(Buffer.from(string, 'base64').toString('utf-8')); +} + +/** + * @template Arguments - The type of the arguments passed to the callback function. + * + * @template Result - The type of the value returned by the callback function. + */ +type Callback = (...args: Arguments) => Result; + +/** + * An object containing options for the cache. + */ +type NeshCacheOptions = { + /** + * An array of tags to associate with the cached result. + * Tags are used to revalidate the cache using the `revalidateTag` function. + */ + tags?: string[]; + /** + * The revalidation interval in milliseconds. + * Must be a positive integer or `false` to disable revalidation. + * Defaults to `export const revalidate = time;` in the current route. + */ + revalidate?: Revalidate; + /** + * A custom cache key to be used instead of creating one from the arguments. + */ + cacheKey?: string; + /** + * A function that serializes the arguments passed to the callback function. + * Use it to create a cache key. Defaults to `JSON.stringify(args)`. + * + * @param callbackArguments - The arguments passed to the callback function. + */ + argumentsSerializer?(callbackArguments: Arguments): string; + /** + * + * A function that serializes the result of the callback function. + * Defaults to `Buffer.from(JSON.stringify(data)).toString('base64')`. + * + * @param result - The result of the callback function. + */ + resultSerializer?(result: Result): string; + /** + * A function that deserializes the string representation of the result of the callback function. + * Defaults to `JSON.parse(Buffer.from(data, 'base64').toString('utf-8'))`. + * + * @param string - The string representation of the result of the callback function. + */ + resultDeserializer?(string: string): Result; +}; + +/** + * An object containing common options for the cache. + */ +type CommonNeshCacheOptions = Omit< + NeshCacheOptions, + 'cacheKey' +>; + +/** + * Experimental implementation of the "`unstable_cache`" function with more control over caching. + * + * The API may change in the future. Use with caution. + * + * Caches the result of a callback function and returns a cached version if available. + * If not available, it executes the callback function, caches the result, and returns it. + * + * @param callback - The callback function to be cached. + * + * @param options - An object containing options for the cache. + * + * @param options.tags - An array of tags to associate with the cached result. + * Tags are used to revalidate the cache using the `revalidateTag` function. + * + * @param options.revalidate - The revalidation interval in milliseconds. + * Must be a positive integer or `false` to disable revalidation. + * Defaults to `export const revalidate = time;` in the current route. + * + * @param options.argumentsSerializer - A function that serializes the arguments passed to the callback function. + * Use it to create a cache key. Defaults to `JSON.stringify(args)`. + * + * @param options.resultSerializer - A function that serializes the result of the callback function. + * Defaults to `Buffer.from(JSON.stringify(data)).toString('base64')`. + * + * @param options.resultDeserializer - A function that deserializes the string representation of the result of the callback function. + * Defaults to `JSON.parse(Buffer.from(data, 'base64').toString('utf-8'))`. + * + * @returns The callback wrapped in a caching function. + * First argument is the cache options which can be used to override the common options. + * In addition, there is a `cacheKey` option that can be used to provide a custom cache key. + * + * @throws If the `neshCache` function is not used in a Next.js app directory or if the `revalidate` option is invalid. + * + * @remarks + * - This function is intended to be used in a Next.js app directory. + * + * @since 1.2.0 + */ +export function neshCache>( + callback: Callback, + commonOptions?: CommonNeshCacheOptions, +) { + if (commonOptions?.resultSerializer && !commonOptions?.resultDeserializer) { + throw new Error('neshCache: if you provide a resultSerializer, you must provide a resultDeserializer.'); + } + + if (commonOptions?.resultDeserializer && !commonOptions?.resultSerializer) { + throw new Error('neshCache: if you provide a resultDeserializer, you must provide a resultSerializer.'); + } + + const commonTags = commonOptions?.tags ?? []; + const commonRevalidate = commonOptions?.revalidate ?? false; + const commonArgumentsSerializer = commonOptions?.argumentsSerializer ?? serializeArguments; + const commonResultSerializer = commonOptions?.resultSerializer ?? serializeResult; + const commonResultDeserializer = commonOptions?.resultDeserializer ?? deserializeResult; + + async function cachedCallback( + options: NeshCacheOptions, + ...args: Arguments + ): Promise { + const store = staticGenerationAsyncStorage.getStore(); + + assert(store?.incrementalCache, 'neshCache must be used in a Next.js app directory.'); + + const { + tags = [], + revalidate = commonRevalidate, + cacheKey, + argumentsSerializer = commonArgumentsSerializer, + resultDeserializer = commonResultDeserializer, + resultSerializer = commonResultSerializer, + } = options ?? {}; + + assert( + revalidate === false || (revalidate > 0 && Number.isInteger(revalidate)), + 'neshCache: revalidate must be a positive integer or false.', + ); + + if (store.fetchCache === 'force-no-store' || store.isDraftMode || store.incrementalCache.dev) { + return await callback(...args); + } + + const uniqueTags = new Set(store.tags); + + const combinedTags = [...tags, ...commonTags]; + + for (const tag of combinedTags) { + if (typeof tag === 'string') { + uniqueTags.add(tag); + } else { + console.warn(`neshCache: Invalid tag: ${tag}. Skipping it. Expected a string.`); + } + } + + const allTags = Array.from(uniqueTags); + + // TODO: Find out why this is necessary + store.tags = allTags; + store.revalidate = revalidate; + const fetchIdx = store.nextFetchId ?? 1; + store.nextFetchId = fetchIdx + 1; + + const key = await store.incrementalCache.fetchCacheKey(`nesh-cache-${cacheKey ?? argumentsSerializer(args)}`); + + const handleUnlock = await store.incrementalCache.lock(key); + + let cacheData: IncrementalCacheEntry | null = null; + + try { + cacheData = await store.incrementalCache.get(key, { + revalidate, + tags: allTags, + softTags: addImplicitTags(store), + kindHint: 'fetch', + fetchIdx, + fetchUrl: 'neshCache', + }); + } catch (error) { + await handleUnlock(); + + throw error; + } + + if (cacheData?.value?.kind === 'FETCH' && cacheData.isStale === false) { + await handleUnlock(); + + return resultDeserializer(cacheData.value.data.body); + } + + let data: Result; + + try { + data = await staticGenerationAsyncStorage.run( + { + ...store, + // force any nested fetches to bypass cache so they revalidate + // when the unstable_cache call is revalidated + fetchCache: 'force-no-store', + }, + callback, + ...args, + ); + } catch (error) { + // biome-ignore lint/complexity/noUselessCatch: we need to rethrow the error + throw error; + } finally { + await handleUnlock(); + } + + store.incrementalCache.set( + key, + { + kind: 'FETCH', + data: { + body: resultSerializer(data), + headers: {}, + url: 'neshCache', + }, + revalidate: revalidate || CACHE_ONE_YEAR, + }, + { revalidate, tags, fetchCache: true, fetchIdx, fetchUrl: 'neshCache' }, + ); + + return data; + } + + return cachedCallback; +} diff --git a/packages/cache-handler/tsup.config.ts b/packages/cache-handler/tsup.config.ts index 8b29b2e9..6a6e8324 100644 --- a/packages/cache-handler/tsup.config.ts +++ b/packages/cache-handler/tsup.config.ts @@ -2,7 +2,7 @@ import { defineConfig } from 'tsup'; export const tsup = defineConfig({ name: 'Build cache-handler', - entry: ['src/cache-handler.ts', 'src/handlers/*.ts', 'src/helpers/helpers.ts'], + entry: ['src/cache-handler.ts', 'src/handlers/*.ts', 'src/helpers/helpers.ts', 'src/functions/functions.ts'], splitting: false, outDir: 'dist', clean: false, From b098765e96adefa26eafbc2707358c9aa2e56678 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Sun, 14 Apr 2024 11:41:43 +0300 Subject: [PATCH 194/458] Version Packages (#470) Co-authored-by: github-actions[bot] --- .changeset/honest-schools-study.md | 12 ------------ packages/cache-handler/CHANGELOG.md | 13 +++++++++++++ packages/cache-handler/package.json | 2 +- 3 files changed, 14 insertions(+), 13 deletions(-) delete mode 100644 .changeset/honest-schools-study.md diff --git a/.changeset/honest-schools-study.md b/.changeset/honest-schools-study.md deleted file mode 100644 index 61a445f4..00000000 --- a/.changeset/honest-schools-study.md +++ /dev/null @@ -1,12 +0,0 @@ ---- -'@neshca/cache-handler': minor ---- - -Add experimental `neshCache` function and related documentation. - -#### New features - -##### `@neshca/cache-handler/functions` - -- add new endpoint `@neshca/cache-handler/functions` with useful application-side functions -- add experimental function `neshCache` and related documentation diff --git a/packages/cache-handler/CHANGELOG.md b/packages/cache-handler/CHANGELOG.md index e093257d..21b560f9 100644 --- a/packages/cache-handler/CHANGELOG.md +++ b/packages/cache-handler/CHANGELOG.md @@ -1,5 +1,18 @@ # @neshca/cache-handler +## 1.2.0 + +### Minor Changes + +- 76bcdcd: Add experimental `neshCache` function and related documentation. + + #### New features + + ##### `@neshca/cache-handler/functions` + + - add new endpoint `@neshca/cache-handler/functions` with useful application-side functions + - add experimental function `neshCache` and related documentation + ## 1.1.0 ### Minor Changes diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index f6238a11..4b1a2a5e 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -1,6 +1,6 @@ { "name": "@neshca/cache-handler", - "version": "1.1.0", + "version": "1.2.0", "description": "Next.js self-hosting simplified.", "keywords": [ "cache", From 7adc1af578fa2a81924950f247672bd4c78f34e3 Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Sun, 14 Apr 2024 11:59:16 +0300 Subject: [PATCH 195/458] Fix bin paths in package.json files (#471) --- .changeset/funny-ladybugs-itch.md | 8 ++++++++ packages/diffscribe/package.json | 2 +- packages/server/package.json | 2 +- 3 files changed, 10 insertions(+), 2 deletions(-) create mode 100644 .changeset/funny-ladybugs-itch.md diff --git a/.changeset/funny-ladybugs-itch.md b/.changeset/funny-ladybugs-itch.md new file mode 100644 index 00000000..e59aad42 --- /dev/null +++ b/.changeset/funny-ladybugs-itch.md @@ -0,0 +1,8 @@ +--- +'diffscribe': patch +'@neshca/server': patch +'@neshca/cache-handler': patch +'@neshca/json-replacer-reviver': patch +--- + +Fix bin paths in package.json files. diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index 45d33c8d..f84650b0 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -16,7 +16,7 @@ "type": "module", "exports": null, "bin": { - "diffscribe": "./dist/diffscribe.js" + "diffscribe": "dist/diffscribe.js" }, "scripts": { "build": "tsup", diff --git a/packages/server/package.json b/packages/server/package.json index 77ffc9d3..118f75ff 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -16,7 +16,7 @@ "type": "module", "exports": null, "bin": { - "next-cache-server": "./dist/server.js" + "next-cache-server": "dist/server.js" }, "scripts": { "build": "tsup", From 42cfcadedf76e53862dad6454e36324241d029fc Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Sun, 14 Apr 2024 12:07:21 +0300 Subject: [PATCH 196/458] Version Packages (#472) Co-authored-by: github-actions[bot] --- .changeset/funny-ladybugs-itch.md | 8 -------- packages/cache-handler/CHANGELOG.md | 6 ++++++ packages/cache-handler/package.json | 2 +- packages/diffscribe/CHANGELOG.md | 6 ++++++ packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/CHANGELOG.md | 6 ++++++ packages/json-replacer-reviver/package.json | 2 +- packages/server/CHANGELOG.md | 6 ++++++ packages/server/package.json | 2 +- 9 files changed, 28 insertions(+), 12 deletions(-) delete mode 100644 .changeset/funny-ladybugs-itch.md diff --git a/.changeset/funny-ladybugs-itch.md b/.changeset/funny-ladybugs-itch.md deleted file mode 100644 index e59aad42..00000000 --- a/.changeset/funny-ladybugs-itch.md +++ /dev/null @@ -1,8 +0,0 @@ ---- -'diffscribe': patch -'@neshca/server': patch -'@neshca/cache-handler': patch -'@neshca/json-replacer-reviver': patch ---- - -Fix bin paths in package.json files. diff --git a/packages/cache-handler/CHANGELOG.md b/packages/cache-handler/CHANGELOG.md index 21b560f9..35567fe9 100644 --- a/packages/cache-handler/CHANGELOG.md +++ b/packages/cache-handler/CHANGELOG.md @@ -1,5 +1,11 @@ # @neshca/cache-handler +## 1.2.1 + +### Patch Changes + +- 7adc1af: Fix bin paths in package.json files. + ## 1.2.0 ### Minor Changes diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 4b1a2a5e..43cf1410 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -1,6 +1,6 @@ { "name": "@neshca/cache-handler", - "version": "1.2.0", + "version": "1.2.1", "description": "Next.js self-hosting simplified.", "keywords": [ "cache", diff --git a/packages/diffscribe/CHANGELOG.md b/packages/diffscribe/CHANGELOG.md index a5ea143c..79d07e66 100644 --- a/packages/diffscribe/CHANGELOG.md +++ b/packages/diffscribe/CHANGELOG.md @@ -1,5 +1,11 @@ # diffscribe +## 0.2.4 + +### Patch Changes + +- 7adc1af: Fix bin paths in package.json files. + ## 0.2.3 ### Patch Changes diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index f84650b0..b1a445da 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -1,6 +1,6 @@ { "name": "diffscribe", - "version": "0.2.3", + "version": "0.2.4", "description": "An intelligent CLI tool designed to automatically generate meaningful commit messages using Git diffstat, status, and insights from OpenAI and you", "homepage": "https://github.com/caching-tools/next-shared-cache/tree/canary/packages/diffscribe", "bugs": "https://github.com/caching-tools/next-shared-cache/issues", diff --git a/packages/json-replacer-reviver/CHANGELOG.md b/packages/json-replacer-reviver/CHANGELOG.md index c7bc09fd..7d694265 100644 --- a/packages/json-replacer-reviver/CHANGELOG.md +++ b/packages/json-replacer-reviver/CHANGELOG.md @@ -1,5 +1,11 @@ # @neshca/json-replacer-reviver +## 1.1.3 + +### Patch Changes + +- 7adc1af: Fix bin paths in package.json files. + ## 1.1.2 ### Patch Changes diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 029625a8..bb63dc26 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -1,6 +1,6 @@ { "name": "@neshca/json-replacer-reviver", - "version": "1.1.2", + "version": "1.1.3", "description": "Utility library for handling `Buffer` object serialization and deserialization with JSON, offering base64 representations", "homepage": "https://github.com/caching-tools/next-shared-cache/tree/canary/packages/json-replacer-reviver", "bugs": "https://github.com/caching-tools/next-shared-cache/issues", diff --git a/packages/server/CHANGELOG.md b/packages/server/CHANGELOG.md index 0d0818aa..b21bdfff 100644 --- a/packages/server/CHANGELOG.md +++ b/packages/server/CHANGELOG.md @@ -1,5 +1,11 @@ # @neshca/server +## 1.1.1 + +### Patch Changes + +- 7adc1af: Fix bin paths in package.json files. + ## 1.1.0 ### Minor Changes diff --git a/packages/server/package.json b/packages/server/package.json index 118f75ff..fd862885 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -1,6 +1,6 @@ { "name": "@neshca/server", - "version": "1.1.0", + "version": "1.1.1", "description": "Efficient and simple HTTP caching server with LRU eviction, tailored for seamless integration with `@neshca/cache-handler/server` Handler", "homepage": "https://github.com/caching-tools/next-shared-cache/tree/canary/packages/server", "bugs": "https://github.com/caching-tools/next-shared-cache/issues", From f2fb561b77f4c11f484462c07a89dba80771a824 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 17 Apr 2024 00:18:26 +0300 Subject: [PATCH 197/458] Bump @biomejs/biome from 1.6.4 to 1.7.0 (#474) * Bump @biomejs/biome from 1.6.4 to 1.7.0 Bumps [@biomejs/biome](https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome) from 1.6.4 to 1.7.0. - [Release notes](https://github.com/biomejs/biome/releases) - [Changelog](https://github.com/biomejs/biome/blob/main/CHANGELOG.md) - [Commits](https://github.com/biomejs/biome/commits/cli/v1.7.0/packages/@biomejs/biome) --- updated-dependencies: - dependency-name: "@biomejs/biome" dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] * Update biome config and fix codestyle errors --------- Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Arseny <132773930+better-salmon@users.noreply.github.com> --- biome.json | 20 +++-- package-lock.json | 80 +++++++++---------- package.json | 2 +- .../cache-handler/src/functions/nesh-cache.ts | 2 +- .../src/handlers/redis-strings.ts | 4 +- ...-validated-age-estimation-function.test.ts | 2 +- ...reate-validated-age-estimation-function.ts | 2 +- .../src/helpers/promise-with-timeout.test.ts | 2 +- .../src/json-replacer-reviver.test.ts | 2 +- 9 files changed, 63 insertions(+), 53 deletions(-) diff --git a/biome.json b/biome.json index e8710dca..9caecf3f 100644 --- a/biome.json +++ b/biome.json @@ -11,7 +11,8 @@ "noConsoleLog": "error", "noApproximativeNumericConstant": "error", "noMisrefactoredShorthandAssign": "error", - "useAwait": "error" + "useAwait": "error", + "noDuplicateTestHooks": "error" }, "correctness": { "noUndeclaredVariables": "error", @@ -38,14 +39,23 @@ "options": { "filenameCases": ["kebab-case"] } - } + }, + "useNodeAssertStrict": "error" }, "nursery": { - "noUselessTernary": "error", - "noDuplicateTestHooks": "error" + "noConstantMathMinMaxClamp": "error", + "noDoneCallback": "error", + "noDuplicateElseIf": "error", + "noEvolvingAny": "error", + "noFlatMapIdentity": "error", + "noMisplacedAssertion": "error" }, "complexity": { - "useSimplifiedLogicExpression": "error" + "useSimplifiedLogicExpression": "error", + "noUselessTernary": "error" + }, + "performance": { + "noReExportAll": "error" } } }, diff --git a/package-lock.json b/package-lock.json index 2c469c60..2f86eef0 100644 --- a/package-lock.json +++ b/package-lock.json @@ -20,7 +20,7 @@ }, "devDependencies": { "@actions/core": "1.10.1", - "@biomejs/biome": "1.6.4", + "@biomejs/biome": "1.7.0", "@repo/prettier-config": "*", "@repo/typescript-config": "*", "diffscribe": "*", @@ -1240,9 +1240,9 @@ } }, "node_modules/@biomejs/biome": { - "version": "1.6.4", - "resolved": "https://registry.npmjs.org/@biomejs/biome/-/biome-1.6.4.tgz", - "integrity": "sha512-3groVd2oWsLC0ZU+XXgHSNbq31lUcOCBkCcA7sAQGBopHcmL+jmmdoWlY3S61zIh+f2mqQTQte1g6PZKb3JJjA==", + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/@biomejs/biome/-/biome-1.7.0.tgz", + "integrity": "sha512-mejiRhnAq6UrXtYvjWJUKdstcT58n0/FfKemFf3d2Ou0HxOdS88HQmWtQ/UgyZvOEPD572YbFTb6IheyROpqkw==", "dev": true, "hasInstallScript": true, "bin": { @@ -1256,20 +1256,20 @@ "url": "https://opencollective.com/biome" }, "optionalDependencies": { - "@biomejs/cli-darwin-arm64": "1.6.4", - "@biomejs/cli-darwin-x64": "1.6.4", - "@biomejs/cli-linux-arm64": "1.6.4", - "@biomejs/cli-linux-arm64-musl": "1.6.4", - "@biomejs/cli-linux-x64": "1.6.4", - "@biomejs/cli-linux-x64-musl": "1.6.4", - "@biomejs/cli-win32-arm64": "1.6.4", - "@biomejs/cli-win32-x64": "1.6.4" + "@biomejs/cli-darwin-arm64": "1.7.0", + "@biomejs/cli-darwin-x64": "1.7.0", + "@biomejs/cli-linux-arm64": "1.7.0", + "@biomejs/cli-linux-arm64-musl": "1.7.0", + "@biomejs/cli-linux-x64": "1.7.0", + "@biomejs/cli-linux-x64-musl": "1.7.0", + "@biomejs/cli-win32-arm64": "1.7.0", + "@biomejs/cli-win32-x64": "1.7.0" } }, "node_modules/@biomejs/cli-darwin-arm64": { - "version": "1.6.4", - "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-1.6.4.tgz", - "integrity": "sha512-2WZef8byI9NRzGajGj5RTrroW9BxtfbP9etigW1QGAtwu/6+cLkdPOWRAs7uFtaxBNiKFYA8j/BxV5zeAo5QOQ==", + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-1.7.0.tgz", + "integrity": "sha512-12TaeaKHU4SAZt0fQJ2bYk1jUb4foope7LmgDE5p3c0uMxd3mFkg1k7G721T+K6UHYULcSOQDsNNM8DhYi8Irg==", "cpu": [ "arm64" ], @@ -1283,9 +1283,9 @@ } }, "node_modules/@biomejs/cli-darwin-x64": { - "version": "1.6.4", - "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-x64/-/cli-darwin-x64-1.6.4.tgz", - "integrity": "sha512-uo1zgM7jvzcoDpF6dbGizejDLCqNpUIRkCj/oEK0PB0NUw8re/cn1EnxuOLZqDpn+8G75COLQTOx8UQIBBN/Kg==", + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-x64/-/cli-darwin-x64-1.7.0.tgz", + "integrity": "sha512-6Qq1BSIB0cpp0cQNqO/+EiUV7FE3jMpF6w7+AgIBXp0oJxUWb2Ff0RDZdO9bfzkimXD58j0vGpNHMGnCcjDV2Q==", "cpu": [ "x64" ], @@ -1299,9 +1299,9 @@ } }, "node_modules/@biomejs/cli-linux-arm64": { - "version": "1.6.4", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64/-/cli-linux-arm64-1.6.4.tgz", - "integrity": "sha512-wAOieaMNIpLrxGc2/xNvM//CIZg7ueWy3V5A4T7gDZ3OL/Go27EKE59a+vMKsBCYmTt7jFl4yHz0TUkUbodA/w==", + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64/-/cli-linux-arm64-1.7.0.tgz", + "integrity": "sha512-GwSci7xBJ2j1CrdDXDUVXnUtrvypEz/xmiYPpFeVdlX5p95eXx+7FekPPbJfhGGw5WKSsKZ+V8AAlbN+kUwJWw==", "cpu": [ "arm64" ], @@ -1315,9 +1315,9 @@ } }, "node_modules/@biomejs/cli-linux-arm64-musl": { - "version": "1.6.4", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-1.6.4.tgz", - "integrity": "sha512-Hp8Jwt6rjj0wCcYAEN6/cfwrrPLLlGOXZ56Lei4Pt4jy39+UuPeAVFPeclrrCfxyL1wQ2xPrhd/saTHSL6DoJg==", + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-1.7.0.tgz", + "integrity": "sha512-pwIY80nU7SAxrVVZ6HD9ah1pruwh9ZqlSR0Nvbg4ZJqQa0POhiB+RJx7+/1Ml2mTZdrl8kb/YiwQpD16uwb5wg==", "cpu": [ "arm64" ], @@ -1331,9 +1331,9 @@ } }, "node_modules/@biomejs/cli-linux-x64": { - "version": "1.6.4", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64/-/cli-linux-x64-1.6.4.tgz", - "integrity": "sha512-qTWhuIw+/ePvOkjE9Zxf5OqSCYxtAvcTJtVmZT8YQnmY2I62JKNV2m7tf6O5ViKZUOP0mOQ6NgqHKcHH1eT8jw==", + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64/-/cli-linux-x64-1.7.0.tgz", + "integrity": "sha512-1y+odKQsyHcw0JCGRuqhbx7Y6jxOVSh4lGIVDdJxW1b55yD22DY1kcMEfhUte6f95OIc2uqfkwtiI6xQAiZJdw==", "cpu": [ "x64" ], @@ -1347,9 +1347,9 @@ } }, "node_modules/@biomejs/cli-linux-x64-musl": { - "version": "1.6.4", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-1.6.4.tgz", - "integrity": "sha512-wqi0hr8KAx5kBO0B+m5u8QqiYFFBJOSJVSuRqTeGWW+GYLVUtXNidykNqf1JsW6jJDpbkSp2xHKE/bTlVaG2Kg==", + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-1.7.0.tgz", + "integrity": "sha512-KzCA0mW4LSbCd7XZWaEJvTOTTBjfJoVEXkfq1fsXxww1HB+ww5PGMbhbIcbYCsj2CTJUifeD5hOkyuBVppU1xQ==", "cpu": [ "x64" ], @@ -1363,9 +1363,9 @@ } }, "node_modules/@biomejs/cli-win32-arm64": { - "version": "1.6.4", - "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-arm64/-/cli-win32-arm64-1.6.4.tgz", - "integrity": "sha512-Wp3FiEeF6v6C5qMfLkHwf4YsoNHr/n0efvoC8jCKO/kX05OXaVExj+1uVQ1eGT7Pvx0XVm/TLprRO0vq/V6UzA==", + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-arm64/-/cli-win32-arm64-1.7.0.tgz", + "integrity": "sha512-AvLDUYZBpOUFgS/mni4VruIoVV3uSGbKSkZQBPXsHgL0w4KttLll3NBrVanmWxOHsom6C6ocHLyfAY8HUc8TXg==", "cpu": [ "arm64" ], @@ -1379,9 +1379,9 @@ } }, "node_modules/@biomejs/cli-win32-x64": { - "version": "1.6.4", - "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-x64/-/cli-win32-x64-1.6.4.tgz", - "integrity": "sha512-mz183Di5hTSGP7KjNWEhivcP1wnHLGmOxEROvoFsIxMYtDhzJDad4k5gI/1JbmA0xe4n52vsgqo09tBhrMT/Zg==", + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-x64/-/cli-win32-x64-1.7.0.tgz", + "integrity": "sha512-Pylm00BAAuLVb40IH9PC17432BTsY8K4pSUvhvgR1eaalnMaD6ug9SYJTTzKDbT6r24MPAGCTiSZERyhGkGzFQ==", "cpu": [ "x64" ], @@ -17049,7 +17049,7 @@ }, "packages/cache-handler": { "name": "@neshca/cache-handler", - "version": "1.1.0", + "version": "1.2.1", "license": "MIT", "dependencies": { "lru-cache": "10.2.0" @@ -17079,7 +17079,7 @@ } }, "packages/diffscribe": { - "version": "0.2.3", + "version": "0.2.4", "license": "MIT", "bin": { "diffscribe": "dist/diffscribe.js" @@ -17107,7 +17107,7 @@ }, "packages/json-replacer-reviver": { "name": "@neshca/json-replacer-reviver", - "version": "1.1.2", + "version": "1.1.3", "license": "MIT", "devDependencies": { "@repo/typescript-config": "*", @@ -17129,7 +17129,7 @@ }, "packages/server": { "name": "@neshca/server", - "version": "1.1.0", + "version": "1.1.1", "license": "MIT", "dependencies": { "fastify": "4.26.2", diff --git a/package.json b/package.json index e157b65b..2b5d9e42 100644 --- a/package.json +++ b/package.json @@ -38,7 +38,7 @@ }, "devDependencies": { "@actions/core": "1.10.1", - "@biomejs/biome": "1.6.4", + "@biomejs/biome": "1.7.0", "@repo/prettier-config": "*", "@repo/typescript-config": "*", "diffscribe": "*", diff --git a/packages/cache-handler/src/functions/nesh-cache.ts b/packages/cache-handler/src/functions/nesh-cache.ts index a3795135..b029d46a 100644 --- a/packages/cache-handler/src/functions/nesh-cache.ts +++ b/packages/cache-handler/src/functions/nesh-cache.ts @@ -1,4 +1,4 @@ -import assert from 'node:assert'; +import assert from 'node:assert/strict'; import { type IncrementalCacheEntry, NEXT_CACHE_IMPLICIT_TAG_ID, diff --git a/packages/cache-handler/src/handlers/redis-strings.ts b/packages/cache-handler/src/handlers/redis-strings.ts index e9535077..66ccb95a 100644 --- a/packages/cache-handler/src/handlers/redis-strings.ts +++ b/packages/cache-handler/src/handlers/redis-strings.ts @@ -132,9 +132,9 @@ export default function createHandler({ cursor = remoteTagsPortion.cursor; } - const keysToDelete = []; + const keysToDelete: string[] = []; - const tagsToDelete = []; + const tagsToDelete: string[] = []; for (const [key, tags] of tagsMap) { if (tags.includes(tag)) { diff --git a/packages/cache-handler/src/helpers/create-validated-age-estimation-function.test.ts b/packages/cache-handler/src/helpers/create-validated-age-estimation-function.test.ts index 7529e60b..406ca279 100644 --- a/packages/cache-handler/src/helpers/create-validated-age-estimation-function.test.ts +++ b/packages/cache-handler/src/helpers/create-validated-age-estimation-function.test.ts @@ -1,4 +1,4 @@ -import assert from 'node:assert'; +import assert from 'node:assert/strict'; import { test } from 'node:test'; import { MAX_INT32 } from '../constants'; import { createValidatedAgeEstimationFunction } from './create-validated-age-estimation-function'; diff --git a/packages/cache-handler/src/helpers/create-validated-age-estimation-function.ts b/packages/cache-handler/src/helpers/create-validated-age-estimation-function.ts index 04504845..a743293d 100644 --- a/packages/cache-handler/src/helpers/create-validated-age-estimation-function.ts +++ b/packages/cache-handler/src/helpers/create-validated-age-estimation-function.ts @@ -1,4 +1,4 @@ -import assert from 'node:assert'; +import assert from 'node:assert/strict'; import { MAX_INT32 } from '../constants'; type EstimateExpireAgeFunction = typeof getInitialExpireAge; diff --git a/packages/cache-handler/src/helpers/promise-with-timeout.test.ts b/packages/cache-handler/src/helpers/promise-with-timeout.test.ts index 3e0946ec..3bfa90f0 100644 --- a/packages/cache-handler/src/helpers/promise-with-timeout.test.ts +++ b/packages/cache-handler/src/helpers/promise-with-timeout.test.ts @@ -1,4 +1,4 @@ -import assert from 'node:assert'; +import assert from 'node:assert/strict'; import { test } from 'node:test'; import Timers from 'node:timers/promises'; diff --git a/packages/json-replacer-reviver/src/json-replacer-reviver.test.ts b/packages/json-replacer-reviver/src/json-replacer-reviver.test.ts index 019efc7e..7544c569 100644 --- a/packages/json-replacer-reviver/src/json-replacer-reviver.test.ts +++ b/packages/json-replacer-reviver/src/json-replacer-reviver.test.ts @@ -1,4 +1,4 @@ -import assert from 'node:assert'; +import assert from 'node:assert/strict'; import { describe, it } from 'node:test'; import { From 4f7bc794501b864ec56c70205d5e9a755443cc81 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 17 Apr 2024 11:04:04 +0300 Subject: [PATCH 198/458] Bump @types/react from 18.2.78 to 18.2.79 in the definitely-typed group (#476) Bumps the definitely-typed group with 1 update: [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react). Updates `@types/react` from 18.2.78 to 18.2.79 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react) --- updated-dependencies: - dependency-name: "@types/react" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- package-lock.json | 10 +++++----- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 20199ecf..8cc6fba3 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -29,7 +29,7 @@ "@repo/typescript-config": "*", "@types/eslint": "8.56.7", "@types/node": "20.12.7", - "@types/react": "18.2.78", + "@types/react": "18.2.79", "@types/react-dom": "18.2.25", "axios": "1.6.8", "dotenv-cli": "7.4.1", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index c128534d..b907cbe7 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -23,7 +23,7 @@ "@repo/typescript-config": "*", "@types/eslint": "8.56.7", "@types/node": "20.12.7", - "@types/react": "18.2.78", + "@types/react": "18.2.79", "@types/react-dom": "18.2.25", "eslint": "8.57.0", "typescript": "5.4.5" diff --git a/package-lock.json b/package-lock.json index 2f86eef0..88c17870 100644 --- a/package-lock.json +++ b/package-lock.json @@ -49,7 +49,7 @@ "@repo/typescript-config": "*", "@types/eslint": "8.56.7", "@types/node": "20.12.7", - "@types/react": "18.2.78", + "@types/react": "18.2.79", "@types/react-dom": "18.2.25", "axios": "1.6.8", "dotenv-cli": "7.4.1", @@ -135,7 +135,7 @@ "@repo/typescript-config": "*", "@types/eslint": "8.56.7", "@types/node": "20.12.7", - "@types/react": "18.2.78", + "@types/react": "18.2.79", "@types/react-dom": "18.2.25", "eslint": "8.57.0", "typescript": "5.4.5" @@ -3755,9 +3755,9 @@ "integrity": "sha512-5zvhXYtRNRluoE/jAp4GVsSduVUzNWKkOZrCDBWYtE7biZywwdC2AcEzg+cSMLFRfVgeAFqpfNabiPjxFddV1Q==" }, "node_modules/@types/react": { - "version": "18.2.78", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.78.tgz", - "integrity": "sha512-qOwdPnnitQY4xKlKayt42q5W5UQrSHjgoXNVEtxeqdITJ99k4VXJOP3vt8Rkm9HmgJpH50UNU+rlqfkfWOqp0A==", + "version": "18.2.79", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.79.tgz", + "integrity": "sha512-RwGAGXPl9kSXwdNTafkOEuFrTBD5SA2B3iEB96xi8+xu5ddUa/cpvyVCSNn+asgLCTHkb5ZxN8gbuibYJi4s1w==", "dependencies": { "@types/prop-types": "*", "csstype": "^3.0.2" From 0d4766b39f3eae8130d50bdac6fd4420a2414148 Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Wed, 17 Apr 2024 14:49:45 +0300 Subject: [PATCH 199/458] Added `keyExpirationStrategy` option for the `redis-strings` Handler (#473) --- .changeset/wicked-avocados-bow.md | 11 + .../src/create-configured-cache.ts | 8 +- package-lock.json | 248 +++++++++--------- packages/cache-handler/src/cache-handler.ts | 8 +- packages/cache-handler/src/common-types.ts | 29 +- .../cache-handler/src/functions/nesh-cache.ts | 13 +- .../src/handlers/redis-strings.ts | 31 ++- 7 files changed, 216 insertions(+), 132 deletions(-) create mode 100644 .changeset/wicked-avocados-bow.md diff --git a/.changeset/wicked-avocados-bow.md b/.changeset/wicked-avocados-bow.md new file mode 100644 index 00000000..7432ce07 --- /dev/null +++ b/.changeset/wicked-avocados-bow.md @@ -0,0 +1,11 @@ +--- +'@neshca/cache-handler': minor +--- + +Added `keyExpirationStrategy` option for the `redis-strings` Handler. + +#### New Features + +##### `@neshca/cache-handle/redis-strings` + +- Added `keyExpirationStrategy` option. It allows you to choose the expiration strategy for cache keys. diff --git a/internal/next-lru-cache/src/create-configured-cache.ts b/internal/next-lru-cache/src/create-configured-cache.ts index 98a6743a..c826c1fb 100644 --- a/internal/next-lru-cache/src/create-configured-cache.ts +++ b/internal/next-lru-cache/src/create-configured-cache.ts @@ -7,13 +7,17 @@ import { LRUCache } from 'lru-cache'; */ export type LruCacheOptions = { /** - * Optional. Maximum number of items the cache can hold. Defaults to 1000. + * Optional. Maximum number of items the cache can hold. + * + * @default 1000 * * @since 1.0.0 */ maxItemsNumber?: number; /** - * Optional. Maximum size in bytes for each item in the cache. Defaults to 100 MB. + * Optional. Maximum size in bytes for each item in the cache. + * + * @default 104857600 // 100 Mb * * @since 1.0.0 */ diff --git a/package-lock.json b/package-lock.json index 88c17870..d84cbc25 100644 --- a/package-lock.json +++ b/package-lock.json @@ -2163,9 +2163,9 @@ } }, "node_modules/@headlessui/react": { - "version": "1.7.18", - "resolved": "https://registry.npmjs.org/@headlessui/react/-/react-1.7.18.tgz", - "integrity": "sha512-4i5DOrzwN4qSgNsL4Si61VMkUcWbcSKueUV7sFhpHzQcSShdlHENE5+QBntMSRvHt8NyoFO2AGG8si9lq+w4zQ==", + "version": "1.7.19", + "resolved": "https://registry.npmjs.org/@headlessui/react/-/react-1.7.19.tgz", + "integrity": "sha512-Ll+8q3OlMJfJbAKM/+/Y2q6PPYbryqNTXDbryx7SXLIDamkF6iQFbriYHga0dY44PvDhvvBWCx1Xj4U5+G4hOw==", "dependencies": { "@tanstack/react-virtual": "^3.0.0-beta.60", "client-only": "^0.0.1" @@ -3353,9 +3353,9 @@ "link": true }, "node_modules/@rollup/rollup-android-arm-eabi": { - "version": "4.14.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.14.2.tgz", - "integrity": "sha512-ahxSgCkAEk+P/AVO0vYr7DxOD3CwAQrT0Go9BJyGQ9Ef0QxVOfjDZMiF4Y2s3mLyPrjonchIMH/tbWHucJMykQ==", + "version": "4.14.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.14.3.tgz", + "integrity": "sha512-X9alQ3XM6I9IlSlmC8ddAvMSyG1WuHk5oUnXGw+yUBs3BFoTizmG1La/Gr8fVJvDWAq+zlYTZ9DBgrlKRVY06g==", "cpu": [ "arm" ], @@ -3366,9 +3366,9 @@ ] }, "node_modules/@rollup/rollup-android-arm64": { - "version": "4.14.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.14.2.tgz", - "integrity": "sha512-lAarIdxZWbFSHFSDao9+I/F5jDaKyCqAPMq5HqnfpBw8dKDiCaaqM0lq5h1pQTLeIqueeay4PieGR5jGZMWprw==", + "version": "4.14.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.14.3.tgz", + "integrity": "sha512-eQK5JIi+POhFpzk+LnjKIy4Ks+pwJ+NXmPxOCSvOKSNRPONzKuUvWE+P9JxGZVxrtzm6BAYMaL50FFuPe0oWMQ==", "cpu": [ "arm64" ], @@ -3379,9 +3379,9 @@ ] }, "node_modules/@rollup/rollup-darwin-arm64": { - "version": "4.14.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.14.2.tgz", - "integrity": "sha512-SWsr8zEUk82KSqquIMgZEg2GE5mCSfr9sE/thDROkX6pb3QQWPp8Vw8zOq2GyxZ2t0XoSIUlvHDkrf5Gmf7x3Q==", + "version": "4.14.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.14.3.tgz", + "integrity": "sha512-Od4vE6f6CTT53yM1jgcLqNfItTsLt5zE46fdPaEmeFHvPs5SjZYlLpHrSiHEKR1+HdRfxuzXHjDOIxQyC3ptBA==", "cpu": [ "arm64" ], @@ -3392,9 +3392,9 @@ ] }, "node_modules/@rollup/rollup-darwin-x64": { - "version": "4.14.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.14.2.tgz", - "integrity": "sha512-o/HAIrQq0jIxJAhgtIvV5FWviYK4WB0WwV91SLUnsliw1lSAoLsmgEEgRWzDguAFeUEUUoIWXiJrPqU7vGiVkA==", + "version": "4.14.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.14.3.tgz", + "integrity": "sha512-0IMAO21axJeNIrvS9lSe/PGthc8ZUS+zC53O0VhF5gMxfmcKAP4ESkKOCwEi6u2asUrt4mQv2rjY8QseIEb1aw==", "cpu": [ "x64" ], @@ -3405,9 +3405,22 @@ ] }, "node_modules/@rollup/rollup-linux-arm-gnueabihf": { - "version": "4.14.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.14.2.tgz", - "integrity": "sha512-nwlJ65UY9eGq91cBi6VyDfArUJSKOYt5dJQBq8xyLhvS23qO+4Nr/RreibFHjP6t+5ap2ohZrUJcHv5zk5ju/g==", + "version": "4.14.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.14.3.tgz", + "integrity": "sha512-ge2DC7tHRHa3caVEoSbPRJpq7azhG+xYsd6u2MEnJ6XzPSzQsTKyXvh6iWjXRf7Rt9ykIUWHtl0Uz3T6yXPpKw==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm-musleabihf": { + "version": "4.14.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.14.3.tgz", + "integrity": "sha512-ljcuiDI4V3ySuc7eSk4lQ9wU8J8r8KrOUvB2U+TtK0TiW6OFDmJ+DdIjjwZHIw9CNxzbmXY39wwpzYuFDwNXuw==", "cpu": [ "arm" ], @@ -3418,9 +3431,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-gnu": { - "version": "4.14.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.14.2.tgz", - "integrity": "sha512-Pg5TxxO2IVlMj79+c/9G0LREC9SY3HM+pfAwX7zj5/cAuwrbfj2Wv9JbMHIdPCfQpYsI4g9mE+2Bw/3aeSs2rQ==", + "version": "4.14.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.14.3.tgz", + "integrity": "sha512-Eci2us9VTHm1eSyn5/eEpaC7eP/mp5n46gTRB3Aar3BgSvDQGJZuicyq6TsH4HngNBgVqC5sDYxOzTExSU+NjA==", "cpu": [ "arm64" ], @@ -3431,9 +3444,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-musl": { - "version": "4.14.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.14.2.tgz", - "integrity": "sha512-cAOTjGNm84gc6tS02D1EXtG7tDRsVSDTBVXOLbj31DkwfZwgTPYZ6aafSU7rD/4R2a34JOwlF9fQayuTSkoclA==", + "version": "4.14.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.14.3.tgz", + "integrity": "sha512-UrBoMLCq4E92/LCqlh+blpqMz5h1tJttPIniwUgOFJyjWI1qrtrDhhpHPuFxULlUmjFHfloWdixtDhSxJt5iKw==", "cpu": [ "arm64" ], @@ -3444,9 +3457,9 @@ ] }, "node_modules/@rollup/rollup-linux-powerpc64le-gnu": { - "version": "4.14.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.14.2.tgz", - "integrity": "sha512-4RyT6v1kXb7C0fn6zV33rvaX05P0zHoNzaXI/5oFHklfKm602j+N4mn2YvoezQViRLPnxP8M1NaY4s/5kXO5cw==", + "version": "4.14.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.14.3.tgz", + "integrity": "sha512-5aRjvsS8q1nWN8AoRfrq5+9IflC3P1leMoy4r2WjXyFqf3qcqsxRCfxtZIV58tCxd+Yv7WELPcO9mY9aeQyAmw==", "cpu": [ "ppc64" ], @@ -3457,9 +3470,9 @@ ] }, "node_modules/@rollup/rollup-linux-riscv64-gnu": { - "version": "4.14.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.14.2.tgz", - "integrity": "sha512-KNUH6jC/vRGAKSorySTyc/yRYlCwN/5pnMjXylfBniwtJx5O7X17KG/0efj8XM3TZU7raYRXJFFReOzNmL1n1w==", + "version": "4.14.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.14.3.tgz", + "integrity": "sha512-sk/Qh1j2/RJSX7FhEpJn8n0ndxy/uf0kI/9Zc4b1ELhqULVdTfN6HL31CDaTChiBAOgLcsJ1sgVZjWv8XNEsAQ==", "cpu": [ "riscv64" ], @@ -3470,9 +3483,9 @@ ] }, "node_modules/@rollup/rollup-linux-s390x-gnu": { - "version": "4.14.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.14.2.tgz", - "integrity": "sha512-xPV4y73IBEXToNPa3h5lbgXOi/v0NcvKxU0xejiFw6DtIYQqOTMhZ2DN18/HrrP0PmiL3rGtRG9gz1QE8vFKXQ==", + "version": "4.14.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.14.3.tgz", + "integrity": "sha512-jOO/PEaDitOmY9TgkxF/TQIjXySQe5KVYB57H/8LRP/ux0ZoO8cSHCX17asMSv3ruwslXW/TLBcxyaUzGRHcqg==", "cpu": [ "s390x" ], @@ -3483,9 +3496,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-gnu": { - "version": "4.14.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.14.2.tgz", - "integrity": "sha512-QBhtr07iFGmF9egrPOWyO5wciwgtzKkYPNLVCFZTmr4TWmY0oY2Dm/bmhHjKRwZoGiaKdNcKhFtUMBKvlchH+Q==", + "version": "4.14.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.14.3.tgz", + "integrity": "sha512-8ybV4Xjy59xLMyWo3GCfEGqtKV5M5gCSrZlxkPGvEPCGDLNla7v48S662HSGwRd6/2cSneMQWiv+QzcttLrrOA==", "cpu": [ "x64" ], @@ -3496,9 +3509,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-musl": { - "version": "4.14.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.14.2.tgz", - "integrity": "sha512-8zfsQRQGH23O6qazZSFY5jP5gt4cFvRuKTpuBsC1ZnSWxV8ZKQpPqOZIUtdfMOugCcBvFGRa1pDC/tkf19EgBw==", + "version": "4.14.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.14.3.tgz", + "integrity": "sha512-s+xf1I46trOY10OqAtZ5Rm6lzHre/UiLA1J2uOhCFXWkbZrJRkYBPO6FhvGfHmdtQ3Bx793MNa7LvoWFAm93bg==", "cpu": [ "x64" ], @@ -3509,9 +3522,9 @@ ] }, "node_modules/@rollup/rollup-win32-arm64-msvc": { - "version": "4.14.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.14.2.tgz", - "integrity": "sha512-H4s8UjgkPnlChl6JF5empNvFHp77Jx+Wfy2EtmYPe9G22XV+PMuCinZVHurNe8ggtwoaohxARJZbaH/3xjB/FA==", + "version": "4.14.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.14.3.tgz", + "integrity": "sha512-+4h2WrGOYsOumDQ5S2sYNyhVfrue+9tc9XcLWLh+Kw3UOxAvrfOrSMFon60KspcDdytkNDh7K2Vs6eMaYImAZg==", "cpu": [ "arm64" ], @@ -3522,9 +3535,9 @@ ] }, "node_modules/@rollup/rollup-win32-ia32-msvc": { - "version": "4.14.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.14.2.tgz", - "integrity": "sha512-djqpAjm/i8erWYF0K6UY4kRO3X5+T4TypIqw60Q8MTqSBaQNpNXDhxdjpZ3ikgb+wn99svA7jxcXpiyg9MUsdw==", + "version": "4.14.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.14.3.tgz", + "integrity": "sha512-T1l7y/bCeL/kUwh9OD4PQT4aM7Bq43vX05htPJJ46RTI4r5KNt6qJRzAfNfM+OYMNEVBWQzR2Gyk+FXLZfogGw==", "cpu": [ "ia32" ], @@ -3535,9 +3548,9 @@ ] }, "node_modules/@rollup/rollup-win32-x64-msvc": { - "version": "4.14.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.14.2.tgz", - "integrity": "sha512-teAqzLT0yTYZa8ZP7zhFKEx4cotS8Tkk5XiqNMJhD4CpaWB1BHARE4Qy+RzwnXvSAYv+Q3jAqCVBS+PS+Yee8Q==", + "version": "4.14.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.14.3.tgz", + "integrity": "sha512-/BypzV0H1y1HzgYpxqRaXGBRqfodgoBBCcsrujT6QRcakDQdfU+Lq9PENPh5jB4I44YWq+0C2eHsHya+nZY1sA==", "cpu": [ "x64" ], @@ -3568,11 +3581,11 @@ } }, "node_modules/@tanstack/react-virtual": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/@tanstack/react-virtual/-/react-virtual-3.2.1.tgz", - "integrity": "sha512-i9Nt0ssIh2bSjomJZlr6Iq5usT/9+ewo2/fKHRNk6kjVKS8jrhXbnO8NEawarCuBx/efv0xpoUUKKGxa0cQb4Q==", + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/@tanstack/react-virtual/-/react-virtual-3.3.0.tgz", + "integrity": "sha512-QFxmTSZBniq15S0vSZ55P4ToXquMXwJypPXyX/ux7sYo6a2FX3/zWoRLLc4eIOGWTjvzqcIVNKhcuFb+OZL3aQ==", "dependencies": { - "@tanstack/virtual-core": "3.2.1" + "@tanstack/virtual-core": "3.3.0" }, "funding": { "type": "github", @@ -3584,9 +3597,9 @@ } }, "node_modules/@tanstack/virtual-core": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/@tanstack/virtual-core/-/virtual-core-3.2.1.tgz", - "integrity": "sha512-nO0d4vRzsmpBQCJYyClNHPPoUMI4nXNfrm6IcCRL33ncWMoNVpURh9YebEHPw8KrtsP2VSJIHE4gf4XFGk1OGg==", + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/@tanstack/virtual-core/-/virtual-core-3.3.0.tgz", + "integrity": "sha512-A0004OAa1FcUkPHeeGoKgBrAgjH+uHdDPrw1L7RpkwnODYqRvoilqsHPs8cyTjMg1byZBbiNpQAq2TlFLIaQag==", "funding": { "type": "github", "url": "https://github.com/sponsors/tannerlinsley" @@ -3996,17 +4009,17 @@ } }, "node_modules/@typescript-eslint/utils": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-7.6.0.tgz", - "integrity": "sha512-x54gaSsRRI+Nwz59TXpCsr6harB98qjXYzsRxGqvA5Ue3kQH+FxS7FYU81g/omn22ML2pZJkisy6Q+ElK8pBCA==", + "version": "7.7.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-7.7.0.tgz", + "integrity": "sha512-LKGAXMPQs8U/zMRFXDZOzmMKgFv3COlxUQ+2NMPhbqgVm6R1w+nU1i4836Pmxu9jZAuIeyySNrN/6Rc657ggig==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.4.0", "@types/json-schema": "^7.0.15", "@types/semver": "^7.5.8", - "@typescript-eslint/scope-manager": "7.6.0", - "@typescript-eslint/types": "7.6.0", - "@typescript-eslint/typescript-estree": "7.6.0", + "@typescript-eslint/scope-manager": "7.7.0", + "@typescript-eslint/types": "7.7.0", + "@typescript-eslint/typescript-estree": "7.7.0", "semver": "^7.6.0" }, "engines": { @@ -4021,13 +4034,13 @@ } }, "node_modules/@typescript-eslint/utils/node_modules/@typescript-eslint/scope-manager": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-7.6.0.tgz", - "integrity": "sha512-ngttyfExA5PsHSx0rdFgnADMYQi+Zkeiv4/ZxGYUWd0nLs63Ha0ksmp8VMxAIC0wtCFxMos7Lt3PszJssG/E6w==", + "version": "7.7.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-7.7.0.tgz", + "integrity": "sha512-/8INDn0YLInbe9Wt7dK4cXLDYp0fNHP5xKLHvZl3mOT5X17rK/YShXaiNmorl+/U4VKCVIjJnx4Ri5b0y+HClw==", "dev": true, "dependencies": { - "@typescript-eslint/types": "7.6.0", - "@typescript-eslint/visitor-keys": "7.6.0" + "@typescript-eslint/types": "7.7.0", + "@typescript-eslint/visitor-keys": "7.7.0" }, "engines": { "node": "^18.18.0 || >=20.0.0" @@ -4038,9 +4051,9 @@ } }, "node_modules/@typescript-eslint/utils/node_modules/@typescript-eslint/types": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.6.0.tgz", - "integrity": "sha512-h02rYQn8J+MureCvHVVzhl69/GAfQGPQZmOMjG1KfCl7o3HtMSlPaPUAPu6lLctXI5ySRGIYk94clD/AUMCUgQ==", + "version": "7.7.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.7.0.tgz", + "integrity": "sha512-G01YPZ1Bd2hn+KPpIbrAhEWOn5lQBrjxkzHkWvP6NucMXFtfXoevK82hzQdpfuQYuhkvFDeQYbzXCjR1z9Z03w==", "dev": true, "engines": { "node": "^18.18.0 || >=20.0.0" @@ -4051,13 +4064,13 @@ } }, "node_modules/@typescript-eslint/utils/node_modules/@typescript-eslint/typescript-estree": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-7.6.0.tgz", - "integrity": "sha512-+7Y/GP9VuYibecrCQWSKgl3GvUM5cILRttpWtnAu8GNL9j11e4tbuGZmZjJ8ejnKYyBRb2ddGQ3rEFCq3QjMJw==", + "version": "7.7.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-7.7.0.tgz", + "integrity": "sha512-8p71HQPE6CbxIBy2kWHqM1KGrC07pk6RJn40n0DSc6bMOBBREZxSDJ+BmRzc8B5OdaMh1ty3mkuWRg4sCFiDQQ==", "dev": true, "dependencies": { - "@typescript-eslint/types": "7.6.0", - "@typescript-eslint/visitor-keys": "7.6.0", + "@typescript-eslint/types": "7.7.0", + "@typescript-eslint/visitor-keys": "7.7.0", "debug": "^4.3.4", "globby": "^11.1.0", "is-glob": "^4.0.3", @@ -4079,12 +4092,12 @@ } }, "node_modules/@typescript-eslint/utils/node_modules/@typescript-eslint/visitor-keys": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-7.6.0.tgz", - "integrity": "sha512-4eLB7t+LlNUmXzfOu1VAIAdkjbu5xNSerURS9X/S5TUKWFRpXRQZbmtPqgKmYx8bj3J0irtQXSiWAOY82v+cgw==", + "version": "7.7.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-7.7.0.tgz", + "integrity": "sha512-h0WHOj8MhdhY8YWkzIF30R379y0NqyOHExI9N9KCzvmu05EgG4FumeYa3ccfKUSphyWkWQE1ybVrgz/Pbam6YA==", "dev": true, "dependencies": { - "@typescript-eslint/types": "7.6.0", + "@typescript-eslint/types": "7.7.0", "eslint-visitor-keys": "^3.4.3" }, "engines": { @@ -4917,9 +4930,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001609", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001609.tgz", - "integrity": "sha512-JFPQs34lHKx1B5t1EpQpWH4c+29zIyn/haGsbpfq3suuV9v56enjFt23zqijxGTMwy1p/4H2tjnQMY+p1WoAyA==", + "version": "1.0.30001610", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001610.tgz", + "integrity": "sha512-QFutAY4NgaelojVMjY63o6XlZyORPaLfyMnsl3HgnWdJUcX6K0oaJymHjH8PT5Gk7sTm8rvC/c5COUQKXqmOMA==", "funding": [ { "type": "opencollective", @@ -5363,9 +5376,9 @@ } }, "node_modules/core-js-compat": { - "version": "3.36.1", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.36.1.tgz", - "integrity": "sha512-Dk997v9ZCt3X/npqzyGdTlq6t7lDBhZwGvV94PKzDArjp7BTRm7WlDAXYd/OWdeFHO8OChQYRJNJvUCqCbrtKA==", + "version": "3.37.0", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.37.0.tgz", + "integrity": "sha512-vYq4L+T8aS5UuFg4UwDhc7YNRWVeVZwltad9C/jV3R2LgVOpS9BDr7l/WL6BN0dbV3k1XejPTHqqEzJgsa0frA==", "dev": true, "dependencies": { "browserslist": "^4.23.0" @@ -6236,15 +6249,15 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.736", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.736.tgz", - "integrity": "sha512-Rer6wc3ynLelKNM4lOCg7/zPQj8tPOCB2hzD32PX9wd3hgRRi9MxEbmkFCokzcEhRVMiOVLjnL9ig9cefJ+6+Q==", + "version": "1.4.738", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.738.tgz", + "integrity": "sha512-lwKft2CLFztD+vEIpesrOtCrko/TFnEJlHFdRhazU7Y/jx5qc4cqsocfVrBg4So4gGe9lvxnbLIoev47WMpg+A==", "dev": true }, "node_modules/elkjs": { - "version": "0.9.2", - "resolved": "https://registry.npmjs.org/elkjs/-/elkjs-0.9.2.tgz", - "integrity": "sha512-2Y/RaA1pdgSHpY0YG4TYuYCD2wh97CRvu22eLG3Kz0pgQ/6KbIFTxsTnDc4MH/6hFlg2L/9qXrDMG0nMjP63iw==" + "version": "0.9.3", + "resolved": "https://registry.npmjs.org/elkjs/-/elkjs-0.9.3.tgz", + "integrity": "sha512-f/ZeWvW/BCXbhGEf1Ujp29EASo/lk1FDnETgNKwJrsVvGZhUWCZyg3xLJjAsxfOmt8KjswHmI5EwCQcPMpOYhQ==" }, "node_modules/emitter-listener": { "version": "1.1.2", @@ -7163,9 +7176,9 @@ } }, "node_modules/eslint-plugin-testing-library": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-testing-library/-/eslint-plugin-testing-library-6.2.1.tgz", - "integrity": "sha512-CP2YV/AxtgyrXgizM4648UkuVrFGDcCA8uDmrLytGqtsa7wgC6MTuIQqEAT1Qm4/zCxnC8xRtiGgfEwEt6hmdw==", + "version": "6.2.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-testing-library/-/eslint-plugin-testing-library-6.2.2.tgz", + "integrity": "sha512-1E94YOTUDnOjSLyvOwmbVDzQi/WkKm3WVrMXu6SmBr6DN95xTGZmI6HJ/eOkSXh/DlheRsxaPsJvZByDBhWLVQ==", "dev": true, "dependencies": { "@typescript-eslint/utils": "^5.58.0" @@ -9140,9 +9153,9 @@ } }, "node_modules/hast-util-to-text": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/hast-util-to-text/-/hast-util-to-text-4.0.1.tgz", - "integrity": "sha512-RHL7Vo2n06ZocCFWqmbyhZ1pCYX/mSKdywt9YD5U6Hquu5syV+dImCXFKLFt02JoK5QxkQFS0PoVdFdPXuPffQ==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/hast-util-to-text/-/hast-util-to-text-4.0.2.tgz", + "integrity": "sha512-KK6y/BN8lbaq654j7JgBydev7wuNMcID54lkRav1P0CaE1e47P72AWWPiGKXTJU271ooYzcvTAn/Zt0REnvc7A==", "dependencies": { "@types/hast": "^3.0.0", "@types/unist": "^3.0.0", @@ -12493,9 +12506,9 @@ } }, "node_modules/openai": { - "version": "4.33.1", - "resolved": "https://registry.npmjs.org/openai/-/openai-4.33.1.tgz", - "integrity": "sha512-0DH572aSxGTT1JPOXgJQ9mjiuSPg/7scPot8hLc5I1mfQxPxLXTZWJpWerKaIWOuPkR2nrB0SamGDEehH8RuWA==", + "version": "4.36.0", + "resolved": "https://registry.npmjs.org/openai/-/openai-4.36.0.tgz", + "integrity": "sha512-AtYrhhWY64LhB9P6f3H0nV8nTSaQJ89mWPnfNU5CnYg81zlYaV8nkyO+aTNfprdqP/9xv10woNNUgefXINT4Dg==", "peer": true, "dependencies": { "@types/node": "^18.11.18", @@ -14153,9 +14166,9 @@ "integrity": "sha512-IXgzBWvWQwE6PrDI05OvmXUIruQTcoMDzRsOd5CDvHCVLcLHMTSYvOK5Cm46kWqlV3yAbuSpBZdJ5oP5OUoStg==" }, "node_modules/rollup": { - "version": "4.14.2", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.14.2.tgz", - "integrity": "sha512-WkeoTWvuBoFjFAhsEOHKRoZ3r9GfTyhh7Vff1zwebEFLEFjT1lG3784xEgKiTa7E+e70vsC81roVL2MP4tgEEQ==", + "version": "4.14.3", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.14.3.tgz", + "integrity": "sha512-ag5tTQKYsj1bhrFC9+OEWqb5O6VYgtQDO9hPDBMmIbePwhfSr+ExlcU741t8Dhw5DkPCQf6noz0jb36D6W9/hw==", "dev": true, "dependencies": { "@types/estree": "1.0.5" @@ -14168,21 +14181,22 @@ "npm": ">=8.0.0" }, "optionalDependencies": { - "@rollup/rollup-android-arm-eabi": "4.14.2", - "@rollup/rollup-android-arm64": "4.14.2", - "@rollup/rollup-darwin-arm64": "4.14.2", - "@rollup/rollup-darwin-x64": "4.14.2", - "@rollup/rollup-linux-arm-gnueabihf": "4.14.2", - "@rollup/rollup-linux-arm64-gnu": "4.14.2", - "@rollup/rollup-linux-arm64-musl": "4.14.2", - "@rollup/rollup-linux-powerpc64le-gnu": "4.14.2", - "@rollup/rollup-linux-riscv64-gnu": "4.14.2", - "@rollup/rollup-linux-s390x-gnu": "4.14.2", - "@rollup/rollup-linux-x64-gnu": "4.14.2", - "@rollup/rollup-linux-x64-musl": "4.14.2", - "@rollup/rollup-win32-arm64-msvc": "4.14.2", - "@rollup/rollup-win32-ia32-msvc": "4.14.2", - "@rollup/rollup-win32-x64-msvc": "4.14.2", + "@rollup/rollup-android-arm-eabi": "4.14.3", + "@rollup/rollup-android-arm64": "4.14.3", + "@rollup/rollup-darwin-arm64": "4.14.3", + "@rollup/rollup-darwin-x64": "4.14.3", + "@rollup/rollup-linux-arm-gnueabihf": "4.14.3", + "@rollup/rollup-linux-arm-musleabihf": "4.14.3", + "@rollup/rollup-linux-arm64-gnu": "4.14.3", + "@rollup/rollup-linux-arm64-musl": "4.14.3", + "@rollup/rollup-linux-powerpc64le-gnu": "4.14.3", + "@rollup/rollup-linux-riscv64-gnu": "4.14.3", + "@rollup/rollup-linux-s390x-gnu": "4.14.3", + "@rollup/rollup-linux-x64-gnu": "4.14.3", + "@rollup/rollup-linux-x64-musl": "4.14.3", + "@rollup/rollup-win32-arm64-msvc": "4.14.3", + "@rollup/rollup-win32-ia32-msvc": "4.14.3", + "@rollup/rollup-win32-x64-msvc": "4.14.3", "fsevents": "~2.3.2" } }, diff --git a/packages/cache-handler/src/cache-handler.ts b/packages/cache-handler/src/cache-handler.ts index 4f412d1e..43523f6c 100644 --- a/packages/cache-handler/src/cache-handler.ts +++ b/packages/cache-handler/src/cache-handler.ts @@ -151,7 +151,9 @@ export type Handler = { */ export type TTLParameters = { /** - * The time in seconds for when the cache entry becomes stale. Defaults to 1 year. + * The time in seconds for when the cache entry becomes stale. + * + * @default 31536000 // 1 year * * @since 1.0.0 */ @@ -159,10 +161,12 @@ export type TTLParameters = { /** * Estimates the expiration age based on the stale age. * - * @param staleAge - The stale age in seconds. Defaults to 1 year. + * @param staleAge - The stale age in seconds. * After the stale age, the cache entry is considered stale, can be served from the cache, and should be revalidated. * Revalidation is handled by the `CacheHandler` class. * + * @default (staleAge) => staleAge + * * @returns The expiration age in seconds. * * @since 1.0.0 diff --git a/packages/cache-handler/src/common-types.ts b/packages/cache-handler/src/common-types.ts index ca422381..f413a49e 100644 --- a/packages/cache-handler/src/common-types.ts +++ b/packages/cache-handler/src/common-types.ts @@ -15,13 +15,17 @@ export type CreateRedisStackHandlerOptions> */ client: T; /** - * Optional. Prefix for all keys, useful for namespacing. Defaults to an empty string. + * Optional. Prefix for all keys, useful for namespacing. + * + * @default '' // empty string * * @since 1.0.0 */ keyPrefix?: string; /** - * Timeout in milliseconds for Redis operations. Defaults to 5000. + * Timeout in milliseconds for Redis operations. + * + * @default 5000 // 5000 ms * * @since 1.0.0 */ @@ -30,9 +34,28 @@ export type CreateRedisStackHandlerOptions> export type CreateRedisStringsHandlerOptions = CreateRedisStackHandlerOptions & { /** - * Optional. Key for storing cache tags. Defaults to `__sharedTags__`. + * Optional. Key for storing cache tags. + * + * @default '__sharedTags__' * * @since 1.0.0 */ sharedTagsKey?: string; + /** + * Optional. It allows you to choose the expiration strategy for cache keys. + * + * - `'EXAT'`: Uses the `EXAT` option of the `SET` command to set the expiration time. This is more efficient than `EXPIREAT`. + * - `'EXPIREAT'`: Uses the `EXPIREAT` command to set the expiration time. This requires an additional command call. + * + * By default, the expiration strategy is set to `'EXPIREAT'` for compatibility previous `@neshca/cache-handler` versions. + * + * @default 'EXPIREAT' + * + * @since 1.3.0 + * + * @remarks + * - The `'EXPIREAT'` strategy requires Redis server 4.0.0 or newer. + * - The `'EXAT'` strategy requires Redis server 6.2.0 or newer. + */ + keyExpirationStrategy?: 'EXAT' | 'EXPIREAT'; }; diff --git a/packages/cache-handler/src/functions/nesh-cache.ts b/packages/cache-handler/src/functions/nesh-cache.ts index b029d46a..934a7794 100644 --- a/packages/cache-handler/src/functions/nesh-cache.ts +++ b/packages/cache-handler/src/functions/nesh-cache.ts @@ -119,7 +119,8 @@ type NeshCacheOptions = { /** * The revalidation interval in milliseconds. * Must be a positive integer or `false` to disable revalidation. - * Defaults to `export const revalidate = time;` in the current route. + * + * @default revalidate // of the current route */ revalidate?: Revalidate; /** @@ -128,7 +129,9 @@ type NeshCacheOptions = { cacheKey?: string; /** * A function that serializes the arguments passed to the callback function. - * Use it to create a cache key. Defaults to `JSON.stringify(args)`. + * Use it to create a cache key. + * + * @default (args) => JSON.stringify(args) * * @param callbackArguments - The arguments passed to the callback function. */ @@ -136,14 +139,16 @@ type NeshCacheOptions = { /** * * A function that serializes the result of the callback function. - * Defaults to `Buffer.from(JSON.stringify(data)).toString('base64')`. + * + * @default (result) => Buffer.from(JSON.stringify(result)).toString('base64') * * @param result - The result of the callback function. */ resultSerializer?(result: Result): string; /** * A function that deserializes the string representation of the result of the callback function. - * Defaults to `JSON.parse(Buffer.from(data, 'base64').toString('utf-8'))`. + * + * @default (string) => JSON.parse(Buffer.from(string, 'base64').toString('utf-8')) * * @param string - The string representation of the result of the callback function. */ diff --git a/packages/cache-handler/src/handlers/redis-strings.ts b/packages/cache-handler/src/handlers/redis-strings.ts index 66ccb95a..c652251f 100644 --- a/packages/cache-handler/src/handlers/redis-strings.ts +++ b/packages/cache-handler/src/handlers/redis-strings.ts @@ -38,6 +38,7 @@ export default function createHandler({ keyPrefix = '', sharedTagsKey = '__sharedTags__', timeoutMs = 5000, + keyExpirationStrategy = 'EXPIREAT', }: CreateRedisStringsHandlerOptions): Handler { function assertClientIsReady(): void { if (!client.isReady) { @@ -91,11 +92,33 @@ export default function createHandler({ const options = getTimeoutRedisCommandOptions(timeoutMs); - const setOperation = client.set(options, keyPrefix + key, JSON.stringify(cacheHandlerValue)); + let setOperation: Promise; + + let expireOperation: Promise | undefined; + + switch (keyExpirationStrategy) { + case 'EXAT': { + setOperation = client.set( + options, + keyPrefix + key, + JSON.stringify(cacheHandlerValue), + typeof cacheHandlerValue.lifespan?.expireAt === 'number' + ? { + EXAT: cacheHandlerValue.lifespan.expireAt, + } + : undefined, + ); + break; + } + case 'EXPIREAT': { + setOperation = client.set(options, keyPrefix + key, JSON.stringify(cacheHandlerValue)); - const expireOperation = cacheHandlerValue.lifespan - ? client.expireAt(options, keyPrefix + key, cacheHandlerValue.lifespan.expireAt) - : undefined; + expireOperation = cacheHandlerValue.lifespan + ? client.expireAt(options, keyPrefix + key, cacheHandlerValue.lifespan.expireAt) + : undefined; + break; + } + } const setTagsOperation = cacheHandlerValue.tags.length ? client.hSet(options, keyPrefix + sharedTagsKey, key, JSON.stringify(cacheHandlerValue.tags)) From 732e050374dba6521f8b7ed66e00761c10fb89db Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Wed, 17 Apr 2024 15:03:25 +0300 Subject: [PATCH 200/458] Version Packages (#477) Co-authored-by: github-actions[bot] --- .changeset/wicked-avocados-bow.md | 11 ----------- packages/cache-handler/CHANGELOG.md | 12 ++++++++++++ packages/cache-handler/package.json | 2 +- 3 files changed, 13 insertions(+), 12 deletions(-) delete mode 100644 .changeset/wicked-avocados-bow.md diff --git a/.changeset/wicked-avocados-bow.md b/.changeset/wicked-avocados-bow.md deleted file mode 100644 index 7432ce07..00000000 --- a/.changeset/wicked-avocados-bow.md +++ /dev/null @@ -1,11 +0,0 @@ ---- -'@neshca/cache-handler': minor ---- - -Added `keyExpirationStrategy` option for the `redis-strings` Handler. - -#### New Features - -##### `@neshca/cache-handle/redis-strings` - -- Added `keyExpirationStrategy` option. It allows you to choose the expiration strategy for cache keys. diff --git a/packages/cache-handler/CHANGELOG.md b/packages/cache-handler/CHANGELOG.md index 35567fe9..3ef81ba0 100644 --- a/packages/cache-handler/CHANGELOG.md +++ b/packages/cache-handler/CHANGELOG.md @@ -1,5 +1,17 @@ # @neshca/cache-handler +## 1.3.0 + +### Minor Changes + +- 0d4766b: Added `keyExpirationStrategy` option for the `redis-strings` Handler. + + #### New Features + + ##### `@neshca/cache-handle/redis-strings` + + - Added `keyExpirationStrategy` option. It allows you to choose the expiration strategy for cache keys. + ## 1.2.1 ### Patch Changes diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 43cf1410..8991db7c 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -1,6 +1,6 @@ { "name": "@neshca/cache-handler", - "version": "1.2.1", + "version": "1.3.0", "description": "Next.js self-hosting simplified.", "keywords": [ "cache", From e0bf25787a0d8b599f42593e99cff5ff09df2626 Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Thu, 18 Apr 2024 10:31:05 +0300 Subject: [PATCH 201/458] Update readme and docs after release (#479) --- docs/cache-handler-docs/theme.config.jsx | 6 ++---- packages/cache-handler/README.md | 2 +- 2 files changed, 3 insertions(+), 5 deletions(-) diff --git a/docs/cache-handler-docs/theme.config.jsx b/docs/cache-handler-docs/theme.config.jsx index 1b74eb96..75e445a8 100644 --- a/docs/cache-handler-docs/theme.config.jsx +++ b/docs/cache-handler-docs/theme.config.jsx @@ -53,11 +53,9 @@ export default { ), }, banner: { - key: 'version-1.2.0', + key: 'version-1.3.0', text: ( - - 🎉 1.2.0 is out! It features `neshCache`` application-side function! - +
🎉 1.3.0 is out! It features the new keyExpirationStrategy option for the redis-strings Handler!
), }, }; diff --git a/packages/cache-handler/README.md b/packages/cache-handler/README.md index f62d7dc8..bd17db11 100644 --- a/packages/cache-handler/README.md +++ b/packages/cache-handler/README.md @@ -2,7 +2,7 @@ **Flexible API to replace the default Next.js cache, accommodating custom cache solutions for multi-instance self-hosted deployments** -🎉 1.2.0 is out! It features [`neshCache`](https://caching-tools.github.io/next-shared-cache/functions/nesh-cache) application-side function! +🎉 1.3.0 is out! It features the new `keyExpirationStrategy` option for the `redis-strings` Handler! It allows to use of a more performant API for the cache set operation but requires Redis server 6.2.0. Do not forget about the new [`neshCache`](https://caching-tools.github.io/next-shared-cache/functions/nesh-cache) application-side function for caching non-fetch data requests, e.g. `axios` or database queries. Check out the [changelog](https://github.com/caching-tools/next-shared-cache/blob/canary/packages/cache-handler/CHANGELOG.md) From 320006830d0a74e4907aee71d8a00c059f85fbbd Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Fri, 19 Apr 2024 21:02:54 +0300 Subject: [PATCH 202/458] Update types, JSDoc and the documentation (#481) --- .changeset/fast-ducks-tie.md | 22 ++++++ .../cache-handler-redis-stack.mjs | 69 +++++++++++++----- docs/cache-handler-docs/src/pages/_meta.json | 1 + .../src/pages/handlers/_meta.json | 5 ++ .../src/pages/handlers/local-lru.mdx | 35 +++++++++ .../src/pages/handlers/redis-stack.mdx | 38 ++++++++++ .../src/pages/handlers/redis-strings.mdx | 41 +++++++++++ docs/cache-handler-docs/src/pages/redis.mdx | 72 ++++++++++++++----- packages/cache-handler/src/common-types.ts | 2 +- .../cache-handler/src/handlers/local-lru.ts | 9 ++- 10 files changed, 257 insertions(+), 37 deletions(-) create mode 100644 .changeset/fast-ducks-tie.md create mode 100644 docs/cache-handler-docs/src/pages/handlers/_meta.json create mode 100644 docs/cache-handler-docs/src/pages/handlers/local-lru.mdx create mode 100644 docs/cache-handler-docs/src/pages/handlers/redis-stack.mdx create mode 100644 docs/cache-handler-docs/src/pages/handlers/redis-strings.mdx diff --git a/.changeset/fast-ducks-tie.md b/.changeset/fast-ducks-tie.md new file mode 100644 index 00000000..d2b07617 --- /dev/null +++ b/.changeset/fast-ducks-tie.md @@ -0,0 +1,22 @@ +--- +'@neshca/cache-handler': patch +--- + +Updated types, JSDoc and the documentation. + +#### Documentation + +- added the documentation for the pre-built `redis-stack`, `redis-strings` and `local-lru` Handlers + +#### `@neshca/cache-handle/local-lru` + +- marked `LruCacheHandlerOptions` type as deprecated +- added `LruCacheOptions` export. + +#### `@neshca/cache-handle/redis-stack` + +- marked `timeoutMs` option as optional + +#### `@neshca/cache-handle/redis-strings` + +- marked `timeoutMs` option as optional diff --git a/apps/cache-testing/cache-handler-redis-stack.mjs b/apps/cache-testing/cache-handler-redis-stack.mjs index af587f02..7adf38c6 100644 --- a/apps/cache-testing/cache-handler-redis-stack.mjs +++ b/apps/cache-testing/cache-handler-redis-stack.mjs @@ -3,7 +3,6 @@ import { CacheHandler } from '@neshca/cache-handler'; import createLruHandler from '@neshca/cache-handler/local-lru'; import createRedisHandler from '@neshca/cache-handler/redis-stack'; -import createRedisStringsHandler from '@neshca/cache-handler/redis-strings'; import { createClient } from 'redis'; CacheHandler.onCreation(async () => { @@ -11,29 +10,65 @@ CacheHandler.onCreation(async () => { console.warn('Make sure that REDIS_URL is added to the .env.local file and loaded properly.'); } - const client = createClient({ - url: process.env.REDIS_URL, - name: `cache-handler:${process.env.PORT ?? process.pid}`, - }); + let client; - client.on('error', () => {}); + try { + // Create a Redis client. + client = createClient({ + url: process.env.REDIS_URL, + name: `cache-handler:${process.env.PORT ?? process.pid}`, + }); - console.info('Connecting Redis client...'); - await client.connect(); - console.info('Redis client connected.'); + // Redis won't work without error handling. + client.on('error', () => {}); + } catch (error) { + console.warn('Failed to create Redis client:', error); + } + + if (client) { + try { + console.info('Connecting Redis client...'); - const redisHandler = await createRedisHandler({ - client, - keyPrefix: 'JSON:', - timeoutMs: 1000, - }); + // Wait for the client to connect. + // Caveat: This will block the server from starting until the client is connected. + // And there is no timeout. Make your own timeout if needed. + await client.connect(); + console.info('Redis client connected.'); + } catch (error) { + console.warn('Failed to connect Redis client:', error); - const redisStringsHandler = createRedisStringsHandler({ client, keyPrefix: 'strings:', timeoutMs: 1000 }); + console.warn('Disconnecting the Redis client...'); + // Try to disconnect the client to stop it from reconnecting. + client + .disconnect() + .then(() => { + console.info('Redis client disconnected.'); + }) + .catch(() => { + console.warn('Failed to quit the Redis client after failing to connect.'); + }); + } + } - const localHandler = createLruHandler(); + /** @type {import("@neshca/cache-handler").Handler | null} */ + let handler; + + if (client?.isReady) { + // Create the `redis-stack` Handler if the client is available and connected. + handler = await createRedisHandler({ + client, + keyPrefix: 'JSON:', + timeoutMs: 1000, + }); + } else { + // Fallback to LRU handler if Redis client is not available. + // The application will still work, but the cache will be in-memory only and not shared. + handler = createLruHandler(); + console.warn('Falling back to LRU handler because Redis client is not available.'); + } return { - handlers: [redisHandler, redisStringsHandler, localHandler], + handlers: [handler], ttl: { defaultStaleAge: 60, estimateExpireAge: (staleAge) => staleAge * 2 }, }; }); diff --git a/docs/cache-handler-docs/src/pages/_meta.json b/docs/cache-handler-docs/src/pages/_meta.json index fdf9da87..4356047f 100644 --- a/docs/cache-handler-docs/src/pages/_meta.json +++ b/docs/cache-handler-docs/src/pages/_meta.json @@ -11,6 +11,7 @@ }, "configuration": "Configuration", "api-reference": "API reference", + "handlers": "Handlers", "functions": "Functions", "-- Usage": { "type": "separator", diff --git a/docs/cache-handler-docs/src/pages/handlers/_meta.json b/docs/cache-handler-docs/src/pages/handlers/_meta.json new file mode 100644 index 00000000..45e5a182 --- /dev/null +++ b/docs/cache-handler-docs/src/pages/handlers/_meta.json @@ -0,0 +1,5 @@ +{ + "redis-stack": "redis-stack", + "redis-strings": "redis-strings", + "local-lru": "local-lru" +} diff --git a/docs/cache-handler-docs/src/pages/handlers/local-lru.mdx b/docs/cache-handler-docs/src/pages/handlers/local-lru.mdx new file mode 100644 index 00000000..b421f401 --- /dev/null +++ b/docs/cache-handler-docs/src/pages/handlers/local-lru.mdx @@ -0,0 +1,35 @@ +import { Callout } from 'nextra/components'; + +# `local-lru` Handler + +```js +import createLocalHandler from '@neshca/cache-handler/local-lru'; + +// ... +const localHandler = createLocalHandler({ + maxItemsNumber: 10000, + maxItemSizeBytes: 1024 * 1024 * 500, +}); +// ... +``` + +The `local-lru` Handler uses a [`lru-cache`](https://www.npmjs.com/package/lru-cache) instance as the cache store. It stores the cache in memory and evicts the least recently used entries when the cache reaches its limits. You can use this Handler as a fallback cache when the shared cache is unavailable. + + + The `local-lru` Handler stores the cache in memory. Make sure to set the limits according to your server's memory + capacity. + + +## API + +`@neshca/cache-handler/local-lru` exports a function that creates a new `Handler` instance for the `local-lru` Handler. + +### Parameters + +- `options` - An object containing the following properties: + - `maxItemsNumber` - Optional. Maximum number of items the cache can hold. Defaults to `1000`. + - `maxItemSizeBytes` - Optional. Maximum size in bytes for each item in the cache. Defaults to `1024 * 1024 * 100` (100 MB). + +### Return value + +A new `Handler` instance for the `local-lru` Handler. diff --git a/docs/cache-handler-docs/src/pages/handlers/redis-stack.mdx b/docs/cache-handler-docs/src/pages/handlers/redis-stack.mdx new file mode 100644 index 00000000..33f8b931 --- /dev/null +++ b/docs/cache-handler-docs/src/pages/handlers/redis-stack.mdx @@ -0,0 +1,38 @@ +import { Callout } from 'nextra/components'; + +# `redis-stack` Handler + +```js +import createRedisHandler from '@neshca/cache-handler/redis-stack'; + +// ... +await client.connect(); + +const redisHandler = await createRedisHandler({ + client, + keyPrefix: 'prefix:', + timeoutMs: 1000, +}); +// ... +``` + +The `redis-stack` Handler uses Redis with `RedisJSON` and `RedisSearch` modules as the cache store. It is a full-featured cache handler that supports JSON objects and full-text search, offering a trade-off between performance and flexibility. While it may sacrifice some speed compared to the [`redis-strings`](/handlers/redis-strings) Handler, it empowers you to manage cache on demand more efficiently and faster. It also allows for more versatile cache usage from your application, such as creating custom revalidating strategies and functions. The `redis-stack` Handler is suitable for applications that require advanced cache management and search capabilities. + + + Make sure that you have the `RedisJSON` and `RedisSearch` modules installed and enabled in your Redis server. + + +## API + +`@neshca/cache-handler/redis-stack` exports a function that creates a new `Handler` instance for the `redis-stack` Handler. + +### Parameters + +- `options` - An object containing the following properties: + - `client` - A Redis client instance. The client must be ready before creating the Handler. + - `keyPrefix` - Optional. Prefix for all keys, useful for namespacing. Defaults to an empty string. + - `timeoutMs` - Optional. Timeout in milliseconds for Redis operations. Defaults to `5000`. + +### Return value + +A Promise that resolves to a new `Handler` instance for the `redis-stack` Handler. diff --git a/docs/cache-handler-docs/src/pages/handlers/redis-strings.mdx b/docs/cache-handler-docs/src/pages/handlers/redis-strings.mdx new file mode 100644 index 00000000..fda56019 --- /dev/null +++ b/docs/cache-handler-docs/src/pages/handlers/redis-strings.mdx @@ -0,0 +1,41 @@ +# `redis-strings` Handler + +```js +import createRedisHandler from '@neshca/cache-handler/redis-strings'; + +// ... +await client.connect(); + +const redisHandler = createRedisHandler({ + client, + keyPrefix: 'JSON:', + timeoutMs: 1000, + keyExpirationStrategy: 'EXAT', + sharedTagsKey: '__sharedTags__', +}); +// ... +``` + +The `redis-strings` Handler uses plain Redis as the cache store. It is a simple and fast cache handler that is suitable for most applications. This Handler is ideal for applications that require fast and efficient cache management without the need for advanced features like full-text search for custom revalidation strategies. + +## API + +`@neshca/cache-handler/redis-strings` exports a function that creates a new `Handler` instance for the `redis-strings` Handler. + +### Parameters + +- `options` - An object containing the following properties: + - `client` - A Redis client instance. The client must be ready before creating the Handler. + - `keyPrefix` - Optional. Prefix for all keys, useful for namespacing. Defaults to an empty string. + - `timeoutMs` - Optional. Timeout in milliseconds for Redis operations. Defaults to `5000`. + - `keyExpirationStrategy` - Optional. It allows you to choose the expiration strategy for cache keys. Defaults to `EXPRIREAT`. + - `sharedTagsKey` - Optional. Dedicated key for the internal revalidation process. It must not interfere with cache keys from your application. Defaults to `__sharedTags__`. + +#### `keyExpirationStrategy` + +- `'EXAT'`: Uses the `EXAT` option of the `SET` command to set the expiration time. This is more efficient than `EXPIREAT`. Requires Redis server 6.2.0 or newer +- `'EXPIREAT'`: Uses the `EXPIREAT` command to set the expiration time. This requires an additional command call. Requires Redis server 4.0.0 or newer. + +### Return value + +A new `Handler` instance for the `redis-strings` Handler. diff --git a/docs/cache-handler-docs/src/pages/redis.mdx b/docs/cache-handler-docs/src/pages/redis.mdx index cdf33383..cf03eac6 100644 --- a/docs/cache-handler-docs/src/pages/redis.mdx +++ b/docs/cache-handler-docs/src/pages/redis.mdx @@ -1,43 +1,81 @@ import { Callout } from 'nextra/components'; -## Redis Stack example +## `redis-stack` Handler example In this example, we assume that in your deployment, you have `REDIS_URL` environment variable set to the URL of your Redis instance. You can use any other way to set the URL. +See the [`redis-stack` Handler](/handlers/redis-stack) documentation for more information and requirements for the Redis server. + Create a file called `cache-handler.mjs` next to your `next.config.js` with the following contents: ```js filename="cache-handler.mjs" copy import { CacheHandler } from '@neshca/cache-handler'; import createLruHandler from '@neshca/cache-handler/local-lru'; import createRedisHandler from '@neshca/cache-handler/redis-stack'; -// or if you are using Redis without the RedisJSON module -// import createRedisHandler from '@neshca/cache-handler/redis-strings'; import { createClient } from 'redis'; CacheHandler.onCreation(async () => { - // always create a Redis client inside the `onCreation` callback - const client = createClient({ - url: process.env.REDIS_URL ?? 'redis://localhost:6379', - }); + let client; + + try { + // Create a Redis client. + client = createClient({ + url: process.env.REDIS_URL ?? 'redis://localhost:6379', + }); + + // Redis won't work without error handling. + client.on('error', () => {}); + } catch (error) { + console.warn('Failed to create Redis client:', error); + } + + if (client) { + try { + console.info('Connecting Redis client...'); - client.on('error', () => {}); + // Wait for the client to connect. + // Caveat: This will block the server from starting until the client is connected. + // And there is no timeout. Make your own timeout if needed. + await client.connect(); + console.info('Redis client connected.'); + } catch (error) { + console.warn('Failed to connect Redis client:', error); - await client.connect(); + console.warn('Disconnecting the Redis client...'); + // Try to disconnect the client to stop it from reconnecting. + client + .disconnect() + .then(() => { + console.info('Redis client disconnected.'); + }) + .catch(() => { + console.warn('Failed to quit the Redis client after failing to connect.'); + }); + } + } - const redisHandler = await createRedisHandler({ - client, - // timeout for the Redis client operations like `get` and `set` - // after this timeout, the operation will be considered failed and the `localHandler` will be used - timeoutMs: 5000, - }); + /** @type {import("@neshca/cache-handler").Handler | null} */ + let handler; - const localHandler = createLruHandler(); + if (client?.isReady) { + // Create the `redis-stack` Handler if the client is available and connected. + handler = await createRedisHandler({ + client, + keyPrefix: 'prefix:', + timeoutMs: 1000, + }); + } else { + // Fallback to LRU handler if Redis client is not available. + // The application will still work, but the cache will be in memory only and not shared. + handler = createLruHandler(); + console.warn('Falling back to LRU handler because Redis client is not available.'); + } return { - handlers: [redisHandler, localHandler], + handlers: [handler], }; }); diff --git a/packages/cache-handler/src/common-types.ts b/packages/cache-handler/src/common-types.ts index f413a49e..fdce45ac 100644 --- a/packages/cache-handler/src/common-types.ts +++ b/packages/cache-handler/src/common-types.ts @@ -23,7 +23,7 @@ export type CreateRedisStackHandlerOptions> */ keyPrefix?: string; /** - * Timeout in milliseconds for Redis operations. + * Optional. Timeout in milliseconds for Redis operations. * * @default 5000 // 5000 ms * diff --git a/packages/cache-handler/src/handlers/local-lru.ts b/packages/cache-handler/src/handlers/local-lru.ts index aedc5b61..b8a8a7c3 100644 --- a/packages/cache-handler/src/handlers/local-lru.ts +++ b/packages/cache-handler/src/handlers/local-lru.ts @@ -4,8 +4,13 @@ import createCacheStore from '@neshca/next-lru-cache/next-cache-handler-value'; import { NEXT_CACHE_IMPLICIT_TAG_ID } from '@neshca/next-common'; import type { Handler } from '../cache-handler'; +/** + * @deprecated Use {@link LruCacheOptions} instead. + */ export type LruCacheHandlerOptions = LruCacheOptions; +export type { LruCacheOptions }; + /** * Creates an LRU (Least Recently Used) cache Handler. * @@ -14,7 +19,7 @@ export type LruCacheHandlerOptions = LruCacheOptions; * The handler includes methods to get and set cache values. * Revalidation is handled by the `CacheHandler` class. * - * @param options - The configuration options for the LRU cache handler. See {@link LruCacheHandlerOptions}. + * @param options - The configuration options for the LRU cache handler. See {@link LruCacheOptions}. * * @returns An object representing the cache, with methods for cache operations. * @@ -31,7 +36,7 @@ export type LruCacheHandlerOptions = LruCacheOptions; * * @since 1.0.0 */ -export default function createHandler({ ...lruOptions }: LruCacheHandlerOptions = {}): Handler { +export default function createHandler({ ...lruOptions }: LruCacheOptions = {}): Handler { const lruCacheStore = createCacheStore(lruOptions); const revalidatedTags = new Map(); From 9ccfcd547fd1f5f42fbf0e8c84515e725bb05e9e Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Fri, 19 Apr 2024 22:10:27 +0300 Subject: [PATCH 203/458] Version Packages (#482) Co-authored-by: github-actions[bot] --- .changeset/fast-ducks-tie.md | 22 ---------------------- packages/cache-handler/CHANGELOG.md | 23 +++++++++++++++++++++++ packages/cache-handler/package.json | 2 +- 3 files changed, 24 insertions(+), 23 deletions(-) delete mode 100644 .changeset/fast-ducks-tie.md diff --git a/.changeset/fast-ducks-tie.md b/.changeset/fast-ducks-tie.md deleted file mode 100644 index d2b07617..00000000 --- a/.changeset/fast-ducks-tie.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -'@neshca/cache-handler': patch ---- - -Updated types, JSDoc and the documentation. - -#### Documentation - -- added the documentation for the pre-built `redis-stack`, `redis-strings` and `local-lru` Handlers - -#### `@neshca/cache-handle/local-lru` - -- marked `LruCacheHandlerOptions` type as deprecated -- added `LruCacheOptions` export. - -#### `@neshca/cache-handle/redis-stack` - -- marked `timeoutMs` option as optional - -#### `@neshca/cache-handle/redis-strings` - -- marked `timeoutMs` option as optional diff --git a/packages/cache-handler/CHANGELOG.md b/packages/cache-handler/CHANGELOG.md index 3ef81ba0..cb7e7434 100644 --- a/packages/cache-handler/CHANGELOG.md +++ b/packages/cache-handler/CHANGELOG.md @@ -1,5 +1,28 @@ # @neshca/cache-handler +## 1.3.1 + +### Patch Changes + +- 3200068: Updated types, JSDoc and the documentation. + + #### Documentation + + - added the documentation for the pre-built `redis-stack`, `redis-strings` and `local-lru` Handlers + + #### `@neshca/cache-handle/local-lru` + + - marked `LruCacheHandlerOptions` type as deprecated + - added `LruCacheOptions` export. + + #### `@neshca/cache-handle/redis-stack` + + - marked `timeoutMs` option as optional + + #### `@neshca/cache-handle/redis-strings` + + - marked `timeoutMs` option as optional + ## 1.3.0 ### Minor Changes diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 8991db7c..e3778d5e 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -1,6 +1,6 @@ { "name": "@neshca/cache-handler", - "version": "1.3.0", + "version": "1.3.1", "description": "Next.js self-hosting simplified.", "keywords": [ "cache", From f6e00a6a518b811d552755e815c0043c6f262dcc Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 23 Apr 2024 00:03:37 +0300 Subject: [PATCH 204/458] Bump @biomejs/biome from 1.7.0 to 1.7.1 (#485) Bumps [@biomejs/biome](https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome) from 1.7.0 to 1.7.1. - [Release notes](https://github.com/biomejs/biome/releases) - [Changelog](https://github.com/biomejs/biome/blob/main/CHANGELOG.md) - [Commits](https://github.com/biomejs/biome/commits/cli/v1.7.1/packages/@biomejs/biome) --- updated-dependencies: - dependency-name: "@biomejs/biome" dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 74 +++++++++++++++++++++++------------------------ package.json | 2 +- 2 files changed, 38 insertions(+), 38 deletions(-) diff --git a/package-lock.json b/package-lock.json index d84cbc25..7692f3d6 100644 --- a/package-lock.json +++ b/package-lock.json @@ -20,7 +20,7 @@ }, "devDependencies": { "@actions/core": "1.10.1", - "@biomejs/biome": "1.7.0", + "@biomejs/biome": "1.7.1", "@repo/prettier-config": "*", "@repo/typescript-config": "*", "diffscribe": "*", @@ -1240,9 +1240,9 @@ } }, "node_modules/@biomejs/biome": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/@biomejs/biome/-/biome-1.7.0.tgz", - "integrity": "sha512-mejiRhnAq6UrXtYvjWJUKdstcT58n0/FfKemFf3d2Ou0HxOdS88HQmWtQ/UgyZvOEPD572YbFTb6IheyROpqkw==", + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/@biomejs/biome/-/biome-1.7.1.tgz", + "integrity": "sha512-wb2UNoFXcgaMdKXKT5ytsYntaogl2FSTjDt20CZynF3v7OXQUcIpTrr+be3XoOGpoZRj3Ytq9TSpmplUREXmeA==", "dev": true, "hasInstallScript": true, "bin": { @@ -1256,20 +1256,20 @@ "url": "https://opencollective.com/biome" }, "optionalDependencies": { - "@biomejs/cli-darwin-arm64": "1.7.0", - "@biomejs/cli-darwin-x64": "1.7.0", - "@biomejs/cli-linux-arm64": "1.7.0", - "@biomejs/cli-linux-arm64-musl": "1.7.0", - "@biomejs/cli-linux-x64": "1.7.0", - "@biomejs/cli-linux-x64-musl": "1.7.0", - "@biomejs/cli-win32-arm64": "1.7.0", - "@biomejs/cli-win32-x64": "1.7.0" + "@biomejs/cli-darwin-arm64": "1.7.1", + "@biomejs/cli-darwin-x64": "1.7.1", + "@biomejs/cli-linux-arm64": "1.7.1", + "@biomejs/cli-linux-arm64-musl": "1.7.1", + "@biomejs/cli-linux-x64": "1.7.1", + "@biomejs/cli-linux-x64-musl": "1.7.1", + "@biomejs/cli-win32-arm64": "1.7.1", + "@biomejs/cli-win32-x64": "1.7.1" } }, "node_modules/@biomejs/cli-darwin-arm64": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-1.7.0.tgz", - "integrity": "sha512-12TaeaKHU4SAZt0fQJ2bYk1jUb4foope7LmgDE5p3c0uMxd3mFkg1k7G721T+K6UHYULcSOQDsNNM8DhYi8Irg==", + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-1.7.1.tgz", + "integrity": "sha512-qfLrIIB58dkgiY/1tgG6fSCBK22PZaSIf6blweZBsG6iMij05mEuJt50ne+zPnNFNUmt8t43NC/qOXT3iFHQBA==", "cpu": [ "arm64" ], @@ -1283,9 +1283,9 @@ } }, "node_modules/@biomejs/cli-darwin-x64": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-x64/-/cli-darwin-x64-1.7.0.tgz", - "integrity": "sha512-6Qq1BSIB0cpp0cQNqO/+EiUV7FE3jMpF6w7+AgIBXp0oJxUWb2Ff0RDZdO9bfzkimXD58j0vGpNHMGnCcjDV2Q==", + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-x64/-/cli-darwin-x64-1.7.1.tgz", + "integrity": "sha512-OGeyNsEcp5VnKbF9/TBjPCTHNEOm7oHegEve07U3KZmzqfpw2Oe3i9DVW8t6vvj1TYbrwWYCld25H34kBDY7Vg==", "cpu": [ "x64" ], @@ -1299,9 +1299,9 @@ } }, "node_modules/@biomejs/cli-linux-arm64": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64/-/cli-linux-arm64-1.7.0.tgz", - "integrity": "sha512-GwSci7xBJ2j1CrdDXDUVXnUtrvypEz/xmiYPpFeVdlX5p95eXx+7FekPPbJfhGGw5WKSsKZ+V8AAlbN+kUwJWw==", + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64/-/cli-linux-arm64-1.7.1.tgz", + "integrity": "sha512-MQDf5wErj1iBvlcxCyOa0XqZYN8WJrupVgbNnqhntO3yVATg8GxduVUn1fDSaolznkDRsj7Pz3Xu1esBFwvfmg==", "cpu": [ "arm64" ], @@ -1315,9 +1315,9 @@ } }, "node_modules/@biomejs/cli-linux-arm64-musl": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-1.7.0.tgz", - "integrity": "sha512-pwIY80nU7SAxrVVZ6HD9ah1pruwh9ZqlSR0Nvbg4ZJqQa0POhiB+RJx7+/1Ml2mTZdrl8kb/YiwQpD16uwb5wg==", + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-1.7.1.tgz", + "integrity": "sha512-giH0/CzLOJ+wbxLxd5Shnr5xQf5fGnTRWLDe3lzjaF7IplVydNCEeZJtncB01SvyA6DAFJsvQ4LNxzAOQfEVCg==", "cpu": [ "arm64" ], @@ -1331,9 +1331,9 @@ } }, "node_modules/@biomejs/cli-linux-x64": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64/-/cli-linux-x64-1.7.0.tgz", - "integrity": "sha512-1y+odKQsyHcw0JCGRuqhbx7Y6jxOVSh4lGIVDdJxW1b55yD22DY1kcMEfhUte6f95OIc2uqfkwtiI6xQAiZJdw==", + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64/-/cli-linux-x64-1.7.1.tgz", + "integrity": "sha512-3wmCsGcC3KZ4pfTknXHfyMMlXPMhgfXVAcG5GlrR+Tq2JGiAw0EUydaLpsSBEbcG7IxH6OiUZEJZ95kAycCHBA==", "cpu": [ "x64" ], @@ -1347,9 +1347,9 @@ } }, "node_modules/@biomejs/cli-linux-x64-musl": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-1.7.0.tgz", - "integrity": "sha512-KzCA0mW4LSbCd7XZWaEJvTOTTBjfJoVEXkfq1fsXxww1HB+ww5PGMbhbIcbYCsj2CTJUifeD5hOkyuBVppU1xQ==", + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-1.7.1.tgz", + "integrity": "sha512-ySNDtPhsLxU125IFHHAxfpoHBpkM56s4mEXeO70GZtgZay/o1h8IUPWCWf5Z7gKgc4jwgYN1U1U9xabI3hZVAg==", "cpu": [ "x64" ], @@ -1363,9 +1363,9 @@ } }, "node_modules/@biomejs/cli-win32-arm64": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-arm64/-/cli-win32-arm64-1.7.0.tgz", - "integrity": "sha512-AvLDUYZBpOUFgS/mni4VruIoVV3uSGbKSkZQBPXsHgL0w4KttLll3NBrVanmWxOHsom6C6ocHLyfAY8HUc8TXg==", + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-arm64/-/cli-win32-arm64-1.7.1.tgz", + "integrity": "sha512-8hIDakEqZn0i6+388noYKdZ0ZrovTwnvMU/Qp/oJou0G7EPVdXupOe0oxiQSdRN0W7f6CS/yjPCYuVGzDG6r0g==", "cpu": [ "arm64" ], @@ -1379,9 +1379,9 @@ } }, "node_modules/@biomejs/cli-win32-x64": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-x64/-/cli-win32-x64-1.7.0.tgz", - "integrity": "sha512-Pylm00BAAuLVb40IH9PC17432BTsY8K4pSUvhvgR1eaalnMaD6ug9SYJTTzKDbT6r24MPAGCTiSZERyhGkGzFQ==", + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-x64/-/cli-win32-x64-1.7.1.tgz", + "integrity": "sha512-3W9k3uH6Ea6VOpAS9xkkAlS0LTfnGQjmIUCegZ8SDtK2NgJ1gO+qdEkGJb0ltahusFTN1QxJ107dM7ASA9IUEg==", "cpu": [ "x64" ], @@ -17063,7 +17063,7 @@ }, "packages/cache-handler": { "name": "@neshca/cache-handler", - "version": "1.2.1", + "version": "1.3.1", "license": "MIT", "dependencies": { "lru-cache": "10.2.0" diff --git a/package.json b/package.json index 2b5d9e42..925c977a 100644 --- a/package.json +++ b/package.json @@ -38,7 +38,7 @@ }, "devDependencies": { "@actions/core": "1.10.1", - "@biomejs/biome": "1.7.0", + "@biomejs/biome": "1.7.1", "@repo/prettier-config": "*", "@repo/typescript-config": "*", "diffscribe": "*", From d08db6f9a18f17f5b40ea11c46306e98f3509c46 Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Wed, 24 Apr 2024 16:01:49 +0300 Subject: [PATCH 205/458] Improve documentation (#491) --- .../api-reference/cache-handler-config.mdx | 16 +++++++------- .../api-reference/lifespan-parameters.mdx | 2 +- .../pages/api-reference/ttl-parameters.mdx | 6 +++++- .../configuration/build-id-as-prefix-key.mdx | 21 +++++-------------- .../configuration/opt-out-cache-on-build.mdx | 10 +++------ docs/cache-handler-docs/src/pages/server.mdx | 5 +---- .../pages/usage/creating-a-custom-handler.mdx | 9 ++------ 7 files changed, 25 insertions(+), 44 deletions(-) diff --git a/docs/cache-handler-docs/src/pages/api-reference/cache-handler-config.mdx b/docs/cache-handler-docs/src/pages/api-reference/cache-handler-config.mdx index a1768cd2..39de61c3 100644 --- a/docs/cache-handler-docs/src/pages/api-reference/cache-handler-config.mdx +++ b/docs/cache-handler-docs/src/pages/api-reference/cache-handler-config.mdx @@ -1,4 +1,4 @@ -# CacheHandlerValue +# CacheHandlerConfig ```typescript type CacheHandlerConfig = { @@ -19,22 +19,22 @@ In the example below, we use a local cache and a Redis cache. If the Redis cache ```js filename="cache-handler.mjs" copy CacheHandler.onCreation(async () => { - let redisHandler; + let handler; if (process.env.REDIS_AVAILABLE) { await client.connect(); - redisHandler = await createRedisHandler({ + handler = await createRedisHandler({ client, }); + } else { + handler = { + // ... + }; } - const localHandler = { - // ... - }; - return { - handlers: [redisHandler, localHandler], + handlers: [handler], }; }); ``` diff --git a/docs/cache-handler-docs/src/pages/api-reference/lifespan-parameters.mdx b/docs/cache-handler-docs/src/pages/api-reference/lifespan-parameters.mdx index 3e882870..c0099fba 100644 --- a/docs/cache-handler-docs/src/pages/api-reference/lifespan-parameters.mdx +++ b/docs/cache-handler-docs/src/pages/api-reference/lifespan-parameters.mdx @@ -1,4 +1,4 @@ -# Handler +# LifespanParameters ```typescript type LifespanParameters = { diff --git a/docs/cache-handler-docs/src/pages/api-reference/ttl-parameters.mdx b/docs/cache-handler-docs/src/pages/api-reference/ttl-parameters.mdx index 9bf62113..59508baa 100644 --- a/docs/cache-handler-docs/src/pages/api-reference/ttl-parameters.mdx +++ b/docs/cache-handler-docs/src/pages/api-reference/ttl-parameters.mdx @@ -51,7 +51,11 @@ CacheHandler.onCreation(async () => { return { handlers: [mainHandler, fallbackHandler], - ttl: { defaultStaleAge: 3600, estimateExpireAge: (staleAge) => staleAge * 2 }, + // will apply to all Handlers + ttl: { + defaultStaleAge: 3600, + estimateExpireAge: (staleAge) => staleAge * 2, + }, }; }); ``` diff --git a/docs/cache-handler-docs/src/pages/configuration/build-id-as-prefix-key.mdx b/docs/cache-handler-docs/src/pages/configuration/build-id-as-prefix-key.mdx index ec93ddb1..0910a9b7 100644 --- a/docs/cache-handler-docs/src/pages/configuration/build-id-as-prefix-key.mdx +++ b/docs/cache-handler-docs/src/pages/configuration/build-id-as-prefix-key.mdx @@ -19,26 +19,17 @@ To use `buildId` for prefixing the cache keys, use either of the following solut #### Using `process.env.GIT_HASH` -```js filename="next.config.js" copy -const nextConfig = { - generateBuildId: async () => { - // This could be anything, using the latest git hash - return process.env.GIT_HASH; - }, -}; -``` - ```js filename="cache-handler.mjs" copy CacheHandler.onCreation(async () => { await client.connect(); - const redisHandler = await createRedisHandler({ + const handler = await createRedisHandler({ client, keyPrefix: process.env.GIT_HASH, }); return { - handlers: [redisHandler], + handlers: [handler], }; }); ``` @@ -59,21 +50,19 @@ const nextConfig = { ```js filename="cache-handler.mjs" copy CacheHandler.onCreation(async ({ buildId }) => { - let redisHandler; + let handler; if (buildId) { await client.connect(); - redisHandler = await createRedisHandler({ + handler = await createRedisHandler({ client, keyPrefix: `${buildId}:`, }); } - const localHandler = createLruHandler(); - return { - handlers: [redisHandler, localHandler], + handlers: [handler], }; }); ``` diff --git a/docs/cache-handler-docs/src/pages/configuration/opt-out-cache-on-build.mdx b/docs/cache-handler-docs/src/pages/configuration/opt-out-cache-on-build.mdx index 27dfa269..e0aec5bc 100644 --- a/docs/cache-handler-docs/src/pages/configuration/opt-out-cache-on-build.mdx +++ b/docs/cache-handler-docs/src/pages/configuration/opt-out-cache-on-build.mdx @@ -8,22 +8,18 @@ There are scenarios, especially during deployment, where your Redis server may n ```js filename="cache-handler.mjs" copy CacheHandler.onCreation(async () => { - let redisHandler; + let handler; if (process.env.REDIS_AVAILABLE) { await client.connect(); - redisHandler = await createRedisHandler({ + handler = await createRedisHandler({ client, }); } - const localHandler = { - // ... - }; - return { - handlers: [redisHandler, localHandler], + handlers: [handler], }; }); ``` diff --git a/docs/cache-handler-docs/src/pages/server.mdx b/docs/cache-handler-docs/src/pages/server.mdx index 88ee89f5..9e390ae7 100644 --- a/docs/cache-handler-docs/src/pages/server.mdx +++ b/docs/cache-handler-docs/src/pages/server.mdx @@ -29,7 +29,6 @@ Create a file called `cache-handler.mjs` next to your `next.config.js` with the ```js filename="cache-handler.mjs" copy import { CacheHandler } from '@neshca/cache-handler'; -import createLruHandler from '@neshca/cache-handler/local-lru'; import createServerHandler from '@neshca/cache-handler/server'; const baseUrl = process.env.REMOTE_CACHE_SERVER_BASE_URL ?? 'http://localhost:8080'; @@ -39,10 +38,8 @@ CacheHandler.onCreation(() => { baseUrl, }); - const localHandler = createLruHandler(); - return { - handlers: [httpHandler, localHandler], + handlers: [httpHandler], }; }); diff --git a/docs/cache-handler-docs/src/pages/usage/creating-a-custom-handler.mdx b/docs/cache-handler-docs/src/pages/usage/creating-a-custom-handler.mdx index eb030ae3..f765356b 100644 --- a/docs/cache-handler-docs/src/pages/usage/creating-a-custom-handler.mdx +++ b/docs/cache-handler-docs/src/pages/usage/creating-a-custom-handler.mdx @@ -10,7 +10,7 @@ Install the `redis` package: npm install -D redis ``` -Then, install Redis server locally or use a cloud-based Redis service. Learn how to run Redis locally by following the [Install Redis Stack documentation](https://redis.io/docs/install/install-stack/docker/). Redis Stack also includes a RedisInsight tool to manage and monitor your Redis instance. +Then, install the Redis server locally or use a cloud-based Redis service. Learn how to run Redis locally by following the [Install Redis Stack documentation](https://redis.io/docs/install/install-stack/docker/). Redis Stack also includes a RedisInsight tool to manage and monitor your Redis instance. ### Guide @@ -19,7 +19,6 @@ Create a file called `cache-handler.mjs` next to your `next.config.js` with the ```js filename="cache-handler.mjs" copy import { CacheHandler } from '@neshca/cache-handler'; import { isImplicitTag } from '@neshca/cache-handler/helpers'; -import createLruHandler from '@neshca/cache-handler/local-lru'; import { createClient, commandOptions } from 'redis'; CacheHandler.onCreation(async () => { @@ -227,15 +226,11 @@ CacheHandler.onCreation(async () => { }, }; - // Create a local LRU handler. - // This handler is used as a fallback for the Redis handler. - const localHandler = createLruHandler(); - return { // The order of the handlers is important. // The CacheHandler will run get methods in the order of the handlers array. // Other methods will be run in parallel. - handlers: [customRedisHandler, localHandler], + handlers: [customRedisHandler], }; }); From 35e5a8e9bc01210962bcbd9cd84d7f61a342dbf0 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 26 Apr 2024 00:29:54 +0300 Subject: [PATCH 206/458] Bump the turbo group with 2 updates (#494) Bumps the turbo group with 2 updates: [turbo](https://github.com/vercel/turbo) and [eslint-config-turbo](https://github.com/vercel/turbo/tree/HEAD/packages/eslint-config-turbo). Updates `turbo` from 1.13.2 to 1.13.3 - [Release notes](https://github.com/vercel/turbo/releases) - [Changelog](https://github.com/vercel/turbo/blob/main/release.md) - [Commits](https://github.com/vercel/turbo/compare/v1.13.2...v1.13.3) Updates `eslint-config-turbo` from 1.13.2 to 1.13.3 - [Release notes](https://github.com/vercel/turbo/releases) - [Changelog](https://github.com/vercel/turbo/blob/main/release.md) - [Commits](https://github.com/vercel/turbo/commits/v1.13.3/packages/eslint-config-turbo) --- updated-dependencies: - dependency-name: turbo dependency-type: direct:development update-type: version-update:semver-patch dependency-group: turbo - dependency-name: eslint-config-turbo dependency-type: direct:development update-type: version-update:semver-patch dependency-group: turbo ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- internal/eslint-config/package.json | 2 +- package-lock.json | 72 ++++++++++++++--------------- package.json | 2 +- 3 files changed, 38 insertions(+), 38 deletions(-) diff --git a/internal/eslint-config/package.json b/internal/eslint-config/package.json index 3b20b3c4..32d605a4 100644 --- a/internal/eslint-config/package.json +++ b/internal/eslint-config/package.json @@ -10,7 +10,7 @@ "@typescript-eslint/parser": "7.5.0", "@vercel/style-guide": "6.0.0", "eslint-config-prettier": "9.1.0", - "eslint-config-turbo": "1.13.2", + "eslint-config-turbo": "1.13.3", "eslint-plugin-only-warn": "1.1.0", "typescript": "5.4.5" } diff --git a/package-lock.json b/package-lock.json index 7692f3d6..76fdaff8 100644 --- a/package-lock.json +++ b/package-lock.json @@ -26,7 +26,7 @@ "diffscribe": "*", "glob": "10.3.12", "prettier": "3.2.5", - "turbo": "1.13.2" + "turbo": "1.13.3" }, "engines": { "node": ">=20.9.0", @@ -488,7 +488,7 @@ "@typescript-eslint/parser": "7.5.0", "@vercel/style-guide": "6.0.0", "eslint-config-prettier": "9.1.0", - "eslint-config-turbo": "1.13.2", + "eslint-config-turbo": "1.13.3", "eslint-plugin-only-warn": "1.1.0", "typescript": "5.4.5" } @@ -6634,12 +6634,12 @@ } }, "node_modules/eslint-config-turbo": { - "version": "1.13.2", - "resolved": "https://registry.npmjs.org/eslint-config-turbo/-/eslint-config-turbo-1.13.2.tgz", - "integrity": "sha512-TzvsMwNJx/P4JYw79iFqbyQApnyT050gW7dBxnNeNVl3pVMnT2rwaFo9Q3Hc49Tp5NANxEwYN9RStF50P/IwGA==", + "version": "1.13.3", + "resolved": "https://registry.npmjs.org/eslint-config-turbo/-/eslint-config-turbo-1.13.3.tgz", + "integrity": "sha512-if/QtwEiWZ5b7Bg8yZBPSvS0TeCG2Zvfa/+XBYANS7uSYucjmW+BBC8enJB0PqpB/YLGGOumeo3x7h1Nuba9iw==", "dev": true, "dependencies": { - "eslint-plugin-turbo": "1.13.2" + "eslint-plugin-turbo": "1.13.3" }, "peerDependencies": { "eslint": ">6.6.0" @@ -7324,9 +7324,9 @@ } }, "node_modules/eslint-plugin-turbo": { - "version": "1.13.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-turbo/-/eslint-plugin-turbo-1.13.2.tgz", - "integrity": "sha512-QNaihF0hTRjfOBd1SLHrftm8V3pOU35CNS/C0/Z6qY1xxdL1PSv4IctEIldSMX7/A1jOPYwMPO7wYwPXgjgp/g==", + "version": "1.13.3", + "resolved": "https://registry.npmjs.org/eslint-plugin-turbo/-/eslint-plugin-turbo-1.13.3.tgz", + "integrity": "sha512-RjmlnqYsEqnJ+U3M3IS5jLJDjWv5NsvReCpsC61n5pJ4JMHTZ/lU0EIoL1ccuL1L5wP0APzdXdByBxERcPQ+Nw==", "dev": true, "dependencies": { "dotenv": "16.0.3" @@ -15864,26 +15864,26 @@ } }, "node_modules/turbo": { - "version": "1.13.2", - "resolved": "https://registry.npmjs.org/turbo/-/turbo-1.13.2.tgz", - "integrity": "sha512-rX/d9f4MgRT3yK6cERPAkfavIxbpBZowDQpgvkYwGMGDQ0Nvw1nc0NVjruE76GrzXQqoxR1UpnmEP54vBARFHQ==", + "version": "1.13.3", + "resolved": "https://registry.npmjs.org/turbo/-/turbo-1.13.3.tgz", + "integrity": "sha512-n17HJv4F4CpsYTvKzUJhLbyewbXjq1oLCi90i5tW1TiWDz16ML1eDG7wi5dHaKxzh5efIM56SITnuVbMq5dk4g==", "dev": true, "bin": { "turbo": "bin/turbo" }, "optionalDependencies": { - "turbo-darwin-64": "1.13.2", - "turbo-darwin-arm64": "1.13.2", - "turbo-linux-64": "1.13.2", - "turbo-linux-arm64": "1.13.2", - "turbo-windows-64": "1.13.2", - "turbo-windows-arm64": "1.13.2" + "turbo-darwin-64": "1.13.3", + "turbo-darwin-arm64": "1.13.3", + "turbo-linux-64": "1.13.3", + "turbo-linux-arm64": "1.13.3", + "turbo-windows-64": "1.13.3", + "turbo-windows-arm64": "1.13.3" } }, "node_modules/turbo-darwin-64": { - "version": "1.13.2", - "resolved": "https://registry.npmjs.org/turbo-darwin-64/-/turbo-darwin-64-1.13.2.tgz", - "integrity": "sha512-CCSuD8CfmtncpohCuIgq7eAzUas0IwSbHfI8/Q3vKObTdXyN8vAo01gwqXjDGpzG9bTEVedD0GmLbD23dR0MLA==", + "version": "1.13.3", + "resolved": "https://registry.npmjs.org/turbo-darwin-64/-/turbo-darwin-64-1.13.3.tgz", + "integrity": "sha512-glup8Qx1qEFB5jerAnXbS8WrL92OKyMmg5Hnd4PleLljAeYmx+cmmnsmLT7tpaVZIN58EAAwu8wHC6kIIqhbWA==", "cpu": [ "x64" ], @@ -15894,9 +15894,9 @@ ] }, "node_modules/turbo-darwin-arm64": { - "version": "1.13.2", - "resolved": "https://registry.npmjs.org/turbo-darwin-arm64/-/turbo-darwin-arm64-1.13.2.tgz", - "integrity": "sha512-0HySm06/D2N91rJJ89FbiI/AodmY8B3WDSFTVEpu2+8spUw7hOJ8okWOT0e5iGlyayUP9gr31eOeL3VFZkpfCw==", + "version": "1.13.3", + "resolved": "https://registry.npmjs.org/turbo-darwin-arm64/-/turbo-darwin-arm64-1.13.3.tgz", + "integrity": "sha512-/np2xD+f/+9qY8BVtuOQXRq5f9LehCFxamiQnwdqWm5iZmdjygC5T3uVSYuagVFsZKMvX3ycySwh8dylGTl6lg==", "cpu": [ "arm64" ], @@ -15907,9 +15907,9 @@ ] }, "node_modules/turbo-linux-64": { - "version": "1.13.2", - "resolved": "https://registry.npmjs.org/turbo-linux-64/-/turbo-linux-64-1.13.2.tgz", - "integrity": "sha512-7HnibgbqZrjn4lcfIouzlPu8ZHSBtURG4c7Bedu7WJUDeZo+RE1crlrQm8wuwO54S0siYqUqo7GNHxu4IXbioQ==", + "version": "1.13.3", + "resolved": "https://registry.npmjs.org/turbo-linux-64/-/turbo-linux-64-1.13.3.tgz", + "integrity": "sha512-G+HGrau54iAnbXLfl+N/PynqpDwi/uDzb6iM9hXEDG+yJnSJxaHMShhOkXYJPk9offm9prH33Khx2scXrYVW1g==", "cpu": [ "x64" ], @@ -15920,9 +15920,9 @@ ] }, "node_modules/turbo-linux-arm64": { - "version": "1.13.2", - "resolved": "https://registry.npmjs.org/turbo-linux-arm64/-/turbo-linux-arm64-1.13.2.tgz", - "integrity": "sha512-sUq4dbpk6SNKg/Hkwn256Vj2AEYSQdG96repio894h5/LEfauIK2QYiC/xxAeW3WBMc6BngmvNyURIg7ltrePg==", + "version": "1.13.3", + "resolved": "https://registry.npmjs.org/turbo-linux-arm64/-/turbo-linux-arm64-1.13.3.tgz", + "integrity": "sha512-qWwEl5VR02NqRyl68/3pwp3c/olZuSp+vwlwrunuoNTm6JXGLG5pTeme4zoHNnk0qn4cCX7DFrOboArlYxv0wQ==", "cpu": [ "arm64" ], @@ -15933,9 +15933,9 @@ ] }, "node_modules/turbo-windows-64": { - "version": "1.13.2", - "resolved": "https://registry.npmjs.org/turbo-windows-64/-/turbo-windows-64-1.13.2.tgz", - "integrity": "sha512-DqzhcrciWq3dpzllJR2VVIyOhSlXYCo4mNEWl98DJ3FZ08PEzcI3ceudlH6F0t/nIcfSItK1bDP39cs7YoZHEA==", + "version": "1.13.3", + "resolved": "https://registry.npmjs.org/turbo-windows-64/-/turbo-windows-64-1.13.3.tgz", + "integrity": "sha512-Nudr4bRChfJzBPzEmpVV85VwUYRCGKecwkBFpbp2a4NtrJ3+UP1VZES653ckqCu2FRyRuS0n03v9euMbAvzH+Q==", "cpu": [ "x64" ], @@ -15946,9 +15946,9 @@ ] }, "node_modules/turbo-windows-arm64": { - "version": "1.13.2", - "resolved": "https://registry.npmjs.org/turbo-windows-arm64/-/turbo-windows-arm64-1.13.2.tgz", - "integrity": "sha512-WnPMrwfCXxK69CdDfS1/j2DlzcKxSmycgDAqV0XCYpK/812KB0KlvsVAt5PjEbZGXkY88pCJ1BLZHAjF5FcbqA==", + "version": "1.13.3", + "resolved": "https://registry.npmjs.org/turbo-windows-arm64/-/turbo-windows-arm64-1.13.3.tgz", + "integrity": "sha512-ouJCgsVLd3icjRLmRvHQDDZnmGzT64GBupM1Y+TjtYn2LVaEBoV6hicFy8x5DUpnqdLy+YpCzRMkWlwhmkX7sQ==", "cpu": [ "arm64" ], diff --git a/package.json b/package.json index 925c977a..1e60cc41 100644 --- a/package.json +++ b/package.json @@ -44,7 +44,7 @@ "diffscribe": "*", "glob": "10.3.12", "prettier": "3.2.5", - "turbo": "1.13.2" + "turbo": "1.13.3" }, "engines": { "node": ">=20.9.0", From df4766a73fa0e84957e2784ec1663d2544a1af7d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 26 Apr 2024 00:55:27 +0300 Subject: [PATCH 207/458] Bump the react group with 4 updates (#495) Bumps the react group with 4 updates: [react](https://github.com/facebook/react/tree/HEAD/packages/react), [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react), [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) and [@types/react-dom](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react-dom). Updates `react` from 18.2.0 to 18.3.0 - [Release notes](https://github.com/facebook/react/releases) - [Changelog](https://github.com/facebook/react/blob/main/CHANGELOG.md) - [Commits](https://github.com/facebook/react/commits/HEAD/packages/react) Updates `@types/react` from 18.2.79 to 18.3.0 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react) Updates `react-dom` from 18.2.0 to 18.3.0 - [Release notes](https://github.com/facebook/react/releases) - [Changelog](https://github.com/facebook/react/blob/main/CHANGELOG.md) - [Commits](https://github.com/facebook/react/commits/HEAD/packages/react-dom) Updates `@types/react-dom` from 18.2.25 to 18.3.0 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react-dom) --- updated-dependencies: - dependency-name: react dependency-type: direct:production update-type: version-update:semver-minor dependency-group: react - dependency-name: "@types/react" dependency-type: direct:development update-type: version-update:semver-minor dependency-group: react - dependency-name: react-dom dependency-type: direct:production update-type: version-update:semver-minor dependency-group: react - dependency-name: "@types/react-dom" dependency-type: direct:development update-type: version-update:semver-minor dependency-group: react ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 8 ++--- docs/cache-handler-docs/package.json | 8 ++--- package-lock.json | 50 ++++++++++++++-------------- 3 files changed, 33 insertions(+), 33 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 8cc6fba3..b1e3a8c6 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -18,8 +18,8 @@ }, "dependencies": { "next": "14.2.0-canary.61", - "react": "18.2.0", - "react-dom": "18.2.0" + "react": "18.3.0", + "react-dom": "18.3.0" }, "devDependencies": { "@neshca/cache-handler": "*", @@ -29,8 +29,8 @@ "@repo/typescript-config": "*", "@types/eslint": "8.56.7", "@types/node": "20.12.7", - "@types/react": "18.2.79", - "@types/react-dom": "18.2.25", + "@types/react": "18.3.0", + "@types/react-dom": "18.3.0", "axios": "1.6.8", "dotenv-cli": "7.4.1", "eslint": "8.57.0", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index b907cbe7..d68661cb 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -14,8 +14,8 @@ "next": "14.1.0", "nextra": "2.13.4", "nextra-theme-docs": "2.13.4", - "react": "18.2.0", - "react-dom": "18.2.0" + "react": "18.3.0", + "react-dom": "18.3.0" }, "devDependencies": { "@next/eslint-plugin-next": "14.1.0", @@ -23,8 +23,8 @@ "@repo/typescript-config": "*", "@types/eslint": "8.56.7", "@types/node": "20.12.7", - "@types/react": "18.2.79", - "@types/react-dom": "18.2.25", + "@types/react": "18.3.0", + "@types/react-dom": "18.3.0", "eslint": "8.57.0", "typescript": "5.4.5" } diff --git a/package-lock.json b/package-lock.json index 76fdaff8..f4af7730 100644 --- a/package-lock.json +++ b/package-lock.json @@ -38,8 +38,8 @@ "license": "MIT", "dependencies": { "next": "14.2.0-canary.61", - "react": "18.2.0", - "react-dom": "18.2.0" + "react": "18.3.0", + "react-dom": "18.3.0" }, "devDependencies": { "@neshca/cache-handler": "*", @@ -49,8 +49,8 @@ "@repo/typescript-config": "*", "@types/eslint": "8.56.7", "@types/node": "20.12.7", - "@types/react": "18.2.79", - "@types/react-dom": "18.2.25", + "@types/react": "18.3.0", + "@types/react-dom": "18.3.0", "axios": "1.6.8", "dotenv-cli": "7.4.1", "eslint": "8.57.0", @@ -126,8 +126,8 @@ "next": "14.1.0", "nextra": "2.13.4", "nextra-theme-docs": "2.13.4", - "react": "18.2.0", - "react-dom": "18.2.0" + "react": "18.3.0", + "react-dom": "18.3.0" }, "devDependencies": { "@next/eslint-plugin-next": "14.1.0", @@ -135,8 +135,8 @@ "@repo/typescript-config": "*", "@types/eslint": "8.56.7", "@types/node": "20.12.7", - "@types/react": "18.2.79", - "@types/react-dom": "18.2.25", + "@types/react": "18.3.0", + "@types/react-dom": "18.3.0", "eslint": "8.57.0", "typescript": "5.4.5" } @@ -3768,18 +3768,18 @@ "integrity": "sha512-5zvhXYtRNRluoE/jAp4GVsSduVUzNWKkOZrCDBWYtE7biZywwdC2AcEzg+cSMLFRfVgeAFqpfNabiPjxFddV1Q==" }, "node_modules/@types/react": { - "version": "18.2.79", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.79.tgz", - "integrity": "sha512-RwGAGXPl9kSXwdNTafkOEuFrTBD5SA2B3iEB96xi8+xu5ddUa/cpvyVCSNn+asgLCTHkb5ZxN8gbuibYJi4s1w==", + "version": "18.3.0", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.0.tgz", + "integrity": "sha512-DiUcKjzE6soLyln8NNZmyhcQjVv+WsUIFSqetMN0p8927OztKT4VTfFTqsbAi5oAGIcgOmOajlfBqyptDDjZRw==", "dependencies": { "@types/prop-types": "*", "csstype": "^3.0.2" } }, "node_modules/@types/react-dom": { - "version": "18.2.25", - "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.2.25.tgz", - "integrity": "sha512-o/V48vf4MQh7juIKZU2QGDfli6p1+OOi5oXx36Hffpc9adsHeXjVp8rHuPkjd8VT8sOJ2Zp05HR7CdpGTIUFUA==", + "version": "18.3.0", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.3.0.tgz", + "integrity": "sha512-EhwApuTmMBmXuFOikhQLIBUn6uFg81SwLMOAUgodJF14SOBOCMdU04gDoYi0WOJJHD144TL32z4yDqCW3dnkQg==", "dev": true, "dependencies": { "@types/react": "*" @@ -13521,9 +13521,9 @@ } }, "node_modules/react": { - "version": "18.2.0", - "resolved": "https://registry.npmjs.org/react/-/react-18.2.0.tgz", - "integrity": "sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==", + "version": "18.3.0", + "resolved": "https://registry.npmjs.org/react/-/react-18.3.0.tgz", + "integrity": "sha512-RPutkJftSAldDibyrjuku7q11d3oy6wKOyPe5K1HA/HwwrXcEqBdHsLypkC2FFYjP7bPUa6gbzSBhw4sY2JcDg==", "dependencies": { "loose-envify": "^1.1.0" }, @@ -13532,15 +13532,15 @@ } }, "node_modules/react-dom": { - "version": "18.2.0", - "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.2.0.tgz", - "integrity": "sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==", + "version": "18.3.0", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.3.0.tgz", + "integrity": "sha512-zaKdLBftQJnvb7FtDIpZtsAIb2MZU087RM8bRDZU8LVCCFYjPTsDZJNFUWPcVz3HFSN1n/caxi0ca4B/aaVQGQ==", "dependencies": { "loose-envify": "^1.1.0", - "scheduler": "^0.23.0" + "scheduler": "^0.23.1" }, "peerDependencies": { - "react": "^18.2.0" + "react": "^18.3.0" } }, "node_modules/react-is": { @@ -14338,9 +14338,9 @@ "dev": true }, "node_modules/scheduler": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.0.tgz", - "integrity": "sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==", + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.1.tgz", + "integrity": "sha512-5GKS5JGfiah1O38Vfa9srZE4s3wdHbwjlCrvIookrg2FO9aIwKLOJXuJQFlEfNcVSOXuaL2hzDeY20uVXcUtrw==", "dependencies": { "loose-envify": "^1.1.0" } From 40ba05968612ad00648ee5c6ec20ded2ecad5d3d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 26 Apr 2024 01:37:23 +0300 Subject: [PATCH 208/458] Bump tsx from 4.7.2 to 4.7.3 (#496) Bumps [tsx](https://github.com/privatenumber/tsx) from 4.7.2 to 4.7.3. - [Release notes](https://github.com/privatenumber/tsx/releases) - [Changelog](https://github.com/privatenumber/tsx/blob/master/release.config.cjs) - [Commits](https://github.com/privatenumber/tsx/compare/v4.7.2...v4.7.3) --- updated-dependencies: - dependency-name: tsx dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- internal/backend/package.json | 2 +- package-lock.json | 16 ++++++++-------- packages/cache-handler/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 6 files changed, 13 insertions(+), 13 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index b1e3a8c6..8c6e97d8 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -38,7 +38,7 @@ "pm2": "5.3.1", "redis": "4.6.13", "rimraf": "5.0.5", - "tsx": "4.7.2", + "tsx": "4.7.3", "typescript": "5.4.5" } } diff --git a/internal/backend/package.json b/internal/backend/package.json index 79f6c162..ae67b07b 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -18,7 +18,7 @@ "@types/node": "20.12.7", "pino-pretty": "11.0.0", "rimraf": "5.0.5", - "tsx": "4.7.2", + "tsx": "4.7.3", "typescript": "5.4.5" } } diff --git a/package-lock.json b/package-lock.json index f4af7730..cd06e54e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -58,7 +58,7 @@ "pm2": "5.3.1", "redis": "4.6.13", "rimraf": "5.0.5", - "tsx": "4.7.2", + "tsx": "4.7.3", "typescript": "5.4.5" } }, @@ -467,7 +467,7 @@ "@types/node": "20.12.7", "pino-pretty": "11.0.0", "rimraf": "5.0.5", - "tsx": "4.7.2", + "tsx": "4.7.3", "typescript": "5.4.5" } }, @@ -15738,9 +15738,9 @@ "dev": true }, "node_modules/tsx": { - "version": "4.7.2", - "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.7.2.tgz", - "integrity": "sha512-BCNd4kz6fz12fyrgCTEdZHGJ9fWTGeUzXmQysh0RVocDY3h4frk05ZNCXSy4kIenF7y/QnrdiVpTsyNRn6vlAw==", + "version": "4.7.3", + "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.7.3.tgz", + "integrity": "sha512-+fQnMqIp/jxZEXLcj6WzYy9FhcS5/Dfk8y4AtzJ6ejKcKqmfTF8Gso/jtrzDggCF2zTU20gJa6n8XqPYwDAUYQ==", "dev": true, "dependencies": { "esbuild": "~0.19.10", @@ -17075,7 +17075,7 @@ "@types/node": "20.12.7", "rimraf": "5.0.5", "tsup": "8.0.2", - "tsx": "4.7.2", + "tsx": "4.7.3", "typescript": "5.4.5" }, "peerDependencies": { @@ -17128,7 +17128,7 @@ "@types/node": "20.12.7", "rimraf": "5.0.5", "tsup": "8.0.2", - "tsx": "4.7.2", + "tsx": "4.7.3", "typescript": "5.4.5" } }, @@ -17159,7 +17159,7 @@ "@types/node": "20.12.7", "rimraf": "5.0.5", "tsup": "8.0.2", - "tsx": "4.7.2", + "tsx": "4.7.3", "typescript": "5.4.5" } }, diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index e3778d5e..59e9fc79 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -82,7 +82,7 @@ "@types/node": "20.12.7", "rimraf": "5.0.5", "tsup": "8.0.2", - "tsx": "4.7.2", + "tsx": "4.7.3", "typescript": "5.4.5" }, "peerDependencies": { diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index bb63dc26..058a71e7 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -31,7 +31,7 @@ "@types/node": "20.12.7", "rimraf": "5.0.5", "tsup": "8.0.2", - "tsx": "4.7.2", + "tsx": "4.7.3", "typescript": "5.4.5" } } diff --git a/packages/server/package.json b/packages/server/package.json index fd862885..45286093 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -35,7 +35,7 @@ "@types/node": "20.12.7", "rimraf": "5.0.5", "tsup": "8.0.2", - "tsx": "4.7.2", + "tsx": "4.7.3", "typescript": "5.4.5" }, "distTags": [ From 82dc6ef17140d9d73b9f73a15511ac75cb56067e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 26 Apr 2024 02:03:25 +0300 Subject: [PATCH 209/458] Bump pino from 8.20.0 to 9.0.0 in the pino group (#492) Bumps the pino group with 1 update: [pino](https://github.com/pinojs/pino). Updates `pino` from 8.20.0 to 9.0.0 - [Release notes](https://github.com/pinojs/pino/releases) - [Commits](https://github.com/pinojs/pino/commits) --- updated-dependencies: - dependency-name: pino dependency-type: direct:production update-type: version-update:semver-major dependency-group: pino ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- internal/backend/package.json | 2 +- package-lock.json | 47 +++++++++++++++++++++++++---------- packages/server/package.json | 2 +- 3 files changed, 36 insertions(+), 15 deletions(-) diff --git a/internal/backend/package.json b/internal/backend/package.json index ae67b07b..c051a9b8 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -11,7 +11,7 @@ }, "dependencies": { "fastify": "4.26.2", - "pino": "8.20.0" + "pino": "9.0.0" }, "devDependencies": { "@repo/typescript-config": "*", diff --git a/package-lock.json b/package-lock.json index cd06e54e..08333006 100644 --- a/package-lock.json +++ b/package-lock.json @@ -460,7 +460,7 @@ "license": "MIT", "dependencies": { "fastify": "4.26.2", - "pino": "8.20.0" + "pino": "9.0.0" }, "devDependencies": { "@repo/typescript-config": "*", @@ -8094,6 +8094,27 @@ "toad-cache": "^3.3.0" } }, + "node_modules/fastify/node_modules/pino": { + "version": "8.21.0", + "resolved": "https://registry.npmjs.org/pino/-/pino-8.21.0.tgz", + "integrity": "sha512-ip4qdzjkAyDDZklUaZkcRFb2iA118H9SgRh8yzTkSQK8HilsOJF7rSY8HoW5+I0M46AZgX/pxbprf2vvzQCE0Q==", + "dependencies": { + "atomic-sleep": "^1.0.0", + "fast-redact": "^3.1.1", + "on-exit-leak-free": "^2.1.0", + "pino-abstract-transport": "^1.2.0", + "pino-std-serializers": "^6.0.0", + "process-warning": "^3.0.0", + "quick-format-unescaped": "^4.0.3", + "real-require": "^0.2.0", + "safe-stable-stringify": "^2.3.1", + "sonic-boom": "^3.7.0", + "thread-stream": "^2.6.0" + }, + "bin": { + "pino": "bin.js" + } + }, "node_modules/fastq": { "version": "1.17.1", "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz", @@ -12843,30 +12864,30 @@ } }, "node_modules/pino": { - "version": "8.20.0", - "resolved": "https://registry.npmjs.org/pino/-/pino-8.20.0.tgz", - "integrity": "sha512-uhIfMj5TVp+WynVASaVEJFTncTUe4dHBq6CWplu/vBgvGHhvBvQfxz+vcOrnnBQdORH3izaGEurLfNlq3YxdFQ==", + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/pino/-/pino-9.0.0.tgz", + "integrity": "sha512-uI1ThkzTShNSwvsUM6b4ND8ANzWURk9zTELMztFkmnCQeR/4wkomJ+echHee5GMWGovoSfjwdeu80DsFIt7mbA==", "dependencies": { "atomic-sleep": "^1.0.0", "fast-redact": "^3.1.1", "on-exit-leak-free": "^2.1.0", - "pino-abstract-transport": "^1.1.0", + "pino-abstract-transport": "^1.2.0", "pino-std-serializers": "^6.0.0", "process-warning": "^3.0.0", "quick-format-unescaped": "^4.0.3", "real-require": "^0.2.0", "safe-stable-stringify": "^2.3.1", "sonic-boom": "^3.7.0", - "thread-stream": "^2.0.0" + "thread-stream": "^2.6.0" }, "bin": { "pino": "bin.js" } }, "node_modules/pino-abstract-transport": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/pino-abstract-transport/-/pino-abstract-transport-1.1.0.tgz", - "integrity": "sha512-lsleG3/2a/JIWUtf9Q5gUNErBqwIu1tUKTT3dUzaf5DySw9ra1wcqKjJjLX1VTY64Wk1eEOYsVGSaGfCK85ekA==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/pino-abstract-transport/-/pino-abstract-transport-1.2.0.tgz", + "integrity": "sha512-Guhh8EZfPCfH+PMXAb6rKOjGQEoy0xlAIn+irODG5kgfYV+BQ0rGYYWTIel3P5mmyXqkYkPmdIkywsn6QKUR1Q==", "dependencies": { "readable-stream": "^4.0.0", "split2": "^4.0.0" @@ -15360,9 +15381,9 @@ } }, "node_modules/thread-stream": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/thread-stream/-/thread-stream-2.4.1.tgz", - "integrity": "sha512-d/Ex2iWd1whipbT681JmTINKw0ZwOUBZm7+Gjs64DHuX34mmw8vJL2bFAaNacaW72zYiTJxSHi5abUuOi5nsfg==", + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/thread-stream/-/thread-stream-2.7.0.tgz", + "integrity": "sha512-qQiRWsU/wvNolI6tbbCKd9iKaTnCXsTwVxhhKM6nctPdujTyztjlbUkUTUymidWcMnZ5pWR0ej4a0tjsW021vw==", "dependencies": { "real-require": "^0.2.0" } @@ -17147,7 +17168,7 @@ "license": "MIT", "dependencies": { "fastify": "4.26.2", - "pino": "8.20.0" + "pino": "9.0.0" }, "bin": { "next-cache-server": "dist/server.js" diff --git a/packages/server/package.json b/packages/server/package.json index 45286093..47a2e5a7 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -26,7 +26,7 @@ }, "dependencies": { "fastify": "4.26.2", - "pino": "8.20.0" + "pino": "9.0.0" }, "devDependencies": { "@neshca/next-common": "*", From 0a0265de6c80a3869e9e273d950215da75ca31a6 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 26 Apr 2024 02:29:21 +0300 Subject: [PATCH 210/458] Bump lru-cache from 10.2.0 to 10.2.1 (#497) Bumps [lru-cache](https://github.com/isaacs/node-lru-cache) from 10.2.0 to 10.2.1. - [Changelog](https://github.com/isaacs/node-lru-cache/blob/main/CHANGELOG.md) - [Commits](https://github.com/isaacs/node-lru-cache/compare/v10.2.0...v10.2.1) --- updated-dependencies: - dependency-name: lru-cache dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- internal/next-lru-cache/package.json | 2 +- package-lock.json | 10 +++++----- packages/cache-handler/package.json | 2 +- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index dd52bee8..1820e492 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -11,7 +11,7 @@ "clean": "rimraf ./.turbo ./node_modules" }, "dependencies": { - "lru-cache": "10.2.0" + "lru-cache": "10.2.1" }, "devDependencies": { "@neshca/next-common": "*", diff --git a/package-lock.json b/package-lock.json index 08333006..7b975e78 100644 --- a/package-lock.json +++ b/package-lock.json @@ -680,7 +680,7 @@ "version": "0.0.0", "license": "MIT", "dependencies": { - "lru-cache": "10.2.0" + "lru-cache": "10.2.1" }, "devDependencies": { "@neshca/next-common": "*", @@ -10362,9 +10362,9 @@ } }, "node_modules/lru-cache": { - "version": "10.2.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.0.tgz", - "integrity": "sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q==", + "version": "10.2.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.1.tgz", + "integrity": "sha512-tS24spDe/zXhWbNPErCHs/AGOzbKGHT+ybSBqmdLm8WZ1xXLWvH8Qn71QPAlqVhd0qUTWjy+Kl9JmISgDdEjsA==", "engines": { "node": "14 || >=16.14" } @@ -17087,7 +17087,7 @@ "version": "1.3.1", "license": "MIT", "dependencies": { - "lru-cache": "10.2.0" + "lru-cache": "10.2.1" }, "devDependencies": { "@neshca/next-common": "*", diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 59e9fc79..f07083d2 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -73,7 +73,7 @@ "test:watch": "node --watch --test --import tsx/esm src/**/*.test.ts" }, "dependencies": { - "lru-cache": "10.2.0" + "lru-cache": "10.2.1" }, "devDependencies": { "@neshca/next-common": "*", From 7e7f16a8b95f795f82a2c3b2eb4e545da7ce3d02 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 27 Apr 2024 10:33:12 +0300 Subject: [PATCH 211/458] Bump the react group with 2 updates (#498) Bumps the react group with 2 updates: [react](https://github.com/facebook/react/tree/HEAD/packages/react) and [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom). Updates `react` from 18.3.0 to 18.3.1 - [Release notes](https://github.com/facebook/react/releases) - [Changelog](https://github.com/facebook/react/blob/main/CHANGELOG.md) - [Commits](https://github.com/facebook/react/commits/v18.3.1/packages/react) Updates `react-dom` from 18.3.0 to 18.3.1 - [Release notes](https://github.com/facebook/react/releases) - [Changelog](https://github.com/facebook/react/blob/main/CHANGELOG.md) - [Commits](https://github.com/facebook/react/commits/v18.3.1/packages/react-dom) --- updated-dependencies: - dependency-name: react dependency-type: direct:production update-type: version-update:semver-patch dependency-group: react - dependency-name: react-dom dependency-type: direct:production update-type: version-update:semver-patch dependency-group: react ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 4 ++-- docs/cache-handler-docs/package.json | 4 ++-- package-lock.json | 30 ++++++++++++++-------------- 3 files changed, 19 insertions(+), 19 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 8c6e97d8..af407d2b 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -18,8 +18,8 @@ }, "dependencies": { "next": "14.2.0-canary.61", - "react": "18.3.0", - "react-dom": "18.3.0" + "react": "18.3.1", + "react-dom": "18.3.1" }, "devDependencies": { "@neshca/cache-handler": "*", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index d68661cb..619948c9 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -14,8 +14,8 @@ "next": "14.1.0", "nextra": "2.13.4", "nextra-theme-docs": "2.13.4", - "react": "18.3.0", - "react-dom": "18.3.0" + "react": "18.3.1", + "react-dom": "18.3.1" }, "devDependencies": { "@next/eslint-plugin-next": "14.1.0", diff --git a/package-lock.json b/package-lock.json index 7b975e78..d81f80e4 100644 --- a/package-lock.json +++ b/package-lock.json @@ -38,8 +38,8 @@ "license": "MIT", "dependencies": { "next": "14.2.0-canary.61", - "react": "18.3.0", - "react-dom": "18.3.0" + "react": "18.3.1", + "react-dom": "18.3.1" }, "devDependencies": { "@neshca/cache-handler": "*", @@ -126,8 +126,8 @@ "next": "14.1.0", "nextra": "2.13.4", "nextra-theme-docs": "2.13.4", - "react": "18.3.0", - "react-dom": "18.3.0" + "react": "18.3.1", + "react-dom": "18.3.1" }, "devDependencies": { "@next/eslint-plugin-next": "14.1.0", @@ -13542,9 +13542,9 @@ } }, "node_modules/react": { - "version": "18.3.0", - "resolved": "https://registry.npmjs.org/react/-/react-18.3.0.tgz", - "integrity": "sha512-RPutkJftSAldDibyrjuku7q11d3oy6wKOyPe5K1HA/HwwrXcEqBdHsLypkC2FFYjP7bPUa6gbzSBhw4sY2JcDg==", + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react/-/react-18.3.1.tgz", + "integrity": "sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==", "dependencies": { "loose-envify": "^1.1.0" }, @@ -13553,15 +13553,15 @@ } }, "node_modules/react-dom": { - "version": "18.3.0", - "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.3.0.tgz", - "integrity": "sha512-zaKdLBftQJnvb7FtDIpZtsAIb2MZU087RM8bRDZU8LVCCFYjPTsDZJNFUWPcVz3HFSN1n/caxi0ca4B/aaVQGQ==", + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.3.1.tgz", + "integrity": "sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw==", "dependencies": { "loose-envify": "^1.1.0", - "scheduler": "^0.23.1" + "scheduler": "^0.23.2" }, "peerDependencies": { - "react": "^18.3.0" + "react": "^18.3.1" } }, "node_modules/react-is": { @@ -14359,9 +14359,9 @@ "dev": true }, "node_modules/scheduler": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.1.tgz", - "integrity": "sha512-5GKS5JGfiah1O38Vfa9srZE4s3wdHbwjlCrvIookrg2FO9aIwKLOJXuJQFlEfNcVSOXuaL2hzDeY20uVXcUtrw==", + "version": "0.23.2", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.2.tgz", + "integrity": "sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==", "dependencies": { "loose-envify": "^1.1.0" } From 98af202898ed9105b68502c795834f2def700abb Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 10 May 2024 15:59:41 +0300 Subject: [PATCH 212/458] Bump lru-cache from 10.2.1 to 10.2.2 (#500) Bumps [lru-cache](https://github.com/isaacs/node-lru-cache) from 10.2.1 to 10.2.2. - [Changelog](https://github.com/isaacs/node-lru-cache/blob/main/CHANGELOG.md) - [Commits](https://github.com/isaacs/node-lru-cache/compare/v10.2.1...v10.2.2) --- updated-dependencies: - dependency-name: lru-cache dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- internal/next-lru-cache/package.json | 2 +- package-lock.json | 10 +++++----- packages/cache-handler/package.json | 2 +- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index 1820e492..55d92b88 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -11,7 +11,7 @@ "clean": "rimraf ./.turbo ./node_modules" }, "dependencies": { - "lru-cache": "10.2.1" + "lru-cache": "10.2.2" }, "devDependencies": { "@neshca/next-common": "*", diff --git a/package-lock.json b/package-lock.json index d81f80e4..2168a79f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -680,7 +680,7 @@ "version": "0.0.0", "license": "MIT", "dependencies": { - "lru-cache": "10.2.1" + "lru-cache": "10.2.2" }, "devDependencies": { "@neshca/next-common": "*", @@ -10362,9 +10362,9 @@ } }, "node_modules/lru-cache": { - "version": "10.2.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.1.tgz", - "integrity": "sha512-tS24spDe/zXhWbNPErCHs/AGOzbKGHT+ybSBqmdLm8WZ1xXLWvH8Qn71QPAlqVhd0qUTWjy+Kl9JmISgDdEjsA==", + "version": "10.2.2", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.2.tgz", + "integrity": "sha512-9hp3Vp2/hFQUiIwKo8XCeFVnrg8Pk3TYNPIR7tJADKi5YfcF7vEaK7avFHTlSy3kOKYaJQaalfEo6YuXdceBOQ==", "engines": { "node": "14 || >=16.14" } @@ -17087,7 +17087,7 @@ "version": "1.3.1", "license": "MIT", "dependencies": { - "lru-cache": "10.2.1" + "lru-cache": "10.2.2" }, "devDependencies": { "@neshca/next-common": "*", diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index f07083d2..8ad57bd7 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -73,7 +73,7 @@ "test:watch": "node --watch --test --import tsx/esm src/**/*.test.ts" }, "dependencies": { - "lru-cache": "10.2.1" + "lru-cache": "10.2.2" }, "devDependencies": { "@neshca/next-common": "*", From 4b28e01f50c51b4ea6a84b80ba4d48b18da7b26d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 10 May 2024 16:09:34 +0300 Subject: [PATCH 213/458] Bump tsx from 4.7.3 to 4.9.3 (#511) Bumps [tsx](https://github.com/privatenumber/tsx) from 4.7.3 to 4.9.3. - [Release notes](https://github.com/privatenumber/tsx/releases) - [Changelog](https://github.com/privatenumber/tsx/blob/master/release.config.cjs) - [Commits](https://github.com/privatenumber/tsx/compare/v4.7.3...v4.9.3) --- updated-dependencies: - dependency-name: tsx dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- internal/backend/package.json | 2 +- package-lock.json | 426 +++++++++++++++++++- packages/cache-handler/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 6 files changed, 421 insertions(+), 15 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index af407d2b..7161ca7d 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -38,7 +38,7 @@ "pm2": "5.3.1", "redis": "4.6.13", "rimraf": "5.0.5", - "tsx": "4.7.3", + "tsx": "4.9.3", "typescript": "5.4.5" } } diff --git a/internal/backend/package.json b/internal/backend/package.json index c051a9b8..8e323c4f 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -18,7 +18,7 @@ "@types/node": "20.12.7", "pino-pretty": "11.0.0", "rimraf": "5.0.5", - "tsx": "4.7.3", + "tsx": "4.9.3", "typescript": "5.4.5" } } diff --git a/package-lock.json b/package-lock.json index 2168a79f..7f2f481e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -58,7 +58,7 @@ "pm2": "5.3.1", "redis": "4.6.13", "rimraf": "5.0.5", - "tsx": "4.7.3", + "tsx": "4.9.3", "typescript": "5.4.5" } }, @@ -467,7 +467,7 @@ "@types/node": "20.12.7", "pino-pretty": "11.0.0", "rimraf": "5.0.5", - "tsx": "4.7.3", + "tsx": "4.9.3", "typescript": "5.4.5" } }, @@ -15759,13 +15759,13 @@ "dev": true }, "node_modules/tsx": { - "version": "4.7.3", - "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.7.3.tgz", - "integrity": "sha512-+fQnMqIp/jxZEXLcj6WzYy9FhcS5/Dfk8y4AtzJ6ejKcKqmfTF8Gso/jtrzDggCF2zTU20gJa6n8XqPYwDAUYQ==", + "version": "4.9.3", + "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.9.3.tgz", + "integrity": "sha512-czVbetlILiyJZI5zGlj2kw9vFiSeyra9liPD4nG+Thh4pKTi0AmMEQ8zdV/L2xbIVKrIqif4sUNrsMAOksx9Zg==", "dev": true, "dependencies": { - "esbuild": "~0.19.10", - "get-tsconfig": "^4.7.2" + "esbuild": "~0.20.2", + "get-tsconfig": "^4.7.3" }, "bin": { "tsx": "dist/cli.mjs" @@ -15777,6 +15777,412 @@ "fsevents": "~2.3.3" } }, + "node_modules/tsx/node_modules/@esbuild/aix-ppc64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.20.2.tgz", + "integrity": "sha512-D+EBOJHXdNZcLJRBkhENNG8Wji2kgc9AZ9KiPr1JuZjsNtyHzrsfLRrY0tk2H2aoFu6RANO1y1iPPUCDYWkb5g==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/tsx/node_modules/@esbuild/android-arm": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.20.2.tgz", + "integrity": "sha512-t98Ra6pw2VaDhqNWO2Oph2LXbz/EJcnLmKLGBJwEwXX/JAN83Fym1rU8l0JUWK6HkIbWONCSSatf4sf2NBRx/w==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/tsx/node_modules/@esbuild/android-arm64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.20.2.tgz", + "integrity": "sha512-mRzjLacRtl/tWU0SvD8lUEwb61yP9cqQo6noDZP/O8VkwafSYwZ4yWy24kan8jE/IMERpYncRt2dw438LP3Xmg==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/tsx/node_modules/@esbuild/android-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.20.2.tgz", + "integrity": "sha512-btzExgV+/lMGDDa194CcUQm53ncxzeBrWJcncOBxuC6ndBkKxnHdFJn86mCIgTELsooUmwUm9FkhSp5HYu00Rg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/tsx/node_modules/@esbuild/darwin-arm64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.20.2.tgz", + "integrity": "sha512-4J6IRT+10J3aJH3l1yzEg9y3wkTDgDk7TSDFX+wKFiWjqWp/iCfLIYzGyasx9l0SAFPT1HwSCR+0w/h1ES/MjA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/tsx/node_modules/@esbuild/darwin-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.20.2.tgz", + "integrity": "sha512-tBcXp9KNphnNH0dfhv8KYkZhjc+H3XBkF5DKtswJblV7KlT9EI2+jeA8DgBjp908WEuYll6pF+UStUCfEpdysA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/tsx/node_modules/@esbuild/freebsd-arm64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.20.2.tgz", + "integrity": "sha512-d3qI41G4SuLiCGCFGUrKsSeTXyWG6yem1KcGZVS+3FYlYhtNoNgYrWcvkOoaqMhwXSMrZRl69ArHsGJ9mYdbbw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/tsx/node_modules/@esbuild/freebsd-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.20.2.tgz", + "integrity": "sha512-d+DipyvHRuqEeM5zDivKV1KuXn9WeRX6vqSqIDgwIfPQtwMP4jaDsQsDncjTDDsExT4lR/91OLjRo8bmC1e+Cw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/tsx/node_modules/@esbuild/linux-arm": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.20.2.tgz", + "integrity": "sha512-VhLPeR8HTMPccbuWWcEUD1Az68TqaTYyj6nfE4QByZIQEQVWBB8vup8PpR7y1QHL3CpcF6xd5WVBU/+SBEvGTg==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/tsx/node_modules/@esbuild/linux-arm64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.20.2.tgz", + "integrity": "sha512-9pb6rBjGvTFNira2FLIWqDk/uaf42sSyLE8j1rnUpuzsODBq7FvpwHYZxQ/It/8b+QOS1RYfqgGFNLRI+qlq2A==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/tsx/node_modules/@esbuild/linux-ia32": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.20.2.tgz", + "integrity": "sha512-o10utieEkNPFDZFQm9CoP7Tvb33UutoJqg3qKf1PWVeeJhJw0Q347PxMvBgVVFgouYLGIhFYG0UGdBumROyiig==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/tsx/node_modules/@esbuild/linux-loong64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.20.2.tgz", + "integrity": "sha512-PR7sp6R/UC4CFVomVINKJ80pMFlfDfMQMYynX7t1tNTeivQ6XdX5r2XovMmha/VjR1YN/HgHWsVcTRIMkymrgQ==", + "cpu": [ + "loong64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/tsx/node_modules/@esbuild/linux-mips64el": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.20.2.tgz", + "integrity": "sha512-4BlTqeutE/KnOiTG5Y6Sb/Hw6hsBOZapOVF6njAESHInhlQAghVVZL1ZpIctBOoTFbQyGW+LsVYZ8lSSB3wkjA==", + "cpu": [ + "mips64el" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/tsx/node_modules/@esbuild/linux-ppc64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.20.2.tgz", + "integrity": "sha512-rD3KsaDprDcfajSKdn25ooz5J5/fWBylaaXkuotBDGnMnDP1Uv5DLAN/45qfnf3JDYyJv/ytGHQaziHUdyzaAg==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/tsx/node_modules/@esbuild/linux-riscv64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.20.2.tgz", + "integrity": "sha512-snwmBKacKmwTMmhLlz/3aH1Q9T8v45bKYGE3j26TsaOVtjIag4wLfWSiZykXzXuE1kbCE+zJRmwp+ZbIHinnVg==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/tsx/node_modules/@esbuild/linux-s390x": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.20.2.tgz", + "integrity": "sha512-wcWISOobRWNm3cezm5HOZcYz1sKoHLd8VL1dl309DiixxVFoFe/o8HnwuIwn6sXre88Nwj+VwZUvJf4AFxkyrQ==", + "cpu": [ + "s390x" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/tsx/node_modules/@esbuild/linux-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.20.2.tgz", + "integrity": "sha512-1MdwI6OOTsfQfek8sLwgyjOXAu+wKhLEoaOLTjbijk6E2WONYpH9ZU2mNtR+lZ2B4uwr+usqGuVfFT9tMtGvGw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/tsx/node_modules/@esbuild/netbsd-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.20.2.tgz", + "integrity": "sha512-K8/DhBxcVQkzYc43yJXDSyjlFeHQJBiowJ0uVL6Tor3jGQfSGHNNJcWxNbOI8v5k82prYqzPuwkzHt3J1T1iZQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/tsx/node_modules/@esbuild/openbsd-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.20.2.tgz", + "integrity": "sha512-eMpKlV0SThJmmJgiVyN9jTPJ2VBPquf6Kt/nAoo6DgHAoN57K15ZghiHaMvqjCye/uU4X5u3YSMgVBI1h3vKrQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/tsx/node_modules/@esbuild/sunos-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.20.2.tgz", + "integrity": "sha512-2UyFtRC6cXLyejf/YEld4Hajo7UHILetzE1vsRcGL3earZEW77JxrFjH4Ez2qaTiEfMgAXxfAZCm1fvM/G/o8w==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/tsx/node_modules/@esbuild/win32-arm64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.20.2.tgz", + "integrity": "sha512-GRibxoawM9ZCnDxnP3usoUDO9vUkpAxIIZ6GQI+IlVmr5kP3zUq+l17xELTHMWTWzjxa2guPNyrpq1GWmPvcGQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/tsx/node_modules/@esbuild/win32-ia32": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.20.2.tgz", + "integrity": "sha512-HfLOfn9YWmkSKRQqovpnITazdtquEW8/SoHW7pWpuEeguaZI4QnCRW6b+oZTztdBnZOS2hqJ6im/D5cPzBTTlQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/tsx/node_modules/@esbuild/win32-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.20.2.tgz", + "integrity": "sha512-N49X4lJX27+l9jbLKSqZ6bKNjzQvHaT8IIFUy+YIqmXQdjYCToGWwOItDrfby14c78aDd5NHQl29xingXfCdLQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/tsx/node_modules/esbuild": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.20.2.tgz", + "integrity": "sha512-WdOOppmUNU+IbZ0PaDiTst80zjnrOkyJNHoKupIcVyU8Lvla3Ugx94VzkQ32Ijqd7UhHJy75gNWDMUekcrSJ6g==", + "dev": true, + "hasInstallScript": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.20.2", + "@esbuild/android-arm": "0.20.2", + "@esbuild/android-arm64": "0.20.2", + "@esbuild/android-x64": "0.20.2", + "@esbuild/darwin-arm64": "0.20.2", + "@esbuild/darwin-x64": "0.20.2", + "@esbuild/freebsd-arm64": "0.20.2", + "@esbuild/freebsd-x64": "0.20.2", + "@esbuild/linux-arm": "0.20.2", + "@esbuild/linux-arm64": "0.20.2", + "@esbuild/linux-ia32": "0.20.2", + "@esbuild/linux-loong64": "0.20.2", + "@esbuild/linux-mips64el": "0.20.2", + "@esbuild/linux-ppc64": "0.20.2", + "@esbuild/linux-riscv64": "0.20.2", + "@esbuild/linux-s390x": "0.20.2", + "@esbuild/linux-x64": "0.20.2", + "@esbuild/netbsd-x64": "0.20.2", + "@esbuild/openbsd-x64": "0.20.2", + "@esbuild/sunos-x64": "0.20.2", + "@esbuild/win32-arm64": "0.20.2", + "@esbuild/win32-ia32": "0.20.2", + "@esbuild/win32-x64": "0.20.2" + } + }, "node_modules/tsx/node_modules/fsevents": { "version": "2.3.3", "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", @@ -17096,7 +17502,7 @@ "@types/node": "20.12.7", "rimraf": "5.0.5", "tsup": "8.0.2", - "tsx": "4.7.3", + "tsx": "4.9.3", "typescript": "5.4.5" }, "peerDependencies": { @@ -17149,7 +17555,7 @@ "@types/node": "20.12.7", "rimraf": "5.0.5", "tsup": "8.0.2", - "tsx": "4.7.3", + "tsx": "4.9.3", "typescript": "5.4.5" } }, @@ -17180,7 +17586,7 @@ "@types/node": "20.12.7", "rimraf": "5.0.5", "tsup": "8.0.2", - "tsx": "4.7.3", + "tsx": "4.9.3", "typescript": "5.4.5" } }, diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 8ad57bd7..e10edb99 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -82,7 +82,7 @@ "@types/node": "20.12.7", "rimraf": "5.0.5", "tsup": "8.0.2", - "tsx": "4.7.3", + "tsx": "4.9.3", "typescript": "5.4.5" }, "peerDependencies": { diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 058a71e7..f844e07d 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -31,7 +31,7 @@ "@types/node": "20.12.7", "rimraf": "5.0.5", "tsup": "8.0.2", - "tsx": "4.7.3", + "tsx": "4.9.3", "typescript": "5.4.5" } } diff --git a/packages/server/package.json b/packages/server/package.json index 47a2e5a7..e55fdd12 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -35,7 +35,7 @@ "@types/node": "20.12.7", "rimraf": "5.0.5", "tsup": "8.0.2", - "tsx": "4.7.3", + "tsx": "4.9.3", "typescript": "5.4.5" }, "distTags": [ From 9430bd0ff14f380215cc4e3e775dea69c0291a61 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 10 May 2024 16:22:06 +0300 Subject: [PATCH 214/458] Bump the definitely-typed group across 1 directory with 2 updates (#519) Bumps the definitely-typed group with 2 updates in the / directory: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) and [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react). Updates `@types/node` from 20.12.7 to 20.12.11 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) Updates `@types/react` from 18.3.0 to 18.3.1 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react) --- updated-dependencies: - dependency-name: "@types/node" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed - dependency-name: "@types/react" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 4 +- docs/cache-handler-docs/package.json | 4 +- internal/backend/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 123 ++++---------------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 10 files changed, 36 insertions(+), 109 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 7161ca7d..9829acd0 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -28,8 +28,8 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "20.12.7", - "@types/react": "18.3.0", + "@types/node": "20.12.11", + "@types/react": "18.3.1", "@types/react-dom": "18.3.0", "axios": "1.6.8", "dotenv-cli": "7.4.1", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 619948c9..46d07f9e 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -22,8 +22,8 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "20.12.7", - "@types/react": "18.3.0", + "@types/node": "20.12.11", + "@types/react": "18.3.1", "@types/react-dom": "18.3.0", "eslint": "8.57.0", "typescript": "5.4.5" diff --git a/internal/backend/package.json b/internal/backend/package.json index 8e323c4f..d4dfbe80 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.12.7", + "@types/node": "20.12.11", "pino-pretty": "11.0.0", "rimraf": "5.0.5", "tsx": "4.9.3", diff --git a/internal/next-common/package.json b/internal/next-common/package.json index 755bcb04..cd5f180a 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.12.7", + "@types/node": "20.12.11", "rimraf": "5.0.5", "typescript": "5.4.5" } diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index 55d92b88..2dc13ab0 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -16,7 +16,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "20.12.7", + "@types/node": "20.12.11", "rimraf": "5.0.5", "typescript": "5.4.5" } diff --git a/package-lock.json b/package-lock.json index 7f2f481e..e365ab63 100644 --- a/package-lock.json +++ b/package-lock.json @@ -48,8 +48,8 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "20.12.7", - "@types/react": "18.3.0", + "@types/node": "20.12.11", + "@types/react": "18.3.1", "@types/react-dom": "18.3.0", "axios": "1.6.8", "dotenv-cli": "7.4.1", @@ -62,15 +62,6 @@ "typescript": "5.4.5" } }, - "apps/cache-testing/node_modules/@types/node": { - "version": "20.12.7", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.7.tgz", - "integrity": "sha512-wq0cICSkRLVaf3UGLMGItu/PtdY7oaXaI/RVU+xliKVOtRna3PRY57ZDfztpDL0n11vfymMUnXv8QwYCO7L1wg==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "apps/cache-testing/node_modules/next": { "version": "14.2.0-canary.61", "resolved": "https://registry.npmjs.org/next/-/next-14.2.0-canary.61.tgz", @@ -134,8 +125,8 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "20.12.7", - "@types/react": "18.3.0", + "@types/node": "20.12.11", + "@types/react": "18.3.1", "@types/react-dom": "18.3.0", "eslint": "8.57.0", "typescript": "5.4.5" @@ -298,15 +289,6 @@ "tslib": "^2.4.0" } }, - "docs/cache-handler-docs/node_modules/@types/node": { - "version": "20.12.7", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.7.tgz", - "integrity": "sha512-wq0cICSkRLVaf3UGLMGItu/PtdY7oaXaI/RVU+xliKVOtRna3PRY57ZDfztpDL0n11vfymMUnXv8QwYCO7L1wg==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "docs/cache-handler-docs/node_modules/glob": { "version": "10.3.10", "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", @@ -464,22 +446,13 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.12.7", + "@types/node": "20.12.11", "pino-pretty": "11.0.0", "rimraf": "5.0.5", "tsx": "4.9.3", "typescript": "5.4.5" } }, - "internal/backend/node_modules/@types/node": { - "version": "20.12.7", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.7.tgz", - "integrity": "sha512-wq0cICSkRLVaf3UGLMGItu/PtdY7oaXaI/RVU+xliKVOtRna3PRY57ZDfztpDL0n11vfymMUnXv8QwYCO7L1wg==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "internal/eslint-config": { "name": "@repo/eslint-config", "version": "0.0.0", @@ -612,20 +585,11 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.12.7", + "@types/node": "20.12.11", "rimraf": "5.0.5", "typescript": "5.4.5" } }, - "internal/next-common/node_modules/@types/node": { - "version": "20.12.7", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.7.tgz", - "integrity": "sha512-wq0cICSkRLVaf3UGLMGItu/PtdY7oaXaI/RVU+xliKVOtRna3PRY57ZDfztpDL0n11vfymMUnXv8QwYCO7L1wg==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "internal/next-common/node_modules/next": { "version": "14.2.0-canary.61", "resolved": "https://registry.npmjs.org/next/-/next-14.2.0-canary.61.tgz", @@ -685,20 +649,11 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "20.12.7", + "@types/node": "20.12.11", "rimraf": "5.0.5", "typescript": "5.4.5" } }, - "internal/next-lru-cache/node_modules/@types/node": { - "version": "20.12.7", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.7.tgz", - "integrity": "sha512-wq0cICSkRLVaf3UGLMGItu/PtdY7oaXaI/RVU+xliKVOtRna3PRY57ZDfztpDL0n11vfymMUnXv8QwYCO7L1wg==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "internal/prettier-config": { "name": "@repo/prettier-config", "version": "0.0.0", @@ -2336,6 +2291,11 @@ "fs-extra": "^8.1.0" } }, + "node_modules/@manypkg/find-root/node_modules/@types/node": { + "version": "12.20.55", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", + "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" + }, "node_modules/@manypkg/find-root/node_modules/fs-extra": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", @@ -3743,9 +3703,12 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "12.20.55", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", - "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" + "version": "20.12.11", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.11.tgz", + "integrity": "sha512-vDg9PZ/zi+Nqp6boSOT7plNuthRugEKixDv5sFTIpkE89MmNtEArAShI4mxuX2+UrLEe9pxC1vm2cjm9YlWbJw==", + "dependencies": { + "undici-types": "~5.26.4" + } }, "node_modules/@types/node-fetch": { "version": "2.6.11", @@ -3768,9 +3731,9 @@ "integrity": "sha512-5zvhXYtRNRluoE/jAp4GVsSduVUzNWKkOZrCDBWYtE7biZywwdC2AcEzg+cSMLFRfVgeAFqpfNabiPjxFddV1Q==" }, "node_modules/@types/react": { - "version": "18.3.0", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.0.tgz", - "integrity": "sha512-DiUcKjzE6soLyln8NNZmyhcQjVv+WsUIFSqetMN0p8927OztKT4VTfFTqsbAi5oAGIcgOmOajlfBqyptDDjZRw==", + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.1.tgz", + "integrity": "sha512-V0kuGBX3+prX+DQ/7r2qsv1NsdfnCLnTgnRJ1pYnxykBhGMz+qj+box5lq7XsO5mtZsBqpjwwTu/7wszPfMBcw==", "dependencies": { "@types/prop-types": "*", "csstype": "^3.0.2" @@ -17499,7 +17462,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.12.7", + "@types/node": "20.12.11", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.9.3", @@ -17510,15 +17473,6 @@ "redis": ">=4.6" } }, - "packages/cache-handler/node_modules/@types/node": { - "version": "20.12.7", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.7.tgz", - "integrity": "sha512-wq0cICSkRLVaf3UGLMGItu/PtdY7oaXaI/RVU+xliKVOtRna3PRY57ZDfztpDL0n11vfymMUnXv8QwYCO7L1wg==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "packages/diffscribe": { "version": "0.2.4", "license": "MIT", @@ -17527,7 +17481,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.12.7", + "@types/node": "20.12.11", "rimraf": "5.0.5", "tsup": "8.0.2", "typescript": "5.4.5" @@ -17537,37 +17491,19 @@ "openai": "^4.12.3" } }, - "packages/diffscribe/node_modules/@types/node": { - "version": "20.12.7", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.7.tgz", - "integrity": "sha512-wq0cICSkRLVaf3UGLMGItu/PtdY7oaXaI/RVU+xliKVOtRna3PRY57ZDfztpDL0n11vfymMUnXv8QwYCO7L1wg==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "packages/json-replacer-reviver": { "name": "@neshca/json-replacer-reviver", "version": "1.1.3", "license": "MIT", "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.12.7", + "@types/node": "20.12.11", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.9.3", "typescript": "5.4.5" } }, - "packages/json-replacer-reviver/node_modules/@types/node": { - "version": "20.12.7", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.7.tgz", - "integrity": "sha512-wq0cICSkRLVaf3UGLMGItu/PtdY7oaXaI/RVU+xliKVOtRna3PRY57ZDfztpDL0n11vfymMUnXv8QwYCO7L1wg==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "packages/server": { "name": "@neshca/server", "version": "1.1.1", @@ -17583,21 +17519,12 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.12.7", + "@types/node": "20.12.11", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.9.3", "typescript": "5.4.5" } - }, - "packages/server/node_modules/@types/node": { - "version": "20.12.7", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.7.tgz", - "integrity": "sha512-wq0cICSkRLVaf3UGLMGItu/PtdY7oaXaI/RVU+xliKVOtRna3PRY57ZDfztpDL0n11vfymMUnXv8QwYCO7L1wg==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } } } } diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index e10edb99..620836a5 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -79,7 +79,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.12.7", + "@types/node": "20.12.11", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.9.3", diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index b1a445da..8f46325d 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -25,7 +25,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.12.7", + "@types/node": "20.12.11", "rimraf": "5.0.5", "tsup": "8.0.2", "typescript": "5.4.5" diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index f844e07d..943f6b3f 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -28,7 +28,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.12.7", + "@types/node": "20.12.11", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.9.3", diff --git a/packages/server/package.json b/packages/server/package.json index e55fdd12..658a32a0 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -32,7 +32,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.12.7", + "@types/node": "20.12.11", "rimraf": "5.0.5", "tsup": "8.0.2", "tsx": "4.9.3", From 01fbdb09e13162b7e5bf89fbfcae98551720a15a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 10 May 2024 16:32:20 +0300 Subject: [PATCH 215/458] Bump glob from 10.3.12 to 10.3.14 (#520) Bumps [glob](https://github.com/isaacs/node-glob) from 10.3.12 to 10.3.14. - [Changelog](https://github.com/isaacs/node-glob/blob/main/changelog.md) - [Commits](https://github.com/isaacs/node-glob/compare/v10.3.12...v10.3.14) --- updated-dependencies: - dependency-name: glob dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 16 ++++++++-------- package.json | 2 +- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/package-lock.json b/package-lock.json index e365ab63..80ccc593 100644 --- a/package-lock.json +++ b/package-lock.json @@ -24,7 +24,7 @@ "@repo/prettier-config": "*", "@repo/typescript-config": "*", "diffscribe": "*", - "glob": "10.3.12", + "glob": "10.3.14", "prettier": "3.2.5", "turbo": "1.13.3" }, @@ -8579,16 +8579,16 @@ "integrity": "sha512-IaOQ9puYtjrkq7Y0Ygl9KDZnrf/aiUJYUpVf89y8kyaxbRG7Y1SrX/jaumrv81vc61+kiMempujsM3Yw7w5qcw==" }, "node_modules/glob": { - "version": "10.3.12", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.12.tgz", - "integrity": "sha512-TCNv8vJ+xz4QiqTpfOJA7HvYv+tNIRHKfUWw/q+v2jdgN4ebz+KY9tGx5J4rHP0o84mNP+ApH66HRX8us3Khqg==", + "version": "10.3.14", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.14.tgz", + "integrity": "sha512-4fkAqu93xe9Mk7le9v0y3VrPDqLKHarNi2s4Pv7f2yOvfhWfhc7hRPHC/JyqMqb8B/Dt/eGS4n7ykwf3fOsl8g==", "dev": true, "dependencies": { "foreground-child": "^3.1.0", "jackspeak": "^2.3.6", "minimatch": "^9.0.1", "minipass": "^7.0.4", - "path-scurry": "^1.10.2" + "path-scurry": "^1.11.0" }, "bin": { "glob": "dist/esm/bin.mjs" @@ -12757,9 +12757,9 @@ "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" }, "node_modules/path-scurry": { - "version": "1.10.2", - "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.10.2.tgz", - "integrity": "sha512-7xTavNy5RQXnsjANvVvMkEjvloOinkAjv/Z6Ildz9v2RinZ4SBKTWFOVRbaF8p0vpHnyjV/UwNDdKuUv6M5qcA==", + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.0.tgz", + "integrity": "sha512-LNHTaVkzaYaLGlO+0u3rQTz7QrHTFOuKyba9JMTQutkmtNew8dw8wOD7mTU/5fCPZzCWpfW0XnQKzY61P0aTaw==", "dev": true, "dependencies": { "lru-cache": "^10.2.0", diff --git a/package.json b/package.json index 1e60cc41..9487101d 100644 --- a/package.json +++ b/package.json @@ -42,7 +42,7 @@ "@repo/prettier-config": "*", "@repo/typescript-config": "*", "diffscribe": "*", - "glob": "10.3.12", + "glob": "10.3.14", "prettier": "3.2.5", "turbo": "1.13.3" }, From bfe7a57ed49f259f2865eb530e64add9a8000da8 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 10 May 2024 16:45:18 +0300 Subject: [PATCH 216/458] Bump @biomejs/biome from 1.7.1 to 1.7.3 (#512) Bumps [@biomejs/biome](https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome) from 1.7.1 to 1.7.3. - [Release notes](https://github.com/biomejs/biome/releases) - [Changelog](https://github.com/biomejs/biome/blob/main/CHANGELOG.md) - [Commits](https://github.com/biomejs/biome/commits/cli/v1.7.3/packages/@biomejs/biome) --- updated-dependencies: - dependency-name: "@biomejs/biome" dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 72 +++++++++++++++++++++++------------------------ package.json | 2 +- 2 files changed, 37 insertions(+), 37 deletions(-) diff --git a/package-lock.json b/package-lock.json index 80ccc593..5779cb84 100644 --- a/package-lock.json +++ b/package-lock.json @@ -20,7 +20,7 @@ }, "devDependencies": { "@actions/core": "1.10.1", - "@biomejs/biome": "1.7.1", + "@biomejs/biome": "1.7.3", "@repo/prettier-config": "*", "@repo/typescript-config": "*", "diffscribe": "*", @@ -1195,9 +1195,9 @@ } }, "node_modules/@biomejs/biome": { - "version": "1.7.1", - "resolved": "https://registry.npmjs.org/@biomejs/biome/-/biome-1.7.1.tgz", - "integrity": "sha512-wb2UNoFXcgaMdKXKT5ytsYntaogl2FSTjDt20CZynF3v7OXQUcIpTrr+be3XoOGpoZRj3Ytq9TSpmplUREXmeA==", + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/@biomejs/biome/-/biome-1.7.3.tgz", + "integrity": "sha512-ogFQI+fpXftr+tiahA6bIXwZ7CSikygASdqMtH07J2cUzrpjyTMVc9Y97v23c7/tL1xCZhM+W9k4hYIBm7Q6cQ==", "dev": true, "hasInstallScript": true, "bin": { @@ -1211,20 +1211,20 @@ "url": "https://opencollective.com/biome" }, "optionalDependencies": { - "@biomejs/cli-darwin-arm64": "1.7.1", - "@biomejs/cli-darwin-x64": "1.7.1", - "@biomejs/cli-linux-arm64": "1.7.1", - "@biomejs/cli-linux-arm64-musl": "1.7.1", - "@biomejs/cli-linux-x64": "1.7.1", - "@biomejs/cli-linux-x64-musl": "1.7.1", - "@biomejs/cli-win32-arm64": "1.7.1", - "@biomejs/cli-win32-x64": "1.7.1" + "@biomejs/cli-darwin-arm64": "1.7.3", + "@biomejs/cli-darwin-x64": "1.7.3", + "@biomejs/cli-linux-arm64": "1.7.3", + "@biomejs/cli-linux-arm64-musl": "1.7.3", + "@biomejs/cli-linux-x64": "1.7.3", + "@biomejs/cli-linux-x64-musl": "1.7.3", + "@biomejs/cli-win32-arm64": "1.7.3", + "@biomejs/cli-win32-x64": "1.7.3" } }, "node_modules/@biomejs/cli-darwin-arm64": { - "version": "1.7.1", - "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-1.7.1.tgz", - "integrity": "sha512-qfLrIIB58dkgiY/1tgG6fSCBK22PZaSIf6blweZBsG6iMij05mEuJt50ne+zPnNFNUmt8t43NC/qOXT3iFHQBA==", + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-1.7.3.tgz", + "integrity": "sha512-eDvLQWmGRqrPIRY7AIrkPHkQ3visEItJKkPYSHCscSDdGvKzYjmBJwG1Gu8+QC5ed6R7eiU63LEC0APFBobmfQ==", "cpu": [ "arm64" ], @@ -1238,9 +1238,9 @@ } }, "node_modules/@biomejs/cli-darwin-x64": { - "version": "1.7.1", - "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-x64/-/cli-darwin-x64-1.7.1.tgz", - "integrity": "sha512-OGeyNsEcp5VnKbF9/TBjPCTHNEOm7oHegEve07U3KZmzqfpw2Oe3i9DVW8t6vvj1TYbrwWYCld25H34kBDY7Vg==", + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-x64/-/cli-darwin-x64-1.7.3.tgz", + "integrity": "sha512-JXCaIseKRER7dIURsVlAJacnm8SG5I0RpxZ4ya3dudASYUc68WGl4+FEN03ABY3KMIq7hcK1tzsJiWlmXyosZg==", "cpu": [ "x64" ], @@ -1254,9 +1254,9 @@ } }, "node_modules/@biomejs/cli-linux-arm64": { - "version": "1.7.1", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64/-/cli-linux-arm64-1.7.1.tgz", - "integrity": "sha512-MQDf5wErj1iBvlcxCyOa0XqZYN8WJrupVgbNnqhntO3yVATg8GxduVUn1fDSaolznkDRsj7Pz3Xu1esBFwvfmg==", + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64/-/cli-linux-arm64-1.7.3.tgz", + "integrity": "sha512-phNTBpo7joDFastnmZsFjYcDYobLTx4qR4oPvc9tJ486Bd1SfEVPHEvJdNJrMwUQK56T+TRClOQd/8X1nnjA9w==", "cpu": [ "arm64" ], @@ -1270,9 +1270,9 @@ } }, "node_modules/@biomejs/cli-linux-arm64-musl": { - "version": "1.7.1", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-1.7.1.tgz", - "integrity": "sha512-giH0/CzLOJ+wbxLxd5Shnr5xQf5fGnTRWLDe3lzjaF7IplVydNCEeZJtncB01SvyA6DAFJsvQ4LNxzAOQfEVCg==", + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-1.7.3.tgz", + "integrity": "sha512-c8AlO45PNFZ1BYcwaKzdt46kYbuP6xPGuGQ6h4j3XiEDpyseRRUy/h+6gxj07XovmyxKnSX9GSZ6nVbZvcVUAw==", "cpu": [ "arm64" ], @@ -1286,9 +1286,9 @@ } }, "node_modules/@biomejs/cli-linux-x64": { - "version": "1.7.1", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64/-/cli-linux-x64-1.7.1.tgz", - "integrity": "sha512-3wmCsGcC3KZ4pfTknXHfyMMlXPMhgfXVAcG5GlrR+Tq2JGiAw0EUydaLpsSBEbcG7IxH6OiUZEJZ95kAycCHBA==", + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64/-/cli-linux-x64-1.7.3.tgz", + "integrity": "sha512-vnedYcd5p4keT3iD48oSKjOIRPYcjSNNbd8MO1bKo9ajg3GwQXZLAH+0Cvlr+eMsO67/HddWmscSQwTFrC/uPA==", "cpu": [ "x64" ], @@ -1302,9 +1302,9 @@ } }, "node_modules/@biomejs/cli-linux-x64-musl": { - "version": "1.7.1", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-1.7.1.tgz", - "integrity": "sha512-ySNDtPhsLxU125IFHHAxfpoHBpkM56s4mEXeO70GZtgZay/o1h8IUPWCWf5Z7gKgc4jwgYN1U1U9xabI3hZVAg==", + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-1.7.3.tgz", + "integrity": "sha512-UdEHKtYGWEX3eDmVWvQeT+z05T9/Sdt2+F/7zmMOFQ7boANeX8pcO6EkJPK3wxMudrApsNEKT26rzqK6sZRTRA==", "cpu": [ "x64" ], @@ -1318,9 +1318,9 @@ } }, "node_modules/@biomejs/cli-win32-arm64": { - "version": "1.7.1", - "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-arm64/-/cli-win32-arm64-1.7.1.tgz", - "integrity": "sha512-8hIDakEqZn0i6+388noYKdZ0ZrovTwnvMU/Qp/oJou0G7EPVdXupOe0oxiQSdRN0W7f6CS/yjPCYuVGzDG6r0g==", + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-arm64/-/cli-win32-arm64-1.7.3.tgz", + "integrity": "sha512-unNCDqUKjujYkkSxs7gFIfdasttbDC4+z0kYmcqzRk6yWVoQBL4dNLcCbdnJS+qvVDNdI9rHp2NwpQ0WAdla4Q==", "cpu": [ "arm64" ], @@ -1334,9 +1334,9 @@ } }, "node_modules/@biomejs/cli-win32-x64": { - "version": "1.7.1", - "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-x64/-/cli-win32-x64-1.7.1.tgz", - "integrity": "sha512-3W9k3uH6Ea6VOpAS9xkkAlS0LTfnGQjmIUCegZ8SDtK2NgJ1gO+qdEkGJb0ltahusFTN1QxJ107dM7ASA9IUEg==", + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-x64/-/cli-win32-x64-1.7.3.tgz", + "integrity": "sha512-ZmByhbrnmz/UUFYB622CECwhKIPjJLLPr5zr3edhu04LzbfcOrz16VYeNq5dpO1ADG70FORhAJkaIGdaVBG00w==", "cpu": [ "x64" ], diff --git a/package.json b/package.json index 9487101d..2a91eebb 100644 --- a/package.json +++ b/package.json @@ -38,7 +38,7 @@ }, "devDependencies": { "@actions/core": "1.10.1", - "@biomejs/biome": "1.7.1", + "@biomejs/biome": "1.7.3", "@repo/prettier-config": "*", "@repo/typescript-config": "*", "diffscribe": "*", From e26edf398b1ac218e729a4e4ac2bea49fe853f6e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 10 May 2024 16:56:26 +0300 Subject: [PATCH 217/458] Bump dotenv-cli from 7.4.1 to 7.4.2 (#517) Bumps [dotenv-cli](https://github.com/entropitor/dotenv-cli) from 7.4.1 to 7.4.2. - [Release notes](https://github.com/entropitor/dotenv-cli/releases) - [Commits](https://github.com/entropitor/dotenv-cli/compare/v7.4.1...v7.4.2) --- updated-dependencies: - dependency-name: dotenv-cli dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- package-lock.json | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 9829acd0..56c76b9a 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -32,7 +32,7 @@ "@types/react": "18.3.1", "@types/react-dom": "18.3.0", "axios": "1.6.8", - "dotenv-cli": "7.4.1", + "dotenv-cli": "7.4.2", "eslint": "8.57.0", "fastify": "4.26.2", "pm2": "5.3.1", diff --git a/package-lock.json b/package-lock.json index 5779cb84..7706df41 100644 --- a/package-lock.json +++ b/package-lock.json @@ -52,7 +52,7 @@ "@types/react": "18.3.1", "@types/react-dom": "18.3.0", "axios": "1.6.8", - "dotenv-cli": "7.4.1", + "dotenv-cli": "7.4.2", "eslint": "8.57.0", "fastify": "4.26.2", "pm2": "5.3.1", @@ -6182,9 +6182,9 @@ } }, "node_modules/dotenv-cli": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/dotenv-cli/-/dotenv-cli-7.4.1.tgz", - "integrity": "sha512-fE1aywjRrWGxV3miaiUr3d2zC/VAiuzEGghi+QzgIA9fEf/M5hLMaRSXb4IxbUAwGmaLi0IozdZddnVU96acag==", + "version": "7.4.2", + "resolved": "https://registry.npmjs.org/dotenv-cli/-/dotenv-cli-7.4.2.tgz", + "integrity": "sha512-SbUj8l61zIbzyhIbg0FwPJq6+wjbzdn9oEtozQpZ6kW2ihCcapKVZj49oCT3oPM+mgQm+itgvUQcG5szxVrZTA==", "dev": true, "dependencies": { "cross-spawn": "^7.0.3", From c5d0a767906f0bee13f514fb544b922328c5ed24 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 10 May 2024 19:39:11 +0300 Subject: [PATCH 218/458] Bump @playwright/test from 1.43.1 to 1.44.0 (#516) Bumps [@playwright/test](https://github.com/microsoft/playwright) from 1.43.1 to 1.44.0. - [Release notes](https://github.com/microsoft/playwright/releases) - [Commits](https://github.com/microsoft/playwright/compare/v1.43.1...v1.44.0) --- updated-dependencies: - dependency-name: "@playwright/test" dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- package-lock.json | 24 ++++++++++++------------ 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 56c76b9a..453d7cba 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -24,7 +24,7 @@ "devDependencies": { "@neshca/cache-handler": "*", "@next/eslint-plugin-next": "14.2.0-canary.61", - "@playwright/test": "1.43.1", + "@playwright/test": "1.44.0", "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", diff --git a/package-lock.json b/package-lock.json index 7706df41..9c79d693 100644 --- a/package-lock.json +++ b/package-lock.json @@ -44,7 +44,7 @@ "devDependencies": { "@neshca/cache-handler": "*", "@next/eslint-plugin-next": "14.2.0-canary.61", - "@playwright/test": "1.43.1", + "@playwright/test": "1.44.0", "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", @@ -2988,12 +2988,12 @@ } }, "node_modules/@playwright/test": { - "version": "1.43.1", - "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.43.1.tgz", - "integrity": "sha512-HgtQzFgNEEo4TE22K/X7sYTYNqEMMTZmFS8kTq6m8hXj+m1D8TgwgIbumHddJa9h4yl4GkKb8/bgAl2+g7eDgA==", + "version": "1.44.0", + "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.44.0.tgz", + "integrity": "sha512-rNX5lbNidamSUorBhB4XZ9SQTjAqfe5M+p37Z8ic0jPFBMo5iCtQz1kRWkEMg+rYOKSlVycpQmpqjSFq7LXOfg==", "devOptional": true, "dependencies": { - "playwright": "1.43.1" + "playwright": "1.44.0" }, "bin": { "playwright": "cli.js" @@ -12907,12 +12907,12 @@ } }, "node_modules/playwright": { - "version": "1.43.1", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.43.1.tgz", - "integrity": "sha512-V7SoH0ai2kNt1Md9E3Gwas5B9m8KR2GVvwZnAI6Pg0m3sh7UvgiYhRrhsziCmqMJNouPckiOhk8T+9bSAK0VIA==", + "version": "1.44.0", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.44.0.tgz", + "integrity": "sha512-F9b3GUCLQ3Nffrfb6dunPOkE5Mh68tR7zN32L4jCk4FjQamgesGay7/dAAe1WaMEGV04DkdJfcJzjoCKygUaRQ==", "devOptional": true, "dependencies": { - "playwright-core": "1.43.1" + "playwright-core": "1.44.0" }, "bin": { "playwright": "cli.js" @@ -12925,9 +12925,9 @@ } }, "node_modules/playwright-core": { - "version": "1.43.1", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.43.1.tgz", - "integrity": "sha512-EI36Mto2Vrx6VF7rm708qSnesVQKbxEWvPrfA1IPY6HgczBplDx7ENtx+K2n4kJ41sLLkuGfmb0ZLSSXlDhqPg==", + "version": "1.44.0", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.44.0.tgz", + "integrity": "sha512-ZTbkNpFfYcGWohvTTl+xewITm7EOuqIqex0c7dNZ+aXsbrLj0qI8XlGKfPpipjm0Wny/4Lt4CJsWJk1stVS5qQ==", "devOptional": true, "bin": { "playwright-core": "cli.js" From a8503b210b44f316258a42c9ed7c06297e31e347 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 10 May 2024 19:53:50 +0300 Subject: [PATCH 219/458] Bump fastify from 4.26.2 to 4.27.0 (#515) Bumps [fastify](https://github.com/fastify/fastify) from 4.26.2 to 4.27.0. - [Release notes](https://github.com/fastify/fastify/releases) - [Commits](https://github.com/fastify/fastify/compare/v4.26.2...v4.27.0) --- updated-dependencies: - dependency-name: fastify dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- internal/backend/package.json | 2 +- package-lock.json | 35 +++++++-------------------------- packages/server/package.json | 2 +- 4 files changed, 10 insertions(+), 31 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 453d7cba..c25430fb 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -34,7 +34,7 @@ "axios": "1.6.8", "dotenv-cli": "7.4.2", "eslint": "8.57.0", - "fastify": "4.26.2", + "fastify": "4.27.0", "pm2": "5.3.1", "redis": "4.6.13", "rimraf": "5.0.5", diff --git a/internal/backend/package.json b/internal/backend/package.json index d4dfbe80..c7457b92 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -10,7 +10,7 @@ "start": "node --import tsx/esm ./src/backend.ts" }, "dependencies": { - "fastify": "4.26.2", + "fastify": "4.27.0", "pino": "9.0.0" }, "devDependencies": { diff --git a/package-lock.json b/package-lock.json index 9c79d693..1df1914a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -54,7 +54,7 @@ "axios": "1.6.8", "dotenv-cli": "7.4.2", "eslint": "8.57.0", - "fastify": "4.26.2", + "fastify": "4.27.0", "pm2": "5.3.1", "redis": "4.6.13", "rimraf": "5.0.5", @@ -441,7 +441,7 @@ "version": "0.0.0", "license": "MIT", "dependencies": { - "fastify": "4.26.2", + "fastify": "4.27.0", "pino": "9.0.0" }, "devDependencies": { @@ -8025,9 +8025,9 @@ "integrity": "sha512-eel5UKGn369gGEWOqBShmFJWfq/xSJvsgDzgLYC845GneayWvXBf0lJCBn5qTABfewy1ZDPoaR5OZCP+kssfuw==" }, "node_modules/fastify": { - "version": "4.26.2", - "resolved": "https://registry.npmjs.org/fastify/-/fastify-4.26.2.tgz", - "integrity": "sha512-90pjTuPGrfVKtdpLeLzND5nyC4woXZN5VadiNQCicj/iJU4viNHKhsAnb7jmv1vu2IzkLXyBiCzdWuzeXgQ5Ug==", + "version": "4.27.0", + "resolved": "https://registry.npmjs.org/fastify/-/fastify-4.27.0.tgz", + "integrity": "sha512-ci9IXzbigB8dyi0mSy3faa3Bsj0xWAPb9JeT4KRzubdSb6pNhcADRUaXCBml6V1Ss/a05kbtQls5LBmhHydoTA==", "funding": [ { "type": "github", @@ -8048,7 +8048,7 @@ "fast-json-stringify": "^5.8.0", "find-my-way": "^8.0.0", "light-my-request": "^5.11.0", - "pino": "^8.17.0", + "pino": "^9.0.0", "process-warning": "^3.0.0", "proxy-addr": "^2.0.7", "rfdc": "^1.3.0", @@ -8057,27 +8057,6 @@ "toad-cache": "^3.3.0" } }, - "node_modules/fastify/node_modules/pino": { - "version": "8.21.0", - "resolved": "https://registry.npmjs.org/pino/-/pino-8.21.0.tgz", - "integrity": "sha512-ip4qdzjkAyDDZklUaZkcRFb2iA118H9SgRh8yzTkSQK8HilsOJF7rSY8HoW5+I0M46AZgX/pxbprf2vvzQCE0Q==", - "dependencies": { - "atomic-sleep": "^1.0.0", - "fast-redact": "^3.1.1", - "on-exit-leak-free": "^2.1.0", - "pino-abstract-transport": "^1.2.0", - "pino-std-serializers": "^6.0.0", - "process-warning": "^3.0.0", - "quick-format-unescaped": "^4.0.3", - "real-require": "^0.2.0", - "safe-stable-stringify": "^2.3.1", - "sonic-boom": "^3.7.0", - "thread-stream": "^2.6.0" - }, - "bin": { - "pino": "bin.js" - } - }, "node_modules/fastq": { "version": "1.17.1", "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz", @@ -17509,7 +17488,7 @@ "version": "1.1.1", "license": "MIT", "dependencies": { - "fastify": "4.26.2", + "fastify": "4.27.0", "pino": "9.0.0" }, "bin": { diff --git a/packages/server/package.json b/packages/server/package.json index 658a32a0..43457386 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -25,7 +25,7 @@ "start": "node --import tsx/esm ./src/server.ts" }, "dependencies": { - "fastify": "4.26.2", + "fastify": "4.27.0", "pino": "9.0.0" }, "devDependencies": { From e4024de7901c942120472b836ced5d7a38635a03 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 11 May 2024 11:54:54 +0300 Subject: [PATCH 220/458] Bump rimraf from 5.0.5 to 5.0.6 (#522) Bumps [rimraf](https://github.com/isaacs/rimraf) from 5.0.5 to 5.0.6. - [Changelog](https://github.com/isaacs/rimraf/blob/main/CHANGELOG.md) - [Commits](https://github.com/isaacs/rimraf/compare/v5.0.5...v5.0.6) --- updated-dependencies: - dependency-name: rimraf dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- internal/backend/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 22 ++++++++++----------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 9 files changed, 19 insertions(+), 19 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index c25430fb..e6445e00 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -37,7 +37,7 @@ "fastify": "4.27.0", "pm2": "5.3.1", "redis": "4.6.13", - "rimraf": "5.0.5", + "rimraf": "5.0.6", "tsx": "4.9.3", "typescript": "5.4.5" } diff --git a/internal/backend/package.json b/internal/backend/package.json index c7457b92..f1873361 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -17,7 +17,7 @@ "@repo/typescript-config": "*", "@types/node": "20.12.11", "pino-pretty": "11.0.0", - "rimraf": "5.0.5", + "rimraf": "5.0.6", "tsx": "4.9.3", "typescript": "5.4.5" } diff --git a/internal/next-common/package.json b/internal/next-common/package.json index cd5f180a..a321ee1d 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -16,7 +16,7 @@ "devDependencies": { "@repo/typescript-config": "*", "@types/node": "20.12.11", - "rimraf": "5.0.5", + "rimraf": "5.0.6", "typescript": "5.4.5" } } diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index 2dc13ab0..eab50ba0 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -17,7 +17,7 @@ "@neshca/next-common": "*", "@repo/typescript-config": "*", "@types/node": "20.12.11", - "rimraf": "5.0.5", + "rimraf": "5.0.6", "typescript": "5.4.5" } } diff --git a/package-lock.json b/package-lock.json index 1df1914a..31f5e915 100644 --- a/package-lock.json +++ b/package-lock.json @@ -57,7 +57,7 @@ "fastify": "4.27.0", "pm2": "5.3.1", "redis": "4.6.13", - "rimraf": "5.0.5", + "rimraf": "5.0.6", "tsx": "4.9.3", "typescript": "5.4.5" } @@ -448,7 +448,7 @@ "@repo/typescript-config": "*", "@types/node": "20.12.11", "pino-pretty": "11.0.0", - "rimraf": "5.0.5", + "rimraf": "5.0.6", "tsx": "4.9.3", "typescript": "5.4.5" } @@ -586,7 +586,7 @@ "devDependencies": { "@repo/typescript-config": "*", "@types/node": "20.12.11", - "rimraf": "5.0.5", + "rimraf": "5.0.6", "typescript": "5.4.5" } }, @@ -650,7 +650,7 @@ "@neshca/next-common": "*", "@repo/typescript-config": "*", "@types/node": "20.12.11", - "rimraf": "5.0.5", + "rimraf": "5.0.6", "typescript": "5.4.5" } }, @@ -14106,9 +14106,9 @@ "integrity": "sha512-r5a3l5HzYlIC68TpmYKlxWjmOP6wiPJ1vWv2HeLhNsRZMrCkxeqxiHlQ21oXmQ4F3SiryXBHhAD7JZqvOJjFmg==" }, "node_modules/rimraf": { - "version": "5.0.5", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-5.0.5.tgz", - "integrity": "sha512-CqDakW+hMe/Bz202FPEymy68P+G50RfMQK+Qo5YUqc9SPipvbGjCGKd0RSKEelbsfQuw3g5NZDSrlZZAJurH1A==", + "version": "5.0.6", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-5.0.6.tgz", + "integrity": "sha512-X72SgyOf+1lFnGM6gYcmZ4+jMOwuT4E4SajKQzUIlI7EoR5eFHMhS/wf8Ll0mN+w2bxcIVldrJQ6xT7HFQywjg==", "dev": true, "dependencies": { "glob": "^10.3.7" @@ -17442,7 +17442,7 @@ "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", "@types/node": "20.12.11", - "rimraf": "5.0.5", + "rimraf": "5.0.6", "tsup": "8.0.2", "tsx": "4.9.3", "typescript": "5.4.5" @@ -17461,7 +17461,7 @@ "devDependencies": { "@repo/typescript-config": "*", "@types/node": "20.12.11", - "rimraf": "5.0.5", + "rimraf": "5.0.6", "tsup": "8.0.2", "typescript": "5.4.5" }, @@ -17477,7 +17477,7 @@ "devDependencies": { "@repo/typescript-config": "*", "@types/node": "20.12.11", - "rimraf": "5.0.5", + "rimraf": "5.0.6", "tsup": "8.0.2", "tsx": "4.9.3", "typescript": "5.4.5" @@ -17499,7 +17499,7 @@ "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", "@types/node": "20.12.11", - "rimraf": "5.0.5", + "rimraf": "5.0.6", "tsup": "8.0.2", "tsx": "4.9.3", "typescript": "5.4.5" diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 620836a5..32acded6 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -80,7 +80,7 @@ "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", "@types/node": "20.12.11", - "rimraf": "5.0.5", + "rimraf": "5.0.6", "tsup": "8.0.2", "tsx": "4.9.3", "typescript": "5.4.5" diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index 8f46325d..5f0f11b6 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -26,7 +26,7 @@ "devDependencies": { "@repo/typescript-config": "*", "@types/node": "20.12.11", - "rimraf": "5.0.5", + "rimraf": "5.0.6", "tsup": "8.0.2", "typescript": "5.4.5" }, diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 943f6b3f..2f629746 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -29,7 +29,7 @@ "devDependencies": { "@repo/typescript-config": "*", "@types/node": "20.12.11", - "rimraf": "5.0.5", + "rimraf": "5.0.6", "tsup": "8.0.2", "tsx": "4.9.3", "typescript": "5.4.5" diff --git a/packages/server/package.json b/packages/server/package.json index 43457386..b49c8046 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -33,7 +33,7 @@ "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", "@types/node": "20.12.11", - "rimraf": "5.0.5", + "rimraf": "5.0.6", "tsup": "8.0.2", "tsx": "4.9.3", "typescript": "5.4.5" From 4d6ebbe89f5d21804db3b43bd2ff6dffd5afc648 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 11 May 2024 12:04:48 +0300 Subject: [PATCH 221/458] Bump tsx from 4.9.3 to 4.9.4 (#523) Bumps [tsx](https://github.com/privatenumber/tsx) from 4.9.3 to 4.9.4. - [Release notes](https://github.com/privatenumber/tsx/releases) - [Changelog](https://github.com/privatenumber/tsx/blob/master/release.config.cjs) - [Commits](https://github.com/privatenumber/tsx/compare/v4.9.3...v4.9.4) --- updated-dependencies: - dependency-name: tsx dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- internal/backend/package.json | 2 +- package-lock.json | 16 ++++++++-------- packages/cache-handler/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 6 files changed, 13 insertions(+), 13 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index e6445e00..f073a165 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -38,7 +38,7 @@ "pm2": "5.3.1", "redis": "4.6.13", "rimraf": "5.0.6", - "tsx": "4.9.3", + "tsx": "4.9.4", "typescript": "5.4.5" } } diff --git a/internal/backend/package.json b/internal/backend/package.json index f1873361..7ff187e6 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -18,7 +18,7 @@ "@types/node": "20.12.11", "pino-pretty": "11.0.0", "rimraf": "5.0.6", - "tsx": "4.9.3", + "tsx": "4.9.4", "typescript": "5.4.5" } } diff --git a/package-lock.json b/package-lock.json index 31f5e915..b8a8c8b0 100644 --- a/package-lock.json +++ b/package-lock.json @@ -58,7 +58,7 @@ "pm2": "5.3.1", "redis": "4.6.13", "rimraf": "5.0.6", - "tsx": "4.9.3", + "tsx": "4.9.4", "typescript": "5.4.5" } }, @@ -449,7 +449,7 @@ "@types/node": "20.12.11", "pino-pretty": "11.0.0", "rimraf": "5.0.6", - "tsx": "4.9.3", + "tsx": "4.9.4", "typescript": "5.4.5" } }, @@ -15701,9 +15701,9 @@ "dev": true }, "node_modules/tsx": { - "version": "4.9.3", - "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.9.3.tgz", - "integrity": "sha512-czVbetlILiyJZI5zGlj2kw9vFiSeyra9liPD4nG+Thh4pKTi0AmMEQ8zdV/L2xbIVKrIqif4sUNrsMAOksx9Zg==", + "version": "4.9.4", + "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.9.4.tgz", + "integrity": "sha512-TlSJTVn2taGGDgdV3jAqCj7WQ/CafCB5p4SbG7W2Bl/0AJWH1ShJlBbc0y2lOFTjQEVAAULSTlmehw/Mwv3S/Q==", "dev": true, "dependencies": { "esbuild": "~0.20.2", @@ -17444,7 +17444,7 @@ "@types/node": "20.12.11", "rimraf": "5.0.6", "tsup": "8.0.2", - "tsx": "4.9.3", + "tsx": "4.9.4", "typescript": "5.4.5" }, "peerDependencies": { @@ -17479,7 +17479,7 @@ "@types/node": "20.12.11", "rimraf": "5.0.6", "tsup": "8.0.2", - "tsx": "4.9.3", + "tsx": "4.9.4", "typescript": "5.4.5" } }, @@ -17501,7 +17501,7 @@ "@types/node": "20.12.11", "rimraf": "5.0.6", "tsup": "8.0.2", - "tsx": "4.9.3", + "tsx": "4.9.4", "typescript": "5.4.5" } } diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 32acded6..87e6b65f 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -82,7 +82,7 @@ "@types/node": "20.12.11", "rimraf": "5.0.6", "tsup": "8.0.2", - "tsx": "4.9.3", + "tsx": "4.9.4", "typescript": "5.4.5" }, "peerDependencies": { diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 2f629746..268327d3 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -31,7 +31,7 @@ "@types/node": "20.12.11", "rimraf": "5.0.6", "tsup": "8.0.2", - "tsx": "4.9.3", + "tsx": "4.9.4", "typescript": "5.4.5" } } diff --git a/packages/server/package.json b/packages/server/package.json index b49c8046..49f64ed1 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -35,7 +35,7 @@ "@types/node": "20.12.11", "rimraf": "5.0.6", "tsup": "8.0.2", - "tsx": "4.9.3", + "tsx": "4.9.4", "typescript": "5.4.5" }, "distTags": [ From ad4be0fd4cfbad9c760b9452fb53bb86748b6948 Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Sat, 11 May 2024 12:24:10 +0300 Subject: [PATCH 222/458] Update next and eslint-plugin-next in docs (#524) --- docs/cache-handler-docs/package.json | 4 +- package-lock.json | 974 +++++++++++---------------- 2 files changed, 413 insertions(+), 565 deletions(-) diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 46d07f9e..c3d4c591 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -11,14 +11,14 @@ "start:docs": "next start" }, "dependencies": { - "next": "14.1.0", + "next": "14.2.3", "nextra": "2.13.4", "nextra-theme-docs": "2.13.4", "react": "18.3.1", "react-dom": "18.3.1" }, "devDependencies": { - "@next/eslint-plugin-next": "14.1.0", + "@next/eslint-plugin-next": "14.2.3", "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", diff --git a/package-lock.json b/package-lock.json index b8a8c8b0..e2e5c75e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -62,6 +62,15 @@ "typescript": "5.4.5" } }, + "apps/cache-testing/node_modules/@types/node": { + "version": "20.12.11", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.11.tgz", + "integrity": "sha512-vDg9PZ/zi+Nqp6boSOT7plNuthRugEKixDv5sFTIpkE89MmNtEArAShI4mxuX2+UrLEe9pxC1vm2cjm9YlWbJw==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "apps/cache-testing/node_modules/next": { "version": "14.2.0-canary.61", "resolved": "https://registry.npmjs.org/next/-/next-14.2.0-canary.61.tgz", @@ -114,14 +123,14 @@ "docs/cache-handler-docs": { "version": "0.1.0", "dependencies": { - "next": "14.1.0", + "next": "14.2.3", "nextra": "2.13.4", "nextra-theme-docs": "2.13.4", "react": "18.3.1", "react-dom": "18.3.1" }, "devDependencies": { - "@next/eslint-plugin-next": "14.1.0", + "@next/eslint-plugin-next": "14.2.3", "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", @@ -132,161 +141,22 @@ "typescript": "5.4.5" } }, - "docs/cache-handler-docs/node_modules/@next/env": { - "version": "14.1.0", - "resolved": "https://registry.npmjs.org/@next/env/-/env-14.1.0.tgz", - "integrity": "sha512-Py8zIo+02ht82brwwhTg36iogzFqGLPXlRGKQw5s+qP/kMNc4MAyDeEwBKDijk6zTIbegEgu8Qy7C1LboslQAw==" - }, "docs/cache-handler-docs/node_modules/@next/eslint-plugin-next": { - "version": "14.1.0", - "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.1.0.tgz", - "integrity": "sha512-x4FavbNEeXx/baD/zC/SdrvkjSby8nBn8KcCREqk6UuwvwoAPZmaV8TFCAuo/cpovBRTIY67mHhe86MQQm/68Q==", + "version": "14.2.3", + "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.2.3.tgz", + "integrity": "sha512-L3oDricIIjgj1AVnRdRor21gI7mShlSwU/1ZGHmqM3LzHhXXhdkrfeNY5zif25Bi5Dd7fiJHsbhoZCHfXYvlAw==", "dev": true, "dependencies": { "glob": "10.3.10" } }, - "docs/cache-handler-docs/node_modules/@next/swc-darwin-arm64": { - "version": "14.1.0", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.1.0.tgz", - "integrity": "sha512-nUDn7TOGcIeyQni6lZHfzNoo9S0euXnu0jhsbMOmMJUBfgsnESdjN97kM7cBqQxZa8L/bM9om/S5/1dzCrW6wQ==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">= 10" - } - }, - "docs/cache-handler-docs/node_modules/@next/swc-darwin-x64": { - "version": "14.1.0", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.1.0.tgz", - "integrity": "sha512-1jgudN5haWxiAl3O1ljUS2GfupPmcftu2RYJqZiMJmmbBT5M1XDffjUtRUzP4W3cBHsrvkfOFdQ71hAreNQP6g==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">= 10" - } - }, - "docs/cache-handler-docs/node_modules/@next/swc-linux-arm64-gnu": { - "version": "14.1.0", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.1.0.tgz", - "integrity": "sha512-RHo7Tcj+jllXUbK7xk2NyIDod3YcCPDZxj1WLIYxd709BQ7WuRYl3OWUNG+WUfqeQBds6kvZYlc42NJJTNi4tQ==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "docs/cache-handler-docs/node_modules/@next/swc-linux-arm64-musl": { - "version": "14.1.0", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.1.0.tgz", - "integrity": "sha512-v6kP8sHYxjO8RwHmWMJSq7VZP2nYCkRVQ0qolh2l6xroe9QjbgV8siTbduED4u0hlk0+tjS6/Tuy4n5XCp+l6g==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "docs/cache-handler-docs/node_modules/@next/swc-linux-x64-gnu": { - "version": "14.1.0", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.1.0.tgz", - "integrity": "sha512-zJ2pnoFYB1F4vmEVlb/eSe+VH679zT1VdXlZKX+pE66grOgjmKJHKacf82g/sWE4MQ4Rk2FMBCRnX+l6/TVYzQ==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "docs/cache-handler-docs/node_modules/@next/swc-linux-x64-musl": { - "version": "14.1.0", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.1.0.tgz", - "integrity": "sha512-rbaIYFt2X9YZBSbH/CwGAjbBG2/MrACCVu2X0+kSykHzHnYH5FjHxwXLkcoJ10cX0aWCEynpu+rP76x0914atg==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "docs/cache-handler-docs/node_modules/@next/swc-win32-arm64-msvc": { - "version": "14.1.0", - "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.1.0.tgz", - "integrity": "sha512-o1N5TsYc8f/HpGt39OUQpQ9AKIGApd3QLueu7hXk//2xq5Z9OxmV6sQfNp8C7qYmiOlHYODOGqNNa0e9jvchGQ==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 10" - } - }, - "docs/cache-handler-docs/node_modules/@next/swc-win32-ia32-msvc": { - "version": "14.1.0", - "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.1.0.tgz", - "integrity": "sha512-XXIuB1DBRCFwNO6EEzCTMHT5pauwaSj4SWs7CYnME57eaReAKBXCnkUE80p/pAZcewm7hs+vGvNqDPacEXHVkw==", - "cpu": [ - "ia32" - ], - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 10" - } - }, - "docs/cache-handler-docs/node_modules/@next/swc-win32-x64-msvc": { - "version": "14.1.0", - "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.1.0.tgz", - "integrity": "sha512-9WEbVRRAqJ3YFVqEZIxUqkiO8l1nool1LmNxygr5HWF8AcSYsEpneUDhmjUVJEzO2A04+oPtZdombzzPPkTtgg==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 10" - } - }, - "docs/cache-handler-docs/node_modules/@swc/helpers": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.2.tgz", - "integrity": "sha512-E4KcWTpoLHqwPHLxidpOqQbcrZVgi0rsmmZXUle1jXmJfuIf/UWpczUJ7MZZ5tlxytgJXyp0w4PGkkeLiuIdZw==", + "docs/cache-handler-docs/node_modules/@types/node": { + "version": "20.12.11", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.11.tgz", + "integrity": "sha512-vDg9PZ/zi+Nqp6boSOT7plNuthRugEKixDv5sFTIpkE89MmNtEArAShI4mxuX2+UrLEe9pxC1vm2cjm9YlWbJw==", + "dev": true, "dependencies": { - "tslib": "^2.4.0" + "undici-types": "~5.26.4" } }, "docs/cache-handler-docs/node_modules/glob": { @@ -311,51 +181,6 @@ "url": "https://github.com/sponsors/isaacs" } }, - "docs/cache-handler-docs/node_modules/next": { - "version": "14.1.0", - "resolved": "https://registry.npmjs.org/next/-/next-14.1.0.tgz", - "integrity": "sha512-wlzrsbfeSU48YQBjZhDzOwhWhGsy+uQycR8bHAOt1LY1bn3zZEcDyHQOEoN3aWzQ8LHCAJ1nqrWCc9XF2+O45Q==", - "dependencies": { - "@next/env": "14.1.0", - "@swc/helpers": "0.5.2", - "busboy": "1.6.0", - "caniuse-lite": "^1.0.30001579", - "graceful-fs": "^4.2.11", - "postcss": "8.4.31", - "styled-jsx": "5.1.1" - }, - "bin": { - "next": "dist/bin/next" - }, - "engines": { - "node": ">=18.17.0" - }, - "optionalDependencies": { - "@next/swc-darwin-arm64": "14.1.0", - "@next/swc-darwin-x64": "14.1.0", - "@next/swc-linux-arm64-gnu": "14.1.0", - "@next/swc-linux-arm64-musl": "14.1.0", - "@next/swc-linux-x64-gnu": "14.1.0", - "@next/swc-linux-x64-musl": "14.1.0", - "@next/swc-win32-arm64-msvc": "14.1.0", - "@next/swc-win32-ia32-msvc": "14.1.0", - "@next/swc-win32-x64-msvc": "14.1.0" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.1.0", - "react": "^18.2.0", - "react-dom": "^18.2.0", - "sass": "^1.3.0" - }, - "peerDependenciesMeta": { - "@opentelemetry/api": { - "optional": true - }, - "sass": { - "optional": true - } - } - }, "docs/cache-handler-docs/node_modules/nextra": { "version": "2.13.4", "resolved": "https://registry.npmjs.org/nextra/-/nextra-2.13.4.tgz", @@ -453,6 +278,15 @@ "typescript": "5.4.5" } }, + "internal/backend/node_modules/@types/node": { + "version": "20.12.11", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.11.tgz", + "integrity": "sha512-vDg9PZ/zi+Nqp6boSOT7plNuthRugEKixDv5sFTIpkE89MmNtEArAShI4mxuX2+UrLEe9pxC1vm2cjm9YlWbJw==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "internal/eslint-config": { "name": "@repo/eslint-config", "version": "0.0.0", @@ -467,9 +301,9 @@ } }, "internal/eslint-config/node_modules/@next/eslint-plugin-next": { - "version": "14.2.1", - "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.2.1.tgz", - "integrity": "sha512-Fp+mthEBjkn8r9qd6o4JgxKp0IDEzW0VYHD8ZC05xS5/lFNwHKuOdr2kVhWG7BQCO9L6eeepshM1Wbs2T+LgSg==", + "version": "14.2.3", + "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.2.3.tgz", + "integrity": "sha512-L3oDricIIjgj1AVnRdRor21gI7mShlSwU/1ZGHmqM3LzHhXXhdkrfeNY5zif25Bi5Dd7fiJHsbhoZCHfXYvlAw==", "dev": true, "optional": true, "peer": true, @@ -590,6 +424,15 @@ "typescript": "5.4.5" } }, + "internal/next-common/node_modules/@types/node": { + "version": "20.12.11", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.11.tgz", + "integrity": "sha512-vDg9PZ/zi+Nqp6boSOT7plNuthRugEKixDv5sFTIpkE89MmNtEArAShI4mxuX2+UrLEe9pxC1vm2cjm9YlWbJw==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "internal/next-common/node_modules/next": { "version": "14.2.0-canary.61", "resolved": "https://registry.npmjs.org/next/-/next-14.2.0-canary.61.tgz", @@ -654,6 +497,15 @@ "typescript": "5.4.5" } }, + "internal/next-lru-cache/node_modules/@types/node": { + "version": "20.12.11", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.11.tgz", + "integrity": "sha512-vDg9PZ/zi+Nqp6boSOT7plNuthRugEKixDv5sFTIpkE89MmNtEArAShI4mxuX2+UrLEe9pxC1vm2cjm9YlWbJw==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "internal/prettier-config": { "name": "@repo/prettier-config", "version": "0.0.0", @@ -663,9 +515,9 @@ } }, "internal/prettier-config/node_modules/@next/eslint-plugin-next": { - "version": "14.2.1", - "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.2.1.tgz", - "integrity": "sha512-Fp+mthEBjkn8r9qd6o4JgxKp0IDEzW0VYHD8ZC05xS5/lFNwHKuOdr2kVhWG7BQCO9L6eeepshM1Wbs2T+LgSg==", + "version": "14.2.3", + "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.2.3.tgz", + "integrity": "sha512-L3oDricIIjgj1AVnRdRor21gI7mShlSwU/1ZGHmqM3LzHhXXhdkrfeNY5zif25Bi5Dd7fiJHsbhoZCHfXYvlAw==", "dev": true, "optional": true, "peer": true, @@ -777,15 +629,6 @@ "version": "0.0.0", "license": "MIT" }, - "node_modules/@aashutoshrathi/word-wrap": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz", - "integrity": "sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/@actions/core": { "version": "1.10.1", "resolved": "https://registry.npmjs.org/@actions/core/-/core-1.10.1.tgz", @@ -841,21 +684,21 @@ } }, "node_modules/@babel/core": { - "version": "7.24.4", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.4.tgz", - "integrity": "sha512-MBVlMXP+kkl5394RBLSxxk/iLTeVGuXTV3cIDXavPpMMqnSnt6apKgan/U8O3USWZCWZT/TbgfEpKa4uMgN4Dg==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.5.tgz", + "integrity": "sha512-tVQRucExLQ02Boi4vdPp49svNGcfL2GhdTCT9aldhXgCJVAI21EtRfBettiuLUwce/7r6bFdgs6JFkcdTiFttA==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.2.0", "@babel/code-frame": "^7.24.2", - "@babel/generator": "^7.24.4", + "@babel/generator": "^7.24.5", "@babel/helper-compilation-targets": "^7.23.6", - "@babel/helper-module-transforms": "^7.23.3", - "@babel/helpers": "^7.24.4", - "@babel/parser": "^7.24.4", + "@babel/helper-module-transforms": "^7.24.5", + "@babel/helpers": "^7.24.5", + "@babel/parser": "^7.24.5", "@babel/template": "^7.24.0", - "@babel/traverse": "^7.24.1", - "@babel/types": "^7.24.0", + "@babel/traverse": "^7.24.5", + "@babel/types": "^7.24.5", "convert-source-map": "^2.0.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -880,9 +723,9 @@ } }, "node_modules/@babel/eslint-parser": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.24.1.tgz", - "integrity": "sha512-d5guuzMlPeDfZIbpQ8+g1NaCNuAGBBGNECh0HVqz1sjOeVLh2CEaifuOysCH18URW6R7pqXINvf5PaR/dC6jLQ==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.24.5.tgz", + "integrity": "sha512-gsUcqS/fPlgAw1kOtpss7uhY6E9SFFANQ6EFX5GTvzUwaV0+sGaZWk6xq22MOdeT9wfxyokW3ceCUvOiRtZciQ==", "dev": true, "dependencies": { "@nicolo-ribaudo/eslint-scope-5-internals": "5.1.1-v1", @@ -894,7 +737,7 @@ }, "peerDependencies": { "@babel/core": "^7.11.0", - "eslint": "^7.5.0 || ^8.0.0" + "eslint": "^7.5.0 || ^8.0.0 || ^9.0.0" } }, "node_modules/@babel/eslint-parser/node_modules/eslint-visitor-keys": { @@ -916,12 +759,12 @@ } }, "node_modules/@babel/generator": { - "version": "7.24.4", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.4.tgz", - "integrity": "sha512-Xd6+v6SnjWVx/nus+y0l1sxMOTOMBkyL4+BIdbALyatQnAe/SRVjANeDPSCYaX+i1iJmuGSKf3Z+E+V/va1Hvw==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.5.tgz", + "integrity": "sha512-x32i4hEXvr+iI0NEoEfDKzlemF8AmtOP8CcrRaEcpzysWuoEb1KknpcvMsHKPONoKZiDuItklgWhB18xEhr9PA==", "dev": true, "dependencies": { - "@babel/types": "^7.24.0", + "@babel/types": "^7.24.5", "@jridgewell/gen-mapping": "^0.3.5", "@jridgewell/trace-mapping": "^0.3.25", "jsesc": "^2.5.1" @@ -1017,16 +860,16 @@ } }, "node_modules/@babel/helper-module-transforms": { - "version": "7.23.3", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.23.3.tgz", - "integrity": "sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.24.5.tgz", + "integrity": "sha512-9GxeY8c2d2mdQUP1Dye0ks3VDyIMS98kt/llQ2nUId8IsWqTF0l1LkSX0/uP7l7MCDrzXS009Hyhe2gzTiGW8A==", "dev": true, "dependencies": { "@babel/helper-environment-visitor": "^7.22.20", - "@babel/helper-module-imports": "^7.22.15", - "@babel/helper-simple-access": "^7.22.5", - "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/helper-validator-identifier": "^7.22.20" + "@babel/helper-module-imports": "^7.24.3", + "@babel/helper-simple-access": "^7.24.5", + "@babel/helper-split-export-declaration": "^7.24.5", + "@babel/helper-validator-identifier": "^7.24.5" }, "engines": { "node": ">=6.9.0" @@ -1036,24 +879,24 @@ } }, "node_modules/@babel/helper-simple-access": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz", - "integrity": "sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.24.5.tgz", + "integrity": "sha512-uH3Hmf5q5n7n8mz7arjUlDOCbttY/DW4DYhE6FUsjKJ/oYC1kQQUvwEQWxRwUpX9qQKRXeqLwWxrqilMrf32sQ==", "dev": true, "dependencies": { - "@babel/types": "^7.22.5" + "@babel/types": "^7.24.5" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-split-export-declaration": { - "version": "7.22.6", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz", - "integrity": "sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.24.5.tgz", + "integrity": "sha512-5CHncttXohrHk8GWOFCcCl4oRD9fKosWlIRgWm4ql9VYioKm52Mk2xsmoohvm7f3JoiLSM5ZgJuRaf5QZZYd3Q==", "dev": true, "dependencies": { - "@babel/types": "^7.22.5" + "@babel/types": "^7.24.5" }, "engines": { "node": ">=6.9.0" @@ -1069,9 +912,9 @@ } }, "node_modules/@babel/helper-validator-identifier": { - "version": "7.22.20", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz", - "integrity": "sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.5.tgz", + "integrity": "sha512-3q93SSKX2TWCG30M2G2kwaKeTYgEUp5Snjuj8qm729SObL6nbtUldAi37qbxkD5gg3xnBio+f9nqpSepGZMvxA==", "engines": { "node": ">=6.9.0" } @@ -1086,25 +929,25 @@ } }, "node_modules/@babel/helpers": { - "version": "7.24.4", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.24.4.tgz", - "integrity": "sha512-FewdlZbSiwaVGlgT1DPANDuCHaDMiOo+D/IDYRFYjHOuv66xMSJ7fQwwODwRNAPkADIO/z1EoF/l2BCWlWABDw==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.24.5.tgz", + "integrity": "sha512-CiQmBMMpMQHwM5m01YnrM6imUG1ebgYJ+fAIW4FZe6m4qHTPaRHti+R8cggAwkdz4oXhtO4/K9JWlh+8hIfR2Q==", "dev": true, "dependencies": { "@babel/template": "^7.24.0", - "@babel/traverse": "^7.24.1", - "@babel/types": "^7.24.0" + "@babel/traverse": "^7.24.5", + "@babel/types": "^7.24.5" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/highlight": { - "version": "7.24.2", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.2.tgz", - "integrity": "sha512-Yac1ao4flkTxTteCDZLEvdxg2fZfz1v8M4QpaGypq/WPDqg3ijHYbDfs+LG5hvzSoqaSZ9/Z9lKSP3CjZjv+pA==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.5.tgz", + "integrity": "sha512-8lLmua6AVh/8SLJRRVD6V8p73Hir9w5mJrhE+IPpILG31KKlI9iz5zmBYKcWPS59qSfgP9RaSBQSHHE81WKuEw==", "dependencies": { - "@babel/helper-validator-identifier": "^7.22.20", + "@babel/helper-validator-identifier": "^7.24.5", "chalk": "^2.4.2", "js-tokens": "^4.0.0", "picocolors": "^1.0.0" @@ -1114,9 +957,9 @@ } }, "node_modules/@babel/parser": { - "version": "7.24.4", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.4.tgz", - "integrity": "sha512-zTvEBcghmeBma9QIGunWevvBAp4/Qu9Bdq+2k0Ot4fVMD6v3dsC9WOcRSKk7tRRyBM/53yKMJko9xOatGQAwSg==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.5.tgz", + "integrity": "sha512-EOv5IK8arwh3LI47dz1b0tKUb/1uhHAnHJOrjgtQMIpu1uXd9mlFrJg9IUgGUgZ41Ch0K8REPTYpO7B76b4vJg==", "dev": true, "bin": { "parser": "bin/babel-parser.js" @@ -1126,9 +969,9 @@ } }, "node_modules/@babel/runtime": { - "version": "7.24.4", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.24.4.tgz", - "integrity": "sha512-dkxf7+hn8mFBwKjs9bvBlArzLVxVbS8usaPUDd5p2a9JCL9tB8OaOVN1isD4+Xyk4ns89/xeOmbQvgdK7IIVdA==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.24.5.tgz", + "integrity": "sha512-Nms86NXrsaeU9vbBJKni6gXiEXZ4CVpYVzEjDH9Sb8vmZ3UljyA1GSOJl/6LGPO8EHLuSF9H+IxNXHPX8QHJ4g==", "dependencies": { "regenerator-runtime": "^0.14.0" }, @@ -1151,19 +994,19 @@ } }, "node_modules/@babel/traverse": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.1.tgz", - "integrity": "sha512-xuU6o9m68KeqZbQuDt2TcKSxUw/mrsvavlEqQ1leZ/B+C9tk6E4sRWy97WaXgvq5E+nU3cXMxv3WKOCanVMCmQ==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.5.tgz", + "integrity": "sha512-7aaBLeDQ4zYcUFDUD41lJc1fG8+5IU9DaNSJAgal866FGvmD5EbWQgnEC6kO1gGLsX0esNkfnJSndbTXA3r7UA==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.24.1", - "@babel/generator": "^7.24.1", + "@babel/code-frame": "^7.24.2", + "@babel/generator": "^7.24.5", "@babel/helper-environment-visitor": "^7.22.20", "@babel/helper-function-name": "^7.23.0", "@babel/helper-hoist-variables": "^7.22.5", - "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/parser": "^7.24.1", - "@babel/types": "^7.24.0", + "@babel/helper-split-export-declaration": "^7.24.5", + "@babel/parser": "^7.24.5", + "@babel/types": "^7.24.5", "debug": "^4.3.1", "globals": "^11.1.0" }, @@ -1181,13 +1024,13 @@ } }, "node_modules/@babel/types": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.0.tgz", - "integrity": "sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.5.tgz", + "integrity": "sha512-6mQNsaLeXTw0nxYUYu+NSa4Hx4BlF1x1x8/PMFbiR+GBSr+2DkECc69b8hgy2frEodNcvPffeH8YfWd3LI6jhQ==", "dev": true, "dependencies": { - "@babel/helper-string-parser": "^7.23.4", - "@babel/helper-validator-identifier": "^7.22.20", + "@babel/helper-string-parser": "^7.24.1", + "@babel/helper-validator-identifier": "^7.24.5", "to-fast-properties": "^2.0.0" }, "engines": { @@ -2068,14 +1911,14 @@ } }, "node_modules/@fastify/ajv-compiler/node_modules/ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "version": "8.13.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.13.0.tgz", + "integrity": "sha512-PRA911Blj99jR5RMeTunVbNXMF6Lp4vZXnk5GQjcnUWUTsrXtekg/pnmFFI2u/I36Y/2bITGS30GZCXei6uNkA==", "dependencies": { - "fast-deep-equal": "^3.1.1", + "fast-deep-equal": "^3.1.3", "json-schema-traverse": "^1.0.0", "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" + "uri-js": "^4.4.1" }, "funding": { "type": "github", @@ -2291,11 +2134,6 @@ "fs-extra": "^8.1.0" } }, - "node_modules/@manypkg/find-root/node_modules/@types/node": { - "version": "12.20.55", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", - "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" - }, "node_modules/@manypkg/find-root/node_modules/fs-extra": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", @@ -3313,9 +3151,9 @@ "link": true }, "node_modules/@rollup/rollup-android-arm-eabi": { - "version": "4.14.3", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.14.3.tgz", - "integrity": "sha512-X9alQ3XM6I9IlSlmC8ddAvMSyG1WuHk5oUnXGw+yUBs3BFoTizmG1La/Gr8fVJvDWAq+zlYTZ9DBgrlKRVY06g==", + "version": "4.17.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.17.2.tgz", + "integrity": "sha512-NM0jFxY8bB8QLkoKxIQeObCaDlJKewVlIEkuyYKm5An1tdVZ966w2+MPQ2l8LBZLjR+SgyV+nRkTIunzOYBMLQ==", "cpu": [ "arm" ], @@ -3326,9 +3164,9 @@ ] }, "node_modules/@rollup/rollup-android-arm64": { - "version": "4.14.3", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.14.3.tgz", - "integrity": "sha512-eQK5JIi+POhFpzk+LnjKIy4Ks+pwJ+NXmPxOCSvOKSNRPONzKuUvWE+P9JxGZVxrtzm6BAYMaL50FFuPe0oWMQ==", + "version": "4.17.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.17.2.tgz", + "integrity": "sha512-yeX/Usk7daNIVwkq2uGoq2BYJKZY1JfyLTaHO/jaiSwi/lsf8fTFoQW/n6IdAsx5tx+iotu2zCJwz8MxI6D/Bw==", "cpu": [ "arm64" ], @@ -3339,9 +3177,9 @@ ] }, "node_modules/@rollup/rollup-darwin-arm64": { - "version": "4.14.3", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.14.3.tgz", - "integrity": "sha512-Od4vE6f6CTT53yM1jgcLqNfItTsLt5zE46fdPaEmeFHvPs5SjZYlLpHrSiHEKR1+HdRfxuzXHjDOIxQyC3ptBA==", + "version": "4.17.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.17.2.tgz", + "integrity": "sha512-kcMLpE6uCwls023+kknm71ug7MZOrtXo+y5p/tsg6jltpDtgQY1Eq5sGfHcQfb+lfuKwhBmEURDga9N0ol4YPw==", "cpu": [ "arm64" ], @@ -3352,9 +3190,9 @@ ] }, "node_modules/@rollup/rollup-darwin-x64": { - "version": "4.14.3", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.14.3.tgz", - "integrity": "sha512-0IMAO21axJeNIrvS9lSe/PGthc8ZUS+zC53O0VhF5gMxfmcKAP4ESkKOCwEi6u2asUrt4mQv2rjY8QseIEb1aw==", + "version": "4.17.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.17.2.tgz", + "integrity": "sha512-AtKwD0VEx0zWkL0ZjixEkp5tbNLzX+FCqGG1SvOu993HnSz4qDI6S4kGzubrEJAljpVkhRSlg5bzpV//E6ysTQ==", "cpu": [ "x64" ], @@ -3365,9 +3203,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm-gnueabihf": { - "version": "4.14.3", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.14.3.tgz", - "integrity": "sha512-ge2DC7tHRHa3caVEoSbPRJpq7azhG+xYsd6u2MEnJ6XzPSzQsTKyXvh6iWjXRf7Rt9ykIUWHtl0Uz3T6yXPpKw==", + "version": "4.17.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.17.2.tgz", + "integrity": "sha512-3reX2fUHqN7sffBNqmEyMQVj/CKhIHZd4y631duy0hZqI8Qoqf6lTtmAKvJFYa6bhU95B1D0WgzHkmTg33In0A==", "cpu": [ "arm" ], @@ -3378,9 +3216,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm-musleabihf": { - "version": "4.14.3", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.14.3.tgz", - "integrity": "sha512-ljcuiDI4V3ySuc7eSk4lQ9wU8J8r8KrOUvB2U+TtK0TiW6OFDmJ+DdIjjwZHIw9CNxzbmXY39wwpzYuFDwNXuw==", + "version": "4.17.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.17.2.tgz", + "integrity": "sha512-uSqpsp91mheRgw96xtyAGP9FW5ChctTFEoXP0r5FAzj/3ZRv3Uxjtc7taRQSaQM/q85KEKjKsZuiZM3GyUivRg==", "cpu": [ "arm" ], @@ -3391,9 +3229,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-gnu": { - "version": "4.14.3", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.14.3.tgz", - "integrity": "sha512-Eci2us9VTHm1eSyn5/eEpaC7eP/mp5n46gTRB3Aar3BgSvDQGJZuicyq6TsH4HngNBgVqC5sDYxOzTExSU+NjA==", + "version": "4.17.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.17.2.tgz", + "integrity": "sha512-EMMPHkiCRtE8Wdk3Qhtciq6BndLtstqZIroHiiGzB3C5LDJmIZcSzVtLRbwuXuUft1Cnv+9fxuDtDxz3k3EW2A==", "cpu": [ "arm64" ], @@ -3404,9 +3242,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-musl": { - "version": "4.14.3", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.14.3.tgz", - "integrity": "sha512-UrBoMLCq4E92/LCqlh+blpqMz5h1tJttPIniwUgOFJyjWI1qrtrDhhpHPuFxULlUmjFHfloWdixtDhSxJt5iKw==", + "version": "4.17.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.17.2.tgz", + "integrity": "sha512-NMPylUUZ1i0z/xJUIx6VUhISZDRT+uTWpBcjdv0/zkp7b/bQDF+NfnfdzuTiB1G6HTodgoFa93hp0O1xl+/UbA==", "cpu": [ "arm64" ], @@ -3417,9 +3255,9 @@ ] }, "node_modules/@rollup/rollup-linux-powerpc64le-gnu": { - "version": "4.14.3", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.14.3.tgz", - "integrity": "sha512-5aRjvsS8q1nWN8AoRfrq5+9IflC3P1leMoy4r2WjXyFqf3qcqsxRCfxtZIV58tCxd+Yv7WELPcO9mY9aeQyAmw==", + "version": "4.17.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.17.2.tgz", + "integrity": "sha512-T19My13y8uYXPw/L/k0JYaX1fJKFT/PWdXiHr8mTbXWxjVF1t+8Xl31DgBBvEKclw+1b00Chg0hxE2O7bTG7GQ==", "cpu": [ "ppc64" ], @@ -3430,9 +3268,9 @@ ] }, "node_modules/@rollup/rollup-linux-riscv64-gnu": { - "version": "4.14.3", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.14.3.tgz", - "integrity": "sha512-sk/Qh1j2/RJSX7FhEpJn8n0ndxy/uf0kI/9Zc4b1ELhqULVdTfN6HL31CDaTChiBAOgLcsJ1sgVZjWv8XNEsAQ==", + "version": "4.17.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.17.2.tgz", + "integrity": "sha512-BOaNfthf3X3fOWAB+IJ9kxTgPmMqPPH5f5k2DcCsRrBIbWnaJCgX2ll77dV1TdSy9SaXTR5iDXRL8n7AnoP5cg==", "cpu": [ "riscv64" ], @@ -3443,9 +3281,9 @@ ] }, "node_modules/@rollup/rollup-linux-s390x-gnu": { - "version": "4.14.3", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.14.3.tgz", - "integrity": "sha512-jOO/PEaDitOmY9TgkxF/TQIjXySQe5KVYB57H/8LRP/ux0ZoO8cSHCX17asMSv3ruwslXW/TLBcxyaUzGRHcqg==", + "version": "4.17.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.17.2.tgz", + "integrity": "sha512-W0UP/x7bnn3xN2eYMql2T/+wpASLE5SjObXILTMPUBDB/Fg/FxC+gX4nvCfPBCbNhz51C+HcqQp2qQ4u25ok6g==", "cpu": [ "s390x" ], @@ -3456,9 +3294,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-gnu": { - "version": "4.14.3", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.14.3.tgz", - "integrity": "sha512-8ybV4Xjy59xLMyWo3GCfEGqtKV5M5gCSrZlxkPGvEPCGDLNla7v48S662HSGwRd6/2cSneMQWiv+QzcttLrrOA==", + "version": "4.17.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.17.2.tgz", + "integrity": "sha512-Hy7pLwByUOuyaFC6mAr7m+oMC+V7qyifzs/nW2OJfC8H4hbCzOX07Ov0VFk/zP3kBsELWNFi7rJtgbKYsav9QQ==", "cpu": [ "x64" ], @@ -3469,9 +3307,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-musl": { - "version": "4.14.3", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.14.3.tgz", - "integrity": "sha512-s+xf1I46trOY10OqAtZ5Rm6lzHre/UiLA1J2uOhCFXWkbZrJRkYBPO6FhvGfHmdtQ3Bx793MNa7LvoWFAm93bg==", + "version": "4.17.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.17.2.tgz", + "integrity": "sha512-h1+yTWeYbRdAyJ/jMiVw0l6fOOm/0D1vNLui9iPuqgRGnXA0u21gAqOyB5iHjlM9MMfNOm9RHCQ7zLIzT0x11Q==", "cpu": [ "x64" ], @@ -3482,9 +3320,9 @@ ] }, "node_modules/@rollup/rollup-win32-arm64-msvc": { - "version": "4.14.3", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.14.3.tgz", - "integrity": "sha512-+4h2WrGOYsOumDQ5S2sYNyhVfrue+9tc9XcLWLh+Kw3UOxAvrfOrSMFon60KspcDdytkNDh7K2Vs6eMaYImAZg==", + "version": "4.17.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.17.2.tgz", + "integrity": "sha512-tmdtXMfKAjy5+IQsVtDiCfqbynAQE/TQRpWdVataHmhMb9DCoJxp9vLcCBjEQWMiUYxO1QprH/HbY9ragCEFLA==", "cpu": [ "arm64" ], @@ -3495,9 +3333,9 @@ ] }, "node_modules/@rollup/rollup-win32-ia32-msvc": { - "version": "4.14.3", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.14.3.tgz", - "integrity": "sha512-T1l7y/bCeL/kUwh9OD4PQT4aM7Bq43vX05htPJJ46RTI4r5KNt6qJRzAfNfM+OYMNEVBWQzR2Gyk+FXLZfogGw==", + "version": "4.17.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.17.2.tgz", + "integrity": "sha512-7II/QCSTAHuE5vdZaQEwJq2ZACkBpQDOmQsE6D6XUbnBHW8IAhm4eTufL6msLJorzrHDFv3CF8oCA/hSIRuZeQ==", "cpu": [ "ia32" ], @@ -3508,9 +3346,9 @@ ] }, "node_modules/@rollup/rollup-win32-x64-msvc": { - "version": "4.14.3", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.14.3.tgz", - "integrity": "sha512-/BypzV0H1y1HzgYpxqRaXGBRqfodgoBBCcsrujT6QRcakDQdfU+Lq9PENPh5jB4I44YWq+0C2eHsHya+nZY1sA==", + "version": "4.17.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.17.2.tgz", + "integrity": "sha512-TGGO7v7qOq4CYmSBVEYpI1Y5xDuCEnbVC5Vth8mOsW0gDSzxNrVERPc790IGHsrT2dQSimgMr9Ub3Y1Jci5/8w==", "cpu": [ "x64" ], @@ -3541,11 +3379,11 @@ } }, "node_modules/@tanstack/react-virtual": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/@tanstack/react-virtual/-/react-virtual-3.3.0.tgz", - "integrity": "sha512-QFxmTSZBniq15S0vSZ55P4ToXquMXwJypPXyX/ux7sYo6a2FX3/zWoRLLc4eIOGWTjvzqcIVNKhcuFb+OZL3aQ==", + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/@tanstack/react-virtual/-/react-virtual-3.5.0.tgz", + "integrity": "sha512-rtvo7KwuIvqK9zb0VZ5IL7fiJAEnG+0EiFZz8FUOs+2mhGqdGmjKIaT1XU7Zq0eFqL0jonLlhbayJI/J2SA/Bw==", "dependencies": { - "@tanstack/virtual-core": "3.3.0" + "@tanstack/virtual-core": "3.5.0" }, "funding": { "type": "github", @@ -3557,9 +3395,9 @@ } }, "node_modules/@tanstack/virtual-core": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/@tanstack/virtual-core/-/virtual-core-3.3.0.tgz", - "integrity": "sha512-A0004OAa1FcUkPHeeGoKgBrAgjH+uHdDPrw1L7RpkwnODYqRvoilqsHPs8cyTjMg1byZBbiNpQAq2TlFLIaQag==", + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/@tanstack/virtual-core/-/virtual-core-3.5.0.tgz", + "integrity": "sha512-KnPRCkQTyqhanNC0K63GBG3wA8I+D1fQuVnAvcBF8f13akOKeQp1gSbu6f77zCxhEk727iV5oQnbHLYzHrECLg==", "funding": { "type": "github", "url": "https://github.com/sponsors/tannerlinsley" @@ -3703,12 +3541,9 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "20.12.11", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.11.tgz", - "integrity": "sha512-vDg9PZ/zi+Nqp6boSOT7plNuthRugEKixDv5sFTIpkE89MmNtEArAShI4mxuX2+UrLEe9pxC1vm2cjm9YlWbJw==", - "dependencies": { - "undici-types": "~5.26.4" - } + "version": "12.20.55", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", + "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" }, "node_modules/@types/node-fetch": { "version": "2.6.11", @@ -3972,17 +3807,17 @@ } }, "node_modules/@typescript-eslint/utils": { - "version": "7.7.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-7.7.0.tgz", - "integrity": "sha512-LKGAXMPQs8U/zMRFXDZOzmMKgFv3COlxUQ+2NMPhbqgVm6R1w+nU1i4836Pmxu9jZAuIeyySNrN/6Rc657ggig==", + "version": "7.8.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-7.8.0.tgz", + "integrity": "sha512-L0yFqOCflVqXxiZyXrDr80lnahQfSOfc9ELAAZ75sqicqp2i36kEZZGuUymHNFoYOqxRT05up760b4iGsl02nQ==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.4.0", "@types/json-schema": "^7.0.15", "@types/semver": "^7.5.8", - "@typescript-eslint/scope-manager": "7.7.0", - "@typescript-eslint/types": "7.7.0", - "@typescript-eslint/typescript-estree": "7.7.0", + "@typescript-eslint/scope-manager": "7.8.0", + "@typescript-eslint/types": "7.8.0", + "@typescript-eslint/typescript-estree": "7.8.0", "semver": "^7.6.0" }, "engines": { @@ -3997,13 +3832,13 @@ } }, "node_modules/@typescript-eslint/utils/node_modules/@typescript-eslint/scope-manager": { - "version": "7.7.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-7.7.0.tgz", - "integrity": "sha512-/8INDn0YLInbe9Wt7dK4cXLDYp0fNHP5xKLHvZl3mOT5X17rK/YShXaiNmorl+/U4VKCVIjJnx4Ri5b0y+HClw==", + "version": "7.8.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-7.8.0.tgz", + "integrity": "sha512-viEmZ1LmwsGcnr85gIq+FCYI7nO90DVbE37/ll51hjv9aG+YZMb4WDE2fyWpUR4O/UrhGRpYXK/XajcGTk2B8g==", "dev": true, "dependencies": { - "@typescript-eslint/types": "7.7.0", - "@typescript-eslint/visitor-keys": "7.7.0" + "@typescript-eslint/types": "7.8.0", + "@typescript-eslint/visitor-keys": "7.8.0" }, "engines": { "node": "^18.18.0 || >=20.0.0" @@ -4014,9 +3849,9 @@ } }, "node_modules/@typescript-eslint/utils/node_modules/@typescript-eslint/types": { - "version": "7.7.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.7.0.tgz", - "integrity": "sha512-G01YPZ1Bd2hn+KPpIbrAhEWOn5lQBrjxkzHkWvP6NucMXFtfXoevK82hzQdpfuQYuhkvFDeQYbzXCjR1z9Z03w==", + "version": "7.8.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.8.0.tgz", + "integrity": "sha512-wf0peJ+ZGlcH+2ZS23aJbOv+ztjeeP8uQ9GgwMJGVLx/Nj9CJt17GWgWWoSmoRVKAX2X+7fzEnAjxdvK2gqCLw==", "dev": true, "engines": { "node": "^18.18.0 || >=20.0.0" @@ -4027,13 +3862,13 @@ } }, "node_modules/@typescript-eslint/utils/node_modules/@typescript-eslint/typescript-estree": { - "version": "7.7.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-7.7.0.tgz", - "integrity": "sha512-8p71HQPE6CbxIBy2kWHqM1KGrC07pk6RJn40n0DSc6bMOBBREZxSDJ+BmRzc8B5OdaMh1ty3mkuWRg4sCFiDQQ==", + "version": "7.8.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-7.8.0.tgz", + "integrity": "sha512-5pfUCOwK5yjPaJQNy44prjCwtr981dO8Qo9J9PwYXZ0MosgAbfEMB008dJ5sNo3+/BN6ytBPuSvXUg9SAqB0dg==", "dev": true, "dependencies": { - "@typescript-eslint/types": "7.7.0", - "@typescript-eslint/visitor-keys": "7.7.0", + "@typescript-eslint/types": "7.8.0", + "@typescript-eslint/visitor-keys": "7.8.0", "debug": "^4.3.4", "globby": "^11.1.0", "is-glob": "^4.0.3", @@ -4055,12 +3890,12 @@ } }, "node_modules/@typescript-eslint/utils/node_modules/@typescript-eslint/visitor-keys": { - "version": "7.7.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-7.7.0.tgz", - "integrity": "sha512-h0WHOj8MhdhY8YWkzIF30R379y0NqyOHExI9N9KCzvmu05EgG4FumeYa3ccfKUSphyWkWQE1ybVrgz/Pbam6YA==", + "version": "7.8.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-7.8.0.tgz", + "integrity": "sha512-q4/gibTNBQNA0lGyYQCmWRS5D15n8rXh4QjK3KV+MBPlTYHpfBUT3D3PaPR/HeNiI9W6R7FvlkcGhNyAoP+caA==", "dev": true, "dependencies": { - "@typescript-eslint/types": "7.7.0", + "@typescript-eslint/types": "7.8.0", "eslint-visitor-keys": "^3.4.3" }, "engines": { @@ -4185,14 +4020,14 @@ } }, "node_modules/ajv-formats/node_modules/ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "version": "8.13.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.13.0.tgz", + "integrity": "sha512-PRA911Blj99jR5RMeTunVbNXMF6Lp4vZXnk5GQjcnUWUTsrXtekg/pnmFFI2u/I36Y/2bITGS30GZCXei6uNkA==", "dependencies": { - "fast-deep-equal": "^3.1.1", + "fast-deep-equal": "^3.1.3", "json-schema-traverse": "^1.0.0", "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" + "uri-js": "^4.4.1" }, "funding": { "type": "github", @@ -4799,9 +4634,9 @@ } }, "node_modules/bundle-require": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/bundle-require/-/bundle-require-4.0.2.tgz", - "integrity": "sha512-jwzPOChofl67PSTW2SGubV9HBQAhhR2i6nskiOThauo9dzwDUgOWQScFVaJkjEfYX+UXiD+LEx8EblQMc2wIag==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bundle-require/-/bundle-require-4.1.0.tgz", + "integrity": "sha512-FeArRFM+ziGkRViKRnSTbHZc35dgmR9yNog05Kn0+ItI59pOAISGvnnIwW1WgFZQW59IxD9QpJnUPkdIPfZuXg==", "dev": true, "dependencies": { "load-tsconfig": "^0.2.3" @@ -4893,9 +4728,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001610", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001610.tgz", - "integrity": "sha512-QFutAY4NgaelojVMjY63o6XlZyORPaLfyMnsl3HgnWdJUcX6K0oaJymHjH8PT5Gk7sTm8rvC/c5COUQKXqmOMA==", + "version": "1.0.30001617", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001617.tgz", + "integrity": "sha512-mLyjzNI9I+Pix8zwcrpxEbGlfqOkF9kM3ptzmKNw5tizSyYwMe+nGLTqMK9cO+0E+Bh6TsBxNAaHWEM8xwSsmA==", "funding": [ { "type": "opencollective", @@ -5241,9 +5076,9 @@ } }, "node_modules/clsx": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/clsx/-/clsx-2.1.0.tgz", - "integrity": "sha512-m3iNNWpd9rl3jvvcBnu70ylMdrXt8Vlq4HYadnU5fwcOtvkSQWPmj7amUcDT2qYI7risszBjI5AUIUox9D16pg==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/clsx/-/clsx-2.1.1.tgz", + "integrity": "sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==", "engines": { "node": ">=6" } @@ -5420,13 +5255,9 @@ "dev": true }, "node_modules/cytoscape": { - "version": "3.28.1", - "resolved": "https://registry.npmjs.org/cytoscape/-/cytoscape-3.28.1.tgz", - "integrity": "sha512-xyItz4O/4zp9/239wCcH8ZcFuuZooEeF8KHRmzjDfGdXsj3OG9MFSMA0pJE0uX3uCN/ygof6hHf4L7lst+JaDg==", - "dependencies": { - "heap": "^0.2.6", - "lodash": "^4.17.21" - }, + "version": "3.29.2", + "resolved": "https://registry.npmjs.org/cytoscape/-/cytoscape-3.29.2.tgz", + "integrity": "sha512-2G1ycU28Nh7OHT9rkXRLpCDP30MKH1dXJORZuBhtEhEW7pKwgPi77ImqlCWinouyE1PNepIOGZBOrE84DG7LyQ==", "engines": { "node": ">=0.10" } @@ -5948,9 +5779,9 @@ } }, "node_modules/dayjs": { - "version": "1.11.10", - "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.10.tgz", - "integrity": "sha512-vjAczensTgRcqDERK0SR2XMwsF/tSvnvlv6VcF2GIhg6Sx4yOIt/irsr1RDJsKiIyBzJDpCoXiWWq28MqH2cnQ==" + "version": "1.11.11", + "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.11.tgz", + "integrity": "sha512-okzr3f11N6WuqYtZSvm+F776mB41wRZMhKP+hc34YdW+KmtYYK9iqvHSwo2k9FEH3fhGXvOPV6yz2IcSrfRUDg==" }, "node_modules/debug": { "version": "4.3.4", @@ -6166,9 +5997,9 @@ } }, "node_modules/dompurify": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-3.1.0.tgz", - "integrity": "sha512-yoU4rhgPKCo+p5UrWWWNKiIq+ToGqmVVhk0PmMYBK4kRsR3/qhemNFL8f6CFmBd4gMwm3F4T7HBoydP5uY07fA==" + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-3.1.2.tgz", + "integrity": "sha512-hLGGBI1tw5N8qTELr3blKjAML/LY4ANxksbS612UiJyDfyf/2D092Pvm+S7pmeTGJRqvlJkFzBoHBQKgQlOQVg==" }, "node_modules/dotenv": { "version": "16.4.5", @@ -6212,9 +6043,9 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.738", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.738.tgz", - "integrity": "sha512-lwKft2CLFztD+vEIpesrOtCrko/TFnEJlHFdRhazU7Y/jx5qc4cqsocfVrBg4So4gGe9lvxnbLIoev47WMpg+A==", + "version": "1.4.763", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.763.tgz", + "integrity": "sha512-k4J8NrtJ9QrvHLRo8Q18OncqBCB7tIUyqxRcJnlonQ0ioHKYB988GcDFF3ZePmnb8eHEopDs/wPHR/iGAFgoUQ==", "dev": true }, "node_modules/elkjs": { @@ -6247,9 +6078,9 @@ } }, "node_modules/enhanced-resolve": { - "version": "5.16.0", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.16.0.tgz", - "integrity": "sha512-O+QWCviPNSSLAD9Ucn8Awv+poAkqn3T1XY5/N7kR7rQO9yfSGWkYZDwpJ+iKF7B8rxaQKWngSqACpgzeapSyoA==", + "version": "5.16.1", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.16.1.tgz", + "integrity": "sha512-4U5pNsuDl0EhuZpq46M5xPslstkviJuhrdobaRDBk2Jy2KO37FDAJl4lb2KlNabxT0m4MTK2UHNrsAcphE8nyw==", "dev": true, "dependencies": { "graceful-fs": "^4.2.4", @@ -6369,14 +6200,14 @@ } }, "node_modules/es-iterator-helpers": { - "version": "1.0.18", - "resolved": "https://registry.npmjs.org/es-iterator-helpers/-/es-iterator-helpers-1.0.18.tgz", - "integrity": "sha512-scxAJaewsahbqTYrGKJihhViaM6DDZDDoucfvzNbK0pOren1g/daDQ3IAhzn+1G14rBG7w+i5N+qul60++zlKA==", + "version": "1.0.19", + "resolved": "https://registry.npmjs.org/es-iterator-helpers/-/es-iterator-helpers-1.0.19.tgz", + "integrity": "sha512-zoMwbCcH5hwUkKJkT8kDIBZSz9I6mVG//+lDCinLCGov4+r7NIy0ld8o03M0cJxl2spVf6ESYVS6/gpIfq1FFw==", "dev": true, "dependencies": { "call-bind": "^1.0.7", "define-properties": "^1.2.1", - "es-abstract": "^1.23.0", + "es-abstract": "^1.23.3", "es-errors": "^1.3.0", "es-set-tostringtag": "^2.0.3", "function-bind": "^1.1.2", @@ -7067,9 +6898,9 @@ } }, "node_modules/eslint-plugin-react-hooks": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.6.0.tgz", - "integrity": "sha512-oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g==", + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.6.2.tgz", + "integrity": "sha512-QzliNJq4GinDBcD8gPB5v0wh6g8q3SUi6EFF0x8N/BL9PoVs0atuGc47ozMRyOWAKdwaZ5OnbOEa3WR+dSGKuQ==", "dev": true, "engines": { "node": ">=10" @@ -7942,9 +7773,9 @@ "dev": true }, "node_modules/fast-json-stringify": { - "version": "5.14.1", - "resolved": "https://registry.npmjs.org/fast-json-stringify/-/fast-json-stringify-5.14.1.tgz", - "integrity": "sha512-J1Grbf0oSXV3lKsBf3itz1AvRk43qVrx3Ac10sNvi3LZaz1by4oDdYKFrJycPhS8+Gb7y8rgV/Jqw1UZVjyNvw==", + "version": "5.15.1", + "resolved": "https://registry.npmjs.org/fast-json-stringify/-/fast-json-stringify-5.15.1.tgz", + "integrity": "sha512-JopGtkvvguRqrS4gHXSSA2jf4pDgOZkeBAkLO1LbzOpiOMo7/kugoR+KiWifpLpluaVeYDkAuxCJOj4Gyc6L9A==", "dependencies": { "@fastify/merge-json-schemas": "^0.1.0", "ajv": "^8.10.0", @@ -7956,14 +7787,14 @@ } }, "node_modules/fast-json-stringify/node_modules/ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "version": "8.13.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.13.0.tgz", + "integrity": "sha512-PRA911Blj99jR5RMeTunVbNXMF6Lp4vZXnk5GQjcnUWUTsrXtekg/pnmFFI2u/I36Y/2bITGS30GZCXei6uNkA==", "dependencies": { - "fast-deep-equal": "^3.1.1", + "fast-deep-equal": "^3.1.3", "json-schema-traverse": "^1.0.0", "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" + "uri-js": "^4.4.1" }, "funding": { "type": "github", @@ -8095,13 +7926,13 @@ } }, "node_modules/find-my-way": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/find-my-way/-/find-my-way-8.1.0.tgz", - "integrity": "sha512-41QwjCGcVTODUmLLqTMeoHeiozbMXYMAE1CKFiDyi9zVZ2Vjh0yz3MF0WQZoIb+cmzP/XlbFjlF2NtJmvZHznA==", + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/find-my-way/-/find-my-way-8.2.0.tgz", + "integrity": "sha512-HdWXgFYc6b1BJcOBDBwjqWuHJj1WYiqrxSh25qtU4DabpMFdj/gSunNBQb83t+8Zt67D7CXEzJWTkxaShMTMOA==", "dependencies": { "fast-deep-equal": "^3.1.3", "fast-querystring": "^1.0.0", - "safe-regex2": "^2.0.0" + "safe-regex2": "^3.1.0" }, "engines": { "node": ">=14" @@ -8453,9 +8284,9 @@ } }, "node_modules/get-tsconfig": { - "version": "4.7.3", - "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.7.3.tgz", - "integrity": "sha512-ZvkrzoUA0PQZM6fy6+/Hce561s+faD1rsNwhnO5FelNjyy7EMGJ3Rz1AQ8GYDWjhRs/7dBLOEJvhK8MiEJOAFg==", + "version": "4.7.5", + "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.7.5.tgz", + "integrity": "sha512-ZCuZCnlqNzjb4QprAzXKdpp/gh6KTxSJuw3IBsPnV/7fV4NxC9ckB+vPTt8w7fJA0TaSD7c55BR47JD6MEDyDw==", "dev": true, "dependencies": { "resolve-pkg-maps": "^1.0.0" @@ -8607,11 +8438,12 @@ } }, "node_modules/globalthis": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz", - "integrity": "sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz", + "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==", "dependencies": { - "define-properties": "^1.1.3" + "define-properties": "^1.2.1", + "gopd": "^1.0.1" }, "engines": { "node": ">= 0.4" @@ -8989,9 +8821,9 @@ } }, "node_modules/hast-util-raw": { - "version": "9.0.2", - "resolved": "https://registry.npmjs.org/hast-util-raw/-/hast-util-raw-9.0.2.tgz", - "integrity": "sha512-PldBy71wO9Uq1kyaMch9AHIghtQvIwxBUkv823pKmkTM3oV1JxtsTNYdevMxvUHqcnOAuO65JKU2+0NOxc2ksA==", + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/hast-util-raw/-/hast-util-raw-9.0.3.tgz", + "integrity": "sha512-ICWvVOF2fq4+7CMmtCPD5CM4QKjPbHpPotE6+8tDooV0ZuyJVUzHsrNX+O5NaRbieTf0F7FfeBOMAwi6Td0+yQ==", "dependencies": { "@types/hast": "^3.0.0", "@types/unist": "^3.0.0", @@ -9176,11 +9008,6 @@ "@types/unist": "*" } }, - "node_modules/heap": { - "version": "0.2.7", - "resolved": "https://registry.npmjs.org/heap/-/heap-0.2.7.tgz", - "integrity": "sha512-2bsegYkkHO+h/9MGbn6KWcE45cHZgPANo5LXF7EvWdT0yT2EguSVO1nDgU5c8+ZOPwp2vMNa7YFsJhVcDR9Sdg==" - }, "node_modules/help-me": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/help-me/-/help-me-5.0.0.tgz", @@ -10245,7 +10072,8 @@ "node_modules/lodash": { "version": "4.17.21", "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "dev": true }, "node_modules/lodash-es": { "version": "4.17.21", @@ -11826,9 +11654,9 @@ } }, "node_modules/minipass": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", - "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.1.tgz", + "integrity": "sha512-UZ7eQ+h8ywIRAW1hIEl2AqdwzJucU/Kp59+8kkZeSvafXhZjul247BvIJjEVFVeON6d7lM46XX1HXCduKAS8VA==", "dev": true, "engines": { "node": ">=16 || 14 >=14.17" @@ -11949,12 +11777,11 @@ } }, "node_modules/next": { - "version": "14.2.1", - "resolved": "https://registry.npmjs.org/next/-/next-14.2.1.tgz", - "integrity": "sha512-SF3TJnKdH43PMkCcErLPv+x/DY1YCklslk3ZmwaVoyUfDgHKexuKlf9sEfBQ69w+ue8jQ3msLb+hSj1T19hGag==", - "peer": true, + "version": "14.2.3", + "resolved": "https://registry.npmjs.org/next/-/next-14.2.3.tgz", + "integrity": "sha512-dowFkFTR8v79NPJO4QsBUtxv0g9BrS/phluVpMAt2ku7H+cbcBJlopXjkWlwxrk/xGqMemr7JkGPGemPrLLX7A==", "dependencies": { - "@next/env": "14.2.1", + "@next/env": "14.2.3", "@swc/helpers": "0.5.5", "busboy": "1.6.0", "caniuse-lite": "^1.0.30001579", @@ -11969,15 +11796,15 @@ "node": ">=18.17.0" }, "optionalDependencies": { - "@next/swc-darwin-arm64": "14.2.1", - "@next/swc-darwin-x64": "14.2.1", - "@next/swc-linux-arm64-gnu": "14.2.1", - "@next/swc-linux-arm64-musl": "14.2.1", - "@next/swc-linux-x64-gnu": "14.2.1", - "@next/swc-linux-x64-musl": "14.2.1", - "@next/swc-win32-arm64-msvc": "14.2.1", - "@next/swc-win32-ia32-msvc": "14.2.1", - "@next/swc-win32-x64-msvc": "14.2.1" + "@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" }, "peerDependencies": { "@opentelemetry/api": "^1.1.0", @@ -12038,15 +11865,14 @@ } }, "node_modules/next/node_modules/@next/env": { - "version": "14.2.1", - "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.1.tgz", - "integrity": "sha512-qsHJle3GU3CmVx7pUoXcghX4sRN+vINkbLdH611T8ZlsP//grzqVW87BSUgOZeSAD4q7ZdZicdwNe/20U2janA==", - "peer": true + "version": "14.2.3", + "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.3.tgz", + "integrity": "sha512-W7fd7IbkfmeeY2gXrzJYDx8D2lWKbVoTIj1o1ScPHNzvp30s1AuoEFSdr39bC5sjxJaxTtq3OTCZboNp0lNWHA==" }, "node_modules/next/node_modules/@next/swc-darwin-arm64": { - "version": "14.2.1", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.1.tgz", - "integrity": "sha512-kGjnjcIJehEcd3rT/3NAATJQndAEELk0J9GmGMXHSC75TMnvpOhONcjNHbjtcWE5HUQnIHy5JVkatrnYm1QhVw==", + "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==", "cpu": [ "arm64" ], @@ -12054,15 +11880,14 @@ "os": [ "darwin" ], - "peer": true, "engines": { "node": ">= 10" } }, "node_modules/next/node_modules/@next/swc-darwin-x64": { - "version": "14.2.1", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.1.tgz", - "integrity": "sha512-dAdWndgdQi7BK2WSXrx4lae7mYcOYjbHJUhvOUnJjMNYrmYhxbbvJ2xElZpxNxdfA6zkqagIB9He2tQk+l16ew==", + "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==", "cpu": [ "x64" ], @@ -12070,15 +11895,14 @@ "os": [ "darwin" ], - "peer": true, "engines": { "node": ">= 10" } }, "node_modules/next/node_modules/@next/swc-linux-arm64-gnu": { - "version": "14.2.1", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.1.tgz", - "integrity": "sha512-2ZctfnyFOGvTkoD6L+DtQtO3BfFz4CapoHnyLTXkOxbZkVRgg3TQBUjTD/xKrO1QWeydeo8AWfZRg8539qNKrg==", + "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==", "cpu": [ "arm64" ], @@ -12086,15 +11910,14 @@ "os": [ "linux" ], - "peer": true, "engines": { "node": ">= 10" } }, "node_modules/next/node_modules/@next/swc-linux-arm64-musl": { - "version": "14.2.1", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.1.tgz", - "integrity": "sha512-jazZXctiaanemy4r+TPIpFP36t1mMwWCKMsmrTRVChRqE6putyAxZA4PDujx0SnfvZHosjdkx9xIq9BzBB5tWg==", + "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==", "cpu": [ "arm64" ], @@ -12102,15 +11925,14 @@ "os": [ "linux" ], - "peer": true, "engines": { "node": ">= 10" } }, "node_modules/next/node_modules/@next/swc-linux-x64-gnu": { - "version": "14.2.1", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.1.tgz", - "integrity": "sha512-VjCHWCjsAzQAAo8lkBOLEIkBZFdfW+Z18qcQ056kL4KpUYc8o59JhLDCBlhg+hINQRgzQ2UPGma2AURGOH0+Qg==", + "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==", "cpu": [ "x64" ], @@ -12118,15 +11940,14 @@ "os": [ "linux" ], - "peer": true, "engines": { "node": ">= 10" } }, "node_modules/next/node_modules/@next/swc-linux-x64-musl": { - "version": "14.2.1", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.1.tgz", - "integrity": "sha512-7HZKYKvAp4nAHiHIbY04finRqjeYvkITOGOurP1aLMexIFG/1+oCnqhGogBdc4lao/lkMW1c+AkwWSzSlLasqw==", + "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==", "cpu": [ "x64" ], @@ -12134,15 +11955,14 @@ "os": [ "linux" ], - "peer": true, "engines": { "node": ">= 10" } }, "node_modules/next/node_modules/@next/swc-win32-arm64-msvc": { - "version": "14.2.1", - "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.1.tgz", - "integrity": "sha512-YGHklaJ/Cj/F0Xd8jxgj2p8po4JTCi6H7Z3Yics3xJhm9CPIqtl8erlpK1CLv+HInDqEWfXilqatF8YsLxxA2Q==", + "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==", "cpu": [ "arm64" ], @@ -12150,15 +11970,14 @@ "os": [ "win32" ], - "peer": true, "engines": { "node": ">= 10" } }, "node_modules/next/node_modules/@next/swc-win32-ia32-msvc": { - "version": "14.2.1", - "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.1.tgz", - "integrity": "sha512-o+ISKOlvU/L43ZhtAAfCjwIfcwuZstiHVXq/BDsZwGqQE0h/81td95MPHliWCnFoikzWcYqh+hz54ZB2FIT8RA==", + "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==", "cpu": [ "ia32" ], @@ -12166,15 +11985,14 @@ "os": [ "win32" ], - "peer": true, "engines": { "node": ">= 10" } }, "node_modules/next/node_modules/@next/swc-win32-x64-msvc": { - "version": "14.2.1", - "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.1.tgz", - "integrity": "sha512-GmRoTiLcvCLifujlisknv4zu9/C4i9r0ktsA8E51EMqJL4bD4CpO7lDYr7SrUxCR0tS4RVcrqKmCak24T0ohaw==", + "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==", "cpu": [ "x64" ], @@ -12182,7 +12000,6 @@ "os": [ "win32" ], - "peer": true, "engines": { "node": ">= 10" } @@ -12469,9 +12286,9 @@ } }, "node_modules/openai": { - "version": "4.36.0", - "resolved": "https://registry.npmjs.org/openai/-/openai-4.36.0.tgz", - "integrity": "sha512-AtYrhhWY64LhB9P6f3H0nV8nTSaQJ89mWPnfNU5CnYg81zlYaV8nkyO+aTNfprdqP/9xv10woNNUgefXINT4Dg==", + "version": "4.45.0", + "resolved": "https://registry.npmjs.org/openai/-/openai-4.45.0.tgz", + "integrity": "sha512-uszUQrl9eQPCA9a7Zml+Eizb3mG0JDd8zUl528OM6Ccn039dqbOmUivL5s8zUM6iJMRMvNGRMXS9yuuR1Bv2sw==", "peer": true, "dependencies": { "@types/node": "^18.11.18", @@ -12488,26 +12305,26 @@ } }, "node_modules/openai/node_modules/@types/node": { - "version": "18.19.31", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.31.tgz", - "integrity": "sha512-ArgCD39YpyyrtFKIqMDvjz79jto5fcI/SVUs2HwB+f0dAzq68yqOdyaSivLiLugSziTpNXLQrVb7RZFmdZzbhA==", + "version": "18.19.33", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.33.tgz", + "integrity": "sha512-NR9+KrpSajr2qBVp/Yt5TU/rp+b5Mayi3+OlMlcg2cVCfRmcG5PWZ7S4+MG9PZ5gWBoc9Pd0BKSRViuBCRPu0A==", "peer": true, "dependencies": { "undici-types": "~5.26.4" } }, "node_modules/optionator": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.3.tgz", - "integrity": "sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==", + "version": "0.9.4", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz", + "integrity": "sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==", "dev": true, "dependencies": { - "@aashutoshrathi/word-wrap": "^1.2.3", "deep-is": "^0.1.3", "fast-levenshtein": "^2.0.6", "levn": "^0.4.1", "prelude-ls": "^1.2.1", - "type-check": "^0.4.0" + "type-check": "^0.4.0", + "word-wrap": "^1.2.5" }, "engines": { "node": ">= 0.8.0" @@ -14084,11 +13901,11 @@ } }, "node_modules/ret": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/ret/-/ret-0.2.2.tgz", - "integrity": "sha512-M0b3YWQs7R3Z917WRQy1HHA7Ba7D8hvZg6UE5mLykJxQVE2ju0IXbGlaHPPlkY+WN7wFP+wUMXmBFA0aV6vYGQ==", + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/ret/-/ret-0.4.3.tgz", + "integrity": "sha512-0f4Memo5QP7WQyUEAYUO3esD/XjOc3Zjjg5CPsAq1p8sIu0XPeMbHJemKA0BO7tV0X7+A0FoEpbmHXWxPyD3wQ==", "engines": { - "node": ">=4" + "node": ">=10" } }, "node_modules/reusify": { @@ -14129,9 +13946,9 @@ "integrity": "sha512-IXgzBWvWQwE6PrDI05OvmXUIruQTcoMDzRsOd5CDvHCVLcLHMTSYvOK5Cm46kWqlV3yAbuSpBZdJ5oP5OUoStg==" }, "node_modules/rollup": { - "version": "4.14.3", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.14.3.tgz", - "integrity": "sha512-ag5tTQKYsj1bhrFC9+OEWqb5O6VYgtQDO9hPDBMmIbePwhfSr+ExlcU741t8Dhw5DkPCQf6noz0jb36D6W9/hw==", + "version": "4.17.2", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.17.2.tgz", + "integrity": "sha512-/9ClTJPByC0U4zNLowV1tMBe8yMEAxewtR3cUNX5BoEpGH3dQEWpJLr6CLp0fPdYRF/fzVOgvDb1zXuakwF5kQ==", "dev": true, "dependencies": { "@types/estree": "1.0.5" @@ -14144,22 +13961,22 @@ "npm": ">=8.0.0" }, "optionalDependencies": { - "@rollup/rollup-android-arm-eabi": "4.14.3", - "@rollup/rollup-android-arm64": "4.14.3", - "@rollup/rollup-darwin-arm64": "4.14.3", - "@rollup/rollup-darwin-x64": "4.14.3", - "@rollup/rollup-linux-arm-gnueabihf": "4.14.3", - "@rollup/rollup-linux-arm-musleabihf": "4.14.3", - "@rollup/rollup-linux-arm64-gnu": "4.14.3", - "@rollup/rollup-linux-arm64-musl": "4.14.3", - "@rollup/rollup-linux-powerpc64le-gnu": "4.14.3", - "@rollup/rollup-linux-riscv64-gnu": "4.14.3", - "@rollup/rollup-linux-s390x-gnu": "4.14.3", - "@rollup/rollup-linux-x64-gnu": "4.14.3", - "@rollup/rollup-linux-x64-musl": "4.14.3", - "@rollup/rollup-win32-arm64-msvc": "4.14.3", - "@rollup/rollup-win32-ia32-msvc": "4.14.3", - "@rollup/rollup-win32-x64-msvc": "4.14.3", + "@rollup/rollup-android-arm-eabi": "4.17.2", + "@rollup/rollup-android-arm64": "4.17.2", + "@rollup/rollup-darwin-arm64": "4.17.2", + "@rollup/rollup-darwin-x64": "4.17.2", + "@rollup/rollup-linux-arm-gnueabihf": "4.17.2", + "@rollup/rollup-linux-arm-musleabihf": "4.17.2", + "@rollup/rollup-linux-arm64-gnu": "4.17.2", + "@rollup/rollup-linux-arm64-musl": "4.17.2", + "@rollup/rollup-linux-powerpc64le-gnu": "4.17.2", + "@rollup/rollup-linux-riscv64-gnu": "4.17.2", + "@rollup/rollup-linux-s390x-gnu": "4.17.2", + "@rollup/rollup-linux-x64-gnu": "4.17.2", + "@rollup/rollup-linux-x64-musl": "4.17.2", + "@rollup/rollup-win32-arm64-msvc": "4.17.2", + "@rollup/rollup-win32-ia32-msvc": "4.17.2", + "@rollup/rollup-win32-x64-msvc": "4.17.2", "fsevents": "~2.3.2" } }, @@ -14274,11 +14091,11 @@ } }, "node_modules/safe-regex2": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/safe-regex2/-/safe-regex2-2.0.0.tgz", - "integrity": "sha512-PaUSFsUaNNuKwkBijoAPHAK6/eM6VirvyPWlZ7BAQy4D+hCvh4B6lIG+nPdhbFfIbP+gTGBcrdsOaUs0F+ZBOQ==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/safe-regex2/-/safe-regex2-3.1.0.tgz", + "integrity": "sha512-RAAZAGbap2kBfbVhvmnTFv73NWLMvDGOITFYTZBAaY8eR+Ir4ef7Up/e7amo+y1+AH+3PtLkrt9mvcTsG9LXug==", "dependencies": { - "ret": "~0.2.0" + "ret": "~0.4.0" } }, "node_modules/safe-stable-stringify": { @@ -14334,12 +14151,9 @@ "integrity": "sha512-6aU+Rwsezw7VR8/nyvKTx8QpWH9FrcYiXXlqC4z5d5XQBDRqtbfsRjnwGyqbi3gddNtWHuEk9OANUotL26qKUw==" }, "node_modules/semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", - "dependencies": { - "lru-cache": "^6.0.0" - }, + "version": "7.6.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.2.tgz", + "integrity": "sha512-FNAIBWCx9qcRhoHcgcJ0gvU7SN1lYU2ZXuSfl04bSC5OpvDHFyJCjdNHomPXxjQlCBU67YW64PzY7/VIEH7F2w==", "bin": { "semver": "bin/semver.js" }, @@ -14347,17 +14161,6 @@ "node": ">=10" } }, - "node_modules/semver/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/set-blocking": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", @@ -15175,9 +14978,9 @@ } }, "node_modules/stylis": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.3.1.tgz", - "integrity": "sha512-EQepAV+wMsIaGVGX1RECzgrcqRRU/0sYOHkeLsZ3fzHaHXZy4DaOOX0vOlGQdlsjkh3mFHAIlVimpwAs4dslyQ==" + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.3.2.tgz", + "integrity": "sha512-bhtUjWd/z6ltJiQwg0dUfxEJ+W+jdqQd8TbWLWyeIJHlnsqmGLRFFd8e5mA0AZi/zx90smXRlN66YMTcaSFifg==" }, "node_modules/sucrase": { "version": "3.35.0", @@ -15249,9 +15052,9 @@ } }, "node_modules/systeminformation": { - "version": "5.22.7", - "resolved": "https://registry.npmjs.org/systeminformation/-/systeminformation-5.22.7.tgz", - "integrity": "sha512-AWxlP05KeHbpGdgvZkcudJpsmChc2Y5Eo/GvxG/iUA/Aws5LZKHAMSeAo+V+nD+nxWZaxrwpWcnx4SH3oxNL3A==", + "version": "5.22.8", + "resolved": "https://registry.npmjs.org/systeminformation/-/systeminformation-5.22.8.tgz", + "integrity": "sha512-F1iWQ+PSfOzvLMGh2UXASaWLDq5o+1h1db13Kddl6ojcQ47rsJhpMtRrmBXfTA5QJgutC4KV67YRmXLuroIxrA==", "dev": true, "optional": true, "os": [ @@ -16718,9 +16521,9 @@ } }, "node_modules/update-browserslist-db": { - "version": "1.0.13", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", - "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==", + "version": "1.0.15", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.15.tgz", + "integrity": "sha512-K9HWH62x3/EalU1U6sjSZiylm9C8tgq2mSvshZpqc7QE69RaA2qjhkW2HlNA0tFpEbtyFz7HTqbSdN4MSwUodA==", "dev": true, "funding": [ { @@ -16737,7 +16540,7 @@ } ], "dependencies": { - "escalade": "^3.1.1", + "escalade": "^3.1.2", "picocolors": "^1.0.0" }, "bin": { @@ -17112,6 +16915,15 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/word-wrap": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", + "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/wrap-ansi": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", @@ -17280,9 +17092,9 @@ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" }, "node_modules/yaml": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.4.1.tgz", - "integrity": "sha512-pIXzoImaqmfOrL7teGUBt/T7ZDnyeGBWyXQBvOVhLkWLN37GXv8NMLK406UY6dS51JfcQHsmcW5cJ441bHg6Lg==", + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.4.2.tgz", + "integrity": "sha512-B3VqDZ+JAg1nZpaEmWtTXUlBneoGx6CPM9b0TENK6aoSu5t73dItudwdgmi6tHlIZZId4dZ9skcAQ2UbcyAeVA==", "dev": true, "bin": { "yaml": "bin.mjs" @@ -17414,9 +17226,9 @@ } }, "node_modules/zod": { - "version": "3.22.4", - "resolved": "https://registry.npmjs.org/zod/-/zod-3.22.4.tgz", - "integrity": "sha512-iC+8Io04lddc+mVqQ9AZ7OQ2MrUKGN+oIQyq1vemgt46jwCwLfhq7/pwnBnNXXXZb8VTVLKwp9EDkx+ryxIWmg==", + "version": "3.23.8", + "resolved": "https://registry.npmjs.org/zod/-/zod-3.23.8.tgz", + "integrity": "sha512-XBx9AXhXktjUqnepgTiE5flcKIYWi/rme0Eaj+5Y0lftuGBq+jyRu/md4WnuxqgP1ubdpNCsYEYPxrzVHD8d6g==", "funding": { "url": "https://github.com/sponsors/colinhacks" } @@ -17452,6 +17264,15 @@ "redis": ">=4.6" } }, + "packages/cache-handler/node_modules/@types/node": { + "version": "20.12.11", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.11.tgz", + "integrity": "sha512-vDg9PZ/zi+Nqp6boSOT7plNuthRugEKixDv5sFTIpkE89MmNtEArAShI4mxuX2+UrLEe9pxC1vm2cjm9YlWbJw==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "packages/diffscribe": { "version": "0.2.4", "license": "MIT", @@ -17470,6 +17291,15 @@ "openai": "^4.12.3" } }, + "packages/diffscribe/node_modules/@types/node": { + "version": "20.12.11", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.11.tgz", + "integrity": "sha512-vDg9PZ/zi+Nqp6boSOT7plNuthRugEKixDv5sFTIpkE89MmNtEArAShI4mxuX2+UrLEe9pxC1vm2cjm9YlWbJw==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "packages/json-replacer-reviver": { "name": "@neshca/json-replacer-reviver", "version": "1.1.3", @@ -17483,6 +17313,15 @@ "typescript": "5.4.5" } }, + "packages/json-replacer-reviver/node_modules/@types/node": { + "version": "20.12.11", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.11.tgz", + "integrity": "sha512-vDg9PZ/zi+Nqp6boSOT7plNuthRugEKixDv5sFTIpkE89MmNtEArAShI4mxuX2+UrLEe9pxC1vm2cjm9YlWbJw==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "packages/server": { "name": "@neshca/server", "version": "1.1.1", @@ -17504,6 +17343,15 @@ "tsx": "4.9.4", "typescript": "5.4.5" } + }, + "packages/server/node_modules/@types/node": { + "version": "20.12.11", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.11.tgz", + "integrity": "sha512-vDg9PZ/zi+Nqp6boSOT7plNuthRugEKixDv5sFTIpkE89MmNtEArAShI4mxuX2+UrLEe9pxC1vm2cjm9YlWbJw==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } } } } From e5774f538a2a53f9d37471c4a8d7c52968019150 Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Mon, 13 May 2024 14:29:10 +0300 Subject: [PATCH 223/458] Add support for batched revalidateTag calls (#525) --- .changeset/strong-shrimps-hope.md | 5 + apps/cache-testing/package.json | 4 +- internal/backend/package.json | 4 +- package-lock.json | 823 ++++++++++++++++++-- packages/cache-handler/package.json | 4 +- packages/cache-handler/src/cache-handler.ts | 9 +- packages/json-replacer-reviver/package.json | 4 +- packages/server/package.json | 4 +- 8 files changed, 785 insertions(+), 72 deletions(-) create mode 100644 .changeset/strong-shrimps-hope.md diff --git a/.changeset/strong-shrimps-hope.md b/.changeset/strong-shrimps-hope.md new file mode 100644 index 00000000..c8dd2f56 --- /dev/null +++ b/.changeset/strong-shrimps-hope.md @@ -0,0 +1,5 @@ +--- +'@neshca/cache-handler': patch +--- + +Added support for batched revalidateTag calls. diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index f073a165..2f65e202 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -17,13 +17,13 @@ "start": "dotenv -e .env.local -v SERVER_STARTED=1 node .next/standalone/apps/cache-testing/server.js" }, "dependencies": { - "next": "14.2.0-canary.61", + "next": "14.3.0-canary.44", "react": "18.3.1", "react-dom": "18.3.1" }, "devDependencies": { "@neshca/cache-handler": "*", - "@next/eslint-plugin-next": "14.2.0-canary.61", + "@next/eslint-plugin-next": "14.3.0-canary.44", "@playwright/test": "1.44.0", "@repo/eslint-config": "*", "@repo/typescript-config": "*", diff --git a/internal/backend/package.json b/internal/backend/package.json index 7ff187e6..066f7d7a 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -6,8 +6,8 @@ "type": "module", "scripts": { "clean": "rimraf ./.turbo ./node_modules", - "dev": "node --watch --import tsx/esm ./src/backend.ts", - "start": "node --import tsx/esm ./src/backend.ts" + "dev": "tsx --watch ./src/backend.ts", + "start": "tsx ./src/backend.ts" }, "dependencies": { "fastify": "4.27.0", diff --git a/package-lock.json b/package-lock.json index e2e5c75e..406bc29c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -37,13 +37,13 @@ "version": "0.0.0", "license": "MIT", "dependencies": { - "next": "14.2.0-canary.61", + "next": "14.3.0-canary.44", "react": "18.3.1", "react-dom": "18.3.1" }, "devDependencies": { "@neshca/cache-handler": "*", - "@next/eslint-plugin-next": "14.2.0-canary.61", + "@next/eslint-plugin-next": "14.3.0-canary.44", "@playwright/test": "1.44.0", "@repo/eslint-config": "*", "@repo/typescript-config": "*", @@ -72,12 +72,12 @@ } }, "apps/cache-testing/node_modules/next": { - "version": "14.2.0-canary.61", - "resolved": "https://registry.npmjs.org/next/-/next-14.2.0-canary.61.tgz", - "integrity": "sha512-UbdoNkGX04TO0Q0N3k7fmiNCliE1yihVBHd/nwg2zMnpjB6dGU3r1UNgCBpfUUlrs1t19FAWazfVQANOOfBT4w==", + "version": "14.3.0-canary.44", + "resolved": "https://registry.npmjs.org/next/-/next-14.3.0-canary.44.tgz", + "integrity": "sha512-iYJmuiARcldXjN27N0Yo8gWyy6vWl+FoUNcEaL2GGh3sA/rc4hcbZD89ZUXoVFsPAI7ze6sKM60Znct9RwCbKQ==", "dependencies": { - "@next/env": "14.2.0-canary.61", - "@swc/helpers": "0.5.5", + "@next/env": "14.3.0-canary.44", + "@swc/helpers": "0.5.11", "busboy": "1.6.0", "caniuse-lite": "^1.0.30001579", "graceful-fs": "^4.2.11", @@ -91,15 +91,16 @@ "node": ">=18.17.0" }, "optionalDependencies": { - "@next/swc-darwin-arm64": "14.2.0-canary.61", - "@next/swc-darwin-x64": "14.2.0-canary.61", - "@next/swc-linux-arm64-gnu": "14.2.0-canary.61", - "@next/swc-linux-arm64-musl": "14.2.0-canary.61", - "@next/swc-linux-x64-gnu": "14.2.0-canary.61", - "@next/swc-linux-x64-musl": "14.2.0-canary.61", - "@next/swc-win32-arm64-msvc": "14.2.0-canary.61", - "@next/swc-win32-ia32-msvc": "14.2.0-canary.61", - "@next/swc-win32-x64-msvc": "14.2.0-canary.61" + "@next/swc-darwin-arm64": "14.3.0-canary.44", + "@next/swc-darwin-x64": "14.3.0-canary.44", + "@next/swc-linux-arm64-gnu": "14.3.0-canary.44", + "@next/swc-linux-arm64-musl": "14.3.0-canary.44", + "@next/swc-linux-x64-gnu": "14.3.0-canary.44", + "@next/swc-linux-x64-musl": "14.3.0-canary.44", + "@next/swc-win32-arm64-msvc": "14.3.0-canary.44", + "@next/swc-win32-ia32-msvc": "14.3.0-canary.44", + "@next/swc-win32-x64-msvc": "14.3.0-canary.44", + "sharp": "^0.33.3" }, "peerDependencies": { "@opentelemetry/api": "^1.1.0", @@ -424,6 +425,155 @@ "typescript": "5.4.5" } }, + "internal/next-common/node_modules/@next/env": { + "version": "14.2.0-canary.61", + "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.0-canary.61.tgz", + "integrity": "sha512-Ueqse8kdwaoebGrpSo60M4/cjFaMJEE7BMsKZufYwZDTlE0qXw7N4GsdVpUZzJG00sXf6CoTnCU1lCTPrUMC4g==" + }, + "internal/next-common/node_modules/@next/swc-darwin-arm64": { + "version": "14.2.0-canary.61", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.0-canary.61.tgz", + "integrity": "sha512-mMlp2/hvtaBbCY5qYhuvAqX9Z/aFC+Rgme4FjFSxq2C3TC/mL3G4fVG/TVl7bqjikKCxSvJgiWXRwvhIaqGktw==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10" + } + }, + "internal/next-common/node_modules/@next/swc-darwin-x64": { + "version": "14.2.0-canary.61", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.0-canary.61.tgz", + "integrity": "sha512-4bEjO0WK6keRi972eAY1AfvTXOQRHnM59klNqnUh5zfalbi7VkEdluhYAZOop2NycCHjF+m8p+ytYtrF1uCO1Q==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10" + } + }, + "internal/next-common/node_modules/@next/swc-linux-arm64-gnu": { + "version": "14.2.0-canary.61", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.0-canary.61.tgz", + "integrity": "sha512-wIXc3EdxrETlL2XwlGlLQkMU9godhNSMAXxiJotd/mhN3K4iKajPahAStvFxY2Zwc/on2IBa0NpUGpzDONNt9A==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "internal/next-common/node_modules/@next/swc-linux-arm64-musl": { + "version": "14.2.0-canary.61", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.0-canary.61.tgz", + "integrity": "sha512-95aMF55sq2N6+5iLEqxCfz7ccYMBURQ8D0KYmcq+rMJTE5z/qvxEToSJWAbV4jGyd2Eq/vXjPdR1rFytv2FnOw==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "internal/next-common/node_modules/@next/swc-linux-x64-gnu": { + "version": "14.2.0-canary.61", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.0-canary.61.tgz", + "integrity": "sha512-LWG5OC9hNSCYtDb+7MQcIjE1PO70Sho+ZJkqJnmLxJ08Atp/nJQBo9nAMjORdcO5Nz+hPNVY5vmrY+5Fl5kadw==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "internal/next-common/node_modules/@next/swc-linux-x64-musl": { + "version": "14.2.0-canary.61", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.0-canary.61.tgz", + "integrity": "sha512-EjOXbSmDTPVi8xkOix4/WYJM6OUert+lfBtdUJBRba+oGiRw/mheih8FliFZKFOmQbPYj67A9z/QCus2ZDnfSw==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "internal/next-common/node_modules/@next/swc-win32-arm64-msvc": { + "version": "14.2.0-canary.61", + "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.0-canary.61.tgz", + "integrity": "sha512-TK8oV4ozzUGWAwvZp/0SBsNgAUhrUFLWCMSXsFHz+YMRjHg7nT0KdK8BYh2Ln4Qt0jjDTUHbI1jaQKxmSMEMmA==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, + "internal/next-common/node_modules/@next/swc-win32-ia32-msvc": { + "version": "14.2.0-canary.61", + "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.0-canary.61.tgz", + "integrity": "sha512-i0iWCehuLKDOfVbQ6MEKG9v0lfcJU0DPWkYINFSi6p3fkFobI/+7DVT3KvYH5VVng/+opx+pA6cesV5eyQnBtw==", + "cpu": [ + "ia32" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, + "internal/next-common/node_modules/@next/swc-win32-x64-msvc": { + "version": "14.2.0-canary.61", + "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.0-canary.61.tgz", + "integrity": "sha512-WB0UjpWcu+oXQOMFDTHDZWKcL2jiXeQfN+1RRkb0x7ZjVxvA/O66vOJE08fLSu7rdymLiGXxX+AKlGFq1Tpisg==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, + "internal/next-common/node_modules/@swc/helpers": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.5.tgz", + "integrity": "sha512-KGYxvIOXcceOAbEk4bi/dVLEK9z8sZ0uBB3Il5b1rhfClSpcX0yfRO0KmTkqR2cnQDymwLB+25ZyMzICg/cm/A==", + "dependencies": { + "@swc/counter": "^0.1.3", + "tslib": "^2.4.0" + } + }, "internal/next-common/node_modules/@types/node": { "version": "20.12.11", "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.11.tgz", @@ -1436,6 +1586,15 @@ "url": "https://github.com/prettier/prettier?sponsor=1" } }, + "node_modules/@emnapi/runtime": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.1.1.tgz", + "integrity": "sha512-3bfqkzuR1KLx57nZfjr2NLnFOobvyS0aTszaEGCGqmYMVDRaGvgIZbjGSV/MHSSmLgQ/b9JFHQ5xm5WRZYd+XQ==", + "optional": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, "node_modules/@esbuild/aix-ppc64": { "version": "0.19.12", "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.19.12.tgz", @@ -2031,6 +2190,437 @@ "integrity": "sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==", "dev": true }, + "node_modules/@img/sharp-darwin-arm64": { + "version": "0.33.3", + "resolved": "https://registry.npmjs.org/@img/sharp-darwin-arm64/-/sharp-darwin-arm64-0.33.3.tgz", + "integrity": "sha512-FaNiGX1MrOuJ3hxuNzWgsT/mg5OHG/Izh59WW2mk1UwYHUwtfbhk5QNKYZgxf0pLOhx9ctGiGa2OykD71vOnSw==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "glibc": ">=2.26", + "node": "^18.17.0 || ^20.3.0 || >=21.0.0", + "npm": ">=9.6.5", + "pnpm": ">=7.1.0", + "yarn": ">=3.2.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-darwin-arm64": "1.0.2" + } + }, + "node_modules/@img/sharp-darwin-x64": { + "version": "0.33.3", + "resolved": "https://registry.npmjs.org/@img/sharp-darwin-x64/-/sharp-darwin-x64-0.33.3.tgz", + "integrity": "sha512-2QeSl7QDK9ru//YBT4sQkoq7L0EAJZA3rtV+v9p8xTKl4U1bUqTIaCnoC7Ctx2kCjQgwFXDasOtPTCT8eCTXvw==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "glibc": ">=2.26", + "node": "^18.17.0 || ^20.3.0 || >=21.0.0", + "npm": ">=9.6.5", + "pnpm": ">=7.1.0", + "yarn": ">=3.2.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-darwin-x64": "1.0.2" + } + }, + "node_modules/@img/sharp-libvips-darwin-arm64": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-arm64/-/sharp-libvips-darwin-arm64-1.0.2.tgz", + "integrity": "sha512-tcK/41Rq8IKlSaKRCCAuuY3lDJjQnYIW1UXU1kxcEKrfL8WR7N6+rzNoOxoQRJWTAECuKwgAHnPvqXGN8XfkHA==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "macos": ">=11", + "npm": ">=9.6.5", + "pnpm": ">=7.1.0", + "yarn": ">=3.2.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-darwin-x64": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-x64/-/sharp-libvips-darwin-x64-1.0.2.tgz", + "integrity": "sha512-Ofw+7oaWa0HiiMiKWqqaZbaYV3/UGL2wAPeLuJTx+9cXpCRdvQhCLG0IH8YGwM0yGWGLpsF4Su9vM1o6aer+Fw==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "macos": ">=10.13", + "npm": ">=9.6.5", + "pnpm": ">=7.1.0", + "yarn": ">=3.2.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-linux-arm": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm/-/sharp-libvips-linux-arm-1.0.2.tgz", + "integrity": "sha512-iLWCvrKgeFoglQxdEwzu1eQV04o8YeYGFXtfWU26Zr2wWT3q3MTzC+QTCO3ZQfWd3doKHT4Pm2kRmLbupT+sZw==", + "cpu": [ + "arm" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "glibc": ">=2.28", + "npm": ">=9.6.5", + "pnpm": ">=7.1.0", + "yarn": ">=3.2.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-linux-arm64": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm64/-/sharp-libvips-linux-arm64-1.0.2.tgz", + "integrity": "sha512-x7kCt3N00ofFmmkkdshwj3vGPCnmiDh7Gwnd4nUwZln2YjqPxV1NlTyZOvoDWdKQVDL911487HOueBvrpflagw==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "glibc": ">=2.26", + "npm": ">=9.6.5", + "pnpm": ">=7.1.0", + "yarn": ">=3.2.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-linux-s390x": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-s390x/-/sharp-libvips-linux-s390x-1.0.2.tgz", + "integrity": "sha512-cmhQ1J4qVhfmS6szYW7RT+gLJq9dH2i4maq+qyXayUSn9/3iY2ZeWpbAgSpSVbV2E1JUL2Gg7pwnYQ1h8rQIog==", + "cpu": [ + "s390x" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "glibc": ">=2.28", + "npm": ">=9.6.5", + "pnpm": ">=7.1.0", + "yarn": ">=3.2.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-linux-x64": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-x64/-/sharp-libvips-linux-x64-1.0.2.tgz", + "integrity": "sha512-E441q4Qdb+7yuyiADVi5J+44x8ctlrqn8XgkDTwr4qPJzWkaHwD489iZ4nGDgcuya4iMN3ULV6NwbhRZJ9Z7SQ==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "glibc": ">=2.26", + "npm": ">=9.6.5", + "pnpm": ">=7.1.0", + "yarn": ">=3.2.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-linuxmusl-arm64": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-arm64/-/sharp-libvips-linuxmusl-arm64-1.0.2.tgz", + "integrity": "sha512-3CAkndNpYUrlDqkCM5qhksfE+qSIREVpyoeHIU6jd48SJZViAmznoQQLAv4hVXF7xyUB9zf+G++e2v1ABjCbEQ==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "musl": ">=1.2.2", + "npm": ">=9.6.5", + "pnpm": ">=7.1.0", + "yarn": ">=3.2.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-linuxmusl-x64": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-x64/-/sharp-libvips-linuxmusl-x64-1.0.2.tgz", + "integrity": "sha512-VI94Q6khIHqHWNOh6LLdm9s2Ry4zdjWJwH56WoiJU7NTeDwyApdZZ8c+SADC8OH98KWNQXnE01UdJ9CSfZvwZw==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "musl": ">=1.2.2", + "npm": ">=9.6.5", + "pnpm": ">=7.1.0", + "yarn": ">=3.2.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-linux-arm": { + "version": "0.33.3", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm/-/sharp-linux-arm-0.33.3.tgz", + "integrity": "sha512-Q7Ee3fFSC9P7vUSqVEF0zccJsZ8GiiCJYGWDdhEjdlOeS9/jdkyJ6sUSPj+bL8VuOYFSbofrW0t/86ceVhx32w==", + "cpu": [ + "arm" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "glibc": ">=2.28", + "node": "^18.17.0 || ^20.3.0 || >=21.0.0", + "npm": ">=9.6.5", + "pnpm": ">=7.1.0", + "yarn": ">=3.2.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linux-arm": "1.0.2" + } + }, + "node_modules/@img/sharp-linux-arm64": { + "version": "0.33.3", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm64/-/sharp-linux-arm64-0.33.3.tgz", + "integrity": "sha512-Zf+sF1jHZJKA6Gor9hoYG2ljr4wo9cY4twaxgFDvlG0Xz9V7sinsPp8pFd1XtlhTzYo0IhDbl3rK7P6MzHpnYA==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "glibc": ">=2.26", + "node": "^18.17.0 || ^20.3.0 || >=21.0.0", + "npm": ">=9.6.5", + "pnpm": ">=7.1.0", + "yarn": ">=3.2.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linux-arm64": "1.0.2" + } + }, + "node_modules/@img/sharp-linux-s390x": { + "version": "0.33.3", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-s390x/-/sharp-linux-s390x-0.33.3.tgz", + "integrity": "sha512-vFk441DKRFepjhTEH20oBlFrHcLjPfI8B0pMIxGm3+yilKyYeHEVvrZhYFdqIseSclIqbQ3SnZMwEMWonY5XFA==", + "cpu": [ + "s390x" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "glibc": ">=2.28", + "node": "^18.17.0 || ^20.3.0 || >=21.0.0", + "npm": ">=9.6.5", + "pnpm": ">=7.1.0", + "yarn": ">=3.2.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linux-s390x": "1.0.2" + } + }, + "node_modules/@img/sharp-linux-x64": { + "version": "0.33.3", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-x64/-/sharp-linux-x64-0.33.3.tgz", + "integrity": "sha512-Q4I++herIJxJi+qmbySd072oDPRkCg/SClLEIDh5IL9h1zjhqjv82H0Seupd+q2m0yOfD+/fJnjSoDFtKiHu2g==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "glibc": ">=2.26", + "node": "^18.17.0 || ^20.3.0 || >=21.0.0", + "npm": ">=9.6.5", + "pnpm": ">=7.1.0", + "yarn": ">=3.2.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linux-x64": "1.0.2" + } + }, + "node_modules/@img/sharp-linuxmusl-arm64": { + "version": "0.33.3", + "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-arm64/-/sharp-linuxmusl-arm64-0.33.3.tgz", + "integrity": "sha512-qnDccehRDXadhM9PM5hLvcPRYqyFCBN31kq+ErBSZtZlsAc1U4Z85xf/RXv1qolkdu+ibw64fUDaRdktxTNP9A==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "musl": ">=1.2.2", + "node": "^18.17.0 || ^20.3.0 || >=21.0.0", + "npm": ">=9.6.5", + "pnpm": ">=7.1.0", + "yarn": ">=3.2.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linuxmusl-arm64": "1.0.2" + } + }, + "node_modules/@img/sharp-linuxmusl-x64": { + "version": "0.33.3", + "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-x64/-/sharp-linuxmusl-x64-0.33.3.tgz", + "integrity": "sha512-Jhchim8kHWIU/GZ+9poHMWRcefeaxFIs9EBqf9KtcC14Ojk6qua7ghKiPs0sbeLbLj/2IGBtDcxHyjCdYWkk2w==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "musl": ">=1.2.2", + "node": "^18.17.0 || ^20.3.0 || >=21.0.0", + "npm": ">=9.6.5", + "pnpm": ">=7.1.0", + "yarn": ">=3.2.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linuxmusl-x64": "1.0.2" + } + }, + "node_modules/@img/sharp-wasm32": { + "version": "0.33.3", + "resolved": "https://registry.npmjs.org/@img/sharp-wasm32/-/sharp-wasm32-0.33.3.tgz", + "integrity": "sha512-68zivsdJ0koE96stdUfM+gmyaK/NcoSZK5dV5CAjES0FUXS9lchYt8LAB5rTbM7nlWtxaU/2GON0HVN6/ZYJAQ==", + "cpu": [ + "wasm32" + ], + "optional": true, + "dependencies": { + "@emnapi/runtime": "^1.1.0" + }, + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0", + "npm": ">=9.6.5", + "pnpm": ">=7.1.0", + "yarn": ">=3.2.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-win32-ia32": { + "version": "0.33.3", + "resolved": "https://registry.npmjs.org/@img/sharp-win32-ia32/-/sharp-win32-ia32-0.33.3.tgz", + "integrity": "sha512-CyimAduT2whQD8ER4Ux7exKrtfoaUiVr7HG0zZvO0XTFn2idUWljjxv58GxNTkFb8/J9Ub9AqITGkJD6ZginxQ==", + "cpu": [ + "ia32" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0", + "npm": ">=9.6.5", + "pnpm": ">=7.1.0", + "yarn": ">=3.2.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-win32-x64": { + "version": "0.33.3", + "resolved": "https://registry.npmjs.org/@img/sharp-win32-x64/-/sharp-win32-x64-0.33.3.tgz", + "integrity": "sha512-viT4fUIDKnli3IfOephGnolMzhz5VaTvDRkYqtZxOMIoMQ4MrAziO7pT1nVnOt2FAm7qW5aa+CCc13aEY6Le0g==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0", + "npm": ">=9.6.5", + "pnpm": ">=7.1.0", + "yarn": ">=3.2.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + } + }, "node_modules/@isaacs/cliui": { "version": "8.0.2", "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", @@ -2487,14 +3077,14 @@ "link": true }, "node_modules/@next/env": { - "version": "14.2.0-canary.61", - "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.0-canary.61.tgz", - "integrity": "sha512-Ueqse8kdwaoebGrpSo60M4/cjFaMJEE7BMsKZufYwZDTlE0qXw7N4GsdVpUZzJG00sXf6CoTnCU1lCTPrUMC4g==" + "version": "14.3.0-canary.44", + "resolved": "https://registry.npmjs.org/@next/env/-/env-14.3.0-canary.44.tgz", + "integrity": "sha512-n7E0UKB5tAcEEVO9iLuWVdx5nf+39GEHBo4mrRrC9zqXdP9Jxve4nFWFeDTU5EBSzuH3Zy4DmoVNHUOspHLmyQ==" }, "node_modules/@next/eslint-plugin-next": { - "version": "14.2.0-canary.61", - "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.2.0-canary.61.tgz", - "integrity": "sha512-FEjzPxDw1S7oqxDYG2EMl8mAzW4hrB0OR1bWUA4DwxoyNs+rLlqU6pIgwGJo+oegbVmbqnMyDogTi3Khys0OFg==", + "version": "14.3.0-canary.44", + "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.3.0-canary.44.tgz", + "integrity": "sha512-coZFdAfpZ0dFQz3ldCl9jcrs5jqwBpB+UEJTLfOpt9KJrxVJC2ahaDL2UumfdoEvIUsI5fR/e1j/fgC402Wo8A==", "dev": true, "dependencies": { "glob": "10.3.10" @@ -2523,9 +3113,9 @@ } }, "node_modules/@next/swc-darwin-arm64": { - "version": "14.2.0-canary.61", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.0-canary.61.tgz", - "integrity": "sha512-mMlp2/hvtaBbCY5qYhuvAqX9Z/aFC+Rgme4FjFSxq2C3TC/mL3G4fVG/TVl7bqjikKCxSvJgiWXRwvhIaqGktw==", + "version": "14.3.0-canary.44", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.3.0-canary.44.tgz", + "integrity": "sha512-gooP4KXsw3DDZAlvjEJNyQsSacwPRJJ5f5wkrws1J17L/heUgZHX6G7vHnQgkAejyvfa5BhW2c9rlcPxOHNQqw==", "cpu": [ "arm64" ], @@ -2538,9 +3128,9 @@ } }, "node_modules/@next/swc-darwin-x64": { - "version": "14.2.0-canary.61", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.0-canary.61.tgz", - "integrity": "sha512-4bEjO0WK6keRi972eAY1AfvTXOQRHnM59klNqnUh5zfalbi7VkEdluhYAZOop2NycCHjF+m8p+ytYtrF1uCO1Q==", + "version": "14.3.0-canary.44", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.3.0-canary.44.tgz", + "integrity": "sha512-NbtsRFYzs8sU2VCMzqGjb4tdzhkQt1KcMB/ZqnHX5pPw5xtXqPXzBGLM0z3wHr5/vWlL4V22j8E7AGchE2TeXg==", "cpu": [ "x64" ], @@ -2553,9 +3143,9 @@ } }, "node_modules/@next/swc-linux-arm64-gnu": { - "version": "14.2.0-canary.61", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.0-canary.61.tgz", - "integrity": "sha512-wIXc3EdxrETlL2XwlGlLQkMU9godhNSMAXxiJotd/mhN3K4iKajPahAStvFxY2Zwc/on2IBa0NpUGpzDONNt9A==", + "version": "14.3.0-canary.44", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.3.0-canary.44.tgz", + "integrity": "sha512-ctGyGeHy/07TH82ZYuA74Xy0t8Zcq1xrMLTI9RUA8Dh4khf37RI7r9SHzAeqKmPGZJAPRyE6pwXtAlCg/TstjA==", "cpu": [ "arm64" ], @@ -2568,9 +3158,9 @@ } }, "node_modules/@next/swc-linux-arm64-musl": { - "version": "14.2.0-canary.61", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.0-canary.61.tgz", - "integrity": "sha512-95aMF55sq2N6+5iLEqxCfz7ccYMBURQ8D0KYmcq+rMJTE5z/qvxEToSJWAbV4jGyd2Eq/vXjPdR1rFytv2FnOw==", + "version": "14.3.0-canary.44", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.3.0-canary.44.tgz", + "integrity": "sha512-cX/jD3EnhIphZwRBureGSPV4GlQ7ueUKmne+5N2BsO6tHih0cnveyssropX1dTupU7aGti+22kPorPDY7BYNfQ==", "cpu": [ "arm64" ], @@ -2583,9 +3173,9 @@ } }, "node_modules/@next/swc-linux-x64-gnu": { - "version": "14.2.0-canary.61", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.0-canary.61.tgz", - "integrity": "sha512-LWG5OC9hNSCYtDb+7MQcIjE1PO70Sho+ZJkqJnmLxJ08Atp/nJQBo9nAMjORdcO5Nz+hPNVY5vmrY+5Fl5kadw==", + "version": "14.3.0-canary.44", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.3.0-canary.44.tgz", + "integrity": "sha512-2HPcwOxXBQj3WD5ezz78o/SJXXz9D4U5H7Mc4e0cTUMy/GGW4ysg2Ullwus+FVOmm2z8GAcNbEeqh71D/lAtww==", "cpu": [ "x64" ], @@ -2598,9 +3188,9 @@ } }, "node_modules/@next/swc-linux-x64-musl": { - "version": "14.2.0-canary.61", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.0-canary.61.tgz", - "integrity": "sha512-EjOXbSmDTPVi8xkOix4/WYJM6OUert+lfBtdUJBRba+oGiRw/mheih8FliFZKFOmQbPYj67A9z/QCus2ZDnfSw==", + "version": "14.3.0-canary.44", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.3.0-canary.44.tgz", + "integrity": "sha512-UV9HUQenKZkrqbhRsB59X5KrMKaPUnXkbZmwLkjD2IieUgm5CswfXJ2+7JneopviwaR3k8eJMA2KV9uyA/3LpQ==", "cpu": [ "x64" ], @@ -2613,9 +3203,9 @@ } }, "node_modules/@next/swc-win32-arm64-msvc": { - "version": "14.2.0-canary.61", - "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.0-canary.61.tgz", - "integrity": "sha512-TK8oV4ozzUGWAwvZp/0SBsNgAUhrUFLWCMSXsFHz+YMRjHg7nT0KdK8BYh2Ln4Qt0jjDTUHbI1jaQKxmSMEMmA==", + "version": "14.3.0-canary.44", + "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.3.0-canary.44.tgz", + "integrity": "sha512-Swrl7I7q4sw7iS6O2j5v/c5bLgHP+i4/z79XTzU2LDubMP7gL3eUqLhN1GAOO35q/j49Ysbsr3VUM14JCtGOkg==", "cpu": [ "arm64" ], @@ -2628,9 +3218,9 @@ } }, "node_modules/@next/swc-win32-ia32-msvc": { - "version": "14.2.0-canary.61", - "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.0-canary.61.tgz", - "integrity": "sha512-i0iWCehuLKDOfVbQ6MEKG9v0lfcJU0DPWkYINFSi6p3fkFobI/+7DVT3KvYH5VVng/+opx+pA6cesV5eyQnBtw==", + "version": "14.3.0-canary.44", + "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.3.0-canary.44.tgz", + "integrity": "sha512-3KKbNG6EDMpAY9PP/Bv32ildjljC9vUwRbLrhBLa6l3TkD6n8xtlObNf9DMD0Fsa79VKHZKIkY1EvCn/7xlj5A==", "cpu": [ "ia32" ], @@ -2643,9 +3233,9 @@ } }, "node_modules/@next/swc-win32-x64-msvc": { - "version": "14.2.0-canary.61", - "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.0-canary.61.tgz", - "integrity": "sha512-WB0UjpWcu+oXQOMFDTHDZWKcL2jiXeQfN+1RRkb0x7ZjVxvA/O66vOJE08fLSu7rdymLiGXxX+AKlGFq1Tpisg==", + "version": "14.3.0-canary.44", + "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.3.0-canary.44.tgz", + "integrity": "sha512-pDD9g/tTI/ihOP4c8wy5E0dRz8QUy2/7uAVyW11MIkroA4A4/cWa58PQNW5ByhvySPTcf9trnlaVPa2mdxBMMA==", "cpu": [ "x64" ], @@ -3370,11 +3960,10 @@ "integrity": "sha512-e2BR4lsJkkRlKZ/qCHPw9ZaSxc0MVUd7gtbtaB7aMvHeJVYe8sOB8DBZkP2DtISHGSku9sCK6T6cnY0CtXrOCQ==" }, "node_modules/@swc/helpers": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.5.tgz", - "integrity": "sha512-KGYxvIOXcceOAbEk4bi/dVLEK9z8sZ0uBB3Il5b1rhfClSpcX0yfRO0KmTkqR2cnQDymwLB+25ZyMzICg/cm/A==", + "version": "0.5.11", + "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.11.tgz", + "integrity": "sha512-YNlnKRWF2sVojTpIyzwou9XoTNbzbzONwRhOoniEioF1AtaitTvVZblaQRrAzChWQ1bLYyYSWzM18y4WwgzJ+A==", "dependencies": { - "@swc/counter": "^0.1.3", "tslib": "^2.4.0" } }, @@ -5091,6 +5680,19 @@ "node": ">=0.10.0" } }, + "node_modules/color": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/color/-/color-4.2.3.tgz", + "integrity": "sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==", + "optional": true, + "dependencies": { + "color-convert": "^2.0.1", + "color-string": "^1.9.0" + }, + "engines": { + "node": ">=12.5.0" + } + }, "node_modules/color-convert": { "version": "1.9.3", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", @@ -5104,6 +5706,34 @@ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" }, + "node_modules/color-string": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.9.1.tgz", + "integrity": "sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==", + "optional": true, + "dependencies": { + "color-name": "^1.0.0", + "simple-swizzle": "^0.2.2" + } + }, + "node_modules/color/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "optional": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "optional": true + }, "node_modules/colorette": { "version": "2.0.20", "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz", @@ -5937,6 +6567,15 @@ "node": ">=8" } }, + "node_modules/detect-libc": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.3.tgz", + "integrity": "sha512-bwy0MGW55bG41VqxxypOsdSdGqLwXPI/focwgTYCFMbdUiBAxLg9CFzG08sz2aqzknwiX7Hkl0bQENjg8iLByw==", + "optional": true, + "engines": { + "node": ">=8" + } + }, "node_modules/detect-newline": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-4.0.1.tgz", @@ -5997,9 +6636,9 @@ } }, "node_modules/dompurify": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-3.1.2.tgz", - "integrity": "sha512-hLGGBI1tw5N8qTELr3blKjAML/LY4ANxksbS612UiJyDfyf/2D092Pvm+S7pmeTGJRqvlJkFzBoHBQKgQlOQVg==" + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-3.1.3.tgz", + "integrity": "sha512-5sOWYSNPaxz6o2MUPvtyxTTqR4D3L77pr5rUQoWgD5ROQtVIZQgJkXbo1DLlK3vj11YGw5+LnF4SYti4gZmwng==" }, "node_modules/dotenv": { "version": "16.4.5", @@ -12004,6 +12643,15 @@ "node": ">= 10" } }, + "node_modules/next/node_modules/@swc/helpers": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.5.tgz", + "integrity": "sha512-KGYxvIOXcceOAbEk4bi/dVLEK9z8sZ0uBB3Il5b1rhfClSpcX0yfRO0KmTkqR2cnQDymwLB+25ZyMzICg/cm/A==", + "dependencies": { + "@swc/counter": "^0.1.3", + "tslib": "^2.4.0" + } + }, "node_modules/node-domexception": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/node-domexception/-/node-domexception-1.0.0.tgz", @@ -12553,16 +13201,16 @@ "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" }, "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" @@ -14201,6 +14849,46 @@ "node": ">= 0.4" } }, + "node_modules/sharp": { + "version": "0.33.3", + "resolved": "https://registry.npmjs.org/sharp/-/sharp-0.33.3.tgz", + "integrity": "sha512-vHUeXJU1UvlO/BNwTpT0x/r53WkLUVxrmb5JTgW92fdFCFk0ispLMAeu/jPO2vjkXM1fYUi3K7/qcLF47pwM1A==", + "hasInstallScript": true, + "optional": true, + "dependencies": { + "color": "^4.2.3", + "detect-libc": "^2.0.3", + "semver": "^7.6.0" + }, + "engines": { + "libvips": ">=8.15.2", + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-darwin-arm64": "0.33.3", + "@img/sharp-darwin-x64": "0.33.3", + "@img/sharp-libvips-darwin-arm64": "1.0.2", + "@img/sharp-libvips-darwin-x64": "1.0.2", + "@img/sharp-libvips-linux-arm": "1.0.2", + "@img/sharp-libvips-linux-arm64": "1.0.2", + "@img/sharp-libvips-linux-s390x": "1.0.2", + "@img/sharp-libvips-linux-x64": "1.0.2", + "@img/sharp-libvips-linuxmusl-arm64": "1.0.2", + "@img/sharp-libvips-linuxmusl-x64": "1.0.2", + "@img/sharp-linux-arm": "0.33.3", + "@img/sharp-linux-arm64": "0.33.3", + "@img/sharp-linux-s390x": "0.33.3", + "@img/sharp-linux-x64": "0.33.3", + "@img/sharp-linuxmusl-arm64": "0.33.3", + "@img/sharp-linuxmusl-x64": "0.33.3", + "@img/sharp-wasm32": "0.33.3", + "@img/sharp-win32-ia32": "0.33.3", + "@img/sharp-win32-x64": "0.33.3" + } + }, "node_modules/shebang-command": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", @@ -14268,6 +14956,21 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/simple-swizzle": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz", + "integrity": "sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==", + "optional": true, + "dependencies": { + "is-arrayish": "^0.3.1" + } + }, + "node_modules/simple-swizzle/node_modules/is-arrayish": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz", + "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==", + "optional": true + }, "node_modules/slash": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 87e6b65f..37142e38 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -69,8 +69,8 @@ "build": "tsup --dts-resolve", "clean": "rimraf ./dist ./.turbo ./node_modules", "dev": "tsup --watch", - "test": "node --test --import tsx/esm src/**/*.test.ts", - "test:watch": "node --watch --test --import tsx/esm src/**/*.test.ts" + "test": "tsx --test src/**/*.test.ts", + "test:watch": "tsx --watch --test src/**/*.test.ts" }, "dependencies": { "lru-cache": "10.2.2" diff --git a/packages/cache-handler/src/cache-handler.ts b/packages/cache-handler/src/cache-handler.ts index 43523f6c..70e77833 100644 --- a/packages/cache-handler/src/cache-handler.ts +++ b/packages/cache-handler/src/cache-handler.ts @@ -3,6 +3,7 @@ import path from 'node:path'; import type { CacheHandlerParametersGet, + CacheHandlerParametersRevalidateTag, CacheHandlerParametersSet, CacheHandlerValue, FileSystemCacheContext, @@ -665,14 +666,18 @@ export class CacheHandler implements NextCacheHandler { } } - async revalidateTag(tag: string): Promise { + async revalidateTag(tag: CacheHandlerParametersRevalidateTag[0]): Promise { await CacheHandler.#configureCacheHandler(); + const tags = typeof tag === 'string' ? [tag] : tag; + if (CacheHandler.#debug) { console.info('revalidateTag', tag); } - await CacheHandler.#mergedHandler.revalidateTag(tag); + for (const tag of tags) { + await CacheHandler.#mergedHandler.revalidateTag(tag); + } if (CacheHandler.#debug) { console.info('updated external revalidated tags'); diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 268327d3..c01ef7b4 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -23,8 +23,8 @@ "build": "tsup", "clean": "rimraf ./dist ./.turbo ./node_modules", "dev": "tsup --watch", - "test": "node --test --import tsx/esm **/*.test.ts", - "test:watch": "node --watch --test --import tsx/esm **/*.test.ts" + "test": "tsx --test **/*.test.ts", + "test:watch": "tsx --watch --test **/*.test.ts" }, "devDependencies": { "@repo/typescript-config": "*", diff --git a/packages/server/package.json b/packages/server/package.json index 49f64ed1..65da746d 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -21,8 +21,8 @@ "scripts": { "build": "tsup", "clean": "rimraf ./dist ./.turbo ./node_modules", - "dev": "node --watch --import tsx/esm ./src/server.ts", - "start": "node --import tsx/esm ./src/server.ts" + "dev": "tsx --watch ./src/server.ts", + "start": "tsx ./src/server.ts" }, "dependencies": { "fastify": "4.27.0", From d21c1678d4ec1fdf2d0c857384135d65f623f115 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Mon, 13 May 2024 16:23:28 +0300 Subject: [PATCH 224/458] Version Packages (#526) Co-authored-by: github-actions[bot] --- .changeset/strong-shrimps-hope.md | 5 ----- packages/cache-handler/CHANGELOG.md | 6 ++++++ packages/cache-handler/package.json | 2 +- 3 files changed, 7 insertions(+), 6 deletions(-) delete mode 100644 .changeset/strong-shrimps-hope.md diff --git a/.changeset/strong-shrimps-hope.md b/.changeset/strong-shrimps-hope.md deleted file mode 100644 index c8dd2f56..00000000 --- a/.changeset/strong-shrimps-hope.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@neshca/cache-handler': patch ---- - -Added support for batched revalidateTag calls. diff --git a/packages/cache-handler/CHANGELOG.md b/packages/cache-handler/CHANGELOG.md index cb7e7434..aaa32a7b 100644 --- a/packages/cache-handler/CHANGELOG.md +++ b/packages/cache-handler/CHANGELOG.md @@ -1,5 +1,11 @@ # @neshca/cache-handler +## 1.3.2 + +### Patch Changes + +- e5774f5: Added support for batched revalidateTag calls. + ## 1.3.1 ### Patch Changes diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 37142e38..ad951f1c 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -1,6 +1,6 @@ { "name": "@neshca/cache-handler", - "version": "1.3.1", + "version": "1.3.2", "description": "Next.js self-hosting simplified.", "keywords": [ "cache", From 531eee045df90d0d48a9630f40d770d9e95d2a85 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 17 May 2024 17:54:31 +0300 Subject: [PATCH 225/458] Bump pino from 9.0.0 to 9.1.0 in the pino group (#528) Bumps the pino group with 1 update: [pino](https://github.com/pinojs/pino). Updates `pino` from 9.0.0 to 9.1.0 - [Release notes](https://github.com/pinojs/pino/releases) - [Commits](https://github.com/pinojs/pino/compare/v9.0.0...v9.1.0) --- updated-dependencies: - dependency-name: pino dependency-type: direct:production update-type: version-update:semver-minor dependency-group: pino ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- internal/backend/package.json | 2 +- package-lock.json | 39 +++++++++++++++++++++-------------- packages/server/package.json | 2 +- 3 files changed, 26 insertions(+), 17 deletions(-) diff --git a/internal/backend/package.json b/internal/backend/package.json index 066f7d7a..8653075e 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -11,7 +11,7 @@ }, "dependencies": { "fastify": "4.27.0", - "pino": "9.0.0" + "pino": "9.1.0" }, "devDependencies": { "@repo/typescript-config": "*", diff --git a/package-lock.json b/package-lock.json index 406bc29c..b5d9ee2a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -268,7 +268,7 @@ "license": "MIT", "dependencies": { "fastify": "4.27.0", - "pino": "9.0.0" + "pino": "9.1.0" }, "devDependencies": { "@repo/typescript-config": "*", @@ -13271,21 +13271,21 @@ } }, "node_modules/pino": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/pino/-/pino-9.0.0.tgz", - "integrity": "sha512-uI1ThkzTShNSwvsUM6b4ND8ANzWURk9zTELMztFkmnCQeR/4wkomJ+echHee5GMWGovoSfjwdeu80DsFIt7mbA==", + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/pino/-/pino-9.1.0.tgz", + "integrity": "sha512-qUcgfrlyOtjwhNLdbhoL7NR4NkHjzykAPw0V2QLFbvu/zss29h4NkRnibyFzBrNCbzCOY3WZ9hhKSwfOkNggYA==", "dependencies": { "atomic-sleep": "^1.0.0", "fast-redact": "^3.1.1", "on-exit-leak-free": "^2.1.0", "pino-abstract-transport": "^1.2.0", - "pino-std-serializers": "^6.0.0", + "pino-std-serializers": "^7.0.0", "process-warning": "^3.0.0", "quick-format-unescaped": "^4.0.3", "real-require": "^0.2.0", "safe-stable-stringify": "^2.3.1", - "sonic-boom": "^3.7.0", - "thread-stream": "^2.6.0" + "sonic-boom": "^4.0.1", + "thread-stream": "^3.0.0" }, "bin": { "pino": "bin.js" @@ -13326,9 +13326,17 @@ } }, "node_modules/pino-std-serializers": { - "version": "6.2.2", - "resolved": "https://registry.npmjs.org/pino-std-serializers/-/pino-std-serializers-6.2.2.tgz", - "integrity": "sha512-cHjPPsE+vhj/tnhCy/wiMh3M3z3h/j15zHQX+S9GkTBgqJuTuJzYJ4gUyACLhDaJ7kk9ba9iRDmbH2tJU03OiA==" + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/pino-std-serializers/-/pino-std-serializers-7.0.0.tgz", + "integrity": "sha512-e906FRY0+tV27iq4juKzSYPbUj2do2X2JX4EzSca1631EB2QJQUqGbDuERal7LCtOpxl6x3+nvo9NPZcmjkiFA==" + }, + "node_modules/pino/node_modules/sonic-boom": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/sonic-boom/-/sonic-boom-4.0.1.tgz", + "integrity": "sha512-hTSD/6JMLyT4r9zeof6UtuBDpjJ9sO08/nmS5djaA9eozT9oOlNdpXSnzcgj4FTqpk3nkLrs61l4gip9r1HCrQ==", + "dependencies": { + "atomic-sleep": "^1.0.0" + } }, "node_modules/pirates": { "version": "4.0.6", @@ -15137,6 +15145,7 @@ "version": "3.8.1", "resolved": "https://registry.npmjs.org/sonic-boom/-/sonic-boom-3.8.1.tgz", "integrity": "sha512-y4Z8LCDBuum+PBP3lSV7RHrXscqksve/bi0as7mhwVnBW+/wUqKT/2Kb7um8yqcFy0duYbbPxzt89Zy2nOCaxg==", + "dev": true, "dependencies": { "atomic-sleep": "^1.0.0" } @@ -15829,9 +15838,9 @@ } }, "node_modules/thread-stream": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/thread-stream/-/thread-stream-2.7.0.tgz", - "integrity": "sha512-qQiRWsU/wvNolI6tbbCKd9iKaTnCXsTwVxhhKM6nctPdujTyztjlbUkUTUymidWcMnZ5pWR0ej4a0tjsW021vw==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/thread-stream/-/thread-stream-3.0.0.tgz", + "integrity": "sha512-oUIFjxaUT6knhPtWgDMc29zF1FcSl0yXpapkyrQrCGEfYA2HUZXCilUtKyYIv6HkCyqSPAMkY+EG0GbyIrNDQg==", "dependencies": { "real-require": "^0.2.0" } @@ -17947,7 +17956,7 @@ }, "packages/cache-handler": { "name": "@neshca/cache-handler", - "version": "1.3.1", + "version": "1.3.2", "license": "MIT", "dependencies": { "lru-cache": "10.2.2" @@ -18031,7 +18040,7 @@ "license": "MIT", "dependencies": { "fastify": "4.27.0", - "pino": "9.0.0" + "pino": "9.1.0" }, "bin": { "next-cache-server": "dist/server.js" diff --git a/packages/server/package.json b/packages/server/package.json index 65da746d..880adec9 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -26,7 +26,7 @@ }, "dependencies": { "fastify": "4.27.0", - "pino": "9.0.0" + "pino": "9.1.0" }, "devDependencies": { "@neshca/next-common": "*", From 2925137480886381c4e2d4dd5b03eac7012c48c9 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 18 May 2024 16:12:23 +0300 Subject: [PATCH 226/458] Bump tsx from 4.9.4 to 4.10.4 (#536) Bumps [tsx](https://github.com/privatenumber/tsx) from 4.9.4 to 4.10.4. - [Release notes](https://github.com/privatenumber/tsx/releases) - [Changelog](https://github.com/privatenumber/tsx/blob/master/release.config.cjs) - [Commits](https://github.com/privatenumber/tsx/compare/v4.9.4...v4.10.4) --- updated-dependencies: - dependency-name: tsx dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- internal/backend/package.json | 2 +- package-lock.json | 18 +++++++++--------- packages/cache-handler/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 6 files changed, 14 insertions(+), 14 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 2f65e202..174f6ef1 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -38,7 +38,7 @@ "pm2": "5.3.1", "redis": "4.6.13", "rimraf": "5.0.6", - "tsx": "4.9.4", + "tsx": "4.10.4", "typescript": "5.4.5" } } diff --git a/internal/backend/package.json b/internal/backend/package.json index 8653075e..e6d4ed6f 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -18,7 +18,7 @@ "@types/node": "20.12.11", "pino-pretty": "11.0.0", "rimraf": "5.0.6", - "tsx": "4.9.4", + "tsx": "4.10.4", "typescript": "5.4.5" } } diff --git a/package-lock.json b/package-lock.json index b5d9ee2a..9709d876 100644 --- a/package-lock.json +++ b/package-lock.json @@ -58,7 +58,7 @@ "pm2": "5.3.1", "redis": "4.6.13", "rimraf": "5.0.6", - "tsx": "4.9.4", + "tsx": "4.10.4", "typescript": "5.4.5" } }, @@ -275,7 +275,7 @@ "@types/node": "20.12.11", "pino-pretty": "11.0.0", "rimraf": "5.0.6", - "tsx": "4.9.4", + "tsx": "4.10.4", "typescript": "5.4.5" } }, @@ -16216,13 +16216,13 @@ "dev": true }, "node_modules/tsx": { - "version": "4.9.4", - "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.9.4.tgz", - "integrity": "sha512-TlSJTVn2taGGDgdV3jAqCj7WQ/CafCB5p4SbG7W2Bl/0AJWH1ShJlBbc0y2lOFTjQEVAAULSTlmehw/Mwv3S/Q==", + "version": "4.10.4", + "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.10.4.tgz", + "integrity": "sha512-Gtg9qnZWNqC/OtcgiXfoAUdAKx3/cgKOYvEocAsv+m21MV/eKpV/WUjRXe6/sDCaGBl2/v8S6v29BpUnGMCX5A==", "dev": true, "dependencies": { "esbuild": "~0.20.2", - "get-tsconfig": "^4.7.3" + "get-tsconfig": "^4.7.5" }, "bin": { "tsx": "dist/cli.mjs" @@ -17968,7 +17968,7 @@ "@types/node": "20.12.11", "rimraf": "5.0.6", "tsup": "8.0.2", - "tsx": "4.9.4", + "tsx": "4.10.4", "typescript": "5.4.5" }, "peerDependencies": { @@ -18021,7 +18021,7 @@ "@types/node": "20.12.11", "rimraf": "5.0.6", "tsup": "8.0.2", - "tsx": "4.9.4", + "tsx": "4.10.4", "typescript": "5.4.5" } }, @@ -18052,7 +18052,7 @@ "@types/node": "20.12.11", "rimraf": "5.0.6", "tsup": "8.0.2", - "tsx": "4.9.4", + "tsx": "4.10.4", "typescript": "5.4.5" } }, diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index ad951f1c..416aa1ca 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -82,7 +82,7 @@ "@types/node": "20.12.11", "rimraf": "5.0.6", "tsup": "8.0.2", - "tsx": "4.9.4", + "tsx": "4.10.4", "typescript": "5.4.5" }, "peerDependencies": { diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index c01ef7b4..c8e18774 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -31,7 +31,7 @@ "@types/node": "20.12.11", "rimraf": "5.0.6", "tsup": "8.0.2", - "tsx": "4.9.4", + "tsx": "4.10.4", "typescript": "5.4.5" } } diff --git a/packages/server/package.json b/packages/server/package.json index 880adec9..2c8e62d1 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -35,7 +35,7 @@ "@types/node": "20.12.11", "rimraf": "5.0.6", "tsup": "8.0.2", - "tsx": "4.9.4", + "tsx": "4.10.4", "typescript": "5.4.5" }, "distTags": [ From 3c667ba6e8d61612cfc2f902b719d9e32d8bac96 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 18 May 2024 16:32:57 +0300 Subject: [PATCH 227/458] Bump rimraf from 5.0.6 to 5.0.7 (#529) Bumps [rimraf](https://github.com/isaacs/rimraf) from 5.0.6 to 5.0.7. - [Changelog](https://github.com/isaacs/rimraf/blob/main/CHANGELOG.md) - [Commits](https://github.com/isaacs/rimraf/compare/v5.0.6...v5.0.7) --- updated-dependencies: - dependency-name: rimraf dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- internal/backend/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 24 ++++++++++----------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 9 files changed, 20 insertions(+), 20 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 174f6ef1..ee6e70fa 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -37,7 +37,7 @@ "fastify": "4.27.0", "pm2": "5.3.1", "redis": "4.6.13", - "rimraf": "5.0.6", + "rimraf": "5.0.7", "tsx": "4.10.4", "typescript": "5.4.5" } diff --git a/internal/backend/package.json b/internal/backend/package.json index e6d4ed6f..ea41e31e 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -17,7 +17,7 @@ "@repo/typescript-config": "*", "@types/node": "20.12.11", "pino-pretty": "11.0.0", - "rimraf": "5.0.6", + "rimraf": "5.0.7", "tsx": "4.10.4", "typescript": "5.4.5" } diff --git a/internal/next-common/package.json b/internal/next-common/package.json index a321ee1d..8ec36d3a 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -16,7 +16,7 @@ "devDependencies": { "@repo/typescript-config": "*", "@types/node": "20.12.11", - "rimraf": "5.0.6", + "rimraf": "5.0.7", "typescript": "5.4.5" } } diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index eab50ba0..6eea1946 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -17,7 +17,7 @@ "@neshca/next-common": "*", "@repo/typescript-config": "*", "@types/node": "20.12.11", - "rimraf": "5.0.6", + "rimraf": "5.0.7", "typescript": "5.4.5" } } diff --git a/package-lock.json b/package-lock.json index 9709d876..10032a3f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -57,7 +57,7 @@ "fastify": "4.27.0", "pm2": "5.3.1", "redis": "4.6.13", - "rimraf": "5.0.6", + "rimraf": "5.0.7", "tsx": "4.10.4", "typescript": "5.4.5" } @@ -274,7 +274,7 @@ "@repo/typescript-config": "*", "@types/node": "20.12.11", "pino-pretty": "11.0.0", - "rimraf": "5.0.6", + "rimraf": "5.0.7", "tsx": "4.10.4", "typescript": "5.4.5" } @@ -421,7 +421,7 @@ "devDependencies": { "@repo/typescript-config": "*", "@types/node": "20.12.11", - "rimraf": "5.0.6", + "rimraf": "5.0.7", "typescript": "5.4.5" } }, @@ -643,7 +643,7 @@ "@neshca/next-common": "*", "@repo/typescript-config": "*", "@types/node": "20.12.11", - "rimraf": "5.0.6", + "rimraf": "5.0.7", "typescript": "5.4.5" } }, @@ -14579,9 +14579,9 @@ "integrity": "sha512-r5a3l5HzYlIC68TpmYKlxWjmOP6wiPJ1vWv2HeLhNsRZMrCkxeqxiHlQ21oXmQ4F3SiryXBHhAD7JZqvOJjFmg==" }, "node_modules/rimraf": { - "version": "5.0.6", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-5.0.6.tgz", - "integrity": "sha512-X72SgyOf+1lFnGM6gYcmZ4+jMOwuT4E4SajKQzUIlI7EoR5eFHMhS/wf8Ll0mN+w2bxcIVldrJQ6xT7HFQywjg==", + "version": "5.0.7", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-5.0.7.tgz", + "integrity": "sha512-nV6YcJo5wbLW77m+8KjH8aB/7/rxQy9SZ0HY5shnwULfS+9nmTtVXAJET5NdZmCzA4fPI/Hm1wo/Po/4mopOdg==", "dev": true, "dependencies": { "glob": "^10.3.7" @@ -14590,7 +14590,7 @@ "rimraf": "dist/esm/bin.mjs" }, "engines": { - "node": ">=14" + "node": ">=14.18" }, "funding": { "url": "https://github.com/sponsors/isaacs" @@ -17966,7 +17966,7 @@ "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", "@types/node": "20.12.11", - "rimraf": "5.0.6", + "rimraf": "5.0.7", "tsup": "8.0.2", "tsx": "4.10.4", "typescript": "5.4.5" @@ -17994,7 +17994,7 @@ "devDependencies": { "@repo/typescript-config": "*", "@types/node": "20.12.11", - "rimraf": "5.0.6", + "rimraf": "5.0.7", "tsup": "8.0.2", "typescript": "5.4.5" }, @@ -18019,7 +18019,7 @@ "devDependencies": { "@repo/typescript-config": "*", "@types/node": "20.12.11", - "rimraf": "5.0.6", + "rimraf": "5.0.7", "tsup": "8.0.2", "tsx": "4.10.4", "typescript": "5.4.5" @@ -18050,7 +18050,7 @@ "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", "@types/node": "20.12.11", - "rimraf": "5.0.6", + "rimraf": "5.0.7", "tsup": "8.0.2", "tsx": "4.10.4", "typescript": "5.4.5" diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 416aa1ca..b1dc0c98 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -80,7 +80,7 @@ "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", "@types/node": "20.12.11", - "rimraf": "5.0.6", + "rimraf": "5.0.7", "tsup": "8.0.2", "tsx": "4.10.4", "typescript": "5.4.5" diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index 5f0f11b6..5be27877 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -26,7 +26,7 @@ "devDependencies": { "@repo/typescript-config": "*", "@types/node": "20.12.11", - "rimraf": "5.0.6", + "rimraf": "5.0.7", "tsup": "8.0.2", "typescript": "5.4.5" }, diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index c8e18774..8ebee211 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -29,7 +29,7 @@ "devDependencies": { "@repo/typescript-config": "*", "@types/node": "20.12.11", - "rimraf": "5.0.6", + "rimraf": "5.0.7", "tsup": "8.0.2", "tsx": "4.10.4", "typescript": "5.4.5" diff --git a/packages/server/package.json b/packages/server/package.json index 2c8e62d1..aeae1d63 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -33,7 +33,7 @@ "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", "@types/node": "20.12.11", - "rimraf": "5.0.6", + "rimraf": "5.0.7", "tsup": "8.0.2", "tsx": "4.10.4", "typescript": "5.4.5" From 14d6a912d849c71d4919f9ec442b6650984665ee Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 18 May 2024 16:44:03 +0300 Subject: [PATCH 228/458] Bump glob from 10.3.14 to 10.3.15 (#530) Bumps [glob](https://github.com/isaacs/node-glob) from 10.3.14 to 10.3.15. - [Changelog](https://github.com/isaacs/node-glob/blob/main/changelog.md) - [Commits](https://github.com/isaacs/node-glob/compare/v10.3.14...v10.3.15) --- updated-dependencies: - dependency-name: glob dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 10 +++++----- package.json | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/package-lock.json b/package-lock.json index 10032a3f..26e0b1bd 100644 --- a/package-lock.json +++ b/package-lock.json @@ -24,7 +24,7 @@ "@repo/prettier-config": "*", "@repo/typescript-config": "*", "diffscribe": "*", - "glob": "10.3.14", + "glob": "10.3.15", "prettier": "3.2.5", "turbo": "1.13.3" }, @@ -9028,9 +9028,9 @@ "integrity": "sha512-IaOQ9puYtjrkq7Y0Ygl9KDZnrf/aiUJYUpVf89y8kyaxbRG7Y1SrX/jaumrv81vc61+kiMempujsM3Yw7w5qcw==" }, "node_modules/glob": { - "version": "10.3.14", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.14.tgz", - "integrity": "sha512-4fkAqu93xe9Mk7le9v0y3VrPDqLKHarNi2s4Pv7f2yOvfhWfhc7hRPHC/JyqMqb8B/Dt/eGS4n7ykwf3fOsl8g==", + "version": "10.3.15", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.15.tgz", + "integrity": "sha512-0c6RlJt1TICLyvJYIApxb8GsXoai0KUP7AxKKAtsYXdgJR1mGEUa7DgwShbdk1nly0PYoZj01xd4hzbq3fsjpw==", "dev": true, "dependencies": { "foreground-child": "^3.1.0", @@ -9043,7 +9043,7 @@ "glob": "dist/esm/bin.mjs" }, "engines": { - "node": ">=16 || 14 >=14.17" + "node": ">=16 || 14 >=14.18" }, "funding": { "url": "https://github.com/sponsors/isaacs" diff --git a/package.json b/package.json index 2a91eebb..37fec84c 100644 --- a/package.json +++ b/package.json @@ -42,7 +42,7 @@ "@repo/prettier-config": "*", "@repo/typescript-config": "*", "diffscribe": "*", - "glob": "10.3.14", + "glob": "10.3.15", "prettier": "3.2.5", "turbo": "1.13.3" }, From 34f9188d8d312cda95251ec608f3b6b6c30ccce9 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 19 May 2024 12:26:09 +0300 Subject: [PATCH 229/458] Bump the definitely-typed group across 1 directory with 2 updates (#533) Bumps the definitely-typed group with 2 updates in the / directory: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) and [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react). Updates `@types/node` from 20.12.11 to 20.12.12 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) Updates `@types/react` from 18.3.1 to 18.3.2 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react) --- updated-dependencies: - dependency-name: "@types/node" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed - dependency-name: "@types/react" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 4 +- docs/cache-handler-docs/package.json | 4 +- internal/backend/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 123 ++++---------------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 10 files changed, 36 insertions(+), 109 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index ee6e70fa..d2461014 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -28,8 +28,8 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "20.12.11", - "@types/react": "18.3.1", + "@types/node": "20.12.12", + "@types/react": "18.3.2", "@types/react-dom": "18.3.0", "axios": "1.6.8", "dotenv-cli": "7.4.2", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index c3d4c591..bde59a5a 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -22,8 +22,8 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "20.12.11", - "@types/react": "18.3.1", + "@types/node": "20.12.12", + "@types/react": "18.3.2", "@types/react-dom": "18.3.0", "eslint": "8.57.0", "typescript": "5.4.5" diff --git a/internal/backend/package.json b/internal/backend/package.json index ea41e31e..1b3036e5 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.12.11", + "@types/node": "20.12.12", "pino-pretty": "11.0.0", "rimraf": "5.0.7", "tsx": "4.10.4", diff --git a/internal/next-common/package.json b/internal/next-common/package.json index 8ec36d3a..19db6f0a 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.12.11", + "@types/node": "20.12.12", "rimraf": "5.0.7", "typescript": "5.4.5" } diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index 6eea1946..c2fdb5f7 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -16,7 +16,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "20.12.11", + "@types/node": "20.12.12", "rimraf": "5.0.7", "typescript": "5.4.5" } diff --git a/package-lock.json b/package-lock.json index 26e0b1bd..3e5041ac 100644 --- a/package-lock.json +++ b/package-lock.json @@ -48,8 +48,8 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "20.12.11", - "@types/react": "18.3.1", + "@types/node": "20.12.12", + "@types/react": "18.3.2", "@types/react-dom": "18.3.0", "axios": "1.6.8", "dotenv-cli": "7.4.2", @@ -62,15 +62,6 @@ "typescript": "5.4.5" } }, - "apps/cache-testing/node_modules/@types/node": { - "version": "20.12.11", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.11.tgz", - "integrity": "sha512-vDg9PZ/zi+Nqp6boSOT7plNuthRugEKixDv5sFTIpkE89MmNtEArAShI4mxuX2+UrLEe9pxC1vm2cjm9YlWbJw==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "apps/cache-testing/node_modules/next": { "version": "14.3.0-canary.44", "resolved": "https://registry.npmjs.org/next/-/next-14.3.0-canary.44.tgz", @@ -135,8 +126,8 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "20.12.11", - "@types/react": "18.3.1", + "@types/node": "20.12.12", + "@types/react": "18.3.2", "@types/react-dom": "18.3.0", "eslint": "8.57.0", "typescript": "5.4.5" @@ -151,15 +142,6 @@ "glob": "10.3.10" } }, - "docs/cache-handler-docs/node_modules/@types/node": { - "version": "20.12.11", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.11.tgz", - "integrity": "sha512-vDg9PZ/zi+Nqp6boSOT7plNuthRugEKixDv5sFTIpkE89MmNtEArAShI4mxuX2+UrLEe9pxC1vm2cjm9YlWbJw==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "docs/cache-handler-docs/node_modules/glob": { "version": "10.3.10", "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", @@ -272,22 +254,13 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.12.11", + "@types/node": "20.12.12", "pino-pretty": "11.0.0", "rimraf": "5.0.7", "tsx": "4.10.4", "typescript": "5.4.5" } }, - "internal/backend/node_modules/@types/node": { - "version": "20.12.11", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.11.tgz", - "integrity": "sha512-vDg9PZ/zi+Nqp6boSOT7plNuthRugEKixDv5sFTIpkE89MmNtEArAShI4mxuX2+UrLEe9pxC1vm2cjm9YlWbJw==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "internal/eslint-config": { "name": "@repo/eslint-config", "version": "0.0.0", @@ -420,7 +393,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.12.11", + "@types/node": "20.12.12", "rimraf": "5.0.7", "typescript": "5.4.5" } @@ -574,15 +547,6 @@ "tslib": "^2.4.0" } }, - "internal/next-common/node_modules/@types/node": { - "version": "20.12.11", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.11.tgz", - "integrity": "sha512-vDg9PZ/zi+Nqp6boSOT7plNuthRugEKixDv5sFTIpkE89MmNtEArAShI4mxuX2+UrLEe9pxC1vm2cjm9YlWbJw==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "internal/next-common/node_modules/next": { "version": "14.2.0-canary.61", "resolved": "https://registry.npmjs.org/next/-/next-14.2.0-canary.61.tgz", @@ -642,20 +606,11 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "20.12.11", + "@types/node": "20.12.12", "rimraf": "5.0.7", "typescript": "5.4.5" } }, - "internal/next-lru-cache/node_modules/@types/node": { - "version": "20.12.11", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.11.tgz", - "integrity": "sha512-vDg9PZ/zi+Nqp6boSOT7plNuthRugEKixDv5sFTIpkE89MmNtEArAShI4mxuX2+UrLEe9pxC1vm2cjm9YlWbJw==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "internal/prettier-config": { "name": "@repo/prettier-config", "version": "0.0.0", @@ -2724,6 +2679,11 @@ "fs-extra": "^8.1.0" } }, + "node_modules/@manypkg/find-root/node_modules/@types/node": { + "version": "12.20.55", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", + "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" + }, "node_modules/@manypkg/find-root/node_modules/fs-extra": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", @@ -4130,9 +4090,12 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "12.20.55", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", - "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" + "version": "20.12.12", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.12.tgz", + "integrity": "sha512-eWLDGF/FOSPtAvEqeRAQ4C8LSA7M1I7i0ky1I8U7kD1J5ITyW3AsRhQrKVoWf5pFKZ2kILsEGJhsI9r93PYnOw==", + "dependencies": { + "undici-types": "~5.26.4" + } }, "node_modules/@types/node-fetch": { "version": "2.6.11", @@ -4155,9 +4118,9 @@ "integrity": "sha512-5zvhXYtRNRluoE/jAp4GVsSduVUzNWKkOZrCDBWYtE7biZywwdC2AcEzg+cSMLFRfVgeAFqpfNabiPjxFddV1Q==" }, "node_modules/@types/react": { - "version": "18.3.1", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.1.tgz", - "integrity": "sha512-V0kuGBX3+prX+DQ/7r2qsv1NsdfnCLnTgnRJ1pYnxykBhGMz+qj+box5lq7XsO5mtZsBqpjwwTu/7wszPfMBcw==", + "version": "18.3.2", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.2.tgz", + "integrity": "sha512-Btgg89dAnqD4vV7R3hlwOxgqobUQKgx3MmrQRi0yYbs/P0ym8XozIAlkqVilPqHQwXs4e9Tf63rrCgl58BcO4w==", "dependencies": { "@types/prop-types": "*", "csstype": "^3.0.2" @@ -17965,7 +17928,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.12.11", + "@types/node": "20.12.12", "rimraf": "5.0.7", "tsup": "8.0.2", "tsx": "4.10.4", @@ -17976,15 +17939,6 @@ "redis": ">=4.6" } }, - "packages/cache-handler/node_modules/@types/node": { - "version": "20.12.11", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.11.tgz", - "integrity": "sha512-vDg9PZ/zi+Nqp6boSOT7plNuthRugEKixDv5sFTIpkE89MmNtEArAShI4mxuX2+UrLEe9pxC1vm2cjm9YlWbJw==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "packages/diffscribe": { "version": "0.2.4", "license": "MIT", @@ -17993,7 +17947,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.12.11", + "@types/node": "20.12.12", "rimraf": "5.0.7", "tsup": "8.0.2", "typescript": "5.4.5" @@ -18003,37 +17957,19 @@ "openai": "^4.12.3" } }, - "packages/diffscribe/node_modules/@types/node": { - "version": "20.12.11", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.11.tgz", - "integrity": "sha512-vDg9PZ/zi+Nqp6boSOT7plNuthRugEKixDv5sFTIpkE89MmNtEArAShI4mxuX2+UrLEe9pxC1vm2cjm9YlWbJw==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "packages/json-replacer-reviver": { "name": "@neshca/json-replacer-reviver", "version": "1.1.3", "license": "MIT", "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.12.11", + "@types/node": "20.12.12", "rimraf": "5.0.7", "tsup": "8.0.2", "tsx": "4.10.4", "typescript": "5.4.5" } }, - "packages/json-replacer-reviver/node_modules/@types/node": { - "version": "20.12.11", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.11.tgz", - "integrity": "sha512-vDg9PZ/zi+Nqp6boSOT7plNuthRugEKixDv5sFTIpkE89MmNtEArAShI4mxuX2+UrLEe9pxC1vm2cjm9YlWbJw==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "packages/server": { "name": "@neshca/server", "version": "1.1.1", @@ -18049,21 +17985,12 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.12.11", + "@types/node": "20.12.12", "rimraf": "5.0.7", "tsup": "8.0.2", "tsx": "4.10.4", "typescript": "5.4.5" } - }, - "packages/server/node_modules/@types/node": { - "version": "20.12.11", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.11.tgz", - "integrity": "sha512-vDg9PZ/zi+Nqp6boSOT7plNuthRugEKixDv5sFTIpkE89MmNtEArAShI4mxuX2+UrLEe9pxC1vm2cjm9YlWbJw==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } } } } diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index b1dc0c98..924fd296 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -79,7 +79,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.12.11", + "@types/node": "20.12.12", "rimraf": "5.0.7", "tsup": "8.0.2", "tsx": "4.10.4", diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index 5be27877..69a5dd78 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -25,7 +25,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.12.11", + "@types/node": "20.12.12", "rimraf": "5.0.7", "tsup": "8.0.2", "typescript": "5.4.5" diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 8ebee211..e30b2659 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -28,7 +28,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.12.11", + "@types/node": "20.12.12", "rimraf": "5.0.7", "tsup": "8.0.2", "tsx": "4.10.4", diff --git a/packages/server/package.json b/packages/server/package.json index aeae1d63..b9c74996 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -32,7 +32,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.12.11", + "@types/node": "20.12.12", "rimraf": "5.0.7", "tsup": "8.0.2", "tsx": "4.10.4", From 1117a2aa6b40964f5c858e2663430bf30ee6a6ce Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 19 May 2024 13:14:18 +0300 Subject: [PATCH 230/458] Bump @changesets/cli from 2.27.1 to 2.27.2 (#537) Bumps [@changesets/cli](https://github.com/changesets/changesets) from 2.27.1 to 2.27.2. - [Release notes](https://github.com/changesets/changesets/releases) - [Changelog](https://github.com/changesets/changesets/blob/main/docs/modifying-changelog-format.md) - [Commits](https://github.com/changesets/changesets/compare/@changesets/cli@2.27.1...@changesets/cli@2.27.2) --- updated-dependencies: - dependency-name: "@changesets/cli" dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 24 ++++++++++++------------ package.json | 2 +- 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/package-lock.json b/package-lock.json index 3e5041ac..724630ba 100644 --- a/package-lock.json +++ b/package-lock.json @@ -16,7 +16,7 @@ "internal/*" ], "dependencies": { - "@changesets/cli": "2.27.1" + "@changesets/cli": "2.27.2" }, "devDependencies": { "@actions/core": "1.10.1", @@ -1303,9 +1303,9 @@ "integrity": "sha512-s3jaWicZd0pkP0jf5ysyHUI/RE7MHos6qlToFcGWXVp+ykHOy77OUMrfbgJ9it2C5bow7OIQwYYaHjk9XlBQ2A==" }, "node_modules/@changesets/apply-release-plan": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@changesets/apply-release-plan/-/apply-release-plan-7.0.0.tgz", - "integrity": "sha512-vfi69JR416qC9hWmFGSxj7N6wA5J222XNBmezSVATPWDVPIF7gkd4d8CpbEbXmRWbVrkoli3oerGS6dcL/BGsQ==", + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/@changesets/apply-release-plan/-/apply-release-plan-7.0.1.tgz", + "integrity": "sha512-aPdSq/R++HOyfEeBGjEe6LNG8gs0KMSyRETD/J2092OkNq8mOioAxyKjMbvVUdzgr/HTawzMOz7lfw339KnsCA==", "dependencies": { "@babel/runtime": "^7.20.1", "@changesets/config": "^3.0.0", @@ -1358,12 +1358,12 @@ } }, "node_modules/@changesets/cli": { - "version": "2.27.1", - "resolved": "https://registry.npmjs.org/@changesets/cli/-/cli-2.27.1.tgz", - "integrity": "sha512-iJ91xlvRnnrJnELTp4eJJEOPjgpF3NOh4qeQehM6Ugiz9gJPRZ2t+TsXun6E3AMN4hScZKjqVXl0TX+C7AB3ZQ==", + "version": "2.27.2", + "resolved": "https://registry.npmjs.org/@changesets/cli/-/cli-2.27.2.tgz", + "integrity": "sha512-6/kADjKMOrlLwNr/Y5HAq7T9oGOA2Lq5A59AGtwQCCiXuSGp4EgszzdJFeBiF8pdz7Wn1HaLzSUBhAaNToEJqg==", "dependencies": { "@babel/runtime": "^7.20.1", - "@changesets/apply-release-plan": "^7.0.0", + "@changesets/apply-release-plan": "^7.0.1", "@changesets/assemble-release-plan": "^6.0.0", "@changesets/changelog-git": "^0.2.0", "@changesets/config": "^3.0.0", @@ -1375,7 +1375,7 @@ "@changesets/pre": "^2.0.0", "@changesets/read": "^0.6.0", "@changesets/types": "^6.0.0", - "@changesets/write": "^0.3.0", + "@changesets/write": "^0.3.1", "@manypkg/get-packages": "^1.1.3", "@types/semver": "^7.5.0", "ansi-colors": "^4.1.3", @@ -1516,9 +1516,9 @@ "integrity": "sha512-b1UkfNulgKoWfqyHtzKS5fOZYSJO+77adgL7DLRDr+/7jhChN+QcHnbjiQVOz/U+Ts3PGNySq7diAItzDgugfQ==" }, "node_modules/@changesets/write": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/@changesets/write/-/write-0.3.0.tgz", - "integrity": "sha512-slGLb21fxZVUYbyea+94uFiD6ntQW0M2hIKNznFizDhZPDgn2c/fv1UzzlW43RVzh1BEDuIqW6hzlJ1OflNmcw==", + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/@changesets/write/-/write-0.3.1.tgz", + "integrity": "sha512-SyGtMXzH3qFqlHKcvFY2eX+6b0NGiFcNav8AFsYwy5l8hejOeoeTDemu5Yjmke2V5jpzY+pBvM0vCCQ3gdZpfw==", "dependencies": { "@babel/runtime": "^7.20.1", "@changesets/types": "^6.0.0", diff --git a/package.json b/package.json index 37fec84c..e49277c0 100644 --- a/package.json +++ b/package.json @@ -34,7 +34,7 @@ "version-packages": "changeset version && npm run codestyle:fix" }, "dependencies": { - "@changesets/cli": "2.27.1" + "@changesets/cli": "2.27.2" }, "devDependencies": { "@actions/core": "1.10.1", From 25d28f785aef1098985c1e905c7d139757db371f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 21 May 2024 12:22:02 +0300 Subject: [PATCH 231/458] --- (#539) updated-dependencies: - dependency-name: "@changesets/cli" dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 8 ++++---- package.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package-lock.json b/package-lock.json index 724630ba..164f9667 100644 --- a/package-lock.json +++ b/package-lock.json @@ -16,7 +16,7 @@ "internal/*" ], "dependencies": { - "@changesets/cli": "2.27.2" + "@changesets/cli": "2.27.3" }, "devDependencies": { "@actions/core": "1.10.1", @@ -1358,9 +1358,9 @@ } }, "node_modules/@changesets/cli": { - "version": "2.27.2", - "resolved": "https://registry.npmjs.org/@changesets/cli/-/cli-2.27.2.tgz", - "integrity": "sha512-6/kADjKMOrlLwNr/Y5HAq7T9oGOA2Lq5A59AGtwQCCiXuSGp4EgszzdJFeBiF8pdz7Wn1HaLzSUBhAaNToEJqg==", + "version": "2.27.3", + "resolved": "https://registry.npmjs.org/@changesets/cli/-/cli-2.27.3.tgz", + "integrity": "sha512-ve/VpWApILlSs8cr0okNx5C2LKRawI9XZgvfmf58S8sar2nhx5DPJREFXYZBahs0FeTfvH0rdVl+nGe8QF45Ig==", "dependencies": { "@babel/runtime": "^7.20.1", "@changesets/apply-release-plan": "^7.0.1", diff --git a/package.json b/package.json index e49277c0..31618e31 100644 --- a/package.json +++ b/package.json @@ -34,7 +34,7 @@ "version-packages": "changeset version && npm run codestyle:fix" }, "dependencies": { - "@changesets/cli": "2.27.2" + "@changesets/cli": "2.27.3" }, "devDependencies": { "@actions/core": "1.10.1", From f01df88ac75128f5be408ac544cf67cb2da5b3c9 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 21 May 2024 12:36:17 +0300 Subject: [PATCH 232/458] --- (#540) updated-dependencies: - dependency-name: tsx dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- internal/backend/package.json | 2 +- package-lock.json | 16 ++++++++-------- packages/cache-handler/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 6 files changed, 13 insertions(+), 13 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index d2461014..d9395e44 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -38,7 +38,7 @@ "pm2": "5.3.1", "redis": "4.6.13", "rimraf": "5.0.7", - "tsx": "4.10.4", + "tsx": "4.10.5", "typescript": "5.4.5" } } diff --git a/internal/backend/package.json b/internal/backend/package.json index 1b3036e5..1bee2548 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -18,7 +18,7 @@ "@types/node": "20.12.12", "pino-pretty": "11.0.0", "rimraf": "5.0.7", - "tsx": "4.10.4", + "tsx": "4.10.5", "typescript": "5.4.5" } } diff --git a/package-lock.json b/package-lock.json index 164f9667..9f4d0078 100644 --- a/package-lock.json +++ b/package-lock.json @@ -58,7 +58,7 @@ "pm2": "5.3.1", "redis": "4.6.13", "rimraf": "5.0.7", - "tsx": "4.10.4", + "tsx": "4.10.5", "typescript": "5.4.5" } }, @@ -257,7 +257,7 @@ "@types/node": "20.12.12", "pino-pretty": "11.0.0", "rimraf": "5.0.7", - "tsx": "4.10.4", + "tsx": "4.10.5", "typescript": "5.4.5" } }, @@ -16179,9 +16179,9 @@ "dev": true }, "node_modules/tsx": { - "version": "4.10.4", - "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.10.4.tgz", - "integrity": "sha512-Gtg9qnZWNqC/OtcgiXfoAUdAKx3/cgKOYvEocAsv+m21MV/eKpV/WUjRXe6/sDCaGBl2/v8S6v29BpUnGMCX5A==", + "version": "4.10.5", + "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.10.5.tgz", + "integrity": "sha512-twDSbf7Gtea4I2copqovUiNTEDrT8XNFXsuHpfGbdpW/z9ZW4fTghzzhAG0WfrCuJmJiOEY1nLIjq4u3oujRWQ==", "dev": true, "dependencies": { "esbuild": "~0.20.2", @@ -17931,7 +17931,7 @@ "@types/node": "20.12.12", "rimraf": "5.0.7", "tsup": "8.0.2", - "tsx": "4.10.4", + "tsx": "4.10.5", "typescript": "5.4.5" }, "peerDependencies": { @@ -17966,7 +17966,7 @@ "@types/node": "20.12.12", "rimraf": "5.0.7", "tsup": "8.0.2", - "tsx": "4.10.4", + "tsx": "4.10.5", "typescript": "5.4.5" } }, @@ -17988,7 +17988,7 @@ "@types/node": "20.12.12", "rimraf": "5.0.7", "tsup": "8.0.2", - "tsx": "4.10.4", + "tsx": "4.10.5", "typescript": "5.4.5" } } diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 924fd296..58dc5b21 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -82,7 +82,7 @@ "@types/node": "20.12.12", "rimraf": "5.0.7", "tsup": "8.0.2", - "tsx": "4.10.4", + "tsx": "4.10.5", "typescript": "5.4.5" }, "peerDependencies": { diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index e30b2659..a5e06d4c 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -31,7 +31,7 @@ "@types/node": "20.12.12", "rimraf": "5.0.7", "tsup": "8.0.2", - "tsx": "4.10.4", + "tsx": "4.10.5", "typescript": "5.4.5" } } diff --git a/packages/server/package.json b/packages/server/package.json index b9c74996..7de83e57 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -35,7 +35,7 @@ "@types/node": "20.12.12", "rimraf": "5.0.7", "tsup": "8.0.2", - "tsx": "4.10.4", + "tsx": "4.10.5", "typescript": "5.4.5" }, "distTags": [ From d22eda6f7262ce51af954867357eb32ea30181e4 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 21 May 2024 13:25:58 +0300 Subject: [PATCH 233/458] --- (#542) updated-dependencies: - dependency-name: axios dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- package-lock.json | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index d9395e44..84352c56 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -31,7 +31,7 @@ "@types/node": "20.12.12", "@types/react": "18.3.2", "@types/react-dom": "18.3.0", - "axios": "1.6.8", + "axios": "1.7.1", "dotenv-cli": "7.4.2", "eslint": "8.57.0", "fastify": "4.27.0", diff --git a/package-lock.json b/package-lock.json index 9f4d0078..62c92283 100644 --- a/package-lock.json +++ b/package-lock.json @@ -51,7 +51,7 @@ "@types/node": "20.12.12", "@types/react": "18.3.2", "@types/react-dom": "18.3.0", - "axios": "1.6.8", + "axios": "1.7.1", "dotenv-cli": "7.4.2", "eslint": "8.57.0", "fastify": "4.27.0", @@ -4977,9 +4977,9 @@ } }, "node_modules/axios": { - "version": "1.6.8", - "resolved": "https://registry.npmjs.org/axios/-/axios-1.6.8.tgz", - "integrity": "sha512-v/ZHtJDU39mDpyBoFVkETcd/uNdxrWRrg3bKpOKzXFA6Bvqopts6ALSMU3y6ijYxbw2B+wPrIv46egTzJXCLGQ==", + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.1.tgz", + "integrity": "sha512-+LV37nQcd1EpFalkXksWNBiA17NZ5m5/WspmHGmZmdx1qBOg/VNq/c4eRJiA9VQQHBOs+N0ZhhdU10h2TyNK7Q==", "dev": true, "dependencies": { "follow-redirects": "^1.15.6", From bc87401339363b747f72914d6311d03dea6644a2 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 22 May 2024 09:44:13 +0300 Subject: [PATCH 234/458] --- (#543) updated-dependencies: - dependency-name: glob dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 28 +++++++++++++++++++++++----- package.json | 2 +- 2 files changed, 24 insertions(+), 6 deletions(-) diff --git a/package-lock.json b/package-lock.json index 62c92283..8dc041c4 100644 --- a/package-lock.json +++ b/package-lock.json @@ -24,7 +24,7 @@ "@repo/prettier-config": "*", "@repo/typescript-config": "*", "diffscribe": "*", - "glob": "10.3.15", + "glob": "10.3.16", "prettier": "3.2.5", "turbo": "1.13.3" }, @@ -8991,13 +8991,13 @@ "integrity": "sha512-IaOQ9puYtjrkq7Y0Ygl9KDZnrf/aiUJYUpVf89y8kyaxbRG7Y1SrX/jaumrv81vc61+kiMempujsM3Yw7w5qcw==" }, "node_modules/glob": { - "version": "10.3.15", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.15.tgz", - "integrity": "sha512-0c6RlJt1TICLyvJYIApxb8GsXoai0KUP7AxKKAtsYXdgJR1mGEUa7DgwShbdk1nly0PYoZj01xd4hzbq3fsjpw==", + "version": "10.3.16", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.16.tgz", + "integrity": "sha512-JDKXl1DiuuHJ6fVS2FXjownaavciiHNUU4mOvV/B793RLh05vZL1rcPnCSaOgv1hDT6RDlY7AB7ZUvFYAtPgAw==", "dev": true, "dependencies": { "foreground-child": "^3.1.0", - "jackspeak": "^2.3.6", + "jackspeak": "^3.1.2", "minimatch": "^9.0.1", "minipass": "^7.0.4", "path-scurry": "^1.11.0" @@ -9024,6 +9024,24 @@ "node": ">=10.13.0" } }, + "node_modules/glob/node_modules/jackspeak": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.1.2.tgz", + "integrity": "sha512-kWmLKn2tRtfYMF/BakihVVRzBKOxz4gJMiL2Rj91WnAB5TPZumSH99R/Yf1qE1u4uRimvCSJfm6hnxohXeEXjQ==", + "dev": true, + "dependencies": { + "@isaacs/cliui": "^8.0.2" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + }, + "optionalDependencies": { + "@pkgjs/parseargs": "^0.11.0" + } + }, "node_modules/globals": { "version": "13.24.0", "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", diff --git a/package.json b/package.json index 31618e31..9149afc4 100644 --- a/package.json +++ b/package.json @@ -42,7 +42,7 @@ "@repo/prettier-config": "*", "@repo/typescript-config": "*", "diffscribe": "*", - "glob": "10.3.15", + "glob": "10.3.16", "prettier": "3.2.5", "turbo": "1.13.3" }, From 72f126062e52e4575f5239a7277ca00e2e1393f1 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 22 May 2024 09:55:46 +0300 Subject: [PATCH 235/458] --- (#544) updated-dependencies: - dependency-name: axios dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- package-lock.json | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 84352c56..b268fb7d 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -31,7 +31,7 @@ "@types/node": "20.12.12", "@types/react": "18.3.2", "@types/react-dom": "18.3.0", - "axios": "1.7.1", + "axios": "1.7.2", "dotenv-cli": "7.4.2", "eslint": "8.57.0", "fastify": "4.27.0", diff --git a/package-lock.json b/package-lock.json index 8dc041c4..5111df50 100644 --- a/package-lock.json +++ b/package-lock.json @@ -51,7 +51,7 @@ "@types/node": "20.12.12", "@types/react": "18.3.2", "@types/react-dom": "18.3.0", - "axios": "1.7.1", + "axios": "1.7.2", "dotenv-cli": "7.4.2", "eslint": "8.57.0", "fastify": "4.27.0", @@ -4977,9 +4977,9 @@ } }, "node_modules/axios": { - "version": "1.7.1", - "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.1.tgz", - "integrity": "sha512-+LV37nQcd1EpFalkXksWNBiA17NZ5m5/WspmHGmZmdx1qBOg/VNq/c4eRJiA9VQQHBOs+N0ZhhdU10h2TyNK7Q==", + "version": "1.7.2", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.2.tgz", + "integrity": "sha512-2A8QhOMrbomlDuiLeK9XibIBzuHeRcqqNOHp0Cyp5EoJ1IFDh+XZH3A6BkXtv0K4gFGCI0Y4BM7B1wOEi0Rmgw==", "dev": true, "dependencies": { "follow-redirects": "^1.15.6", From 0a906127175ba28af772c0cf19fe3366ae42405d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 24 May 2024 10:01:18 +0300 Subject: [PATCH 236/458] Bump tsx from 4.10.5 to 4.11.0 (#548) Bumps [tsx](https://github.com/privatenumber/tsx) from 4.10.5 to 4.11.0. - [Release notes](https://github.com/privatenumber/tsx/releases) - [Changelog](https://github.com/privatenumber/tsx/blob/master/release.config.cjs) - [Commits](https://github.com/privatenumber/tsx/compare/v4.10.5...v4.11.0) --- updated-dependencies: - dependency-name: tsx dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- internal/backend/package.json | 2 +- package-lock.json | 16 ++++++++-------- packages/cache-handler/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 6 files changed, 13 insertions(+), 13 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index b268fb7d..a0db611c 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -38,7 +38,7 @@ "pm2": "5.3.1", "redis": "4.6.13", "rimraf": "5.0.7", - "tsx": "4.10.5", + "tsx": "4.11.0", "typescript": "5.4.5" } } diff --git a/internal/backend/package.json b/internal/backend/package.json index 1bee2548..52c255fd 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -18,7 +18,7 @@ "@types/node": "20.12.12", "pino-pretty": "11.0.0", "rimraf": "5.0.7", - "tsx": "4.10.5", + "tsx": "4.11.0", "typescript": "5.4.5" } } diff --git a/package-lock.json b/package-lock.json index 5111df50..723075f8 100644 --- a/package-lock.json +++ b/package-lock.json @@ -58,7 +58,7 @@ "pm2": "5.3.1", "redis": "4.6.13", "rimraf": "5.0.7", - "tsx": "4.10.5", + "tsx": "4.11.0", "typescript": "5.4.5" } }, @@ -257,7 +257,7 @@ "@types/node": "20.12.12", "pino-pretty": "11.0.0", "rimraf": "5.0.7", - "tsx": "4.10.5", + "tsx": "4.11.0", "typescript": "5.4.5" } }, @@ -16197,9 +16197,9 @@ "dev": true }, "node_modules/tsx": { - "version": "4.10.5", - "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.10.5.tgz", - "integrity": "sha512-twDSbf7Gtea4I2copqovUiNTEDrT8XNFXsuHpfGbdpW/z9ZW4fTghzzhAG0WfrCuJmJiOEY1nLIjq4u3oujRWQ==", + "version": "4.11.0", + "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.11.0.tgz", + "integrity": "sha512-vzGGELOgAupsNVssAmZjbUDfdm/pWP4R+Kg8TVdsonxbXk0bEpE1qh0yV6/QxUVXaVlNemgcPajGdJJ82n3stg==", "dev": true, "dependencies": { "esbuild": "~0.20.2", @@ -17949,7 +17949,7 @@ "@types/node": "20.12.12", "rimraf": "5.0.7", "tsup": "8.0.2", - "tsx": "4.10.5", + "tsx": "4.11.0", "typescript": "5.4.5" }, "peerDependencies": { @@ -17984,7 +17984,7 @@ "@types/node": "20.12.12", "rimraf": "5.0.7", "tsup": "8.0.2", - "tsx": "4.10.5", + "tsx": "4.11.0", "typescript": "5.4.5" } }, @@ -18006,7 +18006,7 @@ "@types/node": "20.12.12", "rimraf": "5.0.7", "tsup": "8.0.2", - "tsx": "4.10.5", + "tsx": "4.11.0", "typescript": "5.4.5" } } diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 58dc5b21..a9ddca56 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -82,7 +82,7 @@ "@types/node": "20.12.12", "rimraf": "5.0.7", "tsup": "8.0.2", - "tsx": "4.10.5", + "tsx": "4.11.0", "typescript": "5.4.5" }, "peerDependencies": { diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index a5e06d4c..0d99afac 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -31,7 +31,7 @@ "@types/node": "20.12.12", "rimraf": "5.0.7", "tsup": "8.0.2", - "tsx": "4.10.5", + "tsx": "4.11.0", "typescript": "5.4.5" } } diff --git a/packages/server/package.json b/packages/server/package.json index 7de83e57..a51a3698 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -35,7 +35,7 @@ "@types/node": "20.12.12", "rimraf": "5.0.7", "tsup": "8.0.2", - "tsx": "4.10.5", + "tsx": "4.11.0", "typescript": "5.4.5" }, "distTags": [ From e8643f2b7174be66bccd8e7868edb95ec54150f2 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 24 May 2024 10:10:37 +0300 Subject: [PATCH 237/458] Bump pino-pretty from 11.0.0 to 11.1.0 in the pino group (#546) Bumps the pino group with 1 update: [pino-pretty](https://github.com/pinojs/pino-pretty). Updates `pino-pretty` from 11.0.0 to 11.1.0 - [Release notes](https://github.com/pinojs/pino-pretty/releases) - [Commits](https://github.com/pinojs/pino-pretty/compare/v11.0.0...v11.1.0) --- updated-dependencies: - dependency-name: pino-pretty dependency-type: direct:development update-type: version-update:semver-minor dependency-group: pino ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- internal/backend/package.json | 2 +- package-lock.json | 27 +++++++++------------------ 2 files changed, 10 insertions(+), 19 deletions(-) diff --git a/internal/backend/package.json b/internal/backend/package.json index 52c255fd..b546bd55 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -16,7 +16,7 @@ "devDependencies": { "@repo/typescript-config": "*", "@types/node": "20.12.12", - "pino-pretty": "11.0.0", + "pino-pretty": "11.1.0", "rimraf": "5.0.7", "tsx": "4.11.0", "typescript": "5.4.5" diff --git a/package-lock.json b/package-lock.json index 723075f8..83e59355 100644 --- a/package-lock.json +++ b/package-lock.json @@ -255,7 +255,7 @@ "devDependencies": { "@repo/typescript-config": "*", "@types/node": "20.12.12", - "pino-pretty": "11.0.0", + "pino-pretty": "11.1.0", "rimraf": "5.0.7", "tsx": "4.11.0", "typescript": "5.4.5" @@ -13282,14 +13282,14 @@ } }, "node_modules/pino-pretty": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/pino-pretty/-/pino-pretty-11.0.0.tgz", - "integrity": "sha512-YFJZqw59mHIY72wBnBs7XhLGG6qpJMa4pEQTRgEPEbjIYbng2LXEZZF1DoyDg9CfejEy8uZCyzpcBXXG0oOCwQ==", + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/pino-pretty/-/pino-pretty-11.1.0.tgz", + "integrity": "sha512-PjBzFL7IMSl1YkS9cSVWC+4gONmW0Fi+fvUzy74zK6RJHk4RkfW+e22NydRrGEtBRa5n6/oPNLPqjUeQrzqcLQ==", "dev": true, "dependencies": { "colorette": "^2.0.7", "dateformat": "^4.6.3", - "fast-copy": "^3.0.0", + "fast-copy": "^3.0.2", "fast-safe-stringify": "^2.1.1", "help-me": "^5.0.0", "joycon": "^3.1.1", @@ -13299,7 +13299,7 @@ "pump": "^3.0.0", "readable-stream": "^4.0.0", "secure-json-parse": "^2.4.0", - "sonic-boom": "^3.0.0", + "sonic-boom": "^4.0.1", "strip-json-comments": "^3.1.1" }, "bin": { @@ -13311,14 +13311,6 @@ "resolved": "https://registry.npmjs.org/pino-std-serializers/-/pino-std-serializers-7.0.0.tgz", "integrity": "sha512-e906FRY0+tV27iq4juKzSYPbUj2do2X2JX4EzSca1631EB2QJQUqGbDuERal7LCtOpxl6x3+nvo9NPZcmjkiFA==" }, - "node_modules/pino/node_modules/sonic-boom": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/sonic-boom/-/sonic-boom-4.0.1.tgz", - "integrity": "sha512-hTSD/6JMLyT4r9zeof6UtuBDpjJ9sO08/nmS5djaA9eozT9oOlNdpXSnzcgj4FTqpk3nkLrs61l4gip9r1HCrQ==", - "dependencies": { - "atomic-sleep": "^1.0.0" - } - }, "node_modules/pirates": { "version": "4.0.6", "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz", @@ -15123,10 +15115,9 @@ } }, "node_modules/sonic-boom": { - "version": "3.8.1", - "resolved": "https://registry.npmjs.org/sonic-boom/-/sonic-boom-3.8.1.tgz", - "integrity": "sha512-y4Z8LCDBuum+PBP3lSV7RHrXscqksve/bi0as7mhwVnBW+/wUqKT/2Kb7um8yqcFy0duYbbPxzt89Zy2nOCaxg==", - "dev": true, + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/sonic-boom/-/sonic-boom-4.0.1.tgz", + "integrity": "sha512-hTSD/6JMLyT4r9zeof6UtuBDpjJ9sO08/nmS5djaA9eozT9oOlNdpXSnzcgj4FTqpk3nkLrs61l4gip9r1HCrQ==", "dependencies": { "atomic-sleep": "^1.0.0" } From d0a6dfaad1479dd1dfb24966519fcf0fe343552f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 24 May 2024 10:34:39 +0300 Subject: [PATCH 238/458] Bump @types/react from 18.3.2 to 18.3.3 in the definitely-typed group (#545) Bumps the definitely-typed group with 1 update: [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react). Updates `@types/react` from 18.3.2 to 18.3.3 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react) --- updated-dependencies: - dependency-name: "@types/react" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- package-lock.json | 10 +++++----- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index a0db611c..6f1671fa 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -29,7 +29,7 @@ "@repo/typescript-config": "*", "@types/eslint": "8.56.7", "@types/node": "20.12.12", - "@types/react": "18.3.2", + "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "axios": "1.7.2", "dotenv-cli": "7.4.2", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index bde59a5a..c85e9673 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -23,7 +23,7 @@ "@repo/typescript-config": "*", "@types/eslint": "8.56.7", "@types/node": "20.12.12", - "@types/react": "18.3.2", + "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "eslint": "8.57.0", "typescript": "5.4.5" diff --git a/package-lock.json b/package-lock.json index 83e59355..7dd7ffb2 100644 --- a/package-lock.json +++ b/package-lock.json @@ -49,7 +49,7 @@ "@repo/typescript-config": "*", "@types/eslint": "8.56.7", "@types/node": "20.12.12", - "@types/react": "18.3.2", + "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "axios": "1.7.2", "dotenv-cli": "7.4.2", @@ -127,7 +127,7 @@ "@repo/typescript-config": "*", "@types/eslint": "8.56.7", "@types/node": "20.12.12", - "@types/react": "18.3.2", + "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "eslint": "8.57.0", "typescript": "5.4.5" @@ -4118,9 +4118,9 @@ "integrity": "sha512-5zvhXYtRNRluoE/jAp4GVsSduVUzNWKkOZrCDBWYtE7biZywwdC2AcEzg+cSMLFRfVgeAFqpfNabiPjxFddV1Q==" }, "node_modules/@types/react": { - "version": "18.3.2", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.2.tgz", - "integrity": "sha512-Btgg89dAnqD4vV7R3hlwOxgqobUQKgx3MmrQRi0yYbs/P0ym8XozIAlkqVilPqHQwXs4e9Tf63rrCgl58BcO4w==", + "version": "18.3.3", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.3.tgz", + "integrity": "sha512-hti/R0pS0q1/xx+TsI73XIqk26eBsISZ2R0wUijXIngRK9R/e7Xw/cXVxQK7R5JjW+SV4zGcn5hXjudkN/pLIw==", "dependencies": { "@types/prop-types": "*", "csstype": "^3.0.2" From 4546fc3c84c9d0431a92ed4121d8a086681d428d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 24 May 2024 10:48:05 +0300 Subject: [PATCH 239/458] Bump @playwright/test from 1.44.0 to 1.44.1 (#547) Bumps [@playwright/test](https://github.com/microsoft/playwright) from 1.44.0 to 1.44.1. - [Release notes](https://github.com/microsoft/playwright/releases) - [Commits](https://github.com/microsoft/playwright/compare/v1.44.0...v1.44.1) --- updated-dependencies: - dependency-name: "@playwright/test" dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- package-lock.json | 24 ++++++++++++------------ 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 6f1671fa..0e9070ff 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -24,7 +24,7 @@ "devDependencies": { "@neshca/cache-handler": "*", "@next/eslint-plugin-next": "14.3.0-canary.44", - "@playwright/test": "1.44.0", + "@playwright/test": "1.44.1", "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", diff --git a/package-lock.json b/package-lock.json index 7dd7ffb2..f3ce420f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -44,7 +44,7 @@ "devDependencies": { "@neshca/cache-handler": "*", "@next/eslint-plugin-next": "14.3.0-canary.44", - "@playwright/test": "1.44.0", + "@playwright/test": "1.44.1", "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", @@ -3376,12 +3376,12 @@ } }, "node_modules/@playwright/test": { - "version": "1.44.0", - "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.44.0.tgz", - "integrity": "sha512-rNX5lbNidamSUorBhB4XZ9SQTjAqfe5M+p37Z8ic0jPFBMo5iCtQz1kRWkEMg+rYOKSlVycpQmpqjSFq7LXOfg==", + "version": "1.44.1", + "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.44.1.tgz", + "integrity": "sha512-1hZ4TNvD5z9VuhNJ/walIjvMVvYkZKf71axoF/uiAqpntQJXpG64dlXhoDXE3OczPuTuvjf/M5KWFg5VAVUS3Q==", "devOptional": true, "dependencies": { - "playwright": "1.44.0" + "playwright": "1.44.1" }, "bin": { "playwright": "cli.js" @@ -13332,12 +13332,12 @@ } }, "node_modules/playwright": { - "version": "1.44.0", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.44.0.tgz", - "integrity": "sha512-F9b3GUCLQ3Nffrfb6dunPOkE5Mh68tR7zN32L4jCk4FjQamgesGay7/dAAe1WaMEGV04DkdJfcJzjoCKygUaRQ==", + "version": "1.44.1", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.44.1.tgz", + "integrity": "sha512-qr/0UJ5CFAtloI3avF95Y0L1xQo6r3LQArLIg/z/PoGJ6xa+EwzrwO5lpNr/09STxdHuUoP2mvuELJS+hLdtgg==", "devOptional": true, "dependencies": { - "playwright-core": "1.44.0" + "playwright-core": "1.44.1" }, "bin": { "playwright": "cli.js" @@ -13350,9 +13350,9 @@ } }, "node_modules/playwright-core": { - "version": "1.44.0", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.44.0.tgz", - "integrity": "sha512-ZTbkNpFfYcGWohvTTl+xewITm7EOuqIqex0c7dNZ+aXsbrLj0qI8XlGKfPpipjm0Wny/4Lt4CJsWJk1stVS5qQ==", + "version": "1.44.1", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.44.1.tgz", + "integrity": "sha512-wh0JWtYTrhv1+OSsLPgFzGzt67Y7BE/ZS3jEqgGBlp2ppp1ZDj8c+9IARNW4dwf1poq5MgHreEM2KV/GuR4cFA==", "devOptional": true, "bin": { "playwright-core": "cli.js" From c828a5b8ddd7fb73d656c4ee3687f77a55f9772a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 27 May 2024 10:51:55 +0300 Subject: [PATCH 240/458] Bump glob from 10.3.16 to 10.4.1 (#550) Bumps [glob](https://github.com/isaacs/node-glob) from 10.3.16 to 10.4.1. - [Changelog](https://github.com/isaacs/node-glob/blob/main/changelog.md) - [Commits](https://github.com/isaacs/node-glob/compare/v10.3.16...v10.4.1) --- updated-dependencies: - dependency-name: glob dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 20 ++++++++++---------- package.json | 2 +- 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/package-lock.json b/package-lock.json index f3ce420f..c2a45542 100644 --- a/package-lock.json +++ b/package-lock.json @@ -24,7 +24,7 @@ "@repo/prettier-config": "*", "@repo/typescript-config": "*", "diffscribe": "*", - "glob": "10.3.16", + "glob": "10.4.1", "prettier": "3.2.5", "turbo": "1.13.3" }, @@ -8991,16 +8991,16 @@ "integrity": "sha512-IaOQ9puYtjrkq7Y0Ygl9KDZnrf/aiUJYUpVf89y8kyaxbRG7Y1SrX/jaumrv81vc61+kiMempujsM3Yw7w5qcw==" }, "node_modules/glob": { - "version": "10.3.16", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.16.tgz", - "integrity": "sha512-JDKXl1DiuuHJ6fVS2FXjownaavciiHNUU4mOvV/B793RLh05vZL1rcPnCSaOgv1hDT6RDlY7AB7ZUvFYAtPgAw==", + "version": "10.4.1", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.1.tgz", + "integrity": "sha512-2jelhlq3E4ho74ZyVLN03oKdAZVUa6UDZzFLVH1H7dnoax+y9qyaq8zBkfDIggjniU19z0wU18y16jMB2eyVIw==", "dev": true, "dependencies": { "foreground-child": "^3.1.0", "jackspeak": "^3.1.2", - "minimatch": "^9.0.1", - "minipass": "^7.0.4", - "path-scurry": "^1.11.0" + "minimatch": "^9.0.4", + "minipass": "^7.1.2", + "path-scurry": "^1.11.1" }, "bin": { "glob": "dist/esm/bin.mjs" @@ -12274,9 +12274,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" diff --git a/package.json b/package.json index 9149afc4..1522192d 100644 --- a/package.json +++ b/package.json @@ -42,7 +42,7 @@ "@repo/prettier-config": "*", "@repo/typescript-config": "*", "diffscribe": "*", - "glob": "10.3.16", + "glob": "10.4.1", "prettier": "3.2.5", "turbo": "1.13.3" }, From 4f7853368a99615fd5d561275eb2fffdd7a9d296 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 27 May 2024 11:01:05 +0300 Subject: [PATCH 241/458] Bump pm2 from 5.3.1 to 5.4.0 (#551) Bumps [pm2](https://github.com/Unitech/pm2) from 5.3.1 to 5.4.0. - [Release notes](https://github.com/Unitech/pm2/releases) - [Changelog](https://github.com/Unitech/pm2/blob/master/CHANGELOG.md) - [Commits](https://github.com/Unitech/pm2/compare/v5.3.1...v5.4.0) --- updated-dependencies: - dependency-name: pm2 dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- package-lock.json | 231 ++++---------------------------- 2 files changed, 30 insertions(+), 203 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 0e9070ff..b9b3e507 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -35,7 +35,7 @@ "dotenv-cli": "7.4.2", "eslint": "8.57.0", "fastify": "4.27.0", - "pm2": "5.3.1", + "pm2": "5.4.0", "redis": "4.6.13", "rimraf": "5.0.7", "tsx": "4.11.0", diff --git a/package-lock.json b/package-lock.json index c2a45542..3564caed 100644 --- a/package-lock.json +++ b/package-lock.json @@ -55,7 +55,7 @@ "dotenv-cli": "7.4.2", "eslint": "8.57.0", "fastify": "4.27.0", - "pm2": "5.3.1", + "pm2": "5.4.0", "redis": "4.6.13", "rimraf": "5.0.7", "tsx": "4.11.0", @@ -3270,89 +3270,6 @@ "node": ">= 8" } }, - "node_modules/@opencensus/core": { - "version": "0.0.9", - "resolved": "https://registry.npmjs.org/@opencensus/core/-/core-0.0.9.tgz", - "integrity": "sha512-31Q4VWtbzXpVUd2m9JS6HEaPjlKvNMOiF7lWKNmXF84yUcgfAFL5re7/hjDmdyQbOp32oGc+RFV78jXIldVz6Q==", - "dev": true, - "dependencies": { - "continuation-local-storage": "^3.2.1", - "log-driver": "^1.2.7", - "semver": "^5.5.0", - "shimmer": "^1.2.0", - "uuid": "^3.2.1" - }, - "engines": { - "node": ">=6.0" - } - }, - "node_modules/@opencensus/core/node_modules/semver": { - "version": "5.7.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", - "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", - "dev": true, - "bin": { - "semver": "bin/semver" - } - }, - "node_modules/@opencensus/core/node_modules/uuid": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", - "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", - "dev": true, - "bin": { - "uuid": "bin/uuid" - } - }, - "node_modules/@opencensus/propagation-b3": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/@opencensus/propagation-b3/-/propagation-b3-0.0.8.tgz", - "integrity": "sha512-PffXX2AL8Sh0VHQ52jJC4u3T0H6wDK6N/4bg7xh4ngMYOIi13aR1kzVvX1sVDBgfGwDOkMbl4c54Xm3tlPx/+A==", - "dev": true, - "dependencies": { - "@opencensus/core": "^0.0.8", - "uuid": "^3.2.1" - }, - "engines": { - "node": ">=6.0" - } - }, - "node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/@opencensus/core/-/core-0.0.8.tgz", - "integrity": "sha512-yUFT59SFhGMYQgX0PhoTR0LBff2BEhPrD9io1jWfF/VDbakRfs6Pq60rjv0Z7iaTav5gQlttJCX2+VPxFWCuoQ==", - "dev": true, - "dependencies": { - "continuation-local-storage": "^3.2.1", - "log-driver": "^1.2.7", - "semver": "^5.5.0", - "shimmer": "^1.2.0", - "uuid": "^3.2.1" - }, - "engines": { - "node": ">=6.0" - } - }, - "node_modules/@opencensus/propagation-b3/node_modules/semver": { - "version": "5.7.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", - "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", - "dev": true, - "bin": { - "semver": "bin/semver" - } - }, - "node_modules/@opencensus/propagation-b3/node_modules/uuid": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", - "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", - "dev": true, - "bin": { - "uuid": "bin/uuid" - } - }, "node_modules/@pkgjs/parseargs": { "version": "0.11.0", "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", @@ -3512,13 +3429,11 @@ } }, "node_modules/@pm2/io": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/@pm2/io/-/io-5.0.2.tgz", - "integrity": "sha512-XAvrNoQPKOyO/jJyCu8jPhLzlyp35MEf7w/carHXmWKddPzeNOFSEpSEqMzPDawsvpxbE+i918cNN+MwgVsStA==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/@pm2/io/-/io-6.0.0.tgz", + "integrity": "sha512-sKUEgZoQ5/jRwTyMB1I7u2wXL6dG0j/F/M4ANJ7dJCApfW8nWC0RElMW2siEKvZ79iplIPAaWV27oyBoerEflw==", "dev": true, "dependencies": { - "@opencensus/core": "0.0.9", - "@opencensus/propagation-b3": "0.0.8", "async": "~2.6.1", "debug": "~4.3.1", "eventemitter2": "^6.3.1", @@ -4907,28 +4822,6 @@ "integrity": "sha512-baNZyqaaLhyLVKm/DlvdW051MSgO6b8eVfIezl9E5PqWxFgzLm/wQntEW4zOytVburDEr0JlALEpdOFwvErLsg==", "dev": true }, - "node_modules/async-listener": { - "version": "0.6.10", - "resolved": "https://registry.npmjs.org/async-listener/-/async-listener-0.6.10.tgz", - "integrity": "sha512-gpuo6xOyF4D5DE5WvyqZdPA3NGhiT6Qf07l7DCB0wwDEsLvDIbCr6j9S5aj5Ch96dLace5tXVzWBZkxU/c5ohw==", - "dev": true, - "dependencies": { - "semver": "^5.3.0", - "shimmer": "^1.1.0" - }, - "engines": { - "node": "<=0.11.8 || >0.11.10" - } - }, - "node_modules/async-listener/node_modules/semver": { - "version": "5.7.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", - "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", - "dev": true, - "bin": { - "semver": "bin/semver" - } - }, "node_modules/asynckit": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", @@ -5742,16 +5635,6 @@ "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", "dev": true }, - "node_modules/continuation-local-storage": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/continuation-local-storage/-/continuation-local-storage-3.2.1.tgz", - "integrity": "sha512-jx44cconVqkCEEyLSKWwkvUXwO561jXMa3LPjTPsm5QR22PA0/mhe33FT4Xb5y74JDvt/Cq+5lm8S8rskLv9ZA==", - "dev": true, - "dependencies": { - "async-listener": "^0.6.0", - "emitter-listener": "^1.1.1" - } - }, "node_modules/convert-source-map": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", @@ -6655,15 +6538,6 @@ "resolved": "https://registry.npmjs.org/elkjs/-/elkjs-0.9.3.tgz", "integrity": "sha512-f/ZeWvW/BCXbhGEf1Ujp29EASo/lk1FDnETgNKwJrsVvGZhUWCZyg3xLJjAsxfOmt8KjswHmI5EwCQcPMpOYhQ==" }, - "node_modules/emitter-listener": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/emitter-listener/-/emitter-listener-1.1.2.tgz", - "integrity": "sha512-Bt1sBAGFHY9DKY+4/2cV6izcKJUf5T7/gkdmkxzX/qv9CcGH8xSwVRW5mtX03SWJtRTWSOpzCuWN9rBFYZepZQ==", - "dev": true, - "dependencies": { - "shimmer": "^1.2.0" - } - }, "node_modules/emoji-regex": { "version": "9.2.2", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", @@ -10722,15 +10596,6 @@ "resolved": "https://registry.npmjs.org/lodash.startcase/-/lodash.startcase-4.4.0.tgz", "integrity": "sha512-+WKqsK294HMSc2jEbNgpHpd0JfIBhp7rEV4aqXWqFr6AlXov+SlcgB1Fv01y2kGe3Gc8nMW7VA0SrGuSkRfIEg==" }, - "node_modules/log-driver": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/log-driver/-/log-driver-1.2.7.tgz", - "integrity": "sha512-U7KCmLdqsGHBLeWqYlFA0V0Sl6P08EE1ZrmA9cxjUE0WVqT9qnyVDPz1kzpFEP0jdJuFnasWIfSd7fsaNXkpbg==", - "dev": true, - "engines": { - "node": ">=0.8.6" - } - }, "node_modules/longest-streak": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/longest-streak/-/longest-streak-3.1.0.tgz", @@ -13371,13 +13236,13 @@ } }, "node_modules/pm2": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/pm2/-/pm2-5.3.1.tgz", - "integrity": "sha512-DLVQHpSR1EegaTaRH3KbRXxpPVaqYwAp3uHSCtCsS++LSErvk07WSxuUnntFblBRqNU/w2KQyqs12mSq5wurkg==", + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/pm2/-/pm2-5.4.0.tgz", + "integrity": "sha512-9TrDuckcSEnINoURygr3yfruK20qXuOUPOPQyIh4FIskQduyDNst9ys1XAt9YPY3RyGxVr2+x8Irsdma3klVQw==", "dev": true, "dependencies": { "@pm2/agent": "~2.0.0", - "@pm2/io": "~5.0.0", + "@pm2/io": "~6.0.0", "@pm2/js-api": "~0.8.0", "@pm2/pm2-version-check": "latest", "async": "~3.2.0", @@ -13392,6 +13257,7 @@ "enquirer": "2.3.6", "eventemitter2": "5.0.1", "fclone": "1.0.11", + "js-yaml": "~4.1.0", "mkdirp": "1.0.4", "needle": "2.4.0", "pidusage": "~3.0", @@ -13403,8 +13269,7 @@ "semver": "^7.2", "source-map-support": "0.5.21", "sprintf-js": "1.1.2", - "vizion": "~2.2.1", - "yamljs": "0.3.0" + "vizion": "~2.2.1" }, "bin": { "pm2": "bin/pm2", @@ -13413,7 +13278,7 @@ "pm2-runtime": "bin/pm2-runtime" }, "engines": { - "node": ">=10.0.0" + "node": ">=12.0.0" }, "optionalDependencies": { "pm2-sysmonit": "^1.2.8" @@ -13522,6 +13387,12 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, + "node_modules/pm2/node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true + }, "node_modules/pm2/node_modules/chalk": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", @@ -13580,6 +13451,18 @@ "node": ">=8" } }, + "node_modules/pm2/node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dev": true, + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, "node_modules/pm2/node_modules/sprintf-js": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.2.tgz", @@ -17787,62 +17670,6 @@ "node": ">= 14" } }, - "node_modules/yamljs": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/yamljs/-/yamljs-0.3.0.tgz", - "integrity": "sha512-C/FsVVhht4iPQYXOInoxUM/1ELSf9EsgKH34FofQOp6hwCPrW4vG4w5++TED3xRUo8gD7l0P1J1dLlDYzODsTQ==", - "dev": true, - "dependencies": { - "argparse": "^1.0.7", - "glob": "^7.0.5" - }, - "bin": { - "json2yaml": "bin/json2yaml", - "yaml2json": "bin/yaml2json" - } - }, - "node_modules/yamljs/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/yamljs/node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dev": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/yamljs/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, "node_modules/yargs": { "version": "17.7.2", "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", From 23c039b94e9def6334e6c6a655ca9585a117dd6d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 5 Jun 2024 14:29:48 +0300 Subject: [PATCH 242/458] Bump @types/node in the definitely-typed group across 1 directory (#566) Bumps the definitely-typed group with 1 update in the / directory: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node). Updates `@types/node` from 20.12.12 to 20.14.1 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) --- updated-dependencies: - dependency-name: "@types/node" dependency-type: direct:development update-type: version-update:semver-minor dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- internal/backend/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 24 ++++++++++----------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 10 files changed, 21 insertions(+), 21 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index b9b3e507..69ecb838 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -28,7 +28,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "20.12.12", + "@types/node": "20.14.1", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "axios": "1.7.2", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index c85e9673..091df5fa 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -22,7 +22,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "20.12.12", + "@types/node": "20.14.1", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "eslint": "8.57.0", diff --git a/internal/backend/package.json b/internal/backend/package.json index b546bd55..eeb5c447 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.12.12", + "@types/node": "20.14.1", "pino-pretty": "11.1.0", "rimraf": "5.0.7", "tsx": "4.11.0", diff --git a/internal/next-common/package.json b/internal/next-common/package.json index 19db6f0a..f4dac99f 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.12.12", + "@types/node": "20.14.1", "rimraf": "5.0.7", "typescript": "5.4.5" } diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index c2fdb5f7..a300dfd0 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -16,7 +16,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "20.12.12", + "@types/node": "20.14.1", "rimraf": "5.0.7", "typescript": "5.4.5" } diff --git a/package-lock.json b/package-lock.json index 3564caed..f14361a9 100644 --- a/package-lock.json +++ b/package-lock.json @@ -48,7 +48,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "20.12.12", + "@types/node": "20.14.1", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "axios": "1.7.2", @@ -126,7 +126,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "20.12.12", + "@types/node": "20.14.1", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "eslint": "8.57.0", @@ -254,7 +254,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.12.12", + "@types/node": "20.14.1", "pino-pretty": "11.1.0", "rimraf": "5.0.7", "tsx": "4.11.0", @@ -393,7 +393,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.12.12", + "@types/node": "20.14.1", "rimraf": "5.0.7", "typescript": "5.4.5" } @@ -606,7 +606,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "20.12.12", + "@types/node": "20.14.1", "rimraf": "5.0.7", "typescript": "5.4.5" } @@ -4005,9 +4005,9 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "20.12.12", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.12.tgz", - "integrity": "sha512-eWLDGF/FOSPtAvEqeRAQ4C8LSA7M1I7i0ky1I8U7kD1J5ITyW3AsRhQrKVoWf5pFKZ2kILsEGJhsI9r93PYnOw==", + "version": "20.14.1", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.1.tgz", + "integrity": "sha512-T2MzSGEu+ysB/FkWfqmhV3PLyQlowdptmmgD20C6QxsS8Fmv5SjpZ1ayXaEC0S21/h5UJ9iA6W/5vSNU5l00OA==", "dependencies": { "undici-types": "~5.26.4" } @@ -17764,7 +17764,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.12.12", + "@types/node": "20.14.1", "rimraf": "5.0.7", "tsup": "8.0.2", "tsx": "4.11.0", @@ -17783,7 +17783,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.12.12", + "@types/node": "20.14.1", "rimraf": "5.0.7", "tsup": "8.0.2", "typescript": "5.4.5" @@ -17799,7 +17799,7 @@ "license": "MIT", "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.12.12", + "@types/node": "20.14.1", "rimraf": "5.0.7", "tsup": "8.0.2", "tsx": "4.11.0", @@ -17821,7 +17821,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.12.12", + "@types/node": "20.14.1", "rimraf": "5.0.7", "tsup": "8.0.2", "tsx": "4.11.0", diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index a9ddca56..1a323eb6 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -79,7 +79,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.12.12", + "@types/node": "20.14.1", "rimraf": "5.0.7", "tsup": "8.0.2", "tsx": "4.11.0", diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index 69a5dd78..62413d77 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -25,7 +25,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.12.12", + "@types/node": "20.14.1", "rimraf": "5.0.7", "tsup": "8.0.2", "typescript": "5.4.5" diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 0d99afac..cc486261 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -28,7 +28,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.12.12", + "@types/node": "20.14.1", "rimraf": "5.0.7", "tsup": "8.0.2", "tsx": "4.11.0", diff --git a/packages/server/package.json b/packages/server/package.json index a51a3698..c360b8dd 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -32,7 +32,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.12.12", + "@types/node": "20.14.1", "rimraf": "5.0.7", "tsup": "8.0.2", "tsx": "4.11.0", From c8d4cd06b265f28ecb0befd3def624fcea43f464 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 6 Jun 2024 10:59:46 +0300 Subject: [PATCH 243/458] Bump tsup from 8.0.2 to 8.1.0 (#562) Bumps [tsup](https://github.com/egoist/tsup) from 8.0.2 to 8.1.0. - [Release notes](https://github.com/egoist/tsup/releases) - [Changelog](https://github.com/egoist/tsup/blob/dev/.releaserc.json) - [Commits](https://github.com/egoist/tsup/compare/v8.0.2...v8.1.0) --- updated-dependencies: - dependency-name: tsup dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 206 ++++++++++---------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 5 files changed, 107 insertions(+), 107 deletions(-) diff --git a/package-lock.json b/package-lock.json index f14361a9..7e11ac32 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1551,9 +1551,9 @@ } }, "node_modules/@esbuild/aix-ppc64": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.19.12.tgz", - "integrity": "sha512-bmoCYyWdEL3wDQIVbcyzRyeKLgk2WtWLTWz1ZIAZF/EGbNOwSA6ew3PftJ1PqMiOOGu0OyFMzG53L0zqIpPeNA==", + "version": "0.21.4", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.21.4.tgz", + "integrity": "sha512-Zrm+B33R4LWPLjDEVnEqt2+SLTATlru1q/xYKVn8oVTbiRBGmK2VIMoIYGJDGyftnGaC788IuzGFAlb7IQ0Y8A==", "cpu": [ "ppc64" ], @@ -1567,9 +1567,9 @@ } }, "node_modules/@esbuild/android-arm": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.19.12.tgz", - "integrity": "sha512-qg/Lj1mu3CdQlDEEiWrlC4eaPZ1KztwGJ9B6J+/6G+/4ewxJg7gqj8eVYWvao1bXrqGiW2rsBZFSX3q2lcW05w==", + "version": "0.21.4", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.21.4.tgz", + "integrity": "sha512-E7H/yTd8kGQfY4z9t3nRPk/hrhaCajfA3YSQSBrst8B+3uTcgsi8N+ZWYCaeIDsiVs6m65JPCaQN/DxBRclF3A==", "cpu": [ "arm" ], @@ -1583,9 +1583,9 @@ } }, "node_modules/@esbuild/android-arm64": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.19.12.tgz", - "integrity": "sha512-P0UVNGIienjZv3f5zq0DP3Nt2IE/3plFzuaS96vihvD0Hd6H/q4WXUGpCxD/E8YrSXfNyRPbpTq+T8ZQioSuPA==", + "version": "0.21.4", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.21.4.tgz", + "integrity": "sha512-fYFnz+ObClJ3dNiITySBUx+oNalYUT18/AryMxfovLkYWbutXsct3Wz2ZWAcGGppp+RVVX5FiXeLYGi97umisA==", "cpu": [ "arm64" ], @@ -1599,9 +1599,9 @@ } }, "node_modules/@esbuild/android-x64": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.19.12.tgz", - "integrity": "sha512-3k7ZoUW6Q6YqhdhIaq/WZ7HwBpnFBlW905Fa4s4qWJyiNOgT1dOqDiVAQFwBH7gBRZr17gLrlFCRzF6jFh7Kew==", + "version": "0.21.4", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.21.4.tgz", + "integrity": "sha512-mDqmlge3hFbEPbCWxp4fM6hqq7aZfLEHZAKGP9viq9wMUBVQx202aDIfc3l+d2cKhUJM741VrCXEzRFhPDKH3Q==", "cpu": [ "x64" ], @@ -1615,9 +1615,9 @@ } }, "node_modules/@esbuild/darwin-arm64": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.19.12.tgz", - "integrity": "sha512-B6IeSgZgtEzGC42jsI+YYu9Z3HKRxp8ZT3cqhvliEHovq8HSX2YX8lNocDn79gCKJXOSaEot9MVYky7AKjCs8g==", + "version": "0.21.4", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.21.4.tgz", + "integrity": "sha512-72eaIrDZDSiWqpmCzVaBD58c8ea8cw/U0fq/PPOTqE3c53D0xVMRt2ooIABZ6/wj99Y+h4ksT/+I+srCDLU9TA==", "cpu": [ "arm64" ], @@ -1631,9 +1631,9 @@ } }, "node_modules/@esbuild/darwin-x64": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.19.12.tgz", - "integrity": "sha512-hKoVkKzFiToTgn+41qGhsUJXFlIjxI/jSYeZf3ugemDYZldIXIxhvwN6erJGlX4t5h417iFuheZ7l+YVn05N3A==", + "version": "0.21.4", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.21.4.tgz", + "integrity": "sha512-uBsuwRMehGmw1JC7Vecu/upOjTsMhgahmDkWhGLWxIgUn2x/Y4tIwUZngsmVb6XyPSTXJYS4YiASKPcm9Zitag==", "cpu": [ "x64" ], @@ -1647,9 +1647,9 @@ } }, "node_modules/@esbuild/freebsd-arm64": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.19.12.tgz", - "integrity": "sha512-4aRvFIXmwAcDBw9AueDQ2YnGmz5L6obe5kmPT8Vd+/+x/JMVKCgdcRwH6APrbpNXsPz+K653Qg8HB/oXvXVukA==", + "version": "0.21.4", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.21.4.tgz", + "integrity": "sha512-8JfuSC6YMSAEIZIWNL3GtdUT5NhUA/CMUCpZdDRolUXNAXEE/Vbpe6qlGLpfThtY5NwXq8Hi4nJy4YfPh+TwAg==", "cpu": [ "arm64" ], @@ -1663,9 +1663,9 @@ } }, "node_modules/@esbuild/freebsd-x64": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.19.12.tgz", - "integrity": "sha512-EYoXZ4d8xtBoVN7CEwWY2IN4ho76xjYXqSXMNccFSx2lgqOG/1TBPW0yPx1bJZk94qu3tX0fycJeeQsKovA8gg==", + "version": "0.21.4", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.21.4.tgz", + "integrity": "sha512-8d9y9eQhxv4ef7JmXny7591P/PYsDFc4+STaxC1GBv0tMyCdyWfXu2jBuqRsyhY8uL2HU8uPyscgE2KxCY9imQ==", "cpu": [ "x64" ], @@ -1679,9 +1679,9 @@ } }, "node_modules/@esbuild/linux-arm": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.19.12.tgz", - "integrity": "sha512-J5jPms//KhSNv+LO1S1TX1UWp1ucM6N6XuL6ITdKWElCu8wXP72l9MM0zDTzzeikVyqFE6U8YAV9/tFyj0ti+w==", + "version": "0.21.4", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.21.4.tgz", + "integrity": "sha512-2rqFFefpYmpMs+FWjkzSgXg5vViocqpq5a1PSRgT0AvSgxoXmGF17qfGAzKedg6wAwyM7UltrKVo9kxaJLMF/g==", "cpu": [ "arm" ], @@ -1695,9 +1695,9 @@ } }, "node_modules/@esbuild/linux-arm64": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.19.12.tgz", - "integrity": "sha512-EoTjyYyLuVPfdPLsGVVVC8a0p1BFFvtpQDB/YLEhaXyf/5bczaGeN15QkR+O4S5LeJ92Tqotve7i1jn35qwvdA==", + "version": "0.21.4", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.21.4.tgz", + "integrity": "sha512-/GLD2orjNU50v9PcxNpYZi+y8dJ7e7/LhQukN3S4jNDXCKkyyiyAz9zDw3siZ7Eh1tRcnCHAo/WcqKMzmi4eMQ==", "cpu": [ "arm64" ], @@ -1711,9 +1711,9 @@ } }, "node_modules/@esbuild/linux-ia32": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.19.12.tgz", - "integrity": "sha512-Thsa42rrP1+UIGaWz47uydHSBOgTUnwBwNq59khgIwktK6x60Hivfbux9iNR0eHCHzOLjLMLfUMLCypBkZXMHA==", + "version": "0.21.4", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.21.4.tgz", + "integrity": "sha512-pNftBl7m/tFG3t2m/tSjuYeWIffzwAZT9m08+9DPLizxVOsUl8DdFzn9HvJrTQwe3wvJnwTdl92AonY36w/25g==", "cpu": [ "ia32" ], @@ -1727,9 +1727,9 @@ } }, "node_modules/@esbuild/linux-loong64": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.19.12.tgz", - "integrity": "sha512-LiXdXA0s3IqRRjm6rV6XaWATScKAXjI4R4LoDlvO7+yQqFdlr1Bax62sRwkVvRIrwXxvtYEHHI4dm50jAXkuAA==", + "version": "0.21.4", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.21.4.tgz", + "integrity": "sha512-cSD2gzCK5LuVX+hszzXQzlWya6c7hilO71L9h4KHwqI4qeqZ57bAtkgcC2YioXjsbfAv4lPn3qe3b00Zt+jIfQ==", "cpu": [ "loong64" ], @@ -1743,9 +1743,9 @@ } }, "node_modules/@esbuild/linux-mips64el": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.19.12.tgz", - "integrity": "sha512-fEnAuj5VGTanfJ07ff0gOA6IPsvrVHLVb6Lyd1g2/ed67oU1eFzL0r9WL7ZzscD+/N6i3dWumGE1Un4f7Amf+w==", + "version": "0.21.4", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.21.4.tgz", + "integrity": "sha512-qtzAd3BJh7UdbiXCrg6npWLYU0YpufsV9XlufKhMhYMJGJCdfX/G6+PNd0+v877X1JG5VmjBLUiFB0o8EUSicA==", "cpu": [ "mips64el" ], @@ -1759,9 +1759,9 @@ } }, "node_modules/@esbuild/linux-ppc64": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.19.12.tgz", - "integrity": "sha512-nYJA2/QPimDQOh1rKWedNOe3Gfc8PabU7HT3iXWtNUbRzXS9+vgB0Fjaqr//XNbd82mCxHzik2qotuI89cfixg==", + "version": "0.21.4", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.21.4.tgz", + "integrity": "sha512-yB8AYzOTaL0D5+2a4xEy7OVvbcypvDR05MsB/VVPVA7nL4hc5w5Dyd/ddnayStDgJE59fAgNEOdLhBxjfx5+dg==", "cpu": [ "ppc64" ], @@ -1775,9 +1775,9 @@ } }, "node_modules/@esbuild/linux-riscv64": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.19.12.tgz", - "integrity": "sha512-2MueBrlPQCw5dVJJpQdUYgeqIzDQgw3QtiAHUC4RBz9FXPrskyyU3VI1hw7C0BSKB9OduwSJ79FTCqtGMWqJHg==", + "version": "0.21.4", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.21.4.tgz", + "integrity": "sha512-Y5AgOuVzPjQdgU59ramLoqSSiXddu7F3F+LI5hYy/d1UHN7K5oLzYBDZe23QmQJ9PIVUXwOdKJ/jZahPdxzm9w==", "cpu": [ "riscv64" ], @@ -1791,9 +1791,9 @@ } }, "node_modules/@esbuild/linux-s390x": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.19.12.tgz", - "integrity": "sha512-+Pil1Nv3Umes4m3AZKqA2anfhJiVmNCYkPchwFJNEJN5QxmTs1uzyy4TvmDrCRNT2ApwSari7ZIgrPeUx4UZDg==", + "version": "0.21.4", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.21.4.tgz", + "integrity": "sha512-Iqc/l/FFwtt8FoTK9riYv9zQNms7B8u+vAI/rxKuN10HgQIXaPzKZc479lZ0x6+vKVQbu55GdpYpeNWzjOhgbA==", "cpu": [ "s390x" ], @@ -1807,9 +1807,9 @@ } }, "node_modules/@esbuild/linux-x64": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.19.12.tgz", - "integrity": "sha512-B71g1QpxfwBvNrfyJdVDexenDIt1CiDN1TIXLbhOw0KhJzE78KIFGX6OJ9MrtC0oOqMWf+0xop4qEU8JrJTwCg==", + "version": "0.21.4", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.21.4.tgz", + "integrity": "sha512-Td9jv782UMAFsuLZINfUpoF5mZIbAj+jv1YVtE58rFtfvoKRiKSkRGQfHTgKamLVT/fO7203bHa3wU122V/Bdg==", "cpu": [ "x64" ], @@ -1823,9 +1823,9 @@ } }, "node_modules/@esbuild/netbsd-x64": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.19.12.tgz", - "integrity": "sha512-3ltjQ7n1owJgFbuC61Oj++XhtzmymoCihNFgT84UAmJnxJfm4sYCiSLTXZtE00VWYpPMYc+ZQmB6xbSdVh0JWA==", + "version": "0.21.4", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.21.4.tgz", + "integrity": "sha512-Awn38oSXxsPMQxaV0Ipb7W/gxZtk5Tx3+W+rAPdZkyEhQ6968r9NvtkjhnhbEgWXYbgV+JEONJ6PcdBS+nlcpA==", "cpu": [ "x64" ], @@ -1839,9 +1839,9 @@ } }, "node_modules/@esbuild/openbsd-x64": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.19.12.tgz", - "integrity": "sha512-RbrfTB9SWsr0kWmb9srfF+L933uMDdu9BIzdA7os2t0TXhCRjrQyCeOt6wVxr79CKD4c+p+YhCj31HBkYcXebw==", + "version": "0.21.4", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.21.4.tgz", + "integrity": "sha512-IsUmQeCY0aU374R82fxIPu6vkOybWIMc3hVGZ3ChRwL9hA1TwY+tS0lgFWV5+F1+1ssuvvXt3HFqe8roCip8Hg==", "cpu": [ "x64" ], @@ -1855,9 +1855,9 @@ } }, "node_modules/@esbuild/sunos-x64": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.19.12.tgz", - "integrity": "sha512-HKjJwRrW8uWtCQnQOz9qcU3mUZhTUQvi56Q8DPTLLB+DawoiQdjsYq+j+D3s9I8VFtDr+F9CjgXKKC4ss89IeA==", + "version": "0.21.4", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.21.4.tgz", + "integrity": "sha512-hsKhgZ4teLUaDA6FG/QIu2q0rI6I36tZVfM4DBZv3BG0mkMIdEnMbhc4xwLvLJSS22uWmaVkFkqWgIS0gPIm+A==", "cpu": [ "x64" ], @@ -1871,9 +1871,9 @@ } }, "node_modules/@esbuild/win32-arm64": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.19.12.tgz", - "integrity": "sha512-URgtR1dJnmGvX864pn1B2YUYNzjmXkuJOIqG2HdU62MVS4EHpU2946OZoTMnRUHklGtJdJZ33QfzdjGACXhn1A==", + "version": "0.21.4", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.21.4.tgz", + "integrity": "sha512-UUfMgMoXPoA/bvGUNfUBFLCh0gt9dxZYIx9W4rfJr7+hKe5jxxHmfOK8YSH4qsHLLN4Ck8JZ+v7Q5fIm1huErg==", "cpu": [ "arm64" ], @@ -1887,9 +1887,9 @@ } }, "node_modules/@esbuild/win32-ia32": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.19.12.tgz", - "integrity": "sha512-+ZOE6pUkMOJfmxmBZElNOx72NKpIa/HFOMGzu8fqzQJ5kgf6aTGrcJaFsNiVMH4JKpMipyK+7k0n2UXN7a8YKQ==", + "version": "0.21.4", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.21.4.tgz", + "integrity": "sha512-yIxbspZb5kGCAHWm8dexALQ9en1IYDfErzjSEq1KzXFniHv019VT3mNtTK7t8qdy4TwT6QYHI9sEZabONHg+aw==", "cpu": [ "ia32" ], @@ -1903,9 +1903,9 @@ } }, "node_modules/@esbuild/win32-x64": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.19.12.tgz", - "integrity": "sha512-T1QyPSDCyMXaO3pzBkF96E8xMkiRYbUEZADd29SyPGabqxMViNoii+NcK7eWJAEoU6RZyEm5lVSIjTmcdoB9HA==", + "version": "0.21.4", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.21.4.tgz", + "integrity": "sha512-sywLRD3UK/qRJt0oBwdpYLBibk7KiRfbswmWRDabuncQYSlf8aLEEUor/oP6KRz8KEG+HoiVLBhPRD5JWjS8Sg==", "cpu": [ "x64" ], @@ -6749,9 +6749,9 @@ } }, "node_modules/esbuild": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.19.12.tgz", - "integrity": "sha512-aARqgq8roFBj054KvQr5f1sFu0D65G+miZRCuJyJ0G13Zwx7vRar5Zhn2tkQNzIXcBrNVsv/8stehpj+GAjgbg==", + "version": "0.21.4", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.21.4.tgz", + "integrity": "sha512-sFMcNNrj+Q0ZDolrp5pDhH0nRPN9hLIM3fRPwgbLYJeSHHgnXSnbV3xYgSVuOeLWH9c73VwmEverVzupIv5xuA==", "dev": true, "hasInstallScript": true, "bin": { @@ -6761,29 +6761,29 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/aix-ppc64": "0.19.12", - "@esbuild/android-arm": "0.19.12", - "@esbuild/android-arm64": "0.19.12", - "@esbuild/android-x64": "0.19.12", - "@esbuild/darwin-arm64": "0.19.12", - "@esbuild/darwin-x64": "0.19.12", - "@esbuild/freebsd-arm64": "0.19.12", - "@esbuild/freebsd-x64": "0.19.12", - "@esbuild/linux-arm": "0.19.12", - "@esbuild/linux-arm64": "0.19.12", - "@esbuild/linux-ia32": "0.19.12", - "@esbuild/linux-loong64": "0.19.12", - "@esbuild/linux-mips64el": "0.19.12", - "@esbuild/linux-ppc64": "0.19.12", - "@esbuild/linux-riscv64": "0.19.12", - "@esbuild/linux-s390x": "0.19.12", - "@esbuild/linux-x64": "0.19.12", - "@esbuild/netbsd-x64": "0.19.12", - "@esbuild/openbsd-x64": "0.19.12", - "@esbuild/sunos-x64": "0.19.12", - "@esbuild/win32-arm64": "0.19.12", - "@esbuild/win32-ia32": "0.19.12", - "@esbuild/win32-x64": "0.19.12" + "@esbuild/aix-ppc64": "0.21.4", + "@esbuild/android-arm": "0.21.4", + "@esbuild/android-arm64": "0.21.4", + "@esbuild/android-x64": "0.21.4", + "@esbuild/darwin-arm64": "0.21.4", + "@esbuild/darwin-x64": "0.21.4", + "@esbuild/freebsd-arm64": "0.21.4", + "@esbuild/freebsd-x64": "0.21.4", + "@esbuild/linux-arm": "0.21.4", + "@esbuild/linux-arm64": "0.21.4", + "@esbuild/linux-ia32": "0.21.4", + "@esbuild/linux-loong64": "0.21.4", + "@esbuild/linux-mips64el": "0.21.4", + "@esbuild/linux-ppc64": "0.21.4", + "@esbuild/linux-riscv64": "0.21.4", + "@esbuild/linux-s390x": "0.21.4", + "@esbuild/linux-x64": "0.21.4", + "@esbuild/netbsd-x64": "0.21.4", + "@esbuild/openbsd-x64": "0.21.4", + "@esbuild/sunos-x64": "0.21.4", + "@esbuild/win32-arm64": "0.21.4", + "@esbuild/win32-ia32": "0.21.4", + "@esbuild/win32-x64": "0.21.4" } }, "node_modules/escalade": { @@ -15898,16 +15898,16 @@ "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==" }, "node_modules/tsup": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/tsup/-/tsup-8.0.2.tgz", - "integrity": "sha512-NY8xtQXdH7hDUAZwcQdY/Vzlw9johQsaqf7iwZ6g1DOUlFYQ5/AtVAjTvihhEyeRlGo4dLRVHtrRaL35M1daqQ==", + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/tsup/-/tsup-8.1.0.tgz", + "integrity": "sha512-UFdfCAXukax+U6KzeTNO2kAARHcWxmKsnvSPXUcfA1D+kU05XDccCrkffCQpFaWDsZfV0jMyTsxU39VfCp6EOg==", "dev": true, "dependencies": { "bundle-require": "^4.0.0", "cac": "^6.7.12", "chokidar": "^3.5.1", "debug": "^4.3.1", - "esbuild": "^0.19.2", + "esbuild": "^0.21.4", "execa": "^5.0.0", "globby": "^11.0.3", "joycon": "^3.0.1", @@ -17766,7 +17766,7 @@ "@repo/typescript-config": "*", "@types/node": "20.14.1", "rimraf": "5.0.7", - "tsup": "8.0.2", + "tsup": "8.1.0", "tsx": "4.11.0", "typescript": "5.4.5" }, @@ -17785,7 +17785,7 @@ "@repo/typescript-config": "*", "@types/node": "20.14.1", "rimraf": "5.0.7", - "tsup": "8.0.2", + "tsup": "8.1.0", "typescript": "5.4.5" }, "peerDependencies": { @@ -17801,7 +17801,7 @@ "@repo/typescript-config": "*", "@types/node": "20.14.1", "rimraf": "5.0.7", - "tsup": "8.0.2", + "tsup": "8.1.0", "tsx": "4.11.0", "typescript": "5.4.5" } @@ -17823,7 +17823,7 @@ "@repo/typescript-config": "*", "@types/node": "20.14.1", "rimraf": "5.0.7", - "tsup": "8.0.2", + "tsup": "8.1.0", "tsx": "4.11.0", "typescript": "5.4.5" } diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 1a323eb6..ae1fe6db 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -81,7 +81,7 @@ "@repo/typescript-config": "*", "@types/node": "20.14.1", "rimraf": "5.0.7", - "tsup": "8.0.2", + "tsup": "8.1.0", "tsx": "4.11.0", "typescript": "5.4.5" }, diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index 62413d77..705a760e 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -27,7 +27,7 @@ "@repo/typescript-config": "*", "@types/node": "20.14.1", "rimraf": "5.0.7", - "tsup": "8.0.2", + "tsup": "8.1.0", "typescript": "5.4.5" }, "peerDependencies": { diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index cc486261..a2d78df1 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -30,7 +30,7 @@ "@repo/typescript-config": "*", "@types/node": "20.14.1", "rimraf": "5.0.7", - "tsup": "8.0.2", + "tsup": "8.1.0", "tsx": "4.11.0", "typescript": "5.4.5" } diff --git a/packages/server/package.json b/packages/server/package.json index c360b8dd..16c2a618 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -34,7 +34,7 @@ "@repo/typescript-config": "*", "@types/node": "20.14.1", "rimraf": "5.0.7", - "tsup": "8.0.2", + "tsup": "8.1.0", "tsx": "4.11.0", "typescript": "5.4.5" }, From fbc93b64bc8d4eb2ff2fe72b42f65fa43efb49b6 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 6 Jun 2024 12:46:46 +0300 Subject: [PATCH 244/458] Bump tsx from 4.11.0 to 4.12.0 (#571) Bumps [tsx](https://github.com/privatenumber/tsx) from 4.11.0 to 4.12.0. - [Release notes](https://github.com/privatenumber/tsx/releases) - [Changelog](https://github.com/privatenumber/tsx/blob/master/release.config.cjs) - [Commits](https://github.com/privatenumber/tsx/compare/v4.11.0...v4.12.0) --- updated-dependencies: - dependency-name: tsx dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- internal/backend/package.json | 2 +- package-lock.json | 16 ++++++++-------- packages/cache-handler/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 6 files changed, 13 insertions(+), 13 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 69ecb838..7cc090fb 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -38,7 +38,7 @@ "pm2": "5.4.0", "redis": "4.6.13", "rimraf": "5.0.7", - "tsx": "4.11.0", + "tsx": "4.12.0", "typescript": "5.4.5" } } diff --git a/internal/backend/package.json b/internal/backend/package.json index eeb5c447..1ffb0153 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -18,7 +18,7 @@ "@types/node": "20.14.1", "pino-pretty": "11.1.0", "rimraf": "5.0.7", - "tsx": "4.11.0", + "tsx": "4.12.0", "typescript": "5.4.5" } } diff --git a/package-lock.json b/package-lock.json index 7e11ac32..d9223d47 100644 --- a/package-lock.json +++ b/package-lock.json @@ -58,7 +58,7 @@ "pm2": "5.4.0", "redis": "4.6.13", "rimraf": "5.0.7", - "tsx": "4.11.0", + "tsx": "4.12.0", "typescript": "5.4.5" } }, @@ -257,7 +257,7 @@ "@types/node": "20.14.1", "pino-pretty": "11.1.0", "rimraf": "5.0.7", - "tsx": "4.11.0", + "tsx": "4.12.0", "typescript": "5.4.5" } }, @@ -16071,9 +16071,9 @@ "dev": true }, "node_modules/tsx": { - "version": "4.11.0", - "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.11.0.tgz", - "integrity": "sha512-vzGGELOgAupsNVssAmZjbUDfdm/pWP4R+Kg8TVdsonxbXk0bEpE1qh0yV6/QxUVXaVlNemgcPajGdJJ82n3stg==", + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.12.0.tgz", + "integrity": "sha512-642NAWAbDqPZINjmL32Lh/B+pd8vbVj6LHPsWm09IIHqQuWhCrNfcPTjRlHFWvv3FfM4vt9NLReBIjUNj5ZhDg==", "dev": true, "dependencies": { "esbuild": "~0.20.2", @@ -17767,7 +17767,7 @@ "@types/node": "20.14.1", "rimraf": "5.0.7", "tsup": "8.1.0", - "tsx": "4.11.0", + "tsx": "4.12.0", "typescript": "5.4.5" }, "peerDependencies": { @@ -17802,7 +17802,7 @@ "@types/node": "20.14.1", "rimraf": "5.0.7", "tsup": "8.1.0", - "tsx": "4.11.0", + "tsx": "4.12.0", "typescript": "5.4.5" } }, @@ -17824,7 +17824,7 @@ "@types/node": "20.14.1", "rimraf": "5.0.7", "tsup": "8.1.0", - "tsx": "4.11.0", + "tsx": "4.12.0", "typescript": "5.4.5" } } diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index ae1fe6db..3bba551c 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -82,7 +82,7 @@ "@types/node": "20.14.1", "rimraf": "5.0.7", "tsup": "8.1.0", - "tsx": "4.11.0", + "tsx": "4.12.0", "typescript": "5.4.5" }, "peerDependencies": { diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index a2d78df1..70905038 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -31,7 +31,7 @@ "@types/node": "20.14.1", "rimraf": "5.0.7", "tsup": "8.1.0", - "tsx": "4.11.0", + "tsx": "4.12.0", "typescript": "5.4.5" } } diff --git a/packages/server/package.json b/packages/server/package.json index 16c2a618..d66828ff 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -35,7 +35,7 @@ "@types/node": "20.14.1", "rimraf": "5.0.7", "tsup": "8.1.0", - "tsx": "4.11.0", + "tsx": "4.12.0", "typescript": "5.4.5" }, "distTags": [ From 8b4dc84e2efc94fc13ce4b89b5e8a2fde941f966 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 6 Jun 2024 13:04:41 +0300 Subject: [PATCH 245/458] Bump @types/node from 20.14.1 to 20.14.2 in the definitely-typed group (#569) Bumps the definitely-typed group with 1 update: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node). Updates `@types/node` from 20.14.1 to 20.14.2 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) --- updated-dependencies: - dependency-name: "@types/node" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- internal/backend/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 24 ++++++++++----------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 10 files changed, 21 insertions(+), 21 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 7cc090fb..5cce9550 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -28,7 +28,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "20.14.1", + "@types/node": "20.14.2", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "axios": "1.7.2", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 091df5fa..c4ebca28 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -22,7 +22,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "20.14.1", + "@types/node": "20.14.2", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "eslint": "8.57.0", diff --git a/internal/backend/package.json b/internal/backend/package.json index 1ffb0153..a806db6b 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.1", + "@types/node": "20.14.2", "pino-pretty": "11.1.0", "rimraf": "5.0.7", "tsx": "4.12.0", diff --git a/internal/next-common/package.json b/internal/next-common/package.json index f4dac99f..40c84b9b 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.1", + "@types/node": "20.14.2", "rimraf": "5.0.7", "typescript": "5.4.5" } diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index a300dfd0..e157b594 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -16,7 +16,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "20.14.1", + "@types/node": "20.14.2", "rimraf": "5.0.7", "typescript": "5.4.5" } diff --git a/package-lock.json b/package-lock.json index d9223d47..8ad2f34d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -48,7 +48,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "20.14.1", + "@types/node": "20.14.2", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "axios": "1.7.2", @@ -126,7 +126,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "20.14.1", + "@types/node": "20.14.2", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "eslint": "8.57.0", @@ -254,7 +254,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.1", + "@types/node": "20.14.2", "pino-pretty": "11.1.0", "rimraf": "5.0.7", "tsx": "4.12.0", @@ -393,7 +393,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.1", + "@types/node": "20.14.2", "rimraf": "5.0.7", "typescript": "5.4.5" } @@ -606,7 +606,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "20.14.1", + "@types/node": "20.14.2", "rimraf": "5.0.7", "typescript": "5.4.5" } @@ -4005,9 +4005,9 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "20.14.1", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.1.tgz", - "integrity": "sha512-T2MzSGEu+ysB/FkWfqmhV3PLyQlowdptmmgD20C6QxsS8Fmv5SjpZ1ayXaEC0S21/h5UJ9iA6W/5vSNU5l00OA==", + "version": "20.14.2", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.2.tgz", + "integrity": "sha512-xyu6WAMVwv6AKFLB+e/7ySZVr/0zLCzOa7rSpq6jNwpqOrUbcACDWC+53d4n2QHOnDou0fbIsg8wZu/sxrnI4Q==", "dependencies": { "undici-types": "~5.26.4" } @@ -17764,7 +17764,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.14.1", + "@types/node": "20.14.2", "rimraf": "5.0.7", "tsup": "8.1.0", "tsx": "4.12.0", @@ -17783,7 +17783,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.1", + "@types/node": "20.14.2", "rimraf": "5.0.7", "tsup": "8.1.0", "typescript": "5.4.5" @@ -17799,7 +17799,7 @@ "license": "MIT", "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.1", + "@types/node": "20.14.2", "rimraf": "5.0.7", "tsup": "8.1.0", "tsx": "4.12.0", @@ -17821,7 +17821,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.14.1", + "@types/node": "20.14.2", "rimraf": "5.0.7", "tsup": "8.1.0", "tsx": "4.12.0", diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 3bba551c..3e85738f 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -79,7 +79,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.14.1", + "@types/node": "20.14.2", "rimraf": "5.0.7", "tsup": "8.1.0", "tsx": "4.12.0", diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index 705a760e..db482917 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -25,7 +25,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.1", + "@types/node": "20.14.2", "rimraf": "5.0.7", "tsup": "8.1.0", "typescript": "5.4.5" diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 70905038..1c976275 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -28,7 +28,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.1", + "@types/node": "20.14.2", "rimraf": "5.0.7", "tsup": "8.1.0", "tsx": "4.12.0", diff --git a/packages/server/package.json b/packages/server/package.json index d66828ff..6de6665a 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -32,7 +32,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.14.1", + "@types/node": "20.14.2", "rimraf": "5.0.7", "tsup": "8.1.0", "tsx": "4.12.0", From 5899fdf530465d8ca2c48e8c2e5a9f65044a86bb Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 6 Jun 2024 13:21:57 +0300 Subject: [PATCH 246/458] Bump @changesets/cli from 2.27.3 to 2.27.5 (#553) Bumps [@changesets/cli](https://github.com/changesets/changesets) from 2.27.3 to 2.27.5. - [Release notes](https://github.com/changesets/changesets/releases) - [Changelog](https://github.com/changesets/changesets/blob/main/docs/modifying-changelog-format.md) - [Commits](https://github.com/changesets/changesets/compare/@changesets/cli@2.27.3...@changesets/cli@2.27.5) --- updated-dependencies: - dependency-name: "@changesets/cli" dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 71 ++++++++++++++++++++++++++++------------------- package.json | 2 +- 2 files changed, 43 insertions(+), 30 deletions(-) diff --git a/package-lock.json b/package-lock.json index 8ad2f34d..732a6cce 100644 --- a/package-lock.json +++ b/package-lock.json @@ -16,7 +16,7 @@ "internal/*" ], "dependencies": { - "@changesets/cli": "2.27.3" + "@changesets/cli": "2.27.5" }, "devDependencies": { "@actions/core": "1.10.1", @@ -1303,14 +1303,15 @@ "integrity": "sha512-s3jaWicZd0pkP0jf5ysyHUI/RE7MHos6qlToFcGWXVp+ykHOy77OUMrfbgJ9it2C5bow7OIQwYYaHjk9XlBQ2A==" }, "node_modules/@changesets/apply-release-plan": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/@changesets/apply-release-plan/-/apply-release-plan-7.0.1.tgz", - "integrity": "sha512-aPdSq/R++HOyfEeBGjEe6LNG8gs0KMSyRETD/J2092OkNq8mOioAxyKjMbvVUdzgr/HTawzMOz7lfw339KnsCA==", + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/@changesets/apply-release-plan/-/apply-release-plan-7.0.3.tgz", + "integrity": "sha512-klL6LCdmfbEe9oyfLxnidIf/stFXmrbFO/3gT5LU5pcyoZytzJe4gWpTBx3BPmyNPl16dZ1xrkcW7b98e3tYkA==", "dependencies": { "@babel/runtime": "^7.20.1", - "@changesets/config": "^3.0.0", + "@changesets/config": "^3.0.1", "@changesets/get-version-range-type": "^0.4.0", "@changesets/git": "^3.0.0", + "@changesets/should-skip-package": "^0.1.0", "@changesets/types": "^6.0.0", "@manypkg/get-packages": "^1.1.3", "detect-indent": "^6.0.0", @@ -1337,13 +1338,14 @@ } }, "node_modules/@changesets/assemble-release-plan": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/@changesets/assemble-release-plan/-/assemble-release-plan-6.0.0.tgz", - "integrity": "sha512-4QG7NuisAjisbW4hkLCmGW2lRYdPrKzro+fCtZaILX+3zdUELSvYjpL4GTv0E4aM9Mef3PuIQp89VmHJ4y2bfw==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/@changesets/assemble-release-plan/-/assemble-release-plan-6.0.2.tgz", + "integrity": "sha512-n9/Tdq+ze+iUtjmq0mZO3pEhJTKkku9hUxtUadW30jlN7kONqJG3O6ALeXrmc6gsi/nvoCuKjqEJ68Hk8RbMTQ==", "dependencies": { "@babel/runtime": "^7.20.1", "@changesets/errors": "^0.2.0", - "@changesets/get-dependents-graph": "^2.0.0", + "@changesets/get-dependents-graph": "^2.1.0", + "@changesets/should-skip-package": "^0.1.0", "@changesets/types": "^6.0.0", "@manypkg/get-packages": "^1.1.3", "semver": "^7.5.3" @@ -1358,22 +1360,23 @@ } }, "node_modules/@changesets/cli": { - "version": "2.27.3", - "resolved": "https://registry.npmjs.org/@changesets/cli/-/cli-2.27.3.tgz", - "integrity": "sha512-ve/VpWApILlSs8cr0okNx5C2LKRawI9XZgvfmf58S8sar2nhx5DPJREFXYZBahs0FeTfvH0rdVl+nGe8QF45Ig==", + "version": "2.27.5", + "resolved": "https://registry.npmjs.org/@changesets/cli/-/cli-2.27.5.tgz", + "integrity": "sha512-UVppOvzCjjylBenFcwcZNG5IaZ8jsIaEVraV/pbXgukYNb0Oqa0d8UWb0LkYzA1Bf1HmUrOfccFcRLheRuA7pA==", "dependencies": { "@babel/runtime": "^7.20.1", - "@changesets/apply-release-plan": "^7.0.1", - "@changesets/assemble-release-plan": "^6.0.0", + "@changesets/apply-release-plan": "^7.0.3", + "@changesets/assemble-release-plan": "^6.0.2", "@changesets/changelog-git": "^0.2.0", - "@changesets/config": "^3.0.0", + "@changesets/config": "^3.0.1", "@changesets/errors": "^0.2.0", - "@changesets/get-dependents-graph": "^2.0.0", - "@changesets/get-release-plan": "^4.0.0", + "@changesets/get-dependents-graph": "^2.1.0", + "@changesets/get-release-plan": "^4.0.2", "@changesets/git": "^3.0.0", "@changesets/logger": "^0.1.0", "@changesets/pre": "^2.0.0", "@changesets/read": "^0.6.0", + "@changesets/should-skip-package": "^0.1.0", "@changesets/types": "^6.0.0", "@changesets/write": "^0.3.1", "@manypkg/get-packages": "^1.1.3", @@ -1400,12 +1403,12 @@ } }, "node_modules/@changesets/config": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@changesets/config/-/config-3.0.0.tgz", - "integrity": "sha512-o/rwLNnAo/+j9Yvw9mkBQOZySDYyOr/q+wptRLcAVGlU6djOeP9v1nlalbL9MFsobuBVQbZCTp+dIzdq+CLQUA==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@changesets/config/-/config-3.0.1.tgz", + "integrity": "sha512-nCr8pOemUjvGJ8aUu8TYVjqnUL+++bFOQHBVmtNbLvKzIDkN/uiP/Z4RKmr7NNaiujIURHySDEGFPftR4GbTUA==", "dependencies": { "@changesets/errors": "^0.2.0", - "@changesets/get-dependents-graph": "^2.0.0", + "@changesets/get-dependents-graph": "^2.1.0", "@changesets/logger": "^0.1.0", "@changesets/types": "^6.0.0", "@manypkg/get-packages": "^1.1.3", @@ -1422,9 +1425,9 @@ } }, "node_modules/@changesets/get-dependents-graph": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@changesets/get-dependents-graph/-/get-dependents-graph-2.0.0.tgz", - "integrity": "sha512-cafUXponivK4vBgZ3yLu944mTvam06XEn2IZGjjKc0antpenkYANXiiE6GExV/yKdsCnE8dXVZ25yGqLYZmScA==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@changesets/get-dependents-graph/-/get-dependents-graph-2.1.0.tgz", + "integrity": "sha512-QOt6pQq9RVXKGHPVvyKimJDYJumx7p4DO5MO9AhRJYgAPgv0emhNqAqqysSVKHBm4sxKlGN4S1zXOIb5yCFuhQ==", "dependencies": { "@changesets/types": "^6.0.0", "@manypkg/get-packages": "^1.1.3", @@ -1434,13 +1437,13 @@ } }, "node_modules/@changesets/get-release-plan": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@changesets/get-release-plan/-/get-release-plan-4.0.0.tgz", - "integrity": "sha512-9L9xCUeD/Tb6L/oKmpm8nyzsOzhdNBBbt/ZNcjynbHC07WW4E1eX8NMGC5g5SbM5z/V+MOrYsJ4lRW41GCbg3w==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/@changesets/get-release-plan/-/get-release-plan-4.0.2.tgz", + "integrity": "sha512-rOalz7nMuMV2vyeP7KBeAhqEB7FM2GFPO5RQSoOoUKKH9L6wW3QyPA2K+/rG9kBrWl2HckPVES73/AuwPvbH3w==", "dependencies": { "@babel/runtime": "^7.20.1", - "@changesets/assemble-release-plan": "^6.0.0", - "@changesets/config": "^3.0.0", + "@changesets/assemble-release-plan": "^6.0.2", + "@changesets/config": "^3.0.1", "@changesets/pre": "^2.0.0", "@changesets/read": "^0.6.0", "@changesets/types": "^6.0.0", @@ -1510,6 +1513,16 @@ "p-filter": "^2.1.0" } }, + "node_modules/@changesets/should-skip-package": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/@changesets/should-skip-package/-/should-skip-package-0.1.0.tgz", + "integrity": "sha512-FxG6Mhjw7yFStlSM7Z0Gmg3RiyQ98d/9VpQAZ3Fzr59dCOM9G6ZdYbjiSAt0XtFr9JR5U2tBaJWPjrkGGc618g==", + "dependencies": { + "@babel/runtime": "^7.20.1", + "@changesets/types": "^6.0.0", + "@manypkg/get-packages": "^1.1.3" + } + }, "node_modules/@changesets/types": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/@changesets/types/-/types-6.0.0.tgz", diff --git a/package.json b/package.json index 1522192d..432e5cb2 100644 --- a/package.json +++ b/package.json @@ -34,7 +34,7 @@ "version-packages": "changeset version && npm run codestyle:fix" }, "dependencies": { - "@changesets/cli": "2.27.3" + "@changesets/cli": "2.27.5" }, "devDependencies": { "@actions/core": "1.10.1", From 5a80398fd4544522b017216146431f44d903a1ef Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 6 Jun 2024 16:40:56 +0300 Subject: [PATCH 247/458] Bump prettier from 3.2.5 to 3.3.1 (#570) Bumps [prettier](https://github.com/prettier/prettier) from 3.2.5 to 3.3.1. - [Release notes](https://github.com/prettier/prettier/releases) - [Changelog](https://github.com/prettier/prettier/blob/main/CHANGELOG.md) - [Commits](https://github.com/prettier/prettier/compare/3.2.5...3.3.1) --- updated-dependencies: - dependency-name: prettier dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 8 ++++---- package.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package-lock.json b/package-lock.json index 732a6cce..5efe487d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -25,7 +25,7 @@ "@repo/typescript-config": "*", "diffscribe": "*", "glob": "10.4.1", - "prettier": "3.2.5", + "prettier": "3.3.1", "turbo": "1.13.3" }, "engines": { @@ -13645,9 +13645,9 @@ } }, "node_modules/prettier": { - "version": "3.2.5", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.2.5.tgz", - "integrity": "sha512-3/GWa9aOC0YeD7LUfvOG2NiDyhOWRvt1k+rcKhOuYnMY24iiCphgneUfJDyFXd6rZCAnuLBv6UeAULtrhT/F4A==", + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.3.1.tgz", + "integrity": "sha512-7CAwy5dRsxs8PHXT3twixW9/OEll8MLE0VRPCJyl7CkS6VHGPSlsVaWTiASPTyGyYRyApxlaWTzwUxVNrhcwDg==", "dev": true, "bin": { "prettier": "bin/prettier.cjs" diff --git a/package.json b/package.json index 432e5cb2..0e194a23 100644 --- a/package.json +++ b/package.json @@ -43,7 +43,7 @@ "@repo/typescript-config": "*", "diffscribe": "*", "glob": "10.4.1", - "prettier": "3.2.5", + "prettier": "3.3.1", "turbo": "1.13.3" }, "engines": { From 563dfe5f62d6d19efea2e1895ab68c4b73cba0a4 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 7 Jun 2024 13:27:21 +0300 Subject: [PATCH 248/458] Bump the turbo group with 2 updates (#567) * Bump the turbo group with 2 updates Bumps the turbo group with 2 updates: [turbo](https://github.com/vercel/turbo) and [eslint-config-turbo](https://github.com/vercel/turbo/tree/HEAD/packages/eslint-config-turbo). Updates `turbo` from 1.13.3 to 2.0.1 - [Release notes](https://github.com/vercel/turbo/releases) - [Changelog](https://github.com/vercel/turbo/blob/main/release.md) - [Commits](https://github.com/vercel/turbo/compare/v1.13.3...v2.0.1) Updates `eslint-config-turbo` from 1.13.3 to 2.0.1 - [Release notes](https://github.com/vercel/turbo/releases) - [Changelog](https://github.com/vercel/turbo/blob/main/release.md) - [Commits](https://github.com/vercel/turbo/commits/v2.0.1/packages/eslint-config-turbo) --- updated-dependencies: - dependency-name: turbo dependency-type: direct:development update-type: version-update:semver-major dependency-group: turbo - dependency-name: eslint-config-turbo dependency-type: direct:development update-type: version-update:semver-major dependency-group: turbo ... Signed-off-by: dependabot[bot] * Update `turbo.json` and add `packageManager` field to the `package.json` --------- Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Arseny <132773930+better-salmon@users.noreply.github.com> --- internal/eslint-config/package.json | 2 +- package-lock.json | 72 ++++++++++++++--------------- package.json | 3 +- turbo.json | 5 +- 4 files changed, 42 insertions(+), 40 deletions(-) diff --git a/internal/eslint-config/package.json b/internal/eslint-config/package.json index 32d605a4..2bf1ce97 100644 --- a/internal/eslint-config/package.json +++ b/internal/eslint-config/package.json @@ -10,7 +10,7 @@ "@typescript-eslint/parser": "7.5.0", "@vercel/style-guide": "6.0.0", "eslint-config-prettier": "9.1.0", - "eslint-config-turbo": "1.13.3", + "eslint-config-turbo": "2.0.1", "eslint-plugin-only-warn": "1.1.0", "typescript": "5.4.5" } diff --git a/package-lock.json b/package-lock.json index 5efe487d..879c59cb 100644 --- a/package-lock.json +++ b/package-lock.json @@ -26,7 +26,7 @@ "diffscribe": "*", "glob": "10.4.1", "prettier": "3.3.1", - "turbo": "1.13.3" + "turbo": "2.0.1" }, "engines": { "node": ">=20.9.0", @@ -269,7 +269,7 @@ "@typescript-eslint/parser": "7.5.0", "@vercel/style-guide": "6.0.0", "eslint-config-prettier": "9.1.0", - "eslint-config-turbo": "1.13.3", + "eslint-config-turbo": "2.0.1", "eslint-plugin-only-warn": "1.1.0", "typescript": "5.4.5" } @@ -6917,12 +6917,12 @@ } }, "node_modules/eslint-config-turbo": { - "version": "1.13.3", - "resolved": "https://registry.npmjs.org/eslint-config-turbo/-/eslint-config-turbo-1.13.3.tgz", - "integrity": "sha512-if/QtwEiWZ5b7Bg8yZBPSvS0TeCG2Zvfa/+XBYANS7uSYucjmW+BBC8enJB0PqpB/YLGGOumeo3x7h1Nuba9iw==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/eslint-config-turbo/-/eslint-config-turbo-2.0.1.tgz", + "integrity": "sha512-Z/TjALEtWvFmi7c2pszuyU8VMrp7KH1q3I4eNBLzlit5kybYDJhacUDYRDyIdGqXg6XljdyDpxNIOKQByScknw==", "dev": true, "dependencies": { - "eslint-plugin-turbo": "1.13.3" + "eslint-plugin-turbo": "2.0.1" }, "peerDependencies": { "eslint": ">6.6.0" @@ -7607,9 +7607,9 @@ } }, "node_modules/eslint-plugin-turbo": { - "version": "1.13.3", - "resolved": "https://registry.npmjs.org/eslint-plugin-turbo/-/eslint-plugin-turbo-1.13.3.tgz", - "integrity": "sha512-RjmlnqYsEqnJ+U3M3IS5jLJDjWv5NsvReCpsC61n5pJ4JMHTZ/lU0EIoL1ccuL1L5wP0APzdXdByBxERcPQ+Nw==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-turbo/-/eslint-plugin-turbo-2.0.1.tgz", + "integrity": "sha512-qe3WlGQXVKIZyWlONjvd3+YbtptK6KvfoLb6TrVzkT+mNYbDpjjbGZ3z12Oj0kUNW31n5Me3EVnrgxeyyw1V3g==", "dev": true, "dependencies": { "dotenv": "16.0.3" @@ -16616,26 +16616,26 @@ } }, "node_modules/turbo": { - "version": "1.13.3", - "resolved": "https://registry.npmjs.org/turbo/-/turbo-1.13.3.tgz", - "integrity": "sha512-n17HJv4F4CpsYTvKzUJhLbyewbXjq1oLCi90i5tW1TiWDz16ML1eDG7wi5dHaKxzh5efIM56SITnuVbMq5dk4g==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/turbo/-/turbo-2.0.1.tgz", + "integrity": "sha512-sJhxfBaN14pYj//xxAG6zAyStkE2j4HI9JVXVMob35SGob6dz/HuSqV/4QlVqw0uKAkwc1lXIsnykbe8RLmOOw==", "dev": true, "bin": { "turbo": "bin/turbo" }, "optionalDependencies": { - "turbo-darwin-64": "1.13.3", - "turbo-darwin-arm64": "1.13.3", - "turbo-linux-64": "1.13.3", - "turbo-linux-arm64": "1.13.3", - "turbo-windows-64": "1.13.3", - "turbo-windows-arm64": "1.13.3" + "turbo-darwin-64": "2.0.1", + "turbo-darwin-arm64": "2.0.1", + "turbo-linux-64": "2.0.1", + "turbo-linux-arm64": "2.0.1", + "turbo-windows-64": "2.0.1", + "turbo-windows-arm64": "2.0.1" } }, "node_modules/turbo-darwin-64": { - "version": "1.13.3", - "resolved": "https://registry.npmjs.org/turbo-darwin-64/-/turbo-darwin-64-1.13.3.tgz", - "integrity": "sha512-glup8Qx1qEFB5jerAnXbS8WrL92OKyMmg5Hnd4PleLljAeYmx+cmmnsmLT7tpaVZIN58EAAwu8wHC6kIIqhbWA==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/turbo-darwin-64/-/turbo-darwin-64-2.0.1.tgz", + "integrity": "sha512-GO391pUmI6c6l/EpUIaXNzwbVDWRvYahm5oLB176dAWRYKYO+Osqs/XBdOM0G3l7ZFdR6nUtRJc8qinJp7qDUQ==", "cpu": [ "x64" ], @@ -16646,9 +16646,9 @@ ] }, "node_modules/turbo-darwin-arm64": { - "version": "1.13.3", - "resolved": "https://registry.npmjs.org/turbo-darwin-arm64/-/turbo-darwin-arm64-1.13.3.tgz", - "integrity": "sha512-/np2xD+f/+9qY8BVtuOQXRq5f9LehCFxamiQnwdqWm5iZmdjygC5T3uVSYuagVFsZKMvX3ycySwh8dylGTl6lg==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/turbo-darwin-arm64/-/turbo-darwin-arm64-2.0.1.tgz", + "integrity": "sha512-rmjJoxeq7nmH/F2aWKapahrDE2zE2Uc15rvs4Rz6qHOzSqC8R5uyLpQyTKIPIZ95O/z9nKfLfVPyiRENuk5vpw==", "cpu": [ "arm64" ], @@ -16659,9 +16659,9 @@ ] }, "node_modules/turbo-linux-64": { - "version": "1.13.3", - "resolved": "https://registry.npmjs.org/turbo-linux-64/-/turbo-linux-64-1.13.3.tgz", - "integrity": "sha512-G+HGrau54iAnbXLfl+N/PynqpDwi/uDzb6iM9hXEDG+yJnSJxaHMShhOkXYJPk9offm9prH33Khx2scXrYVW1g==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/turbo-linux-64/-/turbo-linux-64-2.0.1.tgz", + "integrity": "sha512-vwTOc4v4jm6tM+9WlsiDlN+zwHP8A2wlsAYiNqz2u0DZL55aCWaVdivh2VpVLN36Mr9HgREGH0Fw+jx6ObcNRg==", "cpu": [ "x64" ], @@ -16672,9 +16672,9 @@ ] }, "node_modules/turbo-linux-arm64": { - "version": "1.13.3", - "resolved": "https://registry.npmjs.org/turbo-linux-arm64/-/turbo-linux-arm64-1.13.3.tgz", - "integrity": "sha512-qWwEl5VR02NqRyl68/3pwp3c/olZuSp+vwlwrunuoNTm6JXGLG5pTeme4zoHNnk0qn4cCX7DFrOboArlYxv0wQ==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/turbo-linux-arm64/-/turbo-linux-arm64-2.0.1.tgz", + "integrity": "sha512-DkVt76fjwY940DfmqznWhpYIlKYduvKAoTtylkERrDlcWUpDYWwqNbcf9PRRIbnjnv9lIxvuom1KZmMY+cw/Ig==", "cpu": [ "arm64" ], @@ -16685,9 +16685,9 @@ ] }, "node_modules/turbo-windows-64": { - "version": "1.13.3", - "resolved": "https://registry.npmjs.org/turbo-windows-64/-/turbo-windows-64-1.13.3.tgz", - "integrity": "sha512-Nudr4bRChfJzBPzEmpVV85VwUYRCGKecwkBFpbp2a4NtrJ3+UP1VZES653ckqCu2FRyRuS0n03v9euMbAvzH+Q==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/turbo-windows-64/-/turbo-windows-64-2.0.1.tgz", + "integrity": "sha512-XskV34kYuXVIHbRbgH8jr35Y8uA6kJOQ0LJStU4jFk7piiyk0a4n2GNDymMtvIwAxYdbuTe+pKuPCThFdirHBQ==", "cpu": [ "x64" ], @@ -16698,9 +16698,9 @@ ] }, "node_modules/turbo-windows-arm64": { - "version": "1.13.3", - "resolved": "https://registry.npmjs.org/turbo-windows-arm64/-/turbo-windows-arm64-1.13.3.tgz", - "integrity": "sha512-ouJCgsVLd3icjRLmRvHQDDZnmGzT64GBupM1Y+TjtYn2LVaEBoV6hicFy8x5DUpnqdLy+YpCzRMkWlwhmkX7sQ==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/turbo-windows-arm64/-/turbo-windows-arm64-2.0.1.tgz", + "integrity": "sha512-R2/RmKr2uQxkOCtXK5LNxdD3Iv7lUm56iy2FrDwTDgPI7X7K6WRjrxdirmFIu/fABYE5n6EampU3ejbG5mmGtg==", "cpu": [ "arm64" ], diff --git a/package.json b/package.json index 0e194a23..bc989ba9 100644 --- a/package.json +++ b/package.json @@ -44,8 +44,9 @@ "diffscribe": "*", "glob": "10.4.1", "prettier": "3.3.1", - "turbo": "1.13.3" + "turbo": "2.0.1" }, + "packageManager": "npm@10.1.0", "engines": { "node": ">=20.9.0", "npm": ">=10.1.0" diff --git a/turbo.json b/turbo.json index c7781417..7415ebcc 100644 --- a/turbo.json +++ b/turbo.json @@ -2,7 +2,7 @@ "$schema": "https://turbo.build/schema.json", "globalDependencies": ["**/.env.*local"], "globalEnv": ["CI", "NODE_ENV", "NEXT_PUBLIC_BASE_URL"], - "pipeline": { + "tasks": { "build": { "dependsOn": ["^build"], "env": [ @@ -41,7 +41,8 @@ "persistent": true }, "dev": { - "cache": false + "cache": false, + "persistent": true } } } From ca4bb8e7e03971b0642095c7db6994ddd4cf2411 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 7 Jun 2024 14:27:11 +0300 Subject: [PATCH 249/458] Bump @biomejs/biome from 1.7.3 to 1.8.0 (#568) * Bump @biomejs/biome from 1.7.3 to 1.8.0 Bumps [@biomejs/biome](https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome) from 1.7.3 to 1.8.0. - [Release notes](https://github.com/biomejs/biome/releases) - [Changelog](https://github.com/biomejs/biome/blob/main/CHANGELOG.md) - [Commits](https://github.com/biomejs/biome/commits/cli/v1.8.0/packages/@biomejs/biome) --- updated-dependencies: - dependency-name: "@biomejs/biome" dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] * Update `biome.json` configuration --------- Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Arseny <132773930+better-salmon@users.noreply.github.com> --- biome.json | 20 +++++++++---- package-lock.json | 72 +++++++++++++++++++++++------------------------ package.json | 4 +-- 3 files changed, 53 insertions(+), 43 deletions(-) diff --git a/biome.json b/biome.json index 9caecf3f..d12fb6fb 100644 --- a/biome.json +++ b/biome.json @@ -18,7 +18,9 @@ "noUndeclaredVariables": "error", "noUnusedVariables": "error", "noUnusedImports": "error", - "noUnusedPrivateClassMembers": "error" + "noUnusedPrivateClassMembers": "error", + "noConstantMathMinMaxClamp": "error", + "noFlatMapIdentity": "error" }, "style": { "noNamespace": "error", @@ -43,12 +45,16 @@ "useNodeAssertStrict": "error" }, "nursery": { - "noConstantMathMinMaxClamp": "error", "noDoneCallback": "error", "noDuplicateElseIf": "error", - "noEvolvingAny": "error", - "noFlatMapIdentity": "error", - "noMisplacedAssertion": "error" + "noEvolvingTypes": "error", + "noMisplacedAssertion": "error", + "useNumberToFixedDigitsArgument": "error", + "useThrowNewError": "error", + "useTopLevelRegex": "error", + "noYodaExpression": "error", + "noUnusedFunctionParameters": "error", + "noUselessUndefinedInitialization": "error" }, "complexity": { "useSimplifiedLogicExpression": "error", @@ -86,6 +92,10 @@ { "include": ["[slug].tsx", "[length].tsx", "200.tsx"], "linter": { "rules": { "style": { "useFilenamingConvention": "off" } } } + }, + { + "include": ["*.test.ts"], + "linter": { "rules": { "nursery": { "useTopLevelRegex": "off" } } } } ] } diff --git a/package-lock.json b/package-lock.json index 879c59cb..427647af 100644 --- a/package-lock.json +++ b/package-lock.json @@ -20,7 +20,7 @@ }, "devDependencies": { "@actions/core": "1.10.1", - "@biomejs/biome": "1.7.3", + "@biomejs/biome": "1.8.0", "@repo/prettier-config": "*", "@repo/typescript-config": "*", "diffscribe": "*", @@ -1143,9 +1143,9 @@ } }, "node_modules/@biomejs/biome": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/@biomejs/biome/-/biome-1.7.3.tgz", - "integrity": "sha512-ogFQI+fpXftr+tiahA6bIXwZ7CSikygASdqMtH07J2cUzrpjyTMVc9Y97v23c7/tL1xCZhM+W9k4hYIBm7Q6cQ==", + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/@biomejs/biome/-/biome-1.8.0.tgz", + "integrity": "sha512-34xcE2z8GWrIz1sCFEmlHT/+4d+SN7YOqqvzlAKXKvaWPRJ2/NUwxPbRsP01P9QODkQ5bvGvc9rpBihmP+7RJQ==", "dev": true, "hasInstallScript": true, "bin": { @@ -1159,20 +1159,20 @@ "url": "https://opencollective.com/biome" }, "optionalDependencies": { - "@biomejs/cli-darwin-arm64": "1.7.3", - "@biomejs/cli-darwin-x64": "1.7.3", - "@biomejs/cli-linux-arm64": "1.7.3", - "@biomejs/cli-linux-arm64-musl": "1.7.3", - "@biomejs/cli-linux-x64": "1.7.3", - "@biomejs/cli-linux-x64-musl": "1.7.3", - "@biomejs/cli-win32-arm64": "1.7.3", - "@biomejs/cli-win32-x64": "1.7.3" + "@biomejs/cli-darwin-arm64": "1.8.0", + "@biomejs/cli-darwin-x64": "1.8.0", + "@biomejs/cli-linux-arm64": "1.8.0", + "@biomejs/cli-linux-arm64-musl": "1.8.0", + "@biomejs/cli-linux-x64": "1.8.0", + "@biomejs/cli-linux-x64-musl": "1.8.0", + "@biomejs/cli-win32-arm64": "1.8.0", + "@biomejs/cli-win32-x64": "1.8.0" } }, "node_modules/@biomejs/cli-darwin-arm64": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-1.7.3.tgz", - "integrity": "sha512-eDvLQWmGRqrPIRY7AIrkPHkQ3visEItJKkPYSHCscSDdGvKzYjmBJwG1Gu8+QC5ed6R7eiU63LEC0APFBobmfQ==", + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-1.8.0.tgz", + "integrity": "sha512-dBAYzfIJ1JmWigKlWourT3sJ3I60LZPjqNwwlsyFjiv5AV7vPeWlHVVIImV2BpINwNjZQhpXnwDfVnGS4vr7AA==", "cpu": [ "arm64" ], @@ -1186,9 +1186,9 @@ } }, "node_modules/@biomejs/cli-darwin-x64": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-x64/-/cli-darwin-x64-1.7.3.tgz", - "integrity": "sha512-JXCaIseKRER7dIURsVlAJacnm8SG5I0RpxZ4ya3dudASYUc68WGl4+FEN03ABY3KMIq7hcK1tzsJiWlmXyosZg==", + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-x64/-/cli-darwin-x64-1.8.0.tgz", + "integrity": "sha512-ZTTSD0bP0nn9UpRDGQrQNTILcYSj+IkxTYr3CAV64DWBDtQBomlk2oVKWzDaA1LOhpAsTh0giLCbPJaVk2jfMQ==", "cpu": [ "x64" ], @@ -1202,9 +1202,9 @@ } }, "node_modules/@biomejs/cli-linux-arm64": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64/-/cli-linux-arm64-1.7.3.tgz", - "integrity": "sha512-phNTBpo7joDFastnmZsFjYcDYobLTx4qR4oPvc9tJ486Bd1SfEVPHEvJdNJrMwUQK56T+TRClOQd/8X1nnjA9w==", + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64/-/cli-linux-arm64-1.8.0.tgz", + "integrity": "sha512-cx725jTlJS6dskvJJwwCQaaMRBKE2Qss7ukzmx27Rn/DXRxz6tnnBix4FUGPf1uZfwrERkiJlbWM05JWzpvvXg==", "cpu": [ "arm64" ], @@ -1218,9 +1218,9 @@ } }, "node_modules/@biomejs/cli-linux-arm64-musl": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-1.7.3.tgz", - "integrity": "sha512-c8AlO45PNFZ1BYcwaKzdt46kYbuP6xPGuGQ6h4j3XiEDpyseRRUy/h+6gxj07XovmyxKnSX9GSZ6nVbZvcVUAw==", + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-1.8.0.tgz", + "integrity": "sha512-+ee/pZWsvhDv6eRI00krRNSgAg8DKSxzOv3LUsCjto6N1VzqatTASeQv2HRfG1nitf79rRKM75LkMJbqEfiKww==", "cpu": [ "arm64" ], @@ -1234,9 +1234,9 @@ } }, "node_modules/@biomejs/cli-linux-x64": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64/-/cli-linux-x64-1.7.3.tgz", - "integrity": "sha512-vnedYcd5p4keT3iD48oSKjOIRPYcjSNNbd8MO1bKo9ajg3GwQXZLAH+0Cvlr+eMsO67/HddWmscSQwTFrC/uPA==", + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64/-/cli-linux-x64-1.8.0.tgz", + "integrity": "sha512-cmgmhlD4QUxMhL1VdaNqnB81xBHb3R7huVNyYnPYzP+AykZ7XqJbPd1KcWAszNjUk2AHdx0aLKEBwCOWemxb2g==", "cpu": [ "x64" ], @@ -1250,9 +1250,9 @@ } }, "node_modules/@biomejs/cli-linux-x64-musl": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-1.7.3.tgz", - "integrity": "sha512-UdEHKtYGWEX3eDmVWvQeT+z05T9/Sdt2+F/7zmMOFQ7boANeX8pcO6EkJPK3wxMudrApsNEKT26rzqK6sZRTRA==", + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-1.8.0.tgz", + "integrity": "sha512-VPA4ocrAOak50VYl8gOAVnjuFFDpIUolShntc/aWM0pZfSIMbRucxnrfUfp44EVwayxjK6ruJTR5xEWj93WvDA==", "cpu": [ "x64" ], @@ -1266,9 +1266,9 @@ } }, "node_modules/@biomejs/cli-win32-arm64": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-arm64/-/cli-win32-arm64-1.7.3.tgz", - "integrity": "sha512-unNCDqUKjujYkkSxs7gFIfdasttbDC4+z0kYmcqzRk6yWVoQBL4dNLcCbdnJS+qvVDNdI9rHp2NwpQ0WAdla4Q==", + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-arm64/-/cli-win32-arm64-1.8.0.tgz", + "integrity": "sha512-J31spvlh39FfRHQacYXxJX9PvTCH/a8+2Jx9D1lxw+LSF0JybqZcw/4JrlFUWUl4kF3yv8AuYUK0sENScc3g9w==", "cpu": [ "arm64" ], @@ -1282,9 +1282,9 @@ } }, "node_modules/@biomejs/cli-win32-x64": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-x64/-/cli-win32-x64-1.7.3.tgz", - "integrity": "sha512-ZmByhbrnmz/UUFYB622CECwhKIPjJLLPr5zr3edhu04LzbfcOrz16VYeNq5dpO1ADG70FORhAJkaIGdaVBG00w==", + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-x64/-/cli-win32-x64-1.8.0.tgz", + "integrity": "sha512-uPHHvu76JC1zYe9zZDcOU9PAg+1MZmPuNgWkb5jljaDeATvzLFPB+0nuJTilf603LXL+E8IdPQAO61Wy2VuEJA==", "cpu": [ "x64" ], diff --git a/package.json b/package.json index bc989ba9..a30accb6 100644 --- a/package.json +++ b/package.json @@ -16,7 +16,7 @@ "changeset": "changeset", "clean": "turbo run clean --log-order=grouped", "codestyle:check": "biome check . && npm run eslint:check && npm run prettier:check", - "codestyle:fix": "biome check --apply . && npm run eslint:fix && npm run prettier:fix", + "codestyle:fix": "biome check --write . && npm run eslint:fix && npm run prettier:fix", "dev": "turbo run dev --log-prefix=none --filter=!diffscribe", "dev:backend": "turbo run dev --log-prefix=none --filter=backend", "dev:with-redis": "turbo run dev --log-prefix=none --filter=!@neshca/server --filter=!diffscribe", @@ -38,7 +38,7 @@ }, "devDependencies": { "@actions/core": "1.10.1", - "@biomejs/biome": "1.7.3", + "@biomejs/biome": "1.8.0", "@repo/prettier-config": "*", "@repo/typescript-config": "*", "diffscribe": "*", From 9631c633fc4fb203bba92105bf98750228ecce2a Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Mon, 17 Jun 2024 13:54:57 +0300 Subject: [PATCH 250/458] Bump `packageManager` field and update `turbo` (#573) --- internal/eslint-config/package.json | 2 +- package-lock.json | 1489 ++++++++++++++++----------- package.json | 4 +- 3 files changed, 890 insertions(+), 605 deletions(-) diff --git a/internal/eslint-config/package.json b/internal/eslint-config/package.json index 2bf1ce97..7020889d 100644 --- a/internal/eslint-config/package.json +++ b/internal/eslint-config/package.json @@ -10,7 +10,7 @@ "@typescript-eslint/parser": "7.5.0", "@vercel/style-guide": "6.0.0", "eslint-config-prettier": "9.1.0", - "eslint-config-turbo": "2.0.1", + "eslint-config-turbo": "2.0.4", "eslint-plugin-only-warn": "1.1.0", "typescript": "5.4.5" } diff --git a/package-lock.json b/package-lock.json index 427647af..40cdb017 100644 --- a/package-lock.json +++ b/package-lock.json @@ -26,7 +26,7 @@ "diffscribe": "*", "glob": "10.4.1", "prettier": "3.3.1", - "turbo": "2.0.1" + "turbo": "2.0.4" }, "engines": { "node": ">=20.9.0", @@ -62,6 +62,15 @@ "typescript": "5.4.5" } }, + "apps/cache-testing/node_modules/@types/node": { + "version": "20.14.2", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.2.tgz", + "integrity": "sha512-xyu6WAMVwv6AKFLB+e/7ySZVr/0zLCzOa7rSpq6jNwpqOrUbcACDWC+53d4n2QHOnDou0fbIsg8wZu/sxrnI4Q==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "apps/cache-testing/node_modules/next": { "version": "14.3.0-canary.44", "resolved": "https://registry.npmjs.org/next/-/next-14.3.0-canary.44.tgz", @@ -133,6 +142,11 @@ "typescript": "5.4.5" } }, + "docs/cache-handler-docs/node_modules/@next/env": { + "version": "14.2.3", + "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.3.tgz", + "integrity": "sha512-W7fd7IbkfmeeY2gXrzJYDx8D2lWKbVoTIj1o1ScPHNzvp30s1AuoEFSdr39bC5sjxJaxTtq3OTCZboNp0lNWHA==" + }, "docs/cache-handler-docs/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", @@ -142,6 +156,159 @@ "glob": "10.3.10" } }, + "docs/cache-handler-docs/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==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10" + } + }, + "docs/cache-handler-docs/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==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10" + } + }, + "docs/cache-handler-docs/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==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "docs/cache-handler-docs/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==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "docs/cache-handler-docs/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==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "docs/cache-handler-docs/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==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "docs/cache-handler-docs/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==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, + "docs/cache-handler-docs/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==", + "cpu": [ + "ia32" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, + "docs/cache-handler-docs/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==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, + "docs/cache-handler-docs/node_modules/@swc/helpers": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.5.tgz", + "integrity": "sha512-KGYxvIOXcceOAbEk4bi/dVLEK9z8sZ0uBB3Il5b1rhfClSpcX0yfRO0KmTkqR2cnQDymwLB+25ZyMzICg/cm/A==", + "dependencies": { + "@swc/counter": "^0.1.3", + "tslib": "^2.4.0" + } + }, + "docs/cache-handler-docs/node_modules/@types/node": { + "version": "20.14.2", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.2.tgz", + "integrity": "sha512-xyu6WAMVwv6AKFLB+e/7ySZVr/0zLCzOa7rSpq6jNwpqOrUbcACDWC+53d4n2QHOnDou0fbIsg8wZu/sxrnI4Q==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "docs/cache-handler-docs/node_modules/glob": { "version": "10.3.10", "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", @@ -164,6 +331,55 @@ "url": "https://github.com/sponsors/isaacs" } }, + "docs/cache-handler-docs/node_modules/next": { + "version": "14.2.3", + "resolved": "https://registry.npmjs.org/next/-/next-14.2.3.tgz", + "integrity": "sha512-dowFkFTR8v79NPJO4QsBUtxv0g9BrS/phluVpMAt2ku7H+cbcBJlopXjkWlwxrk/xGqMemr7JkGPGemPrLLX7A==", + "dependencies": { + "@next/env": "14.2.3", + "@swc/helpers": "0.5.5", + "busboy": "1.6.0", + "caniuse-lite": "^1.0.30001579", + "graceful-fs": "^4.2.11", + "postcss": "8.4.31", + "styled-jsx": "5.1.1" + }, + "bin": { + "next": "dist/bin/next" + }, + "engines": { + "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" + }, + "peerDependencies": { + "@opentelemetry/api": "^1.1.0", + "@playwright/test": "^1.41.2", + "react": "^18.2.0", + "react-dom": "^18.2.0", + "sass": "^1.3.0" + }, + "peerDependenciesMeta": { + "@opentelemetry/api": { + "optional": true + }, + "@playwright/test": { + "optional": true + }, + "sass": { + "optional": true + } + } + }, "docs/cache-handler-docs/node_modules/nextra": { "version": "2.13.4", "resolved": "https://registry.npmjs.org/nextra/-/nextra-2.13.4.tgz", @@ -261,6 +477,15 @@ "typescript": "5.4.5" } }, + "internal/backend/node_modules/@types/node": { + "version": "20.14.2", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.2.tgz", + "integrity": "sha512-xyu6WAMVwv6AKFLB+e/7ySZVr/0zLCzOa7rSpq6jNwpqOrUbcACDWC+53d4n2QHOnDou0fbIsg8wZu/sxrnI4Q==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "internal/eslint-config": { "name": "@repo/eslint-config", "version": "0.0.0", @@ -269,15 +494,15 @@ "@typescript-eslint/parser": "7.5.0", "@vercel/style-guide": "6.0.0", "eslint-config-prettier": "9.1.0", - "eslint-config-turbo": "2.0.1", + "eslint-config-turbo": "2.0.4", "eslint-plugin-only-warn": "1.1.0", "typescript": "5.4.5" } }, "internal/eslint-config/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, "optional": true, "peer": true, @@ -547,6 +772,15 @@ "tslib": "^2.4.0" } }, + "internal/next-common/node_modules/@types/node": { + "version": "20.14.2", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.2.tgz", + "integrity": "sha512-xyu6WAMVwv6AKFLB+e/7ySZVr/0zLCzOa7rSpq6jNwpqOrUbcACDWC+53d4n2QHOnDou0fbIsg8wZu/sxrnI4Q==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "internal/next-common/node_modules/next": { "version": "14.2.0-canary.61", "resolved": "https://registry.npmjs.org/next/-/next-14.2.0-canary.61.tgz", @@ -611,6 +845,15 @@ "typescript": "5.4.5" } }, + "internal/next-lru-cache/node_modules/@types/node": { + "version": "20.14.2", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.2.tgz", + "integrity": "sha512-xyu6WAMVwv6AKFLB+e/7ySZVr/0zLCzOa7rSpq6jNwpqOrUbcACDWC+53d4n2QHOnDou0fbIsg8wZu/sxrnI4Q==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "internal/prettier-config": { "name": "@repo/prettier-config", "version": "0.0.0", @@ -620,9 +863,9 @@ } }, "internal/prettier-config/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, "optional": true, "peer": true, @@ -768,11 +1011,11 @@ } }, "node_modules/@babel/code-frame": { - "version": "7.24.2", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.2.tgz", - "integrity": "sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.7.tgz", + "integrity": "sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA==", "dependencies": { - "@babel/highlight": "^7.24.2", + "@babel/highlight": "^7.24.7", "picocolors": "^1.0.0" }, "engines": { @@ -780,30 +1023,30 @@ } }, "node_modules/@babel/compat-data": { - "version": "7.24.4", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.24.4.tgz", - "integrity": "sha512-vg8Gih2MLK+kOkHJp4gBEIkyaIi00jgWot2D9QOmmfLC8jINSOzmCLta6Bvz/JSBCqnegV0L80jhxkol5GWNfQ==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.24.7.tgz", + "integrity": "sha512-qJzAIcv03PyaWqxRgO4mSU3lihncDT296vnyuE2O8uA4w3UHWI4S3hgeZd1L8W1Bft40w9JxJ2b412iDUFFRhw==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/core": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.5.tgz", - "integrity": "sha512-tVQRucExLQ02Boi4vdPp49svNGcfL2GhdTCT9aldhXgCJVAI21EtRfBettiuLUwce/7r6bFdgs6JFkcdTiFttA==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.7.tgz", + "integrity": "sha512-nykK+LEK86ahTkX/3TgauT0ikKoNCfKHEaZYTUVupJdTLzGNvrblu4u6fa7DhZONAltdf8e662t/abY8idrd/g==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.2.0", - "@babel/code-frame": "^7.24.2", - "@babel/generator": "^7.24.5", - "@babel/helper-compilation-targets": "^7.23.6", - "@babel/helper-module-transforms": "^7.24.5", - "@babel/helpers": "^7.24.5", - "@babel/parser": "^7.24.5", - "@babel/template": "^7.24.0", - "@babel/traverse": "^7.24.5", - "@babel/types": "^7.24.5", + "@babel/code-frame": "^7.24.7", + "@babel/generator": "^7.24.7", + "@babel/helper-compilation-targets": "^7.24.7", + "@babel/helper-module-transforms": "^7.24.7", + "@babel/helpers": "^7.24.7", + "@babel/parser": "^7.24.7", + "@babel/template": "^7.24.7", + "@babel/traverse": "^7.24.7", + "@babel/types": "^7.24.7", "convert-source-map": "^2.0.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -828,9 +1071,9 @@ } }, "node_modules/@babel/eslint-parser": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.24.5.tgz", - "integrity": "sha512-gsUcqS/fPlgAw1kOtpss7uhY6E9SFFANQ6EFX5GTvzUwaV0+sGaZWk6xq22MOdeT9wfxyokW3ceCUvOiRtZciQ==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.24.7.tgz", + "integrity": "sha512-SO5E3bVxDuxyNxM5agFv480YA2HO6ohZbGxbazZdIk3KQOPOGVNw6q78I9/lbviIf95eq6tPozeYnJLbjnC8IA==", "dev": true, "dependencies": { "@nicolo-ribaudo/eslint-scope-5-internals": "5.1.1-v1", @@ -864,12 +1107,12 @@ } }, "node_modules/@babel/generator": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.5.tgz", - "integrity": "sha512-x32i4hEXvr+iI0NEoEfDKzlemF8AmtOP8CcrRaEcpzysWuoEb1KknpcvMsHKPONoKZiDuItklgWhB18xEhr9PA==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.7.tgz", + "integrity": "sha512-oipXieGC3i45Y1A41t4tAqpnEZWgB/lC6Ehh6+rOviR5XWpTtMmLN+fGjz9vOiNRt0p6RtO6DtD0pdU3vpqdSA==", "dev": true, "dependencies": { - "@babel/types": "^7.24.5", + "@babel/types": "^7.24.7", "@jridgewell/gen-mapping": "^0.3.5", "@jridgewell/trace-mapping": "^0.3.25", "jsesc": "^2.5.1" @@ -879,13 +1122,13 @@ } }, "node_modules/@babel/helper-compilation-targets": { - "version": "7.23.6", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.23.6.tgz", - "integrity": "sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.24.7.tgz", + "integrity": "sha512-ctSdRHBi20qWOfy27RUb4Fhp07KSJ3sXcuSvTrXrc4aG8NSYDo1ici3Vhg9bg69y5bj0Mr1lh0aeEgTvc12rMg==", "dev": true, "dependencies": { - "@babel/compat-data": "^7.23.5", - "@babel/helper-validator-option": "^7.23.5", + "@babel/compat-data": "^7.24.7", + "@babel/helper-validator-option": "^7.24.7", "browserslist": "^4.22.2", "lru-cache": "^5.1.1", "semver": "^6.3.1" @@ -919,62 +1162,66 @@ "dev": true }, "node_modules/@babel/helper-environment-visitor": { - "version": "7.22.20", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz", - "integrity": "sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.24.7.tgz", + "integrity": "sha512-DoiN84+4Gnd0ncbBOM9AZENV4a5ZiL39HYMyZJGZ/AZEykHYdJw0wW3kdcsh9/Kn+BRXHLkkklZ51ecPKmI1CQ==", "dev": true, + "dependencies": { + "@babel/types": "^7.24.7" + }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-function-name": { - "version": "7.23.0", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.23.0.tgz", - "integrity": "sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.24.7.tgz", + "integrity": "sha512-FyoJTsj/PEUWu1/TYRiXTIHc8lbw+TDYkZuoE43opPS5TrI7MyONBE1oNvfguEXAD9yhQRrVBnXdXzSLQl9XnA==", "dev": true, "dependencies": { - "@babel/template": "^7.22.15", - "@babel/types": "^7.23.0" + "@babel/template": "^7.24.7", + "@babel/types": "^7.24.7" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-hoist-variables": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz", - "integrity": "sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.24.7.tgz", + "integrity": "sha512-MJJwhkoGy5c4ehfoRyrJ/owKeMl19U54h27YYftT0o2teQ3FJ3nQUf/I3LlJsX4l3qlw7WRXUmiyajvHXoTubQ==", "dev": true, "dependencies": { - "@babel/types": "^7.22.5" + "@babel/types": "^7.24.7" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-module-imports": { - "version": "7.24.3", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.24.3.tgz", - "integrity": "sha512-viKb0F9f2s0BCS22QSF308z/+1YWKV/76mwt61NBzS5izMzDPwdq1pTrzf+Li3npBWX9KdQbkeCt1jSAM7lZqg==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.24.7.tgz", + "integrity": "sha512-8AyH3C+74cgCVVXow/myrynrAGv+nTVg5vKu2nZph9x7RcRwzmh0VFallJuFTZ9mx6u4eSdXZfcOzSqTUm0HCA==", "dev": true, "dependencies": { - "@babel/types": "^7.24.0" + "@babel/traverse": "^7.24.7", + "@babel/types": "^7.24.7" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-module-transforms": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.24.5.tgz", - "integrity": "sha512-9GxeY8c2d2mdQUP1Dye0ks3VDyIMS98kt/llQ2nUId8IsWqTF0l1LkSX0/uP7l7MCDrzXS009Hyhe2gzTiGW8A==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.24.7.tgz", + "integrity": "sha512-1fuJEwIrp+97rM4RWdO+qrRsZlAeL1lQJoPqtCYWv0NL115XM93hIH4CSRln2w52SqvmY5hqdtauB6QFCDiZNQ==", "dev": true, "dependencies": { - "@babel/helper-environment-visitor": "^7.22.20", - "@babel/helper-module-imports": "^7.24.3", - "@babel/helper-simple-access": "^7.24.5", - "@babel/helper-split-export-declaration": "^7.24.5", - "@babel/helper-validator-identifier": "^7.24.5" + "@babel/helper-environment-visitor": "^7.24.7", + "@babel/helper-module-imports": "^7.24.7", + "@babel/helper-simple-access": "^7.24.7", + "@babel/helper-split-export-declaration": "^7.24.7", + "@babel/helper-validator-identifier": "^7.24.7" }, "engines": { "node": ">=6.9.0" @@ -984,75 +1231,75 @@ } }, "node_modules/@babel/helper-simple-access": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.24.5.tgz", - "integrity": "sha512-uH3Hmf5q5n7n8mz7arjUlDOCbttY/DW4DYhE6FUsjKJ/oYC1kQQUvwEQWxRwUpX9qQKRXeqLwWxrqilMrf32sQ==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.24.7.tgz", + "integrity": "sha512-zBAIvbCMh5Ts+b86r/CjU+4XGYIs+R1j951gxI3KmmxBMhCg4oQMsv6ZXQ64XOm/cvzfU1FmoCyt6+owc5QMYg==", "dev": true, "dependencies": { - "@babel/types": "^7.24.5" + "@babel/traverse": "^7.24.7", + "@babel/types": "^7.24.7" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-split-export-declaration": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.24.5.tgz", - "integrity": "sha512-5CHncttXohrHk8GWOFCcCl4oRD9fKosWlIRgWm4ql9VYioKm52Mk2xsmoohvm7f3JoiLSM5ZgJuRaf5QZZYd3Q==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.24.7.tgz", + "integrity": "sha512-oy5V7pD+UvfkEATUKvIjvIAH/xCzfsFVw7ygW2SI6NClZzquT+mwdTfgfdbUiceh6iQO0CHtCPsyze/MZ2YbAA==", "dev": true, "dependencies": { - "@babel/types": "^7.24.5" + "@babel/types": "^7.24.7" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-string-parser": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz", - "integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.7.tgz", + "integrity": "sha512-7MbVt6xrwFQbunH2DNQsAP5sTGxfqQtErvBIvIMi6EQnbgUOuVYanvREcmFrOPhoXBrTtjhhP+lW+o5UfK+tDg==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-validator-identifier": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.5.tgz", - "integrity": "sha512-3q93SSKX2TWCG30M2G2kwaKeTYgEUp5Snjuj8qm729SObL6nbtUldAi37qbxkD5gg3xnBio+f9nqpSepGZMvxA==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.7.tgz", + "integrity": "sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w==", "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-validator-option": { - "version": "7.23.5", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.23.5.tgz", - "integrity": "sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.24.7.tgz", + "integrity": "sha512-yy1/KvjhV/ZCL+SM7hBrvnZJ3ZuT9OuZgIJAGpPEToANvc3iM6iDvBnRjtElWibHU6n8/LPR/EjX9EtIEYO3pw==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helpers": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.24.5.tgz", - "integrity": "sha512-CiQmBMMpMQHwM5m01YnrM6imUG1ebgYJ+fAIW4FZe6m4qHTPaRHti+R8cggAwkdz4oXhtO4/K9JWlh+8hIfR2Q==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.24.7.tgz", + "integrity": "sha512-NlmJJtvcw72yRJRcnCmGvSi+3jDEg8qFu3z0AFoymmzLx5ERVWyzd9kVXr7Th9/8yIJi2Zc6av4Tqz3wFs8QWg==", "dev": true, "dependencies": { - "@babel/template": "^7.24.0", - "@babel/traverse": "^7.24.5", - "@babel/types": "^7.24.5" + "@babel/template": "^7.24.7", + "@babel/types": "^7.24.7" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/highlight": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.5.tgz", - "integrity": "sha512-8lLmua6AVh/8SLJRRVD6V8p73Hir9w5mJrhE+IPpILG31KKlI9iz5zmBYKcWPS59qSfgP9RaSBQSHHE81WKuEw==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.7.tgz", + "integrity": "sha512-EStJpq4OuY8xYfhGVXngigBJRWxftKX9ksiGDnmlY3o7B/V7KIAc9X4oiK87uPJSc/vs5L869bem5fhZa8caZw==", "dependencies": { - "@babel/helper-validator-identifier": "^7.24.5", + "@babel/helper-validator-identifier": "^7.24.7", "chalk": "^2.4.2", "js-tokens": "^4.0.0", "picocolors": "^1.0.0" @@ -1062,9 +1309,9 @@ } }, "node_modules/@babel/parser": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.5.tgz", - "integrity": "sha512-EOv5IK8arwh3LI47dz1b0tKUb/1uhHAnHJOrjgtQMIpu1uXd9mlFrJg9IUgGUgZ41Ch0K8REPTYpO7B76b4vJg==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.7.tgz", + "integrity": "sha512-9uUYRm6OqQrCqQdG1iCBwBPZgN8ciDBro2nIOFaiRz1/BCxaI7CNvQbDHvsArAC7Tw9Hda/B3U+6ui9u4HWXPw==", "dev": true, "bin": { "parser": "bin/babel-parser.js" @@ -1074,9 +1321,9 @@ } }, "node_modules/@babel/runtime": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.24.5.tgz", - "integrity": "sha512-Nms86NXrsaeU9vbBJKni6gXiEXZ4CVpYVzEjDH9Sb8vmZ3UljyA1GSOJl/6LGPO8EHLuSF9H+IxNXHPX8QHJ4g==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.24.7.tgz", + "integrity": "sha512-UwgBRMjJP+xv857DCngvqXI3Iq6J4v0wXmwc6sapg+zyhbwmQX67LUEFrkK5tbyJ30jGuG3ZvWpBiB9LCy1kWw==", "dependencies": { "regenerator-runtime": "^0.14.0" }, @@ -1085,33 +1332,33 @@ } }, "node_modules/@babel/template": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz", - "integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.7.tgz", + "integrity": "sha512-jYqfPrU9JTF0PmPy1tLYHW4Mp4KlgxJD9l2nP9fD6yT/ICi554DmrWBAEYpIelzjHf1msDP3PxJIRt/nFNfBig==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.23.5", - "@babel/parser": "^7.24.0", - "@babel/types": "^7.24.0" + "@babel/code-frame": "^7.24.7", + "@babel/parser": "^7.24.7", + "@babel/types": "^7.24.7" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/traverse": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.5.tgz", - "integrity": "sha512-7aaBLeDQ4zYcUFDUD41lJc1fG8+5IU9DaNSJAgal866FGvmD5EbWQgnEC6kO1gGLsX0esNkfnJSndbTXA3r7UA==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.24.2", - "@babel/generator": "^7.24.5", - "@babel/helper-environment-visitor": "^7.22.20", - "@babel/helper-function-name": "^7.23.0", - "@babel/helper-hoist-variables": "^7.22.5", - "@babel/helper-split-export-declaration": "^7.24.5", - "@babel/parser": "^7.24.5", - "@babel/types": "^7.24.5", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.7.tgz", + "integrity": "sha512-yb65Ed5S/QAcewNPh0nZczy9JdYXkkAbIsEo+P7BE7yO3txAY30Y/oPa3QkQ5It3xVG2kpKMg9MsdxZaO31uKA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.24.7", + "@babel/generator": "^7.24.7", + "@babel/helper-environment-visitor": "^7.24.7", + "@babel/helper-function-name": "^7.24.7", + "@babel/helper-hoist-variables": "^7.24.7", + "@babel/helper-split-export-declaration": "^7.24.7", + "@babel/parser": "^7.24.7", + "@babel/types": "^7.24.7", "debug": "^4.3.1", "globals": "^11.1.0" }, @@ -1129,13 +1376,13 @@ } }, "node_modules/@babel/types": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.5.tgz", - "integrity": "sha512-6mQNsaLeXTw0nxYUYu+NSa4Hx4BlF1x1x8/PMFbiR+GBSr+2DkECc69b8hgy2frEodNcvPffeH8YfWd3LI6jhQ==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.7.tgz", + "integrity": "sha512-XEFXSlxiG5td2EJRe8vOmRbaXVgfcBlszKujvVmWIK/UpywWljQCfzAv3RQCGujWQ1RD4YYWEAqDXfuJiy8f5Q==", "dev": true, "dependencies": { - "@babel/helper-string-parser": "^7.24.1", - "@babel/helper-validator-identifier": "^7.24.5", + "@babel/helper-string-parser": "^7.24.7", + "@babel/helper-validator-identifier": "^7.24.7", "to-fast-properties": "^2.0.0" }, "engines": { @@ -1555,18 +1802,18 @@ } }, "node_modules/@emnapi/runtime": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.1.1.tgz", - "integrity": "sha512-3bfqkzuR1KLx57nZfjr2NLnFOobvyS0aTszaEGCGqmYMVDRaGvgIZbjGSV/MHSSmLgQ/b9JFHQ5xm5WRZYd+XQ==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.2.0.tgz", + "integrity": "sha512-bV21/9LQmcQeCPEg3BDFtvwL6cwiTMksYNWQQ4KOxCZikEGalWtenoZ0wCiukJINlGCIi2KXx01g4FoH/LxpzQ==", "optional": true, "dependencies": { "tslib": "^2.4.0" } }, "node_modules/@esbuild/aix-ppc64": { - "version": "0.21.4", - "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.21.4.tgz", - "integrity": "sha512-Zrm+B33R4LWPLjDEVnEqt2+SLTATlru1q/xYKVn8oVTbiRBGmK2VIMoIYGJDGyftnGaC788IuzGFAlb7IQ0Y8A==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.21.5.tgz", + "integrity": "sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==", "cpu": [ "ppc64" ], @@ -1580,9 +1827,9 @@ } }, "node_modules/@esbuild/android-arm": { - "version": "0.21.4", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.21.4.tgz", - "integrity": "sha512-E7H/yTd8kGQfY4z9t3nRPk/hrhaCajfA3YSQSBrst8B+3uTcgsi8N+ZWYCaeIDsiVs6m65JPCaQN/DxBRclF3A==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.21.5.tgz", + "integrity": "sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==", "cpu": [ "arm" ], @@ -1596,9 +1843,9 @@ } }, "node_modules/@esbuild/android-arm64": { - "version": "0.21.4", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.21.4.tgz", - "integrity": "sha512-fYFnz+ObClJ3dNiITySBUx+oNalYUT18/AryMxfovLkYWbutXsct3Wz2ZWAcGGppp+RVVX5FiXeLYGi97umisA==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.21.5.tgz", + "integrity": "sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==", "cpu": [ "arm64" ], @@ -1612,9 +1859,9 @@ } }, "node_modules/@esbuild/android-x64": { - "version": "0.21.4", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.21.4.tgz", - "integrity": "sha512-mDqmlge3hFbEPbCWxp4fM6hqq7aZfLEHZAKGP9viq9wMUBVQx202aDIfc3l+d2cKhUJM741VrCXEzRFhPDKH3Q==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.21.5.tgz", + "integrity": "sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==", "cpu": [ "x64" ], @@ -1628,9 +1875,9 @@ } }, "node_modules/@esbuild/darwin-arm64": { - "version": "0.21.4", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.21.4.tgz", - "integrity": "sha512-72eaIrDZDSiWqpmCzVaBD58c8ea8cw/U0fq/PPOTqE3c53D0xVMRt2ooIABZ6/wj99Y+h4ksT/+I+srCDLU9TA==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.21.5.tgz", + "integrity": "sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==", "cpu": [ "arm64" ], @@ -1644,9 +1891,9 @@ } }, "node_modules/@esbuild/darwin-x64": { - "version": "0.21.4", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.21.4.tgz", - "integrity": "sha512-uBsuwRMehGmw1JC7Vecu/upOjTsMhgahmDkWhGLWxIgUn2x/Y4tIwUZngsmVb6XyPSTXJYS4YiASKPcm9Zitag==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.21.5.tgz", + "integrity": "sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==", "cpu": [ "x64" ], @@ -1660,9 +1907,9 @@ } }, "node_modules/@esbuild/freebsd-arm64": { - "version": "0.21.4", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.21.4.tgz", - "integrity": "sha512-8JfuSC6YMSAEIZIWNL3GtdUT5NhUA/CMUCpZdDRolUXNAXEE/Vbpe6qlGLpfThtY5NwXq8Hi4nJy4YfPh+TwAg==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.21.5.tgz", + "integrity": "sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==", "cpu": [ "arm64" ], @@ -1676,9 +1923,9 @@ } }, "node_modules/@esbuild/freebsd-x64": { - "version": "0.21.4", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.21.4.tgz", - "integrity": "sha512-8d9y9eQhxv4ef7JmXny7591P/PYsDFc4+STaxC1GBv0tMyCdyWfXu2jBuqRsyhY8uL2HU8uPyscgE2KxCY9imQ==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.21.5.tgz", + "integrity": "sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==", "cpu": [ "x64" ], @@ -1692,9 +1939,9 @@ } }, "node_modules/@esbuild/linux-arm": { - "version": "0.21.4", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.21.4.tgz", - "integrity": "sha512-2rqFFefpYmpMs+FWjkzSgXg5vViocqpq5a1PSRgT0AvSgxoXmGF17qfGAzKedg6wAwyM7UltrKVo9kxaJLMF/g==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.21.5.tgz", + "integrity": "sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==", "cpu": [ "arm" ], @@ -1708,9 +1955,9 @@ } }, "node_modules/@esbuild/linux-arm64": { - "version": "0.21.4", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.21.4.tgz", - "integrity": "sha512-/GLD2orjNU50v9PcxNpYZi+y8dJ7e7/LhQukN3S4jNDXCKkyyiyAz9zDw3siZ7Eh1tRcnCHAo/WcqKMzmi4eMQ==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.21.5.tgz", + "integrity": "sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==", "cpu": [ "arm64" ], @@ -1724,9 +1971,9 @@ } }, "node_modules/@esbuild/linux-ia32": { - "version": "0.21.4", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.21.4.tgz", - "integrity": "sha512-pNftBl7m/tFG3t2m/tSjuYeWIffzwAZT9m08+9DPLizxVOsUl8DdFzn9HvJrTQwe3wvJnwTdl92AonY36w/25g==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.21.5.tgz", + "integrity": "sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==", "cpu": [ "ia32" ], @@ -1740,9 +1987,9 @@ } }, "node_modules/@esbuild/linux-loong64": { - "version": "0.21.4", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.21.4.tgz", - "integrity": "sha512-cSD2gzCK5LuVX+hszzXQzlWya6c7hilO71L9h4KHwqI4qeqZ57bAtkgcC2YioXjsbfAv4lPn3qe3b00Zt+jIfQ==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.21.5.tgz", + "integrity": "sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==", "cpu": [ "loong64" ], @@ -1756,9 +2003,9 @@ } }, "node_modules/@esbuild/linux-mips64el": { - "version": "0.21.4", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.21.4.tgz", - "integrity": "sha512-qtzAd3BJh7UdbiXCrg6npWLYU0YpufsV9XlufKhMhYMJGJCdfX/G6+PNd0+v877X1JG5VmjBLUiFB0o8EUSicA==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.21.5.tgz", + "integrity": "sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==", "cpu": [ "mips64el" ], @@ -1772,9 +2019,9 @@ } }, "node_modules/@esbuild/linux-ppc64": { - "version": "0.21.4", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.21.4.tgz", - "integrity": "sha512-yB8AYzOTaL0D5+2a4xEy7OVvbcypvDR05MsB/VVPVA7nL4hc5w5Dyd/ddnayStDgJE59fAgNEOdLhBxjfx5+dg==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.21.5.tgz", + "integrity": "sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==", "cpu": [ "ppc64" ], @@ -1788,9 +2035,9 @@ } }, "node_modules/@esbuild/linux-riscv64": { - "version": "0.21.4", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.21.4.tgz", - "integrity": "sha512-Y5AgOuVzPjQdgU59ramLoqSSiXddu7F3F+LI5hYy/d1UHN7K5oLzYBDZe23QmQJ9PIVUXwOdKJ/jZahPdxzm9w==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.21.5.tgz", + "integrity": "sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==", "cpu": [ "riscv64" ], @@ -1804,9 +2051,9 @@ } }, "node_modules/@esbuild/linux-s390x": { - "version": "0.21.4", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.21.4.tgz", - "integrity": "sha512-Iqc/l/FFwtt8FoTK9riYv9zQNms7B8u+vAI/rxKuN10HgQIXaPzKZc479lZ0x6+vKVQbu55GdpYpeNWzjOhgbA==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.21.5.tgz", + "integrity": "sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==", "cpu": [ "s390x" ], @@ -1820,9 +2067,9 @@ } }, "node_modules/@esbuild/linux-x64": { - "version": "0.21.4", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.21.4.tgz", - "integrity": "sha512-Td9jv782UMAFsuLZINfUpoF5mZIbAj+jv1YVtE58rFtfvoKRiKSkRGQfHTgKamLVT/fO7203bHa3wU122V/Bdg==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.21.5.tgz", + "integrity": "sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==", "cpu": [ "x64" ], @@ -1836,9 +2083,9 @@ } }, "node_modules/@esbuild/netbsd-x64": { - "version": "0.21.4", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.21.4.tgz", - "integrity": "sha512-Awn38oSXxsPMQxaV0Ipb7W/gxZtk5Tx3+W+rAPdZkyEhQ6968r9NvtkjhnhbEgWXYbgV+JEONJ6PcdBS+nlcpA==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.21.5.tgz", + "integrity": "sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==", "cpu": [ "x64" ], @@ -1852,9 +2099,9 @@ } }, "node_modules/@esbuild/openbsd-x64": { - "version": "0.21.4", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.21.4.tgz", - "integrity": "sha512-IsUmQeCY0aU374R82fxIPu6vkOybWIMc3hVGZ3ChRwL9hA1TwY+tS0lgFWV5+F1+1ssuvvXt3HFqe8roCip8Hg==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.21.5.tgz", + "integrity": "sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==", "cpu": [ "x64" ], @@ -1868,9 +2115,9 @@ } }, "node_modules/@esbuild/sunos-x64": { - "version": "0.21.4", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.21.4.tgz", - "integrity": "sha512-hsKhgZ4teLUaDA6FG/QIu2q0rI6I36tZVfM4DBZv3BG0mkMIdEnMbhc4xwLvLJSS22uWmaVkFkqWgIS0gPIm+A==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.21.5.tgz", + "integrity": "sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==", "cpu": [ "x64" ], @@ -1884,9 +2131,9 @@ } }, "node_modules/@esbuild/win32-arm64": { - "version": "0.21.4", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.21.4.tgz", - "integrity": "sha512-UUfMgMoXPoA/bvGUNfUBFLCh0gt9dxZYIx9W4rfJr7+hKe5jxxHmfOK8YSH4qsHLLN4Ck8JZ+v7Q5fIm1huErg==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.21.5.tgz", + "integrity": "sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==", "cpu": [ "arm64" ], @@ -1900,9 +2147,9 @@ } }, "node_modules/@esbuild/win32-ia32": { - "version": "0.21.4", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.21.4.tgz", - "integrity": "sha512-yIxbspZb5kGCAHWm8dexALQ9en1IYDfErzjSEq1KzXFniHv019VT3mNtTK7t8qdy4TwT6QYHI9sEZabONHg+aw==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.21.5.tgz", + "integrity": "sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==", "cpu": [ "ia32" ], @@ -1916,9 +2163,9 @@ } }, "node_modules/@esbuild/win32-x64": { - "version": "0.21.4", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.21.4.tgz", - "integrity": "sha512-sywLRD3UK/qRJt0oBwdpYLBibk7KiRfbswmWRDabuncQYSlf8aLEEUor/oP6KRz8KEG+HoiVLBhPRD5JWjS8Sg==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.21.5.tgz", + "integrity": "sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==", "cpu": [ "x64" ], @@ -1947,9 +2194,9 @@ } }, "node_modules/@eslint-community/regexpp": { - "version": "4.10.0", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.10.0.tgz", - "integrity": "sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA==", + "version": "4.10.1", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.10.1.tgz", + "integrity": "sha512-Zm2NGpWELsQAD1xsJzGQpYfvICSsFkEpU0jxBjfdC6uNEWXcHnfs9hScFWtXVDVl+rBQJGrl4g1vcKIejpH9dA==", "dev": true, "engines": { "node": "^12.0.0 || ^14.0.0 || >=16.0.0" @@ -2038,9 +2285,9 @@ } }, "node_modules/@fastify/ajv-compiler/node_modules/ajv": { - "version": "8.13.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.13.0.tgz", - "integrity": "sha512-PRA911Blj99jR5RMeTunVbNXMF6Lp4vZXnk5GQjcnUWUTsrXtekg/pnmFFI2u/I36Y/2bITGS30GZCXei6uNkA==", + "version": "8.16.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.16.0.tgz", + "integrity": "sha512-F0twR8U1ZU67JIEtekUcLkXkoO5mMMmgGD8sK/xUFzJ805jxHQl92hImFAqqXMyMYjSPOyUPAwHYhB72g5sTXw==", "dependencies": { "fast-deep-equal": "^3.1.3", "json-schema-traverse": "^1.0.0", @@ -2107,6 +2354,7 @@ "version": "0.11.14", "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.14.tgz", "integrity": "sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==", + "deprecated": "Use @eslint/config-array instead", "dev": true, "dependencies": { "@humanwhocodes/object-schema": "^2.0.2", @@ -2156,12 +2404,13 @@ "version": "2.0.3", "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.3.tgz", "integrity": "sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==", + "deprecated": "Use @eslint/object-schema instead", "dev": true }, "node_modules/@img/sharp-darwin-arm64": { - "version": "0.33.3", - "resolved": "https://registry.npmjs.org/@img/sharp-darwin-arm64/-/sharp-darwin-arm64-0.33.3.tgz", - "integrity": "sha512-FaNiGX1MrOuJ3hxuNzWgsT/mg5OHG/Izh59WW2mk1UwYHUwtfbhk5QNKYZgxf0pLOhx9ctGiGa2OykD71vOnSw==", + "version": "0.33.4", + "resolved": "https://registry.npmjs.org/@img/sharp-darwin-arm64/-/sharp-darwin-arm64-0.33.4.tgz", + "integrity": "sha512-p0suNqXufJs9t3RqLBO6vvrgr5OhgbWp76s5gTRvdmxmuv9E1rcaqGUsl3l4mKVmXPkTkTErXediAui4x+8PSA==", "cpu": [ "arm64" ], @@ -2184,9 +2433,9 @@ } }, "node_modules/@img/sharp-darwin-x64": { - "version": "0.33.3", - "resolved": "https://registry.npmjs.org/@img/sharp-darwin-x64/-/sharp-darwin-x64-0.33.3.tgz", - "integrity": "sha512-2QeSl7QDK9ru//YBT4sQkoq7L0EAJZA3rtV+v9p8xTKl4U1bUqTIaCnoC7Ctx2kCjQgwFXDasOtPTCT8eCTXvw==", + "version": "0.33.4", + "resolved": "https://registry.npmjs.org/@img/sharp-darwin-x64/-/sharp-darwin-x64-0.33.4.tgz", + "integrity": "sha512-0l7yRObwtTi82Z6ebVI2PnHT8EB2NxBgpK2MiKJZJ7cz32R4lxd001ecMhzzsZig3Yv9oclvqqdV93jo9hy+Dw==", "cpu": [ "x64" ], @@ -2377,9 +2626,9 @@ } }, "node_modules/@img/sharp-linux-arm": { - "version": "0.33.3", - "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm/-/sharp-linux-arm-0.33.3.tgz", - "integrity": "sha512-Q7Ee3fFSC9P7vUSqVEF0zccJsZ8GiiCJYGWDdhEjdlOeS9/jdkyJ6sUSPj+bL8VuOYFSbofrW0t/86ceVhx32w==", + "version": "0.33.4", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm/-/sharp-linux-arm-0.33.4.tgz", + "integrity": "sha512-RUgBD1c0+gCYZGCCe6mMdTiOFS0Zc/XrN0fYd6hISIKcDUbAW5NtSQW9g/powkrXYm6Vzwd6y+fqmExDuCdHNQ==", "cpu": [ "arm" ], @@ -2402,9 +2651,9 @@ } }, "node_modules/@img/sharp-linux-arm64": { - "version": "0.33.3", - "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm64/-/sharp-linux-arm64-0.33.3.tgz", - "integrity": "sha512-Zf+sF1jHZJKA6Gor9hoYG2ljr4wo9cY4twaxgFDvlG0Xz9V7sinsPp8pFd1XtlhTzYo0IhDbl3rK7P6MzHpnYA==", + "version": "0.33.4", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm64/-/sharp-linux-arm64-0.33.4.tgz", + "integrity": "sha512-2800clwVg1ZQtxwSoTlHvtm9ObgAax7V6MTAB/hDT945Tfyy3hVkmiHpeLPCKYqYR1Gcmv1uDZ3a4OFwkdBL7Q==", "cpu": [ "arm64" ], @@ -2427,9 +2676,9 @@ } }, "node_modules/@img/sharp-linux-s390x": { - "version": "0.33.3", - "resolved": "https://registry.npmjs.org/@img/sharp-linux-s390x/-/sharp-linux-s390x-0.33.3.tgz", - "integrity": "sha512-vFk441DKRFepjhTEH20oBlFrHcLjPfI8B0pMIxGm3+yilKyYeHEVvrZhYFdqIseSclIqbQ3SnZMwEMWonY5XFA==", + "version": "0.33.4", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-s390x/-/sharp-linux-s390x-0.33.4.tgz", + "integrity": "sha512-h3RAL3siQoyzSoH36tUeS0PDmb5wINKGYzcLB5C6DIiAn2F3udeFAum+gj8IbA/82+8RGCTn7XW8WTFnqag4tQ==", "cpu": [ "s390x" ], @@ -2438,7 +2687,7 @@ "linux" ], "engines": { - "glibc": ">=2.28", + "glibc": ">=2.31", "node": "^18.17.0 || ^20.3.0 || >=21.0.0", "npm": ">=9.6.5", "pnpm": ">=7.1.0", @@ -2452,9 +2701,9 @@ } }, "node_modules/@img/sharp-linux-x64": { - "version": "0.33.3", - "resolved": "https://registry.npmjs.org/@img/sharp-linux-x64/-/sharp-linux-x64-0.33.3.tgz", - "integrity": "sha512-Q4I++herIJxJi+qmbySd072oDPRkCg/SClLEIDh5IL9h1zjhqjv82H0Seupd+q2m0yOfD+/fJnjSoDFtKiHu2g==", + "version": "0.33.4", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-x64/-/sharp-linux-x64-0.33.4.tgz", + "integrity": "sha512-GoR++s0XW9DGVi8SUGQ/U4AeIzLdNjHka6jidVwapQ/JebGVQIpi52OdyxCNVRE++n1FCLzjDovJNozif7w/Aw==", "cpu": [ "x64" ], @@ -2477,9 +2726,9 @@ } }, "node_modules/@img/sharp-linuxmusl-arm64": { - "version": "0.33.3", - "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-arm64/-/sharp-linuxmusl-arm64-0.33.3.tgz", - "integrity": "sha512-qnDccehRDXadhM9PM5hLvcPRYqyFCBN31kq+ErBSZtZlsAc1U4Z85xf/RXv1qolkdu+ibw64fUDaRdktxTNP9A==", + "version": "0.33.4", + "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-arm64/-/sharp-linuxmusl-arm64-0.33.4.tgz", + "integrity": "sha512-nhr1yC3BlVrKDTl6cO12gTpXMl4ITBUZieehFvMntlCXFzH2bvKG76tBL2Y/OqhupZt81pR7R+Q5YhJxW0rGgQ==", "cpu": [ "arm64" ], @@ -2502,9 +2751,9 @@ } }, "node_modules/@img/sharp-linuxmusl-x64": { - "version": "0.33.3", - "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-x64/-/sharp-linuxmusl-x64-0.33.3.tgz", - "integrity": "sha512-Jhchim8kHWIU/GZ+9poHMWRcefeaxFIs9EBqf9KtcC14Ojk6qua7ghKiPs0sbeLbLj/2IGBtDcxHyjCdYWkk2w==", + "version": "0.33.4", + "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-x64/-/sharp-linuxmusl-x64-0.33.4.tgz", + "integrity": "sha512-uCPTku0zwqDmZEOi4ILyGdmW76tH7dm8kKlOIV1XC5cLyJ71ENAAqarOHQh0RLfpIpbV5KOpXzdU6XkJtS0daw==", "cpu": [ "x64" ], @@ -2527,15 +2776,15 @@ } }, "node_modules/@img/sharp-wasm32": { - "version": "0.33.3", - "resolved": "https://registry.npmjs.org/@img/sharp-wasm32/-/sharp-wasm32-0.33.3.tgz", - "integrity": "sha512-68zivsdJ0koE96stdUfM+gmyaK/NcoSZK5dV5CAjES0FUXS9lchYt8LAB5rTbM7nlWtxaU/2GON0HVN6/ZYJAQ==", + "version": "0.33.4", + "resolved": "https://registry.npmjs.org/@img/sharp-wasm32/-/sharp-wasm32-0.33.4.tgz", + "integrity": "sha512-Bmmauh4sXUsUqkleQahpdNXKvo+wa1V9KhT2pDA4VJGKwnKMJXiSTGphn0gnJrlooda0QxCtXc6RX1XAU6hMnQ==", "cpu": [ "wasm32" ], "optional": true, "dependencies": { - "@emnapi/runtime": "^1.1.0" + "@emnapi/runtime": "^1.1.1" }, "engines": { "node": "^18.17.0 || ^20.3.0 || >=21.0.0", @@ -2548,9 +2797,9 @@ } }, "node_modules/@img/sharp-win32-ia32": { - "version": "0.33.3", - "resolved": "https://registry.npmjs.org/@img/sharp-win32-ia32/-/sharp-win32-ia32-0.33.3.tgz", - "integrity": "sha512-CyimAduT2whQD8ER4Ux7exKrtfoaUiVr7HG0zZvO0XTFn2idUWljjxv58GxNTkFb8/J9Ub9AqITGkJD6ZginxQ==", + "version": "0.33.4", + "resolved": "https://registry.npmjs.org/@img/sharp-win32-ia32/-/sharp-win32-ia32-0.33.4.tgz", + "integrity": "sha512-99SJ91XzUhYHbx7uhK3+9Lf7+LjwMGQZMDlO/E/YVJ7Nc3lyDFZPGhjwiYdctoH2BOzW9+TnfqcaMKt0jHLdqw==", "cpu": [ "ia32" ], @@ -2569,9 +2818,9 @@ } }, "node_modules/@img/sharp-win32-x64": { - "version": "0.33.3", - "resolved": "https://registry.npmjs.org/@img/sharp-win32-x64/-/sharp-win32-x64-0.33.3.tgz", - "integrity": "sha512-viT4fUIDKnli3IfOephGnolMzhz5VaTvDRkYqtZxOMIoMQ4MrAziO7pT1nVnOt2FAm7qW5aa+CCc13aEY6Le0g==", + "version": "0.33.4", + "resolved": "https://registry.npmjs.org/@img/sharp-win32-x64/-/sharp-win32-x64-0.33.4.tgz", + "integrity": "sha512-3QLocdTRVIrFNye5YocZl+KKpYKP+fksi1QhmOArgx7GyhIbQp/WrJRu176jm8IxromS7RIkzMiMINVdBtC8Aw==", "cpu": [ "x64" ], @@ -2692,11 +2941,6 @@ "fs-extra": "^8.1.0" } }, - "node_modules/@manypkg/find-root/node_modules/@types/node": { - "version": "12.20.55", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", - "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" - }, "node_modules/@manypkg/find-root/node_modules/fs-extra": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", @@ -3629,9 +3873,9 @@ "link": true }, "node_modules/@rollup/rollup-android-arm-eabi": { - "version": "4.17.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.17.2.tgz", - "integrity": "sha512-NM0jFxY8bB8QLkoKxIQeObCaDlJKewVlIEkuyYKm5An1tdVZ966w2+MPQ2l8LBZLjR+SgyV+nRkTIunzOYBMLQ==", + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.18.0.tgz", + "integrity": "sha512-Tya6xypR10giZV1XzxmH5wr25VcZSncG0pZIjfePT0OVBvqNEurzValetGNarVrGiq66EBVAFn15iYX4w6FKgQ==", "cpu": [ "arm" ], @@ -3642,9 +3886,9 @@ ] }, "node_modules/@rollup/rollup-android-arm64": { - "version": "4.17.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.17.2.tgz", - "integrity": "sha512-yeX/Usk7daNIVwkq2uGoq2BYJKZY1JfyLTaHO/jaiSwi/lsf8fTFoQW/n6IdAsx5tx+iotu2zCJwz8MxI6D/Bw==", + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.18.0.tgz", + "integrity": "sha512-avCea0RAP03lTsDhEyfy+hpfr85KfyTctMADqHVhLAF3MlIkq83CP8UfAHUssgXTYd+6er6PaAhx/QGv4L1EiA==", "cpu": [ "arm64" ], @@ -3655,9 +3899,9 @@ ] }, "node_modules/@rollup/rollup-darwin-arm64": { - "version": "4.17.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.17.2.tgz", - "integrity": "sha512-kcMLpE6uCwls023+kknm71ug7MZOrtXo+y5p/tsg6jltpDtgQY1Eq5sGfHcQfb+lfuKwhBmEURDga9N0ol4YPw==", + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.18.0.tgz", + "integrity": "sha512-IWfdwU7KDSm07Ty0PuA/W2JYoZ4iTj3TUQjkVsO/6U+4I1jN5lcR71ZEvRh52sDOERdnNhhHU57UITXz5jC1/w==", "cpu": [ "arm64" ], @@ -3668,9 +3912,9 @@ ] }, "node_modules/@rollup/rollup-darwin-x64": { - "version": "4.17.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.17.2.tgz", - "integrity": "sha512-AtKwD0VEx0zWkL0ZjixEkp5tbNLzX+FCqGG1SvOu993HnSz4qDI6S4kGzubrEJAljpVkhRSlg5bzpV//E6ysTQ==", + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.18.0.tgz", + "integrity": "sha512-n2LMsUz7Ynu7DoQrSQkBf8iNrjOGyPLrdSg802vk6XT3FtsgX6JbE8IHRvposskFm9SNxzkLYGSq9QdpLYpRNA==", "cpu": [ "x64" ], @@ -3681,9 +3925,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm-gnueabihf": { - "version": "4.17.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.17.2.tgz", - "integrity": "sha512-3reX2fUHqN7sffBNqmEyMQVj/CKhIHZd4y631duy0hZqI8Qoqf6lTtmAKvJFYa6bhU95B1D0WgzHkmTg33In0A==", + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.18.0.tgz", + "integrity": "sha512-C/zbRYRXFjWvz9Z4haRxcTdnkPt1BtCkz+7RtBSuNmKzMzp3ZxdM28Mpccn6pt28/UWUCTXa+b0Mx1k3g6NOMA==", "cpu": [ "arm" ], @@ -3694,9 +3938,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm-musleabihf": { - "version": "4.17.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.17.2.tgz", - "integrity": "sha512-uSqpsp91mheRgw96xtyAGP9FW5ChctTFEoXP0r5FAzj/3ZRv3Uxjtc7taRQSaQM/q85KEKjKsZuiZM3GyUivRg==", + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.18.0.tgz", + "integrity": "sha512-l3m9ewPgjQSXrUMHg93vt0hYCGnrMOcUpTz6FLtbwljo2HluS4zTXFy2571YQbisTnfTKPZ01u/ukJdQTLGh9A==", "cpu": [ "arm" ], @@ -3707,9 +3951,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-gnu": { - "version": "4.17.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.17.2.tgz", - "integrity": "sha512-EMMPHkiCRtE8Wdk3Qhtciq6BndLtstqZIroHiiGzB3C5LDJmIZcSzVtLRbwuXuUft1Cnv+9fxuDtDxz3k3EW2A==", + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.18.0.tgz", + "integrity": "sha512-rJ5D47d8WD7J+7STKdCUAgmQk49xuFrRi9pZkWoRD1UeSMakbcepWXPF8ycChBoAqs1pb2wzvbY6Q33WmN2ftw==", "cpu": [ "arm64" ], @@ -3720,9 +3964,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-musl": { - "version": "4.17.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.17.2.tgz", - "integrity": "sha512-NMPylUUZ1i0z/xJUIx6VUhISZDRT+uTWpBcjdv0/zkp7b/bQDF+NfnfdzuTiB1G6HTodgoFa93hp0O1xl+/UbA==", + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.18.0.tgz", + "integrity": "sha512-be6Yx37b24ZwxQ+wOQXXLZqpq4jTckJhtGlWGZs68TgdKXJgw54lUUoFYrg6Zs/kjzAQwEwYbp8JxZVzZLRepQ==", "cpu": [ "arm64" ], @@ -3733,9 +3977,9 @@ ] }, "node_modules/@rollup/rollup-linux-powerpc64le-gnu": { - "version": "4.17.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.17.2.tgz", - "integrity": "sha512-T19My13y8uYXPw/L/k0JYaX1fJKFT/PWdXiHr8mTbXWxjVF1t+8Xl31DgBBvEKclw+1b00Chg0hxE2O7bTG7GQ==", + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.18.0.tgz", + "integrity": "sha512-hNVMQK+qrA9Todu9+wqrXOHxFiD5YmdEi3paj6vP02Kx1hjd2LLYR2eaN7DsEshg09+9uzWi2W18MJDlG0cxJA==", "cpu": [ "ppc64" ], @@ -3746,9 +3990,9 @@ ] }, "node_modules/@rollup/rollup-linux-riscv64-gnu": { - "version": "4.17.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.17.2.tgz", - "integrity": "sha512-BOaNfthf3X3fOWAB+IJ9kxTgPmMqPPH5f5k2DcCsRrBIbWnaJCgX2ll77dV1TdSy9SaXTR5iDXRL8n7AnoP5cg==", + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.18.0.tgz", + "integrity": "sha512-ROCM7i+m1NfdrsmvwSzoxp9HFtmKGHEqu5NNDiZWQtXLA8S5HBCkVvKAxJ8U+CVctHwV2Gb5VUaK7UAkzhDjlg==", "cpu": [ "riscv64" ], @@ -3759,9 +4003,9 @@ ] }, "node_modules/@rollup/rollup-linux-s390x-gnu": { - "version": "4.17.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.17.2.tgz", - "integrity": "sha512-W0UP/x7bnn3xN2eYMql2T/+wpASLE5SjObXILTMPUBDB/Fg/FxC+gX4nvCfPBCbNhz51C+HcqQp2qQ4u25ok6g==", + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.18.0.tgz", + "integrity": "sha512-0UyyRHyDN42QL+NbqevXIIUnKA47A+45WyasO+y2bGJ1mhQrfrtXUpTxCOrfxCR4esV3/RLYyucGVPiUsO8xjg==", "cpu": [ "s390x" ], @@ -3772,9 +4016,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-gnu": { - "version": "4.17.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.17.2.tgz", - "integrity": "sha512-Hy7pLwByUOuyaFC6mAr7m+oMC+V7qyifzs/nW2OJfC8H4hbCzOX07Ov0VFk/zP3kBsELWNFi7rJtgbKYsav9QQ==", + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.18.0.tgz", + "integrity": "sha512-xuglR2rBVHA5UsI8h8UbX4VJ470PtGCf5Vpswh7p2ukaqBGFTnsfzxUBetoWBWymHMxbIG0Cmx7Y9qDZzr648w==", "cpu": [ "x64" ], @@ -3785,9 +4029,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-musl": { - "version": "4.17.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.17.2.tgz", - "integrity": "sha512-h1+yTWeYbRdAyJ/jMiVw0l6fOOm/0D1vNLui9iPuqgRGnXA0u21gAqOyB5iHjlM9MMfNOm9RHCQ7zLIzT0x11Q==", + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.18.0.tgz", + "integrity": "sha512-LKaqQL9osY/ir2geuLVvRRs+utWUNilzdE90TpyoX0eNqPzWjRm14oMEE+YLve4k/NAqCdPkGYDaDF5Sw+xBfg==", "cpu": [ "x64" ], @@ -3798,9 +4042,9 @@ ] }, "node_modules/@rollup/rollup-win32-arm64-msvc": { - "version": "4.17.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.17.2.tgz", - "integrity": "sha512-tmdtXMfKAjy5+IQsVtDiCfqbynAQE/TQRpWdVataHmhMb9DCoJxp9vLcCBjEQWMiUYxO1QprH/HbY9ragCEFLA==", + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.18.0.tgz", + "integrity": "sha512-7J6TkZQFGo9qBKH0pk2cEVSRhJbL6MtfWxth7Y5YmZs57Pi+4x6c2dStAUvaQkHQLnEQv1jzBUW43GvZW8OFqA==", "cpu": [ "arm64" ], @@ -3811,9 +4055,9 @@ ] }, "node_modules/@rollup/rollup-win32-ia32-msvc": { - "version": "4.17.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.17.2.tgz", - "integrity": "sha512-7II/QCSTAHuE5vdZaQEwJq2ZACkBpQDOmQsE6D6XUbnBHW8IAhm4eTufL6msLJorzrHDFv3CF8oCA/hSIRuZeQ==", + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.18.0.tgz", + "integrity": "sha512-Txjh+IxBPbkUB9+SXZMpv+b/vnTEtFyfWZgJ6iyCmt2tdx0OF5WhFowLmnh8ENGNpfUlUZkdI//4IEmhwPieNg==", "cpu": [ "ia32" ], @@ -3824,9 +4068,9 @@ ] }, "node_modules/@rollup/rollup-win32-x64-msvc": { - "version": "4.17.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.17.2.tgz", - "integrity": "sha512-TGGO7v7qOq4CYmSBVEYpI1Y5xDuCEnbVC5Vth8mOsW0gDSzxNrVERPc790IGHsrT2dQSimgMr9Ub3Y1Jci5/8w==", + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.18.0.tgz", + "integrity": "sha512-UOo5FdvOL0+eIVTgS4tIdbW+TtnBLWg1YBCcU2KWM7nuNwRz9bksDX1bekJJCpu25N1DVWaCwnT39dVQxzqS8g==", "cpu": [ "x64" ], @@ -3837,9 +4081,9 @@ ] }, "node_modules/@rushstack/eslint-patch": { - "version": "1.10.2", - "resolved": "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.10.2.tgz", - "integrity": "sha512-hw437iINopmQuxWPSUEvqE56NCPsiU8N4AYtfHmJFckclktzK9YQJieD3XkDCDH4OjL+C7zgPUh73R/nrcHrqw==", + "version": "1.10.3", + "resolved": "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.10.3.tgz", + "integrity": "sha512-qC/xYId4NMebE6w/V33Fh9gWxLgURiNYgVNObbJl2LZv0GUUItCcCqC5axQSwRaAgaxl2mELq1rMzlswaQ0Zxg==", "dev": true }, "node_modules/@swc/counter": { @@ -3856,11 +4100,11 @@ } }, "node_modules/@tanstack/react-virtual": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/@tanstack/react-virtual/-/react-virtual-3.5.0.tgz", - "integrity": "sha512-rtvo7KwuIvqK9zb0VZ5IL7fiJAEnG+0EiFZz8FUOs+2mhGqdGmjKIaT1XU7Zq0eFqL0jonLlhbayJI/J2SA/Bw==", + "version": "3.5.1", + "resolved": "https://registry.npmjs.org/@tanstack/react-virtual/-/react-virtual-3.5.1.tgz", + "integrity": "sha512-jIsuhfgy8GqA67PdWqg73ZB2LFE+HD9hjWL1L6ifEIZVyZVAKpYmgUG4WsKQ005aEyImJmbuimPiEvc57IY0Aw==", "dependencies": { - "@tanstack/virtual-core": "3.5.0" + "@tanstack/virtual-core": "3.5.1" }, "funding": { "type": "github", @@ -3872,9 +4116,9 @@ } }, "node_modules/@tanstack/virtual-core": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/@tanstack/virtual-core/-/virtual-core-3.5.0.tgz", - "integrity": "sha512-KnPRCkQTyqhanNC0K63GBG3wA8I+D1fQuVnAvcBF8f13akOKeQp1gSbu6f77zCxhEk727iV5oQnbHLYzHrECLg==", + "version": "3.5.1", + "resolved": "https://registry.npmjs.org/@tanstack/virtual-core/-/virtual-core-3.5.1.tgz", + "integrity": "sha512-046+AUSiDru/V9pajE1du8WayvBKeCvJ2NmKPy/mR8/SbKKrqmSbj7LJBfXE+nSq4f5TBXvnCzu0kcYebI9WdQ==", "funding": { "type": "github", "url": "https://github.com/sponsors/tannerlinsley" @@ -4018,12 +4262,9 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "20.14.2", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.2.tgz", - "integrity": "sha512-xyu6WAMVwv6AKFLB+e/7ySZVr/0zLCzOa7rSpq6jNwpqOrUbcACDWC+53d4n2QHOnDou0fbIsg8wZu/sxrnI4Q==", - "dependencies": { - "undici-types": "~5.26.4" - } + "version": "12.20.55", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", + "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" }, "node_modules/@types/node-fetch": { "version": "2.6.11", @@ -4287,18 +4528,15 @@ } }, "node_modules/@typescript-eslint/utils": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-7.8.0.tgz", - "integrity": "sha512-L0yFqOCflVqXxiZyXrDr80lnahQfSOfc9ELAAZ75sqicqp2i36kEZZGuUymHNFoYOqxRT05up760b4iGsl02nQ==", + "version": "7.13.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-7.13.0.tgz", + "integrity": "sha512-jceD8RgdKORVnB4Y6BqasfIkFhl4pajB1wVxrF4akxD2QPM8GNYjgGwEzYS+437ewlqqrg7Dw+6dhdpjMpeBFQ==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.4.0", - "@types/json-schema": "^7.0.15", - "@types/semver": "^7.5.8", - "@typescript-eslint/scope-manager": "7.8.0", - "@typescript-eslint/types": "7.8.0", - "@typescript-eslint/typescript-estree": "7.8.0", - "semver": "^7.6.0" + "@typescript-eslint/scope-manager": "7.13.0", + "@typescript-eslint/types": "7.13.0", + "@typescript-eslint/typescript-estree": "7.13.0" }, "engines": { "node": "^18.18.0 || >=20.0.0" @@ -4312,13 +4550,13 @@ } }, "node_modules/@typescript-eslint/utils/node_modules/@typescript-eslint/scope-manager": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-7.8.0.tgz", - "integrity": "sha512-viEmZ1LmwsGcnr85gIq+FCYI7nO90DVbE37/ll51hjv9aG+YZMb4WDE2fyWpUR4O/UrhGRpYXK/XajcGTk2B8g==", + "version": "7.13.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-7.13.0.tgz", + "integrity": "sha512-ZrMCe1R6a01T94ilV13egvcnvVJ1pxShkE0+NDjDzH4nvG1wXpwsVI5bZCvE7AEDH1mXEx5tJSVR68bLgG7Dng==", "dev": true, "dependencies": { - "@typescript-eslint/types": "7.8.0", - "@typescript-eslint/visitor-keys": "7.8.0" + "@typescript-eslint/types": "7.13.0", + "@typescript-eslint/visitor-keys": "7.13.0" }, "engines": { "node": "^18.18.0 || >=20.0.0" @@ -4329,9 +4567,9 @@ } }, "node_modules/@typescript-eslint/utils/node_modules/@typescript-eslint/types": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.8.0.tgz", - "integrity": "sha512-wf0peJ+ZGlcH+2ZS23aJbOv+ztjeeP8uQ9GgwMJGVLx/Nj9CJt17GWgWWoSmoRVKAX2X+7fzEnAjxdvK2gqCLw==", + "version": "7.13.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.13.0.tgz", + "integrity": "sha512-QWuwm9wcGMAuTsxP+qz6LBBd3Uq8I5Nv8xb0mk54jmNoCyDspnMvVsOxI6IsMmway5d1S9Su2+sCKv1st2l6eA==", "dev": true, "engines": { "node": "^18.18.0 || >=20.0.0" @@ -4342,13 +4580,13 @@ } }, "node_modules/@typescript-eslint/utils/node_modules/@typescript-eslint/typescript-estree": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-7.8.0.tgz", - "integrity": "sha512-5pfUCOwK5yjPaJQNy44prjCwtr981dO8Qo9J9PwYXZ0MosgAbfEMB008dJ5sNo3+/BN6ytBPuSvXUg9SAqB0dg==", + "version": "7.13.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-7.13.0.tgz", + "integrity": "sha512-cAvBvUoobaoIcoqox1YatXOnSl3gx92rCZoMRPzMNisDiM12siGilSM4+dJAekuuHTibI2hVC2fYK79iSFvWjw==", "dev": true, "dependencies": { - "@typescript-eslint/types": "7.8.0", - "@typescript-eslint/visitor-keys": "7.8.0", + "@typescript-eslint/types": "7.13.0", + "@typescript-eslint/visitor-keys": "7.13.0", "debug": "^4.3.4", "globby": "^11.1.0", "is-glob": "^4.0.3", @@ -4370,12 +4608,12 @@ } }, "node_modules/@typescript-eslint/utils/node_modules/@typescript-eslint/visitor-keys": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-7.8.0.tgz", - "integrity": "sha512-q4/gibTNBQNA0lGyYQCmWRS5D15n8rXh4QjK3KV+MBPlTYHpfBUT3D3PaPR/HeNiI9W6R7FvlkcGhNyAoP+caA==", + "version": "7.13.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-7.13.0.tgz", + "integrity": "sha512-nxn+dozQx+MK61nn/JP+M4eCkHDSxSLDpgE3WcQo0+fkjEolnaB5jswvIKC4K56By8MMgIho7f1PVxERHEo8rw==", "dev": true, "dependencies": { - "@typescript-eslint/types": "7.8.0", + "@typescript-eslint/types": "7.13.0", "eslint-visitor-keys": "^3.4.3" }, "engines": { @@ -4425,9 +4663,9 @@ "integrity": "sha512-2BjRTZxTPvheOvGbBslFSYOUkr+SjPtOnrLP33f+VIWLzezQpZcqVg7ja3L4dBXmzzgwT+a029jRx5PCi3JuiA==" }, "node_modules/acorn": { - "version": "8.11.3", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.3.tgz", - "integrity": "sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==", + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.12.0.tgz", + "integrity": "sha512-RTvkC4w+KNXrM39/lWCUaG0IbRkWdCv7W/IOW9oU6SawyxulvkQy5HQPVTKxEjczcUvapcrw3cFx/60VN/NRNw==", "bin": { "acorn": "bin/acorn" }, @@ -4500,9 +4738,9 @@ } }, "node_modules/ajv-formats/node_modules/ajv": { - "version": "8.13.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.13.0.tgz", - "integrity": "sha512-PRA911Blj99jR5RMeTunVbNXMF6Lp4vZXnk5GQjcnUWUTsrXtekg/pnmFFI2u/I36Y/2bITGS30GZCXei6uNkA==", + "version": "8.16.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.16.0.tgz", + "integrity": "sha512-F0twR8U1ZU67JIEtekUcLkXkoO5mMMmgGD8sK/xUFzJ805jxHQl92hImFAqqXMyMYjSPOyUPAwHYhB72g5sTXw==", "dependencies": { "fast-deep-equal": "^3.1.3", "json-schema-traverse": "^1.0.0", @@ -4604,11 +4842,6 @@ } ] }, - "node_modules/archy": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz", - "integrity": "sha512-Xg+9RwCg/0p32teKdGMPTPnVXKD0w3DfHnFTficozsAgsvq2XenPJq/MYpzzQ/v8zrOyJn6Ds39VA4JIDwFfqw==" - }, "node_modules/arg": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/arg/-/arg-1.0.0.tgz", @@ -4762,16 +4995,19 @@ } }, "node_modules/array.prototype.tosorted": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/array.prototype.tosorted/-/array.prototype.tosorted-1.1.3.tgz", - "integrity": "sha512-/DdH4TiTmOKzyQbp/eadcCVexiCb36xJg7HshYOYJnNZFDj33GEv0P7GxsynpShhq4OLYJzbGcBDkLsDt7MnNg==", + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/array.prototype.tosorted/-/array.prototype.tosorted-1.1.4.tgz", + "integrity": "sha512-p6Fx8B7b7ZhL/gmUsAy0D15WhvDccw3mnGNbZpi3pmeJdxtWsj2jEaI4Y6oo3XiHfzuSgPwKc04MYt6KgvC/wA==", "dev": true, "dependencies": { - "call-bind": "^1.0.5", + "call-bind": "^1.0.7", "define-properties": "^1.2.1", - "es-abstract": "^1.22.3", - "es-errors": "^1.1.0", + "es-abstract": "^1.23.3", + "es-errors": "^1.3.0", "es-shim-unscopables": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" } }, "node_modules/arraybuffer.prototype.slice": { @@ -4863,13 +5099,11 @@ } }, "node_modules/avvio": { - "version": "8.3.0", - "resolved": "https://registry.npmjs.org/avvio/-/avvio-8.3.0.tgz", - "integrity": "sha512-VBVH0jubFr9LdFASy/vNtm5giTrnbVquWBhT0fyizuNK2rQ7e7ONU2plZQWUNqtE1EmxFEb+kbSkFRkstiaS9Q==", + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/avvio/-/avvio-8.3.2.tgz", + "integrity": "sha512-st8e519GWHa/azv8S87mcJvZs4WsgTBjOw/Ih1CP6u+8SZvcOeAYNG6JbsIrAUUJJ7JfmrnOkR8ipDS+u9SIRQ==", "dependencies": { "@fastify/error": "^3.3.0", - "archy": "^1.0.0", - "debug": "^4.0.0", "fastq": "^1.17.1" } }, @@ -5000,11 +5234,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" @@ -5019,9 +5253,9 @@ } }, "node_modules/browserslist": { - "version": "4.23.0", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz", - "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==", + "version": "4.23.1", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.1.tgz", + "integrity": "sha512-TUfofFo/KsK/bWZ9TWQ5O26tsWW4Uhmt8IYklbnUa70udB6P2wA7w7o4PY4muaEPBQaAX+CEnmmIA41NVHtPVw==", "dev": true, "funding": [ { @@ -5038,10 +5272,10 @@ } ], "dependencies": { - "caniuse-lite": "^1.0.30001587", - "electron-to-chromium": "^1.4.668", + "caniuse-lite": "^1.0.30001629", + "electron-to-chromium": "^1.4.796", "node-releases": "^2.0.14", - "update-browserslist-db": "^1.0.13" + "update-browserslist-db": "^1.0.16" }, "bin": { "browserslist": "cli.js" @@ -5092,9 +5326,9 @@ } }, "node_modules/bundle-require": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/bundle-require/-/bundle-require-4.1.0.tgz", - "integrity": "sha512-FeArRFM+ziGkRViKRnSTbHZc35dgmR9yNog05Kn0+ItI59pOAISGvnnIwW1WgFZQW59IxD9QpJnUPkdIPfZuXg==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/bundle-require/-/bundle-require-4.2.1.tgz", + "integrity": "sha512-7Q/6vkyYAwOmQNRw75x+4yRtZCZJXUDmHHlFdkiV0wgv/reNjtJwpu1jPJ0w2kbEpIM0uoKI3S4/f39dU7AjSA==", "dev": true, "dependencies": { "load-tsconfig": "^0.2.3" @@ -5186,9 +5420,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001617", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001617.tgz", - "integrity": "sha512-mLyjzNI9I+Pix8zwcrpxEbGlfqOkF9kM3ptzmKNw5tizSyYwMe+nGLTqMK9cO+0E+Bh6TsBxNAaHWEM8xwSsmA==", + "version": "1.0.30001636", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001636.tgz", + "integrity": "sha512-bMg2vmr8XBsbL6Lr0UHXy/21m84FTxDLWn2FSqMd5PrlbMxwJlQnC2YWYxVgp66PZE+BBNF2jYQUBKCo1FDeZg==", "funding": [ { "type": "opencollective", @@ -5663,9 +5897,9 @@ } }, "node_modules/core-js-compat": { - "version": "3.37.0", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.37.0.tgz", - "integrity": "sha512-vYq4L+T8aS5UuFg4UwDhc7YNRWVeVZwltad9C/jV3R2LgVOpS9BDr7l/WL6BN0dbV3k1XejPTHqqEzJgsa0frA==", + "version": "3.37.1", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.37.1.tgz", + "integrity": "sha512-9TNiImhKvQqSUkOvk/mMRZzOANTiEVC7WaBNhHcKM7x+/5E1l5NvsysR19zuDQScE8k+kfQXWRN3AtS/eOSHpg==", "dev": true, "dependencies": { "browserslist": "^4.23.0" @@ -6273,9 +6507,9 @@ "integrity": "sha512-okzr3f11N6WuqYtZSvm+F776mB41wRZMhKP+hc34YdW+KmtYYK9iqvHSwo2k9FEH3fhGXvOPV6yz2IcSrfRUDg==" }, "node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "version": "4.3.5", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.5.tgz", + "integrity": "sha512-pt0bNEmneDIvdL1Xsd9oDQ/wrQRkXDT4AUWlNZNPKvW5x/jyO9VFXkJUP07vQ2upmw5PlaITaPKc31jK13V+jg==", "dependencies": { "ms": "2.1.2" }, @@ -6495,9 +6729,9 @@ } }, "node_modules/dompurify": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-3.1.3.tgz", - "integrity": "sha512-5sOWYSNPaxz6o2MUPvtyxTTqR4D3L77pr5rUQoWgD5ROQtVIZQgJkXbo1DLlK3vj11YGw5+LnF4SYti4gZmwng==" + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-3.1.5.tgz", + "integrity": "sha512-lwG+n5h8QNpxtyrJW/gJWckL+1/DQiYMX8f7t8Z2AZTPw1esVrqjI63i7Zc2Gz0aKzLVMYC1V1PL/ky+aY/NgA==" }, "node_modules/dotenv": { "version": "16.4.5", @@ -6541,9 +6775,9 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.763", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.763.tgz", - "integrity": "sha512-k4J8NrtJ9QrvHLRo8Q18OncqBCB7tIUyqxRcJnlonQ0ioHKYB988GcDFF3ZePmnb8eHEopDs/wPHR/iGAFgoUQ==", + "version": "1.4.803", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.803.tgz", + "integrity": "sha512-61H9mLzGOCLLVsnLiRzCbc63uldP0AniRYPV3hbGVtONA1pI7qSGILdbofR7A8TMbOypDocEAjH/e+9k1QIe3g==", "dev": true }, "node_modules/elkjs": { @@ -6567,9 +6801,9 @@ } }, "node_modules/enhanced-resolve": { - "version": "5.16.1", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.16.1.tgz", - "integrity": "sha512-4U5pNsuDl0EhuZpq46M5xPslstkviJuhrdobaRDBk2Jy2KO37FDAJl4lb2KlNabxT0m4MTK2UHNrsAcphE8nyw==", + "version": "5.17.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.17.0.tgz", + "integrity": "sha512-dwDPwZL0dmye8Txp2gzFmA6sxALaSvdRDjPH0viLcKrtlOL3tw62nWWweVD1SdILDTJrbrL6tdWVN58Wo6U3eA==", "dev": true, "dependencies": { "graceful-fs": "^4.2.4", @@ -6762,9 +6996,9 @@ } }, "node_modules/esbuild": { - "version": "0.21.4", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.21.4.tgz", - "integrity": "sha512-sFMcNNrj+Q0ZDolrp5pDhH0nRPN9hLIM3fRPwgbLYJeSHHgnXSnbV3xYgSVuOeLWH9c73VwmEverVzupIv5xuA==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.21.5.tgz", + "integrity": "sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==", "dev": true, "hasInstallScript": true, "bin": { @@ -6774,29 +7008,29 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/aix-ppc64": "0.21.4", - "@esbuild/android-arm": "0.21.4", - "@esbuild/android-arm64": "0.21.4", - "@esbuild/android-x64": "0.21.4", - "@esbuild/darwin-arm64": "0.21.4", - "@esbuild/darwin-x64": "0.21.4", - "@esbuild/freebsd-arm64": "0.21.4", - "@esbuild/freebsd-x64": "0.21.4", - "@esbuild/linux-arm": "0.21.4", - "@esbuild/linux-arm64": "0.21.4", - "@esbuild/linux-ia32": "0.21.4", - "@esbuild/linux-loong64": "0.21.4", - "@esbuild/linux-mips64el": "0.21.4", - "@esbuild/linux-ppc64": "0.21.4", - "@esbuild/linux-riscv64": "0.21.4", - "@esbuild/linux-s390x": "0.21.4", - "@esbuild/linux-x64": "0.21.4", - "@esbuild/netbsd-x64": "0.21.4", - "@esbuild/openbsd-x64": "0.21.4", - "@esbuild/sunos-x64": "0.21.4", - "@esbuild/win32-arm64": "0.21.4", - "@esbuild/win32-ia32": "0.21.4", - "@esbuild/win32-x64": "0.21.4" + "@esbuild/aix-ppc64": "0.21.5", + "@esbuild/android-arm": "0.21.5", + "@esbuild/android-arm64": "0.21.5", + "@esbuild/android-x64": "0.21.5", + "@esbuild/darwin-arm64": "0.21.5", + "@esbuild/darwin-x64": "0.21.5", + "@esbuild/freebsd-arm64": "0.21.5", + "@esbuild/freebsd-x64": "0.21.5", + "@esbuild/linux-arm": "0.21.5", + "@esbuild/linux-arm64": "0.21.5", + "@esbuild/linux-ia32": "0.21.5", + "@esbuild/linux-loong64": "0.21.5", + "@esbuild/linux-mips64el": "0.21.5", + "@esbuild/linux-ppc64": "0.21.5", + "@esbuild/linux-riscv64": "0.21.5", + "@esbuild/linux-s390x": "0.21.5", + "@esbuild/linux-x64": "0.21.5", + "@esbuild/netbsd-x64": "0.21.5", + "@esbuild/openbsd-x64": "0.21.5", + "@esbuild/sunos-x64": "0.21.5", + "@esbuild/win32-arm64": "0.21.5", + "@esbuild/win32-ia32": "0.21.5", + "@esbuild/win32-x64": "0.21.5" } }, "node_modules/escalade": { @@ -6917,12 +7151,12 @@ } }, "node_modules/eslint-config-turbo": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/eslint-config-turbo/-/eslint-config-turbo-2.0.1.tgz", - "integrity": "sha512-Z/TjALEtWvFmi7c2pszuyU8VMrp7KH1q3I4eNBLzlit5kybYDJhacUDYRDyIdGqXg6XljdyDpxNIOKQByScknw==", + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/eslint-config-turbo/-/eslint-config-turbo-2.0.4.tgz", + "integrity": "sha512-zGvU+bxoNWVvSl0prGItrnH9FgeNzKEAjRmv8ruqql1psI37T8IoLF/XeOzT3CzzYzJxuI3wW1yb2agDFYQdHQ==", "dev": true, "dependencies": { - "eslint-plugin-turbo": "2.0.1" + "eslint-plugin-turbo": "2.0.4" }, "peerDependencies": { "eslint": ">6.6.0" @@ -7331,9 +7565,9 @@ } }, "node_modules/eslint-plugin-playwright": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-playwright/-/eslint-plugin-playwright-1.6.0.tgz", - "integrity": "sha512-tI1E/EDbHT4Fx5KvukUG3RTIT0gk44gvTP8bNwxLCFsUXVM98ZJG5zWU6Om5JOzH9FrmN4AhMu/UKyEsu0ZoDA==", + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-playwright/-/eslint-plugin-playwright-1.6.2.tgz", + "integrity": "sha512-mraN4Em3b5jLt01q7qWPyLg0Q5v3KAWfJSlEWwldyUXoa7DSPrBR4k6B6LROLqipsG8ndkwWMdjl1Ffdh15tag==", "dev": true, "workspaces": [ "examples" @@ -7355,29 +7589,29 @@ } }, "node_modules/eslint-plugin-react": { - "version": "7.34.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.34.1.tgz", - "integrity": "sha512-N97CxlouPT1AHt8Jn0mhhN2RrADlUAsk1/atcT2KyA/l9Q/E6ll7OIGwNumFmWfZ9skV3XXccYS19h80rHtgkw==", + "version": "7.34.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.34.2.tgz", + "integrity": "sha512-2HCmrU+/JNigDN6tg55cRDKCQWicYAPB38JGSFDQt95jDm8rrvSUo7YPkOIm5l6ts1j1zCvysNcasvfTMQzUOw==", "dev": true, "dependencies": { - "array-includes": "^3.1.7", - "array.prototype.findlast": "^1.2.4", + "array-includes": "^3.1.8", + "array.prototype.findlast": "^1.2.5", "array.prototype.flatmap": "^1.3.2", "array.prototype.toreversed": "^1.1.2", "array.prototype.tosorted": "^1.1.3", "doctrine": "^2.1.0", - "es-iterator-helpers": "^1.0.17", + "es-iterator-helpers": "^1.0.19", "estraverse": "^5.3.0", "jsx-ast-utils": "^2.4.1 || ^3.0.0", "minimatch": "^3.1.2", - "object.entries": "^1.1.7", - "object.fromentries": "^2.0.7", - "object.hasown": "^1.1.3", - "object.values": "^1.1.7", + "object.entries": "^1.1.8", + "object.fromentries": "^2.0.8", + "object.hasown": "^1.1.4", + "object.values": "^1.2.0", "prop-types": "^15.8.1", "resolve": "^2.0.0-next.5", "semver": "^6.3.1", - "string.prototype.matchall": "^4.0.10" + "string.prototype.matchall": "^4.0.11" }, "engines": { "node": ">=4" @@ -7607,9 +7841,9 @@ } }, "node_modules/eslint-plugin-turbo": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-turbo/-/eslint-plugin-turbo-2.0.1.tgz", - "integrity": "sha512-qe3WlGQXVKIZyWlONjvd3+YbtptK6KvfoLb6TrVzkT+mNYbDpjjbGZ3z12Oj0kUNW31n5Me3EVnrgxeyyw1V3g==", + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/eslint-plugin-turbo/-/eslint-plugin-turbo-2.0.4.tgz", + "integrity": "sha512-Ozn//vTXJeqIEvEkThM2vuuldMckPqAne7vg/S3GxF+BBY516cjdp7+dYpCU5Q0083hVm638c8542ubccNE+8w==", "dev": true, "dependencies": { "dotenv": "16.0.3" @@ -8262,9 +8496,9 @@ "dev": true }, "node_modules/fast-json-stringify": { - "version": "5.15.1", - "resolved": "https://registry.npmjs.org/fast-json-stringify/-/fast-json-stringify-5.15.1.tgz", - "integrity": "sha512-JopGtkvvguRqrS4gHXSSA2jf4pDgOZkeBAkLO1LbzOpiOMo7/kugoR+KiWifpLpluaVeYDkAuxCJOj4Gyc6L9A==", + "version": "5.16.0", + "resolved": "https://registry.npmjs.org/fast-json-stringify/-/fast-json-stringify-5.16.0.tgz", + "integrity": "sha512-A4bg6E15QrkuVO3f0SwIASgzMzR6XC4qTyTqhf3hYXy0iazbAdZKwkE+ox4WgzKyzM6ygvbdq3r134UjOaaAnA==", "dependencies": { "@fastify/merge-json-schemas": "^0.1.0", "ajv": "^8.10.0", @@ -8276,9 +8510,9 @@ } }, "node_modules/fast-json-stringify/node_modules/ajv": { - "version": "8.13.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.13.0.tgz", - "integrity": "sha512-PRA911Blj99jR5RMeTunVbNXMF6Lp4vZXnk5GQjcnUWUTsrXtekg/pnmFFI2u/I36Y/2bITGS30GZCXei6uNkA==", + "version": "8.16.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.16.0.tgz", + "integrity": "sha512-F0twR8U1ZU67JIEtekUcLkXkoO5mMMmgGD8sK/xUFzJ805jxHQl92hImFAqqXMyMYjSPOyUPAwHYhB72g5sTXw==", "dependencies": { "fast-deep-equal": "^3.1.3", "json-schema-traverse": "^1.0.0", @@ -8340,9 +8574,9 @@ "dev": true }, "node_modules/fast-uri": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-2.3.0.tgz", - "integrity": "sha512-eel5UKGn369gGEWOqBShmFJWfq/xSJvsgDzgLYC845GneayWvXBf0lJCBn5qTABfewy1ZDPoaR5OZCP+kssfuw==" + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-2.4.0.tgz", + "integrity": "sha512-ypuAmmMKInk5q7XcepxlnUWDLWv4GFtaJqAzWKqn62IpQ3pejtr5dTVbt3vwqVaMKmkNR55sTT+CqUKIaT21BA==" }, "node_modules/fastify": { "version": "4.27.0", @@ -8404,9 +8638,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" }, @@ -8476,6 +8710,7 @@ "version": "7.2.3", "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", "dev": true, "dependencies": { "fs.realpath": "^1.0.0", @@ -8508,6 +8743,7 @@ "version": "3.0.2", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "deprecated": "Rimraf versions prior to v4 are no longer supported", "dev": true, "dependencies": { "glob": "^7.1.3" @@ -8564,9 +8800,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.1", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.2.1.tgz", + "integrity": "sha512-PXUUyLqrR2XCWICfv6ukppP96sdFwWbNEnfEMt7jNsISjMsvaLNinAHNDYyvkyU+SZG2BTSbT5NjG+vZslfGTA==", "dev": true, "dependencies": { "cross-spawn": "^7.0.0", @@ -8912,9 +9148,9 @@ } }, "node_modules/glob/node_modules/jackspeak": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.1.2.tgz", - "integrity": "sha512-kWmLKn2tRtfYMF/BakihVVRzBKOxz4gJMiL2Rj91WnAB5TPZumSH99R/Yf1qE1u4uRimvCSJfm6hnxohXeEXjQ==", + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.0.tgz", + "integrity": "sha512-JVYhQnN59LVPFCEcVa2C3CrEKYacvjRfqIQl+h8oi91aLYQVWRYbxjPcv1bUiUy/kLmQaANrYfNMCO3kuEDHfw==", "dev": true, "dependencies": { "@isaacs/cliui": "^8.0.2" @@ -9668,6 +9904,7 @@ "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", "dev": true, "dependencies": { "once": "^1.3.0", @@ -10471,9 +10708,9 @@ } }, "node_modules/language-subtag-registry": { - "version": "0.3.22", - "resolved": "https://registry.npmjs.org/language-subtag-registry/-/language-subtag-registry-0.3.22.tgz", - "integrity": "sha512-tN0MCzyWnoz/4nHS6uxdlFWoUZT7ABptwKPQ52Ea7URk6vll88bWBVhodtnlfEuCcKWNGoc+uGbw1cwa9IKh/w==", + "version": "0.3.23", + "resolved": "https://registry.npmjs.org/language-subtag-registry/-/language-subtag-registry-0.3.23.tgz", + "integrity": "sha512-0K65Lea881pHotoGEa5gDlMxt3pctLi2RplBb7Ezh4rRdLEOtgi7n4EwK9lamnUCkKBqaeKRVebTq6BAxSkpXQ==", "dev": true }, "node_modules/language-tags": { @@ -10526,9 +10763,9 @@ } }, "node_modules/lilconfig": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-3.1.1.tgz", - "integrity": "sha512-O18pf7nyvHTckunPWCV1XUNXU1piu01y2b7ATJ0ppkUkk8ocqVWBrYjJBCwHDjD/ZWcfyrA0P4gKhzWGi5EINQ==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-3.1.2.tgz", + "integrity": "sha512-eop+wDAvpItUys0FWkHIKeC9ybYrTGbU41U5K7+bttZZeohvnY7M9dZ5kB21GNWiFT2q1OoPTvncPCgSOVO5ow==", "dev": true, "engines": { "node": ">=14" @@ -11006,9 +11243,9 @@ } }, "node_modules/mdast-util-to-hast": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-13.1.0.tgz", - "integrity": "sha512-/e2l/6+OdGp/FB+ctrJ9Avz71AN/GRH3oi/3KAx/kMnoUsD6q0woXlDT8lLEeViVKE7oZxE7RXzvO3T8kF2/sA==", + "version": "13.2.0", + "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-13.2.0.tgz", + "integrity": "sha512-QGYKEuUsYT9ykKBCMOEDLsU5JRObWQusAolFMeko/tYPufNkRffBAQjIE+99jbA87xv6FgmjLtwjh9wBWajwAA==", "dependencies": { "@types/hast": "^3.0.0", "@types/mdast": "^4.0.0", @@ -11034,9 +11271,9 @@ } }, "node_modules/mdast-util-to-hast/node_modules/@types/mdast": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-4.0.3.tgz", - "integrity": "sha512-LsjtqsyF+d2/yFOYaN22dHZI1Cpwkrj+g06G8+qtUKlhovPW89YhqSnfKtMbkgmEtYpH2gydRNULd6y8mciAFg==", + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-4.0.4.tgz", + "integrity": "sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==", "dependencies": { "@types/unist": "*" } @@ -11276,9 +11513,9 @@ } }, "node_modules/mermaid": { - "version": "10.9.0", - "resolved": "https://registry.npmjs.org/mermaid/-/mermaid-10.9.0.tgz", - "integrity": "sha512-swZju0hFox/B/qoLKK0rOxxgh8Cf7rJSfAUc1u8fezVihYMvrJAS45GzAxTVf4Q+xn9uMgitBcmWk7nWGXOs/g==", + "version": "10.9.1", + "resolved": "https://registry.npmjs.org/mermaid/-/mermaid-10.9.1.tgz", + "integrity": "sha512-Mx45Obds5W1UkW1nv/7dHRsbfMM1aOKA2+Pxs/IGHNonygDHwmng8xTHyS9z4KWVi0rbko8gjiBmuwwXQ7tiNA==", "dependencies": { "@braintree/sanitize-url": "^6.0.1", "@types/d3-scale": "^4.0.3", @@ -12067,11 +12304,11 @@ ] }, "node_modules/micromatch": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", - "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.7.tgz", + "integrity": "sha512-LPP/3KorzCwBxfeUuZmaR6bG2kdeHSbe0P2tY3FLRU4vYrjYz5hI4QZwV0njUx3jeuKe67YukQ1LSPZBKDqO/Q==", "dependencies": { - "braces": "^3.0.2", + "braces": "^3.0.3", "picomatch": "^2.3.1" }, "engines": { @@ -12275,11 +12512,12 @@ } }, "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==", + "peer": true, "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", @@ -12294,15 +12532,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", @@ -12363,14 +12601,15 @@ } }, "node_modules/next/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==", + "peer": true }, "node_modules/next/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" ], @@ -12378,14 +12617,15 @@ "os": [ "darwin" ], + "peer": true, "engines": { "node": ">= 10" } }, "node_modules/next/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" ], @@ -12393,14 +12633,15 @@ "os": [ "darwin" ], + "peer": true, "engines": { "node": ">= 10" } }, "node_modules/next/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" ], @@ -12408,14 +12649,15 @@ "os": [ "linux" ], + "peer": true, "engines": { "node": ">= 10" } }, "node_modules/next/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" ], @@ -12423,14 +12665,15 @@ "os": [ "linux" ], + "peer": true, "engines": { "node": ">= 10" } }, "node_modules/next/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" ], @@ -12438,14 +12681,15 @@ "os": [ "linux" ], + "peer": true, "engines": { "node": ">= 10" } }, "node_modules/next/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" ], @@ -12453,14 +12697,15 @@ "os": [ "linux" ], + "peer": true, "engines": { "node": ">= 10" } }, "node_modules/next/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" ], @@ -12468,14 +12713,15 @@ "os": [ "win32" ], + "peer": true, "engines": { "node": ">= 10" } }, "node_modules/next/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" ], @@ -12483,14 +12729,15 @@ "os": [ "win32" ], + "peer": true, "engines": { "node": ">= 10" } }, "node_modules/next/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" ], @@ -12498,6 +12745,7 @@ "os": [ "win32" ], + "peer": true, "engines": { "node": ">= 10" } @@ -12506,6 +12754,7 @@ "version": "0.5.5", "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.5.tgz", "integrity": "sha512-KGYxvIOXcceOAbEk4bi/dVLEK9z8sZ0uBB3Il5b1rhfClSpcX0yfRO0KmTkqR2cnQDymwLB+25ZyMzICg/cm/A==", + "peer": true, "dependencies": { "@swc/counter": "^0.1.3", "tslib": "^2.4.0" @@ -12793,9 +13042,9 @@ } }, "node_modules/openai": { - "version": "4.45.0", - "resolved": "https://registry.npmjs.org/openai/-/openai-4.45.0.tgz", - "integrity": "sha512-uszUQrl9eQPCA9a7Zml+Eizb3mG0JDd8zUl528OM6Ccn039dqbOmUivL5s8zUM6iJMRMvNGRMXS9yuuR1Bv2sw==", + "version": "4.51.0", + "resolved": "https://registry.npmjs.org/openai/-/openai-4.51.0.tgz", + "integrity": "sha512-UKuWc3/qQyklqhHM8CbdXCv0Z0obap6T0ECdcO5oATQxAbKE5Ky3YCXFQY207z+eGG6ez4U9wvAcuMygxhmStg==", "peer": true, "dependencies": { "@types/node": "^18.11.18", @@ -12812,9 +13061,9 @@ } }, "node_modules/openai/node_modules/@types/node": { - "version": "18.19.33", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.33.tgz", - "integrity": "sha512-NR9+KrpSajr2qBVp/Yt5TU/rp+b5Mayi3+OlMlcg2cVCfRmcG5PWZ7S4+MG9PZ5gWBoc9Pd0BKSRViuBCRPu0A==", + "version": "18.19.34", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.34.tgz", + "integrity": "sha512-eXF4pfBNV5DAMKGbI02NnDtWrQ40hAN558/2vvS4gMpMIxaf6JmD7YjnZbq0Q9TDSSkKBamime8ewRoomHdt4g==", "peer": true, "dependencies": { "undici-types": "~5.26.4" @@ -13094,9 +13343,9 @@ } }, "node_modules/picocolors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.1.tgz", + "integrity": "sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==" }, "node_modules/picomatch": { "version": "2.3.1", @@ -14443,9 +14692,9 @@ } }, "node_modules/rfdc": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.3.1.tgz", - "integrity": "sha512-r5a3l5HzYlIC68TpmYKlxWjmOP6wiPJ1vWv2HeLhNsRZMrCkxeqxiHlQ21oXmQ4F3SiryXBHhAD7JZqvOJjFmg==" + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.4.1.tgz", + "integrity": "sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==" }, "node_modules/rimraf": { "version": "5.0.7", @@ -14471,9 +14720,9 @@ "integrity": "sha512-IXgzBWvWQwE6PrDI05OvmXUIruQTcoMDzRsOd5CDvHCVLcLHMTSYvOK5Cm46kWqlV3yAbuSpBZdJ5oP5OUoStg==" }, "node_modules/rollup": { - "version": "4.17.2", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.17.2.tgz", - "integrity": "sha512-/9ClTJPByC0U4zNLowV1tMBe8yMEAxewtR3cUNX5BoEpGH3dQEWpJLr6CLp0fPdYRF/fzVOgvDb1zXuakwF5kQ==", + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.18.0.tgz", + "integrity": "sha512-QmJz14PX3rzbJCN1SG4Xe/bAAX2a6NpCP8ab2vfu2GiUr8AQcr2nCV/oEO3yneFarB67zk8ShlIyWb2LGTb3Sg==", "dev": true, "dependencies": { "@types/estree": "1.0.5" @@ -14486,22 +14735,22 @@ "npm": ">=8.0.0" }, "optionalDependencies": { - "@rollup/rollup-android-arm-eabi": "4.17.2", - "@rollup/rollup-android-arm64": "4.17.2", - "@rollup/rollup-darwin-arm64": "4.17.2", - "@rollup/rollup-darwin-x64": "4.17.2", - "@rollup/rollup-linux-arm-gnueabihf": "4.17.2", - "@rollup/rollup-linux-arm-musleabihf": "4.17.2", - "@rollup/rollup-linux-arm64-gnu": "4.17.2", - "@rollup/rollup-linux-arm64-musl": "4.17.2", - "@rollup/rollup-linux-powerpc64le-gnu": "4.17.2", - "@rollup/rollup-linux-riscv64-gnu": "4.17.2", - "@rollup/rollup-linux-s390x-gnu": "4.17.2", - "@rollup/rollup-linux-x64-gnu": "4.17.2", - "@rollup/rollup-linux-x64-musl": "4.17.2", - "@rollup/rollup-win32-arm64-msvc": "4.17.2", - "@rollup/rollup-win32-ia32-msvc": "4.17.2", - "@rollup/rollup-win32-x64-msvc": "4.17.2", + "@rollup/rollup-android-arm-eabi": "4.18.0", + "@rollup/rollup-android-arm64": "4.18.0", + "@rollup/rollup-darwin-arm64": "4.18.0", + "@rollup/rollup-darwin-x64": "4.18.0", + "@rollup/rollup-linux-arm-gnueabihf": "4.18.0", + "@rollup/rollup-linux-arm-musleabihf": "4.18.0", + "@rollup/rollup-linux-arm64-gnu": "4.18.0", + "@rollup/rollup-linux-arm64-musl": "4.18.0", + "@rollup/rollup-linux-powerpc64le-gnu": "4.18.0", + "@rollup/rollup-linux-riscv64-gnu": "4.18.0", + "@rollup/rollup-linux-s390x-gnu": "4.18.0", + "@rollup/rollup-linux-x64-gnu": "4.18.0", + "@rollup/rollup-linux-x64-musl": "4.18.0", + "@rollup/rollup-win32-arm64-msvc": "4.18.0", + "@rollup/rollup-win32-ia32-msvc": "4.18.0", + "@rollup/rollup-win32-x64-msvc": "4.18.0", "fsevents": "~2.3.2" } }, @@ -14637,9 +14886,9 @@ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, "node_modules/sax": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.3.0.tgz", - "integrity": "sha512-0s+oAmw9zLl1V1cS9BtZN7JAd0cW5e0QH4W3LWEK6a4LaLEA2OTpGYWDY+6XasBLtz6wkm3u1xRw95mRuJ59WA==", + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.4.1.tgz", + "integrity": "sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg==", "dev": true }, "node_modules/scheduler": { @@ -14727,9 +14976,9 @@ } }, "node_modules/sharp": { - "version": "0.33.3", - "resolved": "https://registry.npmjs.org/sharp/-/sharp-0.33.3.tgz", - "integrity": "sha512-vHUeXJU1UvlO/BNwTpT0x/r53WkLUVxrmb5JTgW92fdFCFk0ispLMAeu/jPO2vjkXM1fYUi3K7/qcLF47pwM1A==", + "version": "0.33.4", + "resolved": "https://registry.npmjs.org/sharp/-/sharp-0.33.4.tgz", + "integrity": "sha512-7i/dt5kGl7qR4gwPRD2biwD2/SvBn3O04J77XKFgL2OnZtQw+AG9wnuS/csmu80nPRHLYE9E41fyEiG8nhH6/Q==", "hasInstallScript": true, "optional": true, "dependencies": { @@ -14745,8 +14994,8 @@ "url": "https://opencollective.com/libvips" }, "optionalDependencies": { - "@img/sharp-darwin-arm64": "0.33.3", - "@img/sharp-darwin-x64": "0.33.3", + "@img/sharp-darwin-arm64": "0.33.4", + "@img/sharp-darwin-x64": "0.33.4", "@img/sharp-libvips-darwin-arm64": "1.0.2", "@img/sharp-libvips-darwin-x64": "1.0.2", "@img/sharp-libvips-linux-arm": "1.0.2", @@ -14755,15 +15004,15 @@ "@img/sharp-libvips-linux-x64": "1.0.2", "@img/sharp-libvips-linuxmusl-arm64": "1.0.2", "@img/sharp-libvips-linuxmusl-x64": "1.0.2", - "@img/sharp-linux-arm": "0.33.3", - "@img/sharp-linux-arm64": "0.33.3", - "@img/sharp-linux-s390x": "0.33.3", - "@img/sharp-linux-x64": "0.33.3", - "@img/sharp-linuxmusl-arm64": "0.33.3", - "@img/sharp-linuxmusl-x64": "0.33.3", - "@img/sharp-wasm32": "0.33.3", - "@img/sharp-win32-ia32": "0.33.3", - "@img/sharp-win32-x64": "0.33.3" + "@img/sharp-linux-arm": "0.33.4", + "@img/sharp-linux-arm64": "0.33.4", + "@img/sharp-linux-s390x": "0.33.4", + "@img/sharp-linux-x64": "0.33.4", + "@img/sharp-linuxmusl-arm64": "0.33.4", + "@img/sharp-linuxmusl-x64": "0.33.4", + "@img/sharp-wasm32": "0.33.4", + "@img/sharp-win32-ia32": "0.33.4", + "@img/sharp-win32-x64": "0.33.4" } }, "node_modules/shebang-command": { @@ -15256,9 +15505,9 @@ } }, "node_modules/spdx-license-ids": { - "version": "3.0.17", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.17.tgz", - "integrity": "sha512-sh8PWc/ftMqAAdFiBu6Fy6JUOYjqDJBJvIhpfDMyHrr0Rbp5liZqd4TjtQ/RgfLjKFZb+LMx5hpml5qOWy0qvg==" + "version": "3.0.18", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.18.tgz", + "integrity": "sha512-xxRs31BqRYHwiMzudOrpSiHtZ8i/GeionCBDSilhYRj+9gIcI8wCZTlXZKu9vZIVqViP3dcp9qE5G6AlIaD+TQ==" }, "node_modules/split2": { "version": "4.2.0", @@ -15632,9 +15881,9 @@ } }, "node_modules/systeminformation": { - "version": "5.22.8", - "resolved": "https://registry.npmjs.org/systeminformation/-/systeminformation-5.22.8.tgz", - "integrity": "sha512-F1iWQ+PSfOzvLMGh2UXASaWLDq5o+1h1db13Kddl6ojcQ47rsJhpMtRrmBXfTA5QJgutC4KV67YRmXLuroIxrA==", + "version": "5.22.11", + "resolved": "https://registry.npmjs.org/systeminformation/-/systeminformation-5.22.11.tgz", + "integrity": "sha512-aLws5yi4KCHTb0BVvbodQY5bY8eW4asMRDTxTW46hqw9lGjACX6TlLdJrkdoHYRB0qs+MekqEq1zG7WDnWE8Ug==", "dev": true, "optional": true, "os": [ @@ -15706,9 +15955,9 @@ } }, "node_modules/thread-stream": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/thread-stream/-/thread-stream-3.0.0.tgz", - "integrity": "sha512-oUIFjxaUT6knhPtWgDMc29zF1FcSl0yXpapkyrQrCGEfYA2HUZXCilUtKyYIv6HkCyqSPAMkY+EG0GbyIrNDQg==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/thread-stream/-/thread-stream-3.1.0.tgz", + "integrity": "sha512-OqyPZ9u96VohAyMfJykzmivOrY2wfMSf3C5TtFJVgN+Hm6aj+voFhlK+kZEIv2FBh1X6Xp3DlnCOfEQ3B2J86A==", "dependencies": { "real-require": "^0.2.0" } @@ -15906,9 +16155,9 @@ } }, "node_modules/tslib": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", - "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==" + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.3.tgz", + "integrity": "sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ==" }, "node_modules/tsup": { "version": "8.1.0", @@ -16616,26 +16865,26 @@ } }, "node_modules/turbo": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/turbo/-/turbo-2.0.1.tgz", - "integrity": "sha512-sJhxfBaN14pYj//xxAG6zAyStkE2j4HI9JVXVMob35SGob6dz/HuSqV/4QlVqw0uKAkwc1lXIsnykbe8RLmOOw==", + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/turbo/-/turbo-2.0.4.tgz", + "integrity": "sha512-Ilme/2Q5kYw0AeRr+aw3s02+WrEYaY7U8vPnqSZU/jaDG/qd6jHVN6nRWyd/9KXvJGYM69vE6JImoGoyNjLwaw==", "dev": true, "bin": { "turbo": "bin/turbo" }, "optionalDependencies": { - "turbo-darwin-64": "2.0.1", - "turbo-darwin-arm64": "2.0.1", - "turbo-linux-64": "2.0.1", - "turbo-linux-arm64": "2.0.1", - "turbo-windows-64": "2.0.1", - "turbo-windows-arm64": "2.0.1" + "turbo-darwin-64": "2.0.4", + "turbo-darwin-arm64": "2.0.4", + "turbo-linux-64": "2.0.4", + "turbo-linux-arm64": "2.0.4", + "turbo-windows-64": "2.0.4", + "turbo-windows-arm64": "2.0.4" } }, "node_modules/turbo-darwin-64": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/turbo-darwin-64/-/turbo-darwin-64-2.0.1.tgz", - "integrity": "sha512-GO391pUmI6c6l/EpUIaXNzwbVDWRvYahm5oLB176dAWRYKYO+Osqs/XBdOM0G3l7ZFdR6nUtRJc8qinJp7qDUQ==", + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/turbo-darwin-64/-/turbo-darwin-64-2.0.4.tgz", + "integrity": "sha512-x9mvmh4wudBstML8Z8IOmokLWglIhSfhQwnh2gBCSqabgVBKYvzl8Y+i+UCNPxheCGTgtsPepTcIaKBIyFIcvw==", "cpu": [ "x64" ], @@ -16646,9 +16895,9 @@ ] }, "node_modules/turbo-darwin-arm64": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/turbo-darwin-arm64/-/turbo-darwin-arm64-2.0.1.tgz", - "integrity": "sha512-rmjJoxeq7nmH/F2aWKapahrDE2zE2Uc15rvs4Rz6qHOzSqC8R5uyLpQyTKIPIZ95O/z9nKfLfVPyiRENuk5vpw==", + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/turbo-darwin-arm64/-/turbo-darwin-arm64-2.0.4.tgz", + "integrity": "sha512-/B1Ih8zPRGVw5vw4SlclOf3C/woJ/2T6ieH6u54KT4wypoaVyaiyMqBcziIXycdObIYr7jQ+raHO7q3mhay9/A==", "cpu": [ "arm64" ], @@ -16659,9 +16908,9 @@ ] }, "node_modules/turbo-linux-64": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/turbo-linux-64/-/turbo-linux-64-2.0.1.tgz", - "integrity": "sha512-vwTOc4v4jm6tM+9WlsiDlN+zwHP8A2wlsAYiNqz2u0DZL55aCWaVdivh2VpVLN36Mr9HgREGH0Fw+jx6ObcNRg==", + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/turbo-linux-64/-/turbo-linux-64-2.0.4.tgz", + "integrity": "sha512-6aG670e5zOWu6RczEYcB81nEl8EhiGJEvWhUrnAfNEUIMBEH1pR5SsMmG2ol5/m3PgiRM12r13dSqTxCLcHrVg==", "cpu": [ "x64" ], @@ -16672,9 +16921,9 @@ ] }, "node_modules/turbo-linux-arm64": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/turbo-linux-arm64/-/turbo-linux-arm64-2.0.1.tgz", - "integrity": "sha512-DkVt76fjwY940DfmqznWhpYIlKYduvKAoTtylkERrDlcWUpDYWwqNbcf9PRRIbnjnv9lIxvuom1KZmMY+cw/Ig==", + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/turbo-linux-arm64/-/turbo-linux-arm64-2.0.4.tgz", + "integrity": "sha512-AXfVOjst+mCtPDFT4tCu08Qrfv12Nj7NDd33AjGwV79NYN1Y1rcFY59UQ4nO3ij3rbcvV71Xc+TZJ4csEvRCSg==", "cpu": [ "arm64" ], @@ -16685,9 +16934,9 @@ ] }, "node_modules/turbo-windows-64": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/turbo-windows-64/-/turbo-windows-64-2.0.1.tgz", - "integrity": "sha512-XskV34kYuXVIHbRbgH8jr35Y8uA6kJOQ0LJStU4jFk7piiyk0a4n2GNDymMtvIwAxYdbuTe+pKuPCThFdirHBQ==", + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/turbo-windows-64/-/turbo-windows-64-2.0.4.tgz", + "integrity": "sha512-QOnUR9hKl0T5gq5h1fAhVEqBSjpcBi/BbaO71YGQNgsr6pAnCQdbG8/r3MYXet53efM0KTdOhieWeO3KLNKybA==", "cpu": [ "x64" ], @@ -16698,9 +16947,9 @@ ] }, "node_modules/turbo-windows-arm64": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/turbo-windows-arm64/-/turbo-windows-arm64-2.0.1.tgz", - "integrity": "sha512-R2/RmKr2uQxkOCtXK5LNxdD3Iv7lUm56iy2FrDwTDgPI7X7K6WRjrxdirmFIu/fABYE5n6EampU3ejbG5mmGtg==", + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/turbo-windows-arm64/-/turbo-windows-arm64-2.0.4.tgz", + "integrity": "sha512-3v8WpdZy1AxZw0gha0q3caZmm+0gveBQ40OspD6mxDBIS+oBtO5CkxhIXkFJJW+jDKmDlM7wXDIGfMEq+QyNCQ==", "cpu": [ "arm64" ], @@ -17101,9 +17350,9 @@ } }, "node_modules/update-browserslist-db": { - "version": "1.0.15", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.15.tgz", - "integrity": "sha512-K9HWH62x3/EalU1U6sjSZiylm9C8tgq2mSvshZpqc7QE69RaA2qjhkW2HlNA0tFpEbtyFz7HTqbSdN4MSwUodA==", + "version": "1.0.16", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.16.tgz", + "integrity": "sha512-KVbTxlBYlckhF5wgfyZXTWnMn7MMZjMu9XG8bPlliUOP9ThaF4QnhP8qrjrH7DRzHfSk0oQv1wToW+iA5GajEQ==", "dev": true, "funding": [ { @@ -17121,7 +17370,7 @@ ], "dependencies": { "escalade": "^3.1.2", - "picocolors": "^1.0.0" + "picocolors": "^1.0.1" }, "bin": { "update-browserslist-db": "cli.js" @@ -17672,9 +17921,9 @@ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" }, "node_modules/yaml": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.4.2.tgz", - "integrity": "sha512-B3VqDZ+JAg1nZpaEmWtTXUlBneoGx6CPM9b0TENK6aoSu5t73dItudwdgmi6tHlIZZId4dZ9skcAQ2UbcyAeVA==", + "version": "2.4.5", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.4.5.tgz", + "integrity": "sha512-aBx2bnqDzVOyNKfsysjA2ms5ZlnjSAW2eG3/L5G/CSujfjLJTJsEw1bGw8kCf04KodQWk1pxlGnZ56CRxiawmg==", "dev": true, "bin": { "yaml": "bin.mjs" @@ -17788,6 +18037,15 @@ "redis": ">=4.6" } }, + "packages/cache-handler/node_modules/@types/node": { + "version": "20.14.2", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.2.tgz", + "integrity": "sha512-xyu6WAMVwv6AKFLB+e/7ySZVr/0zLCzOa7rSpq6jNwpqOrUbcACDWC+53d4n2QHOnDou0fbIsg8wZu/sxrnI4Q==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "packages/diffscribe": { "version": "0.2.4", "license": "MIT", @@ -17806,6 +18064,15 @@ "openai": "^4.12.3" } }, + "packages/diffscribe/node_modules/@types/node": { + "version": "20.14.2", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.2.tgz", + "integrity": "sha512-xyu6WAMVwv6AKFLB+e/7ySZVr/0zLCzOa7rSpq6jNwpqOrUbcACDWC+53d4n2QHOnDou0fbIsg8wZu/sxrnI4Q==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "packages/json-replacer-reviver": { "name": "@neshca/json-replacer-reviver", "version": "1.1.3", @@ -17819,6 +18086,15 @@ "typescript": "5.4.5" } }, + "packages/json-replacer-reviver/node_modules/@types/node": { + "version": "20.14.2", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.2.tgz", + "integrity": "sha512-xyu6WAMVwv6AKFLB+e/7ySZVr/0zLCzOa7rSpq6jNwpqOrUbcACDWC+53d4n2QHOnDou0fbIsg8wZu/sxrnI4Q==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "packages/server": { "name": "@neshca/server", "version": "1.1.1", @@ -17840,6 +18116,15 @@ "tsx": "4.12.0", "typescript": "5.4.5" } + }, + "packages/server/node_modules/@types/node": { + "version": "20.14.2", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.2.tgz", + "integrity": "sha512-xyu6WAMVwv6AKFLB+e/7ySZVr/0zLCzOa7rSpq6jNwpqOrUbcACDWC+53d4n2QHOnDou0fbIsg8wZu/sxrnI4Q==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } } } } diff --git a/package.json b/package.json index a30accb6..3af9e5e0 100644 --- a/package.json +++ b/package.json @@ -44,9 +44,9 @@ "diffscribe": "*", "glob": "10.4.1", "prettier": "3.3.1", - "turbo": "2.0.1" + "turbo": "2.0.4" }, - "packageManager": "npm@10.1.0", + "packageManager": "npm@10.7.0", "engines": { "node": ">=20.9.0", "npm": ">=10.1.0" From 01fe57a806a5dad96ab55228ad65e0185a84462e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 17 Jun 2024 14:35:04 +0300 Subject: [PATCH 251/458] Bump the pino group with 2 updates (#575) Bumps the pino group with 2 updates: [pino](https://github.com/pinojs/pino) and [pino-pretty](https://github.com/pinojs/pino-pretty). Updates `pino` from 9.1.0 to 9.2.0 - [Release notes](https://github.com/pinojs/pino/releases) - [Commits](https://github.com/pinojs/pino/compare/v9.1.0...v9.2.0) Updates `pino-pretty` from 11.1.0 to 11.2.1 - [Release notes](https://github.com/pinojs/pino-pretty/releases) - [Commits](https://github.com/pinojs/pino-pretty/compare/v11.1.0...v11.2.1) --- updated-dependencies: - dependency-name: pino dependency-type: direct:production update-type: version-update:semver-minor dependency-group: pino - dependency-name: pino-pretty dependency-type: direct:development update-type: version-update:semver-minor dependency-group: pino ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- internal/backend/package.json | 4 ++-- package-lock.json | 18 +++++++++--------- packages/server/package.json | 2 +- 3 files changed, 12 insertions(+), 12 deletions(-) diff --git a/internal/backend/package.json b/internal/backend/package.json index a806db6b..3bb42c92 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -11,12 +11,12 @@ }, "dependencies": { "fastify": "4.27.0", - "pino": "9.1.0" + "pino": "9.2.0" }, "devDependencies": { "@repo/typescript-config": "*", "@types/node": "20.14.2", - "pino-pretty": "11.1.0", + "pino-pretty": "11.2.1", "rimraf": "5.0.7", "tsx": "4.12.0", "typescript": "5.4.5" diff --git a/package-lock.json b/package-lock.json index 40cdb017..281f8879 100644 --- a/package-lock.json +++ b/package-lock.json @@ -466,12 +466,12 @@ "license": "MIT", "dependencies": { "fastify": "4.27.0", - "pino": "9.1.0" + "pino": "9.2.0" }, "devDependencies": { "@repo/typescript-config": "*", "@types/node": "20.14.2", - "pino-pretty": "11.1.0", + "pino-pretty": "11.2.1", "rimraf": "5.0.7", "tsx": "4.12.0", "typescript": "5.4.5" @@ -13379,9 +13379,9 @@ } }, "node_modules/pino": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/pino/-/pino-9.1.0.tgz", - "integrity": "sha512-qUcgfrlyOtjwhNLdbhoL7NR4NkHjzykAPw0V2QLFbvu/zss29h4NkRnibyFzBrNCbzCOY3WZ9hhKSwfOkNggYA==", + "version": "9.2.0", + "resolved": "https://registry.npmjs.org/pino/-/pino-9.2.0.tgz", + "integrity": "sha512-g3/hpwfujK5a4oVbaefoJxezLzsDgLcNJeITvC6yrfwYeT9la+edCK42j5QpEQSQCZgTKapXvnQIdgZwvRaZug==", "dependencies": { "atomic-sleep": "^1.0.0", "fast-redact": "^3.1.1", @@ -13409,9 +13409,9 @@ } }, "node_modules/pino-pretty": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/pino-pretty/-/pino-pretty-11.1.0.tgz", - "integrity": "sha512-PjBzFL7IMSl1YkS9cSVWC+4gONmW0Fi+fvUzy74zK6RJHk4RkfW+e22NydRrGEtBRa5n6/oPNLPqjUeQrzqcLQ==", + "version": "11.2.1", + "resolved": "https://registry.npmjs.org/pino-pretty/-/pino-pretty-11.2.1.tgz", + "integrity": "sha512-O05NuD9tkRasFRWVaF/uHLOvoRDFD7tb5VMertr78rbsYFjYp48Vg3477EshVAF5eZaEw+OpDl/tu+B0R5o+7g==", "dev": true, "dependencies": { "colorette": "^2.0.7", @@ -18101,7 +18101,7 @@ "license": "MIT", "dependencies": { "fastify": "4.27.0", - "pino": "9.1.0" + "pino": "9.2.0" }, "bin": { "next-cache-server": "dist/server.js" diff --git a/packages/server/package.json b/packages/server/package.json index 6de6665a..cb8c4399 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -26,7 +26,7 @@ }, "dependencies": { "fastify": "4.27.0", - "pino": "9.1.0" + "pino": "9.2.0" }, "devDependencies": { "@neshca/next-common": "*", From 7d3009257a203b0a8eda8798b2d4478ca4265d2f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 17 Jun 2024 16:30:32 +0300 Subject: [PATCH 252/458] Bump prettier from 3.3.1 to 3.3.2 (#576) Bumps [prettier](https://github.com/prettier/prettier) from 3.3.1 to 3.3.2. - [Release notes](https://github.com/prettier/prettier/releases) - [Changelog](https://github.com/prettier/prettier/blob/main/CHANGELOG.md) - [Commits](https://github.com/prettier/prettier/compare/3.3.1...3.3.2) --- updated-dependencies: - dependency-name: prettier dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 8 ++++---- package.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package-lock.json b/package-lock.json index 281f8879..d031b03d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -25,7 +25,7 @@ "@repo/typescript-config": "*", "diffscribe": "*", "glob": "10.4.1", - "prettier": "3.3.1", + "prettier": "3.3.2", "turbo": "2.0.4" }, "engines": { @@ -13894,9 +13894,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/package.json b/package.json index 3af9e5e0..70da3f6c 100644 --- a/package.json +++ b/package.json @@ -43,7 +43,7 @@ "@repo/typescript-config": "*", "diffscribe": "*", "glob": "10.4.1", - "prettier": "3.3.1", + "prettier": "3.3.2", "turbo": "2.0.4" }, "packageManager": "npm@10.7.0", From 3ba9c350e9a7562fdef3f27b392d55b6493f96e1 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 17 Jun 2024 16:43:46 +0300 Subject: [PATCH 253/458] Bump @biomejs/biome from 1.8.0 to 1.8.1 (#577) Bumps [@biomejs/biome](https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome) from 1.8.0 to 1.8.1. - [Release notes](https://github.com/biomejs/biome/releases) - [Changelog](https://github.com/biomejs/biome/blob/main/CHANGELOG.md) - [Commits](https://github.com/biomejs/biome/commits/cli/v1.8.1/packages/@biomejs/biome) --- updated-dependencies: - dependency-name: "@biomejs/biome" dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 72 +++++++++++++++++++++++------------------------ package.json | 2 +- 2 files changed, 37 insertions(+), 37 deletions(-) diff --git a/package-lock.json b/package-lock.json index d031b03d..0739b8e8 100644 --- a/package-lock.json +++ b/package-lock.json @@ -20,7 +20,7 @@ }, "devDependencies": { "@actions/core": "1.10.1", - "@biomejs/biome": "1.8.0", + "@biomejs/biome": "1.8.1", "@repo/prettier-config": "*", "@repo/typescript-config": "*", "diffscribe": "*", @@ -1390,9 +1390,9 @@ } }, "node_modules/@biomejs/biome": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/@biomejs/biome/-/biome-1.8.0.tgz", - "integrity": "sha512-34xcE2z8GWrIz1sCFEmlHT/+4d+SN7YOqqvzlAKXKvaWPRJ2/NUwxPbRsP01P9QODkQ5bvGvc9rpBihmP+7RJQ==", + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/@biomejs/biome/-/biome-1.8.1.tgz", + "integrity": "sha512-fQXGfvq6DIXem12dGQCM2tNF+vsNHH1qs3C7WeOu75Pd0trduoTmoO7G4ntLJ2qDs5wuw981H+cxQhi1uHnAtA==", "dev": true, "hasInstallScript": true, "bin": { @@ -1406,20 +1406,20 @@ "url": "https://opencollective.com/biome" }, "optionalDependencies": { - "@biomejs/cli-darwin-arm64": "1.8.0", - "@biomejs/cli-darwin-x64": "1.8.0", - "@biomejs/cli-linux-arm64": "1.8.0", - "@biomejs/cli-linux-arm64-musl": "1.8.0", - "@biomejs/cli-linux-x64": "1.8.0", - "@biomejs/cli-linux-x64-musl": "1.8.0", - "@biomejs/cli-win32-arm64": "1.8.0", - "@biomejs/cli-win32-x64": "1.8.0" + "@biomejs/cli-darwin-arm64": "1.8.1", + "@biomejs/cli-darwin-x64": "1.8.1", + "@biomejs/cli-linux-arm64": "1.8.1", + "@biomejs/cli-linux-arm64-musl": "1.8.1", + "@biomejs/cli-linux-x64": "1.8.1", + "@biomejs/cli-linux-x64-musl": "1.8.1", + "@biomejs/cli-win32-arm64": "1.8.1", + "@biomejs/cli-win32-x64": "1.8.1" } }, "node_modules/@biomejs/cli-darwin-arm64": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-1.8.0.tgz", - "integrity": "sha512-dBAYzfIJ1JmWigKlWourT3sJ3I60LZPjqNwwlsyFjiv5AV7vPeWlHVVIImV2BpINwNjZQhpXnwDfVnGS4vr7AA==", + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-1.8.1.tgz", + "integrity": "sha512-XLiB7Uu6GALIOBWzQ2aMD0ru4Ly5/qSeQF7kk3AabzJ/kwsEWSe33iVySBP/SS2qv25cgqNiLksjGcw2bHT3mw==", "cpu": [ "arm64" ], @@ -1433,9 +1433,9 @@ } }, "node_modules/@biomejs/cli-darwin-x64": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-x64/-/cli-darwin-x64-1.8.0.tgz", - "integrity": "sha512-ZTTSD0bP0nn9UpRDGQrQNTILcYSj+IkxTYr3CAV64DWBDtQBomlk2oVKWzDaA1LOhpAsTh0giLCbPJaVk2jfMQ==", + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-x64/-/cli-darwin-x64-1.8.1.tgz", + "integrity": "sha512-uMTSxVLMfqkBVqyc25hSn83jBbp+wtWjzM/pHFlKXt3htJuw7FErVGW0nmQ9Sxa9vJ7GcqoltLMl28VQRIMYzg==", "cpu": [ "x64" ], @@ -1449,9 +1449,9 @@ } }, "node_modules/@biomejs/cli-linux-arm64": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64/-/cli-linux-arm64-1.8.0.tgz", - "integrity": "sha512-cx725jTlJS6dskvJJwwCQaaMRBKE2Qss7ukzmx27Rn/DXRxz6tnnBix4FUGPf1uZfwrERkiJlbWM05JWzpvvXg==", + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64/-/cli-linux-arm64-1.8.1.tgz", + "integrity": "sha512-3SzZRuC/9Oi2P2IBNPsEj0KXxSXUEYRR2kfRF/Ve8QAfGgrt4qnwuWd6QQKKN5R+oYH691qjm+cXBKEcrP1v/Q==", "cpu": [ "arm64" ], @@ -1465,9 +1465,9 @@ } }, "node_modules/@biomejs/cli-linux-arm64-musl": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-1.8.0.tgz", - "integrity": "sha512-+ee/pZWsvhDv6eRI00krRNSgAg8DKSxzOv3LUsCjto6N1VzqatTASeQv2HRfG1nitf79rRKM75LkMJbqEfiKww==", + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-1.8.1.tgz", + "integrity": "sha512-UQ8Wc01J0wQL+5AYOc7qkJn20B4PZmQL1KrmDZh7ot0DvD6aX4+8mmfd/dG5b6Zjo/44QvCKcvkFGCMRYuhWZA==", "cpu": [ "arm64" ], @@ -1481,9 +1481,9 @@ } }, "node_modules/@biomejs/cli-linux-x64": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64/-/cli-linux-x64-1.8.0.tgz", - "integrity": "sha512-cmgmhlD4QUxMhL1VdaNqnB81xBHb3R7huVNyYnPYzP+AykZ7XqJbPd1KcWAszNjUk2AHdx0aLKEBwCOWemxb2g==", + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64/-/cli-linux-x64-1.8.1.tgz", + "integrity": "sha512-AeBycVdNrTzsyYKEOtR2R0Ph0hCD0sCshcp2aOnfGP0hCZbtFg09D0SdKLbyzKntisY41HxKVrydYiaApp+2uw==", "cpu": [ "x64" ], @@ -1497,9 +1497,9 @@ } }, "node_modules/@biomejs/cli-linux-x64-musl": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-1.8.0.tgz", - "integrity": "sha512-VPA4ocrAOak50VYl8gOAVnjuFFDpIUolShntc/aWM0pZfSIMbRucxnrfUfp44EVwayxjK6ruJTR5xEWj93WvDA==", + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-1.8.1.tgz", + "integrity": "sha512-fYbP/kNu/rtZ4kKzWVocIdqZOtBSUEg9qUhZaao3dy3CRzafR6u6KDtBeSCnt47O+iLnks1eOR1TUxzr5+QuqA==", "cpu": [ "x64" ], @@ -1513,9 +1513,9 @@ } }, "node_modules/@biomejs/cli-win32-arm64": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-arm64/-/cli-win32-arm64-1.8.0.tgz", - "integrity": "sha512-J31spvlh39FfRHQacYXxJX9PvTCH/a8+2Jx9D1lxw+LSF0JybqZcw/4JrlFUWUl4kF3yv8AuYUK0sENScc3g9w==", + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-arm64/-/cli-win32-arm64-1.8.1.tgz", + "integrity": "sha512-6tEd1H/iFKpgpE3OIB7oNgW5XkjiVMzMRPL8zYoZ036YfuJ5nMYm9eB9H/y81+8Z76vL48fiYzMPotJwukGPqQ==", "cpu": [ "arm64" ], @@ -1529,9 +1529,9 @@ } }, "node_modules/@biomejs/cli-win32-x64": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-x64/-/cli-win32-x64-1.8.0.tgz", - "integrity": "sha512-uPHHvu76JC1zYe9zZDcOU9PAg+1MZmPuNgWkb5jljaDeATvzLFPB+0nuJTilf603LXL+E8IdPQAO61Wy2VuEJA==", + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-x64/-/cli-win32-x64-1.8.1.tgz", + "integrity": "sha512-g2H31jJzYmS4jkvl6TiyEjEX+Nv79a5km/xn+5DARTp5MBFzC9gwceusSSB2AkJKqZzY131AiACAWjKrVt5Ijw==", "cpu": [ "x64" ], diff --git a/package.json b/package.json index 70da3f6c..86191080 100644 --- a/package.json +++ b/package.json @@ -38,7 +38,7 @@ }, "devDependencies": { "@actions/core": "1.10.1", - "@biomejs/biome": "1.8.0", + "@biomejs/biome": "1.8.1", "@repo/prettier-config": "*", "@repo/typescript-config": "*", "diffscribe": "*", From 17e0d1508c4d22dfc32069f36fb49a6fcee18d0c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 17 Jun 2024 17:17:28 +0300 Subject: [PATCH 254/458] Bump tsx from 4.12.0 to 4.15.6 (#578) Bumps [tsx](https://github.com/privatenumber/tsx) from 4.12.0 to 4.15.6. - [Release notes](https://github.com/privatenumber/tsx/releases) - [Changelog](https://github.com/privatenumber/tsx/blob/master/release.config.cjs) - [Commits](https://github.com/privatenumber/tsx/compare/v4.12.0...v4.15.6) --- updated-dependencies: - dependency-name: tsx dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- internal/backend/package.json | 2 +- package-lock.json | 424 +------------------- packages/cache-handler/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 6 files changed, 14 insertions(+), 420 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 5cce9550..014264cb 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -38,7 +38,7 @@ "pm2": "5.4.0", "redis": "4.6.13", "rimraf": "5.0.7", - "tsx": "4.12.0", + "tsx": "4.15.6", "typescript": "5.4.5" } } diff --git a/internal/backend/package.json b/internal/backend/package.json index 3bb42c92..d68ab6ee 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -18,7 +18,7 @@ "@types/node": "20.14.2", "pino-pretty": "11.2.1", "rimraf": "5.0.7", - "tsx": "4.12.0", + "tsx": "4.15.6", "typescript": "5.4.5" } } diff --git a/package-lock.json b/package-lock.json index 0739b8e8..6c7c6cbf 100644 --- a/package-lock.json +++ b/package-lock.json @@ -58,7 +58,7 @@ "pm2": "5.4.0", "redis": "4.6.13", "rimraf": "5.0.7", - "tsx": "4.12.0", + "tsx": "4.15.6", "typescript": "5.4.5" } }, @@ -473,7 +473,7 @@ "@types/node": "20.14.2", "pino-pretty": "11.2.1", "rimraf": "5.0.7", - "tsx": "4.12.0", + "tsx": "4.15.6", "typescript": "5.4.5" } }, @@ -16333,12 +16333,12 @@ "dev": true }, "node_modules/tsx": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.12.0.tgz", - "integrity": "sha512-642NAWAbDqPZINjmL32Lh/B+pd8vbVj6LHPsWm09IIHqQuWhCrNfcPTjRlHFWvv3FfM4vt9NLReBIjUNj5ZhDg==", + "version": "4.15.6", + "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.15.6.tgz", + "integrity": "sha512-is0VQQlfNZRHEuSSTKA6m4xw74IU4AizmuB6lAYLRt9XtuyeQnyJYexhNZOPCB59SqC4JzmSzPnHGBXxf3k0hA==", "dev": true, "dependencies": { - "esbuild": "~0.20.2", + "esbuild": "~0.21.4", "get-tsconfig": "^4.7.5" }, "bin": { @@ -16351,412 +16351,6 @@ "fsevents": "~2.3.3" } }, - "node_modules/tsx/node_modules/@esbuild/aix-ppc64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.20.2.tgz", - "integrity": "sha512-D+EBOJHXdNZcLJRBkhENNG8Wji2kgc9AZ9KiPr1JuZjsNtyHzrsfLRrY0tk2H2aoFu6RANO1y1iPPUCDYWkb5g==", - "cpu": [ - "ppc64" - ], - "dev": true, - "optional": true, - "os": [ - "aix" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/tsx/node_modules/@esbuild/android-arm": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.20.2.tgz", - "integrity": "sha512-t98Ra6pw2VaDhqNWO2Oph2LXbz/EJcnLmKLGBJwEwXX/JAN83Fym1rU8l0JUWK6HkIbWONCSSatf4sf2NBRx/w==", - "cpu": [ - "arm" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/tsx/node_modules/@esbuild/android-arm64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.20.2.tgz", - "integrity": "sha512-mRzjLacRtl/tWU0SvD8lUEwb61yP9cqQo6noDZP/O8VkwafSYwZ4yWy24kan8jE/IMERpYncRt2dw438LP3Xmg==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/tsx/node_modules/@esbuild/android-x64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.20.2.tgz", - "integrity": "sha512-btzExgV+/lMGDDa194CcUQm53ncxzeBrWJcncOBxuC6ndBkKxnHdFJn86mCIgTELsooUmwUm9FkhSp5HYu00Rg==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/tsx/node_modules/@esbuild/darwin-arm64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.20.2.tgz", - "integrity": "sha512-4J6IRT+10J3aJH3l1yzEg9y3wkTDgDk7TSDFX+wKFiWjqWp/iCfLIYzGyasx9l0SAFPT1HwSCR+0w/h1ES/MjA==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/tsx/node_modules/@esbuild/darwin-x64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.20.2.tgz", - "integrity": "sha512-tBcXp9KNphnNH0dfhv8KYkZhjc+H3XBkF5DKtswJblV7KlT9EI2+jeA8DgBjp908WEuYll6pF+UStUCfEpdysA==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/tsx/node_modules/@esbuild/freebsd-arm64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.20.2.tgz", - "integrity": "sha512-d3qI41G4SuLiCGCFGUrKsSeTXyWG6yem1KcGZVS+3FYlYhtNoNgYrWcvkOoaqMhwXSMrZRl69ArHsGJ9mYdbbw==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/tsx/node_modules/@esbuild/freebsd-x64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.20.2.tgz", - "integrity": "sha512-d+DipyvHRuqEeM5zDivKV1KuXn9WeRX6vqSqIDgwIfPQtwMP4jaDsQsDncjTDDsExT4lR/91OLjRo8bmC1e+Cw==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/tsx/node_modules/@esbuild/linux-arm": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.20.2.tgz", - "integrity": "sha512-VhLPeR8HTMPccbuWWcEUD1Az68TqaTYyj6nfE4QByZIQEQVWBB8vup8PpR7y1QHL3CpcF6xd5WVBU/+SBEvGTg==", - "cpu": [ - "arm" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/tsx/node_modules/@esbuild/linux-arm64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.20.2.tgz", - "integrity": "sha512-9pb6rBjGvTFNira2FLIWqDk/uaf42sSyLE8j1rnUpuzsODBq7FvpwHYZxQ/It/8b+QOS1RYfqgGFNLRI+qlq2A==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/tsx/node_modules/@esbuild/linux-ia32": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.20.2.tgz", - "integrity": "sha512-o10utieEkNPFDZFQm9CoP7Tvb33UutoJqg3qKf1PWVeeJhJw0Q347PxMvBgVVFgouYLGIhFYG0UGdBumROyiig==", - "cpu": [ - "ia32" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/tsx/node_modules/@esbuild/linux-loong64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.20.2.tgz", - "integrity": "sha512-PR7sp6R/UC4CFVomVINKJ80pMFlfDfMQMYynX7t1tNTeivQ6XdX5r2XovMmha/VjR1YN/HgHWsVcTRIMkymrgQ==", - "cpu": [ - "loong64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/tsx/node_modules/@esbuild/linux-mips64el": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.20.2.tgz", - "integrity": "sha512-4BlTqeutE/KnOiTG5Y6Sb/Hw6hsBOZapOVF6njAESHInhlQAghVVZL1ZpIctBOoTFbQyGW+LsVYZ8lSSB3wkjA==", - "cpu": [ - "mips64el" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/tsx/node_modules/@esbuild/linux-ppc64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.20.2.tgz", - "integrity": "sha512-rD3KsaDprDcfajSKdn25ooz5J5/fWBylaaXkuotBDGnMnDP1Uv5DLAN/45qfnf3JDYyJv/ytGHQaziHUdyzaAg==", - "cpu": [ - "ppc64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/tsx/node_modules/@esbuild/linux-riscv64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.20.2.tgz", - "integrity": "sha512-snwmBKacKmwTMmhLlz/3aH1Q9T8v45bKYGE3j26TsaOVtjIag4wLfWSiZykXzXuE1kbCE+zJRmwp+ZbIHinnVg==", - "cpu": [ - "riscv64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/tsx/node_modules/@esbuild/linux-s390x": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.20.2.tgz", - "integrity": "sha512-wcWISOobRWNm3cezm5HOZcYz1sKoHLd8VL1dl309DiixxVFoFe/o8HnwuIwn6sXre88Nwj+VwZUvJf4AFxkyrQ==", - "cpu": [ - "s390x" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/tsx/node_modules/@esbuild/linux-x64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.20.2.tgz", - "integrity": "sha512-1MdwI6OOTsfQfek8sLwgyjOXAu+wKhLEoaOLTjbijk6E2WONYpH9ZU2mNtR+lZ2B4uwr+usqGuVfFT9tMtGvGw==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/tsx/node_modules/@esbuild/netbsd-x64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.20.2.tgz", - "integrity": "sha512-K8/DhBxcVQkzYc43yJXDSyjlFeHQJBiowJ0uVL6Tor3jGQfSGHNNJcWxNbOI8v5k82prYqzPuwkzHt3J1T1iZQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "netbsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/tsx/node_modules/@esbuild/openbsd-x64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.20.2.tgz", - "integrity": "sha512-eMpKlV0SThJmmJgiVyN9jTPJ2VBPquf6Kt/nAoo6DgHAoN57K15ZghiHaMvqjCye/uU4X5u3YSMgVBI1h3vKrQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "openbsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/tsx/node_modules/@esbuild/sunos-x64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.20.2.tgz", - "integrity": "sha512-2UyFtRC6cXLyejf/YEld4Hajo7UHILetzE1vsRcGL3earZEW77JxrFjH4Ez2qaTiEfMgAXxfAZCm1fvM/G/o8w==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "sunos" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/tsx/node_modules/@esbuild/win32-arm64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.20.2.tgz", - "integrity": "sha512-GRibxoawM9ZCnDxnP3usoUDO9vUkpAxIIZ6GQI+IlVmr5kP3zUq+l17xELTHMWTWzjxa2guPNyrpq1GWmPvcGQ==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/tsx/node_modules/@esbuild/win32-ia32": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.20.2.tgz", - "integrity": "sha512-HfLOfn9YWmkSKRQqovpnITazdtquEW8/SoHW7pWpuEeguaZI4QnCRW6b+oZTztdBnZOS2hqJ6im/D5cPzBTTlQ==", - "cpu": [ - "ia32" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/tsx/node_modules/@esbuild/win32-x64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.20.2.tgz", - "integrity": "sha512-N49X4lJX27+l9jbLKSqZ6bKNjzQvHaT8IIFUy+YIqmXQdjYCToGWwOItDrfby14c78aDd5NHQl29xingXfCdLQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/tsx/node_modules/esbuild": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.20.2.tgz", - "integrity": "sha512-WdOOppmUNU+IbZ0PaDiTst80zjnrOkyJNHoKupIcVyU8Lvla3Ugx94VzkQ32Ijqd7UhHJy75gNWDMUekcrSJ6g==", - "dev": true, - "hasInstallScript": true, - "bin": { - "esbuild": "bin/esbuild" - }, - "engines": { - "node": ">=12" - }, - "optionalDependencies": { - "@esbuild/aix-ppc64": "0.20.2", - "@esbuild/android-arm": "0.20.2", - "@esbuild/android-arm64": "0.20.2", - "@esbuild/android-x64": "0.20.2", - "@esbuild/darwin-arm64": "0.20.2", - "@esbuild/darwin-x64": "0.20.2", - "@esbuild/freebsd-arm64": "0.20.2", - "@esbuild/freebsd-x64": "0.20.2", - "@esbuild/linux-arm": "0.20.2", - "@esbuild/linux-arm64": "0.20.2", - "@esbuild/linux-ia32": "0.20.2", - "@esbuild/linux-loong64": "0.20.2", - "@esbuild/linux-mips64el": "0.20.2", - "@esbuild/linux-ppc64": "0.20.2", - "@esbuild/linux-riscv64": "0.20.2", - "@esbuild/linux-s390x": "0.20.2", - "@esbuild/linux-x64": "0.20.2", - "@esbuild/netbsd-x64": "0.20.2", - "@esbuild/openbsd-x64": "0.20.2", - "@esbuild/sunos-x64": "0.20.2", - "@esbuild/win32-arm64": "0.20.2", - "@esbuild/win32-ia32": "0.20.2", - "@esbuild/win32-x64": "0.20.2" - } - }, "node_modules/tsx/node_modules/fsevents": { "version": "2.3.3", "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", @@ -18029,7 +17623,7 @@ "@types/node": "20.14.2", "rimraf": "5.0.7", "tsup": "8.1.0", - "tsx": "4.12.0", + "tsx": "4.15.6", "typescript": "5.4.5" }, "peerDependencies": { @@ -18082,7 +17676,7 @@ "@types/node": "20.14.2", "rimraf": "5.0.7", "tsup": "8.1.0", - "tsx": "4.12.0", + "tsx": "4.15.6", "typescript": "5.4.5" } }, @@ -18113,7 +17707,7 @@ "@types/node": "20.14.2", "rimraf": "5.0.7", "tsup": "8.1.0", - "tsx": "4.12.0", + "tsx": "4.15.6", "typescript": "5.4.5" } }, diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 3e85738f..1d3ee321 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -82,7 +82,7 @@ "@types/node": "20.14.2", "rimraf": "5.0.7", "tsup": "8.1.0", - "tsx": "4.12.0", + "tsx": "4.15.6", "typescript": "5.4.5" }, "peerDependencies": { diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 1c976275..ed91c766 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -31,7 +31,7 @@ "@types/node": "20.14.2", "rimraf": "5.0.7", "tsup": "8.1.0", - "tsx": "4.12.0", + "tsx": "4.15.6", "typescript": "5.4.5" } } diff --git a/packages/server/package.json b/packages/server/package.json index cb8c4399..b1c541ed 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -35,7 +35,7 @@ "@types/node": "20.14.2", "rimraf": "5.0.7", "tsup": "8.1.0", - "tsx": "4.12.0", + "tsx": "4.15.6", "typescript": "5.4.5" }, "distTags": [ From f7bebf858459ae47a0d82dba44d02bb97642ef6c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 17 Jun 2024 17:28:37 +0300 Subject: [PATCH 255/458] Bump fastify from 4.27.0 to 4.28.0 (#579) Bumps [fastify](https://github.com/fastify/fastify) from 4.27.0 to 4.28.0. - [Release notes](https://github.com/fastify/fastify/releases) - [Commits](https://github.com/fastify/fastify/compare/v4.27.0...v4.28.0) --- updated-dependencies: - dependency-name: fastify dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- internal/backend/package.json | 2 +- package-lock.json | 12 ++++++------ packages/server/package.json | 2 +- 4 files changed, 9 insertions(+), 9 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 014264cb..4fa18236 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -34,7 +34,7 @@ "axios": "1.7.2", "dotenv-cli": "7.4.2", "eslint": "8.57.0", - "fastify": "4.27.0", + "fastify": "4.28.0", "pm2": "5.4.0", "redis": "4.6.13", "rimraf": "5.0.7", diff --git a/internal/backend/package.json b/internal/backend/package.json index d68ab6ee..4c4f0d79 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -10,7 +10,7 @@ "start": "tsx ./src/backend.ts" }, "dependencies": { - "fastify": "4.27.0", + "fastify": "4.28.0", "pino": "9.2.0" }, "devDependencies": { diff --git a/package-lock.json b/package-lock.json index 6c7c6cbf..75cde08d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -54,7 +54,7 @@ "axios": "1.7.2", "dotenv-cli": "7.4.2", "eslint": "8.57.0", - "fastify": "4.27.0", + "fastify": "4.28.0", "pm2": "5.4.0", "redis": "4.6.13", "rimraf": "5.0.7", @@ -465,7 +465,7 @@ "version": "0.0.0", "license": "MIT", "dependencies": { - "fastify": "4.27.0", + "fastify": "4.28.0", "pino": "9.2.0" }, "devDependencies": { @@ -8579,9 +8579,9 @@ "integrity": "sha512-ypuAmmMKInk5q7XcepxlnUWDLWv4GFtaJqAzWKqn62IpQ3pejtr5dTVbt3vwqVaMKmkNR55sTT+CqUKIaT21BA==" }, "node_modules/fastify": { - "version": "4.27.0", - "resolved": "https://registry.npmjs.org/fastify/-/fastify-4.27.0.tgz", - "integrity": "sha512-ci9IXzbigB8dyi0mSy3faa3Bsj0xWAPb9JeT4KRzubdSb6pNhcADRUaXCBml6V1Ss/a05kbtQls5LBmhHydoTA==", + "version": "4.28.0", + "resolved": "https://registry.npmjs.org/fastify/-/fastify-4.28.0.tgz", + "integrity": "sha512-HhW7UHW07YlqH5qpS0af8d2Gl/o98DhJ8ZDQWHRNDnzeOhZvtreWsX8xanjGgXmkYerGbo8ax/n40Dpwqkot8Q==", "funding": [ { "type": "github", @@ -17694,7 +17694,7 @@ "version": "1.1.1", "license": "MIT", "dependencies": { - "fastify": "4.27.0", + "fastify": "4.28.0", "pino": "9.2.0" }, "bin": { diff --git a/packages/server/package.json b/packages/server/package.json index b1c541ed..28ad75be 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -25,7 +25,7 @@ "start": "tsx ./src/server.ts" }, "dependencies": { - "fastify": "4.27.0", + "fastify": "4.28.0", "pino": "9.2.0" }, "devDependencies": { From 78eccce4d0b4aef1c175ee0b86b5001f0e8ee4ef Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 18 Jun 2024 11:51:30 +0300 Subject: [PATCH 256/458] Bump @types/node from 20.14.2 to 20.14.3 in the definitely-typed group (#580) Bumps the definitely-typed group with 1 update: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node). Updates `@types/node` from 20.14.2 to 20.14.3 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) --- updated-dependencies: - dependency-name: "@types/node" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- internal/backend/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 113 ++++---------------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 10 files changed, 29 insertions(+), 102 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 4fa18236..f06d7cf1 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -28,7 +28,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "20.14.2", + "@types/node": "20.14.3", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "axios": "1.7.2", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index c4ebca28..79e2656b 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -22,7 +22,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "20.14.2", + "@types/node": "20.14.3", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "eslint": "8.57.0", diff --git a/internal/backend/package.json b/internal/backend/package.json index 4c4f0d79..9d42dc4f 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.2", + "@types/node": "20.14.3", "pino-pretty": "11.2.1", "rimraf": "5.0.7", "tsx": "4.15.6", diff --git a/internal/next-common/package.json b/internal/next-common/package.json index 40c84b9b..65f5b062 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.2", + "@types/node": "20.14.3", "rimraf": "5.0.7", "typescript": "5.4.5" } diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index e157b594..c5d84584 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -16,7 +16,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "20.14.2", + "@types/node": "20.14.3", "rimraf": "5.0.7", "typescript": "5.4.5" } diff --git a/package-lock.json b/package-lock.json index 75cde08d..b46c3435 100644 --- a/package-lock.json +++ b/package-lock.json @@ -48,7 +48,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "20.14.2", + "@types/node": "20.14.3", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "axios": "1.7.2", @@ -62,15 +62,6 @@ "typescript": "5.4.5" } }, - "apps/cache-testing/node_modules/@types/node": { - "version": "20.14.2", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.2.tgz", - "integrity": "sha512-xyu6WAMVwv6AKFLB+e/7ySZVr/0zLCzOa7rSpq6jNwpqOrUbcACDWC+53d4n2QHOnDou0fbIsg8wZu/sxrnI4Q==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "apps/cache-testing/node_modules/next": { "version": "14.3.0-canary.44", "resolved": "https://registry.npmjs.org/next/-/next-14.3.0-canary.44.tgz", @@ -135,7 +126,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "20.14.2", + "@types/node": "20.14.3", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "eslint": "8.57.0", @@ -300,15 +291,6 @@ "tslib": "^2.4.0" } }, - "docs/cache-handler-docs/node_modules/@types/node": { - "version": "20.14.2", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.2.tgz", - "integrity": "sha512-xyu6WAMVwv6AKFLB+e/7ySZVr/0zLCzOa7rSpq6jNwpqOrUbcACDWC+53d4n2QHOnDou0fbIsg8wZu/sxrnI4Q==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "docs/cache-handler-docs/node_modules/glob": { "version": "10.3.10", "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", @@ -470,22 +452,13 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.2", + "@types/node": "20.14.3", "pino-pretty": "11.2.1", "rimraf": "5.0.7", "tsx": "4.15.6", "typescript": "5.4.5" } }, - "internal/backend/node_modules/@types/node": { - "version": "20.14.2", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.2.tgz", - "integrity": "sha512-xyu6WAMVwv6AKFLB+e/7ySZVr/0zLCzOa7rSpq6jNwpqOrUbcACDWC+53d4n2QHOnDou0fbIsg8wZu/sxrnI4Q==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "internal/eslint-config": { "name": "@repo/eslint-config", "version": "0.0.0", @@ -618,7 +591,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.2", + "@types/node": "20.14.3", "rimraf": "5.0.7", "typescript": "5.4.5" } @@ -772,15 +745,6 @@ "tslib": "^2.4.0" } }, - "internal/next-common/node_modules/@types/node": { - "version": "20.14.2", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.2.tgz", - "integrity": "sha512-xyu6WAMVwv6AKFLB+e/7ySZVr/0zLCzOa7rSpq6jNwpqOrUbcACDWC+53d4n2QHOnDou0fbIsg8wZu/sxrnI4Q==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "internal/next-common/node_modules/next": { "version": "14.2.0-canary.61", "resolved": "https://registry.npmjs.org/next/-/next-14.2.0-canary.61.tgz", @@ -840,20 +804,11 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "20.14.2", + "@types/node": "20.14.3", "rimraf": "5.0.7", "typescript": "5.4.5" } }, - "internal/next-lru-cache/node_modules/@types/node": { - "version": "20.14.2", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.2.tgz", - "integrity": "sha512-xyu6WAMVwv6AKFLB+e/7ySZVr/0zLCzOa7rSpq6jNwpqOrUbcACDWC+53d4n2QHOnDou0fbIsg8wZu/sxrnI4Q==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "internal/prettier-config": { "name": "@repo/prettier-config", "version": "0.0.0", @@ -2941,6 +2896,11 @@ "fs-extra": "^8.1.0" } }, + "node_modules/@manypkg/find-root/node_modules/@types/node": { + "version": "12.20.55", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", + "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" + }, "node_modules/@manypkg/find-root/node_modules/fs-extra": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", @@ -4262,9 +4222,12 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "12.20.55", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", - "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" + "version": "20.14.3", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.3.tgz", + "integrity": "sha512-Nuzqa6WAxeGnve6SXqiPAM9rA++VQs+iLZ1DDd56y0gdvygSZlQvZuvdFPR3yLqkVxPu4WrO02iDEyH1g+wazw==", + "dependencies": { + "undici-types": "~5.26.4" + } }, "node_modules/@types/node-fetch": { "version": "2.6.11", @@ -17620,7 +17583,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.14.2", + "@types/node": "20.14.3", "rimraf": "5.0.7", "tsup": "8.1.0", "tsx": "4.15.6", @@ -17631,15 +17594,6 @@ "redis": ">=4.6" } }, - "packages/cache-handler/node_modules/@types/node": { - "version": "20.14.2", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.2.tgz", - "integrity": "sha512-xyu6WAMVwv6AKFLB+e/7ySZVr/0zLCzOa7rSpq6jNwpqOrUbcACDWC+53d4n2QHOnDou0fbIsg8wZu/sxrnI4Q==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "packages/diffscribe": { "version": "0.2.4", "license": "MIT", @@ -17648,7 +17602,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.2", + "@types/node": "20.14.3", "rimraf": "5.0.7", "tsup": "8.1.0", "typescript": "5.4.5" @@ -17658,37 +17612,19 @@ "openai": "^4.12.3" } }, - "packages/diffscribe/node_modules/@types/node": { - "version": "20.14.2", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.2.tgz", - "integrity": "sha512-xyu6WAMVwv6AKFLB+e/7ySZVr/0zLCzOa7rSpq6jNwpqOrUbcACDWC+53d4n2QHOnDou0fbIsg8wZu/sxrnI4Q==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "packages/json-replacer-reviver": { "name": "@neshca/json-replacer-reviver", "version": "1.1.3", "license": "MIT", "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.2", + "@types/node": "20.14.3", "rimraf": "5.0.7", "tsup": "8.1.0", "tsx": "4.15.6", "typescript": "5.4.5" } }, - "packages/json-replacer-reviver/node_modules/@types/node": { - "version": "20.14.2", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.2.tgz", - "integrity": "sha512-xyu6WAMVwv6AKFLB+e/7ySZVr/0zLCzOa7rSpq6jNwpqOrUbcACDWC+53d4n2QHOnDou0fbIsg8wZu/sxrnI4Q==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "packages/server": { "name": "@neshca/server", "version": "1.1.1", @@ -17704,21 +17640,12 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.14.2", + "@types/node": "20.14.3", "rimraf": "5.0.7", "tsup": "8.1.0", "tsx": "4.15.6", "typescript": "5.4.5" } - }, - "packages/server/node_modules/@types/node": { - "version": "20.14.2", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.2.tgz", - "integrity": "sha512-xyu6WAMVwv6AKFLB+e/7ySZVr/0zLCzOa7rSpq6jNwpqOrUbcACDWC+53d4n2QHOnDou0fbIsg8wZu/sxrnI4Q==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } } } } diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 1d3ee321..f21daaba 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -79,7 +79,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.14.2", + "@types/node": "20.14.3", "rimraf": "5.0.7", "tsup": "8.1.0", "tsx": "4.15.6", diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index db482917..3d7021c4 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -25,7 +25,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.2", + "@types/node": "20.14.3", "rimraf": "5.0.7", "tsup": "8.1.0", "typescript": "5.4.5" diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index ed91c766..497b5f46 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -28,7 +28,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.2", + "@types/node": "20.14.3", "rimraf": "5.0.7", "tsup": "8.1.0", "tsx": "4.15.6", diff --git a/packages/server/package.json b/packages/server/package.json index 28ad75be..433519bb 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -32,7 +32,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.14.2", + "@types/node": "20.14.3", "rimraf": "5.0.7", "tsup": "8.1.0", "tsx": "4.15.6", From e76d2f3dafc94473d25be0bc2f670a3dc19881b9 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 19 Jun 2024 00:19:39 +0300 Subject: [PATCH 257/458] Bump @types/node from 20.14.3 to 20.14.5 in the definitely-typed group (#582) Bumps the definitely-typed group with 1 update: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node). Updates `@types/node` from 20.14.3 to 20.14.5 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) --- updated-dependencies: - dependency-name: "@types/node" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- internal/backend/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 24 ++++++++++----------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 10 files changed, 21 insertions(+), 21 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index f06d7cf1..a5a25399 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -28,7 +28,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "20.14.3", + "@types/node": "20.14.5", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "axios": "1.7.2", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 79e2656b..8cc6acd3 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -22,7 +22,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "20.14.3", + "@types/node": "20.14.5", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "eslint": "8.57.0", diff --git a/internal/backend/package.json b/internal/backend/package.json index 9d42dc4f..448811b3 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.3", + "@types/node": "20.14.5", "pino-pretty": "11.2.1", "rimraf": "5.0.7", "tsx": "4.15.6", diff --git a/internal/next-common/package.json b/internal/next-common/package.json index 65f5b062..e822e6b2 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.3", + "@types/node": "20.14.5", "rimraf": "5.0.7", "typescript": "5.4.5" } diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index c5d84584..265cb325 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -16,7 +16,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "20.14.3", + "@types/node": "20.14.5", "rimraf": "5.0.7", "typescript": "5.4.5" } diff --git a/package-lock.json b/package-lock.json index b46c3435..a27b863e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -48,7 +48,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "20.14.3", + "@types/node": "20.14.5", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "axios": "1.7.2", @@ -126,7 +126,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "20.14.3", + "@types/node": "20.14.5", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "eslint": "8.57.0", @@ -452,7 +452,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.3", + "@types/node": "20.14.5", "pino-pretty": "11.2.1", "rimraf": "5.0.7", "tsx": "4.15.6", @@ -591,7 +591,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.3", + "@types/node": "20.14.5", "rimraf": "5.0.7", "typescript": "5.4.5" } @@ -804,7 +804,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "20.14.3", + "@types/node": "20.14.5", "rimraf": "5.0.7", "typescript": "5.4.5" } @@ -4222,9 +4222,9 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "20.14.3", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.3.tgz", - "integrity": "sha512-Nuzqa6WAxeGnve6SXqiPAM9rA++VQs+iLZ1DDd56y0gdvygSZlQvZuvdFPR3yLqkVxPu4WrO02iDEyH1g+wazw==", + "version": "20.14.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.5.tgz", + "integrity": "sha512-aoRR+fJkZT2l0aGOJhuA8frnCSoNX6W7U2mpNq63+BxBIj5BQFt8rHy627kijCmm63ijdSdwvGgpUsU6MBsZZA==", "dependencies": { "undici-types": "~5.26.4" } @@ -17583,7 +17583,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.14.3", + "@types/node": "20.14.5", "rimraf": "5.0.7", "tsup": "8.1.0", "tsx": "4.15.6", @@ -17602,7 +17602,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.3", + "@types/node": "20.14.5", "rimraf": "5.0.7", "tsup": "8.1.0", "typescript": "5.4.5" @@ -17618,7 +17618,7 @@ "license": "MIT", "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.3", + "@types/node": "20.14.5", "rimraf": "5.0.7", "tsup": "8.1.0", "tsx": "4.15.6", @@ -17640,7 +17640,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.14.3", + "@types/node": "20.14.5", "rimraf": "5.0.7", "tsup": "8.1.0", "tsx": "4.15.6", diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index f21daaba..e7876e1e 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -79,7 +79,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.14.3", + "@types/node": "20.14.5", "rimraf": "5.0.7", "tsup": "8.1.0", "tsx": "4.15.6", diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index 3d7021c4..e76b0261 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -25,7 +25,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.3", + "@types/node": "20.14.5", "rimraf": "5.0.7", "tsup": "8.1.0", "typescript": "5.4.5" diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 497b5f46..049899a7 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -28,7 +28,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.3", + "@types/node": "20.14.5", "rimraf": "5.0.7", "tsup": "8.1.0", "tsx": "4.15.6", diff --git a/packages/server/package.json b/packages/server/package.json index 433519bb..0ad8862b 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -32,7 +32,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.14.3", + "@types/node": "20.14.5", "rimraf": "5.0.7", "tsup": "8.1.0", "tsx": "4.15.6", From 03e76c48b307bdcde308760c642b238b6003b05a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 19 Jun 2024 12:57:16 +0300 Subject: [PATCH 258/458] Bump pm2 from 5.4.0 to 5.4.1 (#583) Bumps [pm2](https://github.com/Unitech/pm2) from 5.4.0 to 5.4.1. - [Release notes](https://github.com/Unitech/pm2/releases) - [Changelog](https://github.com/Unitech/pm2/blob/master/CHANGELOG.md) - [Commits](https://github.com/Unitech/pm2/compare/v5.4.0...v5.4.1) --- updated-dependencies: - dependency-name: pm2 dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- package-lock.json | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index a5a25399..14aa1888 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -35,7 +35,7 @@ "dotenv-cli": "7.4.2", "eslint": "8.57.0", "fastify": "4.28.0", - "pm2": "5.4.0", + "pm2": "5.4.1", "redis": "4.6.13", "rimraf": "5.0.7", "tsx": "4.15.6", diff --git a/package-lock.json b/package-lock.json index a27b863e..9d9624dd 100644 --- a/package-lock.json +++ b/package-lock.json @@ -55,7 +55,7 @@ "dotenv-cli": "7.4.2", "eslint": "8.57.0", "fastify": "4.28.0", - "pm2": "5.4.0", + "pm2": "5.4.1", "redis": "4.6.13", "rimraf": "5.0.7", "tsx": "4.15.6", @@ -13461,9 +13461,9 @@ } }, "node_modules/pm2": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/pm2/-/pm2-5.4.0.tgz", - "integrity": "sha512-9TrDuckcSEnINoURygr3yfruK20qXuOUPOPQyIh4FIskQduyDNst9ys1XAt9YPY3RyGxVr2+x8Irsdma3klVQw==", + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/pm2/-/pm2-5.4.1.tgz", + "integrity": "sha512-y9ndADjy78XfzdbVHISn4WiUTrcvmsO7ieCtM/oC80rwPgBDg+bHkkz1e4eaLOW5a7sJsnDfQjJe4AqxNnIw5Q==", "dev": true, "dependencies": { "@pm2/agent": "~2.0.0", From 2e91fdf0efe17268c9405ce9d63b1352f87af1b1 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 19 Jun 2024 13:43:53 +0300 Subject: [PATCH 259/458] Bump glob from 10.4.1 to 10.4.2 (#584) Bumps [glob](https://github.com/isaacs/node-glob) from 10.4.1 to 10.4.2. - [Changelog](https://github.com/isaacs/node-glob/blob/main/changelog.md) - [Commits](https://github.com/isaacs/node-glob/compare/v10.4.1...v10.4.2) --- updated-dependencies: - dependency-name: glob dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 15 +++++++++++---- package.json | 2 +- 2 files changed, 12 insertions(+), 5 deletions(-) diff --git a/package-lock.json b/package-lock.json index 9d9624dd..cade545d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -24,7 +24,7 @@ "@repo/prettier-config": "*", "@repo/typescript-config": "*", "diffscribe": "*", - "glob": "10.4.1", + "glob": "10.4.2", "prettier": "3.3.2", "turbo": "2.0.4" }, @@ -9077,15 +9077,16 @@ "integrity": "sha512-IaOQ9puYtjrkq7Y0Ygl9KDZnrf/aiUJYUpVf89y8kyaxbRG7Y1SrX/jaumrv81vc61+kiMempujsM3Yw7w5qcw==" }, "node_modules/glob": { - "version": "10.4.1", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.1.tgz", - "integrity": "sha512-2jelhlq3E4ho74ZyVLN03oKdAZVUa6UDZzFLVH1H7dnoax+y9qyaq8zBkfDIggjniU19z0wU18y16jMB2eyVIw==", + "version": "10.4.2", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.2.tgz", + "integrity": "sha512-GwMlUF6PkPo3Gk21UxkCohOv0PLcIXVtKyLlpEI28R/cO/4eNOdmLk3CMW1wROV/WR/EsZOWAfBbBOqYvs88/w==", "dev": true, "dependencies": { "foreground-child": "^3.1.0", "jackspeak": "^3.1.2", "minimatch": "^9.0.4", "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", "path-scurry": "^1.11.1" }, "bin": { @@ -13154,6 +13155,12 @@ "node": ">= 14" } }, + "node_modules/package-json-from-dist": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.0.tgz", + "integrity": "sha512-dATvCeZN/8wQsGywez1mzHtTlP22H8OEfPrVMLNr4/eGa+ijtLn/6M5f0dY8UKNrC2O9UCU6SSoG3qRKnt7STw==", + "dev": true + }, "node_modules/pako": { "version": "0.2.9", "resolved": "https://registry.npmjs.org/pako/-/pako-0.2.9.tgz", diff --git a/package.json b/package.json index 86191080..08b86e17 100644 --- a/package.json +++ b/package.json @@ -42,7 +42,7 @@ "@repo/prettier-config": "*", "@repo/typescript-config": "*", "diffscribe": "*", - "glob": "10.4.1", + "glob": "10.4.2", "prettier": "3.3.2", "turbo": "2.0.4" }, From 4bf1a815fc9b43ef928e59c3cff4bff03aa87408 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 20 Jun 2024 12:47:48 +0300 Subject: [PATCH 260/458] Bump @types/node from 20.14.5 to 20.14.6 in the definitely-typed group (#585) Bumps the definitely-typed group with 1 update: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node). Updates `@types/node` from 20.14.5 to 20.14.6 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) --- updated-dependencies: - dependency-name: "@types/node" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- internal/backend/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 24 ++++++++++----------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 10 files changed, 21 insertions(+), 21 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 14aa1888..f64b9615 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -28,7 +28,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "20.14.5", + "@types/node": "20.14.6", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "axios": "1.7.2", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 8cc6acd3..d647dc4f 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -22,7 +22,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "20.14.5", + "@types/node": "20.14.6", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "eslint": "8.57.0", diff --git a/internal/backend/package.json b/internal/backend/package.json index 448811b3..d2d8aa36 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.5", + "@types/node": "20.14.6", "pino-pretty": "11.2.1", "rimraf": "5.0.7", "tsx": "4.15.6", diff --git a/internal/next-common/package.json b/internal/next-common/package.json index e822e6b2..41425a5a 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.5", + "@types/node": "20.14.6", "rimraf": "5.0.7", "typescript": "5.4.5" } diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index 265cb325..fa5aaf6b 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -16,7 +16,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "20.14.5", + "@types/node": "20.14.6", "rimraf": "5.0.7", "typescript": "5.4.5" } diff --git a/package-lock.json b/package-lock.json index cade545d..322bd980 100644 --- a/package-lock.json +++ b/package-lock.json @@ -48,7 +48,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "20.14.5", + "@types/node": "20.14.6", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "axios": "1.7.2", @@ -126,7 +126,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "20.14.5", + "@types/node": "20.14.6", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "eslint": "8.57.0", @@ -452,7 +452,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.5", + "@types/node": "20.14.6", "pino-pretty": "11.2.1", "rimraf": "5.0.7", "tsx": "4.15.6", @@ -591,7 +591,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.5", + "@types/node": "20.14.6", "rimraf": "5.0.7", "typescript": "5.4.5" } @@ -804,7 +804,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "20.14.5", + "@types/node": "20.14.6", "rimraf": "5.0.7", "typescript": "5.4.5" } @@ -4222,9 +4222,9 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "20.14.5", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.5.tgz", - "integrity": "sha512-aoRR+fJkZT2l0aGOJhuA8frnCSoNX6W7U2mpNq63+BxBIj5BQFt8rHy627kijCmm63ijdSdwvGgpUsU6MBsZZA==", + "version": "20.14.6", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.6.tgz", + "integrity": "sha512-JbA0XIJPL1IiNnU7PFxDXyfAwcwVVrOoqyzzyQTyMeVhBzkJVMSkC1LlVsRQ2lpqiY4n6Bb9oCS6lzDKVQxbZw==", "dependencies": { "undici-types": "~5.26.4" } @@ -17590,7 +17590,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.14.5", + "@types/node": "20.14.6", "rimraf": "5.0.7", "tsup": "8.1.0", "tsx": "4.15.6", @@ -17609,7 +17609,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.5", + "@types/node": "20.14.6", "rimraf": "5.0.7", "tsup": "8.1.0", "typescript": "5.4.5" @@ -17625,7 +17625,7 @@ "license": "MIT", "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.5", + "@types/node": "20.14.6", "rimraf": "5.0.7", "tsup": "8.1.0", "tsx": "4.15.6", @@ -17647,7 +17647,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.14.5", + "@types/node": "20.14.6", "rimraf": "5.0.7", "tsup": "8.1.0", "tsx": "4.15.6", diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index e7876e1e..050c433f 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -79,7 +79,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.14.5", + "@types/node": "20.14.6", "rimraf": "5.0.7", "tsup": "8.1.0", "tsx": "4.15.6", diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index e76b0261..d2d4b889 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -25,7 +25,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.5", + "@types/node": "20.14.6", "rimraf": "5.0.7", "tsup": "8.1.0", "typescript": "5.4.5" diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 049899a7..ee6b6f33 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -28,7 +28,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.5", + "@types/node": "20.14.6", "rimraf": "5.0.7", "tsup": "8.1.0", "tsx": "4.15.6", diff --git a/packages/server/package.json b/packages/server/package.json index 0ad8862b..91985f99 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -32,7 +32,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.14.5", + "@types/node": "20.14.6", "rimraf": "5.0.7", "tsup": "8.1.0", "tsx": "4.15.6", From 73830ff0794b4178d588f090abb1fabe6b97f828 Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Thu, 20 Jun 2024 15:39:23 +0300 Subject: [PATCH 261/458] Fix Custom Redis strings example in the docs (#587) --- .../src/pages/usage/creating-a-custom-handler.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/cache-handler-docs/src/pages/usage/creating-a-custom-handler.mdx b/docs/cache-handler-docs/src/pages/usage/creating-a-custom-handler.mdx index f765356b..ce618969 100644 --- a/docs/cache-handler-docs/src/pages/usage/creating-a-custom-handler.mdx +++ b/docs/cache-handler-docs/src/pages/usage/creating-a-custom-handler.mdx @@ -62,7 +62,7 @@ CacheHandler.onCreation(async () => { name: 'redis-strings-custom', // We do not use try/catch blocks in the Handler methods. // CacheHandler will handle errors and use the next available Handler. - async get(key, implicitTags) { + async get(key, { implicitTags }) { // Ensure that the client is ready before using it. // If the client is not ready, the CacheHandler will use the next available Handler. assertClientIsReady(); From f7b02b9720c1bd7a1784f6473dd3ccfda9b49ea4 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 21 Jun 2024 12:50:33 +0300 Subject: [PATCH 262/458] Bump @biomejs/biome from 1.8.1 to 1.8.2 (#589) Bumps [@biomejs/biome](https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome) from 1.8.1 to 1.8.2. - [Release notes](https://github.com/biomejs/biome/releases) - [Changelog](https://github.com/biomejs/biome/blob/main/CHANGELOG.md) - [Commits](https://github.com/biomejs/biome/commits/cli/v1.8.2/packages/@biomejs/biome) --- updated-dependencies: - dependency-name: "@biomejs/biome" dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 72 +++++++++++++++++++++++------------------------ package.json | 2 +- 2 files changed, 37 insertions(+), 37 deletions(-) diff --git a/package-lock.json b/package-lock.json index 322bd980..efc45cd4 100644 --- a/package-lock.json +++ b/package-lock.json @@ -20,7 +20,7 @@ }, "devDependencies": { "@actions/core": "1.10.1", - "@biomejs/biome": "1.8.1", + "@biomejs/biome": "1.8.2", "@repo/prettier-config": "*", "@repo/typescript-config": "*", "diffscribe": "*", @@ -1345,9 +1345,9 @@ } }, "node_modules/@biomejs/biome": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/@biomejs/biome/-/biome-1.8.1.tgz", - "integrity": "sha512-fQXGfvq6DIXem12dGQCM2tNF+vsNHH1qs3C7WeOu75Pd0trduoTmoO7G4ntLJ2qDs5wuw981H+cxQhi1uHnAtA==", + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/@biomejs/biome/-/biome-1.8.2.tgz", + "integrity": "sha512-XafCzLgs0xbH0bCjYKxQ63ig2V86fZQMq1jiy5pyLToWk9aHxA8GAUxyBtklPHtPYZPGEPOYglQHj4jyfUp+Iw==", "dev": true, "hasInstallScript": true, "bin": { @@ -1361,20 +1361,20 @@ "url": "https://opencollective.com/biome" }, "optionalDependencies": { - "@biomejs/cli-darwin-arm64": "1.8.1", - "@biomejs/cli-darwin-x64": "1.8.1", - "@biomejs/cli-linux-arm64": "1.8.1", - "@biomejs/cli-linux-arm64-musl": "1.8.1", - "@biomejs/cli-linux-x64": "1.8.1", - "@biomejs/cli-linux-x64-musl": "1.8.1", - "@biomejs/cli-win32-arm64": "1.8.1", - "@biomejs/cli-win32-x64": "1.8.1" + "@biomejs/cli-darwin-arm64": "1.8.2", + "@biomejs/cli-darwin-x64": "1.8.2", + "@biomejs/cli-linux-arm64": "1.8.2", + "@biomejs/cli-linux-arm64-musl": "1.8.2", + "@biomejs/cli-linux-x64": "1.8.2", + "@biomejs/cli-linux-x64-musl": "1.8.2", + "@biomejs/cli-win32-arm64": "1.8.2", + "@biomejs/cli-win32-x64": "1.8.2" } }, "node_modules/@biomejs/cli-darwin-arm64": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-1.8.1.tgz", - "integrity": "sha512-XLiB7Uu6GALIOBWzQ2aMD0ru4Ly5/qSeQF7kk3AabzJ/kwsEWSe33iVySBP/SS2qv25cgqNiLksjGcw2bHT3mw==", + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-1.8.2.tgz", + "integrity": "sha512-l9msLsTcSIAPqMsPIhodQmb50sEfaXPLQ0YW4cdj6INmd8iaOh/V9NceQb2366vACTJgcWDQ2RzlvURek1T68g==", "cpu": [ "arm64" ], @@ -1388,9 +1388,9 @@ } }, "node_modules/@biomejs/cli-darwin-x64": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-x64/-/cli-darwin-x64-1.8.1.tgz", - "integrity": "sha512-uMTSxVLMfqkBVqyc25hSn83jBbp+wtWjzM/pHFlKXt3htJuw7FErVGW0nmQ9Sxa9vJ7GcqoltLMl28VQRIMYzg==", + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-x64/-/cli-darwin-x64-1.8.2.tgz", + "integrity": "sha512-Fc4y/FuIxRSiB3TJ+y27vFDE/HJt4QgBuymktsIKEcBZvnKfsRjxvzVDunccRn4xbKgepnp+fn6BoS+ZIg/I3Q==", "cpu": [ "x64" ], @@ -1404,9 +1404,9 @@ } }, "node_modules/@biomejs/cli-linux-arm64": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64/-/cli-linux-arm64-1.8.1.tgz", - "integrity": "sha512-3SzZRuC/9Oi2P2IBNPsEj0KXxSXUEYRR2kfRF/Ve8QAfGgrt4qnwuWd6QQKKN5R+oYH691qjm+cXBKEcrP1v/Q==", + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64/-/cli-linux-arm64-1.8.2.tgz", + "integrity": "sha512-Q99qwP0qibkZxm2kfnt37OxeIlliDYf5ogi3zX9ij2DULzc+KtPA9Uj0wCljcJofOBsBYaHc7597Q+Bf/251ww==", "cpu": [ "arm64" ], @@ -1420,9 +1420,9 @@ } }, "node_modules/@biomejs/cli-linux-arm64-musl": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-1.8.1.tgz", - "integrity": "sha512-UQ8Wc01J0wQL+5AYOc7qkJn20B4PZmQL1KrmDZh7ot0DvD6aX4+8mmfd/dG5b6Zjo/44QvCKcvkFGCMRYuhWZA==", + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-1.8.2.tgz", + "integrity": "sha512-WpT41QJJvkZa1eZq0WmD513zkC6AYaMI39HJKmKeiUeX2NZirG+bxv1YRDhqkns1NbBqo3+qrJqBkPmOW+xAVA==", "cpu": [ "arm64" ], @@ -1436,9 +1436,9 @@ } }, "node_modules/@biomejs/cli-linux-x64": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64/-/cli-linux-x64-1.8.1.tgz", - "integrity": "sha512-AeBycVdNrTzsyYKEOtR2R0Ph0hCD0sCshcp2aOnfGP0hCZbtFg09D0SdKLbyzKntisY41HxKVrydYiaApp+2uw==", + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64/-/cli-linux-x64-1.8.2.tgz", + "integrity": "sha512-bjhhUVFchFid2gOjrvBe4fg8BShcpyFQTHuB/QQnfGxs1ddrGP30yq3fHfc6S6MoCcz9Tjd3Zzq1EfWfyy5iHA==", "cpu": [ "x64" ], @@ -1452,9 +1452,9 @@ } }, "node_modules/@biomejs/cli-linux-x64-musl": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-1.8.1.tgz", - "integrity": "sha512-fYbP/kNu/rtZ4kKzWVocIdqZOtBSUEg9qUhZaao3dy3CRzafR6u6KDtBeSCnt47O+iLnks1eOR1TUxzr5+QuqA==", + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-1.8.2.tgz", + "integrity": "sha512-rk1Wj4d3LIlAlIAS1m2jlyfOjkNbuY1lfwKvWIAeZC51yDMzwhRD7cReE5PE+jqLDtq60PX38hDPeKd7nA1S6A==", "cpu": [ "x64" ], @@ -1468,9 +1468,9 @@ } }, "node_modules/@biomejs/cli-win32-arm64": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-arm64/-/cli-win32-arm64-1.8.1.tgz", - "integrity": "sha512-6tEd1H/iFKpgpE3OIB7oNgW5XkjiVMzMRPL8zYoZ036YfuJ5nMYm9eB9H/y81+8Z76vL48fiYzMPotJwukGPqQ==", + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-arm64/-/cli-win32-arm64-1.8.2.tgz", + "integrity": "sha512-EUbqmCmNWT5xhnxHrCAEBzJB1AnLqxTYoRjlxiCMzGvsy5jQzhCanJ8CT9kNsApW3pfPWBWkoTa7qrwWmwnEGA==", "cpu": [ "arm64" ], @@ -1484,9 +1484,9 @@ } }, "node_modules/@biomejs/cli-win32-x64": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-x64/-/cli-win32-x64-1.8.1.tgz", - "integrity": "sha512-g2H31jJzYmS4jkvl6TiyEjEX+Nv79a5km/xn+5DARTp5MBFzC9gwceusSSB2AkJKqZzY131AiACAWjKrVt5Ijw==", + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-x64/-/cli-win32-x64-1.8.2.tgz", + "integrity": "sha512-n9H5oRUCk1uNezMgyJh9+hZdtfD8PXLLeq8DUzTycIhl0I1BulIoZ/uxWgRVDFDwAR1JHu1AykISCRFNGnc4iA==", "cpu": [ "x64" ], diff --git a/package.json b/package.json index 08b86e17..fe377bbe 100644 --- a/package.json +++ b/package.json @@ -38,7 +38,7 @@ }, "devDependencies": { "@actions/core": "1.10.1", - "@biomejs/biome": "1.8.1", + "@biomejs/biome": "1.8.2", "@repo/prettier-config": "*", "@repo/typescript-config": "*", "diffscribe": "*", From 546555131e02026d94f9c3a1c77a2d61695e0224 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 21 Jun 2024 13:19:52 +0300 Subject: [PATCH 263/458] Bump typescript from 5.4.5 to 5.5.2 (#588) Bumps [typescript](https://github.com/Microsoft/TypeScript) from 5.4.5 to 5.5.2. - [Release notes](https://github.com/Microsoft/TypeScript/releases) - [Changelog](https://github.com/microsoft/TypeScript/blob/main/azure-pipelines.release.yml) - [Commits](https://github.com/Microsoft/TypeScript/compare/v5.4.5...v5.5.2) --- updated-dependencies: - dependency-name: typescript dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- internal/backend/package.json | 2 +- internal/eslint-config/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 26 ++++++++++----------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 11 files changed, 23 insertions(+), 23 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index f64b9615..4f168e4b 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -39,6 +39,6 @@ "redis": "4.6.13", "rimraf": "5.0.7", "tsx": "4.15.6", - "typescript": "5.4.5" + "typescript": "5.5.2" } } diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index d647dc4f..47c7c22e 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -26,6 +26,6 @@ "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "eslint": "8.57.0", - "typescript": "5.4.5" + "typescript": "5.5.2" } } diff --git a/internal/backend/package.json b/internal/backend/package.json index d2d8aa36..f930d6f0 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -19,6 +19,6 @@ "pino-pretty": "11.2.1", "rimraf": "5.0.7", "tsx": "4.15.6", - "typescript": "5.4.5" + "typescript": "5.5.2" } } diff --git a/internal/eslint-config/package.json b/internal/eslint-config/package.json index 7020889d..aced28ec 100644 --- a/internal/eslint-config/package.json +++ b/internal/eslint-config/package.json @@ -12,6 +12,6 @@ "eslint-config-prettier": "9.1.0", "eslint-config-turbo": "2.0.4", "eslint-plugin-only-warn": "1.1.0", - "typescript": "5.4.5" + "typescript": "5.5.2" } } diff --git a/internal/next-common/package.json b/internal/next-common/package.json index 41425a5a..e296a156 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -17,6 +17,6 @@ "@repo/typescript-config": "*", "@types/node": "20.14.6", "rimraf": "5.0.7", - "typescript": "5.4.5" + "typescript": "5.5.2" } } diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index fa5aaf6b..3bd825fa 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -18,6 +18,6 @@ "@repo/typescript-config": "*", "@types/node": "20.14.6", "rimraf": "5.0.7", - "typescript": "5.4.5" + "typescript": "5.5.2" } } diff --git a/package-lock.json b/package-lock.json index efc45cd4..56b36587 100644 --- a/package-lock.json +++ b/package-lock.json @@ -59,7 +59,7 @@ "redis": "4.6.13", "rimraf": "5.0.7", "tsx": "4.15.6", - "typescript": "5.4.5" + "typescript": "5.5.2" } }, "apps/cache-testing/node_modules/next": { @@ -130,7 +130,7 @@ "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "eslint": "8.57.0", - "typescript": "5.4.5" + "typescript": "5.5.2" } }, "docs/cache-handler-docs/node_modules/@next/env": { @@ -456,7 +456,7 @@ "pino-pretty": "11.2.1", "rimraf": "5.0.7", "tsx": "4.15.6", - "typescript": "5.4.5" + "typescript": "5.5.2" } }, "internal/eslint-config": { @@ -469,7 +469,7 @@ "eslint-config-prettier": "9.1.0", "eslint-config-turbo": "2.0.4", "eslint-plugin-only-warn": "1.1.0", - "typescript": "5.4.5" + "typescript": "5.5.2" } }, "internal/eslint-config/node_modules/@next/eslint-plugin-next": { @@ -593,7 +593,7 @@ "@repo/typescript-config": "*", "@types/node": "20.14.6", "rimraf": "5.0.7", - "typescript": "5.4.5" + "typescript": "5.5.2" } }, "internal/next-common/node_modules/@next/env": { @@ -806,7 +806,7 @@ "@repo/typescript-config": "*", "@types/node": "20.14.6", "rimraf": "5.0.7", - "typescript": "5.4.5" + "typescript": "5.5.2" } }, "internal/prettier-config": { @@ -16636,9 +16636,9 @@ } }, "node_modules/typescript": { - "version": "5.4.5", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.4.5.tgz", - "integrity": "sha512-vcI4UpRgg81oIRUFwR0WSIHKt11nJ7SAVlYNIu+QpqeyXP+gpQJy/Z4+F0aGxSE4MqwjyXvW/TzgkLAx2AGHwQ==", + "version": "5.5.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.5.2.tgz", + "integrity": "sha512-NcRtPEOsPFFWjobJEtfihkLCZCXZt/os3zf8nTxjVH3RvTSxjrCamJpbExGvYOF+tFHc3pA65qpdwPbzjohhew==", "dev": true, "bin": { "tsc": "bin/tsc", @@ -17594,7 +17594,7 @@ "rimraf": "5.0.7", "tsup": "8.1.0", "tsx": "4.15.6", - "typescript": "5.4.5" + "typescript": "5.5.2" }, "peerDependencies": { "next": ">=13.5.1", @@ -17612,7 +17612,7 @@ "@types/node": "20.14.6", "rimraf": "5.0.7", "tsup": "8.1.0", - "typescript": "5.4.5" + "typescript": "5.5.2" }, "peerDependencies": { "dotenv": "^16.3.1", @@ -17629,7 +17629,7 @@ "rimraf": "5.0.7", "tsup": "8.1.0", "tsx": "4.15.6", - "typescript": "5.4.5" + "typescript": "5.5.2" } }, "packages/server": { @@ -17651,7 +17651,7 @@ "rimraf": "5.0.7", "tsup": "8.1.0", "tsx": "4.15.6", - "typescript": "5.4.5" + "typescript": "5.5.2" } } } diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 050c433f..a58171f6 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -83,7 +83,7 @@ "rimraf": "5.0.7", "tsup": "8.1.0", "tsx": "4.15.6", - "typescript": "5.4.5" + "typescript": "5.5.2" }, "peerDependencies": { "next": ">=13.5.1", diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index d2d4b889..6882f2fc 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -28,7 +28,7 @@ "@types/node": "20.14.6", "rimraf": "5.0.7", "tsup": "8.1.0", - "typescript": "5.4.5" + "typescript": "5.5.2" }, "peerDependencies": { "dotenv": "^16.3.1", diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index ee6b6f33..251104df 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -32,6 +32,6 @@ "rimraf": "5.0.7", "tsup": "8.1.0", "tsx": "4.15.6", - "typescript": "5.4.5" + "typescript": "5.5.2" } } diff --git a/packages/server/package.json b/packages/server/package.json index 91985f99..eaba4438 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -36,7 +36,7 @@ "rimraf": "5.0.7", "tsup": "8.1.0", "tsx": "4.15.6", - "typescript": "5.4.5" + "typescript": "5.5.2" }, "distTags": [ "next13.5", From 65e3f766c4ce55ec2ee7f3d3fc45d231213cb881 Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Fri, 21 Jun 2024 13:52:24 +0300 Subject: [PATCH 264/458] Fix vulnerability in dependencies (#590) * Fix vulnerability in dependencies * Remove useless `turbo` flags --- package-lock.json | 14 +++++++------- package.json | 28 ++++++++++++++-------------- 2 files changed, 21 insertions(+), 21 deletions(-) diff --git a/package-lock.json b/package-lock.json index 56b36587..8706e7af 100644 --- a/package-lock.json +++ b/package-lock.json @@ -3525,9 +3525,9 @@ } }, "node_modules/@pm2/agent": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@pm2/agent/-/agent-2.0.3.tgz", - "integrity": "sha512-xkqqCoTf5VsciMqN0vb9jthW7olVAi4KRFNddCc7ZkeJZ3i8QwZANr4NSH2H5DvseRFHq7MiPspRY/EWAFWWTg==", + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@pm2/agent/-/agent-2.0.4.tgz", + "integrity": "sha512-n7WYvvTJhHLS2oBb1PjOtgLpMhgImOq8sXkPBw6smeg9LJBWZjiEgPKOpR8mn9UJZsB5P3W4V/MyvNnp31LKeA==", "dev": true, "dependencies": { "async": "~3.2.0", @@ -3542,7 +3542,7 @@ "pm2-axon-rpc": "~0.7.0", "proxy-agent": "~6.3.0", "semver": "~7.5.0", - "ws": "~7.4.0" + "ws": "~7.5.10" } }, "node_modules/@pm2/agent/node_modules/ansi-styles": { @@ -17451,9 +17451,9 @@ "dev": true }, "node_modules/ws": { - "version": "7.4.6", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.4.6.tgz", - "integrity": "sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A==", + "version": "7.5.10", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.10.tgz", + "integrity": "sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ==", "dev": true, "engines": { "node": ">=8.3.0" diff --git a/package.json b/package.json index fe377bbe..f8a5c922 100644 --- a/package.json +++ b/package.json @@ -10,27 +10,27 @@ "internal/*" ], "scripts": { - "build": "turbo run build --log-prefix=none --filter=!./apps/* --filter=!./docs/*", - "build:app": "turbo run build --log-prefix=none --filter=cache-testing", - "build:docs": "turbo run build:docs --log-prefix=none --filter=cache-handler-docs", + "build": "turbo run build --filter=!./apps/* --filter=!./docs/*", + "build:app": "turbo run build --filter=cache-testing", + "build:docs": "turbo run build:docs --filter=cache-handler-docs", "changeset": "changeset", - "clean": "turbo run clean --log-order=grouped", + "clean": "turbo run clean", "codestyle:check": "biome check . && npm run eslint:check && npm run prettier:check", "codestyle:fix": "biome check --write . && npm run eslint:fix && npm run prettier:fix", - "dev": "turbo run dev --log-prefix=none --filter=!diffscribe", - "dev:backend": "turbo run dev --log-prefix=none --filter=backend", - "dev:with-redis": "turbo run dev --log-prefix=none --filter=!@neshca/server --filter=!diffscribe", - "e2e": "turbo run e2e --log-prefix=none", - "eslint:check": "turbo run eslint:check --log-order=grouped", - "eslint:fix": "turbo run eslint:fix --log-order=grouped", + "dev": "turbo run dev --filter=!diffscribe", + "dev:backend": "turbo run dev --filter=backend", + "dev:with-redis": "turbo run dev --filter=!@neshca/server --filter=!diffscribe", + "e2e": "turbo run e2e", + "eslint:check": "turbo run eslint:check", + "eslint:fix": "turbo run eslint:fix", "postinstall": "turbo telemetry disable", "prettier:check": "prettier --check **/*.{md,mdx,yml,json}", "prettier:fix": "prettier --write **/*.{md,mdx,yml,json}", "release": "npm run build && npm run codestyle:check && changeset publish", - "start": "turbo run start --log-prefix=none --filter=!./apps/* --filter=!./docs/*", - "start:app": "turbo run start --log-prefix=none --filter=cache-testing", - "start:backend": "turbo run start --log-prefix=none --filter=backend", - "test": "turbo run test --log-order=grouped", + "start": "turbo run start --filter=!./apps/* --filter=!./docs/*", + "start:app": "turbo run start --filter=cache-testing", + "start:backend": "turbo run start --filter=backend", + "test": "turbo run test", "version-packages": "changeset version && npm run codestyle:fix" }, "dependencies": { From c6f10f1d4647f45b0134c2c596b581edeb8508f3 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 21 Jun 2024 14:05:54 +0300 Subject: [PATCH 265/458] Bump @types/node from 20.14.6 to 20.14.7 in the definitely-typed group (#591) Bumps the definitely-typed group with 1 update: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node). Updates `@types/node` from 20.14.6 to 20.14.7 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) --- updated-dependencies: - dependency-name: "@types/node" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- internal/backend/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 24 ++++++++++----------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 10 files changed, 21 insertions(+), 21 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 4f168e4b..1fd722d5 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -28,7 +28,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "20.14.6", + "@types/node": "20.14.7", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "axios": "1.7.2", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 47c7c22e..6cd26b30 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -22,7 +22,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "20.14.6", + "@types/node": "20.14.7", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "eslint": "8.57.0", diff --git a/internal/backend/package.json b/internal/backend/package.json index f930d6f0..d86f3cb3 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.6", + "@types/node": "20.14.7", "pino-pretty": "11.2.1", "rimraf": "5.0.7", "tsx": "4.15.6", diff --git a/internal/next-common/package.json b/internal/next-common/package.json index e296a156..7d099be4 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.6", + "@types/node": "20.14.7", "rimraf": "5.0.7", "typescript": "5.5.2" } diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index 3bd825fa..2dd44ecd 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -16,7 +16,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "20.14.6", + "@types/node": "20.14.7", "rimraf": "5.0.7", "typescript": "5.5.2" } diff --git a/package-lock.json b/package-lock.json index 8706e7af..a539a625 100644 --- a/package-lock.json +++ b/package-lock.json @@ -48,7 +48,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "20.14.6", + "@types/node": "20.14.7", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "axios": "1.7.2", @@ -126,7 +126,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "20.14.6", + "@types/node": "20.14.7", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "eslint": "8.57.0", @@ -452,7 +452,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.6", + "@types/node": "20.14.7", "pino-pretty": "11.2.1", "rimraf": "5.0.7", "tsx": "4.15.6", @@ -591,7 +591,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.6", + "@types/node": "20.14.7", "rimraf": "5.0.7", "typescript": "5.5.2" } @@ -804,7 +804,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "20.14.6", + "@types/node": "20.14.7", "rimraf": "5.0.7", "typescript": "5.5.2" } @@ -4222,9 +4222,9 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "20.14.6", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.6.tgz", - "integrity": "sha512-JbA0XIJPL1IiNnU7PFxDXyfAwcwVVrOoqyzzyQTyMeVhBzkJVMSkC1LlVsRQ2lpqiY4n6Bb9oCS6lzDKVQxbZw==", + "version": "20.14.7", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.7.tgz", + "integrity": "sha512-uTr2m2IbJJucF3KUxgnGOZvYbN0QgkGyWxG6973HCpMYFy2KfcgYuIwkJQMQkt1VbBMlvWRbpshFTLxnxCZjKQ==", "dependencies": { "undici-types": "~5.26.4" } @@ -17590,7 +17590,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.14.6", + "@types/node": "20.14.7", "rimraf": "5.0.7", "tsup": "8.1.0", "tsx": "4.15.6", @@ -17609,7 +17609,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.6", + "@types/node": "20.14.7", "rimraf": "5.0.7", "tsup": "8.1.0", "typescript": "5.5.2" @@ -17625,7 +17625,7 @@ "license": "MIT", "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.6", + "@types/node": "20.14.7", "rimraf": "5.0.7", "tsup": "8.1.0", "tsx": "4.15.6", @@ -17647,7 +17647,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.14.6", + "@types/node": "20.14.7", "rimraf": "5.0.7", "tsup": "8.1.0", "tsx": "4.15.6", diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index a58171f6..680bfff8 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -79,7 +79,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.14.6", + "@types/node": "20.14.7", "rimraf": "5.0.7", "tsup": "8.1.0", "tsx": "4.15.6", diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index 6882f2fc..7a67802a 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -25,7 +25,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.6", + "@types/node": "20.14.7", "rimraf": "5.0.7", "tsup": "8.1.0", "typescript": "5.5.2" diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 251104df..54c7fcd3 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -28,7 +28,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.6", + "@types/node": "20.14.7", "rimraf": "5.0.7", "tsup": "8.1.0", "tsx": "4.15.6", diff --git a/packages/server/package.json b/packages/server/package.json index eaba4438..b15efccf 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -32,7 +32,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.14.6", + "@types/node": "20.14.7", "rimraf": "5.0.7", "tsup": "8.1.0", "tsx": "4.15.6", From 827f07756bd3d76fee2aadd25e1a05961bbd963f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 21 Jun 2024 14:14:58 +0300 Subject: [PATCH 266/458] Bump tsx from 4.15.6 to 4.15.7 (#592) Bumps [tsx](https://github.com/privatenumber/tsx) from 4.15.6 to 4.15.7. - [Release notes](https://github.com/privatenumber/tsx/releases) - [Changelog](https://github.com/privatenumber/tsx/blob/master/release.config.cjs) - [Commits](https://github.com/privatenumber/tsx/compare/v4.15.6...v4.15.7) --- updated-dependencies: - dependency-name: tsx dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- internal/backend/package.json | 2 +- package-lock.json | 16 ++++++++-------- packages/cache-handler/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 6 files changed, 13 insertions(+), 13 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 1fd722d5..bb99b599 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -38,7 +38,7 @@ "pm2": "5.4.1", "redis": "4.6.13", "rimraf": "5.0.7", - "tsx": "4.15.6", + "tsx": "4.15.7", "typescript": "5.5.2" } } diff --git a/internal/backend/package.json b/internal/backend/package.json index d86f3cb3..719aeee4 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -18,7 +18,7 @@ "@types/node": "20.14.7", "pino-pretty": "11.2.1", "rimraf": "5.0.7", - "tsx": "4.15.6", + "tsx": "4.15.7", "typescript": "5.5.2" } } diff --git a/package-lock.json b/package-lock.json index a539a625..c363d095 100644 --- a/package-lock.json +++ b/package-lock.json @@ -58,7 +58,7 @@ "pm2": "5.4.1", "redis": "4.6.13", "rimraf": "5.0.7", - "tsx": "4.15.6", + "tsx": "4.15.7", "typescript": "5.5.2" } }, @@ -455,7 +455,7 @@ "@types/node": "20.14.7", "pino-pretty": "11.2.1", "rimraf": "5.0.7", - "tsx": "4.15.6", + "tsx": "4.15.7", "typescript": "5.5.2" } }, @@ -16303,9 +16303,9 @@ "dev": true }, "node_modules/tsx": { - "version": "4.15.6", - "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.15.6.tgz", - "integrity": "sha512-is0VQQlfNZRHEuSSTKA6m4xw74IU4AizmuB6lAYLRt9XtuyeQnyJYexhNZOPCB59SqC4JzmSzPnHGBXxf3k0hA==", + "version": "4.15.7", + "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.15.7.tgz", + "integrity": "sha512-u3H0iSFDZM3za+VxkZ1kywdCeHCn+8/qHQS1MNoO2sONDgD95HlWtt8aB23OzeTmFP9IU4/8bZUdg58Uu5J4cg==", "dev": true, "dependencies": { "esbuild": "~0.21.4", @@ -17593,7 +17593,7 @@ "@types/node": "20.14.7", "rimraf": "5.0.7", "tsup": "8.1.0", - "tsx": "4.15.6", + "tsx": "4.15.7", "typescript": "5.5.2" }, "peerDependencies": { @@ -17628,7 +17628,7 @@ "@types/node": "20.14.7", "rimraf": "5.0.7", "tsup": "8.1.0", - "tsx": "4.15.6", + "tsx": "4.15.7", "typescript": "5.5.2" } }, @@ -17650,7 +17650,7 @@ "@types/node": "20.14.7", "rimraf": "5.0.7", "tsup": "8.1.0", - "tsx": "4.15.6", + "tsx": "4.15.7", "typescript": "5.5.2" } } diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 680bfff8..628c1d00 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -82,7 +82,7 @@ "@types/node": "20.14.7", "rimraf": "5.0.7", "tsup": "8.1.0", - "tsx": "4.15.6", + "tsx": "4.15.7", "typescript": "5.5.2" }, "peerDependencies": { diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 54c7fcd3..0b867128 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -31,7 +31,7 @@ "@types/node": "20.14.7", "rimraf": "5.0.7", "tsup": "8.1.0", - "tsx": "4.15.6", + "tsx": "4.15.7", "typescript": "5.5.2" } } diff --git a/packages/server/package.json b/packages/server/package.json index b15efccf..1ea221f1 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -35,7 +35,7 @@ "@types/node": "20.14.7", "rimraf": "5.0.7", "tsup": "8.1.0", - "tsx": "4.15.6", + "tsx": "4.15.7", "typescript": "5.5.2" }, "distTags": [ From 18e31b48d44020666962842baf8b9c58549296b1 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 21 Jun 2024 14:27:15 +0300 Subject: [PATCH 267/458] Bump redis from 4.6.13 to 4.6.14 (#534) Bumps [redis](https://github.com/redis/node-redis) from 4.6.13 to 4.6.14. - [Release notes](https://github.com/redis/node-redis/releases) - [Changelog](https://github.com/redis/node-redis/blob/master/CHANGELOG.md) - [Commits](https://github.com/redis/node-redis/compare/redis@4.6.13...redis@4.6.14) --- updated-dependencies: - dependency-name: redis dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- package-lock.json | 16 ++++++++-------- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index bb99b599..1046ff8a 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -36,7 +36,7 @@ "eslint": "8.57.0", "fastify": "4.28.0", "pm2": "5.4.1", - "redis": "4.6.13", + "redis": "4.6.14", "rimraf": "5.0.7", "tsx": "4.15.7", "typescript": "5.5.2" diff --git a/package-lock.json b/package-lock.json index c363d095..a0a1511b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -56,7 +56,7 @@ "eslint": "8.57.0", "fastify": "4.28.0", "pm2": "5.4.1", - "redis": "4.6.13", + "redis": "4.6.14", "rimraf": "5.0.7", "tsx": "4.15.7", "typescript": "5.5.2" @@ -3776,9 +3776,9 @@ } }, "node_modules/@redis/client": { - "version": "1.5.14", - "resolved": "https://registry.npmjs.org/@redis/client/-/client-1.5.14.tgz", - "integrity": "sha512-YGn0GqsRBFUQxklhY7v562VMOP0DcmlrHHs3IV1mFE3cbxe31IITUkqhBcIhVSI/2JqtWAJXg5mjV4aU+zD0HA==", + "version": "1.5.16", + "resolved": "https://registry.npmjs.org/@redis/client/-/client-1.5.16.tgz", + "integrity": "sha512-X1a3xQ5kEMvTib5fBrHKh6Y+pXbeKXqziYuxOUo1ojQNECg4M5Etd1qqyhMap+lFUOAh8S7UYevgJHOm4A+NOg==", "dependencies": { "cluster-key-slot": "1.1.2", "generic-pool": "3.9.0", @@ -14198,15 +14198,15 @@ } }, "node_modules/redis": { - "version": "4.6.13", - "resolved": "https://registry.npmjs.org/redis/-/redis-4.6.13.tgz", - "integrity": "sha512-MHgkS4B+sPjCXpf+HfdetBwbRz6vCtsceTmw1pHNYJAsYxrfpOP6dz+piJWGos8wqG7qb3vj/Rrc5qOlmInUuA==", + "version": "4.6.14", + "resolved": "https://registry.npmjs.org/redis/-/redis-4.6.14.tgz", + "integrity": "sha512-GrNg/e33HtsQwNXL7kJT+iNFPSwE1IPmd7wzV3j4f2z0EYxZfZE7FVTmUysgAtqQQtg5NXF5SNLR9OdO/UHOfw==", "workspaces": [ "./packages/*" ], "dependencies": { "@redis/bloom": "1.2.0", - "@redis/client": "1.5.14", + "@redis/client": "1.5.16", "@redis/graph": "1.1.1", "@redis/json": "1.0.6", "@redis/search": "1.1.6", From b99daa935d5dbf67a99dc70c3a77d351f835e366 Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Fri, 21 Jun 2024 18:05:00 +0300 Subject: [PATCH 268/458] Update GitHub Actions workflows to run only on specific paths (#593) --- .github/workflows/deploy-docs.yml | 3 +++ .github/workflows/tests.yml | 14 ++++++++++++++ 2 files changed, 17 insertions(+) diff --git a/.github/workflows/deploy-docs.yml b/.github/workflows/deploy-docs.yml index cd9c3eff..8fff61f2 100644 --- a/.github/workflows/deploy-docs.yml +++ b/.github/workflows/deploy-docs.yml @@ -3,6 +3,9 @@ name: Deploy docs to Pages on: push: branches: ['canary'] + paths: + - 'docs/cache-handler-docs/**' + - '.github/workflows/deploy-docs.yml' workflow_dispatch: diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 65c98279..74eb860e 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -2,8 +2,22 @@ name: Tests on: push: branches: [canary] + paths: + - 'apps/cache-testing/**' + - 'packages/cache-handler/**' + - 'internal/next-common/**' + - 'internal/next-lru-cache/**' + - 'server/**' + - '.github/workflows/tests.yml' pull_request: branches: [canary] + paths: + - 'apps/cache-testing/**' + - 'packages/cache-handler/**' + - 'internal/next-common/**' + - 'internal/next-lru-cache/**' + - 'server/**' + - '.github/workflows/tests.yml' jobs: test: name: 'redis-stack' From 7533366ab5f523f60a3766096b27f39871651916 Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Sun, 23 Jun 2024 23:57:41 +0300 Subject: [PATCH 269/458] Update installation instructions in the docs (#594) * Update installation instruction in the docs * Add GitHub Actions workflow to check docs build --- .github/workflows/deploy-docs.yml | 2 ++ .github/workflows/release.yml | 5 ++-- .github/workflows/test-docs.yml | 25 +++++++++++++++++++ .github/workflows/tests.yml | 2 ++ .../src/pages/installation.mdx | 4 +-- docs/cache-handler-docs/src/pages/server.mdx | 2 +- .../pages/usage/creating-a-custom-handler.mdx | 2 +- 7 files changed, 35 insertions(+), 7 deletions(-) create mode 100644 .github/workflows/test-docs.yml diff --git a/.github/workflows/deploy-docs.yml b/.github/workflows/deploy-docs.yml index 8fff61f2..88098216 100644 --- a/.github/workflows/deploy-docs.yml +++ b/.github/workflows/deploy-docs.yml @@ -28,6 +28,8 @@ jobs: uses: actions/setup-node@v4 with: node-version-file: '.nvmrc' + check-latest: true + cache: 'npm' - name: Setup Pages uses: actions/configure-pages@v3 - name: Install dependencies diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 6dc27f35..dce5dcdd 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -14,15 +14,14 @@ jobs: steps: - name: Checkout Repo uses: actions/checkout@v4 - - name: Setup Node.js uses: actions/setup-node@v4 with: node-version-file: '.nvmrc' - + check-latest: true + cache: 'npm' - name: Install Dependencies run: npm ci - - name: Create Release Pull Request or Publish to npm id: changesets uses: changesets/action@v1 diff --git a/.github/workflows/test-docs.yml b/.github/workflows/test-docs.yml new file mode 100644 index 00000000..bcbcff95 --- /dev/null +++ b/.github/workflows/test-docs.yml @@ -0,0 +1,25 @@ +name: Check Docs Build +on: + pull_request: + branches: [canary] + paths: + - '.github/workflows/test-docs.yml' + - 'docs/cache-handler-docs/**' +jobs: + test: + name: 'check-docs-build' + timeout-minutes: 5 + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-node@v4 + with: + node-version-file: '.nvmrc' + check-latest: true + cache: 'npm' + - name: Install dependencies + run: npm ci + - name: Check code style + run: npm run codestyle:check + - name: Build docs + run: npm run build:docs diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 74eb860e..542414a1 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -41,6 +41,8 @@ jobs: - uses: actions/setup-node@v4 with: node-version-file: '.nvmrc' + check-latest: true + cache: 'npm' - name: Install dependencies run: npm ci - name: Install Playwright Browsers diff --git a/docs/cache-handler-docs/src/pages/installation.mdx b/docs/cache-handler-docs/src/pages/installation.mdx index 9d1fa1be..fc32418b 100644 --- a/docs/cache-handler-docs/src/pages/installation.mdx +++ b/docs/cache-handler-docs/src/pages/installation.mdx @@ -30,14 +30,14 @@ pnpm create next-app --example cache-handler-redis cache-handler-redis-app Execute this command in your Next.js project root directory: ```sh npm2yarn copy - npm install -D @neshca/cache-handler + npm install @neshca/cache-handler ``` 2. **Optional Redis Installation**: Install Redis if you plan to use it as your cache store: ```sh npm2yarn copy - npm install -D redis + npm install redis ``` ### Basic Custom Configuration diff --git a/docs/cache-handler-docs/src/pages/server.mdx b/docs/cache-handler-docs/src/pages/server.mdx index 9e390ae7..22542c5b 100644 --- a/docs/cache-handler-docs/src/pages/server.mdx +++ b/docs/cache-handler-docs/src/pages/server.mdx @@ -7,7 +7,7 @@ import { Callout } from 'nextra/components'; To install the `@neshca/server` package and its peer dependencies, run the following command: ```sh npm2yarn copy -npm i -D @neshca/server pino fastify pino-pretty +npm i @neshca/server pino fastify pino-pretty ``` Run the server with the following command: diff --git a/docs/cache-handler-docs/src/pages/usage/creating-a-custom-handler.mdx b/docs/cache-handler-docs/src/pages/usage/creating-a-custom-handler.mdx index ce618969..d386b3f0 100644 --- a/docs/cache-handler-docs/src/pages/usage/creating-a-custom-handler.mdx +++ b/docs/cache-handler-docs/src/pages/usage/creating-a-custom-handler.mdx @@ -7,7 +7,7 @@ This example demonstrates how to create a full-featured custom Redis handler for Install the `redis` package: ```sh npm2yarn copy -npm install -D redis +npm install redis ``` Then, install the Redis server locally or use a cloud-based Redis service. Learn how to run Redis locally by following the [Install Redis Stack documentation](https://redis.io/docs/install/install-stack/docker/). Redis Stack also includes a RedisInsight tool to manage and monitor your Redis instance. From 05a02aa4238448ea8f4ec41b0588e0c1b3d3b335 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 24 Jun 2024 14:12:06 +0300 Subject: [PATCH 270/458] Bump @changesets/cli from 2.27.5 to 2.27.6 (#596) Bumps [@changesets/cli](https://github.com/changesets/changesets) from 2.27.5 to 2.27.6. - [Release notes](https://github.com/changesets/changesets/releases) - [Changelog](https://github.com/changesets/changesets/blob/main/docs/modifying-changelog-format.md) - [Commits](https://github.com/changesets/changesets/compare/@changesets/cli@2.27.5...@changesets/cli@2.27.6) --- updated-dependencies: - dependency-name: "@changesets/cli" dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 755 +++++++--------------------------------------- package.json | 2 +- 2 files changed, 113 insertions(+), 644 deletions(-) diff --git a/package-lock.json b/package-lock.json index a0a1511b..af657cf0 100644 --- a/package-lock.json +++ b/package-lock.json @@ -16,7 +16,7 @@ "internal/*" ], "dependencies": { - "@changesets/cli": "2.27.5" + "@changesets/cli": "2.27.6" }, "devDependencies": { "@actions/core": "1.10.1", @@ -969,6 +969,7 @@ "version": "7.24.7", "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.7.tgz", "integrity": "sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA==", + "dev": true, "dependencies": { "@babel/highlight": "^7.24.7", "picocolors": "^1.0.0" @@ -1223,6 +1224,7 @@ "version": "7.24.7", "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.7.tgz", "integrity": "sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w==", + "dev": true, "engines": { "node": ">=6.9.0" } @@ -1253,6 +1255,7 @@ "version": "7.24.7", "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.7.tgz", "integrity": "sha512-EStJpq4OuY8xYfhGVXngigBJRWxftKX9ksiGDnmlY3o7B/V7KIAc9X4oiK87uPJSc/vs5L869bem5fhZa8caZw==", + "dev": true, "dependencies": { "@babel/helper-validator-identifier": "^7.24.7", "chalk": "^2.4.2", @@ -1562,9 +1565,9 @@ } }, "node_modules/@changesets/cli": { - "version": "2.27.5", - "resolved": "https://registry.npmjs.org/@changesets/cli/-/cli-2.27.5.tgz", - "integrity": "sha512-UVppOvzCjjylBenFcwcZNG5IaZ8jsIaEVraV/pbXgukYNb0Oqa0d8UWb0LkYzA1Bf1HmUrOfccFcRLheRuA7pA==", + "version": "2.27.6", + "resolved": "https://registry.npmjs.org/@changesets/cli/-/cli-2.27.6.tgz", + "integrity": "sha512-PB7KS5JkCQ4WSXlnfThn8CXAHVwYxFdZvYTimhi12fls/tzj9iimUhKsYwkrKSbw1AiVlGCZtihj5Wkt6siIjA==", "dependencies": { "@babel/runtime": "^7.20.1", "@changesets/apply-release-plan": "^7.0.3", @@ -1590,15 +1593,14 @@ "external-editor": "^3.1.0", "fs-extra": "^7.0.1", "human-id": "^1.0.2", - "meow": "^6.0.0", + "mri": "^1.2.0", "outdent": "^0.5.0", "p-limit": "^2.2.0", "preferred-pm": "^3.0.0", "resolve-from": "^5.0.0", "semver": "^7.5.3", "spawndamnit": "^2.0.0", - "term-size": "^2.1.0", - "tty-table": "^4.1.5" + "term-size": "^2.1.0" }, "bin": { "changeset": "bin.js" @@ -4211,11 +4213,6 @@ "resolved": "https://registry.npmjs.org/@types/mdx/-/mdx-2.0.13.tgz", "integrity": "sha512-+OWZQfAYyio6YkJb3HLxDrvnx6SWWDbC0zVPfBRzUk0/nqoDyf6dNxQi3eArPe8rJ473nobTMQ/8Zk+LxJ+Yuw==" }, - "node_modules/@types/minimist": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-hov8bUuiLiyFPGyFPE1lwWhmzYbirOXQNNo40+y3zow8aFVTeyn3VWL0VFFfdNddA8S4Vf0Tc062rzyNr7Paag==" - }, "node_modules/@types/ms": { "version": "0.7.34", "resolved": "https://registry.npmjs.org/@types/ms/-/ms-0.7.34.tgz", @@ -4242,7 +4239,8 @@ "node_modules/@types/normalize-package-data": { "version": "2.4.4", "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.4.tgz", - "integrity": "sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==" + "integrity": "sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==", + "dev": true }, "node_modules/@types/prop-types": { "version": "15.7.12", @@ -4831,6 +4829,7 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.1.tgz", "integrity": "sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg==", + "dev": true, "dependencies": { "call-bind": "^1.0.5", "is-array-buffer": "^3.0.4" @@ -4914,6 +4913,7 @@ "version": "1.3.2", "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.2.tgz", "integrity": "sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==", + "dev": true, "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.2.0", @@ -4977,6 +4977,7 @@ "version": "1.0.3", "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.3.tgz", "integrity": "sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A==", + "dev": true, "dependencies": { "array-buffer-byte-length": "^1.0.1", "call-bind": "^1.0.5", @@ -4994,14 +4995,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/arrify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", - "integrity": "sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==", - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/ast-types": { "version": "0.13.4", "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.13.4.tgz", @@ -5051,6 +5044,7 @@ "version": "1.0.7", "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==", + "dev": true, "dependencies": { "possible-typed-array-names": "^1.0.0" }, @@ -5207,14 +5201,6 @@ "node": ">=8" } }, - "node_modules/breakword": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/breakword/-/breakword-1.0.6.tgz", - "integrity": "sha512-yjxDAYyK/pBvws9H4xKYpLDpYKEH6CzrBPAuXq3x18I+c/2MkVtT3qAr7Oloi6Dss9qNhPVueAAVU1CSeNDIXw==", - "dependencies": { - "wcwidth": "^1.0.1" - } - }, "node_modules/browserslist": { "version": "4.23.1", "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.1.tgz", @@ -5335,6 +5321,7 @@ "version": "1.0.7", "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.7.tgz", "integrity": "sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==", + "dev": true, "dependencies": { "es-define-property": "^1.0.0", "es-errors": "^1.3.0", @@ -5358,30 +5345,6 @@ "node": ">=6" } }, - "node_modules/camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "engines": { - "node": ">=6" - } - }, - "node_modules/camelcase-keys": { - "version": "6.2.2", - "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-6.2.2.tgz", - "integrity": "sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg==", - "dependencies": { - "camelcase": "^5.3.1", - "map-obj": "^4.0.0", - "quick-lru": "^4.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/caniuse-lite": { "version": "1.0.30001636", "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001636.tgz", @@ -5645,91 +5608,6 @@ "node": ">=4" } }, - "node_modules/cliui": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", - "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", - "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.1", - "wrap-ansi": "^7.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/cliui/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/cliui/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/cliui/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" - }, - "node_modules/cliui/node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" - }, - "node_modules/cliui/node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/cliui/node_modules/wrap-ansi": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" - } - }, - "node_modules/clone": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", - "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==", - "engines": { - "node": ">=0.8" - } - }, "node_modules/clsx": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/clsx/-/clsx-2.1.1.tgz", @@ -5905,35 +5783,6 @@ "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==" }, - "node_modules/csv": { - "version": "5.5.3", - "resolved": "https://registry.npmjs.org/csv/-/csv-5.5.3.tgz", - "integrity": "sha512-QTaY0XjjhTQOdguARF0lGKm5/mEq9PD9/VhZZegHDIBq2tQwgNpHc3dneD4mGo2iJs+fTKv5Bp0fZ+BRuY3Z0g==", - "dependencies": { - "csv-generate": "^3.4.3", - "csv-parse": "^4.16.3", - "csv-stringify": "^5.6.5", - "stream-transform": "^2.1.3" - }, - "engines": { - "node": ">= 0.1.90" - } - }, - "node_modules/csv-generate": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/csv-generate/-/csv-generate-3.4.3.tgz", - "integrity": "sha512-w/T+rqR0vwvHqWs/1ZyMDWtHHSJaN06klRqJXBEpDJaM/+dZkso0OKh1VcuuYvK3XM53KysVNq8Ko/epCK8wOw==" - }, - "node_modules/csv-parse": { - "version": "4.16.3", - "resolved": "https://registry.npmjs.org/csv-parse/-/csv-parse-4.16.3.tgz", - "integrity": "sha512-cO1I/zmz4w2dcKHVvpCr7JVRu8/FymG5OEpmvsZYlccYolPBLoVGKUHgNoc4ZGkFeFlWGEDmMyBM+TTqRdW/wg==" - }, - "node_modules/csv-stringify": { - "version": "5.6.5", - "resolved": "https://registry.npmjs.org/csv-stringify/-/csv-stringify-5.6.5.tgz", - "integrity": "sha512-PjiQ659aQ+fUTQqSrd1XEDnOr52jh30RBurfzkscaE2tPaFsDH5wOAHJiw8XAHphRknCwMUE9KRayc4K/NbO8A==" - }, "node_modules/culvert": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/culvert/-/culvert-0.1.2.tgz", @@ -6411,6 +6260,7 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.1.tgz", "integrity": "sha512-0lht7OugA5x3iJLOWFhWK/5ehONdprk0ISXqVFn/NFrDu+cuc8iADFrGQz5BnRK7LLU3JmkbXSxaqX+/mXYtUA==", + "dev": true, "dependencies": { "call-bind": "^1.0.6", "es-errors": "^1.3.0", @@ -6427,6 +6277,7 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.1.tgz", "integrity": "sha512-4J7wRJD3ABAzr8wP+OcIcqq2dlUKp4DVflx++hs5h5ZKydWMI6/D/fAot+yh6g2tHh8fLFTvNOaVN357NvSrOQ==", + "dev": true, "dependencies": { "call-bind": "^1.0.7", "es-errors": "^1.3.0", @@ -6443,6 +6294,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.0.tgz", "integrity": "sha512-t/Ygsytq+R995EJ5PZlD4Cu56sWa8InXySaViRzw9apusqsOO2bQP+SbYzAhR0pFKoB+43lYy8rWban9JSuXnA==", + "dev": true, "dependencies": { "call-bind": "^1.0.6", "es-errors": "^1.3.0", @@ -6485,37 +6337,6 @@ } } }, - "node_modules/decamelize": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/decamelize-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.1.tgz", - "integrity": "sha512-WiPxgEirIV0/eIOMcnFBA3/IJZAZqKnwAwWyvvdi4lsr1WCN22nhdf/3db3DoZcUjTV2SqfzIwNyp6y2xs3nmg==", - "dependencies": { - "decamelize": "^1.1.0", - "map-obj": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/decamelize-keys/node_modules/map-obj": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", - "integrity": "sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg==", - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/decode-named-character-reference": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/decode-named-character-reference/-/decode-named-character-reference-1.0.2.tgz", @@ -6534,21 +6355,11 @@ "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", "dev": true }, - "node_modules/defaults": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.4.tgz", - "integrity": "sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==", - "dependencies": { - "clone": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/define-data-property": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", + "dev": true, "dependencies": { "es-define-property": "^1.0.0", "es-errors": "^1.3.0", @@ -6565,6 +6376,7 @@ "version": "1.2.1", "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", + "dev": true, "dependencies": { "define-data-property": "^1.0.1", "has-property-descriptors": "^1.0.0", @@ -6803,6 +6615,7 @@ "version": "1.3.2", "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dev": true, "dependencies": { "is-arrayish": "^0.2.1" } @@ -6811,6 +6624,7 @@ "version": "1.23.3", "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.23.3.tgz", "integrity": "sha512-e+HfNH61Bj1X9/jLc5v1owaLYuHdeHHSQlkhCBiTK8rBvKaULl/beGMxwrMXjpYrv4pz22BlY570vVePA2ho4A==", + "dev": true, "dependencies": { "array-buffer-byte-length": "^1.0.1", "arraybuffer.prototype.slice": "^1.0.3", @@ -6870,6 +6684,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.0.tgz", "integrity": "sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==", + "dev": true, "dependencies": { "get-intrinsic": "^1.2.4" }, @@ -6881,6 +6696,7 @@ "version": "1.3.0", "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", + "dev": true, "engines": { "node": ">= 0.4" } @@ -6914,6 +6730,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.0.0.tgz", "integrity": "sha512-MZ4iQ6JwHOBQjahnjwaC1ZtIBH+2ohjamzAO3oaHcXYup7qxjF2fixyH+Q71voWHeOkI2q/TnJao/KfXYIZWbw==", + "dev": true, "dependencies": { "es-errors": "^1.3.0" }, @@ -6925,6 +6742,7 @@ "version": "2.0.3", "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.3.tgz", "integrity": "sha512-3T8uNMC3OQTHkFUsFq8r/BwAXLHvU/9O9mE0fBc/MY5iq/8H7ncvO947LmYA6ldWw9Uh8Yhf25zu6n7nML5QWQ==", + "dev": true, "dependencies": { "get-intrinsic": "^1.2.4", "has-tostringtag": "^1.0.2", @@ -6938,6 +6756,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.2.tgz", "integrity": "sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw==", + "dev": true, "dependencies": { "hasown": "^2.0.0" } @@ -6946,6 +6765,7 @@ "version": "1.2.1", "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", + "dev": true, "dependencies": { "is-callable": "^1.1.4", "is-date-object": "^1.0.1", @@ -7000,6 +6820,7 @@ "version": "3.1.2", "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.2.tgz", "integrity": "sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==", + "dev": true, "engines": { "node": ">=6" } @@ -8758,6 +8579,7 @@ "version": "0.3.3", "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", + "dev": true, "dependencies": { "is-callable": "^1.1.3" } @@ -8863,6 +8685,7 @@ "version": "1.1.2", "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "dev": true, "funding": { "url": "https://github.com/sponsors/ljharb" } @@ -8871,6 +8694,7 @@ "version": "1.1.6", "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.6.tgz", "integrity": "sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==", + "dev": true, "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.2.0", @@ -8888,6 +8712,7 @@ "version": "1.2.3", "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", + "dev": true, "funding": { "url": "https://github.com/sponsors/ljharb" } @@ -8909,18 +8734,11 @@ "node": ">=6.9.0" } }, - "node_modules/get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "engines": { - "node": "6.* || 8.* || >= 10.*" - } - }, "node_modules/get-intrinsic": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz", "integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==", + "dev": true, "dependencies": { "es-errors": "^1.3.0", "function-bind": "^1.1.2", @@ -8959,6 +8777,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.2.tgz", "integrity": "sha512-g0QYk1dZBxGwk+Ngc+ltRH2IBp2f7zBkBMBJZCDerh6EhlhSR6+9irMCuT/09zD6qkarHUSn529sK/yL4S27mg==", + "dev": true, "dependencies": { "call-bind": "^1.0.5", "es-errors": "^1.3.0", @@ -9148,6 +8967,7 @@ "version": "1.0.4", "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz", "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==", + "dev": true, "dependencies": { "define-properties": "^1.2.1", "gopd": "^1.0.1" @@ -9182,6 +9002,7 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", + "dev": true, "dependencies": { "get-intrinsic": "^1.1.3" }, @@ -9194,11 +9015,6 @@ "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==" }, - "node_modules/grapheme-splitter": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz", - "integrity": "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==" - }, "node_modules/graphemer": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", @@ -9219,18 +9035,11 @@ "node": ">=6.0" } }, - "node_modules/hard-rejection": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/hard-rejection/-/hard-rejection-2.1.0.tgz", - "integrity": "sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==", - "engines": { - "node": ">=6" - } - }, "node_modules/has-bigints": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", + "dev": true, "funding": { "url": "https://github.com/sponsors/ljharb" } @@ -9247,6 +9056,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", + "dev": true, "dependencies": { "es-define-property": "^1.0.0" }, @@ -9258,6 +9068,7 @@ "version": "1.0.3", "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.3.tgz", "integrity": "sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==", + "dev": true, "engines": { "node": ">= 0.4" }, @@ -9269,6 +9080,7 @@ "version": "1.0.3", "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "dev": true, "engines": { "node": ">= 0.4" }, @@ -9280,6 +9092,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", + "dev": true, "dependencies": { "has-symbols": "^1.0.3" }, @@ -9321,6 +9134,7 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "dev": true, "dependencies": { "function-bind": "^1.1.2" }, @@ -9724,7 +9538,8 @@ "node_modules/hosted-git-info": { "version": "2.8.9", "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", - "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==" + "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", + "dev": true }, "node_modules/html-void-elements": { "version": "3.0.0", @@ -9860,6 +9675,7 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "dev": true, "engines": { "node": ">=8" } @@ -9896,6 +9712,7 @@ "version": "1.0.7", "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.7.tgz", "integrity": "sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g==", + "dev": true, "dependencies": { "es-errors": "^1.3.0", "hasown": "^2.0.0", @@ -9971,6 +9788,7 @@ "version": "3.0.4", "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.4.tgz", "integrity": "sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw==", + "dev": true, "dependencies": { "call-bind": "^1.0.2", "get-intrinsic": "^1.2.1" @@ -9985,7 +9803,8 @@ "node_modules/is-arrayish": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==" + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", + "dev": true }, "node_modules/is-async-function": { "version": "2.0.0", @@ -10006,6 +9825,7 @@ "version": "1.0.4", "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", + "dev": true, "dependencies": { "has-bigints": "^1.0.1" }, @@ -10029,6 +9849,7 @@ "version": "1.1.2", "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", + "dev": true, "dependencies": { "call-bind": "^1.0.2", "has-tostringtag": "^1.0.0" @@ -10081,6 +9902,7 @@ "version": "1.2.7", "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", + "dev": true, "engines": { "node": ">= 0.4" }, @@ -10092,6 +9914,7 @@ "version": "2.13.1", "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==", + "dev": true, "dependencies": { "hasown": "^2.0.0" }, @@ -10103,6 +9926,7 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.1.tgz", "integrity": "sha512-AHkaJrsUVW6wq6JS8y3JnM/GJF/9cf+k20+iDzlSaJrinEo5+7vRiteOSwBhHRiAyQATN1AmY4hwzxJKPmYf+w==", + "dev": true, "dependencies": { "is-typed-array": "^1.1.13" }, @@ -10117,6 +9941,7 @@ "version": "1.0.5", "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", + "dev": true, "dependencies": { "has-tostringtag": "^1.0.0" }, @@ -10168,6 +9993,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, "engines": { "node": ">=8" } @@ -10223,6 +10049,7 @@ "version": "2.0.3", "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.3.tgz", "integrity": "sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==", + "dev": true, "engines": { "node": ">= 0.4" }, @@ -10242,6 +10069,7 @@ "version": "1.0.7", "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", + "dev": true, "dependencies": { "has-tostringtag": "^1.0.0" }, @@ -10272,14 +10100,6 @@ "node": ">=8" } }, - "node_modules/is-plain-obj": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", - "integrity": "sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==", - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/is-reference": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/is-reference/-/is-reference-3.0.2.tgz", @@ -10292,6 +10112,7 @@ "version": "1.1.4", "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", + "dev": true, "dependencies": { "call-bind": "^1.0.2", "has-tostringtag": "^1.0.0" @@ -10319,6 +10140,7 @@ "version": "1.0.3", "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.3.tgz", "integrity": "sha512-nA2hv5XIhLR3uVzDDfCIknerhx8XUKnstuOERPNNIinXG7v9u+ohXF67vxm4TPTEPU6lm61ZkwP3c9PCB97rhg==", + "dev": true, "dependencies": { "call-bind": "^1.0.7" }, @@ -10349,6 +10171,7 @@ "version": "1.0.7", "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", + "dev": true, "dependencies": { "has-tostringtag": "^1.0.0" }, @@ -10374,6 +10197,7 @@ "version": "1.0.4", "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", + "dev": true, "dependencies": { "has-symbols": "^1.0.2" }, @@ -10388,6 +10212,7 @@ "version": "1.1.13", "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.13.tgz", "integrity": "sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw==", + "dev": true, "dependencies": { "which-typed-array": "^1.1.14" }, @@ -10414,6 +10239,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", + "dev": true, "dependencies": { "call-bind": "^1.0.2" }, @@ -10448,7 +10274,8 @@ "node_modules/isarray": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", - "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==" + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", + "dev": true }, "node_modules/isexe": { "version": "2.0.0", @@ -10557,7 +10384,8 @@ "node_modules/json-parse-even-better-errors": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", - "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==" + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "dev": true }, "node_modules/json-schema-ref-resolver": { "version": "1.0.1", @@ -10741,7 +10569,8 @@ "node_modules/lines-and-columns": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", - "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==" + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", + "dev": true }, "node_modules/load-tsconfig": { "version": "0.2.5", @@ -10838,17 +10667,6 @@ "node": "14 || >=16.14" } }, - "node_modules/map-obj": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-4.3.0.tgz", - "integrity": "sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ==", - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/markdown-extensions": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/markdown-extensions/-/markdown-extensions-1.1.1.tgz", @@ -11427,41 +11245,6 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/meow": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/meow/-/meow-6.1.1.tgz", - "integrity": "sha512-3YffViIt2QWgTy6Pale5QpopX/IvU3LPL03jOTqp6pGj3VjesdO/U8CuHMKpnQr4shCNCM5fd5XFFvIIl6JBHg==", - "dependencies": { - "@types/minimist": "^1.2.0", - "camelcase-keys": "^6.2.2", - "decamelize-keys": "^1.1.0", - "hard-rejection": "^2.1.0", - "minimist-options": "^4.0.2", - "normalize-package-data": "^2.5.0", - "read-pkg-up": "^7.0.1", - "redent": "^3.0.0", - "trim-newlines": "^3.0.0", - "type-fest": "^0.13.1", - "yargs-parser": "^18.1.3" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/meow/node_modules/type-fest": { - "version": "0.13.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.13.1.tgz", - "integrity": "sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/merge-stream": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", @@ -12311,6 +12094,7 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", + "dev": true, "engines": { "node": ">=4" } @@ -12339,19 +12123,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/minimist-options": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-4.1.0.tgz", - "integrity": "sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==", - "dependencies": { - "arrify": "^1.0.1", - "is-plain-obj": "^1.1.0", - "kind-of": "^6.0.3" - }, - "engines": { - "node": ">= 6" - } - }, "node_modules/minipass": { "version": "7.1.2", "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", @@ -12361,14 +12132,6 @@ "node": ">=16 || 14 >=14.17" } }, - "node_modules/mixme": { - "version": "0.5.10", - "resolved": "https://registry.npmjs.org/mixme/-/mixme-0.5.10.tgz", - "integrity": "sha512-5H76ANWinB1H3twpJ6JY8uvAtpmFvHNArpilJAjXRKXSDDLPIMoZArw5SH0q9z+lLs8IrMw7Q2VWpWimFKFT1Q==", - "engines": { - "node": ">= 8.0.0" - } - }, "node_modules/mkdirp": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", @@ -12778,6 +12541,7 @@ "version": "2.5.0", "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "dev": true, "dependencies": { "hosted-git-info": "^2.1.4", "resolve": "^1.10.0", @@ -12789,6 +12553,7 @@ "version": "5.7.2", "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "dev": true, "bin": { "semver": "bin/semver" } @@ -12864,6 +12629,7 @@ "version": "1.13.1", "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.1.tgz", "integrity": "sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==", + "dev": true, "funding": { "url": "https://github.com/sponsors/ljharb" } @@ -12872,6 +12638,7 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "dev": true, "engines": { "node": ">= 0.4" } @@ -12880,6 +12647,7 @@ "version": "4.1.5", "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.5.tgz", "integrity": "sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==", + "dev": true, "dependencies": { "call-bind": "^1.0.5", "define-properties": "^1.2.1", @@ -13202,6 +12970,7 @@ "version": "5.2.0", "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "dev": true, "dependencies": { "@babel/code-frame": "^7.0.0", "error-ex": "^1.3.1", @@ -13276,7 +13045,8 @@ "node_modules/path-parse": { "version": "1.0.7", "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true }, "node_modules/path-scurry": { "version": "1.11.1", @@ -13717,6 +13487,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.0.0.tgz", "integrity": "sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==", + "dev": true, "engines": { "node": ">= 0.4" } @@ -14036,14 +13807,6 @@ "resolved": "https://registry.npmjs.org/quick-format-unescaped/-/quick-format-unescaped-4.0.4.tgz", "integrity": "sha512-tYC1Q1hgyRuHgloV/YXs2w15unPVh8qfu/qCTfhTYamaw7fyhumKa2yGpdSo87vY32rIclj+4fWYQXUMs9EHvg==" }, - "node_modules/quick-lru": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-4.0.1.tgz", - "integrity": "sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==", - "engines": { - "node": ">=8" - } - }, "node_modules/react": { "version": "18.3.1", "resolved": "https://registry.npmjs.org/react/-/react-18.3.1.tgz", @@ -14089,6 +13852,7 @@ "version": "5.2.0", "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", + "dev": true, "dependencies": { "@types/normalize-package-data": "^2.4.0", "normalize-package-data": "^2.5.0", @@ -14103,6 +13867,7 @@ "version": "7.0.1", "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz", "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==", + "dev": true, "dependencies": { "find-up": "^4.1.0", "read-pkg": "^5.2.0", @@ -14119,6 +13884,7 @@ "version": "0.8.1", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", + "dev": true, "engines": { "node": ">=8" } @@ -14127,6 +13893,7 @@ "version": "0.6.0", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==", + "dev": true, "engines": { "node": ">=8" } @@ -14185,18 +13952,6 @@ "node": ">= 12.13.0" } }, - "node_modules/redent": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz", - "integrity": "sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==", - "dependencies": { - "indent-string": "^4.0.0", - "strip-indent": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/redis": { "version": "4.6.14", "resolved": "https://registry.npmjs.org/redis/-/redis-4.6.14.tgz", @@ -14252,6 +14007,7 @@ "version": "1.5.2", "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.2.tgz", "integrity": "sha512-NcDiDkTLuPR+++OCKB0nWafEmhg/Da8aUPLPMQbK+bxKKCm1/S5he+AqYa4PlMCVBalb4/yxIRub6qkEx5yJbw==", + "dev": true, "dependencies": { "call-bind": "^1.0.6", "define-properties": "^1.2.1", @@ -14576,14 +14332,6 @@ "resolved": "https://registry.npmjs.org/remove-accents/-/remove-accents-0.5.0.tgz", "integrity": "sha512-8g3/Otx1eJaVD12e31UbJj1YzdtVvzH85HV7t+9MJYk/u3XmkOUJ5Ys9wQrf9PCPK8+xn4ymzqYCiZl6QWKn+A==" }, - "node_modules/require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/require-from-string": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", @@ -14606,15 +14354,11 @@ "node": ">=6" } }, - "node_modules/require-main-filename": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", - "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==" - }, "node_modules/resolve": { "version": "1.22.8", "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", + "dev": true, "dependencies": { "is-core-module": "^2.13.0", "path-parse": "^1.0.7", @@ -14786,6 +14530,7 @@ "version": "1.1.2", "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.2.tgz", "integrity": "sha512-vj6RsCsWBCf19jIeHEfkRMw8DPiBb+DMXklQ/1SGDHOMlHdPUkZXFQ2YdplS23zESTijAcurb1aSgJA3AgMu1Q==", + "dev": true, "dependencies": { "call-bind": "^1.0.7", "get-intrinsic": "^1.2.4", @@ -14822,6 +14567,7 @@ "version": "1.0.3", "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.3.tgz", "integrity": "sha512-CdASjNJPvRa7roO6Ra/gLYBTzYzzPyyBXxIMdGW3USQLyjWEls2RgW5UBTXaQVp+OrpeCK3bLem8smtmheoRuw==", + "dev": true, "dependencies": { "call-bind": "^1.0.6", "es-errors": "^1.3.0", @@ -14905,11 +14651,6 @@ "node": ">=10" } }, - "node_modules/set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==" - }, "node_modules/set-cookie-parser": { "version": "2.6.0", "resolved": "https://registry.npmjs.org/set-cookie-parser/-/set-cookie-parser-2.6.0.tgz", @@ -14919,6 +14660,7 @@ "version": "1.2.2", "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", + "dev": true, "dependencies": { "define-data-property": "^1.1.4", "es-errors": "^1.3.0", @@ -14935,6 +14677,7 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz", "integrity": "sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==", + "dev": true, "dependencies": { "define-data-property": "^1.1.4", "es-errors": "^1.3.0", @@ -15027,6 +14770,7 @@ "version": "1.0.6", "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.6.tgz", "integrity": "sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==", + "dev": true, "dependencies": { "call-bind": "^1.0.7", "es-errors": "^1.3.0", @@ -15085,122 +14829,6 @@ "npm": ">= 3.0.0" } }, - "node_modules/smartwrap": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/smartwrap/-/smartwrap-2.0.2.tgz", - "integrity": "sha512-vCsKNQxb7PnCNd2wY1WClWifAc2lwqsG8OaswpJkVJsvMGcnEntdTCDajZCkk93Ay1U3t/9puJmb525Rg5MZBA==", - "dependencies": { - "array.prototype.flat": "^1.2.3", - "breakword": "^1.0.5", - "grapheme-splitter": "^1.0.4", - "strip-ansi": "^6.0.0", - "wcwidth": "^1.0.1", - "yargs": "^15.1.0" - }, - "bin": { - "smartwrap": "src/terminal-adapter.js" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/smartwrap/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/smartwrap/node_modules/cliui": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", - "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", - "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^6.2.0" - } - }, - "node_modules/smartwrap/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/smartwrap/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" - }, - "node_modules/smartwrap/node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" - }, - "node_modules/smartwrap/node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/smartwrap/node_modules/wrap-ansi": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", - "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", - "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/smartwrap/node_modules/y18n": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", - "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==" - }, - "node_modules/smartwrap/node_modules/yargs": { - "version": "15.4.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", - "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", - "dependencies": { - "cliui": "^6.0.0", - "decamelize": "^1.2.0", - "find-up": "^4.1.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^4.2.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^18.1.2" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/socks": { "version": "2.8.3", "resolved": "https://registry.npmjs.org/socks/-/socks-2.8.3.tgz", @@ -15455,6 +15083,7 @@ "version": "3.2.0", "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.2.0.tgz", "integrity": "sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==", + "dev": true, "dependencies": { "spdx-expression-parse": "^3.0.0", "spdx-license-ids": "^3.0.0" @@ -15463,12 +15092,14 @@ "node_modules/spdx-exceptions": { "version": "2.5.0", "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.5.0.tgz", - "integrity": "sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w==" + "integrity": "sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w==", + "dev": true }, "node_modules/spdx-expression-parse": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", + "dev": true, "dependencies": { "spdx-exceptions": "^2.1.0", "spdx-license-ids": "^3.0.0" @@ -15477,7 +15108,8 @@ "node_modules/spdx-license-ids": { "version": "3.0.18", "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.18.tgz", - "integrity": "sha512-xxRs31BqRYHwiMzudOrpSiHtZ8i/GeionCBDSilhYRj+9gIcI8wCZTlXZKu9vZIVqViP3dcp9qE5G6AlIaD+TQ==" + "integrity": "sha512-xxRs31BqRYHwiMzudOrpSiHtZ8i/GeionCBDSilhYRj+9gIcI8wCZTlXZKu9vZIVqViP3dcp9qE5G6AlIaD+TQ==", + "dev": true }, "node_modules/split2": { "version": "4.2.0", @@ -15492,14 +15124,6 @@ "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==" }, - "node_modules/stream-transform": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/stream-transform/-/stream-transform-2.1.3.tgz", - "integrity": "sha512-9GHUiM5hMiCi6Y03jD2ARC1ettBXkQBoQAe7nJsPknnI0ow10aXjTnew8QtYQmLjzn974BnmWEAJgCY6ZP1DeQ==", - "dependencies": { - "mixme": "^0.5.1" - } - }, "node_modules/streamsearch": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/streamsearch/-/streamsearch-1.1.0.tgz", @@ -15611,6 +15235,7 @@ "version": "1.2.9", "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.9.tgz", "integrity": "sha512-klHuCNxiMZ8MlsOihJhJEBJAiMVqU3Z2nEXWfWnIqjN0gEFS9J9+IxKozWWtQGcgoa1WUZzLjKPTr4ZHNFTFxw==", + "dev": true, "dependencies": { "call-bind": "^1.0.7", "define-properties": "^1.2.1", @@ -15628,6 +15253,7 @@ "version": "1.0.8", "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.8.tgz", "integrity": "sha512-p73uL5VCHCO2BZZ6krwwQE3kCzM7NKmis8S//xEC6fQonchbum4eP6kR4DLEjQFO3Wnj3Fuo8NM0kOSjVdHjZQ==", + "dev": true, "dependencies": { "call-bind": "^1.0.7", "define-properties": "^1.2.1", @@ -15641,6 +15267,7 @@ "version": "1.0.8", "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz", "integrity": "sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==", + "dev": true, "dependencies": { "call-bind": "^1.0.7", "define-properties": "^1.2.1", @@ -15727,6 +15354,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz", "integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==", + "dev": true, "dependencies": { "min-indent": "^1.0.0" }, @@ -15827,6 +15455,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "dev": true, "engines": { "node": ">= 0.4" }, @@ -16057,14 +15686,6 @@ "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/trim-newlines": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-3.0.1.tgz", - "integrity": "sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw==", - "engines": { - "node": ">=8" - } - }, "node_modules/trough": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/trough/-/trough-2.2.0.tgz", @@ -16335,90 +15956,6 @@ "node": "^8.16.0 || ^10.6.0 || >=11.0.0" } }, - "node_modules/tty-table": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/tty-table/-/tty-table-4.2.3.tgz", - "integrity": "sha512-Fs15mu0vGzCrj8fmJNP7Ynxt5J7praPXqFN0leZeZBXJwkMxv9cb2D454k1ltrtUSJbZ4yH4e0CynsHLxmUfFA==", - "dependencies": { - "chalk": "^4.1.2", - "csv": "^5.5.3", - "kleur": "^4.1.5", - "smartwrap": "^2.0.2", - "strip-ansi": "^6.0.1", - "wcwidth": "^1.0.1", - "yargs": "^17.7.1" - }, - "bin": { - "tty-table": "adapters/terminal-adapter.js" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/tty-table/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/tty-table/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/tty-table/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/tty-table/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" - }, - "node_modules/tty-table/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "engines": { - "node": ">=8" - } - }, - "node_modules/tty-table/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/tunnel": { "version": "0.0.6", "resolved": "https://registry.npmjs.org/tunnel/-/tunnel-0.0.6.tgz", @@ -16570,6 +16107,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.2.tgz", "integrity": "sha512-gEymJYKZtKXzzBzM4jqa9w6Q1Jjm7x2d+sh19AdsD4wqnMPDYyvwpsIc2Q/835kHuo3BEQ7CjelGhfTsoBb2MQ==", + "dev": true, "dependencies": { "call-bind": "^1.0.7", "es-errors": "^1.3.0", @@ -16583,6 +16121,7 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.1.tgz", "integrity": "sha512-3iMJ9q0ao7WE9tWcaYKIptkNBuOIcZCCT0d4MRvuuH88fEoEH62IuQe0OtraD3ebQEoTRk8XCBoknUNc1Y67pw==", + "dev": true, "dependencies": { "call-bind": "^1.0.7", "for-each": "^0.3.3", @@ -16601,6 +16140,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.2.tgz", "integrity": "sha512-Ous0vodHa56FviZucS2E63zkgtgrACj7omjwd/8lTEMEPFFyjfixMZ1ZXenpgCFBBt4EC1J2XsyVS2gkG0eTFA==", + "dev": true, "dependencies": { "available-typed-arrays": "^1.0.7", "call-bind": "^1.0.7", @@ -16620,6 +16160,7 @@ "version": "1.0.6", "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.6.tgz", "integrity": "sha512-/OxDN6OtAk5KBpGb28T+HZc2M+ADtvRxXrKKbUwtsLgdoxgX13hyy7ek6bFRl5+aBs2yZzB0c4CnQfAtVypW/g==", + "dev": true, "dependencies": { "call-bind": "^1.0.7", "for-each": "^0.3.3", @@ -16652,6 +16193,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", + "dev": true, "dependencies": { "call-bind": "^1.0.2", "has-bigints": "^1.0.2", @@ -16981,6 +16523,7 @@ "version": "3.0.4", "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "dev": true, "dependencies": { "spdx-correct": "^3.0.0", "spdx-expression-parse": "^3.0.0" @@ -17152,14 +16695,6 @@ "resolved": "https://registry.npmjs.org/vscode-textmate/-/vscode-textmate-8.0.0.tgz", "integrity": "sha512-AFbieoL7a5LMqcnOF04ji+rpXadgOXnZsxQr//r83kLPr7biP7am3g9zbaZIaBGwBRWeSvoMD4mgPdX3e4NWBg==" }, - "node_modules/wcwidth": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", - "integrity": "sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==", - "dependencies": { - "defaults": "^1.0.3" - } - }, "node_modules/web-namespaces": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/web-namespaces/-/web-namespaces-2.0.1.tgz", @@ -17218,6 +16753,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", + "dev": true, "dependencies": { "is-bigint": "^1.0.1", "is-boolean-object": "^1.1.0", @@ -17273,11 +16809,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/which-module": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.1.tgz", - "integrity": "sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ==" - }, "node_modules/which-pm": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/which-pm/-/which-pm-2.0.0.tgz", @@ -17294,6 +16825,7 @@ "version": "1.1.15", "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.15.tgz", "integrity": "sha512-oV0jmFtUky6CXfkqehVvBP/LSWJ2sy4vWMioiENyJLePrBO/yKyV9OyJySfAKosh+RYkIl5zJCNZ8/4JncrpdA==", + "dev": true, "dependencies": { "available-typed-arrays": "^1.0.7", "call-bind": "^1.0.7", @@ -17471,14 +17003,6 @@ } } }, - "node_modules/y18n": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", - "engines": { - "node": ">=10" - } - }, "node_modules/yallist": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", @@ -17496,61 +17020,6 @@ "node": ">= 14" } }, - "node_modules/yargs": { - "version": "17.7.2", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", - "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", - "dependencies": { - "cliui": "^8.0.1", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.3", - "y18n": "^5.0.5", - "yargs-parser": "^21.1.1" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/yargs-parser": { - "version": "18.1.3", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", - "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", - "dependencies": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/yargs/node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" - }, - "node_modules/yargs/node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/yargs/node_modules/yargs-parser": { - "version": "21.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", - "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", - "engines": { - "node": ">=12" - } - }, "node_modules/yocto-queue": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", diff --git a/package.json b/package.json index f8a5c922..e57b9bd9 100644 --- a/package.json +++ b/package.json @@ -34,7 +34,7 @@ "version-packages": "changeset version && npm run codestyle:fix" }, "dependencies": { - "@changesets/cli": "2.27.5" + "@changesets/cli": "2.27.6" }, "devDependencies": { "@actions/core": "1.10.1", From c8aac14b3df07b09c4eb0fa94535164831c0a52a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 24 Jun 2024 17:02:25 +0000 Subject: [PATCH 271/458] Bump @types/node from 20.14.7 to 20.14.8 in the definitely-typed group (#595) --- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- internal/backend/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 24 ++++++++++----------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 10 files changed, 21 insertions(+), 21 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 1046ff8a..93e5b2e4 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -28,7 +28,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "20.14.7", + "@types/node": "20.14.8", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "axios": "1.7.2", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 6cd26b30..5f7aaae7 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -22,7 +22,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "20.14.7", + "@types/node": "20.14.8", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "eslint": "8.57.0", diff --git a/internal/backend/package.json b/internal/backend/package.json index 719aeee4..93a6f121 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.7", + "@types/node": "20.14.8", "pino-pretty": "11.2.1", "rimraf": "5.0.7", "tsx": "4.15.7", diff --git a/internal/next-common/package.json b/internal/next-common/package.json index 7d099be4..168d57b6 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.7", + "@types/node": "20.14.8", "rimraf": "5.0.7", "typescript": "5.5.2" } diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index 2dd44ecd..1ecc24bd 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -16,7 +16,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "20.14.7", + "@types/node": "20.14.8", "rimraf": "5.0.7", "typescript": "5.5.2" } diff --git a/package-lock.json b/package-lock.json index af657cf0..fe7a042e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -48,7 +48,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "20.14.7", + "@types/node": "20.14.8", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "axios": "1.7.2", @@ -126,7 +126,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "20.14.7", + "@types/node": "20.14.8", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "eslint": "8.57.0", @@ -452,7 +452,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.7", + "@types/node": "20.14.8", "pino-pretty": "11.2.1", "rimraf": "5.0.7", "tsx": "4.15.7", @@ -591,7 +591,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.7", + "@types/node": "20.14.8", "rimraf": "5.0.7", "typescript": "5.5.2" } @@ -804,7 +804,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "20.14.7", + "@types/node": "20.14.8", "rimraf": "5.0.7", "typescript": "5.5.2" } @@ -4219,9 +4219,9 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "20.14.7", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.7.tgz", - "integrity": "sha512-uTr2m2IbJJucF3KUxgnGOZvYbN0QgkGyWxG6973HCpMYFy2KfcgYuIwkJQMQkt1VbBMlvWRbpshFTLxnxCZjKQ==", + "version": "20.14.8", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.8.tgz", + "integrity": "sha512-DO+2/jZinXfROG7j7WKFn/3C6nFwxy2lLpgLjEXJz+0XKphZlTLJ14mo8Vfg8X5BWN6XjyESXq+LcYdT7tR3bA==", "dependencies": { "undici-types": "~5.26.4" } @@ -17059,7 +17059,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.14.7", + "@types/node": "20.14.8", "rimraf": "5.0.7", "tsup": "8.1.0", "tsx": "4.15.7", @@ -17078,7 +17078,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.7", + "@types/node": "20.14.8", "rimraf": "5.0.7", "tsup": "8.1.0", "typescript": "5.5.2" @@ -17094,7 +17094,7 @@ "license": "MIT", "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.7", + "@types/node": "20.14.8", "rimraf": "5.0.7", "tsup": "8.1.0", "tsx": "4.15.7", @@ -17116,7 +17116,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.14.7", + "@types/node": "20.14.8", "rimraf": "5.0.7", "tsup": "8.1.0", "tsx": "4.15.7", diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 628c1d00..d7294e2c 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -79,7 +79,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.14.7", + "@types/node": "20.14.8", "rimraf": "5.0.7", "tsup": "8.1.0", "tsx": "4.15.7", diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index 7a67802a..dfd4737b 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -25,7 +25,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.7", + "@types/node": "20.14.8", "rimraf": "5.0.7", "tsup": "8.1.0", "typescript": "5.5.2" diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 0b867128..7fd473b4 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -28,7 +28,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.7", + "@types/node": "20.14.8", "rimraf": "5.0.7", "tsup": "8.1.0", "tsx": "4.15.7", diff --git a/packages/server/package.json b/packages/server/package.json index 1ea221f1..3ad93f10 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -32,7 +32,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.14.7", + "@types/node": "20.14.8", "rimraf": "5.0.7", "tsup": "8.1.0", "tsx": "4.15.7", From 2e3215382af6d40dfdcbc1da9932dd3000e8f2e0 Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Wed, 26 Jun 2024 01:21:31 +0300 Subject: [PATCH 272/458] Update GitHub Actions workflows to include additional paths (#600) --- .github/workflows/test-docs.yml | 5 +++++ .github/workflows/tests.yml | 12 ++++++++++++ 2 files changed, 17 insertions(+) diff --git a/.github/workflows/test-docs.yml b/.github/workflows/test-docs.yml index bcbcff95..b2c33d2c 100644 --- a/.github/workflows/test-docs.yml +++ b/.github/workflows/test-docs.yml @@ -5,6 +5,11 @@ on: paths: - '.github/workflows/test-docs.yml' - 'docs/cache-handler-docs/**' + - 'internal/eslint-config/**' + - 'internal/prettier-config/**' + - 'package.json' + - 'biome.json' + - '.prettierrc.json' jobs: test: name: 'check-docs-build' diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 542414a1..b3830c2c 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -9,6 +9,12 @@ on: - 'internal/next-lru-cache/**' - 'server/**' - '.github/workflows/tests.yml' + - 'internal/eslint-config/**' + - 'internal/prettier-config/**' + - 'package.json' + - 'biome.json' + - 'turbo.json' + - '.prettierrc.json' pull_request: branches: [canary] paths: @@ -18,6 +24,12 @@ on: - 'internal/next-lru-cache/**' - 'server/**' - '.github/workflows/tests.yml' + - 'internal/eslint-config/**' + - 'internal/prettier-config/**' + - 'package.json' + - 'biome.json' + - 'turbo.json' + - '.prettierrc.json' jobs: test: name: 'redis-stack' From 57c847dc9a44facfa231ade591478289c00aae38 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 25 Jun 2024 22:31:05 +0000 Subject: [PATCH 273/458] Bump the turbo group with 2 updates (#598) --- internal/eslint-config/package.json | 2 +- package-lock.json | 72 ++++++++++++++--------------- package.json | 2 +- 3 files changed, 38 insertions(+), 38 deletions(-) diff --git a/internal/eslint-config/package.json b/internal/eslint-config/package.json index aced28ec..8d7d8fa5 100644 --- a/internal/eslint-config/package.json +++ b/internal/eslint-config/package.json @@ -10,7 +10,7 @@ "@typescript-eslint/parser": "7.5.0", "@vercel/style-guide": "6.0.0", "eslint-config-prettier": "9.1.0", - "eslint-config-turbo": "2.0.4", + "eslint-config-turbo": "2.0.5", "eslint-plugin-only-warn": "1.1.0", "typescript": "5.5.2" } diff --git a/package-lock.json b/package-lock.json index fe7a042e..676e6cc3 100644 --- a/package-lock.json +++ b/package-lock.json @@ -26,7 +26,7 @@ "diffscribe": "*", "glob": "10.4.2", "prettier": "3.3.2", - "turbo": "2.0.4" + "turbo": "2.0.5" }, "engines": { "node": ">=20.9.0", @@ -467,7 +467,7 @@ "@typescript-eslint/parser": "7.5.0", "@vercel/style-guide": "6.0.0", "eslint-config-prettier": "9.1.0", - "eslint-config-turbo": "2.0.4", + "eslint-config-turbo": "2.0.5", "eslint-plugin-only-warn": "1.1.0", "typescript": "5.5.2" } @@ -6935,12 +6935,12 @@ } }, "node_modules/eslint-config-turbo": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/eslint-config-turbo/-/eslint-config-turbo-2.0.4.tgz", - "integrity": "sha512-zGvU+bxoNWVvSl0prGItrnH9FgeNzKEAjRmv8ruqql1psI37T8IoLF/XeOzT3CzzYzJxuI3wW1yb2agDFYQdHQ==", + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/eslint-config-turbo/-/eslint-config-turbo-2.0.5.tgz", + "integrity": "sha512-iE/oD0ZBM6OQFbS/bKnc3UtqhMmJ1IEfqTQ0qCY1CauHm7gj85aRRX/1ydDYKLpu0RupBqzVPybsWxPif9rsig==", "dev": true, "dependencies": { - "eslint-plugin-turbo": "2.0.4" + "eslint-plugin-turbo": "2.0.5" }, "peerDependencies": { "eslint": ">6.6.0" @@ -7625,9 +7625,9 @@ } }, "node_modules/eslint-plugin-turbo": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/eslint-plugin-turbo/-/eslint-plugin-turbo-2.0.4.tgz", - "integrity": "sha512-Ozn//vTXJeqIEvEkThM2vuuldMckPqAne7vg/S3GxF+BBY516cjdp7+dYpCU5Q0083hVm638c8542ubccNE+8w==", + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/eslint-plugin-turbo/-/eslint-plugin-turbo-2.0.5.tgz", + "integrity": "sha512-nCTXZdaKmdRybBdjnMrDFG+ppLc9toUqB01Hf0pfhkQw8OoC29oJIVPsCSvuL/W58RKD02CNEUrwnVt57t36IQ==", "dev": true, "dependencies": { "dotenv": "16.0.3" @@ -15966,26 +15966,26 @@ } }, "node_modules/turbo": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/turbo/-/turbo-2.0.4.tgz", - "integrity": "sha512-Ilme/2Q5kYw0AeRr+aw3s02+WrEYaY7U8vPnqSZU/jaDG/qd6jHVN6nRWyd/9KXvJGYM69vE6JImoGoyNjLwaw==", + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/turbo/-/turbo-2.0.5.tgz", + "integrity": "sha512-+6+hcWr4nwuESlKqUc626HMOTd3QT8hUOc9QM45PP1d4nErGkNOgExm4Pcov3in7LTuadMnB0gcd/BuzkEDIPw==", "dev": true, "bin": { "turbo": "bin/turbo" }, "optionalDependencies": { - "turbo-darwin-64": "2.0.4", - "turbo-darwin-arm64": "2.0.4", - "turbo-linux-64": "2.0.4", - "turbo-linux-arm64": "2.0.4", - "turbo-windows-64": "2.0.4", - "turbo-windows-arm64": "2.0.4" + "turbo-darwin-64": "2.0.5", + "turbo-darwin-arm64": "2.0.5", + "turbo-linux-64": "2.0.5", + "turbo-linux-arm64": "2.0.5", + "turbo-windows-64": "2.0.5", + "turbo-windows-arm64": "2.0.5" } }, "node_modules/turbo-darwin-64": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/turbo-darwin-64/-/turbo-darwin-64-2.0.4.tgz", - "integrity": "sha512-x9mvmh4wudBstML8Z8IOmokLWglIhSfhQwnh2gBCSqabgVBKYvzl8Y+i+UCNPxheCGTgtsPepTcIaKBIyFIcvw==", + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/turbo-darwin-64/-/turbo-darwin-64-2.0.5.tgz", + "integrity": "sha512-t/9XpWYIjOhIHUdwiR47SYBGYHkR1zWLxTkTNKZwCSn8BN0cfjPZ1BR6kcwYGxLGBhtl5GBf6A29nq2K7iwAjg==", "cpu": [ "x64" ], @@ -15996,9 +15996,9 @@ ] }, "node_modules/turbo-darwin-arm64": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/turbo-darwin-arm64/-/turbo-darwin-arm64-2.0.4.tgz", - "integrity": "sha512-/B1Ih8zPRGVw5vw4SlclOf3C/woJ/2T6ieH6u54KT4wypoaVyaiyMqBcziIXycdObIYr7jQ+raHO7q3mhay9/A==", + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/turbo-darwin-arm64/-/turbo-darwin-arm64-2.0.5.tgz", + "integrity": "sha512-//5y4RJvnal8CttOLBwlaBqblcQb1qTlIxLN+I8O3E3rPuvHOupNKB9ZJxYIQ8oWf8ns8Ec8cxQ0GSBLTJIMtA==", "cpu": [ "arm64" ], @@ -16009,9 +16009,9 @@ ] }, "node_modules/turbo-linux-64": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/turbo-linux-64/-/turbo-linux-64-2.0.4.tgz", - "integrity": "sha512-6aG670e5zOWu6RczEYcB81nEl8EhiGJEvWhUrnAfNEUIMBEH1pR5SsMmG2ol5/m3PgiRM12r13dSqTxCLcHrVg==", + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/turbo-linux-64/-/turbo-linux-64-2.0.5.tgz", + "integrity": "sha512-LDtEDU2Gm8p3lKu//aHXZFRKUCVu68BNF9LQ+HmiCKFpNyK7khpMTxIAAUhDqt+AzlrbxtrxcCpCJaWg1JDjHg==", "cpu": [ "x64" ], @@ -16022,9 +16022,9 @@ ] }, "node_modules/turbo-linux-arm64": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/turbo-linux-arm64/-/turbo-linux-arm64-2.0.4.tgz", - "integrity": "sha512-AXfVOjst+mCtPDFT4tCu08Qrfv12Nj7NDd33AjGwV79NYN1Y1rcFY59UQ4nO3ij3rbcvV71Xc+TZJ4csEvRCSg==", + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/turbo-linux-arm64/-/turbo-linux-arm64-2.0.5.tgz", + "integrity": "sha512-84wdrzntErBNxkHcwHxiTZdaginQAxGPnwLTyZj8lpUYI7okPoxy3jKpUeMHN3adm3iDedl/x0mYSIvVVkmOiA==", "cpu": [ "arm64" ], @@ -16035,9 +16035,9 @@ ] }, "node_modules/turbo-windows-64": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/turbo-windows-64/-/turbo-windows-64-2.0.4.tgz", - "integrity": "sha512-QOnUR9hKl0T5gq5h1fAhVEqBSjpcBi/BbaO71YGQNgsr6pAnCQdbG8/r3MYXet53efM0KTdOhieWeO3KLNKybA==", + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/turbo-windows-64/-/turbo-windows-64-2.0.5.tgz", + "integrity": "sha512-SgaFZ0VW6kHCJogLNuLEleAauAJx2Y48wazZGVRmBpgSUS2AylXesaBMhJaEScYqLz7mIRn6KOgwM8D4wTxI9g==", "cpu": [ "x64" ], @@ -16048,9 +16048,9 @@ ] }, "node_modules/turbo-windows-arm64": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/turbo-windows-arm64/-/turbo-windows-arm64-2.0.4.tgz", - "integrity": "sha512-3v8WpdZy1AxZw0gha0q3caZmm+0gveBQ40OspD6mxDBIS+oBtO5CkxhIXkFJJW+jDKmDlM7wXDIGfMEq+QyNCQ==", + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/turbo-windows-arm64/-/turbo-windows-arm64-2.0.5.tgz", + "integrity": "sha512-foUxLOZoru0IRNIxm53fkfM4ubas9P0nTFjIcHtd+E8YHeogt8GqTweNre2e6ri1EHDo71emmuQgpuoFCOXZMg==", "cpu": [ "arm64" ], diff --git a/package.json b/package.json index e57b9bd9..788bbfe3 100644 --- a/package.json +++ b/package.json @@ -44,7 +44,7 @@ "diffscribe": "*", "glob": "10.4.2", "prettier": "3.3.2", - "turbo": "2.0.4" + "turbo": "2.0.5" }, "packageManager": "npm@10.7.0", "engines": { From f2c09109c5f7352f4633192c20768b0a7b2b5542 Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Wed, 26 Jun 2024 13:53:06 +0300 Subject: [PATCH 274/458] Update GitHub Actions workflows to include write permissions (#601) --- .github/workflows/release.yml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index dce5dcdd..f574a782 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -5,6 +5,11 @@ on: branches: - canary +permissions: + contents: write + pull-requests: write + packages: write + concurrency: ${{ github.workflow }}-${{ github.ref }} jobs: From 04074ee43dec0059f4da18cdafa03e8254519531 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 26 Jun 2024 11:02:34 +0000 Subject: [PATCH 275/458] Bump @playwright/test from 1.44.1 to 1.45.0 (#599) --- apps/cache-testing/package.json | 2 +- package-lock.json | 30 +++++++++++++++--------------- 2 files changed, 16 insertions(+), 16 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 93e5b2e4..2045264b 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -24,7 +24,7 @@ "devDependencies": { "@neshca/cache-handler": "*", "@next/eslint-plugin-next": "14.3.0-canary.44", - "@playwright/test": "1.44.1", + "@playwright/test": "1.45.0", "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", diff --git a/package-lock.json b/package-lock.json index 676e6cc3..aa9f7603 100644 --- a/package-lock.json +++ b/package-lock.json @@ -44,7 +44,7 @@ "devDependencies": { "@neshca/cache-handler": "*", "@next/eslint-plugin-next": "14.3.0-canary.44", - "@playwright/test": "1.44.1", + "@playwright/test": "1.45.0", "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", @@ -3512,18 +3512,18 @@ } }, "node_modules/@playwright/test": { - "version": "1.44.1", - "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.44.1.tgz", - "integrity": "sha512-1hZ4TNvD5z9VuhNJ/walIjvMVvYkZKf71axoF/uiAqpntQJXpG64dlXhoDXE3OczPuTuvjf/M5KWFg5VAVUS3Q==", + "version": "1.45.0", + "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.45.0.tgz", + "integrity": "sha512-TVYsfMlGAaxeUllNkywbwek67Ncf8FRGn8ZlRdO291OL3NjG9oMbfVhyP82HQF0CZLMrYsvesqoUekxdWuF9Qw==", "devOptional": true, "dependencies": { - "playwright": "1.44.1" + "playwright": "1.45.0" }, "bin": { "playwright": "cli.js" }, "engines": { - "node": ">=16" + "node": ">=18" } }, "node_modules/@pm2/agent": { @@ -13199,33 +13199,33 @@ } }, "node_modules/playwright": { - "version": "1.44.1", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.44.1.tgz", - "integrity": "sha512-qr/0UJ5CFAtloI3avF95Y0L1xQo6r3LQArLIg/z/PoGJ6xa+EwzrwO5lpNr/09STxdHuUoP2mvuELJS+hLdtgg==", + "version": "1.45.0", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.45.0.tgz", + "integrity": "sha512-4z3ac3plDfYzGB6r0Q3LF8POPR20Z8D0aXcxbJvmfMgSSq1hkcgvFRXJk9rUq5H/MJ0Ktal869hhOdI/zUTeLA==", "devOptional": true, "dependencies": { - "playwright-core": "1.44.1" + "playwright-core": "1.45.0" }, "bin": { "playwright": "cli.js" }, "engines": { - "node": ">=16" + "node": ">=18" }, "optionalDependencies": { "fsevents": "2.3.2" } }, "node_modules/playwright-core": { - "version": "1.44.1", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.44.1.tgz", - "integrity": "sha512-wh0JWtYTrhv1+OSsLPgFzGzt67Y7BE/ZS3jEqgGBlp2ppp1ZDj8c+9IARNW4dwf1poq5MgHreEM2KV/GuR4cFA==", + "version": "1.45.0", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.45.0.tgz", + "integrity": "sha512-lZmHlFQ0VYSpAs43dRq1/nJ9G/6SiTI7VPqidld9TDefL9tX87bTKExWZZUF5PeRyqtXqd8fQi2qmfIedkwsNQ==", "devOptional": true, "bin": { "playwright-core": "cli.js" }, "engines": { - "node": ">=16" + "node": ">=18" } }, "node_modules/pluralize": { From 21f1ff5b0067ec08bd0a7d35bacb6f0b121e629d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 27 Jun 2024 18:29:40 +0300 Subject: [PATCH 276/458] Bump @types/node from 20.14.8 to 20.14.9 in the definitely-typed group (#602) Bumps the definitely-typed group with 1 update: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node). Updates `@types/node` from 20.14.8 to 20.14.9 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) --- updated-dependencies: - dependency-name: "@types/node" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- internal/backend/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 24 ++++++++++----------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 10 files changed, 21 insertions(+), 21 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 2045264b..a2be7739 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -28,7 +28,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "20.14.8", + "@types/node": "20.14.9", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "axios": "1.7.2", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 5f7aaae7..3f2fd10d 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -22,7 +22,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "20.14.8", + "@types/node": "20.14.9", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "eslint": "8.57.0", diff --git a/internal/backend/package.json b/internal/backend/package.json index 93a6f121..2961ddef 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.8", + "@types/node": "20.14.9", "pino-pretty": "11.2.1", "rimraf": "5.0.7", "tsx": "4.15.7", diff --git a/internal/next-common/package.json b/internal/next-common/package.json index 168d57b6..bef36ac8 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.8", + "@types/node": "20.14.9", "rimraf": "5.0.7", "typescript": "5.5.2" } diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index 1ecc24bd..d419a4ee 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -16,7 +16,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "20.14.8", + "@types/node": "20.14.9", "rimraf": "5.0.7", "typescript": "5.5.2" } diff --git a/package-lock.json b/package-lock.json index aa9f7603..b94cb487 100644 --- a/package-lock.json +++ b/package-lock.json @@ -48,7 +48,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "20.14.8", + "@types/node": "20.14.9", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "axios": "1.7.2", @@ -126,7 +126,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "20.14.8", + "@types/node": "20.14.9", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "eslint": "8.57.0", @@ -452,7 +452,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.8", + "@types/node": "20.14.9", "pino-pretty": "11.2.1", "rimraf": "5.0.7", "tsx": "4.15.7", @@ -591,7 +591,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.8", + "@types/node": "20.14.9", "rimraf": "5.0.7", "typescript": "5.5.2" } @@ -804,7 +804,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "20.14.8", + "@types/node": "20.14.9", "rimraf": "5.0.7", "typescript": "5.5.2" } @@ -4219,9 +4219,9 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "20.14.8", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.8.tgz", - "integrity": "sha512-DO+2/jZinXfROG7j7WKFn/3C6nFwxy2lLpgLjEXJz+0XKphZlTLJ14mo8Vfg8X5BWN6XjyESXq+LcYdT7tR3bA==", + "version": "20.14.9", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.9.tgz", + "integrity": "sha512-06OCtnTXtWOZBJlRApleWndH4JsRVs1pDCc8dLSQp+7PpUpX3ePdHyeNSFTeSe7FtKyQkrlPvHwJOW3SLd8Oyg==", "dependencies": { "undici-types": "~5.26.4" } @@ -17059,7 +17059,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.14.8", + "@types/node": "20.14.9", "rimraf": "5.0.7", "tsup": "8.1.0", "tsx": "4.15.7", @@ -17078,7 +17078,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.8", + "@types/node": "20.14.9", "rimraf": "5.0.7", "tsup": "8.1.0", "typescript": "5.5.2" @@ -17094,7 +17094,7 @@ "license": "MIT", "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.8", + "@types/node": "20.14.9", "rimraf": "5.0.7", "tsup": "8.1.0", "tsx": "4.15.7", @@ -17116,7 +17116,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.14.8", + "@types/node": "20.14.9", "rimraf": "5.0.7", "tsup": "8.1.0", "tsx": "4.15.7", diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index d7294e2c..5d4b1145 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -79,7 +79,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.14.8", + "@types/node": "20.14.9", "rimraf": "5.0.7", "tsup": "8.1.0", "tsx": "4.15.7", diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index dfd4737b..276c0da7 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -25,7 +25,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.8", + "@types/node": "20.14.9", "rimraf": "5.0.7", "tsup": "8.1.0", "typescript": "5.5.2" diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 7fd473b4..47d92fab 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -28,7 +28,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.8", + "@types/node": "20.14.9", "rimraf": "5.0.7", "tsup": "8.1.0", "tsx": "4.15.7", diff --git a/packages/server/package.json b/packages/server/package.json index 3ad93f10..03517d50 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -32,7 +32,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.14.8", + "@types/node": "20.14.9", "rimraf": "5.0.7", "tsup": "8.1.0", "tsx": "4.15.7", From 48a81f5ecaace81df37107482aa74e5dd76c14e9 Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Thu, 27 Jun 2024 18:39:50 +0300 Subject: [PATCH 277/458] Create FUNDING.yml (#603) --- .github/FUNDING.yml | 1 + 1 file changed, 1 insertion(+) create mode 100644 .github/FUNDING.yml diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml new file mode 100644 index 00000000..888b46fd --- /dev/null +++ b/.github/FUNDING.yml @@ -0,0 +1 @@ +open_collective: caching-tools From 72a811eb6e5b0ac44b71651d0f80812a20815234 Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Thu, 27 Jun 2024 18:51:57 +0300 Subject: [PATCH 278/458] Add Open Collective badge to README.md (#604) --- README.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/README.md b/README.md index f15850a1..20b18bbf 100644 --- a/README.md +++ b/README.md @@ -37,6 +37,10 @@ Learn how to build your own Handler by reading [this guide](https://caching-tool [Developing and contributing to this monorepo](./docs/contributing/monorepo.md) +Or become a Backer + +[![Become a Backer](https://opencollective.com/caching-tools/tiers/backer.svg?avatarHeight=64)](https://opencollective.com/caching-tools#support) + ## License All projects in this monorepo are licensed under the [MIT License](./LICENSE). From 0ee33e01ba923aa25d4070124cef678d904dc485 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 28 Jun 2024 01:50:26 +0300 Subject: [PATCH 279/458] Bump @biomejs/biome from 1.8.2 to 1.8.3 (#605) Bumps [@biomejs/biome](https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome) from 1.8.2 to 1.8.3. - [Release notes](https://github.com/biomejs/biome/releases) - [Changelog](https://github.com/biomejs/biome/blob/main/CHANGELOG.md) - [Commits](https://github.com/biomejs/biome/commits/cli/v1.8.3/packages/@biomejs/biome) --- updated-dependencies: - dependency-name: "@biomejs/biome" dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 72 +++++++++++++++++++++++------------------------ package.json | 2 +- 2 files changed, 37 insertions(+), 37 deletions(-) diff --git a/package-lock.json b/package-lock.json index b94cb487..8521cdac 100644 --- a/package-lock.json +++ b/package-lock.json @@ -20,7 +20,7 @@ }, "devDependencies": { "@actions/core": "1.10.1", - "@biomejs/biome": "1.8.2", + "@biomejs/biome": "1.8.3", "@repo/prettier-config": "*", "@repo/typescript-config": "*", "diffscribe": "*", @@ -1348,9 +1348,9 @@ } }, "node_modules/@biomejs/biome": { - "version": "1.8.2", - "resolved": "https://registry.npmjs.org/@biomejs/biome/-/biome-1.8.2.tgz", - "integrity": "sha512-XafCzLgs0xbH0bCjYKxQ63ig2V86fZQMq1jiy5pyLToWk9aHxA8GAUxyBtklPHtPYZPGEPOYglQHj4jyfUp+Iw==", + "version": "1.8.3", + "resolved": "https://registry.npmjs.org/@biomejs/biome/-/biome-1.8.3.tgz", + "integrity": "sha512-/uUV3MV+vyAczO+vKrPdOW0Iaet7UnJMU4bNMinggGJTAnBPjCoLEYcyYtYHNnUNYlv4xZMH6hVIQCAozq8d5w==", "dev": true, "hasInstallScript": true, "bin": { @@ -1364,20 +1364,20 @@ "url": "https://opencollective.com/biome" }, "optionalDependencies": { - "@biomejs/cli-darwin-arm64": "1.8.2", - "@biomejs/cli-darwin-x64": "1.8.2", - "@biomejs/cli-linux-arm64": "1.8.2", - "@biomejs/cli-linux-arm64-musl": "1.8.2", - "@biomejs/cli-linux-x64": "1.8.2", - "@biomejs/cli-linux-x64-musl": "1.8.2", - "@biomejs/cli-win32-arm64": "1.8.2", - "@biomejs/cli-win32-x64": "1.8.2" + "@biomejs/cli-darwin-arm64": "1.8.3", + "@biomejs/cli-darwin-x64": "1.8.3", + "@biomejs/cli-linux-arm64": "1.8.3", + "@biomejs/cli-linux-arm64-musl": "1.8.3", + "@biomejs/cli-linux-x64": "1.8.3", + "@biomejs/cli-linux-x64-musl": "1.8.3", + "@biomejs/cli-win32-arm64": "1.8.3", + "@biomejs/cli-win32-x64": "1.8.3" } }, "node_modules/@biomejs/cli-darwin-arm64": { - "version": "1.8.2", - "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-1.8.2.tgz", - "integrity": "sha512-l9msLsTcSIAPqMsPIhodQmb50sEfaXPLQ0YW4cdj6INmd8iaOh/V9NceQb2366vACTJgcWDQ2RzlvURek1T68g==", + "version": "1.8.3", + "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-1.8.3.tgz", + "integrity": "sha512-9DYOjclFpKrH/m1Oz75SSExR8VKvNSSsLnVIqdnKexj6NwmiMlKk94Wa1kZEdv6MCOHGHgyyoV57Cw8WzL5n3A==", "cpu": [ "arm64" ], @@ -1391,9 +1391,9 @@ } }, "node_modules/@biomejs/cli-darwin-x64": { - "version": "1.8.2", - "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-x64/-/cli-darwin-x64-1.8.2.tgz", - "integrity": "sha512-Fc4y/FuIxRSiB3TJ+y27vFDE/HJt4QgBuymktsIKEcBZvnKfsRjxvzVDunccRn4xbKgepnp+fn6BoS+ZIg/I3Q==", + "version": "1.8.3", + "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-x64/-/cli-darwin-x64-1.8.3.tgz", + "integrity": "sha512-UeW44L/AtbmOF7KXLCoM+9PSgPo0IDcyEUfIoOXYeANaNXXf9mLUwV1GeF2OWjyic5zj6CnAJ9uzk2LT3v/wAw==", "cpu": [ "x64" ], @@ -1407,9 +1407,9 @@ } }, "node_modules/@biomejs/cli-linux-arm64": { - "version": "1.8.2", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64/-/cli-linux-arm64-1.8.2.tgz", - "integrity": "sha512-Q99qwP0qibkZxm2kfnt37OxeIlliDYf5ogi3zX9ij2DULzc+KtPA9Uj0wCljcJofOBsBYaHc7597Q+Bf/251ww==", + "version": "1.8.3", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64/-/cli-linux-arm64-1.8.3.tgz", + "integrity": "sha512-fed2ji8s+I/m8upWpTJGanqiJ0rnlHOK3DdxsyVLZQ8ClY6qLuPc9uehCREBifRJLl/iJyQpHIRufLDeotsPtw==", "cpu": [ "arm64" ], @@ -1423,9 +1423,9 @@ } }, "node_modules/@biomejs/cli-linux-arm64-musl": { - "version": "1.8.2", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-1.8.2.tgz", - "integrity": "sha512-WpT41QJJvkZa1eZq0WmD513zkC6AYaMI39HJKmKeiUeX2NZirG+bxv1YRDhqkns1NbBqo3+qrJqBkPmOW+xAVA==", + "version": "1.8.3", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-1.8.3.tgz", + "integrity": "sha512-9yjUfOFN7wrYsXt/T/gEWfvVxKlnh3yBpnScw98IF+oOeCYb5/b/+K7YNqKROV2i1DlMjg9g/EcN9wvj+NkMuQ==", "cpu": [ "arm64" ], @@ -1439,9 +1439,9 @@ } }, "node_modules/@biomejs/cli-linux-x64": { - "version": "1.8.2", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64/-/cli-linux-x64-1.8.2.tgz", - "integrity": "sha512-bjhhUVFchFid2gOjrvBe4fg8BShcpyFQTHuB/QQnfGxs1ddrGP30yq3fHfc6S6MoCcz9Tjd3Zzq1EfWfyy5iHA==", + "version": "1.8.3", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64/-/cli-linux-x64-1.8.3.tgz", + "integrity": "sha512-I8G2QmuE1teISyT8ie1HXsjFRz9L1m5n83U1O6m30Kw+kPMPSKjag6QGUn+sXT8V+XWIZxFFBoTDEDZW2KPDDw==", "cpu": [ "x64" ], @@ -1455,9 +1455,9 @@ } }, "node_modules/@biomejs/cli-linux-x64-musl": { - "version": "1.8.2", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-1.8.2.tgz", - "integrity": "sha512-rk1Wj4d3LIlAlIAS1m2jlyfOjkNbuY1lfwKvWIAeZC51yDMzwhRD7cReE5PE+jqLDtq60PX38hDPeKd7nA1S6A==", + "version": "1.8.3", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-1.8.3.tgz", + "integrity": "sha512-UHrGJX7PrKMKzPGoEsooKC9jXJMa28TUSMjcIlbDnIO4EAavCoVmNQaIuUSH0Ls2mpGMwUIf+aZJv657zfWWjA==", "cpu": [ "x64" ], @@ -1471,9 +1471,9 @@ } }, "node_modules/@biomejs/cli-win32-arm64": { - "version": "1.8.2", - "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-arm64/-/cli-win32-arm64-1.8.2.tgz", - "integrity": "sha512-EUbqmCmNWT5xhnxHrCAEBzJB1AnLqxTYoRjlxiCMzGvsy5jQzhCanJ8CT9kNsApW3pfPWBWkoTa7qrwWmwnEGA==", + "version": "1.8.3", + "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-arm64/-/cli-win32-arm64-1.8.3.tgz", + "integrity": "sha512-J+Hu9WvrBevfy06eU1Na0lpc7uR9tibm9maHynLIoAjLZpQU3IW+OKHUtyL8p6/3pT2Ju5t5emReeIS2SAxhkQ==", "cpu": [ "arm64" ], @@ -1487,9 +1487,9 @@ } }, "node_modules/@biomejs/cli-win32-x64": { - "version": "1.8.2", - "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-x64/-/cli-win32-x64-1.8.2.tgz", - "integrity": "sha512-n9H5oRUCk1uNezMgyJh9+hZdtfD8PXLLeq8DUzTycIhl0I1BulIoZ/uxWgRVDFDwAR1JHu1AykISCRFNGnc4iA==", + "version": "1.8.3", + "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-x64/-/cli-win32-x64-1.8.3.tgz", + "integrity": "sha512-/PJ59vA1pnQeKahemaQf4Nyj7IKUvGQSc3Ze1uIGi+Wvr1xF7rGobSrAAG01T/gUDG21vkDsZYM03NAmPiVkqg==", "cpu": [ "x64" ], diff --git a/package.json b/package.json index 788bbfe3..d695fe0f 100644 --- a/package.json +++ b/package.json @@ -38,7 +38,7 @@ }, "devDependencies": { "@actions/core": "1.10.1", - "@biomejs/biome": "1.8.2", + "@biomejs/biome": "1.8.3", "@repo/prettier-config": "*", "@repo/typescript-config": "*", "diffscribe": "*", From e13563ca91f374f106bda56c5127badd2a1730d4 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 29 Jun 2024 00:12:49 +0300 Subject: [PATCH 280/458] Bump the turbo group with 2 updates (#606) Bumps the turbo group with 2 updates: [turbo](https://github.com/vercel/turbo) and [eslint-config-turbo](https://github.com/vercel/turbo/tree/HEAD/packages/eslint-config-turbo). Updates `turbo` from 2.0.5 to 2.0.6 - [Release notes](https://github.com/vercel/turbo/releases) - [Changelog](https://github.com/vercel/turbo/blob/main/release.md) - [Commits](https://github.com/vercel/turbo/compare/v2.0.5...v2.0.6) Updates `eslint-config-turbo` from 2.0.5 to 2.0.6 - [Release notes](https://github.com/vercel/turbo/releases) - [Changelog](https://github.com/vercel/turbo/blob/main/release.md) - [Commits](https://github.com/vercel/turbo/commits/v2.0.6/packages/eslint-config-turbo) --- updated-dependencies: - dependency-name: turbo dependency-type: direct:development update-type: version-update:semver-patch dependency-group: turbo - dependency-name: eslint-config-turbo dependency-type: direct:development update-type: version-update:semver-patch dependency-group: turbo ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- internal/eslint-config/package.json | 2 +- package-lock.json | 72 ++++++++++++++--------------- package.json | 2 +- 3 files changed, 38 insertions(+), 38 deletions(-) diff --git a/internal/eslint-config/package.json b/internal/eslint-config/package.json index 8d7d8fa5..57aad46b 100644 --- a/internal/eslint-config/package.json +++ b/internal/eslint-config/package.json @@ -10,7 +10,7 @@ "@typescript-eslint/parser": "7.5.0", "@vercel/style-guide": "6.0.0", "eslint-config-prettier": "9.1.0", - "eslint-config-turbo": "2.0.5", + "eslint-config-turbo": "2.0.6", "eslint-plugin-only-warn": "1.1.0", "typescript": "5.5.2" } diff --git a/package-lock.json b/package-lock.json index 8521cdac..caa9b637 100644 --- a/package-lock.json +++ b/package-lock.json @@ -26,7 +26,7 @@ "diffscribe": "*", "glob": "10.4.2", "prettier": "3.3.2", - "turbo": "2.0.5" + "turbo": "2.0.6" }, "engines": { "node": ">=20.9.0", @@ -467,7 +467,7 @@ "@typescript-eslint/parser": "7.5.0", "@vercel/style-guide": "6.0.0", "eslint-config-prettier": "9.1.0", - "eslint-config-turbo": "2.0.5", + "eslint-config-turbo": "2.0.6", "eslint-plugin-only-warn": "1.1.0", "typescript": "5.5.2" } @@ -6935,12 +6935,12 @@ } }, "node_modules/eslint-config-turbo": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/eslint-config-turbo/-/eslint-config-turbo-2.0.5.tgz", - "integrity": "sha512-iE/oD0ZBM6OQFbS/bKnc3UtqhMmJ1IEfqTQ0qCY1CauHm7gj85aRRX/1ydDYKLpu0RupBqzVPybsWxPif9rsig==", + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/eslint-config-turbo/-/eslint-config-turbo-2.0.6.tgz", + "integrity": "sha512-PkRjFnZUZWPcrYT4Xoi5OWOUtnn6xVGh88I6TsayiH4AQZuLs/MDmzfJRK+PiWIrI7Q7sbsVEQP+nUyyRE3uAw==", "dev": true, "dependencies": { - "eslint-plugin-turbo": "2.0.5" + "eslint-plugin-turbo": "2.0.6" }, "peerDependencies": { "eslint": ">6.6.0" @@ -7625,9 +7625,9 @@ } }, "node_modules/eslint-plugin-turbo": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/eslint-plugin-turbo/-/eslint-plugin-turbo-2.0.5.tgz", - "integrity": "sha512-nCTXZdaKmdRybBdjnMrDFG+ppLc9toUqB01Hf0pfhkQw8OoC29oJIVPsCSvuL/W58RKD02CNEUrwnVt57t36IQ==", + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/eslint-plugin-turbo/-/eslint-plugin-turbo-2.0.6.tgz", + "integrity": "sha512-yGnpMvyBxI09ZrF5bGpaniBz57MiExTCsRnNxP+JnbMFD+xU3jG3ukRzehVol8LYNdC/G7E4HoH+x7OEpoSGAQ==", "dev": true, "dependencies": { "dotenv": "16.0.3" @@ -15966,26 +15966,26 @@ } }, "node_modules/turbo": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/turbo/-/turbo-2.0.5.tgz", - "integrity": "sha512-+6+hcWr4nwuESlKqUc626HMOTd3QT8hUOc9QM45PP1d4nErGkNOgExm4Pcov3in7LTuadMnB0gcd/BuzkEDIPw==", + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/turbo/-/turbo-2.0.6.tgz", + "integrity": "sha512-/Ftmxd5Mq//a9yMonvmwENNUN65jOVTwhhBPQjEtNZutYT9YKyzydFGLyVM1nzhpLWahQSMamRc/RDBv5EapzA==", "dev": true, "bin": { "turbo": "bin/turbo" }, "optionalDependencies": { - "turbo-darwin-64": "2.0.5", - "turbo-darwin-arm64": "2.0.5", - "turbo-linux-64": "2.0.5", - "turbo-linux-arm64": "2.0.5", - "turbo-windows-64": "2.0.5", - "turbo-windows-arm64": "2.0.5" + "turbo-darwin-64": "2.0.6", + "turbo-darwin-arm64": "2.0.6", + "turbo-linux-64": "2.0.6", + "turbo-linux-arm64": "2.0.6", + "turbo-windows-64": "2.0.6", + "turbo-windows-arm64": "2.0.6" } }, "node_modules/turbo-darwin-64": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/turbo-darwin-64/-/turbo-darwin-64-2.0.5.tgz", - "integrity": "sha512-t/9XpWYIjOhIHUdwiR47SYBGYHkR1zWLxTkTNKZwCSn8BN0cfjPZ1BR6kcwYGxLGBhtl5GBf6A29nq2K7iwAjg==", + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/turbo-darwin-64/-/turbo-darwin-64-2.0.6.tgz", + "integrity": "sha512-XpgBwWj3Ggmz/gQVqXdMKXHC1iFPMDiuwugLwSzE7Ih0O13JuNtYZKhQnopvbDQnFQCeRq2Vsm5OTWabg/oB/g==", "cpu": [ "x64" ], @@ -15996,9 +15996,9 @@ ] }, "node_modules/turbo-darwin-arm64": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/turbo-darwin-arm64/-/turbo-darwin-arm64-2.0.5.tgz", - "integrity": "sha512-//5y4RJvnal8CttOLBwlaBqblcQb1qTlIxLN+I8O3E3rPuvHOupNKB9ZJxYIQ8oWf8ns8Ec8cxQ0GSBLTJIMtA==", + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/turbo-darwin-arm64/-/turbo-darwin-arm64-2.0.6.tgz", + "integrity": "sha512-RfeZYXIAkiA21E8lsvfptGTqz/256YD+eI1x37fedfvnHFWuIMFZGAOwJxtZc6QasQunDZ9TRRREbJNI68tkIw==", "cpu": [ "arm64" ], @@ -16009,9 +16009,9 @@ ] }, "node_modules/turbo-linux-64": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/turbo-linux-64/-/turbo-linux-64-2.0.5.tgz", - "integrity": "sha512-LDtEDU2Gm8p3lKu//aHXZFRKUCVu68BNF9LQ+HmiCKFpNyK7khpMTxIAAUhDqt+AzlrbxtrxcCpCJaWg1JDjHg==", + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/turbo-linux-64/-/turbo-linux-64-2.0.6.tgz", + "integrity": "sha512-92UDa0xNQQbx0HdSp9ag3YSS3xPdavhc7q9q9mxIAcqyjjD6VElA4Y85m4F/DDGE5SolCrvBz2sQhVmkOd6Caw==", "cpu": [ "x64" ], @@ -16022,9 +16022,9 @@ ] }, "node_modules/turbo-linux-arm64": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/turbo-linux-arm64/-/turbo-linux-arm64-2.0.5.tgz", - "integrity": "sha512-84wdrzntErBNxkHcwHxiTZdaginQAxGPnwLTyZj8lpUYI7okPoxy3jKpUeMHN3adm3iDedl/x0mYSIvVVkmOiA==", + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/turbo-linux-arm64/-/turbo-linux-arm64-2.0.6.tgz", + "integrity": "sha512-eQKu6utCVUkIH2kqOzD8OS6E0ba6COjWm6PRDTNCHQRljZW503ycaTUIdMOiJrVg1MkEjDyOReUg8s8D18aJ4Q==", "cpu": [ "arm64" ], @@ -16035,9 +16035,9 @@ ] }, "node_modules/turbo-windows-64": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/turbo-windows-64/-/turbo-windows-64-2.0.5.tgz", - "integrity": "sha512-SgaFZ0VW6kHCJogLNuLEleAauAJx2Y48wazZGVRmBpgSUS2AylXesaBMhJaEScYqLz7mIRn6KOgwM8D4wTxI9g==", + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/turbo-windows-64/-/turbo-windows-64-2.0.6.tgz", + "integrity": "sha512-+9u4EPrpoeHYCQ46dRcou9kbkSoelhOelHNcbs2d86D6ruYD/oIAHK9qgYK8LeARRz0jxhZIA/dWYdYsxJJWkw==", "cpu": [ "x64" ], @@ -16048,9 +16048,9 @@ ] }, "node_modules/turbo-windows-arm64": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/turbo-windows-arm64/-/turbo-windows-arm64-2.0.5.tgz", - "integrity": "sha512-foUxLOZoru0IRNIxm53fkfM4ubas9P0nTFjIcHtd+E8YHeogt8GqTweNre2e6ri1EHDo71emmuQgpuoFCOXZMg==", + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/turbo-windows-arm64/-/turbo-windows-arm64-2.0.6.tgz", + "integrity": "sha512-rdrKL+p+EjtdDVg0wQ/7yTbzkIYrnb0Pw4IKcjsy3M0RqUM9UcEi67b94XOAyTa5a0GqJL1+tUj2ebsFGPgZbg==", "cpu": [ "arm64" ], diff --git a/package.json b/package.json index d695fe0f..d5b41718 100644 --- a/package.json +++ b/package.json @@ -44,7 +44,7 @@ "diffscribe": "*", "glob": "10.4.2", "prettier": "3.3.2", - "turbo": "2.0.5" + "turbo": "2.0.6" }, "packageManager": "npm@10.7.0", "engines": { From 5149b2eed7f2fda63703065ffa1995476160b7e1 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 29 Jun 2024 00:38:06 +0300 Subject: [PATCH 281/458] Bump tsx from 4.15.7 to 4.15.8 (#608) Bumps [tsx](https://github.com/privatenumber/tsx) from 4.15.7 to 4.15.8. - [Release notes](https://github.com/privatenumber/tsx/releases) - [Changelog](https://github.com/privatenumber/tsx/blob/master/release.config.cjs) - [Commits](https://github.com/privatenumber/tsx/compare/v4.15.7...v4.15.8) --- updated-dependencies: - dependency-name: tsx dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- internal/backend/package.json | 2 +- package-lock.json | 16 ++++++++-------- packages/cache-handler/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 6 files changed, 13 insertions(+), 13 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index a2be7739..8a8c476e 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -38,7 +38,7 @@ "pm2": "5.4.1", "redis": "4.6.14", "rimraf": "5.0.7", - "tsx": "4.15.7", + "tsx": "4.15.8", "typescript": "5.5.2" } } diff --git a/internal/backend/package.json b/internal/backend/package.json index 2961ddef..cc2f1580 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -18,7 +18,7 @@ "@types/node": "20.14.9", "pino-pretty": "11.2.1", "rimraf": "5.0.7", - "tsx": "4.15.7", + "tsx": "4.15.8", "typescript": "5.5.2" } } diff --git a/package-lock.json b/package-lock.json index caa9b637..dfa9309f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -58,7 +58,7 @@ "pm2": "5.4.1", "redis": "4.6.14", "rimraf": "5.0.7", - "tsx": "4.15.7", + "tsx": "4.15.8", "typescript": "5.5.2" } }, @@ -455,7 +455,7 @@ "@types/node": "20.14.9", "pino-pretty": "11.2.1", "rimraf": "5.0.7", - "tsx": "4.15.7", + "tsx": "4.15.8", "typescript": "5.5.2" } }, @@ -15924,9 +15924,9 @@ "dev": true }, "node_modules/tsx": { - "version": "4.15.7", - "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.15.7.tgz", - "integrity": "sha512-u3H0iSFDZM3za+VxkZ1kywdCeHCn+8/qHQS1MNoO2sONDgD95HlWtt8aB23OzeTmFP9IU4/8bZUdg58Uu5J4cg==", + "version": "4.15.8", + "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.15.8.tgz", + "integrity": "sha512-B8dMlbbkZPW0GQ7wafyy2TGXyoGYW0IURfWkM1h/WzgG5lxxRoeDU2VbMURmmjwGaCsoKROVTLmQQPe/s2TnLw==", "dev": true, "dependencies": { "esbuild": "~0.21.4", @@ -17062,7 +17062,7 @@ "@types/node": "20.14.9", "rimraf": "5.0.7", "tsup": "8.1.0", - "tsx": "4.15.7", + "tsx": "4.15.8", "typescript": "5.5.2" }, "peerDependencies": { @@ -17097,7 +17097,7 @@ "@types/node": "20.14.9", "rimraf": "5.0.7", "tsup": "8.1.0", - "tsx": "4.15.7", + "tsx": "4.15.8", "typescript": "5.5.2" } }, @@ -17119,7 +17119,7 @@ "@types/node": "20.14.9", "rimraf": "5.0.7", "tsup": "8.1.0", - "tsx": "4.15.7", + "tsx": "4.15.8", "typescript": "5.5.2" } } diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 5d4b1145..ac90c05d 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -82,7 +82,7 @@ "@types/node": "20.14.9", "rimraf": "5.0.7", "tsup": "8.1.0", - "tsx": "4.15.7", + "tsx": "4.15.8", "typescript": "5.5.2" }, "peerDependencies": { diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 47d92fab..cd6e3263 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -31,7 +31,7 @@ "@types/node": "20.14.9", "rimraf": "5.0.7", "tsup": "8.1.0", - "tsx": "4.15.7", + "tsx": "4.15.8", "typescript": "5.5.2" } } diff --git a/packages/server/package.json b/packages/server/package.json index 03517d50..166adfc0 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -35,7 +35,7 @@ "@types/node": "20.14.9", "rimraf": "5.0.7", "tsup": "8.1.0", - "tsx": "4.15.7", + "tsx": "4.15.8", "typescript": "5.5.2" }, "distTags": [ From db48df30f023ee185fafdece1a5bd5e1636cf316 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 29 Jun 2024 01:15:16 +0300 Subject: [PATCH 282/458] Bump lru-cache from 10.2.2 to 10.3.0 (#607) Bumps [lru-cache](https://github.com/isaacs/node-lru-cache) from 10.2.2 to 10.3.0. - [Changelog](https://github.com/isaacs/node-lru-cache/blob/main/CHANGELOG.md) - [Commits](https://github.com/isaacs/node-lru-cache/compare/v10.2.2...v10.3.0) --- updated-dependencies: - dependency-name: lru-cache dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- internal/next-lru-cache/package.json | 2 +- package-lock.json | 10 +++++----- packages/cache-handler/package.json | 2 +- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index d419a4ee..3e64d281 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -11,7 +11,7 @@ "clean": "rimraf ./.turbo ./node_modules" }, "dependencies": { - "lru-cache": "10.2.2" + "lru-cache": "10.3.0" }, "devDependencies": { "@neshca/next-common": "*", diff --git a/package-lock.json b/package-lock.json index dfa9309f..f533fa9b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -799,7 +799,7 @@ "version": "0.0.0", "license": "MIT", "dependencies": { - "lru-cache": "10.2.2" + "lru-cache": "10.3.0" }, "devDependencies": { "@neshca/next-common": "*", @@ -10660,9 +10660,9 @@ } }, "node_modules/lru-cache": { - "version": "10.2.2", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.2.tgz", - "integrity": "sha512-9hp3Vp2/hFQUiIwKo8XCeFVnrg8Pk3TYNPIR7tJADKi5YfcF7vEaK7avFHTlSy3kOKYaJQaalfEo6YuXdceBOQ==", + "version": "10.3.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.3.0.tgz", + "integrity": "sha512-CQl19J/g+Hbjbv4Y3mFNNXFEL/5t/KCg8POCuUqd4rMKjGG+j1ybER83hxV58zL+dFI1PTkt3GNFSHRt+d8qEQ==", "engines": { "node": "14 || >=16.14" } @@ -17053,7 +17053,7 @@ "version": "1.3.2", "license": "MIT", "dependencies": { - "lru-cache": "10.2.2" + "lru-cache": "10.3.0" }, "devDependencies": { "@neshca/next-common": "*", diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index ac90c05d..be0d29fa 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -73,7 +73,7 @@ "test:watch": "tsx --watch --test src/**/*.test.ts" }, "dependencies": { - "lru-cache": "10.2.2" + "lru-cache": "10.3.0" }, "devDependencies": { "@neshca/next-common": "*", From 5a31b3f42a0856eb472dbe075b867b14a26dcc62 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 1 Jul 2024 06:54:55 +0300 Subject: [PATCH 283/458] Bump fastify from 4.28.0 to 4.28.1 (#610) Bumps [fastify](https://github.com/fastify/fastify) from 4.28.0 to 4.28.1. - [Release notes](https://github.com/fastify/fastify/releases) - [Commits](https://github.com/fastify/fastify/compare/v4.28.0...v4.28.1) --- updated-dependencies: - dependency-name: fastify dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- internal/backend/package.json | 2 +- package-lock.json | 12 ++++++------ packages/server/package.json | 2 +- 4 files changed, 9 insertions(+), 9 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 8a8c476e..8ea57716 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -34,7 +34,7 @@ "axios": "1.7.2", "dotenv-cli": "7.4.2", "eslint": "8.57.0", - "fastify": "4.28.0", + "fastify": "4.28.1", "pm2": "5.4.1", "redis": "4.6.14", "rimraf": "5.0.7", diff --git a/internal/backend/package.json b/internal/backend/package.json index cc2f1580..62435d95 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -10,7 +10,7 @@ "start": "tsx ./src/backend.ts" }, "dependencies": { - "fastify": "4.28.0", + "fastify": "4.28.1", "pino": "9.2.0" }, "devDependencies": { diff --git a/package-lock.json b/package-lock.json index f533fa9b..b3aa0658 100644 --- a/package-lock.json +++ b/package-lock.json @@ -54,7 +54,7 @@ "axios": "1.7.2", "dotenv-cli": "7.4.2", "eslint": "8.57.0", - "fastify": "4.28.0", + "fastify": "4.28.1", "pm2": "5.4.1", "redis": "4.6.14", "rimraf": "5.0.7", @@ -447,7 +447,7 @@ "version": "0.0.0", "license": "MIT", "dependencies": { - "fastify": "4.28.0", + "fastify": "4.28.1", "pino": "9.2.0" }, "devDependencies": { @@ -8363,9 +8363,9 @@ "integrity": "sha512-ypuAmmMKInk5q7XcepxlnUWDLWv4GFtaJqAzWKqn62IpQ3pejtr5dTVbt3vwqVaMKmkNR55sTT+CqUKIaT21BA==" }, "node_modules/fastify": { - "version": "4.28.0", - "resolved": "https://registry.npmjs.org/fastify/-/fastify-4.28.0.tgz", - "integrity": "sha512-HhW7UHW07YlqH5qpS0af8d2Gl/o98DhJ8ZDQWHRNDnzeOhZvtreWsX8xanjGgXmkYerGbo8ax/n40Dpwqkot8Q==", + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/fastify/-/fastify-4.28.1.tgz", + "integrity": "sha512-kFWUtpNr4i7t5vY2EJPCN2KgMVpuqfU4NjnJNCgiNB900oiDeYqaNDRcAfeBbOF5hGixixxcKnOU4KN9z6QncQ==", "funding": [ { "type": "github", @@ -17106,7 +17106,7 @@ "version": "1.1.1", "license": "MIT", "dependencies": { - "fastify": "4.28.0", + "fastify": "4.28.1", "pino": "9.2.0" }, "bin": { diff --git a/packages/server/package.json b/packages/server/package.json index 166adfc0..5d2f50d3 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -25,7 +25,7 @@ "start": "tsx ./src/server.ts" }, "dependencies": { - "fastify": "4.28.0", + "fastify": "4.28.1", "pino": "9.2.0" }, "devDependencies": { From 455fd9c2b7d69c1f315de0b6fc9b460456bfb734 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 1 Jul 2024 12:09:30 +0300 Subject: [PATCH 284/458] Bump tsx from 4.15.8 to 4.16.0 (#611) Bumps [tsx](https://github.com/privatenumber/tsx) from 4.15.8 to 4.16.0. - [Release notes](https://github.com/privatenumber/tsx/releases) - [Changelog](https://github.com/privatenumber/tsx/blob/master/release.config.cjs) - [Commits](https://github.com/privatenumber/tsx/compare/v4.15.8...v4.16.0) --- updated-dependencies: - dependency-name: tsx dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- internal/backend/package.json | 2 +- package-lock.json | 18 +++++++++--------- packages/cache-handler/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 6 files changed, 14 insertions(+), 14 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 8ea57716..4d25f02d 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -38,7 +38,7 @@ "pm2": "5.4.1", "redis": "4.6.14", "rimraf": "5.0.7", - "tsx": "4.15.8", + "tsx": "4.16.0", "typescript": "5.5.2" } } diff --git a/internal/backend/package.json b/internal/backend/package.json index 62435d95..08668fd7 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -18,7 +18,7 @@ "@types/node": "20.14.9", "pino-pretty": "11.2.1", "rimraf": "5.0.7", - "tsx": "4.15.8", + "tsx": "4.16.0", "typescript": "5.5.2" } } diff --git a/package-lock.json b/package-lock.json index b3aa0658..61485c56 100644 --- a/package-lock.json +++ b/package-lock.json @@ -58,7 +58,7 @@ "pm2": "5.4.1", "redis": "4.6.14", "rimraf": "5.0.7", - "tsx": "4.15.8", + "tsx": "4.16.0", "typescript": "5.5.2" } }, @@ -455,7 +455,7 @@ "@types/node": "20.14.9", "pino-pretty": "11.2.1", "rimraf": "5.0.7", - "tsx": "4.15.8", + "tsx": "4.16.0", "typescript": "5.5.2" } }, @@ -15924,12 +15924,12 @@ "dev": true }, "node_modules/tsx": { - "version": "4.15.8", - "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.15.8.tgz", - "integrity": "sha512-B8dMlbbkZPW0GQ7wafyy2TGXyoGYW0IURfWkM1h/WzgG5lxxRoeDU2VbMURmmjwGaCsoKROVTLmQQPe/s2TnLw==", + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.16.0.tgz", + "integrity": "sha512-MPgN+CuY+4iKxGoJNPv+1pyo5YWZAQ5XfsyobUG+zoKG7IkvCPLZDEyoIb8yLS2FcWci1nlxAqmvPlFWD5AFiQ==", "dev": true, "dependencies": { - "esbuild": "~0.21.4", + "esbuild": "~0.21.5", "get-tsconfig": "^4.7.5" }, "bin": { @@ -17062,7 +17062,7 @@ "@types/node": "20.14.9", "rimraf": "5.0.7", "tsup": "8.1.0", - "tsx": "4.15.8", + "tsx": "4.16.0", "typescript": "5.5.2" }, "peerDependencies": { @@ -17097,7 +17097,7 @@ "@types/node": "20.14.9", "rimraf": "5.0.7", "tsup": "8.1.0", - "tsx": "4.15.8", + "tsx": "4.16.0", "typescript": "5.5.2" } }, @@ -17119,7 +17119,7 @@ "@types/node": "20.14.9", "rimraf": "5.0.7", "tsup": "8.1.0", - "tsx": "4.15.8", + "tsx": "4.16.0", "typescript": "5.5.2" } } diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index be0d29fa..4359858e 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -82,7 +82,7 @@ "@types/node": "20.14.9", "rimraf": "5.0.7", "tsup": "8.1.0", - "tsx": "4.15.8", + "tsx": "4.16.0", "typescript": "5.5.2" }, "peerDependencies": { diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index cd6e3263..290ae924 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -31,7 +31,7 @@ "@types/node": "20.14.9", "rimraf": "5.0.7", "tsup": "8.1.0", - "tsx": "4.15.8", + "tsx": "4.16.0", "typescript": "5.5.2" } } diff --git a/packages/server/package.json b/packages/server/package.json index 5d2f50d3..13bc7792 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -35,7 +35,7 @@ "@types/node": "20.14.9", "rimraf": "5.0.7", "tsup": "8.1.0", - "tsx": "4.15.8", + "tsx": "4.16.0", "typescript": "5.5.2" }, "distTags": [ From 1570363412e214198e0b783e6d952a8a7a225a26 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 2 Jul 2024 11:45:53 +0300 Subject: [PATCH 285/458] Bump @changesets/cli from 2.27.6 to 2.27.7 (#614) Bumps [@changesets/cli](https://github.com/changesets/changesets) from 2.27.6 to 2.27.7. - [Release notes](https://github.com/changesets/changesets/releases) - [Changelog](https://github.com/changesets/changesets/blob/main/docs/modifying-changelog-format.md) - [Commits](https://github.com/changesets/changesets/compare/@changesets/cli@2.27.6...@changesets/cli@2.27.7) --- updated-dependencies: - dependency-name: "@changesets/cli" dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 58 +++++++++++++++++++++++------------------------ package.json | 2 +- 2 files changed, 30 insertions(+), 30 deletions(-) diff --git a/package-lock.json b/package-lock.json index 61485c56..83042320 100644 --- a/package-lock.json +++ b/package-lock.json @@ -16,7 +16,7 @@ "internal/*" ], "dependencies": { - "@changesets/cli": "2.27.6" + "@changesets/cli": "2.27.7" }, "devDependencies": { "@actions/core": "1.10.1", @@ -1508,12 +1508,12 @@ "integrity": "sha512-s3jaWicZd0pkP0jf5ysyHUI/RE7MHos6qlToFcGWXVp+ykHOy77OUMrfbgJ9it2C5bow7OIQwYYaHjk9XlBQ2A==" }, "node_modules/@changesets/apply-release-plan": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/@changesets/apply-release-plan/-/apply-release-plan-7.0.3.tgz", - "integrity": "sha512-klL6LCdmfbEe9oyfLxnidIf/stFXmrbFO/3gT5LU5pcyoZytzJe4gWpTBx3BPmyNPl16dZ1xrkcW7b98e3tYkA==", + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/@changesets/apply-release-plan/-/apply-release-plan-7.0.4.tgz", + "integrity": "sha512-HLFwhKWayKinWAul0Vj+76jVx1Pc2v55MGPVjZ924Y/ROeSsBMFutv9heHmCUj48lJyRfOTJG5+ar+29FUky/A==", "dependencies": { "@babel/runtime": "^7.20.1", - "@changesets/config": "^3.0.1", + "@changesets/config": "^3.0.2", "@changesets/get-version-range-type": "^0.4.0", "@changesets/git": "^3.0.0", "@changesets/should-skip-package": "^0.1.0", @@ -1543,13 +1543,13 @@ } }, "node_modules/@changesets/assemble-release-plan": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/@changesets/assemble-release-plan/-/assemble-release-plan-6.0.2.tgz", - "integrity": "sha512-n9/Tdq+ze+iUtjmq0mZO3pEhJTKkku9hUxtUadW30jlN7kONqJG3O6ALeXrmc6gsi/nvoCuKjqEJ68Hk8RbMTQ==", + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/@changesets/assemble-release-plan/-/assemble-release-plan-6.0.3.tgz", + "integrity": "sha512-bLNh9/Lgl1VwkjWZTq8JmRqH+hj7/Yzfz0jsQ/zJJ+FTmVqmqPj3szeKOri8O/hEM8JmHW019vh2gTO9iq5Cuw==", "dependencies": { "@babel/runtime": "^7.20.1", "@changesets/errors": "^0.2.0", - "@changesets/get-dependents-graph": "^2.1.0", + "@changesets/get-dependents-graph": "^2.1.1", "@changesets/should-skip-package": "^0.1.0", "@changesets/types": "^6.0.0", "@manypkg/get-packages": "^1.1.3", @@ -1565,18 +1565,18 @@ } }, "node_modules/@changesets/cli": { - "version": "2.27.6", - "resolved": "https://registry.npmjs.org/@changesets/cli/-/cli-2.27.6.tgz", - "integrity": "sha512-PB7KS5JkCQ4WSXlnfThn8CXAHVwYxFdZvYTimhi12fls/tzj9iimUhKsYwkrKSbw1AiVlGCZtihj5Wkt6siIjA==", + "version": "2.27.7", + "resolved": "https://registry.npmjs.org/@changesets/cli/-/cli-2.27.7.tgz", + "integrity": "sha512-6lr8JltiiXPIjDeYg4iM2MeePP6VN/JkmqBsVA5XRiy01hGS3y629LtSDvKcycj/w/5Eur1rEwby/MjcYS+e2A==", "dependencies": { "@babel/runtime": "^7.20.1", - "@changesets/apply-release-plan": "^7.0.3", - "@changesets/assemble-release-plan": "^6.0.2", + "@changesets/apply-release-plan": "^7.0.4", + "@changesets/assemble-release-plan": "^6.0.3", "@changesets/changelog-git": "^0.2.0", - "@changesets/config": "^3.0.1", + "@changesets/config": "^3.0.2", "@changesets/errors": "^0.2.0", - "@changesets/get-dependents-graph": "^2.1.0", - "@changesets/get-release-plan": "^4.0.2", + "@changesets/get-dependents-graph": "^2.1.1", + "@changesets/get-release-plan": "^4.0.3", "@changesets/git": "^3.0.0", "@changesets/logger": "^0.1.0", "@changesets/pre": "^2.0.0", @@ -1607,12 +1607,12 @@ } }, "node_modules/@changesets/config": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@changesets/config/-/config-3.0.1.tgz", - "integrity": "sha512-nCr8pOemUjvGJ8aUu8TYVjqnUL+++bFOQHBVmtNbLvKzIDkN/uiP/Z4RKmr7NNaiujIURHySDEGFPftR4GbTUA==", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@changesets/config/-/config-3.0.2.tgz", + "integrity": "sha512-cdEhS4t8woKCX2M8AotcV2BOWnBp09sqICxKapgLHf9m5KdENpWjyrFNMjkLqGJtUys9U+w93OxWT0czorVDfw==", "dependencies": { "@changesets/errors": "^0.2.0", - "@changesets/get-dependents-graph": "^2.1.0", + "@changesets/get-dependents-graph": "^2.1.1", "@changesets/logger": "^0.1.0", "@changesets/types": "^6.0.0", "@manypkg/get-packages": "^1.1.3", @@ -1629,9 +1629,9 @@ } }, "node_modules/@changesets/get-dependents-graph": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@changesets/get-dependents-graph/-/get-dependents-graph-2.1.0.tgz", - "integrity": "sha512-QOt6pQq9RVXKGHPVvyKimJDYJumx7p4DO5MO9AhRJYgAPgv0emhNqAqqysSVKHBm4sxKlGN4S1zXOIb5yCFuhQ==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/@changesets/get-dependents-graph/-/get-dependents-graph-2.1.1.tgz", + "integrity": "sha512-LRFjjvigBSzfnPU2n/AhFsuWR5DK++1x47aq6qZ8dzYsPtS/I5mNhIGAS68IAxh1xjO9BTtz55FwefhANZ+FCA==", "dependencies": { "@changesets/types": "^6.0.0", "@manypkg/get-packages": "^1.1.3", @@ -1641,13 +1641,13 @@ } }, "node_modules/@changesets/get-release-plan": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@changesets/get-release-plan/-/get-release-plan-4.0.2.tgz", - "integrity": "sha512-rOalz7nMuMV2vyeP7KBeAhqEB7FM2GFPO5RQSoOoUKKH9L6wW3QyPA2K+/rG9kBrWl2HckPVES73/AuwPvbH3w==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@changesets/get-release-plan/-/get-release-plan-4.0.3.tgz", + "integrity": "sha512-6PLgvOIwTSdJPTtpdcr3sLtGatT+Jr22+cQwEBJBy6wP0rjB4yJ9lv583J9fVpn1bfQlBkDa8JxbS2g/n9lIyA==", "dependencies": { "@babel/runtime": "^7.20.1", - "@changesets/assemble-release-plan": "^6.0.2", - "@changesets/config": "^3.0.1", + "@changesets/assemble-release-plan": "^6.0.3", + "@changesets/config": "^3.0.2", "@changesets/pre": "^2.0.0", "@changesets/read": "^0.6.0", "@changesets/types": "^6.0.0", diff --git a/package.json b/package.json index d5b41718..558306c6 100644 --- a/package.json +++ b/package.json @@ -34,7 +34,7 @@ "version-packages": "changeset version && npm run codestyle:fix" }, "dependencies": { - "@changesets/cli": "2.27.6" + "@changesets/cli": "2.27.7" }, "devDependencies": { "@actions/core": "1.10.1", From 6f8b9eb5b775995bfda10723f96b01149f2ef9f4 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 2 Jul 2024 13:17:24 +0300 Subject: [PATCH 286/458] Bump typescript from 5.5.2 to 5.5.3 (#615) Bumps [typescript](https://github.com/Microsoft/TypeScript) from 5.5.2 to 5.5.3. - [Release notes](https://github.com/Microsoft/TypeScript/releases) - [Changelog](https://github.com/microsoft/TypeScript/blob/main/azure-pipelines.release.yml) - [Commits](https://github.com/Microsoft/TypeScript/compare/v5.5.2...v5.5.3) --- updated-dependencies: - dependency-name: typescript dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- internal/backend/package.json | 2 +- internal/eslint-config/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 26 ++++++++++----------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 11 files changed, 23 insertions(+), 23 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 4d25f02d..7524df90 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -39,6 +39,6 @@ "redis": "4.6.14", "rimraf": "5.0.7", "tsx": "4.16.0", - "typescript": "5.5.2" + "typescript": "5.5.3" } } diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 3f2fd10d..dcdf38c6 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -26,6 +26,6 @@ "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "eslint": "8.57.0", - "typescript": "5.5.2" + "typescript": "5.5.3" } } diff --git a/internal/backend/package.json b/internal/backend/package.json index 08668fd7..fa7b6bb4 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -19,6 +19,6 @@ "pino-pretty": "11.2.1", "rimraf": "5.0.7", "tsx": "4.16.0", - "typescript": "5.5.2" + "typescript": "5.5.3" } } diff --git a/internal/eslint-config/package.json b/internal/eslint-config/package.json index 57aad46b..66a72b48 100644 --- a/internal/eslint-config/package.json +++ b/internal/eslint-config/package.json @@ -12,6 +12,6 @@ "eslint-config-prettier": "9.1.0", "eslint-config-turbo": "2.0.6", "eslint-plugin-only-warn": "1.1.0", - "typescript": "5.5.2" + "typescript": "5.5.3" } } diff --git a/internal/next-common/package.json b/internal/next-common/package.json index bef36ac8..511e0253 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -17,6 +17,6 @@ "@repo/typescript-config": "*", "@types/node": "20.14.9", "rimraf": "5.0.7", - "typescript": "5.5.2" + "typescript": "5.5.3" } } diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index 3e64d281..9bc823a4 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -18,6 +18,6 @@ "@repo/typescript-config": "*", "@types/node": "20.14.9", "rimraf": "5.0.7", - "typescript": "5.5.2" + "typescript": "5.5.3" } } diff --git a/package-lock.json b/package-lock.json index 83042320..f7086198 100644 --- a/package-lock.json +++ b/package-lock.json @@ -59,7 +59,7 @@ "redis": "4.6.14", "rimraf": "5.0.7", "tsx": "4.16.0", - "typescript": "5.5.2" + "typescript": "5.5.3" } }, "apps/cache-testing/node_modules/next": { @@ -130,7 +130,7 @@ "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "eslint": "8.57.0", - "typescript": "5.5.2" + "typescript": "5.5.3" } }, "docs/cache-handler-docs/node_modules/@next/env": { @@ -456,7 +456,7 @@ "pino-pretty": "11.2.1", "rimraf": "5.0.7", "tsx": "4.16.0", - "typescript": "5.5.2" + "typescript": "5.5.3" } }, "internal/eslint-config": { @@ -469,7 +469,7 @@ "eslint-config-prettier": "9.1.0", "eslint-config-turbo": "2.0.6", "eslint-plugin-only-warn": "1.1.0", - "typescript": "5.5.2" + "typescript": "5.5.3" } }, "internal/eslint-config/node_modules/@next/eslint-plugin-next": { @@ -593,7 +593,7 @@ "@repo/typescript-config": "*", "@types/node": "20.14.9", "rimraf": "5.0.7", - "typescript": "5.5.2" + "typescript": "5.5.3" } }, "internal/next-common/node_modules/@next/env": { @@ -806,7 +806,7 @@ "@repo/typescript-config": "*", "@types/node": "20.14.9", "rimraf": "5.0.7", - "typescript": "5.5.2" + "typescript": "5.5.3" } }, "internal/prettier-config": { @@ -16177,9 +16177,9 @@ } }, "node_modules/typescript": { - "version": "5.5.2", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.5.2.tgz", - "integrity": "sha512-NcRtPEOsPFFWjobJEtfihkLCZCXZt/os3zf8nTxjVH3RvTSxjrCamJpbExGvYOF+tFHc3pA65qpdwPbzjohhew==", + "version": "5.5.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.5.3.tgz", + "integrity": "sha512-/hreyEujaB0w76zKo6717l3L0o/qEUtRgdvUBvlkhoWeOVMjMuHNHk0BRBzikzuGDqNmPQbg5ifMEqsHLiIUcQ==", "dev": true, "bin": { "tsc": "bin/tsc", @@ -17063,7 +17063,7 @@ "rimraf": "5.0.7", "tsup": "8.1.0", "tsx": "4.16.0", - "typescript": "5.5.2" + "typescript": "5.5.3" }, "peerDependencies": { "next": ">=13.5.1", @@ -17081,7 +17081,7 @@ "@types/node": "20.14.9", "rimraf": "5.0.7", "tsup": "8.1.0", - "typescript": "5.5.2" + "typescript": "5.5.3" }, "peerDependencies": { "dotenv": "^16.3.1", @@ -17098,7 +17098,7 @@ "rimraf": "5.0.7", "tsup": "8.1.0", "tsx": "4.16.0", - "typescript": "5.5.2" + "typescript": "5.5.3" } }, "packages/server": { @@ -17120,7 +17120,7 @@ "rimraf": "5.0.7", "tsup": "8.1.0", "tsx": "4.16.0", - "typescript": "5.5.2" + "typescript": "5.5.3" } } } diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 4359858e..2508f65a 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -83,7 +83,7 @@ "rimraf": "5.0.7", "tsup": "8.1.0", "tsx": "4.16.0", - "typescript": "5.5.2" + "typescript": "5.5.3" }, "peerDependencies": { "next": ">=13.5.1", diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index 276c0da7..5b41bc64 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -28,7 +28,7 @@ "@types/node": "20.14.9", "rimraf": "5.0.7", "tsup": "8.1.0", - "typescript": "5.5.2" + "typescript": "5.5.3" }, "peerDependencies": { "dotenv": "^16.3.1", diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 290ae924..0d4d1451 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -32,6 +32,6 @@ "rimraf": "5.0.7", "tsup": "8.1.0", "tsx": "4.16.0", - "typescript": "5.5.2" + "typescript": "5.5.3" } } diff --git a/packages/server/package.json b/packages/server/package.json index 13bc7792..233d360b 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -36,7 +36,7 @@ "rimraf": "5.0.7", "tsup": "8.1.0", "tsx": "4.16.0", - "typescript": "5.5.2" + "typescript": "5.5.3" }, "distTags": [ "next13.5", From cc3bfec5edc3371cc0eb85ba646fe6f099d7729f Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Tue, 2 Jul 2024 20:42:45 +0300 Subject: [PATCH 287/458] Add the new option `revalidateTagQuerySize` to the `redis-stack` and the `redis-strings` Handlers (#617) * Add the new option `revalidateTagQuerySize` to the `redis-stack` and the `redis-strings` Handlers * Update `Tests` workflow to run parallel tests for `redis-stack` and `redis-strings` Handlers --- .changeset/tricky-kids-end.md | 15 ++++++++++ .github/workflows/tests.yml | 10 +++++-- .../cache-handler-redis-strings.mjs | 6 ++-- apps/cache-testing/playwright.config.ts | 2 +- .../src/pages/handlers/redis-stack.mdx | 6 ++++ .../src/pages/handlers/redis-strings.mdx | 6 ++++ packages/cache-handler/src/common-types.ts | 14 ++++++++++ .../cache-handler/src/handlers/redis-stack.ts | 20 +++++++------ .../src/handlers/redis-strings.ts | 28 +++++++++++-------- 9 files changed, 79 insertions(+), 28 deletions(-) create mode 100644 .changeset/tricky-kids-end.md diff --git a/.changeset/tricky-kids-end.md b/.changeset/tricky-kids-end.md new file mode 100644 index 00000000..77869e71 --- /dev/null +++ b/.changeset/tricky-kids-end.md @@ -0,0 +1,15 @@ +--- +'@neshca/cache-handler': minor +--- + +#### New Features + +##### `@neshca/cache-handle/redis-strings` + +- Added `revalidateTagQuerySize` option. It allows specifying the number of tags in a single query retrieved from Redis when scanning or searching for tags. +- Increased the default query size for `hScan` from 25 to 100. + +##### `@neshca/cache-handle/redis-stack` + +- Added `revalidateTagQuerySize` option. It allows specifying the number of tags in a single query retrieved from Redis when scanning or searching for tags. +- Increased the default query size for `ft.search` from 25 to 100. diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index b3830c2c..a540d56b 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -32,11 +32,15 @@ on: - '.prettierrc.json' jobs: test: - name: 'redis-stack' + strategy: + max-parallel: 2 + matrix: + handler: [redis-stack, redis-strings] + name: ${{ matrix.handler }} timeout-minutes: 10 runs-on: ubuntu-latest env: - HANDLER_PATH: ./cache-handler-redis-stack.mjs + HANDLER_PATH: ./cache-handler-${{ matrix.handler }}.mjs REDIS_URL: redis://localhost:6379 services: redis: @@ -73,6 +77,6 @@ jobs: - uses: actions/upload-artifact@v4 if: always() with: - name: playwright-report + name: playwright-report-${{ matrix.handler }} path: apps/cache-testing/playwright-report/ retention-days: 7 diff --git a/apps/cache-testing/cache-handler-redis-strings.mjs b/apps/cache-testing/cache-handler-redis-strings.mjs index 3226f272..8f07a239 100644 --- a/apps/cache-testing/cache-handler-redis-strings.mjs +++ b/apps/cache-testing/cache-handler-redis-strings.mjs @@ -1,7 +1,6 @@ // @ts-check import { CacheHandler } from '@neshca/cache-handler'; -import createLruHandler from '@neshca/cache-handler/local-lru'; import createRedisHandler from '@neshca/cache-handler/redis-strings'; import { createClient } from 'redis'; @@ -29,10 +28,9 @@ CacheHandler.onCreation(async () => { keyPrefix: PREFIX, }); - const localHandler = createLruHandler(); - return { - handlers: [redisHandler, localHandler], + handlers: [redisHandler], + ttl: { defaultStaleAge: 60, estimateExpireAge: (staleAge) => staleAge * 2 }, }; }); diff --git a/apps/cache-testing/playwright.config.ts b/apps/cache-testing/playwright.config.ts index d3820fff..27b2df43 100644 --- a/apps/cache-testing/playwright.config.ts +++ b/apps/cache-testing/playwright.config.ts @@ -6,7 +6,7 @@ export default defineConfig({ testDir: './tests', fullyParallel: false, forbidOnly: Boolean(process.env.CI), - retries: process.env.CI ? 1 : 0, + retries: 0, workers: 1, reporter: 'html', use: { baseURL: 'http://localhost', trace: 'on-first-retry', testIdAttribute: 'data-pw' }, diff --git a/docs/cache-handler-docs/src/pages/handlers/redis-stack.mdx b/docs/cache-handler-docs/src/pages/handlers/redis-stack.mdx index 33f8b931..af9982f1 100644 --- a/docs/cache-handler-docs/src/pages/handlers/redis-stack.mdx +++ b/docs/cache-handler-docs/src/pages/handlers/redis-stack.mdx @@ -12,6 +12,7 @@ const redisHandler = await createRedisHandler({ client, keyPrefix: 'prefix:', timeoutMs: 1000, + revalidateTagQuerySize: 100, }); // ... ``` @@ -32,6 +33,11 @@ The `redis-stack` Handler uses Redis with `RedisJSON` and `RedisSearch` modules - `client` - A Redis client instance. The client must be ready before creating the Handler. - `keyPrefix` - Optional. Prefix for all keys, useful for namespacing. Defaults to an empty string. - `timeoutMs` - Optional. Timeout in milliseconds for Redis operations. Defaults to `5000`. + - `revalidateTagQuerySize` - Optional. The number of tags in a single query retrieved from Redis when scanning or searching for tags. Defaults to `100`. + +#### `revalidateTagQuerySize` + +You can adjust this value to optimize the number of commands sent to Redis when scanning or searching for tags. A higher value will reduce the number of commands sent to Redis, but it will also increase the amount of data transferred over the network. Redis uses TCP and typically has 65,535 bytes as the maximum size of a packet (it can be lower depending on MTU). ### Return value diff --git a/docs/cache-handler-docs/src/pages/handlers/redis-strings.mdx b/docs/cache-handler-docs/src/pages/handlers/redis-strings.mdx index fda56019..bd0192d0 100644 --- a/docs/cache-handler-docs/src/pages/handlers/redis-strings.mdx +++ b/docs/cache-handler-docs/src/pages/handlers/redis-strings.mdx @@ -12,6 +12,7 @@ const redisHandler = createRedisHandler({ timeoutMs: 1000, keyExpirationStrategy: 'EXAT', sharedTagsKey: '__sharedTags__', + revalidateTagQuerySize: 100, }); // ... ``` @@ -30,12 +31,17 @@ The `redis-strings` Handler uses plain Redis as the cache store. It is a simple - `timeoutMs` - Optional. Timeout in milliseconds for Redis operations. Defaults to `5000`. - `keyExpirationStrategy` - Optional. It allows you to choose the expiration strategy for cache keys. Defaults to `EXPRIREAT`. - `sharedTagsKey` - Optional. Dedicated key for the internal revalidation process. It must not interfere with cache keys from your application. Defaults to `__sharedTags__`. + - `revalidateTagQuerySize` - Optional. The number of tags in a single query retrieved from Redis when scanning or searching for tags. Defaults to `100`. #### `keyExpirationStrategy` - `'EXAT'`: Uses the `EXAT` option of the `SET` command to set the expiration time. This is more efficient than `EXPIREAT`. Requires Redis server 6.2.0 or newer - `'EXPIREAT'`: Uses the `EXPIREAT` command to set the expiration time. This requires an additional command call. Requires Redis server 4.0.0 or newer. +#### `revalidateTagQuerySize` + +You can adjust this value to optimize the number of commands sent to Redis when scanning or searching for tags. A higher value will reduce the number of commands sent to Redis, but it will also increase the amount of data transferred over the network. Redis uses TCP and typically has 65,535 bytes as the maximum size of a packet (it can be lower depending on MTU). + ### Return value A new `Handler` instance for the `redis-strings` Handler. diff --git a/packages/cache-handler/src/common-types.ts b/packages/cache-handler/src/common-types.ts index fdce45ac..b80bc8d0 100644 --- a/packages/cache-handler/src/common-types.ts +++ b/packages/cache-handler/src/common-types.ts @@ -30,6 +30,20 @@ export type CreateRedisStackHandlerOptions> * @since 1.0.0 */ timeoutMs?: number; + /** + * Optional. The number of tags in a single query retrieved from Redis when scanning or searching for tags. + * + * @default 100 // 100 tags + * + * @since 1.4.0 + * + * @remarks + * You can adjust this value to optimize the number of commands sent to Redis when scanning or searching for tags. + * A higher value will reduce the number of commands sent to Redis, + * but it will also increase the amount of data transferred over the network. + * Redis uses TCP and typically has 65,535 bytes as the maximum size of a packet (it can be lower depending on MTU). + */ + revalidateTagQuerySize?: number; }; export type CreateRedisStringsHandlerOptions = CreateRedisStackHandlerOptions & { diff --git a/packages/cache-handler/src/handlers/redis-stack.ts b/packages/cache-handler/src/handlers/redis-stack.ts index d9bceeec..e983a5c8 100644 --- a/packages/cache-handler/src/handlers/redis-stack.ts +++ b/packages/cache-handler/src/handlers/redis-stack.ts @@ -37,6 +37,7 @@ export default async function createHandler({ client, keyPrefix = '', timeoutMs = 5000, + revalidateTagQuerySize = 100, }: CreateRedisStackHandlerOptions): Promise { function assertClientIsReady(): void { if (!client.isReady) { @@ -142,25 +143,28 @@ export default async function createHandler({ let from = 0; - const querySize = 25; - const keysToDelete: string[] = []; while (true) { - const { documents } = await client.ft.search('idx:tags', `@tag:(${sanitizedTag})`, { - LIMIT: { from, size: querySize }, - TIMEOUT: timeoutMs, - }); + const { documents } = await client.ft.search( + getTimeoutRedisCommandOptions(timeoutMs), + 'idx:tags', + `@tag:(${sanitizedTag})`, + { + LIMIT: { from, size: revalidateTagQuerySize }, + TIMEOUT: timeoutMs, + }, + ); for (const { id } of documents) { keysToDelete.push(id); } - if (documents.length < querySize) { + if (documents.length < revalidateTagQuerySize) { break; } - from += querySize; + from += revalidateTagQuerySize; } if (keysToDelete.length === 0) { diff --git a/packages/cache-handler/src/handlers/redis-strings.ts b/packages/cache-handler/src/handlers/redis-strings.ts index c652251f..66530eda 100644 --- a/packages/cache-handler/src/handlers/redis-strings.ts +++ b/packages/cache-handler/src/handlers/redis-strings.ts @@ -39,6 +39,7 @@ export default function createHandler({ sharedTagsKey = '__sharedTags__', timeoutMs = 5000, keyExpirationStrategy = 'EXPIREAT', + revalidateTagQuerySize = 100, }: CreateRedisStringsHandlerOptions): Handler { function assertClientIsReady(): void { if (!client.isReady) { @@ -139,21 +140,22 @@ export default function createHandler({ let cursor = 0; - const querySize = 25; + const hScanOptions = { COUNT: revalidateTagQuerySize }; - while (true) { - const remoteTagsPortion = await client.hScan(keyPrefix + sharedTagsKey, cursor, { COUNT: querySize }); + do { + const remoteTagsPortion = await client.hScan( + getTimeoutRedisCommandOptions(timeoutMs), + keyPrefix + sharedTagsKey, + cursor, + hScanOptions, + ); for (const { field, value } of remoteTagsPortion.tuples) { tagsMap.set(field, JSON.parse(value)); } - if (remoteTagsPortion.cursor === 0) { - break; - } - cursor = remoteTagsPortion.cursor; - } + } while (cursor !== 0); const keysToDelete: string[] = []; @@ -170,11 +172,13 @@ export default function createHandler({ return; } - const options = getTimeoutRedisCommandOptions(timeoutMs); - - const deleteKeysOperation = client.unlink(options, keysToDelete); + const deleteKeysOperation = client.unlink(getTimeoutRedisCommandOptions(timeoutMs), keysToDelete); - const updateTagsOperation = client.hDel(options, keyPrefix + sharedTagsKey, tagsToDelete); + const updateTagsOperation = client.hDel( + { isolated: true, ...getTimeoutRedisCommandOptions(timeoutMs) }, + keyPrefix + sharedTagsKey, + tagsToDelete, + ); await Promise.all([deleteKeysOperation, updateTagsOperation]); }, From 157745d37fe658dba238d919a1fccd0a30596e16 Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Tue, 2 Jul 2024 20:46:31 +0300 Subject: [PATCH 288/458] Update changeset (#619) --- .changeset/tricky-kids-end.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.changeset/tricky-kids-end.md b/.changeset/tricky-kids-end.md index 77869e71..767afb22 100644 --- a/.changeset/tricky-kids-end.md +++ b/.changeset/tricky-kids-end.md @@ -2,6 +2,8 @@ '@neshca/cache-handler': minor --- +Add the new option `revalidateTagQuerySize` to the `redis-stack` and the `redis-strings` Handlers + #### New Features ##### `@neshca/cache-handle/redis-strings` From 0d0ee08163ccc2abcb16b065f45dbeb05f7eff9e Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 2 Jul 2024 20:48:22 +0300 Subject: [PATCH 289/458] Version Packages (#618) Co-authored-by: github-actions[bot] --- .changeset/tricky-kids-end.md | 17 ----------------- packages/cache-handler/CHANGELOG.md | 18 ++++++++++++++++++ packages/cache-handler/package.json | 2 +- 3 files changed, 19 insertions(+), 18 deletions(-) delete mode 100644 .changeset/tricky-kids-end.md diff --git a/.changeset/tricky-kids-end.md b/.changeset/tricky-kids-end.md deleted file mode 100644 index 767afb22..00000000 --- a/.changeset/tricky-kids-end.md +++ /dev/null @@ -1,17 +0,0 @@ ---- -'@neshca/cache-handler': minor ---- - -Add the new option `revalidateTagQuerySize` to the `redis-stack` and the `redis-strings` Handlers - -#### New Features - -##### `@neshca/cache-handle/redis-strings` - -- Added `revalidateTagQuerySize` option. It allows specifying the number of tags in a single query retrieved from Redis when scanning or searching for tags. -- Increased the default query size for `hScan` from 25 to 100. - -##### `@neshca/cache-handle/redis-stack` - -- Added `revalidateTagQuerySize` option. It allows specifying the number of tags in a single query retrieved from Redis when scanning or searching for tags. -- Increased the default query size for `ft.search` from 25 to 100. diff --git a/packages/cache-handler/CHANGELOG.md b/packages/cache-handler/CHANGELOG.md index aaa32a7b..43f39d16 100644 --- a/packages/cache-handler/CHANGELOG.md +++ b/packages/cache-handler/CHANGELOG.md @@ -1,5 +1,23 @@ # @neshca/cache-handler +## 1.4.0 + +### Minor Changes + +- cc3bfec: Add the new option `revalidateTagQuerySize` to the `redis-stack` and the `redis-strings` Handlers + + #### New Features + + ##### `@neshca/cache-handle/redis-strings` + + - Added `revalidateTagQuerySize` option. It allows specifying the number of tags in a single query retrieved from Redis when scanning or searching for tags. + - Increased the default query size for `hScan` from 25 to 100. + + ##### `@neshca/cache-handle/redis-stack` + + - Added `revalidateTagQuerySize` option. It allows specifying the number of tags in a single query retrieved from Redis when scanning or searching for tags. + - Increased the default query size for `ft.search` from 25 to 100. + ## 1.3.2 ### Patch Changes diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 2508f65a..a83d5b7b 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -1,6 +1,6 @@ { "name": "@neshca/cache-handler", - "version": "1.3.2", + "version": "1.4.0", "description": "Next.js self-hosting simplified.", "keywords": [ "cache", From 8158dbe7492afb3de8fb6c80762a3a58b33cbb6f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 3 Jul 2024 12:06:08 +0300 Subject: [PATCH 290/458] Bump redis from 4.6.14 to 4.6.15 (#621) Bumps [redis](https://github.com/redis/node-redis) from 4.6.14 to 4.6.15. - [Release notes](https://github.com/redis/node-redis/releases) - [Changelog](https://github.com/redis/node-redis/blob/master/CHANGELOG.md) - [Commits](https://github.com/redis/node-redis/compare/redis@4.6.14...redis@4.6.15) --- updated-dependencies: - dependency-name: redis dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- package-lock.json | 18 +++++++++--------- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 7524df90..e1923779 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -36,7 +36,7 @@ "eslint": "8.57.0", "fastify": "4.28.1", "pm2": "5.4.1", - "redis": "4.6.14", + "redis": "4.6.15", "rimraf": "5.0.7", "tsx": "4.16.0", "typescript": "5.5.3" diff --git a/package-lock.json b/package-lock.json index f7086198..b9e3b47e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -56,7 +56,7 @@ "eslint": "8.57.0", "fastify": "4.28.1", "pm2": "5.4.1", - "redis": "4.6.14", + "redis": "4.6.15", "rimraf": "5.0.7", "tsx": "4.16.0", "typescript": "5.5.3" @@ -3778,9 +3778,9 @@ } }, "node_modules/@redis/client": { - "version": "1.5.16", - "resolved": "https://registry.npmjs.org/@redis/client/-/client-1.5.16.tgz", - "integrity": "sha512-X1a3xQ5kEMvTib5fBrHKh6Y+pXbeKXqziYuxOUo1ojQNECg4M5Etd1qqyhMap+lFUOAh8S7UYevgJHOm4A+NOg==", + "version": "1.5.17", + "resolved": "https://registry.npmjs.org/@redis/client/-/client-1.5.17.tgz", + "integrity": "sha512-IPvU9A31qRCZ7lds/x+ksuK/UMndd0EASveAvCvEtFFKIZjZ+m/a4a0L7S28KEWoR5ka8526hlSghDo4Hrc2Hg==", "dependencies": { "cluster-key-slot": "1.1.2", "generic-pool": "3.9.0", @@ -13953,15 +13953,15 @@ } }, "node_modules/redis": { - "version": "4.6.14", - "resolved": "https://registry.npmjs.org/redis/-/redis-4.6.14.tgz", - "integrity": "sha512-GrNg/e33HtsQwNXL7kJT+iNFPSwE1IPmd7wzV3j4f2z0EYxZfZE7FVTmUysgAtqQQtg5NXF5SNLR9OdO/UHOfw==", + "version": "4.6.15", + "resolved": "https://registry.npmjs.org/redis/-/redis-4.6.15.tgz", + "integrity": "sha512-2NtuOpMW3tnYzBw6S8mbXSX7RPzvVFCA2wFJq9oErushO2UeBkxObk+uvo7gv7n0rhWeOj/IzrHO8TjcFlRSOg==", "workspaces": [ "./packages/*" ], "dependencies": { "@redis/bloom": "1.2.0", - "@redis/client": "1.5.16", + "@redis/client": "1.5.17", "@redis/graph": "1.1.1", "@redis/json": "1.0.6", "@redis/search": "1.1.6", @@ -17050,7 +17050,7 @@ }, "packages/cache-handler": { "name": "@neshca/cache-handler", - "version": "1.3.2", + "version": "1.4.0", "license": "MIT", "dependencies": { "lru-cache": "10.3.0" From ca463291877c160519e2e7af54787d8a700fb1fc Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 3 Jul 2024 13:15:21 +0300 Subject: [PATCH 291/458] Bump @playwright/test from 1.45.0 to 1.45.1 (#622) Bumps [@playwright/test](https://github.com/microsoft/playwright) from 1.45.0 to 1.45.1. - [Release notes](https://github.com/microsoft/playwright/releases) - [Commits](https://github.com/microsoft/playwright/compare/v1.45.0...v1.45.1) --- updated-dependencies: - dependency-name: "@playwright/test" dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- package-lock.json | 24 ++++++++++++------------ 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index e1923779..25ebc73c 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -24,7 +24,7 @@ "devDependencies": { "@neshca/cache-handler": "*", "@next/eslint-plugin-next": "14.3.0-canary.44", - "@playwright/test": "1.45.0", + "@playwright/test": "1.45.1", "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", diff --git a/package-lock.json b/package-lock.json index b9e3b47e..2e4eae72 100644 --- a/package-lock.json +++ b/package-lock.json @@ -44,7 +44,7 @@ "devDependencies": { "@neshca/cache-handler": "*", "@next/eslint-plugin-next": "14.3.0-canary.44", - "@playwright/test": "1.45.0", + "@playwright/test": "1.45.1", "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", @@ -3512,12 +3512,12 @@ } }, "node_modules/@playwright/test": { - "version": "1.45.0", - "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.45.0.tgz", - "integrity": "sha512-TVYsfMlGAaxeUllNkywbwek67Ncf8FRGn8ZlRdO291OL3NjG9oMbfVhyP82HQF0CZLMrYsvesqoUekxdWuF9Qw==", + "version": "1.45.1", + "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.45.1.tgz", + "integrity": "sha512-Wo1bWTzQvGA7LyKGIZc8nFSTFf2TkthGIFBR+QVNilvwouGzFd4PYukZe3rvf5PSqjHi1+1NyKSDZKcQWETzaA==", "devOptional": true, "dependencies": { - "playwright": "1.45.0" + "playwright": "1.45.1" }, "bin": { "playwright": "cli.js" @@ -13199,12 +13199,12 @@ } }, "node_modules/playwright": { - "version": "1.45.0", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.45.0.tgz", - "integrity": "sha512-4z3ac3plDfYzGB6r0Q3LF8POPR20Z8D0aXcxbJvmfMgSSq1hkcgvFRXJk9rUq5H/MJ0Ktal869hhOdI/zUTeLA==", + "version": "1.45.1", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.45.1.tgz", + "integrity": "sha512-Hjrgae4kpSQBr98nhCj3IScxVeVUixqj+5oyif8TdIn2opTCPEzqAqNMeK42i3cWDCVu9MI+ZsGWw+gVR4ISBg==", "devOptional": true, "dependencies": { - "playwright-core": "1.45.0" + "playwright-core": "1.45.1" }, "bin": { "playwright": "cli.js" @@ -13217,9 +13217,9 @@ } }, "node_modules/playwright-core": { - "version": "1.45.0", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.45.0.tgz", - "integrity": "sha512-lZmHlFQ0VYSpAs43dRq1/nJ9G/6SiTI7VPqidld9TDefL9tX87bTKExWZZUF5PeRyqtXqd8fQi2qmfIedkwsNQ==", + "version": "1.45.1", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.45.1.tgz", + "integrity": "sha512-LF4CUUtrUu2TCpDw4mcrAIuYrEjVDfT1cHbJMfwnE2+1b8PZcFzPNgvZCvq2JfQ4aTjRCCHw5EJ2tmr2NSzdPg==", "devOptional": true, "bin": { "playwright-core": "cli.js" From bfbcdddbb5248ddacf73dec1a1dc4a82ad90a17e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 4 Jul 2024 12:32:38 +0300 Subject: [PATCH 292/458] Bump tsx from 4.16.0 to 4.16.2 (#624) Bumps [tsx](https://github.com/privatenumber/tsx) from 4.16.0 to 4.16.2. - [Release notes](https://github.com/privatenumber/tsx/releases) - [Changelog](https://github.com/privatenumber/tsx/blob/master/release.config.cjs) - [Commits](https://github.com/privatenumber/tsx/compare/v4.16.0...v4.16.2) --- updated-dependencies: - dependency-name: tsx dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- internal/backend/package.json | 2 +- package-lock.json | 16 ++++++++-------- packages/cache-handler/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 6 files changed, 13 insertions(+), 13 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 25ebc73c..1a8bebdd 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -38,7 +38,7 @@ "pm2": "5.4.1", "redis": "4.6.15", "rimraf": "5.0.7", - "tsx": "4.16.0", + "tsx": "4.16.2", "typescript": "5.5.3" } } diff --git a/internal/backend/package.json b/internal/backend/package.json index fa7b6bb4..23b7c42e 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -18,7 +18,7 @@ "@types/node": "20.14.9", "pino-pretty": "11.2.1", "rimraf": "5.0.7", - "tsx": "4.16.0", + "tsx": "4.16.2", "typescript": "5.5.3" } } diff --git a/package-lock.json b/package-lock.json index 2e4eae72..5665131c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -58,7 +58,7 @@ "pm2": "5.4.1", "redis": "4.6.15", "rimraf": "5.0.7", - "tsx": "4.16.0", + "tsx": "4.16.2", "typescript": "5.5.3" } }, @@ -455,7 +455,7 @@ "@types/node": "20.14.9", "pino-pretty": "11.2.1", "rimraf": "5.0.7", - "tsx": "4.16.0", + "tsx": "4.16.2", "typescript": "5.5.3" } }, @@ -15924,9 +15924,9 @@ "dev": true }, "node_modules/tsx": { - "version": "4.16.0", - "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.16.0.tgz", - "integrity": "sha512-MPgN+CuY+4iKxGoJNPv+1pyo5YWZAQ5XfsyobUG+zoKG7IkvCPLZDEyoIb8yLS2FcWci1nlxAqmvPlFWD5AFiQ==", + "version": "4.16.2", + "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.16.2.tgz", + "integrity": "sha512-C1uWweJDgdtX2x600HjaFaucXTilT7tgUZHbOE4+ypskZ1OP8CRCSDkCxG6Vya9EwaFIVagWwpaVAn5wzypaqQ==", "dev": true, "dependencies": { "esbuild": "~0.21.5", @@ -17062,7 +17062,7 @@ "@types/node": "20.14.9", "rimraf": "5.0.7", "tsup": "8.1.0", - "tsx": "4.16.0", + "tsx": "4.16.2", "typescript": "5.5.3" }, "peerDependencies": { @@ -17097,7 +17097,7 @@ "@types/node": "20.14.9", "rimraf": "5.0.7", "tsup": "8.1.0", - "tsx": "4.16.0", + "tsx": "4.16.2", "typescript": "5.5.3" } }, @@ -17119,7 +17119,7 @@ "@types/node": "20.14.9", "rimraf": "5.0.7", "tsup": "8.1.0", - "tsx": "4.16.0", + "tsx": "4.16.2", "typescript": "5.5.3" } } diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index a83d5b7b..67745cb1 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -82,7 +82,7 @@ "@types/node": "20.14.9", "rimraf": "5.0.7", "tsup": "8.1.0", - "tsx": "4.16.0", + "tsx": "4.16.2", "typescript": "5.5.3" }, "peerDependencies": { diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 0d4d1451..d18616ed 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -31,7 +31,7 @@ "@types/node": "20.14.9", "rimraf": "5.0.7", "tsup": "8.1.0", - "tsx": "4.16.0", + "tsx": "4.16.2", "typescript": "5.5.3" } } diff --git a/packages/server/package.json b/packages/server/package.json index 233d360b..005bdc19 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -35,7 +35,7 @@ "@types/node": "20.14.9", "rimraf": "5.0.7", "tsup": "8.1.0", - "tsx": "4.16.0", + "tsx": "4.16.2", "typescript": "5.5.3" }, "distTags": [ From b072f47bd5196fab8083207fa79f16b39ce920ef Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 6 Jul 2024 11:24:52 +0300 Subject: [PATCH 293/458] Bump @types/node from 20.14.9 to 20.14.10 in the definitely-typed group (#625) Bumps the definitely-typed group with 1 update: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node). Updates `@types/node` from 20.14.9 to 20.14.10 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) --- updated-dependencies: - dependency-name: "@types/node" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- internal/backend/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 24 ++++++++++----------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 10 files changed, 21 insertions(+), 21 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 1a8bebdd..0e306d02 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -28,7 +28,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "20.14.9", + "@types/node": "20.14.10", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "axios": "1.7.2", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index dcdf38c6..7523bf5f 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -22,7 +22,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "20.14.9", + "@types/node": "20.14.10", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "eslint": "8.57.0", diff --git a/internal/backend/package.json b/internal/backend/package.json index 23b7c42e..626008e1 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.9", + "@types/node": "20.14.10", "pino-pretty": "11.2.1", "rimraf": "5.0.7", "tsx": "4.16.2", diff --git a/internal/next-common/package.json b/internal/next-common/package.json index 511e0253..5870c643 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.9", + "@types/node": "20.14.10", "rimraf": "5.0.7", "typescript": "5.5.3" } diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index 9bc823a4..ff0357e7 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -16,7 +16,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "20.14.9", + "@types/node": "20.14.10", "rimraf": "5.0.7", "typescript": "5.5.3" } diff --git a/package-lock.json b/package-lock.json index 5665131c..9fd4ff68 100644 --- a/package-lock.json +++ b/package-lock.json @@ -48,7 +48,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "20.14.9", + "@types/node": "20.14.10", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "axios": "1.7.2", @@ -126,7 +126,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "20.14.9", + "@types/node": "20.14.10", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "eslint": "8.57.0", @@ -452,7 +452,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.9", + "@types/node": "20.14.10", "pino-pretty": "11.2.1", "rimraf": "5.0.7", "tsx": "4.16.2", @@ -591,7 +591,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.9", + "@types/node": "20.14.10", "rimraf": "5.0.7", "typescript": "5.5.3" } @@ -804,7 +804,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "20.14.9", + "@types/node": "20.14.10", "rimraf": "5.0.7", "typescript": "5.5.3" } @@ -4219,9 +4219,9 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "20.14.9", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.9.tgz", - "integrity": "sha512-06OCtnTXtWOZBJlRApleWndH4JsRVs1pDCc8dLSQp+7PpUpX3ePdHyeNSFTeSe7FtKyQkrlPvHwJOW3SLd8Oyg==", + "version": "20.14.10", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.10.tgz", + "integrity": "sha512-MdiXf+nDuMvY0gJKxyfZ7/6UFsETO7mGKF54MVD/ekJS6HdFtpZFBgrh6Pseu64XTb2MLyFPlbW6hj8HYRQNOQ==", "dependencies": { "undici-types": "~5.26.4" } @@ -17059,7 +17059,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.14.9", + "@types/node": "20.14.10", "rimraf": "5.0.7", "tsup": "8.1.0", "tsx": "4.16.2", @@ -17078,7 +17078,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.9", + "@types/node": "20.14.10", "rimraf": "5.0.7", "tsup": "8.1.0", "typescript": "5.5.3" @@ -17094,7 +17094,7 @@ "license": "MIT", "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.9", + "@types/node": "20.14.10", "rimraf": "5.0.7", "tsup": "8.1.0", "tsx": "4.16.2", @@ -17116,7 +17116,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.14.9", + "@types/node": "20.14.10", "rimraf": "5.0.7", "tsup": "8.1.0", "tsx": "4.16.2", diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 67745cb1..8403e94a 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -79,7 +79,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.14.9", + "@types/node": "20.14.10", "rimraf": "5.0.7", "tsup": "8.1.0", "tsx": "4.16.2", diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index 5b41bc64..d0f839a7 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -25,7 +25,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.9", + "@types/node": "20.14.10", "rimraf": "5.0.7", "tsup": "8.1.0", "typescript": "5.5.3" diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index d18616ed..11339853 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -28,7 +28,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.9", + "@types/node": "20.14.10", "rimraf": "5.0.7", "tsup": "8.1.0", "tsx": "4.16.2", diff --git a/packages/server/package.json b/packages/server/package.json index 005bdc19..859f9027 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -32,7 +32,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.14.9", + "@types/node": "20.14.10", "rimraf": "5.0.7", "tsup": "8.1.0", "tsx": "4.16.2", From 168558502e4fedef983b3f7ad0affe7895c9ad5d Mon Sep 17 00:00:00 2001 From: Tolga Gerekci <32226029+galtonova@users.noreply.github.com> Date: Thu, 18 Jul 2024 16:24:01 +0300 Subject: [PATCH 294/458] Update the `revalidateTag` method to use `ft.searchNoContent` function in the `redis-stack` Handler (#637) Fetching the whole document when using `ft.search` function causes high memory usage and sometimes causes OOM crashes. Now using `ft.searchNoContent`. Fixes #636 --- packages/cache-handler/src/handlers/redis-stack.ts | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/cache-handler/src/handlers/redis-stack.ts b/packages/cache-handler/src/handlers/redis-stack.ts index e983a5c8..240399a5 100644 --- a/packages/cache-handler/src/handlers/redis-stack.ts +++ b/packages/cache-handler/src/handlers/redis-stack.ts @@ -146,7 +146,7 @@ export default async function createHandler({ const keysToDelete: string[] = []; while (true) { - const { documents } = await client.ft.search( + const { documents: documentIds } = await client.ft.searchNoContent( getTimeoutRedisCommandOptions(timeoutMs), 'idx:tags', `@tag:(${sanitizedTag})`, @@ -156,11 +156,11 @@ export default async function createHandler({ }, ); - for (const { id } of documents) { + for (const id of documentIds) { keysToDelete.push(id); } - if (documents.length < revalidateTagQuerySize) { + if (documentIds.length < revalidateTagQuerySize) { break; } From d9349862bdcbf20d9e015510248c705320f9341c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 18 Jul 2024 16:33:42 +0300 Subject: [PATCH 295/458] Bump tsup from 8.1.0 to 8.1.2 (#646) Bumps [tsup](https://github.com/egoist/tsup) from 8.1.0 to 8.1.2. - [Release notes](https://github.com/egoist/tsup/releases) - [Changelog](https://github.com/egoist/tsup/blob/dev/.releaserc.json) - [Commits](https://github.com/egoist/tsup/compare/v8.1.0...v8.1.2) --- updated-dependencies: - dependency-name: tsup dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 642 ++++++++++++++++---- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 5 files changed, 539 insertions(+), 111 deletions(-) diff --git a/package-lock.json b/package-lock.json index 9fd4ff68..ac0db9c2 100644 --- a/package-lock.json +++ b/package-lock.json @@ -2055,6 +2055,22 @@ "node": ">=12" } }, + "node_modules/@esbuild/openbsd-arm64": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.23.0.tgz", + "integrity": "sha512-suXjq53gERueVWu0OKxzWqk7NxiUWSUlrxoZK7usiF50C6ipColGR5qie2496iKGYNLhDZkPxBI3erbnYkU0rQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, "node_modules/@esbuild/openbsd-x64": { "version": "0.21.5", "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.21.5.tgz", @@ -3835,9 +3851,9 @@ "link": true }, "node_modules/@rollup/rollup-android-arm-eabi": { - "version": "4.18.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.18.0.tgz", - "integrity": "sha512-Tya6xypR10giZV1XzxmH5wr25VcZSncG0pZIjfePT0OVBvqNEurzValetGNarVrGiq66EBVAFn15iYX4w6FKgQ==", + "version": "4.18.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.18.1.tgz", + "integrity": "sha512-lncuC4aHicncmbORnx+dUaAgzee9cm/PbIqgWz1PpXuwc+sa1Ct83tnqUDy/GFKleLiN7ZIeytM6KJ4cAn1SxA==", "cpu": [ "arm" ], @@ -3848,9 +3864,9 @@ ] }, "node_modules/@rollup/rollup-android-arm64": { - "version": "4.18.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.18.0.tgz", - "integrity": "sha512-avCea0RAP03lTsDhEyfy+hpfr85KfyTctMADqHVhLAF3MlIkq83CP8UfAHUssgXTYd+6er6PaAhx/QGv4L1EiA==", + "version": "4.18.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.18.1.tgz", + "integrity": "sha512-F/tkdw0WSs4ojqz5Ovrw5r9odqzFjb5LIgHdHZG65dFI1lWTWRVy32KDJLKRISHgJvqUeUhdIvy43fX41znyDg==", "cpu": [ "arm64" ], @@ -3861,9 +3877,9 @@ ] }, "node_modules/@rollup/rollup-darwin-arm64": { - "version": "4.18.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.18.0.tgz", - "integrity": "sha512-IWfdwU7KDSm07Ty0PuA/W2JYoZ4iTj3TUQjkVsO/6U+4I1jN5lcR71ZEvRh52sDOERdnNhhHU57UITXz5jC1/w==", + "version": "4.18.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.18.1.tgz", + "integrity": "sha512-vk+ma8iC1ebje/ahpxpnrfVQJibTMyHdWpOGZ3JpQ7Mgn/3QNHmPq7YwjZbIE7km73dH5M1e6MRRsnEBW7v5CQ==", "cpu": [ "arm64" ], @@ -3874,9 +3890,9 @@ ] }, "node_modules/@rollup/rollup-darwin-x64": { - "version": "4.18.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.18.0.tgz", - "integrity": "sha512-n2LMsUz7Ynu7DoQrSQkBf8iNrjOGyPLrdSg802vk6XT3FtsgX6JbE8IHRvposskFm9SNxzkLYGSq9QdpLYpRNA==", + "version": "4.18.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.18.1.tgz", + "integrity": "sha512-IgpzXKauRe1Tafcej9STjSSuG0Ghu/xGYH+qG6JwsAUxXrnkvNHcq/NL6nz1+jzvWAnQkuAJ4uIwGB48K9OCGA==", "cpu": [ "x64" ], @@ -3887,9 +3903,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm-gnueabihf": { - "version": "4.18.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.18.0.tgz", - "integrity": "sha512-C/zbRYRXFjWvz9Z4haRxcTdnkPt1BtCkz+7RtBSuNmKzMzp3ZxdM28Mpccn6pt28/UWUCTXa+b0Mx1k3g6NOMA==", + "version": "4.18.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.18.1.tgz", + "integrity": "sha512-P9bSiAUnSSM7EmyRK+e5wgpqai86QOSv8BwvkGjLwYuOpaeomiZWifEos517CwbG+aZl1T4clSE1YqqH2JRs+g==", "cpu": [ "arm" ], @@ -3900,9 +3916,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm-musleabihf": { - "version": "4.18.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.18.0.tgz", - "integrity": "sha512-l3m9ewPgjQSXrUMHg93vt0hYCGnrMOcUpTz6FLtbwljo2HluS4zTXFy2571YQbisTnfTKPZ01u/ukJdQTLGh9A==", + "version": "4.18.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.18.1.tgz", + "integrity": "sha512-5RnjpACoxtS+aWOI1dURKno11d7krfpGDEn19jI8BuWmSBbUC4ytIADfROM1FZrFhQPSoP+KEa3NlEScznBTyQ==", "cpu": [ "arm" ], @@ -3913,9 +3929,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-gnu": { - "version": "4.18.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.18.0.tgz", - "integrity": "sha512-rJ5D47d8WD7J+7STKdCUAgmQk49xuFrRi9pZkWoRD1UeSMakbcepWXPF8ycChBoAqs1pb2wzvbY6Q33WmN2ftw==", + "version": "4.18.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.18.1.tgz", + "integrity": "sha512-8mwmGD668m8WaGbthrEYZ9CBmPug2QPGWxhJxh/vCgBjro5o96gL04WLlg5BA233OCWLqERy4YUzX3bJGXaJgQ==", "cpu": [ "arm64" ], @@ -3926,9 +3942,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-musl": { - "version": "4.18.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.18.0.tgz", - "integrity": "sha512-be6Yx37b24ZwxQ+wOQXXLZqpq4jTckJhtGlWGZs68TgdKXJgw54lUUoFYrg6Zs/kjzAQwEwYbp8JxZVzZLRepQ==", + "version": "4.18.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.18.1.tgz", + "integrity": "sha512-dJX9u4r4bqInMGOAQoGYdwDP8lQiisWb9et+T84l2WXk41yEej8v2iGKodmdKimT8cTAYt0jFb+UEBxnPkbXEQ==", "cpu": [ "arm64" ], @@ -3939,9 +3955,9 @@ ] }, "node_modules/@rollup/rollup-linux-powerpc64le-gnu": { - "version": "4.18.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.18.0.tgz", - "integrity": "sha512-hNVMQK+qrA9Todu9+wqrXOHxFiD5YmdEi3paj6vP02Kx1hjd2LLYR2eaN7DsEshg09+9uzWi2W18MJDlG0cxJA==", + "version": "4.18.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.18.1.tgz", + "integrity": "sha512-V72cXdTl4EI0x6FNmho4D502sy7ed+LuVW6Ym8aI6DRQ9hQZdp5sj0a2usYOlqvFBNKQnLQGwmYnujo2HvjCxQ==", "cpu": [ "ppc64" ], @@ -3952,9 +3968,9 @@ ] }, "node_modules/@rollup/rollup-linux-riscv64-gnu": { - "version": "4.18.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.18.0.tgz", - "integrity": "sha512-ROCM7i+m1NfdrsmvwSzoxp9HFtmKGHEqu5NNDiZWQtXLA8S5HBCkVvKAxJ8U+CVctHwV2Gb5VUaK7UAkzhDjlg==", + "version": "4.18.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.18.1.tgz", + "integrity": "sha512-f+pJih7sxoKmbjghrM2RkWo2WHUW8UbfxIQiWo5yeCaCM0TveMEuAzKJte4QskBp1TIinpnRcxkquY+4WuY/tg==", "cpu": [ "riscv64" ], @@ -3965,9 +3981,9 @@ ] }, "node_modules/@rollup/rollup-linux-s390x-gnu": { - "version": "4.18.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.18.0.tgz", - "integrity": "sha512-0UyyRHyDN42QL+NbqevXIIUnKA47A+45WyasO+y2bGJ1mhQrfrtXUpTxCOrfxCR4esV3/RLYyucGVPiUsO8xjg==", + "version": "4.18.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.18.1.tgz", + "integrity": "sha512-qb1hMMT3Fr/Qz1OKovCuUM11MUNLUuHeBC2DPPAWUYYUAOFWaxInaTwTQmc7Fl5La7DShTEpmYwgdt2hG+4TEg==", "cpu": [ "s390x" ], @@ -3978,9 +3994,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-gnu": { - "version": "4.18.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.18.0.tgz", - "integrity": "sha512-xuglR2rBVHA5UsI8h8UbX4VJ470PtGCf5Vpswh7p2ukaqBGFTnsfzxUBetoWBWymHMxbIG0Cmx7Y9qDZzr648w==", + "version": "4.18.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.18.1.tgz", + "integrity": "sha512-7O5u/p6oKUFYjRbZkL2FLbwsyoJAjyeXHCU3O4ndvzg2OFO2GinFPSJFGbiwFDaCFc+k7gs9CF243PwdPQFh5g==", "cpu": [ "x64" ], @@ -3991,9 +4007,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-musl": { - "version": "4.18.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.18.0.tgz", - "integrity": "sha512-LKaqQL9osY/ir2geuLVvRRs+utWUNilzdE90TpyoX0eNqPzWjRm14oMEE+YLve4k/NAqCdPkGYDaDF5Sw+xBfg==", + "version": "4.18.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.18.1.tgz", + "integrity": "sha512-pDLkYITdYrH/9Cv/Vlj8HppDuLMDUBmgsM0+N+xLtFd18aXgM9Nyqupb/Uw+HeidhfYg2lD6CXvz6CjoVOaKjQ==", "cpu": [ "x64" ], @@ -4004,9 +4020,9 @@ ] }, "node_modules/@rollup/rollup-win32-arm64-msvc": { - "version": "4.18.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.18.0.tgz", - "integrity": "sha512-7J6TkZQFGo9qBKH0pk2cEVSRhJbL6MtfWxth7Y5YmZs57Pi+4x6c2dStAUvaQkHQLnEQv1jzBUW43GvZW8OFqA==", + "version": "4.18.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.18.1.tgz", + "integrity": "sha512-W2ZNI323O/8pJdBGil1oCauuCzmVd9lDmWBBqxYZcOqWD6aWqJtVBQ1dFrF4dYpZPks6F+xCZHfzG5hYlSHZ6g==", "cpu": [ "arm64" ], @@ -4017,9 +4033,9 @@ ] }, "node_modules/@rollup/rollup-win32-ia32-msvc": { - "version": "4.18.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.18.0.tgz", - "integrity": "sha512-Txjh+IxBPbkUB9+SXZMpv+b/vnTEtFyfWZgJ6iyCmt2tdx0OF5WhFowLmnh8ENGNpfUlUZkdI//4IEmhwPieNg==", + "version": "4.18.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.18.1.tgz", + "integrity": "sha512-ELfEX1/+eGZYMaCIbK4jqLxO1gyTSOIlZr6pbC4SRYFaSIDVKOnZNMdoZ+ON0mrFDp4+H5MhwNC1H/AhE3zQLg==", "cpu": [ "ia32" ], @@ -4030,9 +4046,9 @@ ] }, "node_modules/@rollup/rollup-win32-x64-msvc": { - "version": "4.18.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.18.0.tgz", - "integrity": "sha512-UOo5FdvOL0+eIVTgS4tIdbW+TtnBLWg1YBCcU2KWM7nuNwRz9bksDX1bekJJCpu25N1DVWaCwnT39dVQxzqS8g==", + "version": "4.18.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.18.1.tgz", + "integrity": "sha512-yjk2MAkQmoaPYCSu35RLJ62+dz358nE83VfTePJRp8CG7aMg25mEJYpXFiD+NcevhX8LxD5OP5tktPXnXN7GDw==", "cpu": [ "x64" ], @@ -5275,9 +5291,9 @@ } }, "node_modules/bundle-require": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/bundle-require/-/bundle-require-4.2.1.tgz", - "integrity": "sha512-7Q/6vkyYAwOmQNRw75x+4yRtZCZJXUDmHHlFdkiV0wgv/reNjtJwpu1jPJ0w2kbEpIM0uoKI3S4/f39dU7AjSA==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/bundle-require/-/bundle-require-5.0.0.tgz", + "integrity": "sha512-GuziW3fSSmopcx4KRymQEJVbZUfqlCqcq7dvs6TYwKRZiegK/2buMxQTPs6MGlNv50wms1699qYO54R8XfRX4w==", "dev": true, "dependencies": { "load-tsconfig": "^0.2.3" @@ -5286,7 +5302,7 @@ "node": "^12.20.0 || ^14.13.1 || >=16.0.0" }, "peerDependencies": { - "esbuild": ">=0.17" + "esbuild": ">=0.18" } }, "node_modules/busboy": { @@ -5723,6 +5739,15 @@ "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", "dev": true }, + "node_modules/consola": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/consola/-/consola-3.2.3.tgz", + "integrity": "sha512-I5qxpzLv+sJhTVEoLYNcTW+bThDCPsit0vLNKShZx6rLtpilNpmmeTPaeqJb9ZE9dV3DGaeby6Vuhrw38WjeyQ==", + "dev": true, + "engines": { + "node": "^14.18.0 || >=16.10.0" + } + }, "node_modules/convert-source-map": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", @@ -13520,9 +13545,9 @@ } }, "node_modules/postcss-load-config": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-4.0.2.tgz", - "integrity": "sha512-bSVhyJGL00wMVoPUzAVAnbEoWyqRxkjv64tUl427SKnPrENtq6hJwUojroMz2VB+Q1edmi4IfrAPpami5VVgMQ==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-6.0.1.tgz", + "integrity": "sha512-oPtTM4oerL+UXmx+93ytZVN82RrlY/wPUV8IeDxFrzIjXOLF1pN+EmKPLbubvKHT2HC20xXsCAH2Z+CKV6Oz/g==", "dev": true, "funding": [ { @@ -13535,21 +13560,28 @@ } ], "dependencies": { - "lilconfig": "^3.0.0", - "yaml": "^2.3.4" + "lilconfig": "^3.1.1" }, "engines": { - "node": ">= 14" + "node": ">= 18" }, "peerDependencies": { + "jiti": ">=1.21.0", "postcss": ">=8.0.9", - "ts-node": ">=9.0.0" + "tsx": "^4.8.1", + "yaml": "^2.4.2" }, "peerDependenciesMeta": { + "jiti": { + "optional": true + }, "postcss": { "optional": true }, - "ts-node": { + "tsx": { + "optional": true + }, + "yaml": { "optional": true } } @@ -14434,9 +14466,9 @@ "integrity": "sha512-IXgzBWvWQwE6PrDI05OvmXUIruQTcoMDzRsOd5CDvHCVLcLHMTSYvOK5Cm46kWqlV3yAbuSpBZdJ5oP5OUoStg==" }, "node_modules/rollup": { - "version": "4.18.0", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.18.0.tgz", - "integrity": "sha512-QmJz14PX3rzbJCN1SG4Xe/bAAX2a6NpCP8ab2vfu2GiUr8AQcr2nCV/oEO3yneFarB67zk8ShlIyWb2LGTb3Sg==", + "version": "4.18.1", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.18.1.tgz", + "integrity": "sha512-Elx2UT8lzxxOXMpy5HWQGZqkrQOtrVDDa/bm9l10+U4rQnVzbL/LgZ4NOM1MPIDyHk69W4InuYDF5dzRh4Kw1A==", "dev": true, "dependencies": { "@types/estree": "1.0.5" @@ -14449,22 +14481,22 @@ "npm": ">=8.0.0" }, "optionalDependencies": { - "@rollup/rollup-android-arm-eabi": "4.18.0", - "@rollup/rollup-android-arm64": "4.18.0", - "@rollup/rollup-darwin-arm64": "4.18.0", - "@rollup/rollup-darwin-x64": "4.18.0", - "@rollup/rollup-linux-arm-gnueabihf": "4.18.0", - "@rollup/rollup-linux-arm-musleabihf": "4.18.0", - "@rollup/rollup-linux-arm64-gnu": "4.18.0", - "@rollup/rollup-linux-arm64-musl": "4.18.0", - "@rollup/rollup-linux-powerpc64le-gnu": "4.18.0", - "@rollup/rollup-linux-riscv64-gnu": "4.18.0", - "@rollup/rollup-linux-s390x-gnu": "4.18.0", - "@rollup/rollup-linux-x64-gnu": "4.18.0", - "@rollup/rollup-linux-x64-musl": "4.18.0", - "@rollup/rollup-win32-arm64-msvc": "4.18.0", - "@rollup/rollup-win32-ia32-msvc": "4.18.0", - "@rollup/rollup-win32-x64-msvc": "4.18.0", + "@rollup/rollup-android-arm-eabi": "4.18.1", + "@rollup/rollup-android-arm64": "4.18.1", + "@rollup/rollup-darwin-arm64": "4.18.1", + "@rollup/rollup-darwin-x64": "4.18.1", + "@rollup/rollup-linux-arm-gnueabihf": "4.18.1", + "@rollup/rollup-linux-arm-musleabihf": "4.18.1", + "@rollup/rollup-linux-arm64-gnu": "4.18.1", + "@rollup/rollup-linux-arm64-musl": "4.18.1", + "@rollup/rollup-linux-powerpc64le-gnu": "4.18.1", + "@rollup/rollup-linux-riscv64-gnu": "4.18.1", + "@rollup/rollup-linux-s390x-gnu": "4.18.1", + "@rollup/rollup-linux-x64-gnu": "4.18.1", + "@rollup/rollup-linux-x64-musl": "4.18.1", + "@rollup/rollup-win32-arm64-msvc": "4.18.1", + "@rollup/rollup-win32-ia32-msvc": "4.18.1", + "@rollup/rollup-win32-x64-msvc": "4.18.1", "fsevents": "~2.3.2" } }, @@ -15751,24 +15783,25 @@ "integrity": "sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ==" }, "node_modules/tsup": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/tsup/-/tsup-8.1.0.tgz", - "integrity": "sha512-UFdfCAXukax+U6KzeTNO2kAARHcWxmKsnvSPXUcfA1D+kU05XDccCrkffCQpFaWDsZfV0jMyTsxU39VfCp6EOg==", + "version": "8.1.2", + "resolved": "https://registry.npmjs.org/tsup/-/tsup-8.1.2.tgz", + "integrity": "sha512-Gzw/PXSX/z0aYMNmkcI54bKKFVFJQbLne+EqTJZeQ3lNT3QpumjtMU4rl+ZwTTp8oRF3ahMbEAxT2sZPJLFSrg==", "dev": true, "dependencies": { - "bundle-require": "^4.0.0", - "cac": "^6.7.12", - "chokidar": "^3.5.1", - "debug": "^4.3.1", - "esbuild": "^0.21.4", + "bundle-require": "^5.0.0", + "cac": "^6.7.14", + "chokidar": "^3.6.0", + "consola": "^3.2.3", + "debug": "^4.3.5", + "esbuild": "^0.23.0", "execa": "^5.0.0", "globby": "^11.0.3", - "joycon": "^3.0.1", - "postcss-load-config": "^4.0.1", + "joycon": "^3.1.1", + "postcss-load-config": "^6.0.1", "resolve-from": "^5.0.0", - "rollup": "^4.0.2", + "rollup": "^4.18.1", "source-map": "0.8.0-beta.0", - "sucrase": "^3.20.3", + "sucrase": "^3.35.0", "tree-kill": "^1.2.2" }, "bin": { @@ -15799,6 +15832,413 @@ } } }, + "node_modules/tsup/node_modules/@esbuild/aix-ppc64": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.23.0.tgz", + "integrity": "sha512-3sG8Zwa5fMcA9bgqB8AfWPQ+HFke6uD3h1s3RIwUNK8EG7a4buxvuFTs3j1IMs2NXAk9F30C/FF4vxRgQCcmoQ==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsup/node_modules/@esbuild/android-arm": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.23.0.tgz", + "integrity": "sha512-+KuOHTKKyIKgEEqKbGTK8W7mPp+hKinbMBeEnNzjJGyFcWsfrXjSTNluJHCY1RqhxFurdD8uNXQDei7qDlR6+g==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsup/node_modules/@esbuild/android-arm64": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.23.0.tgz", + "integrity": "sha512-EuHFUYkAVfU4qBdyivULuu03FhJO4IJN9PGuABGrFy4vUuzk91P2d+npxHcFdpUnfYKy0PuV+n6bKIpHOB3prQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsup/node_modules/@esbuild/android-x64": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.23.0.tgz", + "integrity": "sha512-WRrmKidLoKDl56LsbBMhzTTBxrsVwTKdNbKDalbEZr0tcsBgCLbEtoNthOW6PX942YiYq8HzEnb4yWQMLQuipQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsup/node_modules/@esbuild/darwin-arm64": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.23.0.tgz", + "integrity": "sha512-YLntie/IdS31H54Ogdn+v50NuoWF5BDkEUFpiOChVa9UnKpftgwzZRrI4J132ETIi+D8n6xh9IviFV3eXdxfow==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsup/node_modules/@esbuild/darwin-x64": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.23.0.tgz", + "integrity": "sha512-IMQ6eme4AfznElesHUPDZ+teuGwoRmVuuixu7sv92ZkdQcPbsNHzutd+rAfaBKo8YK3IrBEi9SLLKWJdEvJniQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsup/node_modules/@esbuild/freebsd-arm64": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.23.0.tgz", + "integrity": "sha512-0muYWCng5vqaxobq6LB3YNtevDFSAZGlgtLoAc81PjUfiFz36n4KMpwhtAd4he8ToSI3TGyuhyx5xmiWNYZFyw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsup/node_modules/@esbuild/freebsd-x64": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.23.0.tgz", + "integrity": "sha512-XKDVu8IsD0/q3foBzsXGt/KjD/yTKBCIwOHE1XwiXmrRwrX6Hbnd5Eqn/WvDekddK21tfszBSrE/WMaZh+1buQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsup/node_modules/@esbuild/linux-arm": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.23.0.tgz", + "integrity": "sha512-SEELSTEtOFu5LPykzA395Mc+54RMg1EUgXP+iw2SJ72+ooMwVsgfuwXo5Fn0wXNgWZsTVHwY2cg4Vi/bOD88qw==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsup/node_modules/@esbuild/linux-arm64": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.23.0.tgz", + "integrity": "sha512-j1t5iG8jE7BhonbsEg5d9qOYcVZv/Rv6tghaXM/Ug9xahM0nX/H2gfu6X6z11QRTMT6+aywOMA8TDkhPo8aCGw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsup/node_modules/@esbuild/linux-ia32": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.23.0.tgz", + "integrity": "sha512-P7O5Tkh2NbgIm2R6x1zGJJsnacDzTFcRWZyTTMgFdVit6E98LTxO+v8LCCLWRvPrjdzXHx9FEOA8oAZPyApWUA==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsup/node_modules/@esbuild/linux-loong64": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.23.0.tgz", + "integrity": "sha512-InQwepswq6urikQiIC/kkx412fqUZudBO4SYKu0N+tGhXRWUqAx+Q+341tFV6QdBifpjYgUndV1hhMq3WeJi7A==", + "cpu": [ + "loong64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsup/node_modules/@esbuild/linux-mips64el": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.23.0.tgz", + "integrity": "sha512-J9rflLtqdYrxHv2FqXE2i1ELgNjT+JFURt/uDMoPQLcjWQA5wDKgQA4t/dTqGa88ZVECKaD0TctwsUfHbVoi4w==", + "cpu": [ + "mips64el" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsup/node_modules/@esbuild/linux-ppc64": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.23.0.tgz", + "integrity": "sha512-cShCXtEOVc5GxU0fM+dsFD10qZ5UpcQ8AM22bYj0u/yaAykWnqXJDpd77ublcX6vdDsWLuweeuSNZk4yUxZwtw==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsup/node_modules/@esbuild/linux-riscv64": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.23.0.tgz", + "integrity": "sha512-HEtaN7Y5UB4tZPeQmgz/UhzoEyYftbMXrBCUjINGjh3uil+rB/QzzpMshz3cNUxqXN7Vr93zzVtpIDL99t9aRw==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsup/node_modules/@esbuild/linux-s390x": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.23.0.tgz", + "integrity": "sha512-WDi3+NVAuyjg/Wxi+o5KPqRbZY0QhI9TjrEEm+8dmpY9Xir8+HE/HNx2JoLckhKbFopW0RdO2D72w8trZOV+Wg==", + "cpu": [ + "s390x" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsup/node_modules/@esbuild/linux-x64": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.23.0.tgz", + "integrity": "sha512-a3pMQhUEJkITgAw6e0bWA+F+vFtCciMjW/LPtoj99MhVt+Mfb6bbL9hu2wmTZgNd994qTAEw+U/r6k3qHWWaOQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsup/node_modules/@esbuild/netbsd-x64": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.23.0.tgz", + "integrity": "sha512-cRK+YDem7lFTs2Q5nEv/HHc4LnrfBCbH5+JHu6wm2eP+d8OZNoSMYgPZJq78vqQ9g+9+nMuIsAO7skzphRXHyw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsup/node_modules/@esbuild/openbsd-x64": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.23.0.tgz", + "integrity": "sha512-6p3nHpby0DM/v15IFKMjAaayFhqnXV52aEmv1whZHX56pdkK+MEaLoQWj+H42ssFarP1PcomVhbsR4pkz09qBg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsup/node_modules/@esbuild/sunos-x64": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.23.0.tgz", + "integrity": "sha512-BFelBGfrBwk6LVrmFzCq1u1dZbG4zy/Kp93w2+y83Q5UGYF1d8sCzeLI9NXjKyujjBBniQa8R8PzLFAUrSM9OA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsup/node_modules/@esbuild/win32-arm64": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.23.0.tgz", + "integrity": "sha512-lY6AC8p4Cnb7xYHuIxQ6iYPe6MfO2CC43XXKo9nBXDb35krYt7KGhQnOkRGar5psxYkircpCqfbNDB4uJbS2jQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsup/node_modules/@esbuild/win32-ia32": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.23.0.tgz", + "integrity": "sha512-7L1bHlOTcO4ByvI7OXVI5pNN6HSu6pUQq9yodga8izeuB1KcT2UkHaH6118QJwopExPn0rMHIseCTx1CRo/uNA==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsup/node_modules/@esbuild/win32-x64": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.23.0.tgz", + "integrity": "sha512-Arm+WgUFLUATuoxCJcahGuk6Yj9Pzxd6l11Zb/2aAuv5kWWvvfhLFo2fni4uSK5vzlUdCGZ/BdV5tH8klj8p8g==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsup/node_modules/esbuild": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.23.0.tgz", + "integrity": "sha512-1lvV17H2bMYda/WaFb2jLPeHU3zml2k4/yagNMG8Q/YtfMjCwEUZa2eXXMgZTVSL5q1n4H7sQ0X6CdJDqqeCFA==", + "dev": true, + "hasInstallScript": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=18" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.23.0", + "@esbuild/android-arm": "0.23.0", + "@esbuild/android-arm64": "0.23.0", + "@esbuild/android-x64": "0.23.0", + "@esbuild/darwin-arm64": "0.23.0", + "@esbuild/darwin-x64": "0.23.0", + "@esbuild/freebsd-arm64": "0.23.0", + "@esbuild/freebsd-x64": "0.23.0", + "@esbuild/linux-arm": "0.23.0", + "@esbuild/linux-arm64": "0.23.0", + "@esbuild/linux-ia32": "0.23.0", + "@esbuild/linux-loong64": "0.23.0", + "@esbuild/linux-mips64el": "0.23.0", + "@esbuild/linux-ppc64": "0.23.0", + "@esbuild/linux-riscv64": "0.23.0", + "@esbuild/linux-s390x": "0.23.0", + "@esbuild/linux-x64": "0.23.0", + "@esbuild/netbsd-x64": "0.23.0", + "@esbuild/openbsd-arm64": "0.23.0", + "@esbuild/openbsd-x64": "0.23.0", + "@esbuild/sunos-x64": "0.23.0", + "@esbuild/win32-arm64": "0.23.0", + "@esbuild/win32-ia32": "0.23.0", + "@esbuild/win32-x64": "0.23.0" + } + }, "node_modules/tsup/node_modules/execa": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", @@ -17008,18 +17448,6 @@ "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" }, - "node_modules/yaml": { - "version": "2.4.5", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.4.5.tgz", - "integrity": "sha512-aBx2bnqDzVOyNKfsysjA2ms5ZlnjSAW2eG3/L5G/CSujfjLJTJsEw1bGw8kCf04KodQWk1pxlGnZ56CRxiawmg==", - "dev": true, - "bin": { - "yaml": "bin.mjs" - }, - "engines": { - "node": ">= 14" - } - }, "node_modules/yocto-queue": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", @@ -17061,7 +17489,7 @@ "@repo/typescript-config": "*", "@types/node": "20.14.10", "rimraf": "5.0.7", - "tsup": "8.1.0", + "tsup": "8.1.2", "tsx": "4.16.2", "typescript": "5.5.3" }, @@ -17080,7 +17508,7 @@ "@repo/typescript-config": "*", "@types/node": "20.14.10", "rimraf": "5.0.7", - "tsup": "8.1.0", + "tsup": "8.1.2", "typescript": "5.5.3" }, "peerDependencies": { @@ -17096,7 +17524,7 @@ "@repo/typescript-config": "*", "@types/node": "20.14.10", "rimraf": "5.0.7", - "tsup": "8.1.0", + "tsup": "8.1.2", "tsx": "4.16.2", "typescript": "5.5.3" } @@ -17118,7 +17546,7 @@ "@repo/typescript-config": "*", "@types/node": "20.14.10", "rimraf": "5.0.7", - "tsup": "8.1.0", + "tsup": "8.1.2", "tsx": "4.16.2", "typescript": "5.5.3" } diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 8403e94a..c9ccd0ca 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -81,7 +81,7 @@ "@repo/typescript-config": "*", "@types/node": "20.14.10", "rimraf": "5.0.7", - "tsup": "8.1.0", + "tsup": "8.1.2", "tsx": "4.16.2", "typescript": "5.5.3" }, diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index d0f839a7..77f3e515 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -27,7 +27,7 @@ "@repo/typescript-config": "*", "@types/node": "20.14.10", "rimraf": "5.0.7", - "tsup": "8.1.0", + "tsup": "8.1.2", "typescript": "5.5.3" }, "peerDependencies": { diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 11339853..dc411904 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -30,7 +30,7 @@ "@repo/typescript-config": "*", "@types/node": "20.14.10", "rimraf": "5.0.7", - "tsup": "8.1.0", + "tsup": "8.1.2", "tsx": "4.16.2", "typescript": "5.5.3" } diff --git a/packages/server/package.json b/packages/server/package.json index 859f9027..77cd6938 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -34,7 +34,7 @@ "@repo/typescript-config": "*", "@types/node": "20.14.10", "rimraf": "5.0.7", - "tsup": "8.1.0", + "tsup": "8.1.2", "tsx": "4.16.2", "typescript": "5.5.3" }, From 6f48417e713d40e7ed433596bb17ade61fd5f1be Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 18 Jul 2024 18:03:49 +0300 Subject: [PATCH 296/458] Bump @playwright/test from 1.45.1 to 1.45.2 (#645) Bumps [@playwright/test](https://github.com/microsoft/playwright) from 1.45.1 to 1.45.2. - [Release notes](https://github.com/microsoft/playwright/releases) - [Commits](https://github.com/microsoft/playwright/compare/v1.45.1...v1.45.2) --- updated-dependencies: - dependency-name: "@playwright/test" dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- package-lock.json | 24 ++++++++++++------------ 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 0e306d02..809fcca1 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -24,7 +24,7 @@ "devDependencies": { "@neshca/cache-handler": "*", "@next/eslint-plugin-next": "14.3.0-canary.44", - "@playwright/test": "1.45.1", + "@playwright/test": "1.45.2", "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", diff --git a/package-lock.json b/package-lock.json index ac0db9c2..76191294 100644 --- a/package-lock.json +++ b/package-lock.json @@ -44,7 +44,7 @@ "devDependencies": { "@neshca/cache-handler": "*", "@next/eslint-plugin-next": "14.3.0-canary.44", - "@playwright/test": "1.45.1", + "@playwright/test": "1.45.2", "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", @@ -3528,12 +3528,12 @@ } }, "node_modules/@playwright/test": { - "version": "1.45.1", - "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.45.1.tgz", - "integrity": "sha512-Wo1bWTzQvGA7LyKGIZc8nFSTFf2TkthGIFBR+QVNilvwouGzFd4PYukZe3rvf5PSqjHi1+1NyKSDZKcQWETzaA==", + "version": "1.45.2", + "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.45.2.tgz", + "integrity": "sha512-JxG9eq92ET75EbVi3s+4sYbcG7q72ECeZNbdBlaMkGcNbiDQ4cAi8U2QP5oKkOx+1gpaiL1LDStmzCaEM1Z6fQ==", "devOptional": true, "dependencies": { - "playwright": "1.45.1" + "playwright": "1.45.2" }, "bin": { "playwright": "cli.js" @@ -13224,12 +13224,12 @@ } }, "node_modules/playwright": { - "version": "1.45.1", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.45.1.tgz", - "integrity": "sha512-Hjrgae4kpSQBr98nhCj3IScxVeVUixqj+5oyif8TdIn2opTCPEzqAqNMeK42i3cWDCVu9MI+ZsGWw+gVR4ISBg==", + "version": "1.45.2", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.45.2.tgz", + "integrity": "sha512-ReywF2t/0teRvNBpfIgh5e4wnrI/8Su8ssdo5XsQKpjxJj+jspm00jSoz9BTg91TT0c9HRjXO7LBNVrgYj9X0g==", "devOptional": true, "dependencies": { - "playwright-core": "1.45.1" + "playwright-core": "1.45.2" }, "bin": { "playwright": "cli.js" @@ -13242,9 +13242,9 @@ } }, "node_modules/playwright-core": { - "version": "1.45.1", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.45.1.tgz", - "integrity": "sha512-LF4CUUtrUu2TCpDw4mcrAIuYrEjVDfT1cHbJMfwnE2+1b8PZcFzPNgvZCvq2JfQ4aTjRCCHw5EJ2tmr2NSzdPg==", + "version": "1.45.2", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.45.2.tgz", + "integrity": "sha512-ha175tAWb0dTK0X4orvBIqi3jGEt701SMxMhyujxNrgd8K0Uy5wMSwwcQHtyB4om7INUkfndx02XnQ2p6dvLDw==", "devOptional": true, "bin": { "playwright-core": "cli.js" From 39c99ba082f4b02ea6d2772930c37fdd95e6d4b2 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 18 Jul 2024 18:45:36 +0300 Subject: [PATCH 297/458] Bump @types/node from 20.14.10 to 20.14.11 in the definitely-typed group (#644) Bumps the definitely-typed group with 1 update: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node). Updates `@types/node` from 20.14.10 to 20.14.11 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) --- updated-dependencies: - dependency-name: "@types/node" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- internal/backend/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 24 ++++++++++----------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 10 files changed, 21 insertions(+), 21 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 809fcca1..5527dd82 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -28,7 +28,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "20.14.10", + "@types/node": "20.14.11", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "axios": "1.7.2", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 7523bf5f..ea58d83e 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -22,7 +22,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "20.14.10", + "@types/node": "20.14.11", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "eslint": "8.57.0", diff --git a/internal/backend/package.json b/internal/backend/package.json index 626008e1..8eb8458b 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.10", + "@types/node": "20.14.11", "pino-pretty": "11.2.1", "rimraf": "5.0.7", "tsx": "4.16.2", diff --git a/internal/next-common/package.json b/internal/next-common/package.json index 5870c643..1a59b2f4 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.10", + "@types/node": "20.14.11", "rimraf": "5.0.7", "typescript": "5.5.3" } diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index ff0357e7..f1bb8461 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -16,7 +16,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "20.14.10", + "@types/node": "20.14.11", "rimraf": "5.0.7", "typescript": "5.5.3" } diff --git a/package-lock.json b/package-lock.json index 76191294..71cbd660 100644 --- a/package-lock.json +++ b/package-lock.json @@ -48,7 +48,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "20.14.10", + "@types/node": "20.14.11", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "axios": "1.7.2", @@ -126,7 +126,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "20.14.10", + "@types/node": "20.14.11", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "eslint": "8.57.0", @@ -452,7 +452,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.10", + "@types/node": "20.14.11", "pino-pretty": "11.2.1", "rimraf": "5.0.7", "tsx": "4.16.2", @@ -591,7 +591,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.10", + "@types/node": "20.14.11", "rimraf": "5.0.7", "typescript": "5.5.3" } @@ -804,7 +804,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "20.14.10", + "@types/node": "20.14.11", "rimraf": "5.0.7", "typescript": "5.5.3" } @@ -4235,9 +4235,9 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "20.14.10", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.10.tgz", - "integrity": "sha512-MdiXf+nDuMvY0gJKxyfZ7/6UFsETO7mGKF54MVD/ekJS6HdFtpZFBgrh6Pseu64XTb2MLyFPlbW6hj8HYRQNOQ==", + "version": "20.14.11", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.11.tgz", + "integrity": "sha512-kprQpL8MMeszbz6ojB5/tU8PLN4kesnN8Gjzw349rDlNgsSzg90lAVj3llK99Dh7JON+t9AuscPPFW6mPbTnSA==", "dependencies": { "undici-types": "~5.26.4" } @@ -17487,7 +17487,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.14.10", + "@types/node": "20.14.11", "rimraf": "5.0.7", "tsup": "8.1.2", "tsx": "4.16.2", @@ -17506,7 +17506,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.10", + "@types/node": "20.14.11", "rimraf": "5.0.7", "tsup": "8.1.2", "typescript": "5.5.3" @@ -17522,7 +17522,7 @@ "license": "MIT", "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.10", + "@types/node": "20.14.11", "rimraf": "5.0.7", "tsup": "8.1.2", "tsx": "4.16.2", @@ -17544,7 +17544,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.14.10", + "@types/node": "20.14.11", "rimraf": "5.0.7", "tsup": "8.1.2", "tsx": "4.16.2", diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index c9ccd0ca..ce50173e 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -79,7 +79,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.14.10", + "@types/node": "20.14.11", "rimraf": "5.0.7", "tsup": "8.1.2", "tsx": "4.16.2", diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index 77f3e515..27986dd8 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -25,7 +25,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.10", + "@types/node": "20.14.11", "rimraf": "5.0.7", "tsup": "8.1.2", "typescript": "5.5.3" diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index dc411904..10b0d2d6 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -28,7 +28,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.10", + "@types/node": "20.14.11", "rimraf": "5.0.7", "tsup": "8.1.2", "tsx": "4.16.2", diff --git a/packages/server/package.json b/packages/server/package.json index 77cd6938..edbaf717 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -32,7 +32,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.14.10", + "@types/node": "20.14.11", "rimraf": "5.0.7", "tsup": "8.1.2", "tsx": "4.16.2", From 7c50b1599138ef09ee7f3de6b02cb612bfea0ab6 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 18 Jul 2024 18:55:07 +0300 Subject: [PATCH 298/458] Bump prettier from 3.3.2 to 3.3.3 (#641) Bumps [prettier](https://github.com/prettier/prettier) from 3.3.2 to 3.3.3. - [Release notes](https://github.com/prettier/prettier/releases) - [Changelog](https://github.com/prettier/prettier/blob/main/CHANGELOG.md) - [Commits](https://github.com/prettier/prettier/compare/3.3.2...3.3.3) --- updated-dependencies: - dependency-name: prettier dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 8 ++++---- package.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package-lock.json b/package-lock.json index 71cbd660..0cf0971b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -25,7 +25,7 @@ "@repo/typescript-config": "*", "diffscribe": "*", "glob": "10.4.2", - "prettier": "3.3.2", + "prettier": "3.3.3", "turbo": "2.0.6" }, "engines": { @@ -13667,9 +13667,9 @@ } }, "node_modules/prettier": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.3.2.tgz", - "integrity": "sha512-rAVeHYMcv8ATV5d508CFdn+8/pHPpXeIid1DdrPwXnaAdH7cqjVbpJaT5eq4yRAFU/lsbwYwSF/n5iNrdJHPQA==", + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.3.3.tgz", + "integrity": "sha512-i2tDNA0O5IrMO757lfrdQZCc2jPNDVntV0m/+4whiDfWaTKfMNgR7Qz0NAeGz/nRqF4m5/6CLzbP4/liHt12Ew==", "dev": true, "bin": { "prettier": "bin/prettier.cjs" diff --git a/package.json b/package.json index 558306c6..419cb3e4 100644 --- a/package.json +++ b/package.json @@ -43,7 +43,7 @@ "@repo/typescript-config": "*", "diffscribe": "*", "glob": "10.4.2", - "prettier": "3.3.2", + "prettier": "3.3.3", "turbo": "2.0.6" }, "packageManager": "npm@10.7.0", From 213b94e4b7c08a2652c3d35455524e3c4d23f4cd Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 18 Jul 2024 19:10:29 +0300 Subject: [PATCH 299/458] Bump pino from 9.2.0 to 9.3.1 in the pino group (#640) Bumps the pino group with 1 update: [pino](https://github.com/pinojs/pino). Updates `pino` from 9.2.0 to 9.3.1 - [Release notes](https://github.com/pinojs/pino/releases) - [Commits](https://github.com/pinojs/pino/compare/v9.2.0...v9.3.1) --- updated-dependencies: - dependency-name: pino dependency-type: direct:production update-type: version-update:semver-minor dependency-group: pino ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- internal/backend/package.json | 2 +- package-lock.json | 10 +++++----- packages/server/package.json | 2 +- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/internal/backend/package.json b/internal/backend/package.json index 8eb8458b..f662de4d 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -11,7 +11,7 @@ }, "dependencies": { "fastify": "4.28.1", - "pino": "9.2.0" + "pino": "9.3.1" }, "devDependencies": { "@repo/typescript-config": "*", diff --git a/package-lock.json b/package-lock.json index 0cf0971b..12322ef0 100644 --- a/package-lock.json +++ b/package-lock.json @@ -448,7 +448,7 @@ "license": "MIT", "dependencies": { "fastify": "4.28.1", - "pino": "9.2.0" + "pino": "9.3.1" }, "devDependencies": { "@repo/typescript-config": "*", @@ -13144,9 +13144,9 @@ } }, "node_modules/pino": { - "version": "9.2.0", - "resolved": "https://registry.npmjs.org/pino/-/pino-9.2.0.tgz", - "integrity": "sha512-g3/hpwfujK5a4oVbaefoJxezLzsDgLcNJeITvC6yrfwYeT9la+edCK42j5QpEQSQCZgTKapXvnQIdgZwvRaZug==", + "version": "9.3.1", + "resolved": "https://registry.npmjs.org/pino/-/pino-9.3.1.tgz", + "integrity": "sha512-afSfrq/hUiW/MFmQcLEwV9Zh8Ry6MrMTOyBU53o/fc0gEl+1OZ/Fks/xQCM2nOC0C/OfDtQMnT2d8c3kpcfSzA==", "dependencies": { "atomic-sleep": "^1.0.0", "fast-redact": "^3.1.1", @@ -17535,7 +17535,7 @@ "license": "MIT", "dependencies": { "fastify": "4.28.1", - "pino": "9.2.0" + "pino": "9.3.1" }, "bin": { "next-cache-server": "dist/server.js" diff --git a/packages/server/package.json b/packages/server/package.json index edbaf717..6756219a 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -26,7 +26,7 @@ }, "dependencies": { "fastify": "4.28.1", - "pino": "9.2.0" + "pino": "9.3.1" }, "devDependencies": { "@neshca/next-common": "*", From 95c05b2d438c955b7f2cab4cf3d21c475fe2abc4 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 18 Jul 2024 19:51:13 +0300 Subject: [PATCH 300/458] Bump pm2 from 5.4.1 to 5.4.2 (#627) Bumps [pm2](https://github.com/Unitech/pm2) from 5.4.1 to 5.4.2. - [Release notes](https://github.com/Unitech/pm2/releases) - [Changelog](https://github.com/Unitech/pm2/blob/master/CHANGELOG.md) - [Commits](https://github.com/Unitech/pm2/compare/v5.4.1...v5.4.2) --- updated-dependencies: - dependency-name: pm2 dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- package-lock.json | 16 ++++++++-------- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 5527dd82..885454e0 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -35,7 +35,7 @@ "dotenv-cli": "7.4.2", "eslint": "8.57.0", "fastify": "4.28.1", - "pm2": "5.4.1", + "pm2": "5.4.2", "redis": "4.6.15", "rimraf": "5.0.7", "tsx": "4.16.2", diff --git a/package-lock.json b/package-lock.json index 12322ef0..a9eede45 100644 --- a/package-lock.json +++ b/package-lock.json @@ -55,7 +55,7 @@ "dotenv-cli": "7.4.2", "eslint": "8.57.0", "fastify": "4.28.1", - "pm2": "5.4.1", + "pm2": "5.4.2", "redis": "4.6.15", "rimraf": "5.0.7", "tsx": "4.16.2", @@ -3664,9 +3664,9 @@ } }, "node_modules/@pm2/io": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/@pm2/io/-/io-6.0.0.tgz", - "integrity": "sha512-sKUEgZoQ5/jRwTyMB1I7u2wXL6dG0j/F/M4ANJ7dJCApfW8nWC0RElMW2siEKvZ79iplIPAaWV27oyBoerEflw==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/@pm2/io/-/io-6.0.1.tgz", + "integrity": "sha512-KiA+shC6sULQAr9mGZ1pg+6KVW9MF8NpG99x26Lf/082/Qy8qsTCtnJy+HQReW1A9Rdf0C/404cz0RZGZro+IA==", "dev": true, "dependencies": { "async": "~2.6.1", @@ -13263,13 +13263,13 @@ } }, "node_modules/pm2": { - "version": "5.4.1", - "resolved": "https://registry.npmjs.org/pm2/-/pm2-5.4.1.tgz", - "integrity": "sha512-y9ndADjy78XfzdbVHISn4WiUTrcvmsO7ieCtM/oC80rwPgBDg+bHkkz1e4eaLOW5a7sJsnDfQjJe4AqxNnIw5Q==", + "version": "5.4.2", + "resolved": "https://registry.npmjs.org/pm2/-/pm2-5.4.2.tgz", + "integrity": "sha512-ynVpBwZampRH3YWLwRepZpQ7X3MvpwLIaqIdFEeBYEhaXbHmEx2KqOdxGV4T54wvKBhH3LixvU1j1bK4/sq7Tw==", "dev": true, "dependencies": { "@pm2/agent": "~2.0.0", - "@pm2/io": "~6.0.0", + "@pm2/io": "~6.0.1", "@pm2/js-api": "~0.8.0", "@pm2/pm2-version-check": "latest", "async": "~3.2.0", From 18cf710e3d4ca60ae0ca1e0e78238b057cf1175e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 18 Jul 2024 20:17:09 +0300 Subject: [PATCH 301/458] Bump glob from 10.4.2 to 11.0.0 (#632) Bumps [glob](https://github.com/isaacs/node-glob) from 10.4.2 to 11.0.0. - [Changelog](https://github.com/isaacs/node-glob/blob/main/changelog.md) - [Commits](https://github.com/isaacs/node-glob/compare/v10.4.2...v11.0.0) --- updated-dependencies: - dependency-name: glob dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 134 +++++++++++++++++++++++++++++++++++++++++----- package.json | 2 +- 2 files changed, 123 insertions(+), 13 deletions(-) diff --git a/package-lock.json b/package-lock.json index a9eede45..6a8b3abe 100644 --- a/package-lock.json +++ b/package-lock.json @@ -24,7 +24,7 @@ "@repo/prettier-config": "*", "@repo/typescript-config": "*", "diffscribe": "*", - "glob": "10.4.2", + "glob": "11.0.0", "prettier": "3.3.3", "turbo": "2.0.6" }, @@ -8921,23 +8921,23 @@ "integrity": "sha512-IaOQ9puYtjrkq7Y0Ygl9KDZnrf/aiUJYUpVf89y8kyaxbRG7Y1SrX/jaumrv81vc61+kiMempujsM3Yw7w5qcw==" }, "node_modules/glob": { - "version": "10.4.2", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.2.tgz", - "integrity": "sha512-GwMlUF6PkPo3Gk21UxkCohOv0PLcIXVtKyLlpEI28R/cO/4eNOdmLk3CMW1wROV/WR/EsZOWAfBbBOqYvs88/w==", + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-11.0.0.tgz", + "integrity": "sha512-9UiX/Bl6J2yaBbxKoEBRm4Cipxgok8kQYcOPEhScPwebu2I0HoQOuYdIO6S3hLuWoZgpDpwQZMzTFxgpkyT76g==", "dev": true, "dependencies": { "foreground-child": "^3.1.0", - "jackspeak": "^3.1.2", - "minimatch": "^9.0.4", + "jackspeak": "^4.0.1", + "minimatch": "^10.0.0", "minipass": "^7.1.2", "package-json-from-dist": "^1.0.0", - "path-scurry": "^1.11.1" + "path-scurry": "^2.0.0" }, "bin": { "glob": "dist/esm/bin.mjs" }, "engines": { - "node": ">=16 || 14 >=14.18" + "node": "20 || >=22" }, "funding": { "url": "https://github.com/sponsors/isaacs" @@ -8956,15 +8956,15 @@ } }, "node_modules/glob/node_modules/jackspeak": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.0.tgz", - "integrity": "sha512-JVYhQnN59LVPFCEcVa2C3CrEKYacvjRfqIQl+h8oi91aLYQVWRYbxjPcv1bUiUy/kLmQaANrYfNMCO3kuEDHfw==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-4.0.1.tgz", + "integrity": "sha512-cub8rahkh0Q/bw1+GxP7aeSe29hHHn2V4m29nnDlvCdlgU+3UGxkZp7Z53jLUdpX3jdTO0nJZUDl3xvbWc2Xog==", "dev": true, "dependencies": { "@isaacs/cliui": "^8.0.2" }, "engines": { - "node": ">=14" + "node": "20 || >=22" }, "funding": { "url": "https://github.com/sponsors/isaacs" @@ -8973,6 +8973,46 @@ "@pkgjs/parseargs": "^0.11.0" } }, + "node_modules/glob/node_modules/lru-cache": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.0.0.tgz", + "integrity": "sha512-Qv32eSV1RSCfhY3fpPE2GNZ8jgM9X7rdAfemLWqTUxwiyIC4jJ6Sy0fZ8H+oLWevO6i4/bizg7c8d8i6bxrzbA==", + "dev": true, + "engines": { + "node": "20 || >=22" + } + }, + "node_modules/glob/node_modules/minimatch": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.0.1.tgz", + "integrity": "sha512-ethXTt3SGGR+95gudmqJ1eNhRO7eGEGIgYA9vnPatK4/etz2MEVDno5GMCibdMTuBMyElzIlgxMna3K94XDIDQ==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": "20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/glob/node_modules/path-scurry": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-2.0.0.tgz", + "integrity": "sha512-ypGJsmGtdXUOeM5u93TyeIEfEhM6s+ljAhrk5vAvSx8uyY/02OvrZnA0YNGUrPXfpJMgI1ODd3nwz8Npx4O4cg==", + "dev": true, + "dependencies": { + "lru-cache": "^11.0.0", + "minipass": "^7.1.2" + }, + "engines": { + "node": "20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/globals": { "version": "13.24.0", "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", @@ -14460,6 +14500,41 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/rimraf/node_modules/glob": { + "version": "10.4.5", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz", + "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==", + "dev": true, + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^3.1.2", + "minimatch": "^9.0.4", + "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", + "path-scurry": "^1.11.1" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/rimraf/node_modules/jackspeak": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.3.tgz", + "integrity": "sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==", + "dev": true, + "dependencies": { + "@isaacs/cliui": "^8.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + }, + "optionalDependencies": { + "@pkgjs/parseargs": "^0.11.0" + } + }, "node_modules/robust-predicates": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/robust-predicates/-/robust-predicates-3.0.2.tgz", @@ -15472,6 +15547,41 @@ "node": ">= 6" } }, + "node_modules/sucrase/node_modules/glob": { + "version": "10.4.5", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz", + "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==", + "dev": true, + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^3.1.2", + "minimatch": "^9.0.4", + "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", + "path-scurry": "^1.11.1" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/sucrase/node_modules/jackspeak": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.3.tgz", + "integrity": "sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==", + "dev": true, + "dependencies": { + "@isaacs/cliui": "^8.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + }, + "optionalDependencies": { + "@pkgjs/parseargs": "^0.11.0" + } + }, "node_modules/supports-color": { "version": "5.5.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", diff --git a/package.json b/package.json index 419cb3e4..32d4b8fe 100644 --- a/package.json +++ b/package.json @@ -42,7 +42,7 @@ "@repo/prettier-config": "*", "@repo/typescript-config": "*", "diffscribe": "*", - "glob": "10.4.2", + "glob": "11.0.0", "prettier": "3.3.3", "turbo": "2.0.6" }, From 459086e6d1e9bf79799d78976438da21cd0cd1ee Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 18 Jul 2024 21:19:01 +0300 Subject: [PATCH 302/458] Bump rimraf from 5.0.7 to 6.0.1 (#635) Bumps [rimraf](https://github.com/isaacs/rimraf) from 5.0.7 to 6.0.1. - [Changelog](https://github.com/isaacs/rimraf/blob/main/CHANGELOG.md) - [Commits](https://github.com/isaacs/rimraf/compare/v5.0.7...v6.0.1) --- updated-dependencies: - dependency-name: rimraf dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- internal/backend/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 62 +++++---------------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 9 files changed, 22 insertions(+), 56 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 885454e0..9281d5f8 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -37,7 +37,7 @@ "fastify": "4.28.1", "pm2": "5.4.2", "redis": "4.6.15", - "rimraf": "5.0.7", + "rimraf": "6.0.1", "tsx": "4.16.2", "typescript": "5.5.3" } diff --git a/internal/backend/package.json b/internal/backend/package.json index f662de4d..94fd86ad 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -17,7 +17,7 @@ "@repo/typescript-config": "*", "@types/node": "20.14.11", "pino-pretty": "11.2.1", - "rimraf": "5.0.7", + "rimraf": "6.0.1", "tsx": "4.16.2", "typescript": "5.5.3" } diff --git a/internal/next-common/package.json b/internal/next-common/package.json index 1a59b2f4..d0335c7e 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -16,7 +16,7 @@ "devDependencies": { "@repo/typescript-config": "*", "@types/node": "20.14.11", - "rimraf": "5.0.7", + "rimraf": "6.0.1", "typescript": "5.5.3" } } diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index f1bb8461..4ad87fba 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -17,7 +17,7 @@ "@neshca/next-common": "*", "@repo/typescript-config": "*", "@types/node": "20.14.11", - "rimraf": "5.0.7", + "rimraf": "6.0.1", "typescript": "5.5.3" } } diff --git a/package-lock.json b/package-lock.json index 6a8b3abe..a85ef7d1 100644 --- a/package-lock.json +++ b/package-lock.json @@ -57,7 +57,7 @@ "fastify": "4.28.1", "pm2": "5.4.2", "redis": "4.6.15", - "rimraf": "5.0.7", + "rimraf": "6.0.1", "tsx": "4.16.2", "typescript": "5.5.3" } @@ -454,7 +454,7 @@ "@repo/typescript-config": "*", "@types/node": "20.14.11", "pino-pretty": "11.2.1", - "rimraf": "5.0.7", + "rimraf": "6.0.1", "tsx": "4.16.2", "typescript": "5.5.3" } @@ -592,7 +592,7 @@ "devDependencies": { "@repo/typescript-config": "*", "@types/node": "20.14.11", - "rimraf": "5.0.7", + "rimraf": "6.0.1", "typescript": "5.5.3" } }, @@ -805,7 +805,7 @@ "@neshca/next-common": "*", "@repo/typescript-config": "*", "@types/node": "20.14.11", - "rimraf": "5.0.7", + "rimraf": "6.0.1", "typescript": "5.5.3" } }, @@ -14483,56 +14483,22 @@ "integrity": "sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==" }, "node_modules/rimraf": { - "version": "5.0.7", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-5.0.7.tgz", - "integrity": "sha512-nV6YcJo5wbLW77m+8KjH8aB/7/rxQy9SZ0HY5shnwULfS+9nmTtVXAJET5NdZmCzA4fPI/Hm1wo/Po/4mopOdg==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-6.0.1.tgz", + "integrity": "sha512-9dkvaxAsk/xNXSJzMgFqqMCuFgt2+KsOFek3TMLfo8NCPfWpBmqwyNn5Y+NX56QUYfCtsyhF3ayiboEoUmJk/A==", "dev": true, "dependencies": { - "glob": "^10.3.7" + "glob": "^11.0.0", + "package-json-from-dist": "^1.0.0" }, "bin": { "rimraf": "dist/esm/bin.mjs" }, "engines": { - "node": ">=14.18" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/rimraf/node_modules/glob": { - "version": "10.4.5", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz", - "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==", - "dev": true, - "dependencies": { - "foreground-child": "^3.1.0", - "jackspeak": "^3.1.2", - "minimatch": "^9.0.4", - "minipass": "^7.1.2", - "package-json-from-dist": "^1.0.0", - "path-scurry": "^1.11.1" - }, - "bin": { - "glob": "dist/esm/bin.mjs" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/rimraf/node_modules/jackspeak": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.3.tgz", - "integrity": "sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==", - "dev": true, - "dependencies": { - "@isaacs/cliui": "^8.0.2" + "node": "20 || >=22" }, "funding": { "url": "https://github.com/sponsors/isaacs" - }, - "optionalDependencies": { - "@pkgjs/parseargs": "^0.11.0" } }, "node_modules/robust-predicates": { @@ -17598,7 +17564,7 @@ "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", "@types/node": "20.14.11", - "rimraf": "5.0.7", + "rimraf": "6.0.1", "tsup": "8.1.2", "tsx": "4.16.2", "typescript": "5.5.3" @@ -17617,7 +17583,7 @@ "devDependencies": { "@repo/typescript-config": "*", "@types/node": "20.14.11", - "rimraf": "5.0.7", + "rimraf": "6.0.1", "tsup": "8.1.2", "typescript": "5.5.3" }, @@ -17633,7 +17599,7 @@ "devDependencies": { "@repo/typescript-config": "*", "@types/node": "20.14.11", - "rimraf": "5.0.7", + "rimraf": "6.0.1", "tsup": "8.1.2", "tsx": "4.16.2", "typescript": "5.5.3" @@ -17655,7 +17621,7 @@ "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", "@types/node": "20.14.11", - "rimraf": "5.0.7", + "rimraf": "6.0.1", "tsup": "8.1.2", "tsx": "4.16.2", "typescript": "5.5.3" diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index ce50173e..86161bb7 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -80,7 +80,7 @@ "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", "@types/node": "20.14.11", - "rimraf": "5.0.7", + "rimraf": "6.0.1", "tsup": "8.1.2", "tsx": "4.16.2", "typescript": "5.5.3" diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index 27986dd8..7f09b6ee 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -26,7 +26,7 @@ "devDependencies": { "@repo/typescript-config": "*", "@types/node": "20.14.11", - "rimraf": "5.0.7", + "rimraf": "6.0.1", "tsup": "8.1.2", "typescript": "5.5.3" }, diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 10b0d2d6..71cca51c 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -29,7 +29,7 @@ "devDependencies": { "@repo/typescript-config": "*", "@types/node": "20.14.11", - "rimraf": "5.0.7", + "rimraf": "6.0.1", "tsup": "8.1.2", "tsx": "4.16.2", "typescript": "5.5.3" diff --git a/packages/server/package.json b/packages/server/package.json index 6756219a..4660214d 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -33,7 +33,7 @@ "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", "@types/node": "20.14.11", - "rimraf": "5.0.7", + "rimraf": "6.0.1", "tsup": "8.1.2", "tsx": "4.16.2", "typescript": "5.5.3" From f4b6c23ee581568f100457c38b677713e86a343f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 18 Jul 2024 22:17:46 +0300 Subject: [PATCH 303/458] Bump the turbo group with 2 updates (#643) Bumps the turbo group with 2 updates: [turbo](https://github.com/vercel/turbo) and [eslint-config-turbo](https://github.com/vercel/turbo/tree/HEAD/packages/eslint-config-turbo). Updates `turbo` from 2.0.6 to 2.0.7 - [Release notes](https://github.com/vercel/turbo/releases) - [Changelog](https://github.com/vercel/turbo/blob/main/release.md) - [Commits](https://github.com/vercel/turbo/compare/v2.0.6...v2.0.7) Updates `eslint-config-turbo` from 2.0.6 to 2.0.7 - [Release notes](https://github.com/vercel/turbo/releases) - [Changelog](https://github.com/vercel/turbo/blob/main/release.md) - [Commits](https://github.com/vercel/turbo/commits/v2.0.7/packages/eslint-config-turbo) --- updated-dependencies: - dependency-name: turbo dependency-type: direct:development update-type: version-update:semver-patch dependency-group: turbo - dependency-name: eslint-config-turbo dependency-type: direct:development update-type: version-update:semver-patch dependency-group: turbo ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- internal/eslint-config/package.json | 2 +- package-lock.json | 72 ++++++++++++++--------------- package.json | 2 +- 3 files changed, 38 insertions(+), 38 deletions(-) diff --git a/internal/eslint-config/package.json b/internal/eslint-config/package.json index 66a72b48..9becc1eb 100644 --- a/internal/eslint-config/package.json +++ b/internal/eslint-config/package.json @@ -10,7 +10,7 @@ "@typescript-eslint/parser": "7.5.0", "@vercel/style-guide": "6.0.0", "eslint-config-prettier": "9.1.0", - "eslint-config-turbo": "2.0.6", + "eslint-config-turbo": "2.0.7", "eslint-plugin-only-warn": "1.1.0", "typescript": "5.5.3" } diff --git a/package-lock.json b/package-lock.json index a85ef7d1..7da0dd17 100644 --- a/package-lock.json +++ b/package-lock.json @@ -26,7 +26,7 @@ "diffscribe": "*", "glob": "11.0.0", "prettier": "3.3.3", - "turbo": "2.0.6" + "turbo": "2.0.7" }, "engines": { "node": ">=20.9.0", @@ -467,7 +467,7 @@ "@typescript-eslint/parser": "7.5.0", "@vercel/style-guide": "6.0.0", "eslint-config-prettier": "9.1.0", - "eslint-config-turbo": "2.0.6", + "eslint-config-turbo": "2.0.7", "eslint-plugin-only-warn": "1.1.0", "typescript": "5.5.3" } @@ -6960,12 +6960,12 @@ } }, "node_modules/eslint-config-turbo": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/eslint-config-turbo/-/eslint-config-turbo-2.0.6.tgz", - "integrity": "sha512-PkRjFnZUZWPcrYT4Xoi5OWOUtnn6xVGh88I6TsayiH4AQZuLs/MDmzfJRK+PiWIrI7Q7sbsVEQP+nUyyRE3uAw==", + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/eslint-config-turbo/-/eslint-config-turbo-2.0.7.tgz", + "integrity": "sha512-rs9QdVM3MSd1EQ0C13bbl1/9H6tYMOZSG3Dpfe+qcq6oZSdjrKh4+u/ALMO2nxF/FujioibzgbN3rI46L3BdUQ==", "dev": true, "dependencies": { - "eslint-plugin-turbo": "2.0.6" + "eslint-plugin-turbo": "2.0.7" }, "peerDependencies": { "eslint": ">6.6.0" @@ -7650,9 +7650,9 @@ } }, "node_modules/eslint-plugin-turbo": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/eslint-plugin-turbo/-/eslint-plugin-turbo-2.0.6.tgz", - "integrity": "sha512-yGnpMvyBxI09ZrF5bGpaniBz57MiExTCsRnNxP+JnbMFD+xU3jG3ukRzehVol8LYNdC/G7E4HoH+x7OEpoSGAQ==", + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/eslint-plugin-turbo/-/eslint-plugin-turbo-2.0.7.tgz", + "integrity": "sha512-HNrg6/8U4ZMj46ckX7GkwFOz4yLizZjCZb5xgoGF6pR5XwXxHBI4+fuVu9HGJXH0QRbNp3JQoxFYPB9y/cdv8w==", "dev": true, "dependencies": { "dotenv": "16.0.3" @@ -16482,26 +16482,26 @@ } }, "node_modules/turbo": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/turbo/-/turbo-2.0.6.tgz", - "integrity": "sha512-/Ftmxd5Mq//a9yMonvmwENNUN65jOVTwhhBPQjEtNZutYT9YKyzydFGLyVM1nzhpLWahQSMamRc/RDBv5EapzA==", + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/turbo/-/turbo-2.0.7.tgz", + "integrity": "sha512-76iNWZpmKAKjj+yL0Wtcu2LpDIM5Nz7JS3fHOZPYS0AKuC2boJ24276VAiK4PKwbpBB//TYKDpSLuQ6cfR49pg==", "dev": true, "bin": { "turbo": "bin/turbo" }, "optionalDependencies": { - "turbo-darwin-64": "2.0.6", - "turbo-darwin-arm64": "2.0.6", - "turbo-linux-64": "2.0.6", - "turbo-linux-arm64": "2.0.6", - "turbo-windows-64": "2.0.6", - "turbo-windows-arm64": "2.0.6" + "turbo-darwin-64": "2.0.7", + "turbo-darwin-arm64": "2.0.7", + "turbo-linux-64": "2.0.7", + "turbo-linux-arm64": "2.0.7", + "turbo-windows-64": "2.0.7", + "turbo-windows-arm64": "2.0.7" } }, "node_modules/turbo-darwin-64": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/turbo-darwin-64/-/turbo-darwin-64-2.0.6.tgz", - "integrity": "sha512-XpgBwWj3Ggmz/gQVqXdMKXHC1iFPMDiuwugLwSzE7Ih0O13JuNtYZKhQnopvbDQnFQCeRq2Vsm5OTWabg/oB/g==", + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/turbo-darwin-64/-/turbo-darwin-64-2.0.7.tgz", + "integrity": "sha512-J1RBvQGqKeUwLJrZbfrm4tHshagdMeGAwd7rpLpfUrw0PNmGfcBazJf6dIGXG59/GHzJmS0/eAZ8qDchfVbIFA==", "cpu": [ "x64" ], @@ -16512,9 +16512,9 @@ ] }, "node_modules/turbo-darwin-arm64": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/turbo-darwin-arm64/-/turbo-darwin-arm64-2.0.6.tgz", - "integrity": "sha512-RfeZYXIAkiA21E8lsvfptGTqz/256YD+eI1x37fedfvnHFWuIMFZGAOwJxtZc6QasQunDZ9TRRREbJNI68tkIw==", + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/turbo-darwin-arm64/-/turbo-darwin-arm64-2.0.7.tgz", + "integrity": "sha512-h1JK8uuEjoHx1SvvTZiottj+4kDmiv+hivnLUzNwO75qKblMsd38IsFB0J2sMRz7JacFlf+3ry8SItznBW67Xw==", "cpu": [ "arm64" ], @@ -16525,9 +16525,9 @@ ] }, "node_modules/turbo-linux-64": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/turbo-linux-64/-/turbo-linux-64-2.0.6.tgz", - "integrity": "sha512-92UDa0xNQQbx0HdSp9ag3YSS3xPdavhc7q9q9mxIAcqyjjD6VElA4Y85m4F/DDGE5SolCrvBz2sQhVmkOd6Caw==", + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/turbo-linux-64/-/turbo-linux-64-2.0.7.tgz", + "integrity": "sha512-dsr7GFeHAYVMnXWDDjhpsAQetejU4OlkNBRA5hfmnIcl2sSyOYa3EvoeJ6j5z5vTNIJ9VO4I1h0jK3lTjEoonA==", "cpu": [ "x64" ], @@ -16538,9 +16538,9 @@ ] }, "node_modules/turbo-linux-arm64": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/turbo-linux-arm64/-/turbo-linux-arm64-2.0.6.tgz", - "integrity": "sha512-eQKu6utCVUkIH2kqOzD8OS6E0ba6COjWm6PRDTNCHQRljZW503ycaTUIdMOiJrVg1MkEjDyOReUg8s8D18aJ4Q==", + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/turbo-linux-arm64/-/turbo-linux-arm64-2.0.7.tgz", + "integrity": "sha512-bJbwXvyX1XPzY1jHgkqggls/L4yFyHVK8GGACF3kcg6x7lYV2SXkUYRyOC3WqzW7euqa9Zw/32jrIPP4Qy31Vw==", "cpu": [ "arm64" ], @@ -16551,9 +16551,9 @@ ] }, "node_modules/turbo-windows-64": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/turbo-windows-64/-/turbo-windows-64-2.0.6.tgz", - "integrity": "sha512-+9u4EPrpoeHYCQ46dRcou9kbkSoelhOelHNcbs2d86D6ruYD/oIAHK9qgYK8LeARRz0jxhZIA/dWYdYsxJJWkw==", + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/turbo-windows-64/-/turbo-windows-64-2.0.7.tgz", + "integrity": "sha512-aBH+5A7IN957MqXMrw8xN0CWtH/fPFL+xTlloO6074Eaa8WfnctSAnaSujm6f4xF2T8lFx+ZprBvnO9oKvLQQQ==", "cpu": [ "x64" ], @@ -16564,9 +16564,9 @@ ] }, "node_modules/turbo-windows-arm64": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/turbo-windows-arm64/-/turbo-windows-arm64-2.0.6.tgz", - "integrity": "sha512-rdrKL+p+EjtdDVg0wQ/7yTbzkIYrnb0Pw4IKcjsy3M0RqUM9UcEi67b94XOAyTa5a0GqJL1+tUj2ebsFGPgZbg==", + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/turbo-windows-arm64/-/turbo-windows-arm64-2.0.7.tgz", + "integrity": "sha512-ButUCpO5nTi+jyTSIY2mQ9dVz+mCGxJ6sHyn0xGlNoJWdisKXb0BtWCLAjM26gg/yp9Kt1MBowMQyYVruPV0Qw==", "cpu": [ "arm64" ], diff --git a/package.json b/package.json index 32d4b8fe..a9f4c703 100644 --- a/package.json +++ b/package.json @@ -44,7 +44,7 @@ "diffscribe": "*", "glob": "11.0.0", "prettier": "3.3.3", - "turbo": "2.0.6" + "turbo": "2.0.7" }, "packageManager": "npm@10.7.0", "engines": { From 7192553e054aff7fe9efdfc8e1daa23122dcf7bd Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Thu, 18 Jul 2024 22:48:33 +0300 Subject: [PATCH 304/458] Add changeset for the `@neshca/cache-handler` patch (#648) --- .changeset/hip-vans-lay.md | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 .changeset/hip-vans-lay.md diff --git a/.changeset/hip-vans-lay.md b/.changeset/hip-vans-lay.md new file mode 100644 index 00000000..5cc01ba4 --- /dev/null +++ b/.changeset/hip-vans-lay.md @@ -0,0 +1,11 @@ +--- +'@neshca/cache-handler': patch +--- + +Update the `revalidateTag` method to use `ft.searchNoContent` function in the `redis-stack` Handler. + +#### Improvements + +##### `@neshca/cache-handle/redis-stack` + +- Updated the `revalidateTag` method to use `ft.searchNoContent` function. Thanks to [@galtonova](https://github.com/galtonova) for the contribution. From 40eb0a443b588d85b31bb907709be129673ff349 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Thu, 18 Jul 2024 23:03:45 +0300 Subject: [PATCH 305/458] Version Packages (#649) Co-authored-by: github-actions[bot] --- .changeset/hip-vans-lay.md | 11 ----------- packages/cache-handler/CHANGELOG.md | 12 ++++++++++++ packages/cache-handler/package.json | 2 +- 3 files changed, 13 insertions(+), 12 deletions(-) delete mode 100644 .changeset/hip-vans-lay.md diff --git a/.changeset/hip-vans-lay.md b/.changeset/hip-vans-lay.md deleted file mode 100644 index 5cc01ba4..00000000 --- a/.changeset/hip-vans-lay.md +++ /dev/null @@ -1,11 +0,0 @@ ---- -'@neshca/cache-handler': patch ---- - -Update the `revalidateTag` method to use `ft.searchNoContent` function in the `redis-stack` Handler. - -#### Improvements - -##### `@neshca/cache-handle/redis-stack` - -- Updated the `revalidateTag` method to use `ft.searchNoContent` function. Thanks to [@galtonova](https://github.com/galtonova) for the contribution. diff --git a/packages/cache-handler/CHANGELOG.md b/packages/cache-handler/CHANGELOG.md index 43f39d16..44f497c0 100644 --- a/packages/cache-handler/CHANGELOG.md +++ b/packages/cache-handler/CHANGELOG.md @@ -1,5 +1,17 @@ # @neshca/cache-handler +## 1.4.1 + +### Patch Changes + +- 1685585: Update the `revalidateTag` method to use `ft.searchNoContent` function in the `redis-stack` Handler. + + #### Improvements + + ##### `@neshca/cache-handle/redis-stack` + + - Updated the `revalidateTag` method to use `ft.searchNoContent` function. Thanks to [@galtonova](https://github.com/galtonova) for the contribution. + ## 1.4.0 ### Minor Changes diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 86161bb7..260d1587 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -1,6 +1,6 @@ { "name": "@neshca/cache-handler", - "version": "1.4.0", + "version": "1.4.1", "description": "Next.js self-hosting simplified.", "keywords": [ "cache", From 092d6f405d6a49ab1b97f5ee7260c6cba108c47e Mon Sep 17 00:00:00 2001 From: Ely <13997186+ElyDotDev@users.noreply.github.com> Date: Fri, 19 Jul 2024 13:28:46 +0200 Subject: [PATCH 306/458] Add ability to disable Redis operations timeout in the `redis-string` and `redis-stack` Handlers (#639) There is a known bug in the Redis package, that will be fixed in version 5, which is in the alpha stage. (https://github.com/redis/node-redis/issues/2498) The issue is about the usage of AbortSignal. When it is used, if the Redis connection encounters an error, like the Redis server gets offline, an unhandled error will be thrown. This error will cause an issue with the reconnection of the client, and it'll put the Redis client into a limbo stage that will not recover unless the Next.js app restarts. This PR will address this issue by giving the ability to disable the Redis operations timeout totally, by setting the value of `timeoutMs: 0` for the `redis-string` and `redis-stack` Handlers. --- docs/cache-handler-docs/src/pages/handlers/redis-stack.mdx | 2 +- docs/cache-handler-docs/src/pages/handlers/redis-strings.mdx | 2 +- packages/cache-handler/src/common-types.ts | 3 +++ .../src/helpers/get-timeout-redis-command-options.ts | 4 ++++ 4 files changed, 9 insertions(+), 2 deletions(-) diff --git a/docs/cache-handler-docs/src/pages/handlers/redis-stack.mdx b/docs/cache-handler-docs/src/pages/handlers/redis-stack.mdx index af9982f1..b0f4ab97 100644 --- a/docs/cache-handler-docs/src/pages/handlers/redis-stack.mdx +++ b/docs/cache-handler-docs/src/pages/handlers/redis-stack.mdx @@ -32,7 +32,7 @@ The `redis-stack` Handler uses Redis with `RedisJSON` and `RedisSearch` modules - `options` - An object containing the following properties: - `client` - A Redis client instance. The client must be ready before creating the Handler. - `keyPrefix` - Optional. Prefix for all keys, useful for namespacing. Defaults to an empty string. - - `timeoutMs` - Optional. Timeout in milliseconds for Redis operations. Defaults to `5000`. + - `timeoutMs` - Optional. Timeout in milliseconds for Redis operations. Defaults to `5000`. For disabling timeouts, set it to `0`. - `revalidateTagQuerySize` - Optional. The number of tags in a single query retrieved from Redis when scanning or searching for tags. Defaults to `100`. #### `revalidateTagQuerySize` diff --git a/docs/cache-handler-docs/src/pages/handlers/redis-strings.mdx b/docs/cache-handler-docs/src/pages/handlers/redis-strings.mdx index bd0192d0..b674526a 100644 --- a/docs/cache-handler-docs/src/pages/handlers/redis-strings.mdx +++ b/docs/cache-handler-docs/src/pages/handlers/redis-strings.mdx @@ -28,7 +28,7 @@ The `redis-strings` Handler uses plain Redis as the cache store. It is a simple - `options` - An object containing the following properties: - `client` - A Redis client instance. The client must be ready before creating the Handler. - `keyPrefix` - Optional. Prefix for all keys, useful for namespacing. Defaults to an empty string. - - `timeoutMs` - Optional. Timeout in milliseconds for Redis operations. Defaults to `5000`. + - `timeoutMs` - Optional. Timeout in milliseconds for Redis operations. Defaults to `5000`. For disabling timeouts, set it to `0`. - `keyExpirationStrategy` - Optional. It allows you to choose the expiration strategy for cache keys. Defaults to `EXPRIREAT`. - `sharedTagsKey` - Optional. Dedicated key for the internal revalidation process. It must not interfere with cache keys from your application. Defaults to `__sharedTags__`. - `revalidateTagQuerySize` - Optional. The number of tags in a single query retrieved from Redis when scanning or searching for tags. Defaults to `100`. diff --git a/packages/cache-handler/src/common-types.ts b/packages/cache-handler/src/common-types.ts index b80bc8d0..cdd32742 100644 --- a/packages/cache-handler/src/common-types.ts +++ b/packages/cache-handler/src/common-types.ts @@ -28,6 +28,9 @@ export type CreateRedisStackHandlerOptions> * @default 5000 // 5000 ms * * @since 1.0.0 + * + * @remarks + * To disable timeout of Redis operations, set this option to 0. */ timeoutMs?: number; /** diff --git a/packages/cache-handler/src/helpers/get-timeout-redis-command-options.ts b/packages/cache-handler/src/helpers/get-timeout-redis-command-options.ts index 477ab487..fca89f30 100644 --- a/packages/cache-handler/src/helpers/get-timeout-redis-command-options.ts +++ b/packages/cache-handler/src/helpers/get-timeout-redis-command-options.ts @@ -3,5 +3,9 @@ import { commandOptions } from 'redis'; type CommandOptions = ReturnType; export function getTimeoutRedisCommandOptions(timeoutMs: number): CommandOptions { + if (timeoutMs === 0) { + return commandOptions({}); + } + return commandOptions({ signal: AbortSignal.timeout(timeoutMs) }); } From a31e76f56d70ab5ebf9ac14bca941a65ca987e93 Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Fri, 19 Jul 2024 15:11:22 +0300 Subject: [PATCH 307/458] Add changeset for the `@neshca/cache-handler` (#650) --- .changeset/modern-dogs-run.md | 15 +++++++++++++++ docs/cache-handler-docs/theme.config.jsx | 7 +++++-- packages/cache-handler/README.md | 2 +- 3 files changed, 21 insertions(+), 3 deletions(-) create mode 100644 .changeset/modern-dogs-run.md diff --git a/.changeset/modern-dogs-run.md b/.changeset/modern-dogs-run.md new file mode 100644 index 00000000..7b6027dc --- /dev/null +++ b/.changeset/modern-dogs-run.md @@ -0,0 +1,15 @@ +--- +'@neshca/cache-handler': patch +--- + +Add the ability to disable Redis operations timeout in the `redis-string` and `redis-stack` Handlers. + +#### New Functionality + +##### `@neshca/cache-handler/redis-strings` + +- Added a condition to check if the `timeoutMs` is zero to disable Redis operations timeout. + +##### `@neshca/cache-handler/redis-stack` + +- Added a condition to check if the `timeoutMs` is zero to disable Redis operations timeout. diff --git a/docs/cache-handler-docs/theme.config.jsx b/docs/cache-handler-docs/theme.config.jsx index 75e445a8..8d868dc9 100644 --- a/docs/cache-handler-docs/theme.config.jsx +++ b/docs/cache-handler-docs/theme.config.jsx @@ -53,9 +53,12 @@ export default { ), }, banner: { - key: 'version-1.3.0', + key: 'version-1.4.2', text: ( -
🎉 1.3.0 is out! It features the new keyExpirationStrategy option for the redis-strings Handler!
+
+ 🎉 1.4.2 is out! It features optimizations for the revalidateTag method in the redis-stack Handler and + the ability to disable Redis operations timeout in both redis-string and redis-stack Handlers! +
), }, }; diff --git a/packages/cache-handler/README.md b/packages/cache-handler/README.md index bd17db11..6f572a2a 100644 --- a/packages/cache-handler/README.md +++ b/packages/cache-handler/README.md @@ -2,7 +2,7 @@ **Flexible API to replace the default Next.js cache, accommodating custom cache solutions for multi-instance self-hosted deployments** -🎉 1.3.0 is out! It features the new `keyExpirationStrategy` option for the `redis-strings` Handler! It allows to use of a more performant API for the cache set operation but requires Redis server 6.2.0. Do not forget about the new [`neshCache`](https://caching-tools.github.io/next-shared-cache/functions/nesh-cache) application-side function for caching non-fetch data requests, e.g. `axios` or database queries. +🎉 1.4.2 is out! It features optimizations for the `revalidateTag` method in the `redis-stack` Handler and the ability to disable Redis operations timeout in both `redis-string` and `redis-stack` Handlers. Thanks to the community for their valuable contributions! Check out the [changelog](https://github.com/caching-tools/next-shared-cache/blob/canary/packages/cache-handler/CHANGELOG.md) From 00e738ceca0b8737bcb80c02a5d6c4a77e6c4760 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Fri, 19 Jul 2024 15:41:18 +0300 Subject: [PATCH 308/458] Version Packages (#651) Co-authored-by: github-actions[bot] --- .changeset/modern-dogs-run.md | 15 --------------- packages/cache-handler/CHANGELOG.md | 22 +++++++++++++++++++++- packages/cache-handler/package.json | 2 +- 3 files changed, 22 insertions(+), 17 deletions(-) delete mode 100644 .changeset/modern-dogs-run.md diff --git a/.changeset/modern-dogs-run.md b/.changeset/modern-dogs-run.md deleted file mode 100644 index 7b6027dc..00000000 --- a/.changeset/modern-dogs-run.md +++ /dev/null @@ -1,15 +0,0 @@ ---- -'@neshca/cache-handler': patch ---- - -Add the ability to disable Redis operations timeout in the `redis-string` and `redis-stack` Handlers. - -#### New Functionality - -##### `@neshca/cache-handler/redis-strings` - -- Added a condition to check if the `timeoutMs` is zero to disable Redis operations timeout. - -##### `@neshca/cache-handler/redis-stack` - -- Added a condition to check if the `timeoutMs` is zero to disable Redis operations timeout. diff --git a/packages/cache-handler/CHANGELOG.md b/packages/cache-handler/CHANGELOG.md index 44f497c0..be13f727 100644 --- a/packages/cache-handler/CHANGELOG.md +++ b/packages/cache-handler/CHANGELOG.md @@ -1,5 +1,23 @@ # @neshca/cache-handler +## 1.4.2 + +### Patch Changes + +- 092d6f4: Add the ability to disable Redis operations timeout in the `redis-string` and `redis-stack` Handlers. + + #### New Functionality + + ##### `@neshca/cache-handler/redis-strings` + + - Added a condition to check if the `timeoutMs` is zero to disable Redis operations timeout. + + ##### `@neshca/cache-handler/redis-stack` + + - Added a condition to check if the `timeoutMs` is zero to disable Redis operations timeout. + + Thanks to [@ElyDotDev](https://github.com/ElyDotDev) for the contribution. + ## 1.4.1 ### Patch Changes @@ -10,7 +28,9 @@ ##### `@neshca/cache-handle/redis-stack` - - Updated the `revalidateTag` method to use `ft.searchNoContent` function. Thanks to [@galtonova](https://github.com/galtonova) for the contribution. + - Updated the `revalidateTag` method to use `ft.searchNoContent` function. + + Thanks to [@galtonova](https://github.com/galtonova) for the contribution. ## 1.4.0 diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 260d1587..2ceaba86 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -1,6 +1,6 @@ { "name": "@neshca/cache-handler", - "version": "1.4.1", + "version": "1.4.2", "description": "Next.js self-hosting simplified.", "keywords": [ "cache", From b5245aafbd69f54f8a994787bd26d21187211a5f Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Fri, 19 Jul 2024 23:42:40 +0300 Subject: [PATCH 309/458] Update the `revalidateTag` method in the custom Redis strings example (#652) --- .../pages/usage/creating-a-custom-handler.mdx | 40 +++++++++++-------- 1 file changed, 23 insertions(+), 17 deletions(-) diff --git a/docs/cache-handler-docs/src/pages/usage/creating-a-custom-handler.mdx b/docs/cache-handler-docs/src/pages/usage/creating-a-custom-handler.mdx index d386b3f0..921c72ac 100644 --- a/docs/cache-handler-docs/src/pages/usage/creating-a-custom-handler.mdx +++ b/docs/cache-handler-docs/src/pages/usage/creating-a-custom-handler.mdx @@ -167,13 +167,17 @@ CacheHandler.onCreation(async () => { // Cursor for the hScan operation. let cursor = 0; - // Query size for the hScan operation. - const querySize = 25; + // Define a query size for the hScan operation. + const hScanOptions = { COUNT: 100 }; // Iterate over all keys in the shared tags. - while (true) { - // Get a portion of the keys. - const remoteTagsPortion = await client.hScan(keyPrefix + sharedTagsKey, cursor, { COUNT: querySize }); + do { + const remoteTagsPortion = await client.hScan( + commandOptions({ signal: AbortSignal.timeout(timeoutMs) }), + keyPrefix + sharedTagsKey, + cursor, + hScanOptions, + ); // Iterate over all keys in the portion. for (const { field, value } of remoteTagsPortion.tuples) { @@ -181,19 +185,16 @@ CacheHandler.onCreation(async () => { tagsMap.set(field, JSON.parse(value)); } - // If the cursor is 0, we have reached the end. - if (remoteTagsPortion.cursor === 0) { - break; - } - // Update the cursor for the next iteration. cursor = remoteTagsPortion.cursor; - } + + // If the cursor is 0, we have reached the end. + } while (cursor !== 0); // Create an array of keys to delete. const keysToDelete = []; - // Create an array of tags to delete form the hash map. + // Create an array of tags to delete from the hash map. const tagsToDelete = []; // Iterate over all keys and tags. @@ -212,14 +213,19 @@ CacheHandler.onCreation(async () => { return; } - // Create a new AbortSignal with a timeout for the Redis operation. - const options = commandOptions({ signal: AbortSignal.timeout(timeoutMs) }); - // Delete the keys from Redis. - const deleteKeysOperation = client.unlink(options, keysToDelete); + const deleteKeysOperation = client.unlink( + commandOptions({ signal: AbortSignal.timeout(timeoutMs) }), + keysToDelete, + ); // Update the tags in Redis by deleting the revalidated tags. - const updateTagsOperation = client.hDel(options, keyPrefix + sharedTagsKey, tagsToDelete); + const updateTagsOperation = client.hDel( + // Use the isolated option to prevent the command from being executed on the main connection. + { isolated: true, ...getTimeoutRedisCommandOptions(timeoutMs) }, + keyPrefix + sharedTagsKey, + tagsToDelete, + ); // Wait for all operations to complete. await Promise.all([deleteKeysOperation, updateTagsOperation]); From 59553480f23f7ffc1a4aa696a636905be369be9e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 21 Jul 2024 11:14:19 +0000 Subject: [PATCH 310/458] Bump the turbo group across 1 directory with 2 updates (#655) --- internal/eslint-config/package.json | 2 +- package-lock.json | 74 ++++++++++++++--------------- package.json | 2 +- 3 files changed, 39 insertions(+), 39 deletions(-) diff --git a/internal/eslint-config/package.json b/internal/eslint-config/package.json index 9becc1eb..540640ca 100644 --- a/internal/eslint-config/package.json +++ b/internal/eslint-config/package.json @@ -10,7 +10,7 @@ "@typescript-eslint/parser": "7.5.0", "@vercel/style-guide": "6.0.0", "eslint-config-prettier": "9.1.0", - "eslint-config-turbo": "2.0.7", + "eslint-config-turbo": "2.0.9", "eslint-plugin-only-warn": "1.1.0", "typescript": "5.5.3" } diff --git a/package-lock.json b/package-lock.json index 7da0dd17..c4f18078 100644 --- a/package-lock.json +++ b/package-lock.json @@ -26,7 +26,7 @@ "diffscribe": "*", "glob": "11.0.0", "prettier": "3.3.3", - "turbo": "2.0.7" + "turbo": "2.0.9" }, "engines": { "node": ">=20.9.0", @@ -467,7 +467,7 @@ "@typescript-eslint/parser": "7.5.0", "@vercel/style-guide": "6.0.0", "eslint-config-prettier": "9.1.0", - "eslint-config-turbo": "2.0.7", + "eslint-config-turbo": "2.0.9", "eslint-plugin-only-warn": "1.1.0", "typescript": "5.5.3" } @@ -6960,12 +6960,12 @@ } }, "node_modules/eslint-config-turbo": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/eslint-config-turbo/-/eslint-config-turbo-2.0.7.tgz", - "integrity": "sha512-rs9QdVM3MSd1EQ0C13bbl1/9H6tYMOZSG3Dpfe+qcq6oZSdjrKh4+u/ALMO2nxF/FujioibzgbN3rI46L3BdUQ==", + "version": "2.0.9", + "resolved": "https://registry.npmjs.org/eslint-config-turbo/-/eslint-config-turbo-2.0.9.tgz", + "integrity": "sha512-FoIMElI8md/dR5DxjB5Om52KJfi7Qf7RInXeE+PGU6lN388rumppwyqEJsZ7vnR5GhGa9cLPt0vNZwEK9iXtKg==", "dev": true, "dependencies": { - "eslint-plugin-turbo": "2.0.7" + "eslint-plugin-turbo": "2.0.9" }, "peerDependencies": { "eslint": ">6.6.0" @@ -7650,9 +7650,9 @@ } }, "node_modules/eslint-plugin-turbo": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/eslint-plugin-turbo/-/eslint-plugin-turbo-2.0.7.tgz", - "integrity": "sha512-HNrg6/8U4ZMj46ckX7GkwFOz4yLizZjCZb5xgoGF6pR5XwXxHBI4+fuVu9HGJXH0QRbNp3JQoxFYPB9y/cdv8w==", + "version": "2.0.9", + "resolved": "https://registry.npmjs.org/eslint-plugin-turbo/-/eslint-plugin-turbo-2.0.9.tgz", + "integrity": "sha512-q4s4mg6JcXzz5zK4LC3c6FcWehGAWjGj7kIM76ZvG0KiR9Ks0znzjnAKW0NoiDP4s/gt3r4YPOpI357qWt167Q==", "dev": true, "dependencies": { "dotenv": "16.0.3" @@ -16482,26 +16482,26 @@ } }, "node_modules/turbo": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/turbo/-/turbo-2.0.7.tgz", - "integrity": "sha512-76iNWZpmKAKjj+yL0Wtcu2LpDIM5Nz7JS3fHOZPYS0AKuC2boJ24276VAiK4PKwbpBB//TYKDpSLuQ6cfR49pg==", + "version": "2.0.9", + "resolved": "https://registry.npmjs.org/turbo/-/turbo-2.0.9.tgz", + "integrity": "sha512-QaLaUL1CqblSKKPgLrFW3lZWkWG4pGBQNW+q1ScJB5v1D/nFWtsrD/yZljW/bdawg90ihi4/ftQJ3h6fz1FamA==", "dev": true, "bin": { "turbo": "bin/turbo" }, "optionalDependencies": { - "turbo-darwin-64": "2.0.7", - "turbo-darwin-arm64": "2.0.7", - "turbo-linux-64": "2.0.7", - "turbo-linux-arm64": "2.0.7", - "turbo-windows-64": "2.0.7", - "turbo-windows-arm64": "2.0.7" + "turbo-darwin-64": "2.0.9", + "turbo-darwin-arm64": "2.0.9", + "turbo-linux-64": "2.0.9", + "turbo-linux-arm64": "2.0.9", + "turbo-windows-64": "2.0.9", + "turbo-windows-arm64": "2.0.9" } }, "node_modules/turbo-darwin-64": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/turbo-darwin-64/-/turbo-darwin-64-2.0.7.tgz", - "integrity": "sha512-J1RBvQGqKeUwLJrZbfrm4tHshagdMeGAwd7rpLpfUrw0PNmGfcBazJf6dIGXG59/GHzJmS0/eAZ8qDchfVbIFA==", + "version": "2.0.9", + "resolved": "https://registry.npmjs.org/turbo-darwin-64/-/turbo-darwin-64-2.0.9.tgz", + "integrity": "sha512-owlGsOaExuVGBUfrnJwjkL1BWlvefjSKczEAcpLx4BI7Oh6ttakOi+JyomkPkFlYElRpjbvlR2gP8WIn6M/+xQ==", "cpu": [ "x64" ], @@ -16512,9 +16512,9 @@ ] }, "node_modules/turbo-darwin-arm64": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/turbo-darwin-arm64/-/turbo-darwin-arm64-2.0.7.tgz", - "integrity": "sha512-h1JK8uuEjoHx1SvvTZiottj+4kDmiv+hivnLUzNwO75qKblMsd38IsFB0J2sMRz7JacFlf+3ry8SItznBW67Xw==", + "version": "2.0.9", + "resolved": "https://registry.npmjs.org/turbo-darwin-arm64/-/turbo-darwin-arm64-2.0.9.tgz", + "integrity": "sha512-XAXkKkePth5ZPPE/9G9tTnPQx0C8UTkGWmNGYkpmGgRr8NedW+HrPsi9N0HcjzzIH9A4TpNYvtiV+WcwdaEjKA==", "cpu": [ "arm64" ], @@ -16525,9 +16525,9 @@ ] }, "node_modules/turbo-linux-64": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/turbo-linux-64/-/turbo-linux-64-2.0.7.tgz", - "integrity": "sha512-dsr7GFeHAYVMnXWDDjhpsAQetejU4OlkNBRA5hfmnIcl2sSyOYa3EvoeJ6j5z5vTNIJ9VO4I1h0jK3lTjEoonA==", + "version": "2.0.9", + "resolved": "https://registry.npmjs.org/turbo-linux-64/-/turbo-linux-64-2.0.9.tgz", + "integrity": "sha512-l9wSgEjrCFM1aG16zItBsZ206ZlhSSx1owB8Cgskfv0XyIXRGHRkluihiaxkp+UeU5WoEfz4EN5toc+ICA0q0w==", "cpu": [ "x64" ], @@ -16538,9 +16538,9 @@ ] }, "node_modules/turbo-linux-arm64": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/turbo-linux-arm64/-/turbo-linux-arm64-2.0.7.tgz", - "integrity": "sha512-bJbwXvyX1XPzY1jHgkqggls/L4yFyHVK8GGACF3kcg6x7lYV2SXkUYRyOC3WqzW7euqa9Zw/32jrIPP4Qy31Vw==", + "version": "2.0.9", + "resolved": "https://registry.npmjs.org/turbo-linux-arm64/-/turbo-linux-arm64-2.0.9.tgz", + "integrity": "sha512-gRnjxXRne18B27SwxXMqL3fJu7jw/8kBrOBTBNRSmZZiG1Uu3nbnP7b4lgrA/bCku6C0Wligwqurvtpq6+nFHA==", "cpu": [ "arm64" ], @@ -16551,9 +16551,9 @@ ] }, "node_modules/turbo-windows-64": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/turbo-windows-64/-/turbo-windows-64-2.0.7.tgz", - "integrity": "sha512-aBH+5A7IN957MqXMrw8xN0CWtH/fPFL+xTlloO6074Eaa8WfnctSAnaSujm6f4xF2T8lFx+ZprBvnO9oKvLQQQ==", + "version": "2.0.9", + "resolved": "https://registry.npmjs.org/turbo-windows-64/-/turbo-windows-64-2.0.9.tgz", + "integrity": "sha512-ZVo0apxUvaRq4Vm1qhsfqKKhtRgReYlBVf9MQvVU1O9AoyydEQvLDO1ryqpXDZWpcHoFxHAQc9msjAMtE5K2lA==", "cpu": [ "x64" ], @@ -16564,9 +16564,9 @@ ] }, "node_modules/turbo-windows-arm64": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/turbo-windows-arm64/-/turbo-windows-arm64-2.0.7.tgz", - "integrity": "sha512-ButUCpO5nTi+jyTSIY2mQ9dVz+mCGxJ6sHyn0xGlNoJWdisKXb0BtWCLAjM26gg/yp9Kt1MBowMQyYVruPV0Qw==", + "version": "2.0.9", + "resolved": "https://registry.npmjs.org/turbo-windows-arm64/-/turbo-windows-arm64-2.0.9.tgz", + "integrity": "sha512-sGRz7c5Pey6y7y9OKi8ypbWNuIRPF9y8xcMqL56OZifSUSo+X2EOsOleR9MKxQXVaqHPGOUKWsE6y8hxBi9pag==", "cpu": [ "arm64" ], @@ -17554,7 +17554,7 @@ }, "packages/cache-handler": { "name": "@neshca/cache-handler", - "version": "1.4.0", + "version": "1.4.2", "license": "MIT", "dependencies": { "lru-cache": "10.3.0" diff --git a/package.json b/package.json index a9f4c703..7eb23c15 100644 --- a/package.json +++ b/package.json @@ -44,7 +44,7 @@ "diffscribe": "*", "glob": "11.0.0", "prettier": "3.3.3", - "turbo": "2.0.7" + "turbo": "2.0.9" }, "packageManager": "npm@10.7.0", "engines": { From 7b911a8e899415773e38b352f60fe5854fdb584e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 21 Jul 2024 16:41:50 +0300 Subject: [PATCH 311/458] Bump tsup from 8.1.2 to 8.2.1 (#656) Bumps [tsup](https://github.com/egoist/tsup) from 8.1.2 to 8.2.1. - [Release notes](https://github.com/egoist/tsup/releases) - [Changelog](https://github.com/egoist/tsup/blob/dev/.releaserc.json) - [Commits](https://github.com/egoist/tsup/compare/v8.1.2...v8.2.1) --- updated-dependencies: - dependency-name: tsup dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 46 +++++++++++++++++---- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 5 files changed, 41 insertions(+), 13 deletions(-) diff --git a/package-lock.json b/package-lock.json index c4f18078..4ad19bde 100644 --- a/package-lock.json +++ b/package-lock.json @@ -15859,9 +15859,9 @@ "integrity": "sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ==" }, "node_modules/tsup": { - "version": "8.1.2", - "resolved": "https://registry.npmjs.org/tsup/-/tsup-8.1.2.tgz", - "integrity": "sha512-Gzw/PXSX/z0aYMNmkcI54bKKFVFJQbLne+EqTJZeQ3lNT3QpumjtMU4rl+ZwTTp8oRF3ahMbEAxT2sZPJLFSrg==", + "version": "8.2.1", + "resolved": "https://registry.npmjs.org/tsup/-/tsup-8.2.1.tgz", + "integrity": "sha512-ArA/s1GvXbovrnNeTtLphz7D2+OiFVCARviT8RmnWxFdH44dFt8v2tqz54MjJyqZC+QgjKjRuTlWKvC3CkAq3Q==", "dev": true, "dependencies": { "bundle-require": "^5.0.0", @@ -15870,9 +15870,11 @@ "consola": "^3.2.3", "debug": "^4.3.5", "esbuild": "^0.23.0", - "execa": "^5.0.0", - "globby": "^11.0.3", + "execa": "^5.1.1", + "fdir": "^6.1.1", "joycon": "^3.1.1", + "picocolors": "^1.0.1", + "picomatch": "^4.0.2", "postcss-load-config": "^6.0.1", "resolve-from": "^5.0.0", "rollup": "^4.18.1", @@ -16338,6 +16340,20 @@ "url": "https://github.com/sindresorhus/execa?sponsor=1" } }, + "node_modules/tsup/node_modules/fdir": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.1.1.tgz", + "integrity": "sha512-QfKBVg453Dyn3mr0Q0O+Tkr1r79lOTAKSi9f/Ot4+qVEwxWhav2Z+SudrG9vQjM2aYRMQQZ2/Q1zdA8ACM1pDg==", + "dev": true, + "peerDependencies": { + "picomatch": "3.x" + }, + "peerDependenciesMeta": { + "picomatch": { + "optional": true + } + } + }, "node_modules/tsup/node_modules/get-stream": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", @@ -16374,6 +16390,18 @@ "node": ">=8" } }, + "node_modules/tsup/node_modules/picomatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.2.tgz", + "integrity": "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, "node_modules/tsup/node_modules/signal-exit": { "version": "3.0.7", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", @@ -17565,7 +17593,7 @@ "@repo/typescript-config": "*", "@types/node": "20.14.11", "rimraf": "6.0.1", - "tsup": "8.1.2", + "tsup": "8.2.1", "tsx": "4.16.2", "typescript": "5.5.3" }, @@ -17584,7 +17612,7 @@ "@repo/typescript-config": "*", "@types/node": "20.14.11", "rimraf": "6.0.1", - "tsup": "8.1.2", + "tsup": "8.2.1", "typescript": "5.5.3" }, "peerDependencies": { @@ -17600,7 +17628,7 @@ "@repo/typescript-config": "*", "@types/node": "20.14.11", "rimraf": "6.0.1", - "tsup": "8.1.2", + "tsup": "8.2.1", "tsx": "4.16.2", "typescript": "5.5.3" } @@ -17622,7 +17650,7 @@ "@repo/typescript-config": "*", "@types/node": "20.14.11", "rimraf": "6.0.1", - "tsup": "8.1.2", + "tsup": "8.2.1", "tsx": "4.16.2", "typescript": "5.5.3" } diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 2ceaba86..d85f44de 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -81,7 +81,7 @@ "@repo/typescript-config": "*", "@types/node": "20.14.11", "rimraf": "6.0.1", - "tsup": "8.1.2", + "tsup": "8.2.1", "tsx": "4.16.2", "typescript": "5.5.3" }, diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index 7f09b6ee..eee8b33a 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -27,7 +27,7 @@ "@repo/typescript-config": "*", "@types/node": "20.14.11", "rimraf": "6.0.1", - "tsup": "8.1.2", + "tsup": "8.2.1", "typescript": "5.5.3" }, "peerDependencies": { diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 71cca51c..4ca15295 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -30,7 +30,7 @@ "@repo/typescript-config": "*", "@types/node": "20.14.11", "rimraf": "6.0.1", - "tsup": "8.1.2", + "tsup": "8.2.1", "tsx": "4.16.2", "typescript": "5.5.3" } diff --git a/packages/server/package.json b/packages/server/package.json index 4660214d..c01c6dac 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -34,7 +34,7 @@ "@repo/typescript-config": "*", "@types/node": "20.14.11", "rimraf": "6.0.1", - "tsup": "8.1.2", + "tsup": "8.2.1", "tsx": "4.16.2", "typescript": "5.5.3" }, From 65588912d78658966bc753c107209fbb8574c50f Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Tue, 23 Jul 2024 00:58:07 +0300 Subject: [PATCH 312/458] Add `experimental-redis-cluster` Handler and improve docs (#660) --- .changeset/quick-dolphins-own.md | 17 ++ .../src/pages/handlers/_meta.json | 3 +- .../handlers/experimental-redis-cluster.mdx | 55 +++++ .../src/pages/handlers/redis-stack.mdx | 4 +- .../src/pages/handlers/redis-strings.mdx | 7 +- docs/cache-handler-docs/theme.config.jsx | 15 +- package-lock.json | 1 + packages/cache-handler/README.md | 2 +- packages/cache-handler/package.json | 1 + .../handlers/experimental-redis-cluster.ts | 226 ++++++++++++++++++ .../cache-handler/src/handlers/redis-stack.ts | 13 +- .../src/handlers/redis-strings.ts | 13 +- packages/cache-handler/tsup.config.ts | 2 +- 13 files changed, 336 insertions(+), 23 deletions(-) create mode 100644 .changeset/quick-dolphins-own.md create mode 100644 docs/cache-handler-docs/src/pages/handlers/experimental-redis-cluster.mdx create mode 100644 packages/cache-handler/src/handlers/experimental-redis-cluster.ts diff --git a/.changeset/quick-dolphins-own.md b/.changeset/quick-dolphins-own.md new file mode 100644 index 00000000..1fd3f909 --- /dev/null +++ b/.changeset/quick-dolphins-own.md @@ -0,0 +1,17 @@ +--- +'@neshca/cache-handler': minor +--- + +Add `experimental-redis-cluster` Handler. + +#### New Features + +##### `@neshca/cache-handler/experimental-redis-cluster` + +- Add `experimental-redis-cluster` Handler and related documentation. + +#### Improvements + +##### `@neshca/cache-handler/redis-stack` and `@neshca/cache-handler/redis-strings` + +- Improve documentation and JSDoc comments. diff --git a/docs/cache-handler-docs/src/pages/handlers/_meta.json b/docs/cache-handler-docs/src/pages/handlers/_meta.json index 45e5a182..136959c3 100644 --- a/docs/cache-handler-docs/src/pages/handlers/_meta.json +++ b/docs/cache-handler-docs/src/pages/handlers/_meta.json @@ -1,5 +1,6 @@ { "redis-stack": "redis-stack", "redis-strings": "redis-strings", - "local-lru": "local-lru" + "local-lru": "local-lru", + "experimental-redis-cluster": "experimental-redis-cluster" } diff --git a/docs/cache-handler-docs/src/pages/handlers/experimental-redis-cluster.mdx b/docs/cache-handler-docs/src/pages/handlers/experimental-redis-cluster.mdx new file mode 100644 index 00000000..1cf8c7b4 --- /dev/null +++ b/docs/cache-handler-docs/src/pages/handlers/experimental-redis-cluster.mdx @@ -0,0 +1,55 @@ +import { Callout } from 'nextra/components'; + +# `experimental-redis-cluster` Handler + +```js +import { createCluster } from 'redis'; +import createClusterHandler from '@neshca/cache-handler/experimental-redis-cluster'; + +const cluster = createCluster(clusterOptions); +await cluster.connect(); + +const redisHandler = createClusterHandler({ + cluster, + keyPrefix: 'JSON:', + timeoutMs: 1000, + keyExpirationStrategy: 'EXAT', + sharedTagsKey: '__sharedTags__', + revalidateTagQuerySize: 100, +}); +// ... +``` + + + This Handler is currently experimental and subject to change or removal in future updates without a major version + increment. Use with caution. + + +The `experimental-redis-cluster` Handler uses the Redis Cluster as the cache store. It is a simple and fast cache handler that is suitable for most applications. This Handler is ideal for applications that require fast and efficient cache management without the need for advanced features like full-text search for custom revalidation strategies. + +## API + +`@neshca/cache-handler/experimental-redis-cluster` exports a function that creates a new `Handler` instance for the `experimental-redis-cluster` Handler. + +### Parameters + +- `options` - An object containing the following properties: + - `cluster` - A Redis Cluster instance. + - `keyPrefix` - Optional. Prefix for all keys, useful for namespacing. Defaults to an empty string. + - `timeoutMs` - Optional. Timeout in milliseconds for Redis operations. Defaults to `5000`. For disabling timeouts, set it to `0`. + - `keyExpirationStrategy` - Optional. It allows you to choose the expiration strategy for cache keys. Defaults to `EXPRIREAT`. + - `sharedTagsKey` - Optional. Dedicated key for the internal revalidation process. It must not interfere with cache keys from your application. Defaults to `__sharedTags__`. + - `revalidateTagQuerySize` - Optional. The number of tags in a single query retrieved from Redis when scanning or searching for tags. Defaults to `100`. + +#### `keyExpirationStrategy` + +- `'EXAT'`: Uses the `EXAT` option of the `SET` command to set the expiration time. This is more efficient than `EXPIREAT`. Requires Redis server 6.2.0 or newer +- `'EXPIREAT'`: Uses the `EXPIREAT` command to set the expiration time. This requires an additional command call. Requires Redis server 4.0.0 or newer. + +#### `revalidateTagQuerySize` + +You can adjust this value to optimize the number of commands sent to Redis when scanning or searching for tags. A higher value will reduce the number of commands sent to Redis, but it will also increase the amount of data transferred over the network. Redis uses TCP and typically has 65,535 bytes as the maximum size of a packet (it can be lower depending on MTU). + +### Return value + +A new `Handler` instance for the `experimental-redis-cluster` Handler. diff --git a/docs/cache-handler-docs/src/pages/handlers/redis-stack.mdx b/docs/cache-handler-docs/src/pages/handlers/redis-stack.mdx index b0f4ab97..3866de72 100644 --- a/docs/cache-handler-docs/src/pages/handlers/redis-stack.mdx +++ b/docs/cache-handler-docs/src/pages/handlers/redis-stack.mdx @@ -3,9 +3,10 @@ import { Callout } from 'nextra/components'; # `redis-stack` Handler ```js +import { createClient } from 'redis'; import createRedisHandler from '@neshca/cache-handler/redis-stack'; -// ... +const client = createClient(clientOptions); await client.connect(); const redisHandler = await createRedisHandler({ @@ -14,7 +15,6 @@ const redisHandler = await createRedisHandler({ timeoutMs: 1000, revalidateTagQuerySize: 100, }); -// ... ``` The `redis-stack` Handler uses Redis with `RedisJSON` and `RedisSearch` modules as the cache store. It is a full-featured cache handler that supports JSON objects and full-text search, offering a trade-off between performance and flexibility. While it may sacrifice some speed compared to the [`redis-strings`](/handlers/redis-strings) Handler, it empowers you to manage cache on demand more efficiently and faster. It also allows for more versatile cache usage from your application, such as creating custom revalidating strategies and functions. The `redis-stack` Handler is suitable for applications that require advanced cache management and search capabilities. diff --git a/docs/cache-handler-docs/src/pages/handlers/redis-strings.mdx b/docs/cache-handler-docs/src/pages/handlers/redis-strings.mdx index b674526a..77312daf 100644 --- a/docs/cache-handler-docs/src/pages/handlers/redis-strings.mdx +++ b/docs/cache-handler-docs/src/pages/handlers/redis-strings.mdx @@ -1,20 +1,21 @@ # `redis-strings` Handler ```js +import { createClient } from 'redis'; import createRedisHandler from '@neshca/cache-handler/redis-strings'; -// ... +const client = createClient(clientOptions); + await client.connect(); const redisHandler = createRedisHandler({ client, - keyPrefix: 'JSON:', + keyPrefix: 'prefix:', timeoutMs: 1000, keyExpirationStrategy: 'EXAT', sharedTagsKey: '__sharedTags__', revalidateTagQuerySize: 100, }); -// ... ``` The `redis-strings` Handler uses plain Redis as the cache store. It is a simple and fast cache handler that is suitable for most applications. This Handler is ideal for applications that require fast and efficient cache management without the need for advanced features like full-text search for custom revalidation strategies. diff --git a/docs/cache-handler-docs/theme.config.jsx b/docs/cache-handler-docs/theme.config.jsx index 8d868dc9..151acc65 100644 --- a/docs/cache-handler-docs/theme.config.jsx +++ b/docs/cache-handler-docs/theme.config.jsx @@ -53,11 +53,20 @@ export default { ), }, banner: { - key: 'version-1.4.2', + key: 'version-1.5.0', text: (
- 🎉 1.4.2 is out! It features optimizations for the revalidateTag method in the redis-stack Handler and - the ability to disable Redis operations timeout in both redis-string and redis-stack Handlers! + 🎉 1.5.0 is out! It features the new{' '} + + experimental-redis-cluster + {' '} + Handler for Redis Cluster support!
), }, diff --git a/package-lock.json b/package-lock.json index 4ad19bde..61ef06ea 100644 --- a/package-lock.json +++ b/package-lock.json @@ -17585,6 +17585,7 @@ "version": "1.4.2", "license": "MIT", "dependencies": { + "cluster-key-slot": "1.1.2", "lru-cache": "10.3.0" }, "devDependencies": { diff --git a/packages/cache-handler/README.md b/packages/cache-handler/README.md index 6f572a2a..77956175 100644 --- a/packages/cache-handler/README.md +++ b/packages/cache-handler/README.md @@ -2,7 +2,7 @@ **Flexible API to replace the default Next.js cache, accommodating custom cache solutions for multi-instance self-hosted deployments** -🎉 1.4.2 is out! It features optimizations for the `revalidateTag` method in the `redis-stack` Handler and the ability to disable Redis operations timeout in both `redis-string` and `redis-stack` Handlers. Thanks to the community for their valuable contributions! +🎉 1.5.0 is out! It features the new [`experimental-redis-cluster`](https://caching-tools.github.io/next-shared-cache/handlers/experimental-redis-cluster) Handler for Redis Cluster support! Check out the [changelog](https://github.com/caching-tools/next-shared-cache/blob/canary/packages/cache-handler/CHANGELOG.md) diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index d85f44de..140a2c3c 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -73,6 +73,7 @@ "test:watch": "tsx --watch --test src/**/*.test.ts" }, "dependencies": { + "cluster-key-slot": "1.1.2", "lru-cache": "10.3.0" }, "devDependencies": { diff --git a/packages/cache-handler/src/handlers/experimental-redis-cluster.ts b/packages/cache-handler/src/handlers/experimental-redis-cluster.ts new file mode 100644 index 00000000..12bfcfbb --- /dev/null +++ b/packages/cache-handler/src/handlers/experimental-redis-cluster.ts @@ -0,0 +1,226 @@ +import calculate from 'cluster-key-slot'; +import type { createCluster } from 'redis'; +import type { CacheHandlerValue, Handler } from '../cache-handler'; +import type { CreateRedisStringsHandlerOptions } from '../common-types'; + +import { REVALIDATED_TAGS_KEY } from '../constants'; +import { getTimeoutRedisCommandOptions } from '../helpers/get-timeout-redis-command-options'; +import { isImplicitTag } from '../helpers/is-implicit-tag'; + +type CreateRedisClusterHandlerOptions> = CreateRedisStringsHandlerOptions & { + /** + * Use `cluster` instead of `client`. + */ + client: never; + /** + * The Redis cluster instance. + * + * @since 1.5.0 + */ + cluster: T; +}; + +function groupKeysBySlot(keys: string[]): Map { + const slotKeysMap: Map = new Map(); + + for (const key of keys) { + const slot = calculate(key); + + const slotKeys = slotKeysMap.get(slot); + + if (slotKeys) { + slotKeys.push(key); + } else { + slotKeysMap.set(slot, [key]); + } + } + + return slotKeysMap; +} + +/** + * Creates a Handler for handling cache operations using Redis Cluster. + * + * ⚠️ This Handler is currently experimental and subject to change + * or removal in future updates without a major version increment. + * Use with caution. + * + * This function initializes a Handler for managing cache operations using Redis. + * It supports Redis Cluster. The resulting Handler includes + * methods to get, set, and manage cache values fot on-demand revalidation. + * + * @param options - The configuration options for the Redis Handler. See {@link CreateRedisClusterHandlerOptions}. + * + * @returns An object representing the cache, with methods for cache operations. + * + * @example + * ```js + * const cluster = createCluster(clusterOptions); + * + * const clusterHandler = await createHandler({ + * cluster, + * keyPrefix: 'myApp:', + * }); + * ``` + * + * @remarks + * - the `get` method retrieves a value from the cache, automatically converting `Buffer` types when necessary. + * - the `set` method allows setting a value in the cache. + * - the `revalidateTag` methods are used for handling tag-based cache revalidation. + */ +export default function createHandler({ + cluster, + keyPrefix = '', + sharedTagsKey = '__sharedTags__', + timeoutMs = 5000, + keyExpirationStrategy = 'EXPIREAT', + revalidateTagQuerySize = 100, +}: CreateRedisClusterHandlerOptions): Handler { + const revalidatedTagsKey = keyPrefix + REVALIDATED_TAGS_KEY; + + return { + name: 'experimental-redis-cluster', + async get(key, { implicitTags }) { + const result = await cluster.get(getTimeoutRedisCommandOptions(timeoutMs), keyPrefix + key); + + if (!result) { + return null; + } + + const cacheValue = JSON.parse(result) as CacheHandlerValue | null; + + if (!cacheValue) { + return null; + } + + const combinedTags = new Set([...cacheValue.tags, ...implicitTags]); + + if (combinedTags.size === 0) { + return cacheValue; + } + + const revalidationTimes = await cluster.hmGet( + getTimeoutRedisCommandOptions(timeoutMs), + revalidatedTagsKey, + Array.from(combinedTags), + ); + + for (const timeString of revalidationTimes) { + if (timeString && Number.parseInt(timeString, 10) > cacheValue.lastModified) { + await cluster.unlink(getTimeoutRedisCommandOptions(timeoutMs), keyPrefix + key); + + return null; + } + } + + return cacheValue; + }, + async set(key, cacheHandlerValue) { + const options = getTimeoutRedisCommandOptions(timeoutMs); + + let setOperation: Promise; + + let expireOperation: Promise | undefined; + + switch (keyExpirationStrategy) { + case 'EXAT': { + setOperation = cluster.set( + options, + keyPrefix + key, + JSON.stringify(cacheHandlerValue), + typeof cacheHandlerValue.lifespan?.expireAt === 'number' + ? { + EXAT: cacheHandlerValue.lifespan.expireAt, + } + : undefined, + ); + break; + } + case 'EXPIREAT': { + setOperation = cluster.set(options, keyPrefix + key, JSON.stringify(cacheHandlerValue)); + + expireOperation = cacheHandlerValue.lifespan + ? cluster.expireAt(options, keyPrefix + key, cacheHandlerValue.lifespan.expireAt) + : undefined; + break; + } + } + + const setTagsOperation = cacheHandlerValue.tags.length + ? cluster.hSet(options, keyPrefix + sharedTagsKey, key, JSON.stringify(cacheHandlerValue.tags)) + : undefined; + + await Promise.all([setOperation, expireOperation, setTagsOperation]); + }, + async revalidateTag(tag) { + // If the tag is an implicit tag, we need to mark it as revalidated. + // The revalidation process is done by the CacheHandler class on the next get operation. + if (isImplicitTag(tag)) { + await cluster.hSet(getTimeoutRedisCommandOptions(timeoutMs), revalidatedTagsKey, tag, Date.now()); + } + + const tagsMap: Map = new Map(); + + let cursor = 0; + + const hScanOptions = { COUNT: revalidateTagQuerySize }; + + do { + const remoteTagsPortion = await cluster.hScan( + getTimeoutRedisCommandOptions(timeoutMs), + keyPrefix + sharedTagsKey, + cursor, + hScanOptions, + ); + + for (const { field, value } of remoteTagsPortion.tuples) { + tagsMap.set(field, JSON.parse(value)); + } + + cursor = remoteTagsPortion.cursor; + } while (cursor !== 0); + + const keysToDelete: string[] = []; + + const tagsToDelete: string[] = []; + + for (const [key, tags] of tagsMap) { + if (tags.includes(tag)) { + keysToDelete.push(keyPrefix + key); + tagsToDelete.push(key); + } + } + + if (keysToDelete.length === 0) { + return; + } + + const slotKeysMap = groupKeysBySlot(keysToDelete); + + const unlinkPromises: Promise[] = []; + + for (const [slot, keys] of slotKeysMap) { + const targetMasterNode = cluster.slots[slot]?.master; + const client = await targetMasterNode?.client; + + if (keys.length === 0 || !client) { + continue; + } + + const unlinkPromisesForSlot = client.unlink(getTimeoutRedisCommandOptions(timeoutMs), keys); + + if (unlinkPromisesForSlot) { + unlinkPromises.push(unlinkPromisesForSlot); + } + } + + const updateTagsOperation = cluster.hDel( + { isolated: true, ...getTimeoutRedisCommandOptions(timeoutMs) }, + keyPrefix + sharedTagsKey, + tagsToDelete, + ); + + await Promise.allSettled([...unlinkPromises, updateTagsOperation]); + }, + }; +} diff --git a/packages/cache-handler/src/handlers/redis-stack.ts b/packages/cache-handler/src/handlers/redis-stack.ts index 240399a5..d9423cde 100644 --- a/packages/cache-handler/src/handlers/redis-stack.ts +++ b/packages/cache-handler/src/handlers/redis-stack.ts @@ -9,11 +9,11 @@ import { isImplicitTag } from '../helpers/is-implicit-tag'; export type { CreateRedisStackHandlerOptions }; /** - * Creates a Handler using Redis client. + * Creates a Handler for handling cache operations using Redis JSON. * * This function initializes a Handler for managing cache operations using Redis. - * It supports Redis Client. The handler includes - * methods to get, set, and manage cache values and revalidated tags. + * It supports Redis Client. The resulting Handler includes + * methods to get, set, and manage cache values fot on-demand revalidation. * * @param options - The configuration options for the Redis Stack Handler. See {@link CreateRedisStackHandlerOptions}. * @@ -21,9 +21,10 @@ export type { CreateRedisStackHandlerOptions }; * * @example * ```js - * const redisClient = createRedisClient(...); - * const handler = await createHandler({ - * client: redisClient, + * const client = createClient(clientOptions); + * + * const redisHandler = await createHandler({ + * client, * keyPrefix: 'myApp:', * }); * ``` diff --git a/packages/cache-handler/src/handlers/redis-strings.ts b/packages/cache-handler/src/handlers/redis-strings.ts index 66530eda..42c65bf4 100644 --- a/packages/cache-handler/src/handlers/redis-strings.ts +++ b/packages/cache-handler/src/handlers/redis-strings.ts @@ -8,11 +8,11 @@ import { isImplicitTag } from '../helpers/is-implicit-tag'; export type { CreateRedisStringsHandlerOptions }; /** - * Creates a Handler using Redis client. + * Creates a Handler for handling cache operations using Redis strings. * * This function initializes a Handler for managing cache operations using Redis. - * It supports both Redis Client and Redis Cluster types. The handler includes - * methods to get, set, and manage cache values and revalidated tags. + * It supports Redis Client. The resulting Handler includes + * methods to get, set, and manage cache values fot on-demand revalidation. * * @param options - The configuration options for the Redis Handler. See {@link CreateRedisStringsHandlerOptions}. * @@ -20,9 +20,10 @@ export type { CreateRedisStringsHandlerOptions }; * * @example * ```js - * const redisClient = createRedisClient(...); - * const cache = await createHandler({ - * client: redisClient, + * const client = createClient(clientOptions); + * + * const redisHandler = await createHandler({ + * client, * keyPrefix: 'myApp:', * sharedTagsKey: 'myTags' * }); diff --git a/packages/cache-handler/tsup.config.ts b/packages/cache-handler/tsup.config.ts index 6a6e8324..e5fc86d3 100644 --- a/packages/cache-handler/tsup.config.ts +++ b/packages/cache-handler/tsup.config.ts @@ -9,5 +9,5 @@ export const tsup = defineConfig({ format: ['cjs', 'esm'], dts: { resolve: true }, target: 'node18', - noExternal: ['lru-cache'], + noExternal: ['lru-cache', 'cluster-key-slot'], }); From 893fea3b1b55ecc99bb8ca3371888e156c8dcc0f Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 23 Jul 2024 01:01:13 +0300 Subject: [PATCH 313/458] Version Packages (#661) Co-authored-by: github-actions[bot] --- .changeset/quick-dolphins-own.md | 17 ----------------- packages/cache-handler/CHANGELOG.md | 18 ++++++++++++++++++ packages/cache-handler/package.json | 2 +- 3 files changed, 19 insertions(+), 18 deletions(-) delete mode 100644 .changeset/quick-dolphins-own.md diff --git a/.changeset/quick-dolphins-own.md b/.changeset/quick-dolphins-own.md deleted file mode 100644 index 1fd3f909..00000000 --- a/.changeset/quick-dolphins-own.md +++ /dev/null @@ -1,17 +0,0 @@ ---- -'@neshca/cache-handler': minor ---- - -Add `experimental-redis-cluster` Handler. - -#### New Features - -##### `@neshca/cache-handler/experimental-redis-cluster` - -- Add `experimental-redis-cluster` Handler and related documentation. - -#### Improvements - -##### `@neshca/cache-handler/redis-stack` and `@neshca/cache-handler/redis-strings` - -- Improve documentation and JSDoc comments. diff --git a/packages/cache-handler/CHANGELOG.md b/packages/cache-handler/CHANGELOG.md index be13f727..66793838 100644 --- a/packages/cache-handler/CHANGELOG.md +++ b/packages/cache-handler/CHANGELOG.md @@ -1,5 +1,23 @@ # @neshca/cache-handler +## 1.5.0 + +### Minor Changes + +- 6558891: Add `experimental-redis-cluster` Handler. + + #### New Features + + ##### `@neshca/cache-handler/experimental-redis-cluster` + + - Add `experimental-redis-cluster` Handler and related documentation. + + #### Improvements + + ##### `@neshca/cache-handler/redis-stack` and `@neshca/cache-handler/redis-strings` + + - Improve documentation and JSDoc comments. + ## 1.4.2 ### Patch Changes diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 140a2c3c..b5f4e4bc 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -1,6 +1,6 @@ { "name": "@neshca/cache-handler", - "version": "1.4.2", + "version": "1.5.0", "description": "Next.js self-hosting simplified.", "keywords": [ "cache", From 508cd8b5990a9475d8b00f45adc6b52c13efa6db Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 23 Jul 2024 10:11:36 +0300 Subject: [PATCH 314/458] Bump @playwright/test from 1.45.2 to 1.45.3 (#658) Bumps [@playwright/test](https://github.com/microsoft/playwright) from 1.45.2 to 1.45.3. - [Release notes](https://github.com/microsoft/playwright/releases) - [Commits](https://github.com/microsoft/playwright/compare/v1.45.2...v1.45.3) --- updated-dependencies: - dependency-name: "@playwright/test" dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- package-lock.json | 24 ++++++++++++------------ 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 9281d5f8..98d9fb7f 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -24,7 +24,7 @@ "devDependencies": { "@neshca/cache-handler": "*", "@next/eslint-plugin-next": "14.3.0-canary.44", - "@playwright/test": "1.45.2", + "@playwright/test": "1.45.3", "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", diff --git a/package-lock.json b/package-lock.json index 61ef06ea..fccfc726 100644 --- a/package-lock.json +++ b/package-lock.json @@ -44,7 +44,7 @@ "devDependencies": { "@neshca/cache-handler": "*", "@next/eslint-plugin-next": "14.3.0-canary.44", - "@playwright/test": "1.45.2", + "@playwright/test": "1.45.3", "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", @@ -3528,12 +3528,12 @@ } }, "node_modules/@playwright/test": { - "version": "1.45.2", - "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.45.2.tgz", - "integrity": "sha512-JxG9eq92ET75EbVi3s+4sYbcG7q72ECeZNbdBlaMkGcNbiDQ4cAi8U2QP5oKkOx+1gpaiL1LDStmzCaEM1Z6fQ==", + "version": "1.45.3", + "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.45.3.tgz", + "integrity": "sha512-UKF4XsBfy+u3MFWEH44hva1Q8Da28G6RFtR2+5saw+jgAFQV5yYnB1fu68Mz7fO+5GJF3wgwAIs0UelU8TxFrA==", "devOptional": true, "dependencies": { - "playwright": "1.45.2" + "playwright": "1.45.3" }, "bin": { "playwright": "cli.js" @@ -13264,12 +13264,12 @@ } }, "node_modules/playwright": { - "version": "1.45.2", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.45.2.tgz", - "integrity": "sha512-ReywF2t/0teRvNBpfIgh5e4wnrI/8Su8ssdo5XsQKpjxJj+jspm00jSoz9BTg91TT0c9HRjXO7LBNVrgYj9X0g==", + "version": "1.45.3", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.45.3.tgz", + "integrity": "sha512-QhVaS+lpluxCaioejDZ95l4Y4jSFCsBvl2UZkpeXlzxmqS+aABr5c82YmfMHrL6x27nvrvykJAFpkzT2eWdJww==", "devOptional": true, "dependencies": { - "playwright-core": "1.45.2" + "playwright-core": "1.45.3" }, "bin": { "playwright": "cli.js" @@ -13282,9 +13282,9 @@ } }, "node_modules/playwright-core": { - "version": "1.45.2", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.45.2.tgz", - "integrity": "sha512-ha175tAWb0dTK0X4orvBIqi3jGEt701SMxMhyujxNrgd8K0Uy5wMSwwcQHtyB4om7INUkfndx02XnQ2p6dvLDw==", + "version": "1.45.3", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.45.3.tgz", + "integrity": "sha512-+ym0jNbcjikaOwwSZycFbwkWgfruWvYlJfThKYAlImbxUgdWFO2oW70ojPm4OpE4t6TAo2FY/smM+hpVTtkhDA==", "devOptional": true, "bin": { "playwright-core": "cli.js" From 5cc1000617fab6a50d49853e9fe47604d05ca278 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 23 Jul 2024 12:07:49 +0300 Subject: [PATCH 315/458] Bump tsup from 8.2.1 to 8.2.2 (#659) Bumps [tsup](https://github.com/egoist/tsup) from 8.2.1 to 8.2.2. - [Release notes](https://github.com/egoist/tsup/releases) - [Changelog](https://github.com/egoist/tsup/blob/dev/.releaserc.json) - [Commits](https://github.com/egoist/tsup/compare/v8.2.1...v8.2.2) --- updated-dependencies: - dependency-name: tsup dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 181 +++++++++----------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 5 files changed, 81 insertions(+), 108 deletions(-) diff --git a/package-lock.json b/package-lock.json index fccfc726..f7bad5d7 100644 --- a/package-lock.json +++ b/package-lock.json @@ -3851,9 +3851,9 @@ "link": true }, "node_modules/@rollup/rollup-android-arm-eabi": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.18.1.tgz", - "integrity": "sha512-lncuC4aHicncmbORnx+dUaAgzee9cm/PbIqgWz1PpXuwc+sa1Ct83tnqUDy/GFKleLiN7ZIeytM6KJ4cAn1SxA==", + "version": "4.19.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.19.0.tgz", + "integrity": "sha512-JlPfZ/C7yn5S5p0yKk7uhHTTnFlvTgLetl2VxqE518QgyM7C9bSfFTYvB/Q/ftkq0RIPY4ySxTz+/wKJ/dXC0w==", "cpu": [ "arm" ], @@ -3864,9 +3864,9 @@ ] }, "node_modules/@rollup/rollup-android-arm64": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.18.1.tgz", - "integrity": "sha512-F/tkdw0WSs4ojqz5Ovrw5r9odqzFjb5LIgHdHZG65dFI1lWTWRVy32KDJLKRISHgJvqUeUhdIvy43fX41znyDg==", + "version": "4.19.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.19.0.tgz", + "integrity": "sha512-RDxUSY8D1tWYfn00DDi5myxKgOk6RvWPxhmWexcICt/MEC6yEMr4HNCu1sXXYLw8iAsg0D44NuU+qNq7zVWCrw==", "cpu": [ "arm64" ], @@ -3877,9 +3877,9 @@ ] }, "node_modules/@rollup/rollup-darwin-arm64": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.18.1.tgz", - "integrity": "sha512-vk+ma8iC1ebje/ahpxpnrfVQJibTMyHdWpOGZ3JpQ7Mgn/3QNHmPq7YwjZbIE7km73dH5M1e6MRRsnEBW7v5CQ==", + "version": "4.19.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.19.0.tgz", + "integrity": "sha512-emvKHL4B15x6nlNTBMtIaC9tLPRpeA5jMvRLXVbl/W9Ie7HhkrE7KQjvgS9uxgatL1HmHWDXk5TTS4IaNJxbAA==", "cpu": [ "arm64" ], @@ -3890,9 +3890,9 @@ ] }, "node_modules/@rollup/rollup-darwin-x64": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.18.1.tgz", - "integrity": "sha512-IgpzXKauRe1Tafcej9STjSSuG0Ghu/xGYH+qG6JwsAUxXrnkvNHcq/NL6nz1+jzvWAnQkuAJ4uIwGB48K9OCGA==", + "version": "4.19.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.19.0.tgz", + "integrity": "sha512-fO28cWA1dC57qCd+D0rfLC4VPbh6EOJXrreBmFLWPGI9dpMlER2YwSPZzSGfq11XgcEpPukPTfEVFtw2q2nYJg==", "cpu": [ "x64" ], @@ -3903,9 +3903,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm-gnueabihf": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.18.1.tgz", - "integrity": "sha512-P9bSiAUnSSM7EmyRK+e5wgpqai86QOSv8BwvkGjLwYuOpaeomiZWifEos517CwbG+aZl1T4clSE1YqqH2JRs+g==", + "version": "4.19.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.19.0.tgz", + "integrity": "sha512-2Rn36Ubxdv32NUcfm0wB1tgKqkQuft00PtM23VqLuCUR4N5jcNWDoV5iBC9jeGdgS38WK66ElncprqgMUOyomw==", "cpu": [ "arm" ], @@ -3916,9 +3916,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm-musleabihf": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.18.1.tgz", - "integrity": "sha512-5RnjpACoxtS+aWOI1dURKno11d7krfpGDEn19jI8BuWmSBbUC4ytIADfROM1FZrFhQPSoP+KEa3NlEScznBTyQ==", + "version": "4.19.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.19.0.tgz", + "integrity": "sha512-gJuzIVdq/X1ZA2bHeCGCISe0VWqCoNT8BvkQ+BfsixXwTOndhtLUpOg0A1Fcx/+eA6ei6rMBzlOz4JzmiDw7JQ==", "cpu": [ "arm" ], @@ -3929,9 +3929,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-gnu": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.18.1.tgz", - "integrity": "sha512-8mwmGD668m8WaGbthrEYZ9CBmPug2QPGWxhJxh/vCgBjro5o96gL04WLlg5BA233OCWLqERy4YUzX3bJGXaJgQ==", + "version": "4.19.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.19.0.tgz", + "integrity": "sha512-0EkX2HYPkSADo9cfeGFoQ7R0/wTKb7q6DdwI4Yn/ULFE1wuRRCHybxpl2goQrx4c/yzK3I8OlgtBu4xvted0ug==", "cpu": [ "arm64" ], @@ -3942,9 +3942,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-musl": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.18.1.tgz", - "integrity": "sha512-dJX9u4r4bqInMGOAQoGYdwDP8lQiisWb9et+T84l2WXk41yEej8v2iGKodmdKimT8cTAYt0jFb+UEBxnPkbXEQ==", + "version": "4.19.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.19.0.tgz", + "integrity": "sha512-GlIQRj9px52ISomIOEUq/IojLZqzkvRpdP3cLgIE1wUWaiU5Takwlzpz002q0Nxxr1y2ZgxC2obWxjr13lvxNQ==", "cpu": [ "arm64" ], @@ -3955,9 +3955,9 @@ ] }, "node_modules/@rollup/rollup-linux-powerpc64le-gnu": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.18.1.tgz", - "integrity": "sha512-V72cXdTl4EI0x6FNmho4D502sy7ed+LuVW6Ym8aI6DRQ9hQZdp5sj0a2usYOlqvFBNKQnLQGwmYnujo2HvjCxQ==", + "version": "4.19.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.19.0.tgz", + "integrity": "sha512-N6cFJzssruDLUOKfEKeovCKiHcdwVYOT1Hs6dovDQ61+Y9n3Ek4zXvtghPPelt6U0AH4aDGnDLb83uiJMkWYzQ==", "cpu": [ "ppc64" ], @@ -3968,9 +3968,9 @@ ] }, "node_modules/@rollup/rollup-linux-riscv64-gnu": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.18.1.tgz", - "integrity": "sha512-f+pJih7sxoKmbjghrM2RkWo2WHUW8UbfxIQiWo5yeCaCM0TveMEuAzKJte4QskBp1TIinpnRcxkquY+4WuY/tg==", + "version": "4.19.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.19.0.tgz", + "integrity": "sha512-2DnD3mkS2uuam/alF+I7M84koGwvn3ZVD7uG+LEWpyzo/bq8+kKnus2EVCkcvh6PlNB8QPNFOz6fWd5N8o1CYg==", "cpu": [ "riscv64" ], @@ -3981,9 +3981,9 @@ ] }, "node_modules/@rollup/rollup-linux-s390x-gnu": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.18.1.tgz", - "integrity": "sha512-qb1hMMT3Fr/Qz1OKovCuUM11MUNLUuHeBC2DPPAWUYYUAOFWaxInaTwTQmc7Fl5La7DShTEpmYwgdt2hG+4TEg==", + "version": "4.19.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.19.0.tgz", + "integrity": "sha512-D6pkaF7OpE7lzlTOFCB2m3Ngzu2ykw40Nka9WmKGUOTS3xcIieHe82slQlNq69sVB04ch73thKYIWz/Ian8DUA==", "cpu": [ "s390x" ], @@ -3994,9 +3994,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-gnu": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.18.1.tgz", - "integrity": "sha512-7O5u/p6oKUFYjRbZkL2FLbwsyoJAjyeXHCU3O4ndvzg2OFO2GinFPSJFGbiwFDaCFc+k7gs9CF243PwdPQFh5g==", + "version": "4.19.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.19.0.tgz", + "integrity": "sha512-HBndjQLP8OsdJNSxpNIN0einbDmRFg9+UQeZV1eiYupIRuZsDEoeGU43NQsS34Pp166DtwQOnpcbV/zQxM+rWA==", "cpu": [ "x64" ], @@ -4007,9 +4007,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-musl": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.18.1.tgz", - "integrity": "sha512-pDLkYITdYrH/9Cv/Vlj8HppDuLMDUBmgsM0+N+xLtFd18aXgM9Nyqupb/Uw+HeidhfYg2lD6CXvz6CjoVOaKjQ==", + "version": "4.19.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.19.0.tgz", + "integrity": "sha512-HxfbvfCKJe/RMYJJn0a12eiOI9OOtAUF4G6ozrFUK95BNyoJaSiBjIOHjZskTUffUrB84IPKkFG9H9nEvJGW6A==", "cpu": [ "x64" ], @@ -4020,9 +4020,9 @@ ] }, "node_modules/@rollup/rollup-win32-arm64-msvc": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.18.1.tgz", - "integrity": "sha512-W2ZNI323O/8pJdBGil1oCauuCzmVd9lDmWBBqxYZcOqWD6aWqJtVBQ1dFrF4dYpZPks6F+xCZHfzG5hYlSHZ6g==", + "version": "4.19.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.19.0.tgz", + "integrity": "sha512-HxDMKIhmcguGTiP5TsLNolwBUK3nGGUEoV/BO9ldUBoMLBssvh4J0X8pf11i1fTV7WShWItB1bKAKjX4RQeYmg==", "cpu": [ "arm64" ], @@ -4033,9 +4033,9 @@ ] }, "node_modules/@rollup/rollup-win32-ia32-msvc": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.18.1.tgz", - "integrity": "sha512-ELfEX1/+eGZYMaCIbK4jqLxO1gyTSOIlZr6pbC4SRYFaSIDVKOnZNMdoZ+ON0mrFDp4+H5MhwNC1H/AhE3zQLg==", + "version": "4.19.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.19.0.tgz", + "integrity": "sha512-xItlIAZZaiG/u0wooGzRsx11rokP4qyc/79LkAOdznGRAbOFc+SfEdfUOszG1odsHNgwippUJavag/+W/Etc6Q==", "cpu": [ "ia32" ], @@ -4046,9 +4046,9 @@ ] }, "node_modules/@rollup/rollup-win32-x64-msvc": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.18.1.tgz", - "integrity": "sha512-yjk2MAkQmoaPYCSu35RLJ62+dz358nE83VfTePJRp8CG7aMg25mEJYpXFiD+NcevhX8LxD5OP5tktPXnXN7GDw==", + "version": "4.19.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.19.0.tgz", + "integrity": "sha512-xNo5fV5ycvCCKqiZcpB65VMR11NJB+StnxHz20jdqRAktfdfzhgjTiJ2doTDQE/7dqGaV5I7ZGqKpgph6lCIag==", "cpu": [ "x64" ], @@ -14507,9 +14507,9 @@ "integrity": "sha512-IXgzBWvWQwE6PrDI05OvmXUIruQTcoMDzRsOd5CDvHCVLcLHMTSYvOK5Cm46kWqlV3yAbuSpBZdJ5oP5OUoStg==" }, "node_modules/rollup": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.18.1.tgz", - "integrity": "sha512-Elx2UT8lzxxOXMpy5HWQGZqkrQOtrVDDa/bm9l10+U4rQnVzbL/LgZ4NOM1MPIDyHk69W4InuYDF5dzRh4Kw1A==", + "version": "4.19.0", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.19.0.tgz", + "integrity": "sha512-5r7EYSQIowHsK4eTZ0Y81qpZuJz+MUuYeqmmYmRMl1nwhdmbiYqt5jwzf6u7wyOzJgYqtCRMtVRKOtHANBz7rA==", "dev": true, "dependencies": { "@types/estree": "1.0.5" @@ -14522,22 +14522,22 @@ "npm": ">=8.0.0" }, "optionalDependencies": { - "@rollup/rollup-android-arm-eabi": "4.18.1", - "@rollup/rollup-android-arm64": "4.18.1", - "@rollup/rollup-darwin-arm64": "4.18.1", - "@rollup/rollup-darwin-x64": "4.18.1", - "@rollup/rollup-linux-arm-gnueabihf": "4.18.1", - "@rollup/rollup-linux-arm-musleabihf": "4.18.1", - "@rollup/rollup-linux-arm64-gnu": "4.18.1", - "@rollup/rollup-linux-arm64-musl": "4.18.1", - "@rollup/rollup-linux-powerpc64le-gnu": "4.18.1", - "@rollup/rollup-linux-riscv64-gnu": "4.18.1", - "@rollup/rollup-linux-s390x-gnu": "4.18.1", - "@rollup/rollup-linux-x64-gnu": "4.18.1", - "@rollup/rollup-linux-x64-musl": "4.18.1", - "@rollup/rollup-win32-arm64-msvc": "4.18.1", - "@rollup/rollup-win32-ia32-msvc": "4.18.1", - "@rollup/rollup-win32-x64-msvc": "4.18.1", + "@rollup/rollup-android-arm-eabi": "4.19.0", + "@rollup/rollup-android-arm64": "4.19.0", + "@rollup/rollup-darwin-arm64": "4.19.0", + "@rollup/rollup-darwin-x64": "4.19.0", + "@rollup/rollup-linux-arm-gnueabihf": "4.19.0", + "@rollup/rollup-linux-arm-musleabihf": "4.19.0", + "@rollup/rollup-linux-arm64-gnu": "4.19.0", + "@rollup/rollup-linux-arm64-musl": "4.19.0", + "@rollup/rollup-linux-powerpc64le-gnu": "4.19.0", + "@rollup/rollup-linux-riscv64-gnu": "4.19.0", + "@rollup/rollup-linux-s390x-gnu": "4.19.0", + "@rollup/rollup-linux-x64-gnu": "4.19.0", + "@rollup/rollup-linux-x64-musl": "4.19.0", + "@rollup/rollup-win32-arm64-msvc": "4.19.0", + "@rollup/rollup-win32-ia32-msvc": "4.19.0", + "@rollup/rollup-win32-x64-msvc": "4.19.0", "fsevents": "~2.3.2" } }, @@ -15859,9 +15859,9 @@ "integrity": "sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ==" }, "node_modules/tsup": { - "version": "8.2.1", - "resolved": "https://registry.npmjs.org/tsup/-/tsup-8.2.1.tgz", - "integrity": "sha512-ArA/s1GvXbovrnNeTtLphz7D2+OiFVCARviT8RmnWxFdH44dFt8v2tqz54MjJyqZC+QgjKjRuTlWKvC3CkAq3Q==", + "version": "8.2.2", + "resolved": "https://registry.npmjs.org/tsup/-/tsup-8.2.2.tgz", + "integrity": "sha512-MufIuzdSt6HYPOeOtjUXLR4rqRJySi6XsRNZdwvjC2XR+xghsu2L3vSmYmX+k4S1mO6j0OlUEyVQ3Fc0H66XcA==", "dev": true, "dependencies": { "bundle-require": "^5.0.0", @@ -15871,13 +15871,12 @@ "debug": "^4.3.5", "esbuild": "^0.23.0", "execa": "^5.1.1", - "fdir": "^6.1.1", + "globby": "^11.1.0", "joycon": "^3.1.1", "picocolors": "^1.0.1", - "picomatch": "^4.0.2", "postcss-load-config": "^6.0.1", "resolve-from": "^5.0.0", - "rollup": "^4.18.1", + "rollup": "^4.19.0", "source-map": "0.8.0-beta.0", "sucrase": "^3.35.0", "tree-kill": "^1.2.2" @@ -16340,20 +16339,6 @@ "url": "https://github.com/sindresorhus/execa?sponsor=1" } }, - "node_modules/tsup/node_modules/fdir": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.1.1.tgz", - "integrity": "sha512-QfKBVg453Dyn3mr0Q0O+Tkr1r79lOTAKSi9f/Ot4+qVEwxWhav2Z+SudrG9vQjM2aYRMQQZ2/Q1zdA8ACM1pDg==", - "dev": true, - "peerDependencies": { - "picomatch": "3.x" - }, - "peerDependenciesMeta": { - "picomatch": { - "optional": true - } - } - }, "node_modules/tsup/node_modules/get-stream": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", @@ -16390,18 +16375,6 @@ "node": ">=8" } }, - "node_modules/tsup/node_modules/picomatch": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.2.tgz", - "integrity": "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, "node_modules/tsup/node_modules/signal-exit": { "version": "3.0.7", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", @@ -17582,7 +17555,7 @@ }, "packages/cache-handler": { "name": "@neshca/cache-handler", - "version": "1.4.2", + "version": "1.5.0", "license": "MIT", "dependencies": { "cluster-key-slot": "1.1.2", @@ -17594,7 +17567,7 @@ "@repo/typescript-config": "*", "@types/node": "20.14.11", "rimraf": "6.0.1", - "tsup": "8.2.1", + "tsup": "8.2.2", "tsx": "4.16.2", "typescript": "5.5.3" }, @@ -17613,7 +17586,7 @@ "@repo/typescript-config": "*", "@types/node": "20.14.11", "rimraf": "6.0.1", - "tsup": "8.2.1", + "tsup": "8.2.2", "typescript": "5.5.3" }, "peerDependencies": { @@ -17629,7 +17602,7 @@ "@repo/typescript-config": "*", "@types/node": "20.14.11", "rimraf": "6.0.1", - "tsup": "8.2.1", + "tsup": "8.2.2", "tsx": "4.16.2", "typescript": "5.5.3" } @@ -17651,7 +17624,7 @@ "@repo/typescript-config": "*", "@types/node": "20.14.11", "rimraf": "6.0.1", - "tsup": "8.2.1", + "tsup": "8.2.2", "tsx": "4.16.2", "typescript": "5.5.3" } diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index b5f4e4bc..6a6f966f 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -82,7 +82,7 @@ "@repo/typescript-config": "*", "@types/node": "20.14.11", "rimraf": "6.0.1", - "tsup": "8.2.1", + "tsup": "8.2.2", "tsx": "4.16.2", "typescript": "5.5.3" }, diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index eee8b33a..60548fa1 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -27,7 +27,7 @@ "@repo/typescript-config": "*", "@types/node": "20.14.11", "rimraf": "6.0.1", - "tsup": "8.2.1", + "tsup": "8.2.2", "typescript": "5.5.3" }, "peerDependencies": { diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 4ca15295..cb079664 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -30,7 +30,7 @@ "@repo/typescript-config": "*", "@types/node": "20.14.11", "rimraf": "6.0.1", - "tsup": "8.2.1", + "tsup": "8.2.2", "tsx": "4.16.2", "typescript": "5.5.3" } diff --git a/packages/server/package.json b/packages/server/package.json index c01c6dac..3ac6a266 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -34,7 +34,7 @@ "@repo/typescript-config": "*", "@types/node": "20.14.11", "rimraf": "6.0.1", - "tsup": "8.2.1", + "tsup": "8.2.2", "tsx": "4.16.2", "typescript": "5.5.3" }, From a26ea2a4fe1b47f9fda0ce35cf1aea5adc592203 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 24 Jul 2024 11:05:41 +0300 Subject: [PATCH 316/458] Bump @types/node from 20.14.11 to 20.14.12 in the definitely-typed group (#662) Bumps the definitely-typed group with 1 update: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node). Updates `@types/node` from 20.14.11 to 20.14.12 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) --- updated-dependencies: - dependency-name: "@types/node" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- internal/backend/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 24 ++++++++++----------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 10 files changed, 21 insertions(+), 21 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 98d9fb7f..cd2aaeb3 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -28,7 +28,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "20.14.11", + "@types/node": "20.14.12", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "axios": "1.7.2", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index ea58d83e..9db4255d 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -22,7 +22,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "20.14.11", + "@types/node": "20.14.12", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "eslint": "8.57.0", diff --git a/internal/backend/package.json b/internal/backend/package.json index 94fd86ad..8608f96d 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.11", + "@types/node": "20.14.12", "pino-pretty": "11.2.1", "rimraf": "6.0.1", "tsx": "4.16.2", diff --git a/internal/next-common/package.json b/internal/next-common/package.json index d0335c7e..f71cc672 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.11", + "@types/node": "20.14.12", "rimraf": "6.0.1", "typescript": "5.5.3" } diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index 4ad87fba..b59b2c2c 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -16,7 +16,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "20.14.11", + "@types/node": "20.14.12", "rimraf": "6.0.1", "typescript": "5.5.3" } diff --git a/package-lock.json b/package-lock.json index f7bad5d7..168d5347 100644 --- a/package-lock.json +++ b/package-lock.json @@ -48,7 +48,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "20.14.11", + "@types/node": "20.14.12", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "axios": "1.7.2", @@ -126,7 +126,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "20.14.11", + "@types/node": "20.14.12", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "eslint": "8.57.0", @@ -452,7 +452,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.11", + "@types/node": "20.14.12", "pino-pretty": "11.2.1", "rimraf": "6.0.1", "tsx": "4.16.2", @@ -591,7 +591,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.11", + "@types/node": "20.14.12", "rimraf": "6.0.1", "typescript": "5.5.3" } @@ -804,7 +804,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "20.14.11", + "@types/node": "20.14.12", "rimraf": "6.0.1", "typescript": "5.5.3" } @@ -4235,9 +4235,9 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "20.14.11", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.11.tgz", - "integrity": "sha512-kprQpL8MMeszbz6ojB5/tU8PLN4kesnN8Gjzw349rDlNgsSzg90lAVj3llK99Dh7JON+t9AuscPPFW6mPbTnSA==", + "version": "20.14.12", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.12.tgz", + "integrity": "sha512-r7wNXakLeSsGT0H1AU863vS2wa5wBOK4bWMjZz2wj+8nBx+m5PeIn0k8AloSLpRuiwdRQZwarZqHE4FNArPuJQ==", "dependencies": { "undici-types": "~5.26.4" } @@ -17565,7 +17565,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.14.11", + "@types/node": "20.14.12", "rimraf": "6.0.1", "tsup": "8.2.2", "tsx": "4.16.2", @@ -17584,7 +17584,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.11", + "@types/node": "20.14.12", "rimraf": "6.0.1", "tsup": "8.2.2", "typescript": "5.5.3" @@ -17600,7 +17600,7 @@ "license": "MIT", "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.11", + "@types/node": "20.14.12", "rimraf": "6.0.1", "tsup": "8.2.2", "tsx": "4.16.2", @@ -17622,7 +17622,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.14.11", + "@types/node": "20.14.12", "rimraf": "6.0.1", "tsup": "8.2.2", "tsx": "4.16.2", diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 6a6f966f..45f7dd82 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -80,7 +80,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.14.11", + "@types/node": "20.14.12", "rimraf": "6.0.1", "tsup": "8.2.2", "tsx": "4.16.2", diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index 60548fa1..fb30ddb6 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -25,7 +25,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.11", + "@types/node": "20.14.12", "rimraf": "6.0.1", "tsup": "8.2.2", "typescript": "5.5.3" diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index cb079664..f362a595 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -28,7 +28,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.11", + "@types/node": "20.14.12", "rimraf": "6.0.1", "tsup": "8.2.2", "tsx": "4.16.2", diff --git a/packages/server/package.json b/packages/server/package.json index 3ac6a266..f45059e6 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -32,7 +32,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.14.11", + "@types/node": "20.14.12", "rimraf": "6.0.1", "tsup": "8.2.2", "tsx": "4.16.2", From 33bc7058583549bcb668188b47eff8c8017bc340 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 24 Jul 2024 08:15:31 +0000 Subject: [PATCH 317/458] Bump typescript from 5.5.3 to 5.5.4 (#663) --- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- internal/backend/package.json | 2 +- internal/eslint-config/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 26 ++++++++++----------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 11 files changed, 23 insertions(+), 23 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index cd2aaeb3..3ef9e63d 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -39,6 +39,6 @@ "redis": "4.6.15", "rimraf": "6.0.1", "tsx": "4.16.2", - "typescript": "5.5.3" + "typescript": "5.5.4" } } diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 9db4255d..8b939320 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -26,6 +26,6 @@ "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "eslint": "8.57.0", - "typescript": "5.5.3" + "typescript": "5.5.4" } } diff --git a/internal/backend/package.json b/internal/backend/package.json index 8608f96d..476e926f 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -19,6 +19,6 @@ "pino-pretty": "11.2.1", "rimraf": "6.0.1", "tsx": "4.16.2", - "typescript": "5.5.3" + "typescript": "5.5.4" } } diff --git a/internal/eslint-config/package.json b/internal/eslint-config/package.json index 540640ca..3a8a07da 100644 --- a/internal/eslint-config/package.json +++ b/internal/eslint-config/package.json @@ -12,6 +12,6 @@ "eslint-config-prettier": "9.1.0", "eslint-config-turbo": "2.0.9", "eslint-plugin-only-warn": "1.1.0", - "typescript": "5.5.3" + "typescript": "5.5.4" } } diff --git a/internal/next-common/package.json b/internal/next-common/package.json index f71cc672..8d235e39 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -17,6 +17,6 @@ "@repo/typescript-config": "*", "@types/node": "20.14.12", "rimraf": "6.0.1", - "typescript": "5.5.3" + "typescript": "5.5.4" } } diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index b59b2c2c..6a0ad357 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -18,6 +18,6 @@ "@repo/typescript-config": "*", "@types/node": "20.14.12", "rimraf": "6.0.1", - "typescript": "5.5.3" + "typescript": "5.5.4" } } diff --git a/package-lock.json b/package-lock.json index 168d5347..d105b2d8 100644 --- a/package-lock.json +++ b/package-lock.json @@ -59,7 +59,7 @@ "redis": "4.6.15", "rimraf": "6.0.1", "tsx": "4.16.2", - "typescript": "5.5.3" + "typescript": "5.5.4" } }, "apps/cache-testing/node_modules/next": { @@ -130,7 +130,7 @@ "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "eslint": "8.57.0", - "typescript": "5.5.3" + "typescript": "5.5.4" } }, "docs/cache-handler-docs/node_modules/@next/env": { @@ -456,7 +456,7 @@ "pino-pretty": "11.2.1", "rimraf": "6.0.1", "tsx": "4.16.2", - "typescript": "5.5.3" + "typescript": "5.5.4" } }, "internal/eslint-config": { @@ -469,7 +469,7 @@ "eslint-config-prettier": "9.1.0", "eslint-config-turbo": "2.0.9", "eslint-plugin-only-warn": "1.1.0", - "typescript": "5.5.3" + "typescript": "5.5.4" } }, "internal/eslint-config/node_modules/@next/eslint-plugin-next": { @@ -593,7 +593,7 @@ "@repo/typescript-config": "*", "@types/node": "20.14.12", "rimraf": "6.0.1", - "typescript": "5.5.3" + "typescript": "5.5.4" } }, "internal/next-common/node_modules/@next/env": { @@ -806,7 +806,7 @@ "@repo/typescript-config": "*", "@types/node": "20.14.12", "rimraf": "6.0.1", - "typescript": "5.5.3" + "typescript": "5.5.4" } }, "internal/prettier-config": { @@ -16694,9 +16694,9 @@ } }, "node_modules/typescript": { - "version": "5.5.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.5.3.tgz", - "integrity": "sha512-/hreyEujaB0w76zKo6717l3L0o/qEUtRgdvUBvlkhoWeOVMjMuHNHk0BRBzikzuGDqNmPQbg5ifMEqsHLiIUcQ==", + "version": "5.5.4", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.5.4.tgz", + "integrity": "sha512-Mtq29sKDAEYP7aljRgtPOpTvOfbwRWlS6dPRzwjdE+C0R4brX/GUyhHSecbHMFLNBLcJIPt9nl9yG5TZ1weH+Q==", "dev": true, "bin": { "tsc": "bin/tsc", @@ -17569,7 +17569,7 @@ "rimraf": "6.0.1", "tsup": "8.2.2", "tsx": "4.16.2", - "typescript": "5.5.3" + "typescript": "5.5.4" }, "peerDependencies": { "next": ">=13.5.1", @@ -17587,7 +17587,7 @@ "@types/node": "20.14.12", "rimraf": "6.0.1", "tsup": "8.2.2", - "typescript": "5.5.3" + "typescript": "5.5.4" }, "peerDependencies": { "dotenv": "^16.3.1", @@ -17604,7 +17604,7 @@ "rimraf": "6.0.1", "tsup": "8.2.2", "tsx": "4.16.2", - "typescript": "5.5.3" + "typescript": "5.5.4" } }, "packages/server": { @@ -17626,7 +17626,7 @@ "rimraf": "6.0.1", "tsup": "8.2.2", "tsx": "4.16.2", - "typescript": "5.5.3" + "typescript": "5.5.4" } } } diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 45f7dd82..ac3ad4cf 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -84,7 +84,7 @@ "rimraf": "6.0.1", "tsup": "8.2.2", "tsx": "4.16.2", - "typescript": "5.5.3" + "typescript": "5.5.4" }, "peerDependencies": { "next": ">=13.5.1", diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index fb30ddb6..61f4311d 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -28,7 +28,7 @@ "@types/node": "20.14.12", "rimraf": "6.0.1", "tsup": "8.2.2", - "typescript": "5.5.3" + "typescript": "5.5.4" }, "peerDependencies": { "dotenv": "^16.3.1", diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index f362a595..3cbc336e 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -32,6 +32,6 @@ "rimraf": "6.0.1", "tsup": "8.2.2", "tsx": "4.16.2", - "typescript": "5.5.3" + "typescript": "5.5.4" } } diff --git a/packages/server/package.json b/packages/server/package.json index f45059e6..310b3678 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -36,7 +36,7 @@ "rimraf": "6.0.1", "tsup": "8.2.2", "tsx": "4.16.2", - "typescript": "5.5.3" + "typescript": "5.5.4" }, "distTags": [ "next13.5", From e65059ef5284e890728b87d10d18b755f24679fe Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 25 Jul 2024 00:57:13 +0300 Subject: [PATCH 318/458] Bump tsup from 8.2.2 to 8.2.3 (#664) Bumps [tsup](https://github.com/egoist/tsup) from 8.2.2 to 8.2.3. - [Release notes](https://github.com/egoist/tsup/releases) - [Changelog](https://github.com/egoist/tsup/blob/dev/.releaserc.json) - [Commits](https://github.com/egoist/tsup/compare/v8.2.2...v8.2.3) --- updated-dependencies: - dependency-name: tsup dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 14 +++++++------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 5 files changed, 11 insertions(+), 11 deletions(-) diff --git a/package-lock.json b/package-lock.json index d105b2d8..902c928b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -15859,9 +15859,9 @@ "integrity": "sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ==" }, "node_modules/tsup": { - "version": "8.2.2", - "resolved": "https://registry.npmjs.org/tsup/-/tsup-8.2.2.tgz", - "integrity": "sha512-MufIuzdSt6HYPOeOtjUXLR4rqRJySi6XsRNZdwvjC2XR+xghsu2L3vSmYmX+k4S1mO6j0OlUEyVQ3Fc0H66XcA==", + "version": "8.2.3", + "resolved": "https://registry.npmjs.org/tsup/-/tsup-8.2.3.tgz", + "integrity": "sha512-6YNT44oUfXRbZuSMNmN36GzwPPIlD2wBccY7looM2fkTcxkf2NEmwr3OZuDZoySklnrIG4hoEtzy8yUXYOqNcg==", "dev": true, "dependencies": { "bundle-require": "^5.0.0", @@ -17567,7 +17567,7 @@ "@repo/typescript-config": "*", "@types/node": "20.14.12", "rimraf": "6.0.1", - "tsup": "8.2.2", + "tsup": "8.2.3", "tsx": "4.16.2", "typescript": "5.5.4" }, @@ -17586,7 +17586,7 @@ "@repo/typescript-config": "*", "@types/node": "20.14.12", "rimraf": "6.0.1", - "tsup": "8.2.2", + "tsup": "8.2.3", "typescript": "5.5.4" }, "peerDependencies": { @@ -17602,7 +17602,7 @@ "@repo/typescript-config": "*", "@types/node": "20.14.12", "rimraf": "6.0.1", - "tsup": "8.2.2", + "tsup": "8.2.3", "tsx": "4.16.2", "typescript": "5.5.4" } @@ -17624,7 +17624,7 @@ "@repo/typescript-config": "*", "@types/node": "20.14.12", "rimraf": "6.0.1", - "tsup": "8.2.2", + "tsup": "8.2.3", "tsx": "4.16.2", "typescript": "5.5.4" } diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index ac3ad4cf..22788708 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -82,7 +82,7 @@ "@repo/typescript-config": "*", "@types/node": "20.14.12", "rimraf": "6.0.1", - "tsup": "8.2.2", + "tsup": "8.2.3", "tsx": "4.16.2", "typescript": "5.5.4" }, diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index 61f4311d..c0e1da6e 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -27,7 +27,7 @@ "@repo/typescript-config": "*", "@types/node": "20.14.12", "rimraf": "6.0.1", - "tsup": "8.2.2", + "tsup": "8.2.3", "typescript": "5.5.4" }, "peerDependencies": { diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 3cbc336e..af7536e9 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -30,7 +30,7 @@ "@repo/typescript-config": "*", "@types/node": "20.14.12", "rimraf": "6.0.1", - "tsup": "8.2.2", + "tsup": "8.2.3", "tsx": "4.16.2", "typescript": "5.5.4" } diff --git a/packages/server/package.json b/packages/server/package.json index 310b3678..d223e62f 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -34,7 +34,7 @@ "@repo/typescript-config": "*", "@types/node": "20.14.12", "rimraf": "6.0.1", - "tsup": "8.2.2", + "tsup": "8.2.3", "tsx": "4.16.2", "typescript": "5.5.4" }, From 7190affc390cedd97673817ec77a7792f3dd2190 Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Thu, 25 Jul 2024 13:58:02 +0300 Subject: [PATCH 319/458] Reorganize sections and add external examples (#665) In this PR: - Improve structure of documentation - Add external examples for K8S and Redis Cluster setups - Update actions versions in the `Deploy docs to Pages` workflow --- .github/workflows/deploy-docs.yml | 9 +++-- docs/cache-handler-docs/src/pages/_meta.json | 34 +++++++++++-------- .../src/pages/api-reference/_meta.json | 1 + .../api-reference/cache-handler-config.mdx | 2 +- .../on-creation.mdx | 0 .../src/pages/installation.mdx | 2 +- docs/cache-handler-docs/src/pages/redis.mdx | 2 +- .../pages/{configuration => usage}/_meta.json | 3 +- .../build-id-as-prefix-key.mdx | 0 .../pages/usage/creating-a-custom-handler.mdx | 2 +- .../development-environment.mdx | 0 .../opt-out-cache-on-build.mdx | 0 12 files changed, 32 insertions(+), 23 deletions(-) rename docs/cache-handler-docs/src/pages/{configuration => api-reference}/on-creation.mdx (100%) rename docs/cache-handler-docs/src/pages/{configuration => usage}/_meta.json (56%) rename docs/cache-handler-docs/src/pages/{configuration => usage}/build-id-as-prefix-key.mdx (100%) rename docs/cache-handler-docs/src/pages/{configuration => usage}/development-environment.mdx (100%) rename docs/cache-handler-docs/src/pages/{configuration => usage}/opt-out-cache-on-build.mdx (100%) diff --git a/.github/workflows/deploy-docs.yml b/.github/workflows/deploy-docs.yml index 88098216..6b2c6de2 100644 --- a/.github/workflows/deploy-docs.yml +++ b/.github/workflows/deploy-docs.yml @@ -31,13 +31,16 @@ jobs: check-latest: true cache: 'npm' - name: Setup Pages - uses: actions/configure-pages@v3 + uses: actions/configure-pages@v5 + with: + static_site_generator: next + generator_config_file: ./docs/cache-handler-docs/next.config.js - name: Install dependencies run: npm ci - name: Build with Next.js run: npm run build:docs - name: Upload artifact - uses: actions/upload-pages-artifact@v2 + uses: actions/upload-pages-artifact@v3 with: path: ./docs/cache-handler-docs/out @@ -50,4 +53,4 @@ jobs: steps: - name: Deploy to GitHub Pages id: deployment - uses: actions/deploy-pages@v2 + uses: actions/deploy-pages@v4 diff --git a/docs/cache-handler-docs/src/pages/_meta.json b/docs/cache-handler-docs/src/pages/_meta.json index 4356047f..e753a03e 100644 --- a/docs/cache-handler-docs/src/pages/_meta.json +++ b/docs/cache-handler-docs/src/pages/_meta.json @@ -5,30 +5,34 @@ }, "index": "Introduction", "installation": "Installation and the First Steps", - "-- @neshca/cache-handler API": { + "usage": "Usage guides", + "-- Examples": { "type": "separator", - "title": "@neshca/cache-handler API" + "title": "Examples" }, - "configuration": "Configuration", - "api-reference": "API reference", - "handlers": "Handlers", - "functions": "Functions", - "-- Usage": { + "redis": "Built-in Redis Handler", + "cluster-example": { + "title": "Redis Cluster example ↗", + "href": "https://github.com/mauroaccornero/cache-handler-redis-cluster-example", + "newWindow": true + }, + "k8s-example": { + "title": "Kubernetes example ↗", + "href": "https://github.com/ezeparziale/nextjs-k8s", + "newWindow": true + }, + "-- API Reference": { "type": "separator", - "title": "Usage" + "title": "API Reference" }, - "usage": "Usage guides", + "api-reference": "Handlers API", + "handlers": "Built-in Handlers", + "functions": "Functions", "-- Troubleshooting": { "type": "separator", "title": "Troubleshooting" }, "troubleshooting": "", - "-- Examples": { - "type": "separator", - "title": "Examples" - }, - "redis": "Redis Handler", - "server": "Remote HTTP server with LRU cache", "-- More": { "type": "separator", "title": "More" diff --git a/docs/cache-handler-docs/src/pages/api-reference/_meta.json b/docs/cache-handler-docs/src/pages/api-reference/_meta.json index b06437a8..d4340645 100644 --- a/docs/cache-handler-docs/src/pages/api-reference/_meta.json +++ b/docs/cache-handler-docs/src/pages/api-reference/_meta.json @@ -1,4 +1,5 @@ { + "on-creation": "onCreation", "cache-handler-config": "CacheHandlerConfig", "cache-handler-value": "CacheHandlerValue", "handler": "Handler", diff --git a/docs/cache-handler-docs/src/pages/api-reference/cache-handler-config.mdx b/docs/cache-handler-docs/src/pages/api-reference/cache-handler-config.mdx index 39de61c3..c7a6fb64 100644 --- a/docs/cache-handler-docs/src/pages/api-reference/cache-handler-config.mdx +++ b/docs/cache-handler-docs/src/pages/api-reference/cache-handler-config.mdx @@ -13,7 +13,7 @@ type CacheHandlerConfig = { An array of cache handlers that conform to the Handler interface. Multiple caches can be used to implement various caching strategies or layers. See [`Handler`](/api-reference/handler) API reference for more information. -If a handler is `undefined` or `null`, it will be ignored. It may be useful when you don't want to use a particular cache layer in a specific case. For example, you may want to [opt out of using your remote cache during the build](/configuration/opt-out-cache-on-build). +If a handler is `undefined` or `null`, it will be ignored. It may be useful when you don't want to use a particular cache layer in a specific case. For example, you may want to [opt out of using your remote cache during the build](/usage/opt-out-cache-on-build). In the example below, we use a local cache and a Redis cache. If the Redis cache is not available, we will use only the local cache. diff --git a/docs/cache-handler-docs/src/pages/configuration/on-creation.mdx b/docs/cache-handler-docs/src/pages/api-reference/on-creation.mdx similarity index 100% rename from docs/cache-handler-docs/src/pages/configuration/on-creation.mdx rename to docs/cache-handler-docs/src/pages/api-reference/on-creation.mdx diff --git a/docs/cache-handler-docs/src/pages/installation.mdx b/docs/cache-handler-docs/src/pages/installation.mdx index fc32418b..b7516c04 100644 --- a/docs/cache-handler-docs/src/pages/installation.mdx +++ b/docs/cache-handler-docs/src/pages/installation.mdx @@ -126,5 +126,5 @@ npm run start With the setup complete, explore `@neshca/cache-handler`'s advanced features: - Check out the [Redis Integration Example](/redis). -- Learn [how to use the API](/configuration/on-creation). +- Learn [how to use the API](/api-reference/on-creation). - See how to [debug and troubleshoot](/troubleshooting) your cache handler configuration. diff --git a/docs/cache-handler-docs/src/pages/redis.mdx b/docs/cache-handler-docs/src/pages/redis.mdx index cf03eac6..35a81020 100644 --- a/docs/cache-handler-docs/src/pages/redis.mdx +++ b/docs/cache-handler-docs/src/pages/redis.mdx @@ -82,4 +82,4 @@ CacheHandler.onCreation(async () => { export default CacheHandler; ``` -Ensure that the Redis instance is running when you build your Next.js app. If you can not ensure that, see how to disable the Handler during a build stage in the [Building the App Without Redis Cache Connection](/configuration/opt-out-cache-on-build) section. +Ensure that the Redis instance is running when you build your Next.js app. If you can not ensure that, see how to disable the Handler during a build stage in the [Building the App Without Redis Cache Connection](/usage/opt-out-cache-on-build) section. diff --git a/docs/cache-handler-docs/src/pages/configuration/_meta.json b/docs/cache-handler-docs/src/pages/usage/_meta.json similarity index 56% rename from docs/cache-handler-docs/src/pages/configuration/_meta.json rename to docs/cache-handler-docs/src/pages/usage/_meta.json index 710a15b2..f2e2fcad 100644 --- a/docs/cache-handler-docs/src/pages/configuration/_meta.json +++ b/docs/cache-handler-docs/src/pages/usage/_meta.json @@ -1,5 +1,6 @@ { - "on-creation": "onCreation", + "creating-a-custom-handler": "Creating a Custom Handler", + "on-demand-revalidation": "On-demand revalidation", "opt-out-cache-on-build": "Opt out the cache on Build", "development-environment": "", "build-id-as-prefix-key": "Build Id as a Prefix Key" diff --git a/docs/cache-handler-docs/src/pages/configuration/build-id-as-prefix-key.mdx b/docs/cache-handler-docs/src/pages/usage/build-id-as-prefix-key.mdx similarity index 100% rename from docs/cache-handler-docs/src/pages/configuration/build-id-as-prefix-key.mdx rename to docs/cache-handler-docs/src/pages/usage/build-id-as-prefix-key.mdx diff --git a/docs/cache-handler-docs/src/pages/usage/creating-a-custom-handler.mdx b/docs/cache-handler-docs/src/pages/usage/creating-a-custom-handler.mdx index 921c72ac..e234a88f 100644 --- a/docs/cache-handler-docs/src/pages/usage/creating-a-custom-handler.mdx +++ b/docs/cache-handler-docs/src/pages/usage/creating-a-custom-handler.mdx @@ -243,4 +243,4 @@ CacheHandler.onCreation(async () => { export default CacheHandler; ``` -In this example, we assume that you have a Redis instance running on `localhost:6379` ahead of time before you build your Next.js app. If you want to build your Next.js app without a Redis cache connection, see how to disable the Handler during a build stage in the [Building the App Without Redis Cache Connection](/configuration/opt-out-cache-on-build) section. +In this example, we assume that you have a Redis instance running on `localhost:6379` ahead of time before you build your Next.js app. If you want to build your Next.js app without a Redis cache connection, see how to disable the Handler during a build stage in the [Building the App Without Redis Cache Connection](/usage/opt-out-cache-on-build) section. diff --git a/docs/cache-handler-docs/src/pages/configuration/development-environment.mdx b/docs/cache-handler-docs/src/pages/usage/development-environment.mdx similarity index 100% rename from docs/cache-handler-docs/src/pages/configuration/development-environment.mdx rename to docs/cache-handler-docs/src/pages/usage/development-environment.mdx diff --git a/docs/cache-handler-docs/src/pages/configuration/opt-out-cache-on-build.mdx b/docs/cache-handler-docs/src/pages/usage/opt-out-cache-on-build.mdx similarity index 100% rename from docs/cache-handler-docs/src/pages/configuration/opt-out-cache-on-build.mdx rename to docs/cache-handler-docs/src/pages/usage/opt-out-cache-on-build.mdx From 1d26fffb9fc4882aba44df56ce10423b836a30c3 Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Thu, 25 Jul 2024 14:07:10 +0300 Subject: [PATCH 320/458] Fix `deploy-docs.yml` (#666) --- .github/workflows/deploy-docs.yml | 3 --- 1 file changed, 3 deletions(-) diff --git a/.github/workflows/deploy-docs.yml b/.github/workflows/deploy-docs.yml index 6b2c6de2..688dcaad 100644 --- a/.github/workflows/deploy-docs.yml +++ b/.github/workflows/deploy-docs.yml @@ -32,9 +32,6 @@ jobs: cache: 'npm' - name: Setup Pages uses: actions/configure-pages@v5 - with: - static_site_generator: next - generator_config_file: ./docs/cache-handler-docs/next.config.js - name: Install dependencies run: npm ci - name: Build with Next.js From 41cf0c8b092cb798cbc67d8d463a4af89821860d Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Thu, 25 Jul 2024 15:08:10 +0300 Subject: [PATCH 321/458] Update README (#667) --- .changeset/kind-vans-teach.md | 5 +++ packages/cache-handler/README.md | 67 ++++++++++++++------------------ 2 files changed, 35 insertions(+), 37 deletions(-) create mode 100644 .changeset/kind-vans-teach.md diff --git a/.changeset/kind-vans-teach.md b/.changeset/kind-vans-teach.md new file mode 100644 index 00000000..e3d8daa3 --- /dev/null +++ b/.changeset/kind-vans-teach.md @@ -0,0 +1,5 @@ +--- +'@neshca/cache-handler': patch +--- + +Rewrite README diff --git a/packages/cache-handler/README.md b/packages/cache-handler/README.md index 77956175..bcb46bad 100644 --- a/packages/cache-handler/README.md +++ b/packages/cache-handler/README.md @@ -1,69 +1,62 @@ # `@neshca/cache-handler` -**Flexible API to replace the default Next.js cache, accommodating custom cache solutions for multi-instance self-hosted deployments** - -🎉 1.5.0 is out! It features the new [`experimental-redis-cluster`](https://caching-tools.github.io/next-shared-cache/handlers/experimental-redis-cluster) Handler for Redis Cluster support! - -Check out the [changelog](https://github.com/caching-tools/next-shared-cache/blob/canary/packages/cache-handler/CHANGELOG.md) +**Flexible API for replacing the default Next.js cache, enabling custom caching solutions for multi-instance self-hosted deployments.** [![npm package](https://img.shields.io/npm/v/@neshca/cache-handler/latest.svg)](https://www.npmjs.com/package/@neshca/cache-handler) [![Dependencies](https://img.shields.io/npm/dm/@neshca/cache-handler)](https://www.npmjs.com/package/@neshca/cache-handler) [![License](https://img.shields.io/npm/l/express.svg)](https://github.com/caching-tools/next-shared-cache/blob/canary/packages/cache-handler/LICENSE) -# Table of Contents +## Latest Release + +🎉 **Version 1.5.0** is here! Now featuring the [`experimental-redis-cluster`](https://caching-tools.github.io/next-shared-cache/handlers/experimental-redis-cluster) handler for Redis Cluster support! + +Check out the [changelog](https://github.com/caching-tools/next-shared-cache/blob/canary/packages/cache-handler/CHANGELOG.md) for more details. + +## Table of Contents 1. [Overview](#overview) -2. [Getting Started with Your Own Custom Cache Solution](#getting-started-with-your-own-custom-cache-solution) -3. [Examples and Practical Implementations](#examples-and-practical-implementations) + - [Features](#features) +2. [Getting Started](#getting-started) +3. [Examples](#examples) 4. [Requirements](#requirements) 5. [Documentation](#documentation) -6. [Developing and Contributing](#developing-and-contributing) +6. [Contributing](#contributing) 7. [License](#license) ## Overview -Welcome to `@neshca/cache-handler`, a specialized ISR/Data cache API crafted for Next.js applications. This library is designed to simplify the complex task of configuring shared cache strategies in distributed environments, such as those involving multiple and independent instances of the same application. It offers a flexible and user-friendly approach to integrating custom cache solutions and hand-crafted, pre-configured cache strategies for Redis. - -### Next.js Routers support - -- Full support for the Pages and the App Router. - -### The importance of shared cache in distributed environments - -Next.js applications are often deployed in a self-hosted distributed environment, where multiple instances of the same application are running simultaneously. In such cases, the default Next.js cache is not shared between instances, causing the data to diverge between independent instances because load balancers route requests to a different instance every time. Another significant issue with the default cache setup is on-demand revalidation; it requires manual revalidation across all application replicas. - -`@neshca/cache-handler` elegantly addresses these challenges by offering: +Welcome to `@neshca/cache-handler`, a specialized ISR/Data cache API crafted for Next.js applications. This library simplifies configuring shared cache strategies in distributed environments, such as multiple, independent application instances. It offers a flexible and easy-to-integrate solution for custom cache strategies, especially for Redis. -- A straightforward API complemented by meticulously crafted Handlers. -- Comprehensive customization options. -- Simplified on-demand revalidation, akin to managing a single application instance. -- TTL by default to keep cache storage clean and space-efficient. -- One configuration for both Routes. -- [`neshCache`](https://caching-tools.github.io/next-shared-cache/functions/nesh-cache) application-side function. +### Features -### Kickstarting Your Custom Cache Solution +- **Shared Cache for Distributed Environments**: Perfect for self-hosted deployments with multiple application instances. +- **Easy Customization**: Provides a straightforward API with pre-configured Handlers. +- **On-Demand Revalidation**: Simplifies revalidation across all application replicas. +- **TTL Management**: Automatic cache cleanup to keep storage space efficient. +- **Support for Next.js Routers**: Full support and one setup for the Pages and the App Router. +- **`neshCache` Function**: Utilize the [`neshCache`](https://caching-tools.github.io/next-shared-cache/functions/nesh-cache) function to replace `unstable_cache` for more control over caching. -Begin enhancing your application's caching system with our [Installation and the First Steps](https://caching-tools.github.io/next-shared-cache/installation). This section provides all the necessary information on installation, basic configuration, and practical examples for quick and efficient integration. +## Getting Started -### Examples and Practical Implementations +Enhance your application's caching with our [Installation and First Steps Guide](https://caching-tools.github.io/next-shared-cache/installation). This guide covers installation, basic configuration, and practical examples for quick integration. -Discover the versatility of `@neshca/cache-handler` in our [Examples Section](https://caching-tools.github.io/next-shared-cache/redis), where real-world scenarios are illustrated. +## Examples -Learn how to build your own Handler by reading [this guide](https://caching-tools.github.io/next-shared-cache/usage/creating-a-custom-handler). +Explore the versatility of `@neshca/cache-handler` in our [Examples Section](https://caching-tools.github.io/next-shared-cache/redis) with real-world scenarios. Learn how to build a custom Handler by following [this guide](https://caching-tools.github.io/next-shared-cache/usage/creating-a-custom-handler). ## Requirements -- Next.js 13.5.1 and newer. -- Node.js 18.17.0 and newer. +- **Next.js**: 13.5.1 or newer. +- **Node.js**: 18.17.0 or newer. ## Documentation -[Documentation ↗](https://caching-tools.github.io/next-shared-cache) +For detailed documentation, visit our [Documentation Page](https://caching-tools.github.io/next-shared-cache). -## Developing and contributing +## Contributing -[Developing and contributing](https://github.com/caching-tools/next-shared-cache/blob/canary/docs/contributing/cache-handler.md) +We welcome contributions! Check out our [Contributing Guide](https://github.com/caching-tools/next-shared-cache/blob/canary/docs/contributing/cache-handler.md) for more information. ## License -[MIT](https://github.com/caching-tools/next-shared-cache/blob/canary/packages/cache-handler/LICENSE) +This project is licensed under the [MIT License](https://github.com/caching-tools/next-shared-cache/blob/canary/packages/cache-handler/LICENSE). From b4b2ec9a8eebc49a1b215638fb895d6cda681c14 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Thu, 25 Jul 2024 15:19:29 +0300 Subject: [PATCH 322/458] Version Packages (#668) Co-authored-by: github-actions[bot] --- .changeset/kind-vans-teach.md | 5 ----- packages/cache-handler/CHANGELOG.md | 6 ++++++ packages/cache-handler/package.json | 2 +- 3 files changed, 7 insertions(+), 6 deletions(-) delete mode 100644 .changeset/kind-vans-teach.md diff --git a/.changeset/kind-vans-teach.md b/.changeset/kind-vans-teach.md deleted file mode 100644 index e3d8daa3..00000000 --- a/.changeset/kind-vans-teach.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@neshca/cache-handler': patch ---- - -Rewrite README diff --git a/packages/cache-handler/CHANGELOG.md b/packages/cache-handler/CHANGELOG.md index 66793838..d47cc0dc 100644 --- a/packages/cache-handler/CHANGELOG.md +++ b/packages/cache-handler/CHANGELOG.md @@ -1,5 +1,11 @@ # @neshca/cache-handler +## 1.5.1 + +### Patch Changes + +- 41cf0c8: Rewrite README + ## 1.5.0 ### Minor Changes diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 22788708..7a012658 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -1,6 +1,6 @@ { "name": "@neshca/cache-handler", - "version": "1.5.0", + "version": "1.5.1", "description": "Next.js self-hosting simplified.", "keywords": [ "cache", From 99e2af83e62a9aed9a22e2db16c5b3f40cf75741 Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Thu, 25 Jul 2024 16:45:00 +0300 Subject: [PATCH 323/458] Update repo readme --- README.md | 46 +++++++++++++++++++++------------------------- 1 file changed, 21 insertions(+), 25 deletions(-) diff --git a/README.md b/README.md index 20b18bbf..1f760d4a 100644 --- a/README.md +++ b/README.md @@ -4,43 +4,39 @@ [![Dependencies](https://img.shields.io/npm/dm/@neshca/cache-handler)](https://www.npmjs.com/package/@neshca/cache-handler) [![License](https://img.shields.io/npm/l/express.svg)](https://github.com/caching-tools/next-shared-cache/blob/canary/packages/cache-handler/LICENSE) -Welcome to [**`@neshca/cache-handler`**](./packages/cache-handler/README.md), a specialized ISR/Data cache API crafted for Next.js applications. This library is designed to simplify the complex task of configuring shared cache strategies in distributed environments, such as those involving multiple and independent instances of the same application. It offers a flexible and user-friendly approach to integrating custom cache solutions and hand-crafted, pre-configured cache strategies for Redis. +Welcome to [`@neshca/cache-handler`](./packages/cache-handler/README.md), a specialized ISR/Data cache API crafted for Next.js applications. This library simplifies configuring shared cache strategies in distributed environments, such as multiple, independent application instances. It offers a flexible and easy-to-integrate solution for custom cache strategies, especially for Redis. -### Next.js Routers support +### Features -- Full support for the Pages and the App Router. +- **Shared Cache for Distributed Environments**: Perfect for self-hosted deployments with multiple application instances. +- **Easy Customization**: Provides a straightforward API with pre-configured Handlers. +- **On-Demand Revalidation**: Simplifies revalidation across all application replicas. +- **TTL Management**: Automatic cache cleanup to keep storage space efficient. +- **Support for Next.js Routers**: Full support and one setup for the Pages and the App Router. +- **`neshCache` Function**: Utilize the [`neshCache`](https://caching-tools.github.io/next-shared-cache/functions/nesh-cache) function to replace `unstable_cache` for more control over caching. -### The importance of shared cache in distributed environments +## Getting Started -Next.js applications are often deployed in a self-hosted distributed environment, where multiple instances of the same application are running simultaneously. In such cases, the default Next.js cache is not shared between instances, causing the data to diverge between independent instances because load balancers route requests to a different instance every time. Another significant issue with the default cache setup is on-demand revalidation; it requires manual revalidation across all application replicas. +Enhance your application's caching with our [Installation and First Steps Guide](https://caching-tools.github.io/next-shared-cache/installation). This guide covers installation, basic configuration, and practical examples for quick integration. -`@neshca/cache-handler` elegantly addresses these challenges by offering: +## Examples -- A straightforward API complemented by meticulously crafted Handlers. -- Comprehensive customization options. -- Simplified on-demand revalidation, akin to managing a single application instance. -- TTL by default to keep cache storage clean and space-efficient. -- One configuration for both Routes. -- [`neshCache`](https://caching-tools.github.io/next-shared-cache/functions/nesh-cache) application-side function. +Explore the versatility of `@neshca/cache-handler` in our [Examples Section](https://caching-tools.github.io/next-shared-cache/redis) with real-world scenarios. Learn how to build a custom Handler by following [this guide](https://caching-tools.github.io/next-shared-cache/usage/creating-a-custom-handler). -### Kickstarting Your Custom Cache Solution +## Requirements -Begin enhancing your application's caching system with our [Installation and the First Steps](https://caching-tools.github.io/next-shared-cache/installation). This section provides all the necessary information on installation, basic configuration, and practical examples for quick and efficient integration. +- **Next.js**: 13.5.1 or newer. +- **Node.js**: 18.17.0 or newer. -### Examples and Practical Implementations +## Documentation -Discover the versatility of `@neshca/cache-handler` in our [Examples Section](https://caching-tools.github.io/next-shared-cache/redis), where real-world scenarios are illustrated. +For detailed documentation, visit our [Documentation Page](https://caching-tools.github.io/next-shared-cache). -Learn how to build your own Handler by reading [this guide](https://caching-tools.github.io/next-shared-cache/usage/creating-a-custom-handler). +## Contributing -## Contribute - -[Developing and contributing to this monorepo](./docs/contributing/monorepo.md) - -Or become a Backer - -[![Become a Backer](https://opencollective.com/caching-tools/tiers/backer.svg?avatarHeight=64)](https://opencollective.com/caching-tools#support) +We welcome contributions! Check out our [Contributing Guide](./docs/contributing/monorepo.md) for more information. ## License -All projects in this monorepo are licensed under the [MIT License](./LICENSE). +This project is licensed under the [MIT License](./LICENSE). + From 475fa91abb7bef8e12bb87b9b4e5f69909538a36 Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Thu, 25 Jul 2024 23:45:25 +0300 Subject: [PATCH 324/458] Fix repo readme (#669) --- README.md | 1 - 1 file changed, 1 deletion(-) diff --git a/README.md b/README.md index 1f760d4a..c2495c14 100644 --- a/README.md +++ b/README.md @@ -39,4 +39,3 @@ We welcome contributions! Check out our [Contributing Guide](./docs/contributing ## License This project is licensed under the [MIT License](./LICENSE). - From 7302ac1f5e61452d773f768013ba397496c81f32 Mon Sep 17 00:00:00 2001 From: "mr.navata" Date: Fri, 26 Jul 2024 03:48:09 +0700 Subject: [PATCH 325/458] Update `creating-a-custom-handler.mdx` (#670) Fix function not found --- .../src/pages/usage/creating-a-custom-handler.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/cache-handler-docs/src/pages/usage/creating-a-custom-handler.mdx b/docs/cache-handler-docs/src/pages/usage/creating-a-custom-handler.mdx index e234a88f..b48b9fed 100644 --- a/docs/cache-handler-docs/src/pages/usage/creating-a-custom-handler.mdx +++ b/docs/cache-handler-docs/src/pages/usage/creating-a-custom-handler.mdx @@ -222,7 +222,7 @@ CacheHandler.onCreation(async () => { // Update the tags in Redis by deleting the revalidated tags. const updateTagsOperation = client.hDel( // Use the isolated option to prevent the command from being executed on the main connection. - { isolated: true, ...getTimeoutRedisCommandOptions(timeoutMs) }, + { isolated: true, ...commandOptions({ signal: AbortSignal.timeout(timeoutMs) }) }, keyPrefix + sharedTagsKey, tagsToDelete, ); From 3a4bf84aec7d19b303227fb0e1fce1324d3a3faf Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 26 Jul 2024 17:43:27 +0300 Subject: [PATCH 326/458] Bump the pino group with 2 updates (#671) Bumps the pino group with 2 updates: [pino](https://github.com/pinojs/pino) and [pino-pretty](https://github.com/pinojs/pino-pretty). Updates `pino` from 9.3.1 to 9.3.2 - [Release notes](https://github.com/pinojs/pino/releases) - [Commits](https://github.com/pinojs/pino/compare/v9.3.1...v9.3.2) Updates `pino-pretty` from 11.2.1 to 11.2.2 - [Release notes](https://github.com/pinojs/pino-pretty/releases) - [Commits](https://github.com/pinojs/pino-pretty/compare/v11.2.1...v11.2.2) --- updated-dependencies: - dependency-name: pino dependency-type: direct:production update-type: version-update:semver-patch dependency-group: pino - dependency-name: pino-pretty dependency-type: direct:development update-type: version-update:semver-patch dependency-group: pino ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- internal/backend/package.json | 4 ++-- package-lock.json | 27 ++++++++++++++++----------- packages/server/package.json | 2 +- 3 files changed, 19 insertions(+), 14 deletions(-) diff --git a/internal/backend/package.json b/internal/backend/package.json index 476e926f..8b0fd30f 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -11,12 +11,12 @@ }, "dependencies": { "fastify": "4.28.1", - "pino": "9.3.1" + "pino": "9.3.2" }, "devDependencies": { "@repo/typescript-config": "*", "@types/node": "20.14.12", - "pino-pretty": "11.2.1", + "pino-pretty": "11.2.2", "rimraf": "6.0.1", "tsx": "4.16.2", "typescript": "5.5.4" diff --git a/package-lock.json b/package-lock.json index 902c928b..d3fde308 100644 --- a/package-lock.json +++ b/package-lock.json @@ -448,12 +448,12 @@ "license": "MIT", "dependencies": { "fastify": "4.28.1", - "pino": "9.3.1" + "pino": "9.3.2" }, "devDependencies": { "@repo/typescript-config": "*", "@types/node": "20.14.12", - "pino-pretty": "11.2.1", + "pino-pretty": "11.2.2", "rimraf": "6.0.1", "tsx": "4.16.2", "typescript": "5.5.4" @@ -13184,16 +13184,16 @@ } }, "node_modules/pino": { - "version": "9.3.1", - "resolved": "https://registry.npmjs.org/pino/-/pino-9.3.1.tgz", - "integrity": "sha512-afSfrq/hUiW/MFmQcLEwV9Zh8Ry6MrMTOyBU53o/fc0gEl+1OZ/Fks/xQCM2nOC0C/OfDtQMnT2d8c3kpcfSzA==", + "version": "9.3.2", + "resolved": "https://registry.npmjs.org/pino/-/pino-9.3.2.tgz", + "integrity": "sha512-WtARBjgZ7LNEkrGWxMBN/jvlFiE17LTbBoH0konmBU684Kd0uIiDwBXlcTCW7iJnA6HfIKwUssS/2AC6cDEanw==", "dependencies": { "atomic-sleep": "^1.0.0", "fast-redact": "^3.1.1", "on-exit-leak-free": "^2.1.0", "pino-abstract-transport": "^1.2.0", "pino-std-serializers": "^7.0.0", - "process-warning": "^3.0.0", + "process-warning": "^4.0.0", "quick-format-unescaped": "^4.0.3", "real-require": "^0.2.0", "safe-stable-stringify": "^2.3.1", @@ -13214,9 +13214,9 @@ } }, "node_modules/pino-pretty": { - "version": "11.2.1", - "resolved": "https://registry.npmjs.org/pino-pretty/-/pino-pretty-11.2.1.tgz", - "integrity": "sha512-O05NuD9tkRasFRWVaF/uHLOvoRDFD7tb5VMertr78rbsYFjYp48Vg3477EshVAF5eZaEw+OpDl/tu+B0R5o+7g==", + "version": "11.2.2", + "resolved": "https://registry.npmjs.org/pino-pretty/-/pino-pretty-11.2.2.tgz", + "integrity": "sha512-2FnyGir8nAJAqD3srROdrF1J5BIcMT4nwj7hHSc60El6Uxlym00UbCCd8pYIterstVBFlMyF1yFV8XdGIPbj4A==", "dev": true, "dependencies": { "colorette": "^2.0.7", @@ -13243,6 +13243,11 @@ "resolved": "https://registry.npmjs.org/pino-std-serializers/-/pino-std-serializers-7.0.0.tgz", "integrity": "sha512-e906FRY0+tV27iq4juKzSYPbUj2do2X2JX4EzSca1631EB2QJQUqGbDuERal7LCtOpxl6x3+nvo9NPZcmjkiFA==" }, + "node_modules/pino/node_modules/process-warning": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/process-warning/-/process-warning-4.0.0.tgz", + "integrity": "sha512-/MyYDxttz7DfGMMHiysAsFE4qF+pQYAA8ziO/3NcRVrQ5fSk+Mns4QZA/oRPFzvcqNoVJXQNWNAsdwBXLUkQKw==" + }, "node_modules/pirates": { "version": "4.0.6", "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz", @@ -17555,7 +17560,7 @@ }, "packages/cache-handler": { "name": "@neshca/cache-handler", - "version": "1.5.0", + "version": "1.5.1", "license": "MIT", "dependencies": { "cluster-key-slot": "1.1.2", @@ -17613,7 +17618,7 @@ "license": "MIT", "dependencies": { "fastify": "4.28.1", - "pino": "9.3.1" + "pino": "9.3.2" }, "bin": { "next-cache-server": "dist/server.js" diff --git a/packages/server/package.json b/packages/server/package.json index d223e62f..a194e4af 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -26,7 +26,7 @@ }, "dependencies": { "fastify": "4.28.1", - "pino": "9.3.1" + "pino": "9.3.2" }, "devDependencies": { "@neshca/next-common": "*", From 0d2422406b10b665a0131e893d3b2f6dea255d9f Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Fri, 26 Jul 2024 18:15:55 +0300 Subject: [PATCH 327/458] Revise introductory documentation for `@neshca/cache-handler` (#672) --- docs/cache-handler-docs/src/pages/index.mdx | 29 +++++++++------------ 1 file changed, 13 insertions(+), 16 deletions(-) diff --git a/docs/cache-handler-docs/src/pages/index.mdx b/docs/cache-handler-docs/src/pages/index.mdx index c60e1a1a..1e05198c 100644 --- a/docs/cache-handler-docs/src/pages/index.mdx +++ b/docs/cache-handler-docs/src/pages/index.mdx @@ -1,25 +1,22 @@ -Welcome to `@neshca/cache-handler`, a specialized ISR/Data cache API crafted for Next.js applications. This library is designed to simplify the complex task of configuring shared cache strategies in distributed environments, such as those involving multiple and independent instances of the same application. It offers a flexible and user-friendly approach to integrating custom cache solutions and hand-crafted, pre-configured cache strategies for Redis. +Welcome to `@neshca/cache-handler`, a specialized ISR/Data cache API crafted for Next.js applications. This library simplifies configuring shared cache strategies in distributed environments, such as multiple, independent application instances. It offers a flexible and easy-to-integrate solution for custom cache strategies, especially for Redis. -### Next.js Routers support - -- Full support for the Pages and the App Router. - -### The importance of shared cache in distributed environments +--- Next.js applications are often deployed in a self-hosted distributed environment, where multiple instances of the same application are running simultaneously. In such cases, the default Next.js cache is not shared between instances, causing the data to diverge between independent instances because load balancers route requests to a different instance every time. Another significant issue with the default cache setup is on-demand revalidation; it requires manual revalidation across all application replicas. -`@neshca/cache-handler` elegantly addresses these challenges by offering: +## Features -- A straightforward API complemented by meticulously crafted Handlers. -- Comprehensive customization options. -- Simplified on-demand revalidation, akin to managing a single application instance. -- TTL by default to keep cache storage clean and space-efficient. -- One configuration for both Routes. +- **Shared Cache for Distributed Environments**: Perfect for self-hosted deployments with multiple application instances. +- **Easy Customization**: Provides a straightforward API with pre-configured Handlers. +- **On-Demand Revalidation**: Simplifies revalidation across all application replicas. +- **TTL Management**: Automatic cache cleanup to keep storage space efficient. +- **Support for Next.js Routers**: Full support and one setup for the Pages and the App Router. +- **`neshCache` Function**: Utilize the [`neshCache`](/functions/nesh-cache) function to replace `unstable_cache` for more control over caching. -### Kickstarting Your Custom Cache Solution +## Getting Started -Begin enhancing your application's caching system with our [Installation and the First Steps](/installation). This section provides all the necessary information on installation, basic configuration, and practical examples for quick and efficient integration. +Enhance your application's caching with our [Installation and First Steps Guide](/installation). This guide covers installation, basic configuration, and practical examples for quick integration. -### Examples and Practical Implementations +## Examples -Discover the versatility of `@neshca/cache-handler` in our [Examples Section](/redis), where real-world scenarios are illustrated. +Explore the versatility of `@neshca/cache-handler` in our [Examples Section](/redis) with real-world scenarios. Learn how to build a custom Handler by following [this guide](/usage/creating-a-custom-handler). From 35af5437f8fb3a95b0e72b9aa371eafad867b9dd Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Mon, 29 Jul 2024 18:32:03 +0300 Subject: [PATCH 328/458] Add logging for Redis client errors in docs (#675) --- apps/cache-testing/cache-handler-redis-stack.mjs | 8 ++++++-- apps/cache-testing/cache-handler-redis-strings.mjs | 7 ++++++- docs/cache-handler-docs/src/pages/redis.mdx | 9 +++++++-- .../src/pages/usage/creating-a-custom-handler.mdx | 9 +++++++-- 4 files changed, 26 insertions(+), 7 deletions(-) diff --git a/apps/cache-testing/cache-handler-redis-stack.mjs b/apps/cache-testing/cache-handler-redis-stack.mjs index 7adf38c6..a815c313 100644 --- a/apps/cache-testing/cache-handler-redis-stack.mjs +++ b/apps/cache-testing/cache-handler-redis-stack.mjs @@ -19,8 +19,12 @@ CacheHandler.onCreation(async () => { name: `cache-handler:${process.env.PORT ?? process.pid}`, }); - // Redis won't work without error handling. - client.on('error', () => {}); + // Redis won't work without error handling. https://github.com/redis/node-redis?tab=readme-ov-file#events + client.on('error', (error) => { + if (typeof process.env.NEXT_PRIVATE_DEBUG_CACHE !== 'undefined') { + console.error('Redis client error:', error); + } + }); } catch (error) { console.warn('Failed to create Redis client:', error); } diff --git a/apps/cache-testing/cache-handler-redis-strings.mjs b/apps/cache-testing/cache-handler-redis-strings.mjs index 8f07a239..eb2196d6 100644 --- a/apps/cache-testing/cache-handler-redis-strings.mjs +++ b/apps/cache-testing/cache-handler-redis-strings.mjs @@ -17,7 +17,12 @@ CacheHandler.onCreation(async () => { name: `cache-handler:${PREFIX}${process.env.PORT ?? process.pid}`, }); - client.on('error', () => {}); + // Redis won't work without error handling. https://github.com/redis/node-redis?tab=readme-ov-file#events + client.on('error', (error) => { + if (typeof process.env.NEXT_PRIVATE_DEBUG_CACHE !== 'undefined') { + console.error('Redis client error:', error); + } + }); console.info('Connecting Redis client...'); await client.connect(); diff --git a/docs/cache-handler-docs/src/pages/redis.mdx b/docs/cache-handler-docs/src/pages/redis.mdx index 35a81020..d7a7c9ac 100644 --- a/docs/cache-handler-docs/src/pages/redis.mdx +++ b/docs/cache-handler-docs/src/pages/redis.mdx @@ -26,8 +26,13 @@ CacheHandler.onCreation(async () => { url: process.env.REDIS_URL ?? 'redis://localhost:6379', }); - // Redis won't work without error handling. - client.on('error', () => {}); + // Redis won't work without error handling. https://github.com/redis/node-redis?tab=readme-ov-file#events + client.on('error', (error) => { + if (typeof process.env.NEXT_PRIVATE_DEBUG_CACHE !== 'undefined') { + // Use logging with caution in production. Redis will flood your logs. Hide it behind a flag. + console.error('Redis client error:', error); + } + }); } catch (error) { console.warn('Failed to create Redis client:', error); } diff --git a/docs/cache-handler-docs/src/pages/usage/creating-a-custom-handler.mdx b/docs/cache-handler-docs/src/pages/usage/creating-a-custom-handler.mdx index b48b9fed..88f81cea 100644 --- a/docs/cache-handler-docs/src/pages/usage/creating-a-custom-handler.mdx +++ b/docs/cache-handler-docs/src/pages/usage/creating-a-custom-handler.mdx @@ -27,8 +27,13 @@ CacheHandler.onCreation(async () => { url: 'redis://localhost:6379', }); - // Ignore Redis errors: https://github.com/redis/node-redis?tab=readme-ov-file#events. - client.on('error', () => {}); + // Redis won't work without error handling. https://github.com/redis/node-redis?tab=readme-ov-file#events + client.on('error', (error) => { + if (typeof process.env.NEXT_PRIVATE_DEBUG_CACHE !== 'undefined') { + // Use logging with caution in production. Redis will flood your logs. Hide it behind a flag. + console.error('Redis client error:', error); + } + }); await client.connect(); From 403ee6148dd536291d58571458e9ce755ed429b6 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 30 Jul 2024 11:10:21 +0300 Subject: [PATCH 329/458] Bump redis from 4.6.15 to 4.7.0 (#677) Bumps [redis](https://github.com/redis/node-redis) from 4.6.15 to 4.7.0. - [Release notes](https://github.com/redis/node-redis/releases) - [Changelog](https://github.com/redis/node-redis/blob/master/CHANGELOG.md) - [Commits](https://github.com/redis/node-redis/compare/redis@4.6.15...redis@4.7.0) --- updated-dependencies: - dependency-name: redis dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- package-lock.json | 40 ++++++++++++++++----------------- 2 files changed, 21 insertions(+), 21 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 3ef9e63d..f4849d31 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -36,7 +36,7 @@ "eslint": "8.57.0", "fastify": "4.28.1", "pm2": "5.4.2", - "redis": "4.6.15", + "redis": "4.7.0", "rimraf": "6.0.1", "tsx": "4.16.2", "typescript": "5.5.4" diff --git a/package-lock.json b/package-lock.json index d3fde308..c2bf2237 100644 --- a/package-lock.json +++ b/package-lock.json @@ -56,7 +56,7 @@ "eslint": "8.57.0", "fastify": "4.28.1", "pm2": "5.4.2", - "redis": "4.6.15", + "redis": "4.7.0", "rimraf": "6.0.1", "tsx": "4.16.2", "typescript": "5.5.4" @@ -3794,9 +3794,9 @@ } }, "node_modules/@redis/client": { - "version": "1.5.17", - "resolved": "https://registry.npmjs.org/@redis/client/-/client-1.5.17.tgz", - "integrity": "sha512-IPvU9A31qRCZ7lds/x+ksuK/UMndd0EASveAvCvEtFFKIZjZ+m/a4a0L7S28KEWoR5ka8526hlSghDo4Hrc2Hg==", + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@redis/client/-/client-1.6.0.tgz", + "integrity": "sha512-aR0uffYI700OEEH4gYnitAnv3vzVGXCFvYfdpu/CJKvk4pHfLPEy/JSZyrpQ+15WhXe1yJRXLtfQ84s4mEXnPg==", "dependencies": { "cluster-key-slot": "1.1.2", "generic-pool": "3.9.0", @@ -3815,25 +3815,25 @@ } }, "node_modules/@redis/json": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/@redis/json/-/json-1.0.6.tgz", - "integrity": "sha512-rcZO3bfQbm2zPRpqo82XbW8zg4G/w4W3tI7X8Mqleq9goQjAGLL7q/1n1ZX4dXEAmORVZ4s1+uKLaUOg7LrUhw==", + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/@redis/json/-/json-1.0.7.tgz", + "integrity": "sha512-6UyXfjVaTBTJtKNG4/9Z8PSpKE6XgSyEb8iwaqDcy+uKrd/DGYHTWkUdnQDyzm727V7p21WUMhsqz5oy65kPcQ==", "peerDependencies": { "@redis/client": "^1.0.0" } }, "node_modules/@redis/search": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/@redis/search/-/search-1.1.6.tgz", - "integrity": "sha512-mZXCxbTYKBQ3M2lZnEddwEAks0Kc7nauire8q20oA0oA/LoA+E/b5Y5KZn232ztPb1FkIGqo12vh3Lf+Vw5iTw==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@redis/search/-/search-1.2.0.tgz", + "integrity": "sha512-tYoDBbtqOVigEDMAcTGsRlMycIIjwMCgD8eR2t0NANeQmgK/lvxNAvYyb6bZDD4frHRhIHkJu2TBRvB0ERkOmw==", "peerDependencies": { "@redis/client": "^1.0.0" } }, "node_modules/@redis/time-series": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/@redis/time-series/-/time-series-1.0.5.tgz", - "integrity": "sha512-IFjIgTusQym2B5IZJG3XKr5llka7ey84fw/NOYqESP5WUfQs9zz1ww/9+qoz4ka/S6KcGBodzlCeZ5UImKbscg==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@redis/time-series/-/time-series-1.1.0.tgz", + "integrity": "sha512-c1Q99M5ljsIuc4YdaCwfUEXsofakb9c8+Zse2qxTadu8TalLXuAESzLvFAvNVbkmSlvlzIQOLpBCmWI9wTOt+g==", "peerDependencies": { "@redis/client": "^1.0.0" } @@ -14030,19 +14030,19 @@ } }, "node_modules/redis": { - "version": "4.6.15", - "resolved": "https://registry.npmjs.org/redis/-/redis-4.6.15.tgz", - "integrity": "sha512-2NtuOpMW3tnYzBw6S8mbXSX7RPzvVFCA2wFJq9oErushO2UeBkxObk+uvo7gv7n0rhWeOj/IzrHO8TjcFlRSOg==", + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/redis/-/redis-4.7.0.tgz", + "integrity": "sha512-zvmkHEAdGMn+hMRXuMBtu4Vo5P6rHQjLoHftu+lBqq8ZTA3RCVC/WzD790bkKKiNFp7d5/9PcSD19fJyyRvOdQ==", "workspaces": [ "./packages/*" ], "dependencies": { "@redis/bloom": "1.2.0", - "@redis/client": "1.5.17", + "@redis/client": "1.6.0", "@redis/graph": "1.1.1", - "@redis/json": "1.0.6", - "@redis/search": "1.1.6", - "@redis/time-series": "1.0.5" + "@redis/json": "1.0.7", + "@redis/search": "1.2.0", + "@redis/time-series": "1.1.0" } }, "node_modules/reflect.getprototypeof": { From 80a7bfb4aaae3059221516f8192e3abd561873e7 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 30 Jul 2024 11:30:54 +0300 Subject: [PATCH 330/458] Bump @types/node from 20.14.12 to 22.0.0 in the definitely-typed group (#676) Bumps the definitely-typed group with 1 update: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node). Updates `@types/node` from 20.14.12 to 22.0.0 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) --- updated-dependencies: - dependency-name: "@types/node" dependency-type: direct:development update-type: version-update:semver-major dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- internal/backend/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 34 ++++++++++++--------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 10 files changed, 29 insertions(+), 23 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index f4849d31..2cbe9465 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -28,7 +28,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "20.14.12", + "@types/node": "22.0.0", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "axios": "1.7.2", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 8b939320..aae632a5 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -22,7 +22,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "20.14.12", + "@types/node": "22.0.0", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "eslint": "8.57.0", diff --git a/internal/backend/package.json b/internal/backend/package.json index 8b0fd30f..55fe7a45 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.12", + "@types/node": "22.0.0", "pino-pretty": "11.2.2", "rimraf": "6.0.1", "tsx": "4.16.2", diff --git a/internal/next-common/package.json b/internal/next-common/package.json index 8d235e39..39d0cba7 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.12", + "@types/node": "22.0.0", "rimraf": "6.0.1", "typescript": "5.5.4" } diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index 6a0ad357..52ca8942 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -16,7 +16,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "20.14.12", + "@types/node": "22.0.0", "rimraf": "6.0.1", "typescript": "5.5.4" } diff --git a/package-lock.json b/package-lock.json index c2bf2237..532f3ccf 100644 --- a/package-lock.json +++ b/package-lock.json @@ -48,7 +48,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "20.14.12", + "@types/node": "22.0.0", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "axios": "1.7.2", @@ -126,7 +126,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "20.14.12", + "@types/node": "22.0.0", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "eslint": "8.57.0", @@ -452,7 +452,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.12", + "@types/node": "22.0.0", "pino-pretty": "11.2.2", "rimraf": "6.0.1", "tsx": "4.16.2", @@ -591,7 +591,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.12", + "@types/node": "22.0.0", "rimraf": "6.0.1", "typescript": "5.5.4" } @@ -804,7 +804,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "20.14.12", + "@types/node": "22.0.0", "rimraf": "6.0.1", "typescript": "5.5.4" } @@ -4235,11 +4235,11 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "20.14.12", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.12.tgz", - "integrity": "sha512-r7wNXakLeSsGT0H1AU863vS2wa5wBOK4bWMjZz2wj+8nBx+m5PeIn0k8AloSLpRuiwdRQZwarZqHE4FNArPuJQ==", + "version": "22.0.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.0.0.tgz", + "integrity": "sha512-VT7KSYudcPOzP5Q0wfbowyNLaVR8QWUdw+088uFWwfvpY6uCWaXpqV6ieLAu9WBcnTa7H4Z5RLK8I5t2FuOcqw==", "dependencies": { - "undici-types": "~5.26.4" + "undici-types": "~6.11.1" } }, "node_modules/@types/node-fetch": { @@ -4252,6 +4252,11 @@ "form-data": "^4.0.0" } }, + "node_modules/@types/node/node_modules/undici-types": { + "version": "6.11.1", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.11.1.tgz", + "integrity": "sha512-mIDEX2ek50x0OlRgxryxsenE5XaQD4on5U2inY7RApK3SOJpofyw7uW2AyfMKkhAxXIceo2DeWGVGwyvng1GNQ==" + }, "node_modules/@types/normalize-package-data": { "version": "2.4.4", "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.4.tgz", @@ -16741,7 +16746,8 @@ "node_modules/undici-types": { "version": "5.26.5", "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", - "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==" + "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==", + "peer": true }, "node_modules/unified": { "version": "10.1.2", @@ -17570,7 +17576,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.14.12", + "@types/node": "22.0.0", "rimraf": "6.0.1", "tsup": "8.2.3", "tsx": "4.16.2", @@ -17589,7 +17595,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.12", + "@types/node": "22.0.0", "rimraf": "6.0.1", "tsup": "8.2.3", "typescript": "5.5.4" @@ -17605,7 +17611,7 @@ "license": "MIT", "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.12", + "@types/node": "22.0.0", "rimraf": "6.0.1", "tsup": "8.2.3", "tsx": "4.16.2", @@ -17627,7 +17633,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.14.12", + "@types/node": "22.0.0", "rimraf": "6.0.1", "tsup": "8.2.3", "tsx": "4.16.2", diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 7a012658..41fff22e 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -80,7 +80,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.14.12", + "@types/node": "22.0.0", "rimraf": "6.0.1", "tsup": "8.2.3", "tsx": "4.16.2", diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index c0e1da6e..65d547d1 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -25,7 +25,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.12", + "@types/node": "22.0.0", "rimraf": "6.0.1", "tsup": "8.2.3", "typescript": "5.5.4" diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index af7536e9..ee7bd720 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -28,7 +28,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "20.14.12", + "@types/node": "22.0.0", "rimraf": "6.0.1", "tsup": "8.2.3", "tsx": "4.16.2", diff --git a/packages/server/package.json b/packages/server/package.json index a194e4af..2147b1b5 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -32,7 +32,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "20.14.12", + "@types/node": "22.0.0", "rimraf": "6.0.1", "tsup": "8.2.3", "tsx": "4.16.2", From cff24e094d5724fc77442906b1e10f03b80628f7 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 1 Aug 2024 22:43:00 +0300 Subject: [PATCH 331/458] Bump the turbo group with 2 updates (#679) Bumps the turbo group with 2 updates: [turbo](https://github.com/vercel/turbo) and [eslint-config-turbo](https://github.com/vercel/turbo/tree/HEAD/packages/eslint-config-turbo). Updates `turbo` from 2.0.9 to 2.0.10 - [Release notes](https://github.com/vercel/turbo/releases) - [Changelog](https://github.com/vercel/turbo/blob/main/release.md) - [Commits](https://github.com/vercel/turbo/compare/v2.0.9...v2.0.10) Updates `eslint-config-turbo` from 2.0.9 to 2.0.10 - [Release notes](https://github.com/vercel/turbo/releases) - [Changelog](https://github.com/vercel/turbo/blob/main/release.md) - [Commits](https://github.com/vercel/turbo/commits/v2.0.10/packages/eslint-config-turbo) --- updated-dependencies: - dependency-name: turbo dependency-type: direct:development update-type: version-update:semver-patch dependency-group: turbo - dependency-name: eslint-config-turbo dependency-type: direct:development update-type: version-update:semver-patch dependency-group: turbo ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- internal/eslint-config/package.json | 2 +- package-lock.json | 72 ++++++++++++++--------------- package.json | 2 +- 3 files changed, 38 insertions(+), 38 deletions(-) diff --git a/internal/eslint-config/package.json b/internal/eslint-config/package.json index 3a8a07da..af8ce9b8 100644 --- a/internal/eslint-config/package.json +++ b/internal/eslint-config/package.json @@ -10,7 +10,7 @@ "@typescript-eslint/parser": "7.5.0", "@vercel/style-guide": "6.0.0", "eslint-config-prettier": "9.1.0", - "eslint-config-turbo": "2.0.9", + "eslint-config-turbo": "2.0.10", "eslint-plugin-only-warn": "1.1.0", "typescript": "5.5.4" } diff --git a/package-lock.json b/package-lock.json index 532f3ccf..d0970df9 100644 --- a/package-lock.json +++ b/package-lock.json @@ -26,7 +26,7 @@ "diffscribe": "*", "glob": "11.0.0", "prettier": "3.3.3", - "turbo": "2.0.9" + "turbo": "2.0.10" }, "engines": { "node": ">=20.9.0", @@ -467,7 +467,7 @@ "@typescript-eslint/parser": "7.5.0", "@vercel/style-guide": "6.0.0", "eslint-config-prettier": "9.1.0", - "eslint-config-turbo": "2.0.9", + "eslint-config-turbo": "2.0.10", "eslint-plugin-only-warn": "1.1.0", "typescript": "5.5.4" } @@ -6965,12 +6965,12 @@ } }, "node_modules/eslint-config-turbo": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/eslint-config-turbo/-/eslint-config-turbo-2.0.9.tgz", - "integrity": "sha512-FoIMElI8md/dR5DxjB5Om52KJfi7Qf7RInXeE+PGU6lN388rumppwyqEJsZ7vnR5GhGa9cLPt0vNZwEK9iXtKg==", + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/eslint-config-turbo/-/eslint-config-turbo-2.0.10.tgz", + "integrity": "sha512-mMbaj/yQc5P2mY09iwlduZrU+FUvpSn0MdbntyTEE46zKATCoeLWNhOaQacTU6AnZRyfe/mGLVIjOl+9Hm4qBQ==", "dev": true, "dependencies": { - "eslint-plugin-turbo": "2.0.9" + "eslint-plugin-turbo": "2.0.10" }, "peerDependencies": { "eslint": ">6.6.0" @@ -7655,9 +7655,9 @@ } }, "node_modules/eslint-plugin-turbo": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/eslint-plugin-turbo/-/eslint-plugin-turbo-2.0.9.tgz", - "integrity": "sha512-q4s4mg6JcXzz5zK4LC3c6FcWehGAWjGj7kIM76ZvG0KiR9Ks0znzjnAKW0NoiDP4s/gt3r4YPOpI357qWt167Q==", + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/eslint-plugin-turbo/-/eslint-plugin-turbo-2.0.10.tgz", + "integrity": "sha512-6TR1Zu6UNRcvVvD/W+LUDjncGyr3I7oqRjVDvggPGSXs6Hbtk9Oc2GIPQji1JvWy8rzU59fFxrsTEgEKHFKlRA==", "dev": true, "dependencies": { "dotenv": "16.0.3" @@ -16493,26 +16493,26 @@ } }, "node_modules/turbo": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/turbo/-/turbo-2.0.9.tgz", - "integrity": "sha512-QaLaUL1CqblSKKPgLrFW3lZWkWG4pGBQNW+q1ScJB5v1D/nFWtsrD/yZljW/bdawg90ihi4/ftQJ3h6fz1FamA==", + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/turbo/-/turbo-2.0.10.tgz", + "integrity": "sha512-1t10h9bWl94/zktjzVWwTerJL3kIMDSA8mfibr1bevGLjF0DsiHOJFkCQFa5QABK0eXb0Af5mdRehLRBVem0Qg==", "dev": true, "bin": { "turbo": "bin/turbo" }, "optionalDependencies": { - "turbo-darwin-64": "2.0.9", - "turbo-darwin-arm64": "2.0.9", - "turbo-linux-64": "2.0.9", - "turbo-linux-arm64": "2.0.9", - "turbo-windows-64": "2.0.9", - "turbo-windows-arm64": "2.0.9" + "turbo-darwin-64": "2.0.10", + "turbo-darwin-arm64": "2.0.10", + "turbo-linux-64": "2.0.10", + "turbo-linux-arm64": "2.0.10", + "turbo-windows-64": "2.0.10", + "turbo-windows-arm64": "2.0.10" } }, "node_modules/turbo-darwin-64": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/turbo-darwin-64/-/turbo-darwin-64-2.0.9.tgz", - "integrity": "sha512-owlGsOaExuVGBUfrnJwjkL1BWlvefjSKczEAcpLx4BI7Oh6ttakOi+JyomkPkFlYElRpjbvlR2gP8WIn6M/+xQ==", + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/turbo-darwin-64/-/turbo-darwin-64-2.0.10.tgz", + "integrity": "sha512-ND4hohx0wrd0AUsCf2RsdavlzUWVi0JU3vX5Vn2+wk3GG5RcZWIKi3y+it9MjgYuqqlCystkDbeamfH05iiQBQ==", "cpu": [ "x64" ], @@ -16523,9 +16523,9 @@ ] }, "node_modules/turbo-darwin-arm64": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/turbo-darwin-arm64/-/turbo-darwin-arm64-2.0.9.tgz", - "integrity": "sha512-XAXkKkePth5ZPPE/9G9tTnPQx0C8UTkGWmNGYkpmGgRr8NedW+HrPsi9N0HcjzzIH9A4TpNYvtiV+WcwdaEjKA==", + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/turbo-darwin-arm64/-/turbo-darwin-arm64-2.0.10.tgz", + "integrity": "sha512-cvHMMi1jDiiVl5ls1nWwXyanH7mB+xD3oYyZOC3NzZdFAfce3CWpL6hgUnK2CFxbdvaHQTizkQEgsHvUeD9nTQ==", "cpu": [ "arm64" ], @@ -16536,9 +16536,9 @@ ] }, "node_modules/turbo-linux-64": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/turbo-linux-64/-/turbo-linux-64-2.0.9.tgz", - "integrity": "sha512-l9wSgEjrCFM1aG16zItBsZ206ZlhSSx1owB8Cgskfv0XyIXRGHRkluihiaxkp+UeU5WoEfz4EN5toc+ICA0q0w==", + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/turbo-linux-64/-/turbo-linux-64-2.0.10.tgz", + "integrity": "sha512-dPRwHrKkzyc/VuQLfhOeYLkBxA60vvLZyn9pXChRF0zyimg04OnhBYcKBNkfWMUU+Z1gQDFEvfyvnV9EEHLh0Q==", "cpu": [ "x64" ], @@ -16549,9 +16549,9 @@ ] }, "node_modules/turbo-linux-arm64": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/turbo-linux-arm64/-/turbo-linux-arm64-2.0.9.tgz", - "integrity": "sha512-gRnjxXRne18B27SwxXMqL3fJu7jw/8kBrOBTBNRSmZZiG1Uu3nbnP7b4lgrA/bCku6C0Wligwqurvtpq6+nFHA==", + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/turbo-linux-arm64/-/turbo-linux-arm64-2.0.10.tgz", + "integrity": "sha512-6qsYl+b1gf243QbL6cw+TbgUEWo6/krCCWDQjVg/8Znx45rkXnTJUqtIAMkQQsT+t7d3UU8hreQ77pjOW59LcQ==", "cpu": [ "arm64" ], @@ -16562,9 +16562,9 @@ ] }, "node_modules/turbo-windows-64": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/turbo-windows-64/-/turbo-windows-64-2.0.9.tgz", - "integrity": "sha512-ZVo0apxUvaRq4Vm1qhsfqKKhtRgReYlBVf9MQvVU1O9AoyydEQvLDO1ryqpXDZWpcHoFxHAQc9msjAMtE5K2lA==", + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/turbo-windows-64/-/turbo-windows-64-2.0.10.tgz", + "integrity": "sha512-rkMOqvwN7hmMJNeChj63ZpLlIF6b9QC0jW/IbOMgcZMLcvz9iF+qCc2yaeDWgfOgLsNjhtv1rlhimShUuasSXw==", "cpu": [ "x64" ], @@ -16575,9 +16575,9 @@ ] }, "node_modules/turbo-windows-arm64": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/turbo-windows-arm64/-/turbo-windows-arm64-2.0.9.tgz", - "integrity": "sha512-sGRz7c5Pey6y7y9OKi8ypbWNuIRPF9y8xcMqL56OZifSUSo+X2EOsOleR9MKxQXVaqHPGOUKWsE6y8hxBi9pag==", + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/turbo-windows-arm64/-/turbo-windows-arm64-2.0.10.tgz", + "integrity": "sha512-r7HQScx+CpO0p+Mw97Yq63uUAIwTfEUXRX6qxzeipBK+mTsnV1A6dTTYeVLD3S5AlL8GGdXddx0swyDeeVkQng==", "cpu": [ "arm64" ], diff --git a/package.json b/package.json index 7eb23c15..0dedc371 100644 --- a/package.json +++ b/package.json @@ -44,7 +44,7 @@ "diffscribe": "*", "glob": "11.0.0", "prettier": "3.3.3", - "turbo": "2.0.9" + "turbo": "2.0.10" }, "packageManager": "npm@10.7.0", "engines": { From 5aa9f2119c4b4ecabb400447b9c6d8bf1aeec803 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 1 Aug 2024 23:36:50 +0300 Subject: [PATCH 332/458] Bump @types/node from 22.0.0 to 22.0.2 in the definitely-typed group (#680) Bumps the definitely-typed group with 1 update: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node). Updates `@types/node` from 22.0.0 to 22.0.2 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) --- updated-dependencies: - dependency-name: "@types/node" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- internal/backend/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 24 ++++++++++----------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 10 files changed, 21 insertions(+), 21 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 2cbe9465..dbb2fccf 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -28,7 +28,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "22.0.0", + "@types/node": "22.0.2", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "axios": "1.7.2", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index aae632a5..b2cf9338 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -22,7 +22,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "22.0.0", + "@types/node": "22.0.2", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "eslint": "8.57.0", diff --git a/internal/backend/package.json b/internal/backend/package.json index 55fe7a45..c2a679a8 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.0.0", + "@types/node": "22.0.2", "pino-pretty": "11.2.2", "rimraf": "6.0.1", "tsx": "4.16.2", diff --git a/internal/next-common/package.json b/internal/next-common/package.json index 39d0cba7..502fb47f 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.0.0", + "@types/node": "22.0.2", "rimraf": "6.0.1", "typescript": "5.5.4" } diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index 52ca8942..9b80b2ae 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -16,7 +16,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "22.0.0", + "@types/node": "22.0.2", "rimraf": "6.0.1", "typescript": "5.5.4" } diff --git a/package-lock.json b/package-lock.json index d0970df9..efbcae26 100644 --- a/package-lock.json +++ b/package-lock.json @@ -48,7 +48,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "22.0.0", + "@types/node": "22.0.2", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "axios": "1.7.2", @@ -126,7 +126,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "22.0.0", + "@types/node": "22.0.2", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "eslint": "8.57.0", @@ -452,7 +452,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.0.0", + "@types/node": "22.0.2", "pino-pretty": "11.2.2", "rimraf": "6.0.1", "tsx": "4.16.2", @@ -591,7 +591,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.0.0", + "@types/node": "22.0.2", "rimraf": "6.0.1", "typescript": "5.5.4" } @@ -804,7 +804,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "22.0.0", + "@types/node": "22.0.2", "rimraf": "6.0.1", "typescript": "5.5.4" } @@ -4235,9 +4235,9 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "22.0.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.0.0.tgz", - "integrity": "sha512-VT7KSYudcPOzP5Q0wfbowyNLaVR8QWUdw+088uFWwfvpY6uCWaXpqV6ieLAu9WBcnTa7H4Z5RLK8I5t2FuOcqw==", + "version": "22.0.2", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.0.2.tgz", + "integrity": "sha512-yPL6DyFwY5PiMVEwymNeqUTKsDczQBJ/5T7W/46RwLU/VH+AA8aT5TZkvBviLKLbbm0hlfftEkGrNzfRk/fofQ==", "dependencies": { "undici-types": "~6.11.1" } @@ -17576,7 +17576,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.0.0", + "@types/node": "22.0.2", "rimraf": "6.0.1", "tsup": "8.2.3", "tsx": "4.16.2", @@ -17595,7 +17595,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.0.0", + "@types/node": "22.0.2", "rimraf": "6.0.1", "tsup": "8.2.3", "typescript": "5.5.4" @@ -17611,7 +17611,7 @@ "license": "MIT", "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.0.0", + "@types/node": "22.0.2", "rimraf": "6.0.1", "tsup": "8.2.3", "tsx": "4.16.2", @@ -17633,7 +17633,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.0.0", + "@types/node": "22.0.2", "rimraf": "6.0.1", "tsup": "8.2.3", "tsx": "4.16.2", diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 41fff22e..172a303b 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -80,7 +80,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.0.0", + "@types/node": "22.0.2", "rimraf": "6.0.1", "tsup": "8.2.3", "tsx": "4.16.2", diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index 65d547d1..ea5efb38 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -25,7 +25,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.0.0", + "@types/node": "22.0.2", "rimraf": "6.0.1", "tsup": "8.2.3", "typescript": "5.5.4" diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index ee7bd720..46d31fc4 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -28,7 +28,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.0.0", + "@types/node": "22.0.2", "rimraf": "6.0.1", "tsup": "8.2.3", "tsx": "4.16.2", diff --git a/packages/server/package.json b/packages/server/package.json index 2147b1b5..f8c23182 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -32,7 +32,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.0.0", + "@types/node": "22.0.2", "rimraf": "6.0.1", "tsup": "8.2.3", "tsx": "4.16.2", From 170701e90fcac752f0c9cb0a0c5e07483be26bf9 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 1 Aug 2024 23:54:50 +0300 Subject: [PATCH 333/458] Bump tsx from 4.16.2 to 4.16.5 (#683) Bumps [tsx](https://github.com/privatenumber/tsx) from 4.16.2 to 4.16.5. - [Release notes](https://github.com/privatenumber/tsx/releases) - [Changelog](https://github.com/privatenumber/tsx/blob/master/release.config.cjs) - [Commits](https://github.com/privatenumber/tsx/compare/v4.16.2...v4.16.5) --- updated-dependencies: - dependency-name: tsx dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- internal/backend/package.json | 2 +- package-lock.json | 16 ++++++++-------- packages/cache-handler/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 6 files changed, 13 insertions(+), 13 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index dbb2fccf..6cdd92ce 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -38,7 +38,7 @@ "pm2": "5.4.2", "redis": "4.7.0", "rimraf": "6.0.1", - "tsx": "4.16.2", + "tsx": "4.16.5", "typescript": "5.5.4" } } diff --git a/internal/backend/package.json b/internal/backend/package.json index c2a679a8..e2ccd6a5 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -18,7 +18,7 @@ "@types/node": "22.0.2", "pino-pretty": "11.2.2", "rimraf": "6.0.1", - "tsx": "4.16.2", + "tsx": "4.16.5", "typescript": "5.5.4" } } diff --git a/package-lock.json b/package-lock.json index efbcae26..8c7fe254 100644 --- a/package-lock.json +++ b/package-lock.json @@ -58,7 +58,7 @@ "pm2": "5.4.2", "redis": "4.7.0", "rimraf": "6.0.1", - "tsx": "4.16.2", + "tsx": "4.16.5", "typescript": "5.5.4" } }, @@ -455,7 +455,7 @@ "@types/node": "22.0.2", "pino-pretty": "11.2.2", "rimraf": "6.0.1", - "tsx": "4.16.2", + "tsx": "4.16.5", "typescript": "5.5.4" } }, @@ -16451,9 +16451,9 @@ "dev": true }, "node_modules/tsx": { - "version": "4.16.2", - "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.16.2.tgz", - "integrity": "sha512-C1uWweJDgdtX2x600HjaFaucXTilT7tgUZHbOE4+ypskZ1OP8CRCSDkCxG6Vya9EwaFIVagWwpaVAn5wzypaqQ==", + "version": "4.16.5", + "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.16.5.tgz", + "integrity": "sha512-ArsiAQHEW2iGaqZ8fTA1nX0a+lN5mNTyuGRRO6OW3H/Yno1y9/t1f9YOI1Cfoqz63VAthn++ZYcbDP7jPflc+A==", "dev": true, "dependencies": { "esbuild": "~0.21.5", @@ -17579,7 +17579,7 @@ "@types/node": "22.0.2", "rimraf": "6.0.1", "tsup": "8.2.3", - "tsx": "4.16.2", + "tsx": "4.16.5", "typescript": "5.5.4" }, "peerDependencies": { @@ -17614,7 +17614,7 @@ "@types/node": "22.0.2", "rimraf": "6.0.1", "tsup": "8.2.3", - "tsx": "4.16.2", + "tsx": "4.16.5", "typescript": "5.5.4" } }, @@ -17636,7 +17636,7 @@ "@types/node": "22.0.2", "rimraf": "6.0.1", "tsup": "8.2.3", - "tsx": "4.16.2", + "tsx": "4.16.5", "typescript": "5.5.4" } } diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 172a303b..1430fa62 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -83,7 +83,7 @@ "@types/node": "22.0.2", "rimraf": "6.0.1", "tsup": "8.2.3", - "tsx": "4.16.2", + "tsx": "4.16.5", "typescript": "5.5.4" }, "peerDependencies": { diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 46d31fc4..6f6d58d3 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -31,7 +31,7 @@ "@types/node": "22.0.2", "rimraf": "6.0.1", "tsup": "8.2.3", - "tsx": "4.16.2", + "tsx": "4.16.5", "typescript": "5.5.4" } } diff --git a/packages/server/package.json b/packages/server/package.json index f8c23182..f5a9bb09 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -35,7 +35,7 @@ "@types/node": "22.0.2", "rimraf": "6.0.1", "tsup": "8.2.3", - "tsx": "4.16.2", + "tsx": "4.16.5", "typescript": "5.5.4" }, "distTags": [ From ca7933fab623978cfd0d6654b359a80d63e411c8 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 3 Aug 2024 12:05:16 +0300 Subject: [PATCH 334/458] Bump axios from 1.7.2 to 1.7.3 (#685) Bumps [axios](https://github.com/axios/axios) from 1.7.2 to 1.7.3. - [Release notes](https://github.com/axios/axios/releases) - [Changelog](https://github.com/axios/axios/blob/v1.x/CHANGELOG.md) - [Commits](https://github.com/axios/axios/compare/v1.7.2...v1.7.3) --- updated-dependencies: - dependency-name: axios dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- package-lock.json | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 6cdd92ce..fc844786 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -31,7 +31,7 @@ "@types/node": "22.0.2", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", - "axios": "1.7.2", + "axios": "1.7.3", "dotenv-cli": "7.4.2", "eslint": "8.57.0", "fastify": "4.28.1", diff --git a/package-lock.json b/package-lock.json index 8c7fe254..fb629bda 100644 --- a/package-lock.json +++ b/package-lock.json @@ -51,7 +51,7 @@ "@types/node": "22.0.2", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", - "axios": "1.7.2", + "axios": "1.7.3", "dotenv-cli": "7.4.2", "eslint": "8.57.0", "fastify": "4.28.1", @@ -5095,9 +5095,9 @@ } }, "node_modules/axios": { - "version": "1.7.2", - "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.2.tgz", - "integrity": "sha512-2A8QhOMrbomlDuiLeK9XibIBzuHeRcqqNOHp0Cyp5EoJ1IFDh+XZH3A6BkXtv0K4gFGCI0Y4BM7B1wOEi0Rmgw==", + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.3.tgz", + "integrity": "sha512-Ar7ND9pU99eJ9GpoGQKhKf58GpUOgnzuaB7ueNQ5BMi0p+LZ5oaEnfF999fAArcTIBwXTCHAmGcHOZJaWPq9Nw==", "dev": true, "dependencies": { "follow-redirects": "^1.15.6", From 44a3db2d98272e34b38c15d1014d177634c25b31 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 3 Aug 2024 18:20:38 +0300 Subject: [PATCH 335/458] Bump the turbo group with 2 updates (#684) Bumps the turbo group with 2 updates: [turbo](https://github.com/vercel/turbo) and [eslint-config-turbo](https://github.com/vercel/turbo/tree/HEAD/packages/eslint-config-turbo). Updates `turbo` from 2.0.10 to 2.0.11 - [Release notes](https://github.com/vercel/turbo/releases) - [Changelog](https://github.com/vercel/turbo/blob/main/release.md) - [Commits](https://github.com/vercel/turbo/compare/v2.0.10...v2.0.11) Updates `eslint-config-turbo` from 2.0.10 to 2.0.11 - [Release notes](https://github.com/vercel/turbo/releases) - [Changelog](https://github.com/vercel/turbo/blob/main/release.md) - [Commits](https://github.com/vercel/turbo/commits/v2.0.11/packages/eslint-config-turbo) --- updated-dependencies: - dependency-name: turbo dependency-type: direct:development update-type: version-update:semver-patch dependency-group: turbo - dependency-name: eslint-config-turbo dependency-type: direct:development update-type: version-update:semver-patch dependency-group: turbo ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- internal/eslint-config/package.json | 2 +- package-lock.json | 72 ++++++++++++++--------------- package.json | 2 +- 3 files changed, 38 insertions(+), 38 deletions(-) diff --git a/internal/eslint-config/package.json b/internal/eslint-config/package.json index af8ce9b8..7d38d589 100644 --- a/internal/eslint-config/package.json +++ b/internal/eslint-config/package.json @@ -10,7 +10,7 @@ "@typescript-eslint/parser": "7.5.0", "@vercel/style-guide": "6.0.0", "eslint-config-prettier": "9.1.0", - "eslint-config-turbo": "2.0.10", + "eslint-config-turbo": "2.0.11", "eslint-plugin-only-warn": "1.1.0", "typescript": "5.5.4" } diff --git a/package-lock.json b/package-lock.json index fb629bda..681f1dee 100644 --- a/package-lock.json +++ b/package-lock.json @@ -26,7 +26,7 @@ "diffscribe": "*", "glob": "11.0.0", "prettier": "3.3.3", - "turbo": "2.0.10" + "turbo": "2.0.11" }, "engines": { "node": ">=20.9.0", @@ -467,7 +467,7 @@ "@typescript-eslint/parser": "7.5.0", "@vercel/style-guide": "6.0.0", "eslint-config-prettier": "9.1.0", - "eslint-config-turbo": "2.0.10", + "eslint-config-turbo": "2.0.11", "eslint-plugin-only-warn": "1.1.0", "typescript": "5.5.4" } @@ -6965,12 +6965,12 @@ } }, "node_modules/eslint-config-turbo": { - "version": "2.0.10", - "resolved": "https://registry.npmjs.org/eslint-config-turbo/-/eslint-config-turbo-2.0.10.tgz", - "integrity": "sha512-mMbaj/yQc5P2mY09iwlduZrU+FUvpSn0MdbntyTEE46zKATCoeLWNhOaQacTU6AnZRyfe/mGLVIjOl+9Hm4qBQ==", + "version": "2.0.11", + "resolved": "https://registry.npmjs.org/eslint-config-turbo/-/eslint-config-turbo-2.0.11.tgz", + "integrity": "sha512-hriQ+OQvKbtE1w7JH+w2X+Lh/9YPgnaNJmjrfhANWStFJTDa1NrJMCm2UaxHbDNKxFsr/mN9TTkVCRiTktIaqw==", "dev": true, "dependencies": { - "eslint-plugin-turbo": "2.0.10" + "eslint-plugin-turbo": "2.0.11" }, "peerDependencies": { "eslint": ">6.6.0" @@ -7655,9 +7655,9 @@ } }, "node_modules/eslint-plugin-turbo": { - "version": "2.0.10", - "resolved": "https://registry.npmjs.org/eslint-plugin-turbo/-/eslint-plugin-turbo-2.0.10.tgz", - "integrity": "sha512-6TR1Zu6UNRcvVvD/W+LUDjncGyr3I7oqRjVDvggPGSXs6Hbtk9Oc2GIPQji1JvWy8rzU59fFxrsTEgEKHFKlRA==", + "version": "2.0.11", + "resolved": "https://registry.npmjs.org/eslint-plugin-turbo/-/eslint-plugin-turbo-2.0.11.tgz", + "integrity": "sha512-cM2KRlC6zh8Y5pOpiGTkBMp3/V4f4sEebSYcHjotfc4VQziPXuZtf/4Si4pd6l1FpmYfkgE+AReZsRfEfK17bw==", "dev": true, "dependencies": { "dotenv": "16.0.3" @@ -16493,26 +16493,26 @@ } }, "node_modules/turbo": { - "version": "2.0.10", - "resolved": "https://registry.npmjs.org/turbo/-/turbo-2.0.10.tgz", - "integrity": "sha512-1t10h9bWl94/zktjzVWwTerJL3kIMDSA8mfibr1bevGLjF0DsiHOJFkCQFa5QABK0eXb0Af5mdRehLRBVem0Qg==", + "version": "2.0.11", + "resolved": "https://registry.npmjs.org/turbo/-/turbo-2.0.11.tgz", + "integrity": "sha512-imDlFFAvitbCm1JtDFJ6eG882qwxHUmVT2noPb3p2jq5o5DuXOchMbkVS9kUeC3/4WpY5N0GBZ3RvqNyjHZw1Q==", "dev": true, "bin": { "turbo": "bin/turbo" }, "optionalDependencies": { - "turbo-darwin-64": "2.0.10", - "turbo-darwin-arm64": "2.0.10", - "turbo-linux-64": "2.0.10", - "turbo-linux-arm64": "2.0.10", - "turbo-windows-64": "2.0.10", - "turbo-windows-arm64": "2.0.10" + "turbo-darwin-64": "2.0.11", + "turbo-darwin-arm64": "2.0.11", + "turbo-linux-64": "2.0.11", + "turbo-linux-arm64": "2.0.11", + "turbo-windows-64": "2.0.11", + "turbo-windows-arm64": "2.0.11" } }, "node_modules/turbo-darwin-64": { - "version": "2.0.10", - "resolved": "https://registry.npmjs.org/turbo-darwin-64/-/turbo-darwin-64-2.0.10.tgz", - "integrity": "sha512-ND4hohx0wrd0AUsCf2RsdavlzUWVi0JU3vX5Vn2+wk3GG5RcZWIKi3y+it9MjgYuqqlCystkDbeamfH05iiQBQ==", + "version": "2.0.11", + "resolved": "https://registry.npmjs.org/turbo-darwin-64/-/turbo-darwin-64-2.0.11.tgz", + "integrity": "sha512-YlHEEhcm+jI1BSZoLugGHUWDfRXaNaQIv7tGQBfadYjo9kixBnqoTOU6s1ubOrQMID+lizZZQs79GXwqM6vohg==", "cpu": [ "x64" ], @@ -16523,9 +16523,9 @@ ] }, "node_modules/turbo-darwin-arm64": { - "version": "2.0.10", - "resolved": "https://registry.npmjs.org/turbo-darwin-arm64/-/turbo-darwin-arm64-2.0.10.tgz", - "integrity": "sha512-cvHMMi1jDiiVl5ls1nWwXyanH7mB+xD3oYyZOC3NzZdFAfce3CWpL6hgUnK2CFxbdvaHQTizkQEgsHvUeD9nTQ==", + "version": "2.0.11", + "resolved": "https://registry.npmjs.org/turbo-darwin-arm64/-/turbo-darwin-arm64-2.0.11.tgz", + "integrity": "sha512-K/YW+hWzRQ/wGmtffxllH4M1tgy8OlwgXODrIiAGzkSpZl9+pIsem/F86UULlhsIeavBYK/LS5+dzV3DPMjJ9w==", "cpu": [ "arm64" ], @@ -16536,9 +16536,9 @@ ] }, "node_modules/turbo-linux-64": { - "version": "2.0.10", - "resolved": "https://registry.npmjs.org/turbo-linux-64/-/turbo-linux-64-2.0.10.tgz", - "integrity": "sha512-dPRwHrKkzyc/VuQLfhOeYLkBxA60vvLZyn9pXChRF0zyimg04OnhBYcKBNkfWMUU+Z1gQDFEvfyvnV9EEHLh0Q==", + "version": "2.0.11", + "resolved": "https://registry.npmjs.org/turbo-linux-64/-/turbo-linux-64-2.0.11.tgz", + "integrity": "sha512-mv8CwGP06UPweMh1Vlp6PI6OWnkuibxfIJ4Vlof7xqjohAaZU5FLqeOeHkjQflH/6YrCVuS9wrK0TFOu+meTtA==", "cpu": [ "x64" ], @@ -16549,9 +16549,9 @@ ] }, "node_modules/turbo-linux-arm64": { - "version": "2.0.10", - "resolved": "https://registry.npmjs.org/turbo-linux-arm64/-/turbo-linux-arm64-2.0.10.tgz", - "integrity": "sha512-6qsYl+b1gf243QbL6cw+TbgUEWo6/krCCWDQjVg/8Znx45rkXnTJUqtIAMkQQsT+t7d3UU8hreQ77pjOW59LcQ==", + "version": "2.0.11", + "resolved": "https://registry.npmjs.org/turbo-linux-arm64/-/turbo-linux-arm64-2.0.11.tgz", + "integrity": "sha512-wLE5tl4oriTmHbuayc0ki0csaCplmVLj+uCWtecM/mfBuZgNS9ICNM9c4sB+Cfl5tlBBFeepqRNgvRvn8WeVZg==", "cpu": [ "arm64" ], @@ -16562,9 +16562,9 @@ ] }, "node_modules/turbo-windows-64": { - "version": "2.0.10", - "resolved": "https://registry.npmjs.org/turbo-windows-64/-/turbo-windows-64-2.0.10.tgz", - "integrity": "sha512-rkMOqvwN7hmMJNeChj63ZpLlIF6b9QC0jW/IbOMgcZMLcvz9iF+qCc2yaeDWgfOgLsNjhtv1rlhimShUuasSXw==", + "version": "2.0.11", + "resolved": "https://registry.npmjs.org/turbo-windows-64/-/turbo-windows-64-2.0.11.tgz", + "integrity": "sha512-tja3zvVCSWu3HizOoeQv0qDJ+GeWGWRFOOM6a8i3BYnXLgGKAaDZFcjwzgC50tWiAw4aowIVR4OouwIyRhLBaQ==", "cpu": [ "x64" ], @@ -16575,9 +16575,9 @@ ] }, "node_modules/turbo-windows-arm64": { - "version": "2.0.10", - "resolved": "https://registry.npmjs.org/turbo-windows-arm64/-/turbo-windows-arm64-2.0.10.tgz", - "integrity": "sha512-r7HQScx+CpO0p+Mw97Yq63uUAIwTfEUXRX6qxzeipBK+mTsnV1A6dTTYeVLD3S5AlL8GGdXddx0swyDeeVkQng==", + "version": "2.0.11", + "resolved": "https://registry.npmjs.org/turbo-windows-arm64/-/turbo-windows-arm64-2.0.11.tgz", + "integrity": "sha512-sYjXP6k94Bqh99R+y3M1Ks6LRIEZybMz+7enA8GKl6JJ2ZFaXxTnS6q+/2+ii1+rRwxohj5OBb4gxODcF8Jd4w==", "cpu": [ "arm64" ], diff --git a/package.json b/package.json index 0dedc371..002c24fb 100644 --- a/package.json +++ b/package.json @@ -44,7 +44,7 @@ "diffscribe": "*", "glob": "11.0.0", "prettier": "3.3.3", - "turbo": "2.0.10" + "turbo": "2.0.11" }, "packageManager": "npm@10.7.0", "engines": { From cb9822755b1170ef52b9d18c4aedc3e631767c5c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 3 Aug 2024 19:04:41 +0300 Subject: [PATCH 336/458] Bump tsup from 8.2.3 to 8.2.4 (#687) Bumps [tsup](https://github.com/egoist/tsup) from 8.2.3 to 8.2.4. - [Release notes](https://github.com/egoist/tsup/releases) - [Changelog](https://github.com/egoist/tsup/blob/dev/.releaserc.json) - [Commits](https://github.com/egoist/tsup/compare/v8.2.3...v8.2.4) --- updated-dependencies: - dependency-name: tsup dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 14 +++++++------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 5 files changed, 11 insertions(+), 11 deletions(-) diff --git a/package-lock.json b/package-lock.json index 681f1dee..5767d490 100644 --- a/package-lock.json +++ b/package-lock.json @@ -15869,9 +15869,9 @@ "integrity": "sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ==" }, "node_modules/tsup": { - "version": "8.2.3", - "resolved": "https://registry.npmjs.org/tsup/-/tsup-8.2.3.tgz", - "integrity": "sha512-6YNT44oUfXRbZuSMNmN36GzwPPIlD2wBccY7looM2fkTcxkf2NEmwr3OZuDZoySklnrIG4hoEtzy8yUXYOqNcg==", + "version": "8.2.4", + "resolved": "https://registry.npmjs.org/tsup/-/tsup-8.2.4.tgz", + "integrity": "sha512-akpCPePnBnC/CXgRrcy72ZSntgIEUa1jN0oJbbvpALWKNOz1B7aM+UVDWGRGIO/T/PZugAESWDJUAb5FD48o8Q==", "dev": true, "dependencies": { "bundle-require": "^5.0.0", @@ -17578,7 +17578,7 @@ "@repo/typescript-config": "*", "@types/node": "22.0.2", "rimraf": "6.0.1", - "tsup": "8.2.3", + "tsup": "8.2.4", "tsx": "4.16.5", "typescript": "5.5.4" }, @@ -17597,7 +17597,7 @@ "@repo/typescript-config": "*", "@types/node": "22.0.2", "rimraf": "6.0.1", - "tsup": "8.2.3", + "tsup": "8.2.4", "typescript": "5.5.4" }, "peerDependencies": { @@ -17613,7 +17613,7 @@ "@repo/typescript-config": "*", "@types/node": "22.0.2", "rimraf": "6.0.1", - "tsup": "8.2.3", + "tsup": "8.2.4", "tsx": "4.16.5", "typescript": "5.5.4" } @@ -17635,7 +17635,7 @@ "@repo/typescript-config": "*", "@types/node": "22.0.2", "rimraf": "6.0.1", - "tsup": "8.2.3", + "tsup": "8.2.4", "tsx": "4.16.5", "typescript": "5.5.4" } diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 1430fa62..e133fd31 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -82,7 +82,7 @@ "@repo/typescript-config": "*", "@types/node": "22.0.2", "rimraf": "6.0.1", - "tsup": "8.2.3", + "tsup": "8.2.4", "tsx": "4.16.5", "typescript": "5.5.4" }, diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index ea5efb38..72a082ab 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -27,7 +27,7 @@ "@repo/typescript-config": "*", "@types/node": "22.0.2", "rimraf": "6.0.1", - "tsup": "8.2.3", + "tsup": "8.2.4", "typescript": "5.5.4" }, "peerDependencies": { diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 6f6d58d3..fd686d60 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -30,7 +30,7 @@ "@repo/typescript-config": "*", "@types/node": "22.0.2", "rimraf": "6.0.1", - "tsup": "8.2.3", + "tsup": "8.2.4", "tsx": "4.16.5", "typescript": "5.5.4" } diff --git a/packages/server/package.json b/packages/server/package.json index f5a9bb09..b2b3d2bc 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -34,7 +34,7 @@ "@repo/typescript-config": "*", "@types/node": "22.0.2", "rimraf": "6.0.1", - "tsup": "8.2.3", + "tsup": "8.2.4", "tsx": "4.16.5", "typescript": "5.5.4" }, From 61913d47889418a0858f9b3385b23a4d537c9c6e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 4 Aug 2024 09:44:14 +0300 Subject: [PATCH 337/458] Bump @types/node from 22.0.2 to 22.1.0 in the definitely-typed group (#686) Bumps the definitely-typed group with 1 update: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node). Updates `@types/node` from 22.0.2 to 22.1.0 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) --- updated-dependencies: - dependency-name: "@types/node" dependency-type: direct:development update-type: version-update:semver-minor dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- internal/backend/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 32 ++++++++++----------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 10 files changed, 25 insertions(+), 25 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index fc844786..9bd3732b 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -28,7 +28,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "22.0.2", + "@types/node": "22.1.0", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "axios": "1.7.3", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index b2cf9338..5f9dab44 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -22,7 +22,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "22.0.2", + "@types/node": "22.1.0", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "eslint": "8.57.0", diff --git a/internal/backend/package.json b/internal/backend/package.json index e2ccd6a5..42e7dc34 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.0.2", + "@types/node": "22.1.0", "pino-pretty": "11.2.2", "rimraf": "6.0.1", "tsx": "4.16.5", diff --git a/internal/next-common/package.json b/internal/next-common/package.json index 502fb47f..9ee10b10 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.0.2", + "@types/node": "22.1.0", "rimraf": "6.0.1", "typescript": "5.5.4" } diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index 9b80b2ae..b6e4a971 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -16,7 +16,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "22.0.2", + "@types/node": "22.1.0", "rimraf": "6.0.1", "typescript": "5.5.4" } diff --git a/package-lock.json b/package-lock.json index 5767d490..1da1f275 100644 --- a/package-lock.json +++ b/package-lock.json @@ -48,7 +48,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "22.0.2", + "@types/node": "22.1.0", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "axios": "1.7.3", @@ -126,7 +126,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "22.0.2", + "@types/node": "22.1.0", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "eslint": "8.57.0", @@ -452,7 +452,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.0.2", + "@types/node": "22.1.0", "pino-pretty": "11.2.2", "rimraf": "6.0.1", "tsx": "4.16.5", @@ -591,7 +591,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.0.2", + "@types/node": "22.1.0", "rimraf": "6.0.1", "typescript": "5.5.4" } @@ -804,7 +804,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "22.0.2", + "@types/node": "22.1.0", "rimraf": "6.0.1", "typescript": "5.5.4" } @@ -4235,11 +4235,11 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "22.0.2", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.0.2.tgz", - "integrity": "sha512-yPL6DyFwY5PiMVEwymNeqUTKsDczQBJ/5T7W/46RwLU/VH+AA8aT5TZkvBviLKLbbm0hlfftEkGrNzfRk/fofQ==", + "version": "22.1.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.1.0.tgz", + "integrity": "sha512-AOmuRF0R2/5j1knA3c6G3HOk523Ga+l+ZXltX8SF1+5oqcXijjfTd8fY3XRZqSihEu9XhtQnKYLmkFaoxgsJHw==", "dependencies": { - "undici-types": "~6.11.1" + "undici-types": "~6.13.0" } }, "node_modules/@types/node-fetch": { @@ -4253,9 +4253,9 @@ } }, "node_modules/@types/node/node_modules/undici-types": { - "version": "6.11.1", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.11.1.tgz", - "integrity": "sha512-mIDEX2ek50x0OlRgxryxsenE5XaQD4on5U2inY7RApK3SOJpofyw7uW2AyfMKkhAxXIceo2DeWGVGwyvng1GNQ==" + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.13.0.tgz", + "integrity": "sha512-xtFJHudx8S2DSoujjMd1WeWvn7KKWFRESZTMeL1RptAYERu29D6jphMjjY+vn96jvN3kVPDNxU/E13VTaXj6jg==" }, "node_modules/@types/normalize-package-data": { "version": "2.4.4", @@ -17576,7 +17576,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.0.2", + "@types/node": "22.1.0", "rimraf": "6.0.1", "tsup": "8.2.4", "tsx": "4.16.5", @@ -17595,7 +17595,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.0.2", + "@types/node": "22.1.0", "rimraf": "6.0.1", "tsup": "8.2.4", "typescript": "5.5.4" @@ -17611,7 +17611,7 @@ "license": "MIT", "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.0.2", + "@types/node": "22.1.0", "rimraf": "6.0.1", "tsup": "8.2.4", "tsx": "4.16.5", @@ -17633,7 +17633,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.0.2", + "@types/node": "22.1.0", "rimraf": "6.0.1", "tsup": "8.2.4", "tsx": "4.16.5", diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index e133fd31..f646813f 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -80,7 +80,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.0.2", + "@types/node": "22.1.0", "rimraf": "6.0.1", "tsup": "8.2.4", "tsx": "4.16.5", diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index 72a082ab..97a9dd5a 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -25,7 +25,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.0.2", + "@types/node": "22.1.0", "rimraf": "6.0.1", "tsup": "8.2.4", "typescript": "5.5.4" diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index fd686d60..7a21d8c1 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -28,7 +28,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.0.2", + "@types/node": "22.1.0", "rimraf": "6.0.1", "tsup": "8.2.4", "tsx": "4.16.5", diff --git a/packages/server/package.json b/packages/server/package.json index b2b3d2bc..3930b0b4 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -32,7 +32,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.0.2", + "@types/node": "22.1.0", "rimraf": "6.0.1", "tsup": "8.2.4", "tsx": "4.16.5", From f2e540968bbc8ab798f1503f08bf5df8dd6a3f00 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 7 Aug 2024 11:12:49 +0300 Subject: [PATCH 338/458] Bump @playwright/test from 1.45.3 to 1.46.0 (#690) Bumps [@playwright/test](https://github.com/microsoft/playwright) from 1.45.3 to 1.46.0. - [Release notes](https://github.com/microsoft/playwright/releases) - [Commits](https://github.com/microsoft/playwright/compare/v1.45.3...v1.46.0) --- updated-dependencies: - dependency-name: "@playwright/test" dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- package-lock.json | 24 ++++++++++++------------ 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 9bd3732b..8c1cd474 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -24,7 +24,7 @@ "devDependencies": { "@neshca/cache-handler": "*", "@next/eslint-plugin-next": "14.3.0-canary.44", - "@playwright/test": "1.45.3", + "@playwright/test": "1.46.0", "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", diff --git a/package-lock.json b/package-lock.json index 1da1f275..3f6ceed4 100644 --- a/package-lock.json +++ b/package-lock.json @@ -44,7 +44,7 @@ "devDependencies": { "@neshca/cache-handler": "*", "@next/eslint-plugin-next": "14.3.0-canary.44", - "@playwright/test": "1.45.3", + "@playwright/test": "1.46.0", "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", @@ -3528,12 +3528,12 @@ } }, "node_modules/@playwright/test": { - "version": "1.45.3", - "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.45.3.tgz", - "integrity": "sha512-UKF4XsBfy+u3MFWEH44hva1Q8Da28G6RFtR2+5saw+jgAFQV5yYnB1fu68Mz7fO+5GJF3wgwAIs0UelU8TxFrA==", + "version": "1.46.0", + "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.46.0.tgz", + "integrity": "sha512-/QYft5VArOrGRP5pgkrfKksqsKA6CEFyGQ/gjNe6q0y4tZ1aaPfq4gIjudr1s3D+pXyrPRdsy4opKDrjBabE5w==", "devOptional": true, "dependencies": { - "playwright": "1.45.3" + "playwright": "1.46.0" }, "bin": { "playwright": "cli.js" @@ -13274,12 +13274,12 @@ } }, "node_modules/playwright": { - "version": "1.45.3", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.45.3.tgz", - "integrity": "sha512-QhVaS+lpluxCaioejDZ95l4Y4jSFCsBvl2UZkpeXlzxmqS+aABr5c82YmfMHrL6x27nvrvykJAFpkzT2eWdJww==", + "version": "1.46.0", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.46.0.tgz", + "integrity": "sha512-XYJ5WvfefWONh1uPAUAi0H2xXV5S3vrtcnXe6uAOgdGi3aSpqOSXX08IAjXW34xitfuOJsvXU5anXZxPSEQiJw==", "devOptional": true, "dependencies": { - "playwright-core": "1.45.3" + "playwright-core": "1.46.0" }, "bin": { "playwright": "cli.js" @@ -13292,9 +13292,9 @@ } }, "node_modules/playwright-core": { - "version": "1.45.3", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.45.3.tgz", - "integrity": "sha512-+ym0jNbcjikaOwwSZycFbwkWgfruWvYlJfThKYAlImbxUgdWFO2oW70ojPm4OpE4t6TAo2FY/smM+hpVTtkhDA==", + "version": "1.46.0", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.46.0.tgz", + "integrity": "sha512-9Y/d5UIwuJk8t3+lhmMSAJyNP1BUC/DqP3cQJDQQL/oWqAiuPTLgy7Q5dzglmTLwcBRdetzgNM/gni7ckfTr6A==", "devOptional": true, "bin": { "playwright-core": "cli.js" From d543d095b19e977caab89ea84be62687773e9bb4 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 7 Aug 2024 11:23:18 +0300 Subject: [PATCH 339/458] Bump the turbo group with 2 updates (#689) Bumps the turbo group with 2 updates: [turbo](https://github.com/vercel/turbo) and [eslint-config-turbo](https://github.com/vercel/turbo/tree/HEAD/packages/eslint-config-turbo). Updates `turbo` from 2.0.11 to 2.0.12 - [Release notes](https://github.com/vercel/turbo/releases) - [Changelog](https://github.com/vercel/turbo/blob/main/release.md) - [Commits](https://github.com/vercel/turbo/compare/v2.0.11...v2.0.12) Updates `eslint-config-turbo` from 2.0.11 to 2.0.12 - [Release notes](https://github.com/vercel/turbo/releases) - [Changelog](https://github.com/vercel/turbo/blob/main/release.md) - [Commits](https://github.com/vercel/turbo/commits/v2.0.12/packages/eslint-config-turbo) --- updated-dependencies: - dependency-name: turbo dependency-type: direct:development update-type: version-update:semver-patch dependency-group: turbo - dependency-name: eslint-config-turbo dependency-type: direct:development update-type: version-update:semver-patch dependency-group: turbo ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- internal/eslint-config/package.json | 2 +- package-lock.json | 72 ++++++++++++++--------------- package.json | 2 +- 3 files changed, 38 insertions(+), 38 deletions(-) diff --git a/internal/eslint-config/package.json b/internal/eslint-config/package.json index 7d38d589..1439be4f 100644 --- a/internal/eslint-config/package.json +++ b/internal/eslint-config/package.json @@ -10,7 +10,7 @@ "@typescript-eslint/parser": "7.5.0", "@vercel/style-guide": "6.0.0", "eslint-config-prettier": "9.1.0", - "eslint-config-turbo": "2.0.11", + "eslint-config-turbo": "2.0.12", "eslint-plugin-only-warn": "1.1.0", "typescript": "5.5.4" } diff --git a/package-lock.json b/package-lock.json index 3f6ceed4..a05015f2 100644 --- a/package-lock.json +++ b/package-lock.json @@ -26,7 +26,7 @@ "diffscribe": "*", "glob": "11.0.0", "prettier": "3.3.3", - "turbo": "2.0.11" + "turbo": "2.0.12" }, "engines": { "node": ">=20.9.0", @@ -467,7 +467,7 @@ "@typescript-eslint/parser": "7.5.0", "@vercel/style-guide": "6.0.0", "eslint-config-prettier": "9.1.0", - "eslint-config-turbo": "2.0.11", + "eslint-config-turbo": "2.0.12", "eslint-plugin-only-warn": "1.1.0", "typescript": "5.5.4" } @@ -6965,12 +6965,12 @@ } }, "node_modules/eslint-config-turbo": { - "version": "2.0.11", - "resolved": "https://registry.npmjs.org/eslint-config-turbo/-/eslint-config-turbo-2.0.11.tgz", - "integrity": "sha512-hriQ+OQvKbtE1w7JH+w2X+Lh/9YPgnaNJmjrfhANWStFJTDa1NrJMCm2UaxHbDNKxFsr/mN9TTkVCRiTktIaqw==", + "version": "2.0.12", + "resolved": "https://registry.npmjs.org/eslint-config-turbo/-/eslint-config-turbo-2.0.12.tgz", + "integrity": "sha512-3PUzoyeJi2SjsTSjfWgTUIHK7kOqsapDEaOT7sCjFnZXvuhYLKxW37lysjq7+55abGGm0yQTXxNFLjrQKUORag==", "dev": true, "dependencies": { - "eslint-plugin-turbo": "2.0.11" + "eslint-plugin-turbo": "2.0.12" }, "peerDependencies": { "eslint": ">6.6.0" @@ -7655,9 +7655,9 @@ } }, "node_modules/eslint-plugin-turbo": { - "version": "2.0.11", - "resolved": "https://registry.npmjs.org/eslint-plugin-turbo/-/eslint-plugin-turbo-2.0.11.tgz", - "integrity": "sha512-cM2KRlC6zh8Y5pOpiGTkBMp3/V4f4sEebSYcHjotfc4VQziPXuZtf/4Si4pd6l1FpmYfkgE+AReZsRfEfK17bw==", + "version": "2.0.12", + "resolved": "https://registry.npmjs.org/eslint-plugin-turbo/-/eslint-plugin-turbo-2.0.12.tgz", + "integrity": "sha512-vXWKer7F0RPTcVy1B+hFTEK4mlEOpouB8MCAFD3WW4C6t98wvuDCsIPjxIldpxg7CnwmRxALpNWgNVkU2LVVEQ==", "dev": true, "dependencies": { "dotenv": "16.0.3" @@ -16493,26 +16493,26 @@ } }, "node_modules/turbo": { - "version": "2.0.11", - "resolved": "https://registry.npmjs.org/turbo/-/turbo-2.0.11.tgz", - "integrity": "sha512-imDlFFAvitbCm1JtDFJ6eG882qwxHUmVT2noPb3p2jq5o5DuXOchMbkVS9kUeC3/4WpY5N0GBZ3RvqNyjHZw1Q==", + "version": "2.0.12", + "resolved": "https://registry.npmjs.org/turbo/-/turbo-2.0.12.tgz", + "integrity": "sha512-8s2KwqjwQj7z8Z53SUZSKVkQOZ2/Sl4D2F440oaBY/k2lGju60dW6srEpnn8/RIDeICZmQn3pQHF79Jfnc5Skw==", "dev": true, "bin": { "turbo": "bin/turbo" }, "optionalDependencies": { - "turbo-darwin-64": "2.0.11", - "turbo-darwin-arm64": "2.0.11", - "turbo-linux-64": "2.0.11", - "turbo-linux-arm64": "2.0.11", - "turbo-windows-64": "2.0.11", - "turbo-windows-arm64": "2.0.11" + "turbo-darwin-64": "2.0.12", + "turbo-darwin-arm64": "2.0.12", + "turbo-linux-64": "2.0.12", + "turbo-linux-arm64": "2.0.12", + "turbo-windows-64": "2.0.12", + "turbo-windows-arm64": "2.0.12" } }, "node_modules/turbo-darwin-64": { - "version": "2.0.11", - "resolved": "https://registry.npmjs.org/turbo-darwin-64/-/turbo-darwin-64-2.0.11.tgz", - "integrity": "sha512-YlHEEhcm+jI1BSZoLugGHUWDfRXaNaQIv7tGQBfadYjo9kixBnqoTOU6s1ubOrQMID+lizZZQs79GXwqM6vohg==", + "version": "2.0.12", + "resolved": "https://registry.npmjs.org/turbo-darwin-64/-/turbo-darwin-64-2.0.12.tgz", + "integrity": "sha512-NAgfgbXxX/JScWQmmQnGbPuFZq7LIswHfcMk5JwyBXQM/xmklNOxxac7MnGGIOf19Z2f6S3qHy17VIj0SeGfnA==", "cpu": [ "x64" ], @@ -16523,9 +16523,9 @@ ] }, "node_modules/turbo-darwin-arm64": { - "version": "2.0.11", - "resolved": "https://registry.npmjs.org/turbo-darwin-arm64/-/turbo-darwin-arm64-2.0.11.tgz", - "integrity": "sha512-K/YW+hWzRQ/wGmtffxllH4M1tgy8OlwgXODrIiAGzkSpZl9+pIsem/F86UULlhsIeavBYK/LS5+dzV3DPMjJ9w==", + "version": "2.0.12", + "resolved": "https://registry.npmjs.org/turbo-darwin-arm64/-/turbo-darwin-arm64-2.0.12.tgz", + "integrity": "sha512-cP02uer5KSJ+fXL+OfRRk5hnVjV0c60hxDgNcJxrZpfhun7HHoKDDR7w2xhQntiA45aC6ZZEXRqMKpj6GAmKbg==", "cpu": [ "arm64" ], @@ -16536,9 +16536,9 @@ ] }, "node_modules/turbo-linux-64": { - "version": "2.0.11", - "resolved": "https://registry.npmjs.org/turbo-linux-64/-/turbo-linux-64-2.0.11.tgz", - "integrity": "sha512-mv8CwGP06UPweMh1Vlp6PI6OWnkuibxfIJ4Vlof7xqjohAaZU5FLqeOeHkjQflH/6YrCVuS9wrK0TFOu+meTtA==", + "version": "2.0.12", + "resolved": "https://registry.npmjs.org/turbo-linux-64/-/turbo-linux-64-2.0.12.tgz", + "integrity": "sha512-+mQgGfg1eq5qF+wenK/FKJaNMNAo5DQLC4htQy+8osW+fx6U+8+6UlPQPaycAWDEqwOI7NwuqkeHfkEQLQUTyQ==", "cpu": [ "x64" ], @@ -16549,9 +16549,9 @@ ] }, "node_modules/turbo-linux-arm64": { - "version": "2.0.11", - "resolved": "https://registry.npmjs.org/turbo-linux-arm64/-/turbo-linux-arm64-2.0.11.tgz", - "integrity": "sha512-wLE5tl4oriTmHbuayc0ki0csaCplmVLj+uCWtecM/mfBuZgNS9ICNM9c4sB+Cfl5tlBBFeepqRNgvRvn8WeVZg==", + "version": "2.0.12", + "resolved": "https://registry.npmjs.org/turbo-linux-arm64/-/turbo-linux-arm64-2.0.12.tgz", + "integrity": "sha512-KFyEZDXfPU1DK4zimxdCcqAcK7IIttX4mfsgB7NsSEOmH0dhHOih/YFYiyEDC1lTRx0C2RlzQ0Kjjdz48AN5Eg==", "cpu": [ "arm64" ], @@ -16562,9 +16562,9 @@ ] }, "node_modules/turbo-windows-64": { - "version": "2.0.11", - "resolved": "https://registry.npmjs.org/turbo-windows-64/-/turbo-windows-64-2.0.11.tgz", - "integrity": "sha512-tja3zvVCSWu3HizOoeQv0qDJ+GeWGWRFOOM6a8i3BYnXLgGKAaDZFcjwzgC50tWiAw4aowIVR4OouwIyRhLBaQ==", + "version": "2.0.12", + "resolved": "https://registry.npmjs.org/turbo-windows-64/-/turbo-windows-64-2.0.12.tgz", + "integrity": "sha512-kJj4KCkZTkDTDCqsSw1m1dbO4WeoQq1mYUm/thXOH0OkeqYbSMt0EyoTcJOgKUDsrMnzZD2gPfYrlYHtV69lVA==", "cpu": [ "x64" ], @@ -16575,9 +16575,9 @@ ] }, "node_modules/turbo-windows-arm64": { - "version": "2.0.11", - "resolved": "https://registry.npmjs.org/turbo-windows-arm64/-/turbo-windows-arm64-2.0.11.tgz", - "integrity": "sha512-sYjXP6k94Bqh99R+y3M1Ks6LRIEZybMz+7enA8GKl6JJ2ZFaXxTnS6q+/2+ii1+rRwxohj5OBb4gxODcF8Jd4w==", + "version": "2.0.12", + "resolved": "https://registry.npmjs.org/turbo-windows-arm64/-/turbo-windows-arm64-2.0.12.tgz", + "integrity": "sha512-TY3ROxguDilN2olCwcZMaePdW01Xhma0pZU7bNhsQEqca9RGAmsZBuzfGnTMcWPmv4tpnb/PlX1hrt1Hod/44Q==", "cpu": [ "arm64" ], diff --git a/package.json b/package.json index 002c24fb..ea3784ee 100644 --- a/package.json +++ b/package.json @@ -44,7 +44,7 @@ "diffscribe": "*", "glob": "11.0.0", "prettier": "3.3.3", - "turbo": "2.0.11" + "turbo": "2.0.12" }, "packageManager": "npm@10.7.0", "engines": { From 7cef5e13884143b29206eba90c2eaab795ccc0d2 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 9 Aug 2024 10:33:17 +0300 Subject: [PATCH 340/458] Bump tsx from 4.16.5 to 4.17.0 (#693) Bumps [tsx](https://github.com/privatenumber/tsx) from 4.16.5 to 4.17.0. - [Release notes](https://github.com/privatenumber/tsx/releases) - [Changelog](https://github.com/privatenumber/tsx/blob/master/release.config.cjs) - [Commits](https://github.com/privatenumber/tsx/compare/v4.16.5...v4.17.0) --- updated-dependencies: - dependency-name: tsx dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- internal/backend/package.json | 2 +- package-lock.json | 664 ++++---------------- packages/cache-handler/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 6 files changed, 134 insertions(+), 540 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 8c1cd474..21d2b43b 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -38,7 +38,7 @@ "pm2": "5.4.2", "redis": "4.7.0", "rimraf": "6.0.1", - "tsx": "4.16.5", + "tsx": "4.17.0", "typescript": "5.5.4" } } diff --git a/internal/backend/package.json b/internal/backend/package.json index 42e7dc34..907eb358 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -18,7 +18,7 @@ "@types/node": "22.1.0", "pino-pretty": "11.2.2", "rimraf": "6.0.1", - "tsx": "4.16.5", + "tsx": "4.17.0", "typescript": "5.5.4" } } diff --git a/package-lock.json b/package-lock.json index a05015f2..24afe348 100644 --- a/package-lock.json +++ b/package-lock.json @@ -58,7 +58,7 @@ "pm2": "5.4.2", "redis": "4.7.0", "rimraf": "6.0.1", - "tsx": "4.16.5", + "tsx": "4.17.0", "typescript": "5.5.4" } }, @@ -455,7 +455,7 @@ "@types/node": "22.1.0", "pino-pretty": "11.2.2", "rimraf": "6.0.1", - "tsx": "4.16.5", + "tsx": "4.17.0", "typescript": "5.5.4" } }, @@ -1768,9 +1768,9 @@ } }, "node_modules/@esbuild/aix-ppc64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.21.5.tgz", - "integrity": "sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==", + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.23.0.tgz", + "integrity": "sha512-3sG8Zwa5fMcA9bgqB8AfWPQ+HFke6uD3h1s3RIwUNK8EG7a4buxvuFTs3j1IMs2NXAk9F30C/FF4vxRgQCcmoQ==", "cpu": [ "ppc64" ], @@ -1780,13 +1780,13 @@ "aix" ], "engines": { - "node": ">=12" + "node": ">=18" } }, "node_modules/@esbuild/android-arm": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.21.5.tgz", - "integrity": "sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==", + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.23.0.tgz", + "integrity": "sha512-+KuOHTKKyIKgEEqKbGTK8W7mPp+hKinbMBeEnNzjJGyFcWsfrXjSTNluJHCY1RqhxFurdD8uNXQDei7qDlR6+g==", "cpu": [ "arm" ], @@ -1796,13 +1796,13 @@ "android" ], "engines": { - "node": ">=12" + "node": ">=18" } }, "node_modules/@esbuild/android-arm64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.21.5.tgz", - "integrity": "sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==", + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.23.0.tgz", + "integrity": "sha512-EuHFUYkAVfU4qBdyivULuu03FhJO4IJN9PGuABGrFy4vUuzk91P2d+npxHcFdpUnfYKy0PuV+n6bKIpHOB3prQ==", "cpu": [ "arm64" ], @@ -1812,13 +1812,13 @@ "android" ], "engines": { - "node": ">=12" + "node": ">=18" } }, "node_modules/@esbuild/android-x64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.21.5.tgz", - "integrity": "sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==", + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.23.0.tgz", + "integrity": "sha512-WRrmKidLoKDl56LsbBMhzTTBxrsVwTKdNbKDalbEZr0tcsBgCLbEtoNthOW6PX942YiYq8HzEnb4yWQMLQuipQ==", "cpu": [ "x64" ], @@ -1828,13 +1828,13 @@ "android" ], "engines": { - "node": ">=12" + "node": ">=18" } }, "node_modules/@esbuild/darwin-arm64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.21.5.tgz", - "integrity": "sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==", + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.23.0.tgz", + "integrity": "sha512-YLntie/IdS31H54Ogdn+v50NuoWF5BDkEUFpiOChVa9UnKpftgwzZRrI4J132ETIi+D8n6xh9IviFV3eXdxfow==", "cpu": [ "arm64" ], @@ -1844,13 +1844,13 @@ "darwin" ], "engines": { - "node": ">=12" + "node": ">=18" } }, "node_modules/@esbuild/darwin-x64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.21.5.tgz", - "integrity": "sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==", + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.23.0.tgz", + "integrity": "sha512-IMQ6eme4AfznElesHUPDZ+teuGwoRmVuuixu7sv92ZkdQcPbsNHzutd+rAfaBKo8YK3IrBEi9SLLKWJdEvJniQ==", "cpu": [ "x64" ], @@ -1860,13 +1860,13 @@ "darwin" ], "engines": { - "node": ">=12" + "node": ">=18" } }, "node_modules/@esbuild/freebsd-arm64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.21.5.tgz", - "integrity": "sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==", + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.23.0.tgz", + "integrity": "sha512-0muYWCng5vqaxobq6LB3YNtevDFSAZGlgtLoAc81PjUfiFz36n4KMpwhtAd4he8ToSI3TGyuhyx5xmiWNYZFyw==", "cpu": [ "arm64" ], @@ -1876,13 +1876,13 @@ "freebsd" ], "engines": { - "node": ">=12" + "node": ">=18" } }, "node_modules/@esbuild/freebsd-x64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.21.5.tgz", - "integrity": "sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==", + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.23.0.tgz", + "integrity": "sha512-XKDVu8IsD0/q3foBzsXGt/KjD/yTKBCIwOHE1XwiXmrRwrX6Hbnd5Eqn/WvDekddK21tfszBSrE/WMaZh+1buQ==", "cpu": [ "x64" ], @@ -1892,13 +1892,13 @@ "freebsd" ], "engines": { - "node": ">=12" + "node": ">=18" } }, "node_modules/@esbuild/linux-arm": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.21.5.tgz", - "integrity": "sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==", + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.23.0.tgz", + "integrity": "sha512-SEELSTEtOFu5LPykzA395Mc+54RMg1EUgXP+iw2SJ72+ooMwVsgfuwXo5Fn0wXNgWZsTVHwY2cg4Vi/bOD88qw==", "cpu": [ "arm" ], @@ -1908,13 +1908,13 @@ "linux" ], "engines": { - "node": ">=12" + "node": ">=18" } }, "node_modules/@esbuild/linux-arm64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.21.5.tgz", - "integrity": "sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==", + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.23.0.tgz", + "integrity": "sha512-j1t5iG8jE7BhonbsEg5d9qOYcVZv/Rv6tghaXM/Ug9xahM0nX/H2gfu6X6z11QRTMT6+aywOMA8TDkhPo8aCGw==", "cpu": [ "arm64" ], @@ -1924,13 +1924,13 @@ "linux" ], "engines": { - "node": ">=12" + "node": ">=18" } }, "node_modules/@esbuild/linux-ia32": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.21.5.tgz", - "integrity": "sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==", + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.23.0.tgz", + "integrity": "sha512-P7O5Tkh2NbgIm2R6x1zGJJsnacDzTFcRWZyTTMgFdVit6E98LTxO+v8LCCLWRvPrjdzXHx9FEOA8oAZPyApWUA==", "cpu": [ "ia32" ], @@ -1940,13 +1940,13 @@ "linux" ], "engines": { - "node": ">=12" + "node": ">=18" } }, "node_modules/@esbuild/linux-loong64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.21.5.tgz", - "integrity": "sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==", + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.23.0.tgz", + "integrity": "sha512-InQwepswq6urikQiIC/kkx412fqUZudBO4SYKu0N+tGhXRWUqAx+Q+341tFV6QdBifpjYgUndV1hhMq3WeJi7A==", "cpu": [ "loong64" ], @@ -1956,13 +1956,13 @@ "linux" ], "engines": { - "node": ">=12" + "node": ">=18" } }, "node_modules/@esbuild/linux-mips64el": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.21.5.tgz", - "integrity": "sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==", + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.23.0.tgz", + "integrity": "sha512-J9rflLtqdYrxHv2FqXE2i1ELgNjT+JFURt/uDMoPQLcjWQA5wDKgQA4t/dTqGa88ZVECKaD0TctwsUfHbVoi4w==", "cpu": [ "mips64el" ], @@ -1972,13 +1972,13 @@ "linux" ], "engines": { - "node": ">=12" + "node": ">=18" } }, "node_modules/@esbuild/linux-ppc64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.21.5.tgz", - "integrity": "sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==", + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.23.0.tgz", + "integrity": "sha512-cShCXtEOVc5GxU0fM+dsFD10qZ5UpcQ8AM22bYj0u/yaAykWnqXJDpd77ublcX6vdDsWLuweeuSNZk4yUxZwtw==", "cpu": [ "ppc64" ], @@ -1988,13 +1988,13 @@ "linux" ], "engines": { - "node": ">=12" + "node": ">=18" } }, "node_modules/@esbuild/linux-riscv64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.21.5.tgz", - "integrity": "sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==", + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.23.0.tgz", + "integrity": "sha512-HEtaN7Y5UB4tZPeQmgz/UhzoEyYftbMXrBCUjINGjh3uil+rB/QzzpMshz3cNUxqXN7Vr93zzVtpIDL99t9aRw==", "cpu": [ "riscv64" ], @@ -2004,13 +2004,13 @@ "linux" ], "engines": { - "node": ">=12" + "node": ">=18" } }, "node_modules/@esbuild/linux-s390x": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.21.5.tgz", - "integrity": "sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==", + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.23.0.tgz", + "integrity": "sha512-WDi3+NVAuyjg/Wxi+o5KPqRbZY0QhI9TjrEEm+8dmpY9Xir8+HE/HNx2JoLckhKbFopW0RdO2D72w8trZOV+Wg==", "cpu": [ "s390x" ], @@ -2020,13 +2020,13 @@ "linux" ], "engines": { - "node": ">=12" + "node": ">=18" } }, "node_modules/@esbuild/linux-x64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.21.5.tgz", - "integrity": "sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==", + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.23.0.tgz", + "integrity": "sha512-a3pMQhUEJkITgAw6e0bWA+F+vFtCciMjW/LPtoj99MhVt+Mfb6bbL9hu2wmTZgNd994qTAEw+U/r6k3qHWWaOQ==", "cpu": [ "x64" ], @@ -2036,13 +2036,13 @@ "linux" ], "engines": { - "node": ">=12" + "node": ">=18" } }, "node_modules/@esbuild/netbsd-x64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.21.5.tgz", - "integrity": "sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==", + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.23.0.tgz", + "integrity": "sha512-cRK+YDem7lFTs2Q5nEv/HHc4LnrfBCbH5+JHu6wm2eP+d8OZNoSMYgPZJq78vqQ9g+9+nMuIsAO7skzphRXHyw==", "cpu": [ "x64" ], @@ -2052,7 +2052,7 @@ "netbsd" ], "engines": { - "node": ">=12" + "node": ">=18" } }, "node_modules/@esbuild/openbsd-arm64": { @@ -2072,9 +2072,9 @@ } }, "node_modules/@esbuild/openbsd-x64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.21.5.tgz", - "integrity": "sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==", + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.23.0.tgz", + "integrity": "sha512-6p3nHpby0DM/v15IFKMjAaayFhqnXV52aEmv1whZHX56pdkK+MEaLoQWj+H42ssFarP1PcomVhbsR4pkz09qBg==", "cpu": [ "x64" ], @@ -2084,13 +2084,13 @@ "openbsd" ], "engines": { - "node": ">=12" + "node": ">=18" } }, "node_modules/@esbuild/sunos-x64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.21.5.tgz", - "integrity": "sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==", + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.23.0.tgz", + "integrity": "sha512-BFelBGfrBwk6LVrmFzCq1u1dZbG4zy/Kp93w2+y83Q5UGYF1d8sCzeLI9NXjKyujjBBniQa8R8PzLFAUrSM9OA==", "cpu": [ "x64" ], @@ -2100,13 +2100,13 @@ "sunos" ], "engines": { - "node": ">=12" + "node": ">=18" } }, "node_modules/@esbuild/win32-arm64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.21.5.tgz", - "integrity": "sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==", + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.23.0.tgz", + "integrity": "sha512-lY6AC8p4Cnb7xYHuIxQ6iYPe6MfO2CC43XXKo9nBXDb35krYt7KGhQnOkRGar5psxYkircpCqfbNDB4uJbS2jQ==", "cpu": [ "arm64" ], @@ -2116,13 +2116,13 @@ "win32" ], "engines": { - "node": ">=12" + "node": ">=18" } }, "node_modules/@esbuild/win32-ia32": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.21.5.tgz", - "integrity": "sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==", + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.23.0.tgz", + "integrity": "sha512-7L1bHlOTcO4ByvI7OXVI5pNN6HSu6pUQq9yodga8izeuB1KcT2UkHaH6118QJwopExPn0rMHIseCTx1CRo/uNA==", "cpu": [ "ia32" ], @@ -2132,13 +2132,13 @@ "win32" ], "engines": { - "node": ">=12" + "node": ">=18" } }, "node_modules/@esbuild/win32-x64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.21.5.tgz", - "integrity": "sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==", + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.23.0.tgz", + "integrity": "sha512-Arm+WgUFLUATuoxCJcahGuk6Yj9Pzxd6l11Zb/2aAuv5kWWvvfhLFo2fni4uSK5vzlUdCGZ/BdV5tH8klj8p8g==", "cpu": [ "x64" ], @@ -2148,7 +2148,7 @@ "win32" ], "engines": { - "node": ">=12" + "node": ">=18" } }, "node_modules/@eslint-community/eslint-utils": { @@ -6809,41 +6809,42 @@ } }, "node_modules/esbuild": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.21.5.tgz", - "integrity": "sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==", + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.23.0.tgz", + "integrity": "sha512-1lvV17H2bMYda/WaFb2jLPeHU3zml2k4/yagNMG8Q/YtfMjCwEUZa2eXXMgZTVSL5q1n4H7sQ0X6CdJDqqeCFA==", "dev": true, "hasInstallScript": true, "bin": { "esbuild": "bin/esbuild" }, "engines": { - "node": ">=12" + "node": ">=18" }, "optionalDependencies": { - "@esbuild/aix-ppc64": "0.21.5", - "@esbuild/android-arm": "0.21.5", - "@esbuild/android-arm64": "0.21.5", - "@esbuild/android-x64": "0.21.5", - "@esbuild/darwin-arm64": "0.21.5", - "@esbuild/darwin-x64": "0.21.5", - "@esbuild/freebsd-arm64": "0.21.5", - "@esbuild/freebsd-x64": "0.21.5", - "@esbuild/linux-arm": "0.21.5", - "@esbuild/linux-arm64": "0.21.5", - "@esbuild/linux-ia32": "0.21.5", - "@esbuild/linux-loong64": "0.21.5", - "@esbuild/linux-mips64el": "0.21.5", - "@esbuild/linux-ppc64": "0.21.5", - "@esbuild/linux-riscv64": "0.21.5", - "@esbuild/linux-s390x": "0.21.5", - "@esbuild/linux-x64": "0.21.5", - "@esbuild/netbsd-x64": "0.21.5", - "@esbuild/openbsd-x64": "0.21.5", - "@esbuild/sunos-x64": "0.21.5", - "@esbuild/win32-arm64": "0.21.5", - "@esbuild/win32-ia32": "0.21.5", - "@esbuild/win32-x64": "0.21.5" + "@esbuild/aix-ppc64": "0.23.0", + "@esbuild/android-arm": "0.23.0", + "@esbuild/android-arm64": "0.23.0", + "@esbuild/android-x64": "0.23.0", + "@esbuild/darwin-arm64": "0.23.0", + "@esbuild/darwin-x64": "0.23.0", + "@esbuild/freebsd-arm64": "0.23.0", + "@esbuild/freebsd-x64": "0.23.0", + "@esbuild/linux-arm": "0.23.0", + "@esbuild/linux-arm64": "0.23.0", + "@esbuild/linux-ia32": "0.23.0", + "@esbuild/linux-loong64": "0.23.0", + "@esbuild/linux-mips64el": "0.23.0", + "@esbuild/linux-ppc64": "0.23.0", + "@esbuild/linux-riscv64": "0.23.0", + "@esbuild/linux-s390x": "0.23.0", + "@esbuild/linux-x64": "0.23.0", + "@esbuild/netbsd-x64": "0.23.0", + "@esbuild/openbsd-arm64": "0.23.0", + "@esbuild/openbsd-x64": "0.23.0", + "@esbuild/sunos-x64": "0.23.0", + "@esbuild/win32-arm64": "0.23.0", + "@esbuild/win32-ia32": "0.23.0", + "@esbuild/win32-x64": "0.23.0" } }, "node_modules/escalade": { @@ -15919,413 +15920,6 @@ } } }, - "node_modules/tsup/node_modules/@esbuild/aix-ppc64": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.23.0.tgz", - "integrity": "sha512-3sG8Zwa5fMcA9bgqB8AfWPQ+HFke6uD3h1s3RIwUNK8EG7a4buxvuFTs3j1IMs2NXAk9F30C/FF4vxRgQCcmoQ==", - "cpu": [ - "ppc64" - ], - "dev": true, - "optional": true, - "os": [ - "aix" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/tsup/node_modules/@esbuild/android-arm": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.23.0.tgz", - "integrity": "sha512-+KuOHTKKyIKgEEqKbGTK8W7mPp+hKinbMBeEnNzjJGyFcWsfrXjSTNluJHCY1RqhxFurdD8uNXQDei7qDlR6+g==", - "cpu": [ - "arm" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/tsup/node_modules/@esbuild/android-arm64": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.23.0.tgz", - "integrity": "sha512-EuHFUYkAVfU4qBdyivULuu03FhJO4IJN9PGuABGrFy4vUuzk91P2d+npxHcFdpUnfYKy0PuV+n6bKIpHOB3prQ==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/tsup/node_modules/@esbuild/android-x64": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.23.0.tgz", - "integrity": "sha512-WRrmKidLoKDl56LsbBMhzTTBxrsVwTKdNbKDalbEZr0tcsBgCLbEtoNthOW6PX942YiYq8HzEnb4yWQMLQuipQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/tsup/node_modules/@esbuild/darwin-arm64": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.23.0.tgz", - "integrity": "sha512-YLntie/IdS31H54Ogdn+v50NuoWF5BDkEUFpiOChVa9UnKpftgwzZRrI4J132ETIi+D8n6xh9IviFV3eXdxfow==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/tsup/node_modules/@esbuild/darwin-x64": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.23.0.tgz", - "integrity": "sha512-IMQ6eme4AfznElesHUPDZ+teuGwoRmVuuixu7sv92ZkdQcPbsNHzutd+rAfaBKo8YK3IrBEi9SLLKWJdEvJniQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/tsup/node_modules/@esbuild/freebsd-arm64": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.23.0.tgz", - "integrity": "sha512-0muYWCng5vqaxobq6LB3YNtevDFSAZGlgtLoAc81PjUfiFz36n4KMpwhtAd4he8ToSI3TGyuhyx5xmiWNYZFyw==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/tsup/node_modules/@esbuild/freebsd-x64": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.23.0.tgz", - "integrity": "sha512-XKDVu8IsD0/q3foBzsXGt/KjD/yTKBCIwOHE1XwiXmrRwrX6Hbnd5Eqn/WvDekddK21tfszBSrE/WMaZh+1buQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/tsup/node_modules/@esbuild/linux-arm": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.23.0.tgz", - "integrity": "sha512-SEELSTEtOFu5LPykzA395Mc+54RMg1EUgXP+iw2SJ72+ooMwVsgfuwXo5Fn0wXNgWZsTVHwY2cg4Vi/bOD88qw==", - "cpu": [ - "arm" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/tsup/node_modules/@esbuild/linux-arm64": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.23.0.tgz", - "integrity": "sha512-j1t5iG8jE7BhonbsEg5d9qOYcVZv/Rv6tghaXM/Ug9xahM0nX/H2gfu6X6z11QRTMT6+aywOMA8TDkhPo8aCGw==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/tsup/node_modules/@esbuild/linux-ia32": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.23.0.tgz", - "integrity": "sha512-P7O5Tkh2NbgIm2R6x1zGJJsnacDzTFcRWZyTTMgFdVit6E98LTxO+v8LCCLWRvPrjdzXHx9FEOA8oAZPyApWUA==", - "cpu": [ - "ia32" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/tsup/node_modules/@esbuild/linux-loong64": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.23.0.tgz", - "integrity": "sha512-InQwepswq6urikQiIC/kkx412fqUZudBO4SYKu0N+tGhXRWUqAx+Q+341tFV6QdBifpjYgUndV1hhMq3WeJi7A==", - "cpu": [ - "loong64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/tsup/node_modules/@esbuild/linux-mips64el": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.23.0.tgz", - "integrity": "sha512-J9rflLtqdYrxHv2FqXE2i1ELgNjT+JFURt/uDMoPQLcjWQA5wDKgQA4t/dTqGa88ZVECKaD0TctwsUfHbVoi4w==", - "cpu": [ - "mips64el" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/tsup/node_modules/@esbuild/linux-ppc64": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.23.0.tgz", - "integrity": "sha512-cShCXtEOVc5GxU0fM+dsFD10qZ5UpcQ8AM22bYj0u/yaAykWnqXJDpd77ublcX6vdDsWLuweeuSNZk4yUxZwtw==", - "cpu": [ - "ppc64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/tsup/node_modules/@esbuild/linux-riscv64": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.23.0.tgz", - "integrity": "sha512-HEtaN7Y5UB4tZPeQmgz/UhzoEyYftbMXrBCUjINGjh3uil+rB/QzzpMshz3cNUxqXN7Vr93zzVtpIDL99t9aRw==", - "cpu": [ - "riscv64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/tsup/node_modules/@esbuild/linux-s390x": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.23.0.tgz", - "integrity": "sha512-WDi3+NVAuyjg/Wxi+o5KPqRbZY0QhI9TjrEEm+8dmpY9Xir8+HE/HNx2JoLckhKbFopW0RdO2D72w8trZOV+Wg==", - "cpu": [ - "s390x" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/tsup/node_modules/@esbuild/linux-x64": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.23.0.tgz", - "integrity": "sha512-a3pMQhUEJkITgAw6e0bWA+F+vFtCciMjW/LPtoj99MhVt+Mfb6bbL9hu2wmTZgNd994qTAEw+U/r6k3qHWWaOQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/tsup/node_modules/@esbuild/netbsd-x64": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.23.0.tgz", - "integrity": "sha512-cRK+YDem7lFTs2Q5nEv/HHc4LnrfBCbH5+JHu6wm2eP+d8OZNoSMYgPZJq78vqQ9g+9+nMuIsAO7skzphRXHyw==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "netbsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/tsup/node_modules/@esbuild/openbsd-x64": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.23.0.tgz", - "integrity": "sha512-6p3nHpby0DM/v15IFKMjAaayFhqnXV52aEmv1whZHX56pdkK+MEaLoQWj+H42ssFarP1PcomVhbsR4pkz09qBg==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "openbsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/tsup/node_modules/@esbuild/sunos-x64": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.23.0.tgz", - "integrity": "sha512-BFelBGfrBwk6LVrmFzCq1u1dZbG4zy/Kp93w2+y83Q5UGYF1d8sCzeLI9NXjKyujjBBniQa8R8PzLFAUrSM9OA==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "sunos" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/tsup/node_modules/@esbuild/win32-arm64": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.23.0.tgz", - "integrity": "sha512-lY6AC8p4Cnb7xYHuIxQ6iYPe6MfO2CC43XXKo9nBXDb35krYt7KGhQnOkRGar5psxYkircpCqfbNDB4uJbS2jQ==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/tsup/node_modules/@esbuild/win32-ia32": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.23.0.tgz", - "integrity": "sha512-7L1bHlOTcO4ByvI7OXVI5pNN6HSu6pUQq9yodga8izeuB1KcT2UkHaH6118QJwopExPn0rMHIseCTx1CRo/uNA==", - "cpu": [ - "ia32" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/tsup/node_modules/@esbuild/win32-x64": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.23.0.tgz", - "integrity": "sha512-Arm+WgUFLUATuoxCJcahGuk6Yj9Pzxd6l11Zb/2aAuv5kWWvvfhLFo2fni4uSK5vzlUdCGZ/BdV5tH8klj8p8g==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/tsup/node_modules/esbuild": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.23.0.tgz", - "integrity": "sha512-1lvV17H2bMYda/WaFb2jLPeHU3zml2k4/yagNMG8Q/YtfMjCwEUZa2eXXMgZTVSL5q1n4H7sQ0X6CdJDqqeCFA==", - "dev": true, - "hasInstallScript": true, - "bin": { - "esbuild": "bin/esbuild" - }, - "engines": { - "node": ">=18" - }, - "optionalDependencies": { - "@esbuild/aix-ppc64": "0.23.0", - "@esbuild/android-arm": "0.23.0", - "@esbuild/android-arm64": "0.23.0", - "@esbuild/android-x64": "0.23.0", - "@esbuild/darwin-arm64": "0.23.0", - "@esbuild/darwin-x64": "0.23.0", - "@esbuild/freebsd-arm64": "0.23.0", - "@esbuild/freebsd-x64": "0.23.0", - "@esbuild/linux-arm": "0.23.0", - "@esbuild/linux-arm64": "0.23.0", - "@esbuild/linux-ia32": "0.23.0", - "@esbuild/linux-loong64": "0.23.0", - "@esbuild/linux-mips64el": "0.23.0", - "@esbuild/linux-ppc64": "0.23.0", - "@esbuild/linux-riscv64": "0.23.0", - "@esbuild/linux-s390x": "0.23.0", - "@esbuild/linux-x64": "0.23.0", - "@esbuild/netbsd-x64": "0.23.0", - "@esbuild/openbsd-arm64": "0.23.0", - "@esbuild/openbsd-x64": "0.23.0", - "@esbuild/sunos-x64": "0.23.0", - "@esbuild/win32-arm64": "0.23.0", - "@esbuild/win32-ia32": "0.23.0", - "@esbuild/win32-x64": "0.23.0" - } - }, "node_modules/tsup/node_modules/execa": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", @@ -16451,12 +16045,12 @@ "dev": true }, "node_modules/tsx": { - "version": "4.16.5", - "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.16.5.tgz", - "integrity": "sha512-ArsiAQHEW2iGaqZ8fTA1nX0a+lN5mNTyuGRRO6OW3H/Yno1y9/t1f9YOI1Cfoqz63VAthn++ZYcbDP7jPflc+A==", + "version": "4.17.0", + "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.17.0.tgz", + "integrity": "sha512-eN4mnDA5UMKDt4YZixo9tBioibaMBpoxBkD+rIPAjVmYERSG0/dWEY1CEFuV89CgASlKL499q8AhmkMnnjtOJg==", "dev": true, "dependencies": { - "esbuild": "~0.21.5", + "esbuild": "~0.23.0", "get-tsconfig": "^4.7.5" }, "bin": { @@ -17579,7 +17173,7 @@ "@types/node": "22.1.0", "rimraf": "6.0.1", "tsup": "8.2.4", - "tsx": "4.16.5", + "tsx": "4.17.0", "typescript": "5.5.4" }, "peerDependencies": { @@ -17614,7 +17208,7 @@ "@types/node": "22.1.0", "rimraf": "6.0.1", "tsup": "8.2.4", - "tsx": "4.16.5", + "tsx": "4.17.0", "typescript": "5.5.4" } }, @@ -17636,7 +17230,7 @@ "@types/node": "22.1.0", "rimraf": "6.0.1", "tsup": "8.2.4", - "tsx": "4.16.5", + "tsx": "4.17.0", "typescript": "5.5.4" } } diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index f646813f..937227c3 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -83,7 +83,7 @@ "@types/node": "22.1.0", "rimraf": "6.0.1", "tsup": "8.2.4", - "tsx": "4.16.5", + "tsx": "4.17.0", "typescript": "5.5.4" }, "peerDependencies": { diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 7a21d8c1..917ee567 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -31,7 +31,7 @@ "@types/node": "22.1.0", "rimraf": "6.0.1", "tsup": "8.2.4", - "tsx": "4.16.5", + "tsx": "4.17.0", "typescript": "5.5.4" } } diff --git a/packages/server/package.json b/packages/server/package.json index 3930b0b4..50967e6f 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -35,7 +35,7 @@ "@types/node": "22.1.0", "rimraf": "6.0.1", "tsup": "8.2.4", - "tsx": "4.16.5", + "tsx": "4.17.0", "typescript": "5.5.4" }, "distTags": [ From 3cb16d8a04cc0a5982cbee31892e84be16a43b9b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 14 Aug 2024 17:46:29 +0300 Subject: [PATCH 341/458] Bump axios from 1.7.3 to 1.7.4 (#697) Bumps [axios](https://github.com/axios/axios) from 1.7.3 to 1.7.4. - [Release notes](https://github.com/axios/axios/releases) - [Changelog](https://github.com/axios/axios/blob/v1.x/CHANGELOG.md) - [Commits](https://github.com/axios/axios/compare/v1.7.3...v1.7.4) --- updated-dependencies: - dependency-name: axios dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- package-lock.json | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 21d2b43b..57e189b4 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -31,7 +31,7 @@ "@types/node": "22.1.0", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", - "axios": "1.7.3", + "axios": "1.7.4", "dotenv-cli": "7.4.2", "eslint": "8.57.0", "fastify": "4.28.1", diff --git a/package-lock.json b/package-lock.json index 24afe348..51686de6 100644 --- a/package-lock.json +++ b/package-lock.json @@ -51,7 +51,7 @@ "@types/node": "22.1.0", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", - "axios": "1.7.3", + "axios": "1.7.4", "dotenv-cli": "7.4.2", "eslint": "8.57.0", "fastify": "4.28.1", @@ -5095,9 +5095,9 @@ } }, "node_modules/axios": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.3.tgz", - "integrity": "sha512-Ar7ND9pU99eJ9GpoGQKhKf58GpUOgnzuaB7ueNQ5BMi0p+LZ5oaEnfF999fAArcTIBwXTCHAmGcHOZJaWPq9Nw==", + "version": "1.7.4", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.4.tgz", + "integrity": "sha512-DukmaFRnY6AzAALSH4J2M3k6PkaC+MfaAGdEERRWcC9q3/TWQwLpHR8ZRLKTdQ3aBDL64EdluRDjJqKw+BPZEw==", "dev": true, "dependencies": { "follow-redirects": "^1.15.6", From 5f9daa233f5d938c9bb05fab2a211e594e03adb2 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 14 Aug 2024 14:55:44 +0000 Subject: [PATCH 342/458] Bump @types/node in the definitely-typed group across 1 directory (#698) --- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- internal/backend/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 32 ++++++++++----------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 10 files changed, 25 insertions(+), 25 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 57e189b4..8af7f53f 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -28,7 +28,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "22.1.0", + "@types/node": "22.3.0", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "axios": "1.7.4", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 5f9dab44..fa27b0f1 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -22,7 +22,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "22.1.0", + "@types/node": "22.3.0", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "eslint": "8.57.0", diff --git a/internal/backend/package.json b/internal/backend/package.json index 907eb358..7d8c623e 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.1.0", + "@types/node": "22.3.0", "pino-pretty": "11.2.2", "rimraf": "6.0.1", "tsx": "4.17.0", diff --git a/internal/next-common/package.json b/internal/next-common/package.json index 9ee10b10..2f60157a 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.1.0", + "@types/node": "22.3.0", "rimraf": "6.0.1", "typescript": "5.5.4" } diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index b6e4a971..00102a11 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -16,7 +16,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "22.1.0", + "@types/node": "22.3.0", "rimraf": "6.0.1", "typescript": "5.5.4" } diff --git a/package-lock.json b/package-lock.json index 51686de6..cb1fa263 100644 --- a/package-lock.json +++ b/package-lock.json @@ -48,7 +48,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "22.1.0", + "@types/node": "22.3.0", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "axios": "1.7.4", @@ -126,7 +126,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "22.1.0", + "@types/node": "22.3.0", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "eslint": "8.57.0", @@ -452,7 +452,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.1.0", + "@types/node": "22.3.0", "pino-pretty": "11.2.2", "rimraf": "6.0.1", "tsx": "4.17.0", @@ -591,7 +591,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.1.0", + "@types/node": "22.3.0", "rimraf": "6.0.1", "typescript": "5.5.4" } @@ -804,7 +804,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "22.1.0", + "@types/node": "22.3.0", "rimraf": "6.0.1", "typescript": "5.5.4" } @@ -4235,11 +4235,11 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "22.1.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.1.0.tgz", - "integrity": "sha512-AOmuRF0R2/5j1knA3c6G3HOk523Ga+l+ZXltX8SF1+5oqcXijjfTd8fY3XRZqSihEu9XhtQnKYLmkFaoxgsJHw==", + "version": "22.3.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.3.0.tgz", + "integrity": "sha512-nrWpWVaDZuaVc5X84xJ0vNrLvomM205oQyLsRt7OHNZbSHslcWsvgFR7O7hire2ZonjLrWBbedmotmIlJDVd6g==", "dependencies": { - "undici-types": "~6.13.0" + "undici-types": "~6.18.2" } }, "node_modules/@types/node-fetch": { @@ -4253,9 +4253,9 @@ } }, "node_modules/@types/node/node_modules/undici-types": { - "version": "6.13.0", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.13.0.tgz", - "integrity": "sha512-xtFJHudx8S2DSoujjMd1WeWvn7KKWFRESZTMeL1RptAYERu29D6jphMjjY+vn96jvN3kVPDNxU/E13VTaXj6jg==" + "version": "6.18.2", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.18.2.tgz", + "integrity": "sha512-5ruQbENj95yDYJNS3TvcaxPMshV7aizdv/hWYjGIKoANWKjhWNBsr2YEuYZKodQulB1b8l7ILOuDQep3afowQQ==" }, "node_modules/@types/normalize-package-data": { "version": "2.4.4", @@ -17170,7 +17170,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.1.0", + "@types/node": "22.3.0", "rimraf": "6.0.1", "tsup": "8.2.4", "tsx": "4.17.0", @@ -17189,7 +17189,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.1.0", + "@types/node": "22.3.0", "rimraf": "6.0.1", "tsup": "8.2.4", "typescript": "5.5.4" @@ -17205,7 +17205,7 @@ "license": "MIT", "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.1.0", + "@types/node": "22.3.0", "rimraf": "6.0.1", "tsup": "8.2.4", "tsx": "4.17.0", @@ -17227,7 +17227,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.1.0", + "@types/node": "22.3.0", "rimraf": "6.0.1", "tsup": "8.2.4", "tsx": "4.17.0", diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 937227c3..9448d531 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -80,7 +80,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.1.0", + "@types/node": "22.3.0", "rimraf": "6.0.1", "tsup": "8.2.4", "tsx": "4.17.0", diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index 97a9dd5a..265d92c7 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -25,7 +25,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.1.0", + "@types/node": "22.3.0", "rimraf": "6.0.1", "tsup": "8.2.4", "typescript": "5.5.4" diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 917ee567..49faf02f 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -28,7 +28,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.1.0", + "@types/node": "22.3.0", "rimraf": "6.0.1", "tsup": "8.2.4", "tsx": "4.17.0", diff --git a/packages/server/package.json b/packages/server/package.json index 50967e6f..89f74dd0 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -32,7 +32,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.1.0", + "@types/node": "22.3.0", "rimraf": "6.0.1", "tsup": "8.2.4", "tsx": "4.17.0", From 473d3944f066a07cea73c26627811582976e54c1 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 15 Aug 2024 13:23:45 +0300 Subject: [PATCH 343/458] Bump the turbo group with 2 updates (#699) Bumps the turbo group with 2 updates: [turbo](https://github.com/vercel/turborepo) and [eslint-config-turbo](https://github.com/vercel/turborepo/tree/HEAD/packages/eslint-config-turbo). Updates `turbo` from 2.0.12 to 2.0.13 - [Release notes](https://github.com/vercel/turborepo/releases) - [Changelog](https://github.com/vercel/turborepo/blob/main/release.md) - [Commits](https://github.com/vercel/turborepo/compare/v2.0.12...v2.0.13) Updates `eslint-config-turbo` from 2.0.12 to 2.0.13 - [Release notes](https://github.com/vercel/turborepo/releases) - [Changelog](https://github.com/vercel/turborepo/blob/main/release.md) - [Commits](https://github.com/vercel/turborepo/commits/v2.0.13/packages/eslint-config-turbo) --- updated-dependencies: - dependency-name: turbo dependency-type: direct:development update-type: version-update:semver-patch dependency-group: turbo - dependency-name: eslint-config-turbo dependency-type: direct:development update-type: version-update:semver-patch dependency-group: turbo ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- internal/eslint-config/package.json | 2 +- package-lock.json | 72 ++++++++++++++--------------- package.json | 2 +- 3 files changed, 38 insertions(+), 38 deletions(-) diff --git a/internal/eslint-config/package.json b/internal/eslint-config/package.json index 1439be4f..703e15d6 100644 --- a/internal/eslint-config/package.json +++ b/internal/eslint-config/package.json @@ -10,7 +10,7 @@ "@typescript-eslint/parser": "7.5.0", "@vercel/style-guide": "6.0.0", "eslint-config-prettier": "9.1.0", - "eslint-config-turbo": "2.0.12", + "eslint-config-turbo": "2.0.13", "eslint-plugin-only-warn": "1.1.0", "typescript": "5.5.4" } diff --git a/package-lock.json b/package-lock.json index cb1fa263..f0419cbd 100644 --- a/package-lock.json +++ b/package-lock.json @@ -26,7 +26,7 @@ "diffscribe": "*", "glob": "11.0.0", "prettier": "3.3.3", - "turbo": "2.0.12" + "turbo": "2.0.13" }, "engines": { "node": ">=20.9.0", @@ -467,7 +467,7 @@ "@typescript-eslint/parser": "7.5.0", "@vercel/style-guide": "6.0.0", "eslint-config-prettier": "9.1.0", - "eslint-config-turbo": "2.0.12", + "eslint-config-turbo": "2.0.13", "eslint-plugin-only-warn": "1.1.0", "typescript": "5.5.4" } @@ -6966,12 +6966,12 @@ } }, "node_modules/eslint-config-turbo": { - "version": "2.0.12", - "resolved": "https://registry.npmjs.org/eslint-config-turbo/-/eslint-config-turbo-2.0.12.tgz", - "integrity": "sha512-3PUzoyeJi2SjsTSjfWgTUIHK7kOqsapDEaOT7sCjFnZXvuhYLKxW37lysjq7+55abGGm0yQTXxNFLjrQKUORag==", + "version": "2.0.13", + "resolved": "https://registry.npmjs.org/eslint-config-turbo/-/eslint-config-turbo-2.0.13.tgz", + "integrity": "sha512-GdWQa8OAnX7SnrUK49U4zEv6rglLogQs1HQZ56Y7jn87ohkaBQAUFtxjyTNNgcDlYqzT/6deRlEGsJ/maRU2Wg==", "dev": true, "dependencies": { - "eslint-plugin-turbo": "2.0.12" + "eslint-plugin-turbo": "2.0.13" }, "peerDependencies": { "eslint": ">6.6.0" @@ -7656,9 +7656,9 @@ } }, "node_modules/eslint-plugin-turbo": { - "version": "2.0.12", - "resolved": "https://registry.npmjs.org/eslint-plugin-turbo/-/eslint-plugin-turbo-2.0.12.tgz", - "integrity": "sha512-vXWKer7F0RPTcVy1B+hFTEK4mlEOpouB8MCAFD3WW4C6t98wvuDCsIPjxIldpxg7CnwmRxALpNWgNVkU2LVVEQ==", + "version": "2.0.13", + "resolved": "https://registry.npmjs.org/eslint-plugin-turbo/-/eslint-plugin-turbo-2.0.13.tgz", + "integrity": "sha512-hpHRtQVETm07OBvj8kFy/+sgts+i36wFM8xd4yr9Wt3TWtmC4mealtgSvSEx61vdkqbDhKMP4CftgpHj2DI4yw==", "dev": true, "dependencies": { "dotenv": "16.0.3" @@ -16087,26 +16087,26 @@ } }, "node_modules/turbo": { - "version": "2.0.12", - "resolved": "https://registry.npmjs.org/turbo/-/turbo-2.0.12.tgz", - "integrity": "sha512-8s2KwqjwQj7z8Z53SUZSKVkQOZ2/Sl4D2F440oaBY/k2lGju60dW6srEpnn8/RIDeICZmQn3pQHF79Jfnc5Skw==", + "version": "2.0.13", + "resolved": "https://registry.npmjs.org/turbo/-/turbo-2.0.13.tgz", + "integrity": "sha512-xZYCpvy+Q5X05HQLVbup/nUva/EPd8QKX/WLfztz8Yhh7yH+VN9t+P9ACG2U0ThlrqX4uFS0tuE0jaCLvL1Imw==", "dev": true, "bin": { "turbo": "bin/turbo" }, "optionalDependencies": { - "turbo-darwin-64": "2.0.12", - "turbo-darwin-arm64": "2.0.12", - "turbo-linux-64": "2.0.12", - "turbo-linux-arm64": "2.0.12", - "turbo-windows-64": "2.0.12", - "turbo-windows-arm64": "2.0.12" + "turbo-darwin-64": "2.0.13", + "turbo-darwin-arm64": "2.0.13", + "turbo-linux-64": "2.0.13", + "turbo-linux-arm64": "2.0.13", + "turbo-windows-64": "2.0.13", + "turbo-windows-arm64": "2.0.13" } }, "node_modules/turbo-darwin-64": { - "version": "2.0.12", - "resolved": "https://registry.npmjs.org/turbo-darwin-64/-/turbo-darwin-64-2.0.12.tgz", - "integrity": "sha512-NAgfgbXxX/JScWQmmQnGbPuFZq7LIswHfcMk5JwyBXQM/xmklNOxxac7MnGGIOf19Z2f6S3qHy17VIj0SeGfnA==", + "version": "2.0.13", + "resolved": "https://registry.npmjs.org/turbo-darwin-64/-/turbo-darwin-64-2.0.13.tgz", + "integrity": "sha512-1qoFGvSE/kG1Njl1a1b35+AlJyCBE/+cb7GcglxuUM0Fh0JNR6FIWGhiubUhFLoIdFkdRbPpTH5smhPpRk757w==", "cpu": [ "x64" ], @@ -16117,9 +16117,9 @@ ] }, "node_modules/turbo-darwin-arm64": { - "version": "2.0.12", - "resolved": "https://registry.npmjs.org/turbo-darwin-arm64/-/turbo-darwin-arm64-2.0.12.tgz", - "integrity": "sha512-cP02uer5KSJ+fXL+OfRRk5hnVjV0c60hxDgNcJxrZpfhun7HHoKDDR7w2xhQntiA45aC6ZZEXRqMKpj6GAmKbg==", + "version": "2.0.13", + "resolved": "https://registry.npmjs.org/turbo-darwin-arm64/-/turbo-darwin-arm64-2.0.13.tgz", + "integrity": "sha512-3fgbjKeRjvZTKJhn6eOyA6SaFXlRHx/z7qAWYcTbq7iu2zd+n0OHRyah9Voy2ZihiGAI0Bw4QfVWo3d1qTabgA==", "cpu": [ "arm64" ], @@ -16130,9 +16130,9 @@ ] }, "node_modules/turbo-linux-64": { - "version": "2.0.12", - "resolved": "https://registry.npmjs.org/turbo-linux-64/-/turbo-linux-64-2.0.12.tgz", - "integrity": "sha512-+mQgGfg1eq5qF+wenK/FKJaNMNAo5DQLC4htQy+8osW+fx6U+8+6UlPQPaycAWDEqwOI7NwuqkeHfkEQLQUTyQ==", + "version": "2.0.13", + "resolved": "https://registry.npmjs.org/turbo-linux-64/-/turbo-linux-64-2.0.13.tgz", + "integrity": "sha512-1nMO5NWHWs4jI5SV8SMlGtR3/jBlud1ld/ltayYwOXm6zdznj0/mTNNE9AjfOs/aAei2wZE1HWUHXe46q/nZtw==", "cpu": [ "x64" ], @@ -16143,9 +16143,9 @@ ] }, "node_modules/turbo-linux-arm64": { - "version": "2.0.12", - "resolved": "https://registry.npmjs.org/turbo-linux-arm64/-/turbo-linux-arm64-2.0.12.tgz", - "integrity": "sha512-KFyEZDXfPU1DK4zimxdCcqAcK7IIttX4mfsgB7NsSEOmH0dhHOih/YFYiyEDC1lTRx0C2RlzQ0Kjjdz48AN5Eg==", + "version": "2.0.13", + "resolved": "https://registry.npmjs.org/turbo-linux-arm64/-/turbo-linux-arm64-2.0.13.tgz", + "integrity": "sha512-JkQYAAMbEW3jkzhbtY4hi0Q61tlSd46qLEVBQqnur9VymC4TfD6kllVMpRtbmXv8jdfGPu+rEIeYrzjHpyqMfg==", "cpu": [ "arm64" ], @@ -16156,9 +16156,9 @@ ] }, "node_modules/turbo-windows-64": { - "version": "2.0.12", - "resolved": "https://registry.npmjs.org/turbo-windows-64/-/turbo-windows-64-2.0.12.tgz", - "integrity": "sha512-kJj4KCkZTkDTDCqsSw1m1dbO4WeoQq1mYUm/thXOH0OkeqYbSMt0EyoTcJOgKUDsrMnzZD2gPfYrlYHtV69lVA==", + "version": "2.0.13", + "resolved": "https://registry.npmjs.org/turbo-windows-64/-/turbo-windows-64-2.0.13.tgz", + "integrity": "sha512-QYJfYPnmb3j16CR4mucYicC+tlY1fsFws6fkqZe2b8jBpRyOslxkEk4XJWCsvUizPSYpOdAnTL9baunLH7hWrA==", "cpu": [ "x64" ], @@ -16169,9 +16169,9 @@ ] }, "node_modules/turbo-windows-arm64": { - "version": "2.0.12", - "resolved": "https://registry.npmjs.org/turbo-windows-arm64/-/turbo-windows-arm64-2.0.12.tgz", - "integrity": "sha512-TY3ROxguDilN2olCwcZMaePdW01Xhma0pZU7bNhsQEqca9RGAmsZBuzfGnTMcWPmv4tpnb/PlX1hrt1Hod/44Q==", + "version": "2.0.13", + "resolved": "https://registry.npmjs.org/turbo-windows-arm64/-/turbo-windows-arm64-2.0.13.tgz", + "integrity": "sha512-dnVN19dq7jszcKVBy4+T1IMmMY1ergigJZdl76Bbc99QOwaXsTR7ci4sle89HvJb+F1z/MXSq8ePvRTcy6dKRw==", "cpu": [ "arm64" ], diff --git a/package.json b/package.json index ea3784ee..e25049e4 100644 --- a/package.json +++ b/package.json @@ -44,7 +44,7 @@ "diffscribe": "*", "glob": "11.0.0", "prettier": "3.3.3", - "turbo": "2.0.12" + "turbo": "2.0.13" }, "packageManager": "npm@10.7.0", "engines": { From 35d1e2b07e3ca03b4f6445c82313bed0d1afc151 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 16 Aug 2024 21:20:26 +0300 Subject: [PATCH 344/458] Bump the turbo group with 2 updates (#700) Bumps the turbo group with 2 updates: [turbo](https://github.com/vercel/turborepo) and [eslint-config-turbo](https://github.com/vercel/turborepo/tree/HEAD/packages/eslint-config-turbo). Updates `turbo` from 2.0.13 to 2.0.14 - [Release notes](https://github.com/vercel/turborepo/releases) - [Changelog](https://github.com/vercel/turborepo/blob/main/release.md) - [Commits](https://github.com/vercel/turborepo/compare/v2.0.13...v2.0.14) Updates `eslint-config-turbo` from 2.0.13 to 2.0.14 - [Release notes](https://github.com/vercel/turborepo/releases) - [Changelog](https://github.com/vercel/turborepo/blob/main/release.md) - [Commits](https://github.com/vercel/turborepo/commits/v2.0.14/packages/eslint-config-turbo) --- updated-dependencies: - dependency-name: turbo dependency-type: direct:development update-type: version-update:semver-patch dependency-group: turbo - dependency-name: eslint-config-turbo dependency-type: direct:development update-type: version-update:semver-patch dependency-group: turbo ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- internal/eslint-config/package.json | 2 +- package-lock.json | 72 ++++++++++++++--------------- package.json | 2 +- 3 files changed, 38 insertions(+), 38 deletions(-) diff --git a/internal/eslint-config/package.json b/internal/eslint-config/package.json index 703e15d6..cd5d7569 100644 --- a/internal/eslint-config/package.json +++ b/internal/eslint-config/package.json @@ -10,7 +10,7 @@ "@typescript-eslint/parser": "7.5.0", "@vercel/style-guide": "6.0.0", "eslint-config-prettier": "9.1.0", - "eslint-config-turbo": "2.0.13", + "eslint-config-turbo": "2.0.14", "eslint-plugin-only-warn": "1.1.0", "typescript": "5.5.4" } diff --git a/package-lock.json b/package-lock.json index f0419cbd..3fc81850 100644 --- a/package-lock.json +++ b/package-lock.json @@ -26,7 +26,7 @@ "diffscribe": "*", "glob": "11.0.0", "prettier": "3.3.3", - "turbo": "2.0.13" + "turbo": "2.0.14" }, "engines": { "node": ">=20.9.0", @@ -467,7 +467,7 @@ "@typescript-eslint/parser": "7.5.0", "@vercel/style-guide": "6.0.0", "eslint-config-prettier": "9.1.0", - "eslint-config-turbo": "2.0.13", + "eslint-config-turbo": "2.0.14", "eslint-plugin-only-warn": "1.1.0", "typescript": "5.5.4" } @@ -6966,12 +6966,12 @@ } }, "node_modules/eslint-config-turbo": { - "version": "2.0.13", - "resolved": "https://registry.npmjs.org/eslint-config-turbo/-/eslint-config-turbo-2.0.13.tgz", - "integrity": "sha512-GdWQa8OAnX7SnrUK49U4zEv6rglLogQs1HQZ56Y7jn87ohkaBQAUFtxjyTNNgcDlYqzT/6deRlEGsJ/maRU2Wg==", + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/eslint-config-turbo/-/eslint-config-turbo-2.0.14.tgz", + "integrity": "sha512-VkzAH/AR1/fjMsqzuurfWkEgyGVTTzfZQB1umDB8dMWzFhqo8p/2KEWbvRQLEvSFxjVfeJl5ErQAJ7h7DYglxg==", "dev": true, "dependencies": { - "eslint-plugin-turbo": "2.0.13" + "eslint-plugin-turbo": "2.0.14" }, "peerDependencies": { "eslint": ">6.6.0" @@ -7656,9 +7656,9 @@ } }, "node_modules/eslint-plugin-turbo": { - "version": "2.0.13", - "resolved": "https://registry.npmjs.org/eslint-plugin-turbo/-/eslint-plugin-turbo-2.0.13.tgz", - "integrity": "sha512-hpHRtQVETm07OBvj8kFy/+sgts+i36wFM8xd4yr9Wt3TWtmC4mealtgSvSEx61vdkqbDhKMP4CftgpHj2DI4yw==", + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/eslint-plugin-turbo/-/eslint-plugin-turbo-2.0.14.tgz", + "integrity": "sha512-E++MSAEeWZTU0FYARrfakMPq+7XeltqeY4JBDQTzbGEWG3kgYJPeYBMWsypcvBujVihQLlMu0S6ImnfV692mHg==", "dev": true, "dependencies": { "dotenv": "16.0.3" @@ -16087,26 +16087,26 @@ } }, "node_modules/turbo": { - "version": "2.0.13", - "resolved": "https://registry.npmjs.org/turbo/-/turbo-2.0.13.tgz", - "integrity": "sha512-xZYCpvy+Q5X05HQLVbup/nUva/EPd8QKX/WLfztz8Yhh7yH+VN9t+P9ACG2U0ThlrqX4uFS0tuE0jaCLvL1Imw==", + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/turbo/-/turbo-2.0.14.tgz", + "integrity": "sha512-00JjdCMD/cpsjP0Izkjcm8Oaor5yUCfDwODtaLb+WyblyadkaDEisGhy3Dbd5az9n+5iLSPiUgf+WjPbns6MRg==", "dev": true, "bin": { "turbo": "bin/turbo" }, "optionalDependencies": { - "turbo-darwin-64": "2.0.13", - "turbo-darwin-arm64": "2.0.13", - "turbo-linux-64": "2.0.13", - "turbo-linux-arm64": "2.0.13", - "turbo-windows-64": "2.0.13", - "turbo-windows-arm64": "2.0.13" + "turbo-darwin-64": "2.0.14", + "turbo-darwin-arm64": "2.0.14", + "turbo-linux-64": "2.0.14", + "turbo-linux-arm64": "2.0.14", + "turbo-windows-64": "2.0.14", + "turbo-windows-arm64": "2.0.14" } }, "node_modules/turbo-darwin-64": { - "version": "2.0.13", - "resolved": "https://registry.npmjs.org/turbo-darwin-64/-/turbo-darwin-64-2.0.13.tgz", - "integrity": "sha512-1qoFGvSE/kG1Njl1a1b35+AlJyCBE/+cb7GcglxuUM0Fh0JNR6FIWGhiubUhFLoIdFkdRbPpTH5smhPpRk757w==", + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/turbo-darwin-64/-/turbo-darwin-64-2.0.14.tgz", + "integrity": "sha512-kwfDmjNwlNfvtrvT29+ZBg5n1Wvxl891bFHchMJyzMoR0HOE9N1NSNdSZb9wG3e7sYNIu4uDkNk+VBEqJW0HzQ==", "cpu": [ "x64" ], @@ -16117,9 +16117,9 @@ ] }, "node_modules/turbo-darwin-arm64": { - "version": "2.0.13", - "resolved": "https://registry.npmjs.org/turbo-darwin-arm64/-/turbo-darwin-arm64-2.0.13.tgz", - "integrity": "sha512-3fgbjKeRjvZTKJhn6eOyA6SaFXlRHx/z7qAWYcTbq7iu2zd+n0OHRyah9Voy2ZihiGAI0Bw4QfVWo3d1qTabgA==", + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/turbo-darwin-arm64/-/turbo-darwin-arm64-2.0.14.tgz", + "integrity": "sha512-m3LXYEshCx3wc4ZClM6gb01KYpFmtjQ9IBF3A7ofjb6ahux3xlYZJZ3uFCLAGHuvGLuJ3htfiPbwlDPTdknqqw==", "cpu": [ "arm64" ], @@ -16130,9 +16130,9 @@ ] }, "node_modules/turbo-linux-64": { - "version": "2.0.13", - "resolved": "https://registry.npmjs.org/turbo-linux-64/-/turbo-linux-64-2.0.13.tgz", - "integrity": "sha512-1nMO5NWHWs4jI5SV8SMlGtR3/jBlud1ld/ltayYwOXm6zdznj0/mTNNE9AjfOs/aAei2wZE1HWUHXe46q/nZtw==", + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/turbo-linux-64/-/turbo-linux-64-2.0.14.tgz", + "integrity": "sha512-7vBzCPdoTtR92SNn2JMgj1FlMmyonGmpMaQdgAB1OVYtuQ6NVGoh7/lODfaILqXjpvmFSVbpBIDrKOT6EvcprQ==", "cpu": [ "x64" ], @@ -16143,9 +16143,9 @@ ] }, "node_modules/turbo-linux-arm64": { - "version": "2.0.13", - "resolved": "https://registry.npmjs.org/turbo-linux-arm64/-/turbo-linux-arm64-2.0.13.tgz", - "integrity": "sha512-JkQYAAMbEW3jkzhbtY4hi0Q61tlSd46qLEVBQqnur9VymC4TfD6kllVMpRtbmXv8jdfGPu+rEIeYrzjHpyqMfg==", + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/turbo-linux-arm64/-/turbo-linux-arm64-2.0.14.tgz", + "integrity": "sha512-jwH+c0bfjpBf26K/tdEFatmnYyXwGROjbr6bZmNcL8R+IkGAc/cglL+OToqJnQZTgZvH7uDGbeSyUo7IsHyjuA==", "cpu": [ "arm64" ], @@ -16156,9 +16156,9 @@ ] }, "node_modules/turbo-windows-64": { - "version": "2.0.13", - "resolved": "https://registry.npmjs.org/turbo-windows-64/-/turbo-windows-64-2.0.13.tgz", - "integrity": "sha512-QYJfYPnmb3j16CR4mucYicC+tlY1fsFws6fkqZe2b8jBpRyOslxkEk4XJWCsvUizPSYpOdAnTL9baunLH7hWrA==", + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/turbo-windows-64/-/turbo-windows-64-2.0.14.tgz", + "integrity": "sha512-w9/XwkHSzvLjmioo6cl3S1yRfI6swxsV1j1eJwtl66JM4/pn0H2rBa855R0n7hZnmI6H5ywLt/nLt6Ae8RTDmw==", "cpu": [ "x64" ], @@ -16169,9 +16169,9 @@ ] }, "node_modules/turbo-windows-arm64": { - "version": "2.0.13", - "resolved": "https://registry.npmjs.org/turbo-windows-arm64/-/turbo-windows-arm64-2.0.13.tgz", - "integrity": "sha512-dnVN19dq7jszcKVBy4+T1IMmMY1ergigJZdl76Bbc99QOwaXsTR7ci4sle89HvJb+F1z/MXSq8ePvRTcy6dKRw==", + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/turbo-windows-arm64/-/turbo-windows-arm64-2.0.14.tgz", + "integrity": "sha512-XaQlyYk+Rf4xS5XWCo8XCMIpssgGGy8blzLfolN6YBp4baElIWMlkLZHDbGyiFmCbNf9I9gJI64XGRG+LVyyjA==", "cpu": [ "arm64" ], diff --git a/package.json b/package.json index e25049e4..d5948eb6 100644 --- a/package.json +++ b/package.json @@ -44,7 +44,7 @@ "diffscribe": "*", "glob": "11.0.0", "prettier": "3.3.3", - "turbo": "2.0.13" + "turbo": "2.0.14" }, "packageManager": "npm@10.7.0", "engines": { From 8d1389a498a0fc9825d64e6db71da9922f978d73 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 17 Aug 2024 19:48:38 +0300 Subject: [PATCH 345/458] Bump @playwright/test from 1.46.0 to 1.46.1 (#702) Bumps [@playwright/test](https://github.com/microsoft/playwright) from 1.46.0 to 1.46.1. - [Release notes](https://github.com/microsoft/playwright/releases) - [Commits](https://github.com/microsoft/playwright/compare/v1.46.0...v1.46.1) --- updated-dependencies: - dependency-name: "@playwright/test" dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- package-lock.json | 24 ++++++++++++------------ 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 8af7f53f..5a774e5f 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -24,7 +24,7 @@ "devDependencies": { "@neshca/cache-handler": "*", "@next/eslint-plugin-next": "14.3.0-canary.44", - "@playwright/test": "1.46.0", + "@playwright/test": "1.46.1", "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", diff --git a/package-lock.json b/package-lock.json index 3fc81850..d7e4e5b6 100644 --- a/package-lock.json +++ b/package-lock.json @@ -44,7 +44,7 @@ "devDependencies": { "@neshca/cache-handler": "*", "@next/eslint-plugin-next": "14.3.0-canary.44", - "@playwright/test": "1.46.0", + "@playwright/test": "1.46.1", "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", @@ -3528,12 +3528,12 @@ } }, "node_modules/@playwright/test": { - "version": "1.46.0", - "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.46.0.tgz", - "integrity": "sha512-/QYft5VArOrGRP5pgkrfKksqsKA6CEFyGQ/gjNe6q0y4tZ1aaPfq4gIjudr1s3D+pXyrPRdsy4opKDrjBabE5w==", + "version": "1.46.1", + "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.46.1.tgz", + "integrity": "sha512-Fq6SwLujA/DOIvNC2EL/SojJnkKf/rAwJ//APpJJHRyMi1PdKrY3Az+4XNQ51N4RTbItbIByQ0jgd1tayq1aeA==", "devOptional": true, "dependencies": { - "playwright": "1.46.0" + "playwright": "1.46.1" }, "bin": { "playwright": "cli.js" @@ -13275,12 +13275,12 @@ } }, "node_modules/playwright": { - "version": "1.46.0", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.46.0.tgz", - "integrity": "sha512-XYJ5WvfefWONh1uPAUAi0H2xXV5S3vrtcnXe6uAOgdGi3aSpqOSXX08IAjXW34xitfuOJsvXU5anXZxPSEQiJw==", + "version": "1.46.1", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.46.1.tgz", + "integrity": "sha512-oPcr1yqoXLCkgKtD5eNUPLiN40rYEM39odNpIb6VE6S7/15gJmA1NzVv6zJYusV0e7tzvkU/utBFNa/Kpxmwng==", "devOptional": true, "dependencies": { - "playwright-core": "1.46.0" + "playwright-core": "1.46.1" }, "bin": { "playwright": "cli.js" @@ -13293,9 +13293,9 @@ } }, "node_modules/playwright-core": { - "version": "1.46.0", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.46.0.tgz", - "integrity": "sha512-9Y/d5UIwuJk8t3+lhmMSAJyNP1BUC/DqP3cQJDQQL/oWqAiuPTLgy7Q5dzglmTLwcBRdetzgNM/gni7ckfTr6A==", + "version": "1.46.1", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.46.1.tgz", + "integrity": "sha512-h9LqIQaAv+CYvWzsZ+h3RsrqCStkBHlgo6/TJlFst3cOTlLghBQlJwPOZKQJTKNaD3QIB7aAVQ+gfWbN3NXB7A==", "devOptional": true, "bin": { "playwright-core": "cli.js" From 5028071471610c7c8cbcdb431df526472ba7cdda Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 17 Aug 2024 20:31:45 +0300 Subject: [PATCH 346/458] Bump @types/node from 22.3.0 to 22.4.0 in the definitely-typed group (#701) Bumps the definitely-typed group with 1 update: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node). Updates `@types/node` from 22.3.0 to 22.4.0 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) --- updated-dependencies: - dependency-name: "@types/node" dependency-type: direct:development update-type: version-update:semver-minor dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- internal/backend/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 32 ++++++++++----------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 10 files changed, 25 insertions(+), 25 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 5a774e5f..89ebd747 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -28,7 +28,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "22.3.0", + "@types/node": "22.4.0", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "axios": "1.7.4", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index fa27b0f1..acfac9f3 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -22,7 +22,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "22.3.0", + "@types/node": "22.4.0", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "eslint": "8.57.0", diff --git a/internal/backend/package.json b/internal/backend/package.json index 7d8c623e..44d73397 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.3.0", + "@types/node": "22.4.0", "pino-pretty": "11.2.2", "rimraf": "6.0.1", "tsx": "4.17.0", diff --git a/internal/next-common/package.json b/internal/next-common/package.json index 2f60157a..f4dc5de1 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.3.0", + "@types/node": "22.4.0", "rimraf": "6.0.1", "typescript": "5.5.4" } diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index 00102a11..c6df265c 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -16,7 +16,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "22.3.0", + "@types/node": "22.4.0", "rimraf": "6.0.1", "typescript": "5.5.4" } diff --git a/package-lock.json b/package-lock.json index d7e4e5b6..fdbcb57c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -48,7 +48,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "22.3.0", + "@types/node": "22.4.0", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "axios": "1.7.4", @@ -126,7 +126,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "22.3.0", + "@types/node": "22.4.0", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "eslint": "8.57.0", @@ -452,7 +452,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.3.0", + "@types/node": "22.4.0", "pino-pretty": "11.2.2", "rimraf": "6.0.1", "tsx": "4.17.0", @@ -591,7 +591,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.3.0", + "@types/node": "22.4.0", "rimraf": "6.0.1", "typescript": "5.5.4" } @@ -804,7 +804,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "22.3.0", + "@types/node": "22.4.0", "rimraf": "6.0.1", "typescript": "5.5.4" } @@ -4235,11 +4235,11 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "22.3.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.3.0.tgz", - "integrity": "sha512-nrWpWVaDZuaVc5X84xJ0vNrLvomM205oQyLsRt7OHNZbSHslcWsvgFR7O7hire2ZonjLrWBbedmotmIlJDVd6g==", + "version": "22.4.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.4.0.tgz", + "integrity": "sha512-49AbMDwYUz7EXxKU/r7mXOsxwFr4BYbvB7tWYxVuLdb2ibd30ijjXINSMAHiEEZk5PCRBmW1gUeisn2VMKt3cQ==", "dependencies": { - "undici-types": "~6.18.2" + "undici-types": "~6.19.2" } }, "node_modules/@types/node-fetch": { @@ -4253,9 +4253,9 @@ } }, "node_modules/@types/node/node_modules/undici-types": { - "version": "6.18.2", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.18.2.tgz", - "integrity": "sha512-5ruQbENj95yDYJNS3TvcaxPMshV7aizdv/hWYjGIKoANWKjhWNBsr2YEuYZKodQulB1b8l7ILOuDQep3afowQQ==" + "version": "6.19.6", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.19.6.tgz", + "integrity": "sha512-e/vggGopEfTKSvj4ihnOLTsqhrKRN3LeO6qSN/GxohhuRv8qH9bNQ4B8W7e/vFL+0XTnmHPB4/kegunZGA4Org==" }, "node_modules/@types/normalize-package-data": { "version": "2.4.4", @@ -17170,7 +17170,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.3.0", + "@types/node": "22.4.0", "rimraf": "6.0.1", "tsup": "8.2.4", "tsx": "4.17.0", @@ -17189,7 +17189,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.3.0", + "@types/node": "22.4.0", "rimraf": "6.0.1", "tsup": "8.2.4", "typescript": "5.5.4" @@ -17205,7 +17205,7 @@ "license": "MIT", "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.3.0", + "@types/node": "22.4.0", "rimraf": "6.0.1", "tsup": "8.2.4", "tsx": "4.17.0", @@ -17227,7 +17227,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.3.0", + "@types/node": "22.4.0", "rimraf": "6.0.1", "tsup": "8.2.4", "tsx": "4.17.0", diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 9448d531..473a65ff 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -80,7 +80,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.3.0", + "@types/node": "22.4.0", "rimraf": "6.0.1", "tsup": "8.2.4", "tsx": "4.17.0", diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index 265d92c7..92cda4ca 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -25,7 +25,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.3.0", + "@types/node": "22.4.0", "rimraf": "6.0.1", "tsup": "8.2.4", "typescript": "5.5.4" diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 49faf02f..d4390ec3 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -28,7 +28,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.3.0", + "@types/node": "22.4.0", "rimraf": "6.0.1", "tsup": "8.2.4", "tsx": "4.17.0", diff --git a/packages/server/package.json b/packages/server/package.json index 89f74dd0..71d0b56a 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -32,7 +32,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.3.0", + "@types/node": "22.4.0", "rimraf": "6.0.1", "tsup": "8.2.4", "tsx": "4.17.0", From 14b7e0cc0199b0ce36ce05ef067bb0a739bb715b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 20 Aug 2024 14:37:12 +0300 Subject: [PATCH 347/458] Bump @types/node from 22.4.0 to 22.4.1 in the definitely-typed group (#705) Bumps the definitely-typed group with 1 update: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node). Updates `@types/node` from 22.4.0 to 22.4.1 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) --- updated-dependencies: - dependency-name: "@types/node" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- internal/backend/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 24 ++++++++++----------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 10 files changed, 21 insertions(+), 21 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 89ebd747..d674f101 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -28,7 +28,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "22.4.0", + "@types/node": "22.4.1", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "axios": "1.7.4", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index acfac9f3..aba8e3db 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -22,7 +22,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "22.4.0", + "@types/node": "22.4.1", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "eslint": "8.57.0", diff --git a/internal/backend/package.json b/internal/backend/package.json index 44d73397..7a911895 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.4.0", + "@types/node": "22.4.1", "pino-pretty": "11.2.2", "rimraf": "6.0.1", "tsx": "4.17.0", diff --git a/internal/next-common/package.json b/internal/next-common/package.json index f4dc5de1..483e8f1d 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.4.0", + "@types/node": "22.4.1", "rimraf": "6.0.1", "typescript": "5.5.4" } diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index c6df265c..e509a2ae 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -16,7 +16,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "22.4.0", + "@types/node": "22.4.1", "rimraf": "6.0.1", "typescript": "5.5.4" } diff --git a/package-lock.json b/package-lock.json index fdbcb57c..400c1607 100644 --- a/package-lock.json +++ b/package-lock.json @@ -48,7 +48,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "22.4.0", + "@types/node": "22.4.1", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "axios": "1.7.4", @@ -126,7 +126,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "22.4.0", + "@types/node": "22.4.1", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", "eslint": "8.57.0", @@ -452,7 +452,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.4.0", + "@types/node": "22.4.1", "pino-pretty": "11.2.2", "rimraf": "6.0.1", "tsx": "4.17.0", @@ -591,7 +591,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.4.0", + "@types/node": "22.4.1", "rimraf": "6.0.1", "typescript": "5.5.4" } @@ -804,7 +804,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "22.4.0", + "@types/node": "22.4.1", "rimraf": "6.0.1", "typescript": "5.5.4" } @@ -4235,9 +4235,9 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "22.4.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.4.0.tgz", - "integrity": "sha512-49AbMDwYUz7EXxKU/r7mXOsxwFr4BYbvB7tWYxVuLdb2ibd30ijjXINSMAHiEEZk5PCRBmW1gUeisn2VMKt3cQ==", + "version": "22.4.1", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.4.1.tgz", + "integrity": "sha512-1tbpb9325+gPnKK0dMm+/LMriX0vKxf6RnB0SZUqfyVkQ4fMgUSySqhxE/y8Jvs4NyF1yHzTfG9KlnkIODxPKg==", "dependencies": { "undici-types": "~6.19.2" } @@ -17170,7 +17170,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.4.0", + "@types/node": "22.4.1", "rimraf": "6.0.1", "tsup": "8.2.4", "tsx": "4.17.0", @@ -17189,7 +17189,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.4.0", + "@types/node": "22.4.1", "rimraf": "6.0.1", "tsup": "8.2.4", "typescript": "5.5.4" @@ -17205,7 +17205,7 @@ "license": "MIT", "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.4.0", + "@types/node": "22.4.1", "rimraf": "6.0.1", "tsup": "8.2.4", "tsx": "4.17.0", @@ -17227,7 +17227,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.4.0", + "@types/node": "22.4.1", "rimraf": "6.0.1", "tsup": "8.2.4", "tsx": "4.17.0", diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 473a65ff..a5e13dd2 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -80,7 +80,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.4.0", + "@types/node": "22.4.1", "rimraf": "6.0.1", "tsup": "8.2.4", "tsx": "4.17.0", diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index 92cda4ca..78cc9f79 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -25,7 +25,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.4.0", + "@types/node": "22.4.1", "rimraf": "6.0.1", "tsup": "8.2.4", "typescript": "5.5.4" diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index d4390ec3..f3e6980d 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -28,7 +28,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.4.0", + "@types/node": "22.4.1", "rimraf": "6.0.1", "tsup": "8.2.4", "tsx": "4.17.0", diff --git a/packages/server/package.json b/packages/server/package.json index 71d0b56a..d54e6f3a 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -32,7 +32,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.4.0", + "@types/node": "22.4.1", "rimraf": "6.0.1", "tsup": "8.2.4", "tsx": "4.17.0", From 7b2abf9ce407fa74f7ed766910085f8e8e5cd0dd Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Fri, 23 Aug 2024 20:07:55 +0300 Subject: [PATCH 348/458] Refactor search index creation in the `redis-stack` Handler (#709) - Move search index creation to `revalidateTag` method: - Ensure index existence before searching by creating it inside `revalidateTag` with a randomized name to avoid collisions - Allow synchronous Handler creation without waiting for the client to connect --- .changeset/slimy-suns-melt.md | 13 ++ .../cache-handler-redis-stack.mjs | 6 +- .../{next.config.js => next.config.mjs} | 10 +- .../src/pages/handlers/redis-stack.mdx | 4 +- internal/next-common/package.json | 2 +- package-lock.json | 181 ++---------------- packages/cache-handler/src/constants.ts | 2 + .../cache-handler/src/functions/nesh-cache.ts | 5 +- .../cache-handler/src/handlers/redis-stack.ts | 52 +++-- 9 files changed, 77 insertions(+), 198 deletions(-) create mode 100644 .changeset/slimy-suns-melt.md rename apps/cache-testing/{next.config.js => next.config.mjs} (68%) diff --git a/.changeset/slimy-suns-melt.md b/.changeset/slimy-suns-melt.md new file mode 100644 index 00000000..9629b70a --- /dev/null +++ b/.changeset/slimy-suns-melt.md @@ -0,0 +1,13 @@ +--- +'@neshca/cache-handler': minor +--- + +Refactor search index creation in the `redis-stack` Handler + +#### Minor Changes + +##### `@neshca/cache-handler/redis-stack` + +- Move search index creation to revalidateTag method: + - Ensure index existence before searching by creating it inside revalidateTag with a randomized name to avoid collisions + - Allow synchronous Handler creation without waiting for the client to connect diff --git a/apps/cache-testing/cache-handler-redis-stack.mjs b/apps/cache-testing/cache-handler-redis-stack.mjs index a815c313..5b3ba53d 100644 --- a/apps/cache-testing/cache-handler-redis-stack.mjs +++ b/apps/cache-testing/cache-handler-redis-stack.mjs @@ -57,9 +57,9 @@ CacheHandler.onCreation(async () => { /** @type {import("@neshca/cache-handler").Handler | null} */ let handler; - if (client?.isReady) { - // Create the `redis-stack` Handler if the client is available and connected. - handler = await createRedisHandler({ + if (client) { + // Create the `redis-stack` Handler if the client is available. + handler = createRedisHandler({ client, keyPrefix: 'JSON:', timeoutMs: 1000, diff --git a/apps/cache-testing/next.config.js b/apps/cache-testing/next.config.mjs similarity index 68% rename from apps/cache-testing/next.config.js rename to apps/cache-testing/next.config.mjs index daf0dfd8..b77f7d2c 100644 --- a/apps/cache-testing/next.config.js +++ b/apps/cache-testing/next.config.mjs @@ -1,6 +1,8 @@ -const path = require('node:path'); +// @ts-check -const cacheHandler = require.resolve(process.env.HANDLER_PATH ?? './cache-handler-redis-stack.mjs'); +import path from 'node:path'; + +const cacheHandler = path.resolve(process.env.HANDLER_PATH ?? './cache-handler-redis-stack.mjs'); /** @type {import('next').NextConfig} */ const nextConfig = { @@ -13,8 +15,8 @@ const nextConfig = { // PPR should only be configured via the PPR_ENABLED env variable due to conditional logic in tests. ppr: process.env.PPR_ENABLED === 'true', largePageDataBytes: 1024 * 1024, // 1MB - outputFileTracingRoot: path.join(__dirname, '../../'), + outputFileTracingRoot: path.join(import.meta.dirname, '../../'), }, }; -module.exports = nextConfig; +export default nextConfig; diff --git a/docs/cache-handler-docs/src/pages/handlers/redis-stack.mdx b/docs/cache-handler-docs/src/pages/handlers/redis-stack.mdx index 3866de72..f70daa95 100644 --- a/docs/cache-handler-docs/src/pages/handlers/redis-stack.mdx +++ b/docs/cache-handler-docs/src/pages/handlers/redis-stack.mdx @@ -9,7 +9,7 @@ import createRedisHandler from '@neshca/cache-handler/redis-stack'; const client = createClient(clientOptions); await client.connect(); -const redisHandler = await createRedisHandler({ +const redisHandler = createRedisHandler({ client, keyPrefix: 'prefix:', timeoutMs: 1000, @@ -41,4 +41,4 @@ You can adjust this value to optimize the number of commands sent to Redis when ### Return value -A Promise that resolves to a new `Handler` instance for the `redis-stack` Handler. +A new `Handler` instance for the `redis-stack` Handler. diff --git a/internal/next-common/package.json b/internal/next-common/package.json index 483e8f1d..c282cddd 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -11,7 +11,7 @@ "clean": "rimraf ./.turbo ./node_modules" }, "dependencies": { - "next": "14.2.0-canary.61" + "next": "14.3.0-canary.44" }, "devDependencies": { "@repo/typescript-config": "*", diff --git a/package-lock.json b/package-lock.json index 400c1607..f6ee2c67 100644 --- a/package-lock.json +++ b/package-lock.json @@ -587,7 +587,7 @@ "version": "0.0.0", "license": "MIT", "dependencies": { - "next": "14.2.0-canary.61" + "next": "14.3.0-canary.44" }, "devDependencies": { "@repo/typescript-config": "*", @@ -596,162 +596,14 @@ "typescript": "5.5.4" } }, - "internal/next-common/node_modules/@next/env": { - "version": "14.2.0-canary.61", - "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.0-canary.61.tgz", - "integrity": "sha512-Ueqse8kdwaoebGrpSo60M4/cjFaMJEE7BMsKZufYwZDTlE0qXw7N4GsdVpUZzJG00sXf6CoTnCU1lCTPrUMC4g==" - }, - "internal/next-common/node_modules/@next/swc-darwin-arm64": { - "version": "14.2.0-canary.61", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.0-canary.61.tgz", - "integrity": "sha512-mMlp2/hvtaBbCY5qYhuvAqX9Z/aFC+Rgme4FjFSxq2C3TC/mL3G4fVG/TVl7bqjikKCxSvJgiWXRwvhIaqGktw==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">= 10" - } - }, - "internal/next-common/node_modules/@next/swc-darwin-x64": { - "version": "14.2.0-canary.61", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.0-canary.61.tgz", - "integrity": "sha512-4bEjO0WK6keRi972eAY1AfvTXOQRHnM59klNqnUh5zfalbi7VkEdluhYAZOop2NycCHjF+m8p+ytYtrF1uCO1Q==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">= 10" - } - }, - "internal/next-common/node_modules/@next/swc-linux-arm64-gnu": { - "version": "14.2.0-canary.61", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.0-canary.61.tgz", - "integrity": "sha512-wIXc3EdxrETlL2XwlGlLQkMU9godhNSMAXxiJotd/mhN3K4iKajPahAStvFxY2Zwc/on2IBa0NpUGpzDONNt9A==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "internal/next-common/node_modules/@next/swc-linux-arm64-musl": { - "version": "14.2.0-canary.61", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.0-canary.61.tgz", - "integrity": "sha512-95aMF55sq2N6+5iLEqxCfz7ccYMBURQ8D0KYmcq+rMJTE5z/qvxEToSJWAbV4jGyd2Eq/vXjPdR1rFytv2FnOw==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "internal/next-common/node_modules/@next/swc-linux-x64-gnu": { - "version": "14.2.0-canary.61", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.0-canary.61.tgz", - "integrity": "sha512-LWG5OC9hNSCYtDb+7MQcIjE1PO70Sho+ZJkqJnmLxJ08Atp/nJQBo9nAMjORdcO5Nz+hPNVY5vmrY+5Fl5kadw==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "internal/next-common/node_modules/@next/swc-linux-x64-musl": { - "version": "14.2.0-canary.61", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.0-canary.61.tgz", - "integrity": "sha512-EjOXbSmDTPVi8xkOix4/WYJM6OUert+lfBtdUJBRba+oGiRw/mheih8FliFZKFOmQbPYj67A9z/QCus2ZDnfSw==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "internal/next-common/node_modules/@next/swc-win32-arm64-msvc": { - "version": "14.2.0-canary.61", - "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.0-canary.61.tgz", - "integrity": "sha512-TK8oV4ozzUGWAwvZp/0SBsNgAUhrUFLWCMSXsFHz+YMRjHg7nT0KdK8BYh2Ln4Qt0jjDTUHbI1jaQKxmSMEMmA==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 10" - } - }, - "internal/next-common/node_modules/@next/swc-win32-ia32-msvc": { - "version": "14.2.0-canary.61", - "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.0-canary.61.tgz", - "integrity": "sha512-i0iWCehuLKDOfVbQ6MEKG9v0lfcJU0DPWkYINFSi6p3fkFobI/+7DVT3KvYH5VVng/+opx+pA6cesV5eyQnBtw==", - "cpu": [ - "ia32" - ], - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 10" - } - }, - "internal/next-common/node_modules/@next/swc-win32-x64-msvc": { - "version": "14.2.0-canary.61", - "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.0-canary.61.tgz", - "integrity": "sha512-WB0UjpWcu+oXQOMFDTHDZWKcL2jiXeQfN+1RRkb0x7ZjVxvA/O66vOJE08fLSu7rdymLiGXxX+AKlGFq1Tpisg==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 10" - } - }, - "internal/next-common/node_modules/@swc/helpers": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.5.tgz", - "integrity": "sha512-KGYxvIOXcceOAbEk4bi/dVLEK9z8sZ0uBB3Il5b1rhfClSpcX0yfRO0KmTkqR2cnQDymwLB+25ZyMzICg/cm/A==", - "dependencies": { - "@swc/counter": "^0.1.3", - "tslib": "^2.4.0" - } - }, "internal/next-common/node_modules/next": { - "version": "14.2.0-canary.61", - "resolved": "https://registry.npmjs.org/next/-/next-14.2.0-canary.61.tgz", - "integrity": "sha512-UbdoNkGX04TO0Q0N3k7fmiNCliE1yihVBHd/nwg2zMnpjB6dGU3r1UNgCBpfUUlrs1t19FAWazfVQANOOfBT4w==", + "version": "14.3.0-canary.44", + "resolved": "https://registry.npmjs.org/next/-/next-14.3.0-canary.44.tgz", + "integrity": "sha512-iYJmuiARcldXjN27N0Yo8gWyy6vWl+FoUNcEaL2GGh3sA/rc4hcbZD89ZUXoVFsPAI7ze6sKM60Znct9RwCbKQ==", + "license": "MIT", "dependencies": { - "@next/env": "14.2.0-canary.61", - "@swc/helpers": "0.5.5", + "@next/env": "14.3.0-canary.44", + "@swc/helpers": "0.5.11", "busboy": "1.6.0", "caniuse-lite": "^1.0.30001579", "graceful-fs": "^4.2.11", @@ -765,15 +617,16 @@ "node": ">=18.17.0" }, "optionalDependencies": { - "@next/swc-darwin-arm64": "14.2.0-canary.61", - "@next/swc-darwin-x64": "14.2.0-canary.61", - "@next/swc-linux-arm64-gnu": "14.2.0-canary.61", - "@next/swc-linux-arm64-musl": "14.2.0-canary.61", - "@next/swc-linux-x64-gnu": "14.2.0-canary.61", - "@next/swc-linux-x64-musl": "14.2.0-canary.61", - "@next/swc-win32-arm64-msvc": "14.2.0-canary.61", - "@next/swc-win32-ia32-msvc": "14.2.0-canary.61", - "@next/swc-win32-x64-msvc": "14.2.0-canary.61" + "@next/swc-darwin-arm64": "14.3.0-canary.44", + "@next/swc-darwin-x64": "14.3.0-canary.44", + "@next/swc-linux-arm64-gnu": "14.3.0-canary.44", + "@next/swc-linux-arm64-musl": "14.3.0-canary.44", + "@next/swc-linux-x64-gnu": "14.3.0-canary.44", + "@next/swc-linux-x64-musl": "14.3.0-canary.44", + "@next/swc-win32-arm64-msvc": "14.3.0-canary.44", + "@next/swc-win32-ia32-msvc": "14.3.0-canary.44", + "@next/swc-win32-x64-msvc": "14.3.0-canary.44", + "sharp": "^0.33.3" }, "peerDependencies": { "@opentelemetry/api": "^1.1.0", diff --git a/packages/cache-handler/src/constants.ts b/packages/cache-handler/src/constants.ts index ad2f88e9..2f6e8b09 100644 --- a/packages/cache-handler/src/constants.ts +++ b/packages/cache-handler/src/constants.ts @@ -1,3 +1,5 @@ export const MAX_INT32 = 2 ** 31 - 1; +export const TIME_ONE_YEAR = 31536000; + export const REVALIDATED_TAGS_KEY = '__revalidated_tags__'; diff --git a/packages/cache-handler/src/functions/nesh-cache.ts b/packages/cache-handler/src/functions/nesh-cache.ts index 934a7794..7d7b0d45 100644 --- a/packages/cache-handler/src/functions/nesh-cache.ts +++ b/packages/cache-handler/src/functions/nesh-cache.ts @@ -6,8 +6,7 @@ import { type StaticGenerationStore, staticGenerationAsyncStorage, } from '@neshca/next-common'; - -const CACHE_ONE_YEAR = 31536000; +import { TIME_ONE_YEAR } from '../constants'; function getDerivedTags(pathname: string): string[] { const derivedTags: string[] = ['/layout']; @@ -322,7 +321,7 @@ export function neshCache { +}: CreateRedisStackHandlerOptions): Handler { function assertClientIsReady(): void { if (!client.isReady) { throw new Error('Redis client is not ready'); @@ -50,20 +51,27 @@ export default async function createHandler({ return str.replace(/[^a-zA-Z0-9]/gi, '_'); } - assertClientIsReady(); - - try { - await client.ft.create( - 'idx:tags', - { - '$.tags': { type: SchemaFieldTypes.TEXT, AS: 'tag' }, - }, - { - ON: 'JSON', - }, - ); - } catch (_e) { - // Index already exists + const indexName = `idx:tags-${randomBytes(32).toString('hex')}`; + + async function createIndexIfNotExists(): Promise { + try { + await client.ft.create( + indexName, + { + '$.tags': { type: SchemaFieldTypes.TEXT, AS: 'tag' }, + }, + { + ON: 'JSON', + TEMPORARY: TIME_ONE_YEAR, + }, + ); + } catch (error) { + if (error instanceof ErrorReply && error.message === 'Index already exists') { + return; + } + + throw error; + } } const revalidatedTagsKey = keyPrefix + REVALIDATED_TAGS_KEY; @@ -129,6 +137,8 @@ export default async function createHandler({ async revalidateTag(tag) { assertClientIsReady(); + await createIndexIfNotExists(); + const sanitizedTag = sanitizeTag(tag); // If the tag is an implicit tag, we need to mark it as revalidated. @@ -149,7 +159,7 @@ export default async function createHandler({ while (true) { const { documents: documentIds } = await client.ft.searchNoContent( getTimeoutRedisCommandOptions(timeoutMs), - 'idx:tags', + indexName, `@tag:(${sanitizedTag})`, { LIMIT: { from, size: revalidateTagQuerySize }, From 2741752210f39e60f5a16227cbbf9969564b5213 Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Fri, 23 Aug 2024 20:41:52 +0300 Subject: [PATCH 349/458] Update `cache-handler` README.md and the docs banner (#711) --- docs/cache-handler-docs/theme.config.jsx | 10 +++++----- packages/cache-handler/README.md | 4 +++- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/docs/cache-handler-docs/theme.config.jsx b/docs/cache-handler-docs/theme.config.jsx index 151acc65..483280db 100644 --- a/docs/cache-handler-docs/theme.config.jsx +++ b/docs/cache-handler-docs/theme.config.jsx @@ -53,20 +53,20 @@ export default { ), }, banner: { - key: 'version-1.5.0', + key: 'version-1.6.0', text: (
- 🎉 1.5.0 is out! It features the new{' '} + 🎉 1.6.0 is out! It features synchronous{' '} - experimental-redis-cluster + redis-stack {' '} - Handler for Redis Cluster support! + Handler creation function!
), }, diff --git a/packages/cache-handler/README.md b/packages/cache-handler/README.md index bcb46bad..71b1f299 100644 --- a/packages/cache-handler/README.md +++ b/packages/cache-handler/README.md @@ -8,7 +8,9 @@ ## Latest Release -🎉 **Version 1.5.0** is here! Now featuring the [`experimental-redis-cluster`](https://caching-tools.github.io/next-shared-cache/handlers/experimental-redis-cluster) handler for Redis Cluster support! +🎉 **Version 1.6.0** is here! Now featuring synchronous [`redis-stack`](https://caching-tools.github.io/next-shared-cache/handlers/redis-stack) Handler creation function. + +Do not forget the [`experimental-redis-cluster`](https://caching-tools.github.io/next-shared-cache/handlers/experimental-redis-cluster) Handler for Redis Cluster support from a previous release. Check out the [changelog](https://github.com/caching-tools/next-shared-cache/blob/canary/packages/cache-handler/CHANGELOG.md) for more details. From f060e6546f39ef5ab38d39f0343c331792e39632 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Fri, 23 Aug 2024 20:48:29 +0300 Subject: [PATCH 350/458] Version Packages (#710) Co-authored-by: github-actions[bot] --- .changeset/slimy-suns-melt.md | 13 ------------- packages/cache-handler/CHANGELOG.md | 14 ++++++++++++++ packages/cache-handler/package.json | 2 +- 3 files changed, 15 insertions(+), 14 deletions(-) delete mode 100644 .changeset/slimy-suns-melt.md diff --git a/.changeset/slimy-suns-melt.md b/.changeset/slimy-suns-melt.md deleted file mode 100644 index 9629b70a..00000000 --- a/.changeset/slimy-suns-melt.md +++ /dev/null @@ -1,13 +0,0 @@ ---- -'@neshca/cache-handler': minor ---- - -Refactor search index creation in the `redis-stack` Handler - -#### Minor Changes - -##### `@neshca/cache-handler/redis-stack` - -- Move search index creation to revalidateTag method: - - Ensure index existence before searching by creating it inside revalidateTag with a randomized name to avoid collisions - - Allow synchronous Handler creation without waiting for the client to connect diff --git a/packages/cache-handler/CHANGELOG.md b/packages/cache-handler/CHANGELOG.md index d47cc0dc..89f564ea 100644 --- a/packages/cache-handler/CHANGELOG.md +++ b/packages/cache-handler/CHANGELOG.md @@ -1,5 +1,19 @@ # @neshca/cache-handler +## 1.6.0 + +### Minor Changes + +- 7b2abf9: Refactor search index creation in the `redis-stack` Handler + + #### Minor Changes + + ##### `@neshca/cache-handler/redis-stack` + + - Move search index creation to revalidateTag method: + - Ensure index existence before searching by creating it inside revalidateTag with a randomized name to avoid collisions + - Allow synchronous Handler creation without waiting for the client to connect + ## 1.5.1 ### Patch Changes diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index a5e13dd2..c6c254ab 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -1,6 +1,6 @@ { "name": "@neshca/cache-handler", - "version": "1.5.1", + "version": "1.6.0", "description": "Next.js self-hosting simplified.", "keywords": [ "cache", From 58b8c3b9f6b632935f0b46a0bfbbf3d447b66538 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 23 Aug 2024 21:16:09 +0300 Subject: [PATCH 351/458] Bump the definitely-typed group with 2 updates (#708) Bumps the definitely-typed group with 2 updates: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) and [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react). Updates `@types/node` from 22.4.1 to 22.5.0 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) Updates `@types/react` from 18.3.3 to 18.3.4 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react) --- updated-dependencies: - dependency-name: "@types/node" dependency-type: direct:development update-type: version-update:semver-minor dependency-group: definitely-typed - dependency-name: "@types/react" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 4 +-- docs/cache-handler-docs/package.json | 4 +-- internal/backend/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 36 ++++++++++----------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 10 files changed, 29 insertions(+), 29 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index d674f101..0b2a7460 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -28,8 +28,8 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "22.4.1", - "@types/react": "18.3.3", + "@types/node": "22.5.0", + "@types/react": "18.3.4", "@types/react-dom": "18.3.0", "axios": "1.7.4", "dotenv-cli": "7.4.2", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index aba8e3db..25ab93dc 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -22,8 +22,8 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "22.4.1", - "@types/react": "18.3.3", + "@types/node": "22.5.0", + "@types/react": "18.3.4", "@types/react-dom": "18.3.0", "eslint": "8.57.0", "typescript": "5.5.4" diff --git a/internal/backend/package.json b/internal/backend/package.json index 7a911895..0b7d69dc 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.4.1", + "@types/node": "22.5.0", "pino-pretty": "11.2.2", "rimraf": "6.0.1", "tsx": "4.17.0", diff --git a/internal/next-common/package.json b/internal/next-common/package.json index c282cddd..904db423 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.4.1", + "@types/node": "22.5.0", "rimraf": "6.0.1", "typescript": "5.5.4" } diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index e509a2ae..b24eda00 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -16,7 +16,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "22.4.1", + "@types/node": "22.5.0", "rimraf": "6.0.1", "typescript": "5.5.4" } diff --git a/package-lock.json b/package-lock.json index f6ee2c67..971a2288 100644 --- a/package-lock.json +++ b/package-lock.json @@ -48,8 +48,8 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "22.4.1", - "@types/react": "18.3.3", + "@types/node": "22.5.0", + "@types/react": "18.3.4", "@types/react-dom": "18.3.0", "axios": "1.7.4", "dotenv-cli": "7.4.2", @@ -126,8 +126,8 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "22.4.1", - "@types/react": "18.3.3", + "@types/node": "22.5.0", + "@types/react": "18.3.4", "@types/react-dom": "18.3.0", "eslint": "8.57.0", "typescript": "5.5.4" @@ -452,7 +452,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.4.1", + "@types/node": "22.5.0", "pino-pretty": "11.2.2", "rimraf": "6.0.1", "tsx": "4.17.0", @@ -591,7 +591,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.4.1", + "@types/node": "22.5.0", "rimraf": "6.0.1", "typescript": "5.5.4" } @@ -657,7 +657,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "22.4.1", + "@types/node": "22.5.0", "rimraf": "6.0.1", "typescript": "5.5.4" } @@ -4088,9 +4088,9 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "22.4.1", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.4.1.tgz", - "integrity": "sha512-1tbpb9325+gPnKK0dMm+/LMriX0vKxf6RnB0SZUqfyVkQ4fMgUSySqhxE/y8Jvs4NyF1yHzTfG9KlnkIODxPKg==", + "version": "22.5.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.0.tgz", + "integrity": "sha512-DkFrJOe+rfdHTqqMg0bSNlGlQ85hSoh2TPzZyhHsXnMtligRWpxUySiyw8FY14ITt24HVCiQPWxS3KO/QlGmWg==", "dependencies": { "undici-types": "~6.19.2" } @@ -4122,9 +4122,9 @@ "integrity": "sha512-5zvhXYtRNRluoE/jAp4GVsSduVUzNWKkOZrCDBWYtE7biZywwdC2AcEzg+cSMLFRfVgeAFqpfNabiPjxFddV1Q==" }, "node_modules/@types/react": { - "version": "18.3.3", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.3.tgz", - "integrity": "sha512-hti/R0pS0q1/xx+TsI73XIqk26eBsISZ2R0wUijXIngRK9R/e7Xw/cXVxQK7R5JjW+SV4zGcn5hXjudkN/pLIw==", + "version": "18.3.4", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.4.tgz", + "integrity": "sha512-J7W30FTdfCxDDjmfRM+/JqLHBIyl7xUIp9kwK637FGmY7+mkSFSe6L4jpZzhj5QMfLssSDP4/i75AKkrdC7/Jw==", "dependencies": { "@types/prop-types": "*", "csstype": "^3.0.2" @@ -17013,7 +17013,7 @@ }, "packages/cache-handler": { "name": "@neshca/cache-handler", - "version": "1.5.1", + "version": "1.6.0", "license": "MIT", "dependencies": { "cluster-key-slot": "1.1.2", @@ -17023,7 +17023,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.4.1", + "@types/node": "22.5.0", "rimraf": "6.0.1", "tsup": "8.2.4", "tsx": "4.17.0", @@ -17042,7 +17042,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.4.1", + "@types/node": "22.5.0", "rimraf": "6.0.1", "tsup": "8.2.4", "typescript": "5.5.4" @@ -17058,7 +17058,7 @@ "license": "MIT", "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.4.1", + "@types/node": "22.5.0", "rimraf": "6.0.1", "tsup": "8.2.4", "tsx": "4.17.0", @@ -17080,7 +17080,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.4.1", + "@types/node": "22.5.0", "rimraf": "6.0.1", "tsup": "8.2.4", "tsx": "4.17.0", diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index c6c254ab..6df396e9 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -80,7 +80,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.4.1", + "@types/node": "22.5.0", "rimraf": "6.0.1", "tsup": "8.2.4", "tsx": "4.17.0", diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index 78cc9f79..594a7b39 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -25,7 +25,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.4.1", + "@types/node": "22.5.0", "rimraf": "6.0.1", "tsup": "8.2.4", "typescript": "5.5.4" diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index f3e6980d..6790ed41 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -28,7 +28,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.4.1", + "@types/node": "22.5.0", "rimraf": "6.0.1", "tsup": "8.2.4", "tsx": "4.17.0", diff --git a/packages/server/package.json b/packages/server/package.json index d54e6f3a..cb8c6219 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -32,7 +32,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.4.1", + "@types/node": "22.5.0", "rimraf": "6.0.1", "tsup": "8.2.4", "tsx": "4.17.0", From e2f57a4823c267c590b820f782dc0f7c146d2b2b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 23 Aug 2024 21:24:27 +0300 Subject: [PATCH 352/458] Bump micromatch from 4.0.7 to 4.0.8 in the npm_and_yarn group (#712) Bumps the npm_and_yarn group with 1 update: [micromatch](https://github.com/micromatch/micromatch). Updates `micromatch` from 4.0.7 to 4.0.8 - [Release notes](https://github.com/micromatch/micromatch/releases) - [Changelog](https://github.com/micromatch/micromatch/blob/4.0.8/CHANGELOG.md) - [Commits](https://github.com/micromatch/micromatch/compare/4.0.7...4.0.8) --- updated-dependencies: - dependency-name: micromatch dependency-type: indirect dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index 971a2288..f0e85e18 100644 --- a/package-lock.json +++ b/package-lock.json @@ -11975,9 +11975,9 @@ ] }, "node_modules/micromatch": { - "version": "4.0.7", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.7.tgz", - "integrity": "sha512-LPP/3KorzCwBxfeUuZmaR6bG2kdeHSbe0P2tY3FLRU4vYrjYz5hI4QZwV0njUx3jeuKe67YukQ1LSPZBKDqO/Q==", + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", + "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", "dependencies": { "braces": "^3.0.3", "picomatch": "^2.3.1" From cf8965006ead53925c0dcb548f082f023a242a61 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 24 Aug 2024 01:28:17 +0300 Subject: [PATCH 353/458] Bump axios from 1.7.4 to 1.7.5 (#713) Bumps [axios](https://github.com/axios/axios) from 1.7.4 to 1.7.5. - [Release notes](https://github.com/axios/axios/releases) - [Changelog](https://github.com/axios/axios/blob/v1.x/CHANGELOG.md) - [Commits](https://github.com/axios/axios/compare/v1.7.4...v1.7.5) --- updated-dependencies: - dependency-name: axios dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- package-lock.json | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 0b2a7460..aab84256 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -31,7 +31,7 @@ "@types/node": "22.5.0", "@types/react": "18.3.4", "@types/react-dom": "18.3.0", - "axios": "1.7.4", + "axios": "1.7.5", "dotenv-cli": "7.4.2", "eslint": "8.57.0", "fastify": "4.28.1", diff --git a/package-lock.json b/package-lock.json index f0e85e18..3ab116f4 100644 --- a/package-lock.json +++ b/package-lock.json @@ -51,7 +51,7 @@ "@types/node": "22.5.0", "@types/react": "18.3.4", "@types/react-dom": "18.3.0", - "axios": "1.7.4", + "axios": "1.7.5", "dotenv-cli": "7.4.2", "eslint": "8.57.0", "fastify": "4.28.1", @@ -4948,9 +4948,9 @@ } }, "node_modules/axios": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.4.tgz", - "integrity": "sha512-DukmaFRnY6AzAALSH4J2M3k6PkaC+MfaAGdEERRWcC9q3/TWQwLpHR8ZRLKTdQ3aBDL64EdluRDjJqKw+BPZEw==", + "version": "1.7.5", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.5.tgz", + "integrity": "sha512-fZu86yCo+svH3uqJ/yTdQ0QHpQu5oL+/QE+QPSv6BZSkDAoky9vytxp7u5qk83OJFS3kEBcesWni9WTZAv3tSw==", "dev": true, "dependencies": { "follow-redirects": "^1.15.6", From 155214f7f01cd6f726c62e206e5b33dfa3e05d7f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 25 Aug 2024 18:08:43 +0300 Subject: [PATCH 354/458] Bump tsx from 4.17.0 to 4.18.0 (#715) Bumps [tsx](https://github.com/privatenumber/tsx) from 4.17.0 to 4.18.0. - [Release notes](https://github.com/privatenumber/tsx/releases) - [Changelog](https://github.com/privatenumber/tsx/blob/master/release.config.cjs) - [Commits](https://github.com/privatenumber/tsx/compare/v4.17.0...v4.18.0) --- updated-dependencies: - dependency-name: tsx dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- internal/backend/package.json | 2 +- package-lock.json | 16 ++++++++-------- packages/cache-handler/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 6 files changed, 13 insertions(+), 13 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index aab84256..2504dc31 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -38,7 +38,7 @@ "pm2": "5.4.2", "redis": "4.7.0", "rimraf": "6.0.1", - "tsx": "4.17.0", + "tsx": "4.18.0", "typescript": "5.5.4" } } diff --git a/internal/backend/package.json b/internal/backend/package.json index 0b7d69dc..f9f1355b 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -18,7 +18,7 @@ "@types/node": "22.5.0", "pino-pretty": "11.2.2", "rimraf": "6.0.1", - "tsx": "4.17.0", + "tsx": "4.18.0", "typescript": "5.5.4" } } diff --git a/package-lock.json b/package-lock.json index 3ab116f4..7dc8b5e0 100644 --- a/package-lock.json +++ b/package-lock.json @@ -58,7 +58,7 @@ "pm2": "5.4.2", "redis": "4.7.0", "rimraf": "6.0.1", - "tsx": "4.17.0", + "tsx": "4.18.0", "typescript": "5.5.4" } }, @@ -455,7 +455,7 @@ "@types/node": "22.5.0", "pino-pretty": "11.2.2", "rimraf": "6.0.1", - "tsx": "4.17.0", + "tsx": "4.18.0", "typescript": "5.5.4" } }, @@ -15898,9 +15898,9 @@ "dev": true }, "node_modules/tsx": { - "version": "4.17.0", - "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.17.0.tgz", - "integrity": "sha512-eN4mnDA5UMKDt4YZixo9tBioibaMBpoxBkD+rIPAjVmYERSG0/dWEY1CEFuV89CgASlKL499q8AhmkMnnjtOJg==", + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.18.0.tgz", + "integrity": "sha512-a1jaKBSVQkd6yEc1/NI7G6yHFfefIcuf3QJST7ZEyn4oQnxLYrZR5uZAM8UrwUa3Ge8suiZHcNS1gNrEvmobqg==", "dev": true, "dependencies": { "esbuild": "~0.23.0", @@ -17026,7 +17026,7 @@ "@types/node": "22.5.0", "rimraf": "6.0.1", "tsup": "8.2.4", - "tsx": "4.17.0", + "tsx": "4.18.0", "typescript": "5.5.4" }, "peerDependencies": { @@ -17061,7 +17061,7 @@ "@types/node": "22.5.0", "rimraf": "6.0.1", "tsup": "8.2.4", - "tsx": "4.17.0", + "tsx": "4.18.0", "typescript": "5.5.4" } }, @@ -17083,7 +17083,7 @@ "@types/node": "22.5.0", "rimraf": "6.0.1", "tsup": "8.2.4", - "tsx": "4.17.0", + "tsx": "4.18.0", "typescript": "5.5.4" } } diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 6df396e9..d783f773 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -83,7 +83,7 @@ "@types/node": "22.5.0", "rimraf": "6.0.1", "tsup": "8.2.4", - "tsx": "4.17.0", + "tsx": "4.18.0", "typescript": "5.5.4" }, "peerDependencies": { diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 6790ed41..d2fe0e39 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -31,7 +31,7 @@ "@types/node": "22.5.0", "rimraf": "6.0.1", "tsup": "8.2.4", - "tsx": "4.17.0", + "tsx": "4.18.0", "typescript": "5.5.4" } } diff --git a/packages/server/package.json b/packages/server/package.json index cb8c6219..120c859d 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -35,7 +35,7 @@ "@types/node": "22.5.0", "rimraf": "6.0.1", "tsup": "8.2.4", - "tsx": "4.17.0", + "tsx": "4.18.0", "typescript": "5.5.4" }, "distTags": [ From 435a4fe39cbe7b9f34c1db08fcbdf80b879e8925 Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Tue, 27 Aug 2024 18:11:59 +0300 Subject: [PATCH 355/458] Fix the delete functionality in the built-in Handlers and enhance the debug logging (#719) This PR fixes the delete functionality in the built-in Handlers to address potential cache-diverging issues when using cache stores without auto-eviction functionality. Additionally, it enhances the debug logging in the CacheHandler class to improve traceability and facilitate troubleshooting. --- .changeset/popular-wolves-wash.md | 5 + .changeset/shiny-apples-refuse.md | 5 + .../src/pages/troubleshooting.mdx | 12 +- internal/next-common/src/next-common.ts | 5 - packages/cache-handler/src/cache-handler.ts | 317 ++++++++++++++---- .../cache-handler/src/functions/nesh-cache.ts | 6 +- .../handlers/experimental-redis-cluster.ts | 3 + .../cache-handler/src/handlers/redis-stack.ts | 3 + .../src/handlers/redis-strings.ts | 3 + packages/cache-handler/src/handlers/server.ts | 15 + packages/server/src/server.ts | 14 + 11 files changed, 302 insertions(+), 86 deletions(-) create mode 100644 .changeset/popular-wolves-wash.md create mode 100644 .changeset/shiny-apples-refuse.md diff --git a/.changeset/popular-wolves-wash.md b/.changeset/popular-wolves-wash.md new file mode 100644 index 00000000..0a369b81 --- /dev/null +++ b/.changeset/popular-wolves-wash.md @@ -0,0 +1,5 @@ +--- +'@neshca/server': patch +--- + +Implement delete functionality. diff --git a/.changeset/shiny-apples-refuse.md b/.changeset/shiny-apples-refuse.md new file mode 100644 index 00000000..9db8cb76 --- /dev/null +++ b/.changeset/shiny-apples-refuse.md @@ -0,0 +1,5 @@ +--- +'@neshca/cache-handler': patch +--- + +Fix delete functionality for all built-in Handlers and enhance debug logging. diff --git a/docs/cache-handler-docs/src/pages/troubleshooting.mdx b/docs/cache-handler-docs/src/pages/troubleshooting.mdx index f8aca844..eac892cc 100644 --- a/docs/cache-handler-docs/src/pages/troubleshooting.mdx +++ b/docs/cache-handler-docs/src/pages/troubleshooting.mdx @@ -56,9 +56,15 @@ npm run start A verbose output should appear in your server console when the application starts and any page is opened in your browser: ``` -using custom cache handler @neshca/cache-handler with 1 Handlers -get from "redis-stack" ba7bea0a3991dc2cbf8e068da71c2a2aa8c0e6f902fe695c1badf1e994acc43a false -set to external cache store 8f058e8d96c4010b07abddd0f9f26ebd9ed71e2ccfb18eca348fc57a6e86f986 +using custom cache handler @neshca/cache-handler is not configured yet +[CacheHandler] Instance created with provided context. +[CacheHandler] Creating new CacheHandler configuration. +Connecting Redis client... +[CacheHandler] Cache configuration retrieved from onCreation hook. +Redis client connected. +[CacheHandler] [handlers: [redis-stack]] Successfully created CacheHandler configuration. +[CacheHandler] [method: get] [key: /app/with-params/dynamic-true/200] Started retrieving value in order. +[CacheHandler] [handler: redis-stack] [method: get] [key: /app/with-params/dynamic-true/200] Started retrieving value. ``` Note: During the build stage, it's normal to see `@neshca/cache-handler is not configured yet` several times. diff --git a/internal/next-common/src/next-common.ts b/internal/next-common/src/next-common.ts index fb62de0d..70b5330a 100644 --- a/internal/next-common/src/next-common.ts +++ b/internal/next-common/src/next-common.ts @@ -19,11 +19,6 @@ export type { IncrementalCacheKindHint, } from 'next/dist/server/response-cache/types'; -export { - type StaticGenerationStore, - staticGenerationAsyncStorage, -} from 'next/dist/client/components/static-generation-async-storage.external.js'; - /** * A set of time periods and timestamps for controlling cache behavior. */ diff --git a/packages/cache-handler/src/cache-handler.ts b/packages/cache-handler/src/cache-handler.ts index 70e77833..6913f511 100644 --- a/packages/cache-handler/src/cache-handler.ts +++ b/packages/cache-handler/src/cache-handler.ts @@ -136,7 +136,7 @@ export type Handler = { * This method is optional and supposed to be used only when the cache store does not support time based key eviction. * This method will be automatically called by the `CacheHandler` class when the retrieved cache entry is stale. * - * @param key - The unique string identifier for the cache entry. + * @param key - The unique string identifier for the cache entry with prefix if present. * * @returns A Promise that resolves when the cache entry has been successfully deleted. * @@ -265,6 +265,52 @@ export type CacheCreationContext = { */ export type OnCreationHook = (context: CacheCreationContext) => Promise | CacheHandlerConfig; +/** + * Deletes an entry from all handlers. + * + * @param handlers - The list of handlers. + * @param key - The key to delete. + * @param debug - Whether to log debug messages. + * + * @returns A Promise that resolves when all handlers have finished deleting the entry. + */ +async function removeEntryFromHandlers(handlers: Handler[], key: string, debug: boolean): Promise { + if (debug) { + console.info( + '[CacheHandler] [method: %s] [key: %s] %s', + 'delete', + key, + 'Started deleting entry from Handlers.', + ); + } + + const operationsResults = await Promise.allSettled(handlers.map((handler) => handler.delete?.(key))); + + if (!debug) { + return; + } + + operationsResults.forEach((handlerResult, index) => { + if (handlerResult.status === 'rejected') { + console.warn( + '[CacheHandler] [handler: %s] [method: %s] [key: %s] %s', + handlers[index]?.name ?? `unknown-${index}`, + 'delete', + key, + `Error: ${handlerResult.reason}`, + ); + } else { + console.info( + '[CacheHandler] [handler: %s] [method: %s] [key: %s] %s', + handlers[index]?.name ?? `unknown-${index}`, + 'delete', + key, + 'Successfully deleted value.', + ); + } + }); +} + export class CacheHandler implements NextCacheHandler { /** * Provides a descriptive name for the CacheHandler class. @@ -330,6 +376,16 @@ export class CacheHandler implements NextCacheHandler { let cacheHandlerValue: CacheHandlerValue | null = null; let pageHtmlHandle: fsPromises.FileHandle | null = null; + if (CacheHandler.#debug) { + console.info( + '[CacheHandler] [handler: %s] [method: %s] [key: %s] %s', + 'file system', + 'get', + cacheKey, + 'Started retrieving value.', + ); + } + try { const pageHtmlPath = path.join(CacheHandler.#serverDistDir, 'pages', `${cacheKey}.html`); const pageDataPath = path.join(CacheHandler.#serverDistDir, 'pages', `${cacheKey}.json`); @@ -344,6 +400,16 @@ export class CacheHandler implements NextCacheHandler { const pageData = JSON.parse(pageDataFile) as object; + if (CacheHandler.#debug) { + console.info( + '[CacheHandler] [handler: %s] [method: %s] [key: %s] %s', + 'file system', + 'get', + cacheKey, + 'Successfully retrieved value.', + ); + } + cacheHandlerValue = { lastModified: mtimeMs, lifespan: null, @@ -357,8 +423,18 @@ export class CacheHandler implements NextCacheHandler { status: undefined, }, }; - } catch (_) { + } catch (error) { cacheHandlerValue = null; + + if (CacheHandler.#debug) { + console.warn( + '[CacheHandler] [handler: %s] [method: %s] [key: %s] %s', + 'file system', + 'get', + cacheKey, + `Error: ${error}`, + ); + } } finally { await pageHtmlHandle?.close(); } @@ -366,7 +442,7 @@ export class CacheHandler implements NextCacheHandler { return cacheHandlerValue; } - static async #writePagesRouterPage(cacheKey: string, pageData: IncrementalCachedPageValue): Promise { + static async #writePagesRouterPage(cacheKey: string, pageData: IncrementalCachedPageValue): Promise { try { const pageHtmlPath = path.join(CacheHandler.#serverDistDir, 'pages', `${cacheKey}.html`); const pageDataPath = path.join(CacheHandler.#serverDistDir, 'pages', `${cacheKey}.json`); @@ -378,9 +454,25 @@ export class CacheHandler implements NextCacheHandler { fsPromises.writeFile(pageDataPath, JSON.stringify(pageData.pageData)), ]); - return true; - } catch (_error) { - return false; + if (CacheHandler.#debug) { + console.info( + '[CacheHandler] [handler: %s] [method: %s] [key: %s] %s', + 'file system', + 'set', + cacheKey, + 'Successfully set value.', + ); + } + } catch (error) { + if (CacheHandler.#debug) { + console.warn( + '[CacheHandler] [handler: %s] [method: %s] [key: %s] %s', + 'file system', + 'set', + cacheKey, + `Error: ${error}`, + ); + } } } @@ -434,9 +526,16 @@ export class CacheHandler implements NextCacheHandler { static async #configureCacheHandler(): Promise { if (CacheHandler.#mergedHandler) { + if (CacheHandler.#debug) { + console.info('[CacheHandler] %s', 'Using existing CacheHandler configuration.'); + } return; } + if (CacheHandler.#debug) { + console.info('[CacheHandler] %s', 'Creating new CacheHandler configuration.'); + } + const { serverDistDir, dev } = CacheHandler.#context; let buildId: string | undefined; @@ -449,6 +548,10 @@ export class CacheHandler implements NextCacheHandler { // Retrieve cache configuration by invoking the onCreation hook with the provided context const config = CacheHandler.#onCreationHook({ serverDistDir, dev, buildId }); + if (CacheHandler.#debug) { + console.info('[CacheHandler] %s', 'Cache configuration retrieved from onCreation hook.'); + } + // Wait for the cache configuration to be resolved const { handlers, ttl = {} } = await config; @@ -464,7 +567,10 @@ export class CacheHandler implements NextCacheHandler { // Notify the user that the cache is not used in development mode if (dev) { - console.warn('Next.js does not use the cache in development mode. Use production mode to enable caching.'); + console.warn( + '[CacheHandler] %s', + 'Next.js does not use the cache in development mode. Use production mode to enable caching.', + ); } try { @@ -484,13 +590,23 @@ export class CacheHandler implements NextCacheHandler { } } catch (_error) {} - const handlersList: Handler[] = handlers.filter((handler): handler is Handler => Boolean(handler)); + const handlersList: Handler[] = handlers.filter((handler) => !!handler); CacheHandler.#cacheListLength = handlersList.length; CacheHandler.#mergedHandler = { async get(key, meta) { - for await (const handler of handlersList) { + for (const handler of handlersList) { + if (CacheHandler.#debug) { + console.info( + '[CacheHandler] [handler: %s] [method: %s] [key: %s] %s', + handler.name, + 'get', + key, + 'Started retrieving value.', + ); + } + try { let cacheHandlerValue = await handler.get(key, meta); @@ -498,25 +614,42 @@ export class CacheHandler implements NextCacheHandler { cacheHandlerValue?.lifespan && cacheHandlerValue.lifespan.expireAt < Math.floor(Date.now() / 1000) ) { + if (CacheHandler.#debug) { + console.info( + '[CacheHandler] [handler: %s] [method: %s] [key: %s] %s', + handler.name, + 'get', + key, + 'Entry expired.', + ); + } + cacheHandlerValue = null; - await handler.delete?.(key).catch((deleteError) => { - if (CacheHandler.#debug) { - console.warn( - `Handler "${handler.name}" failed to delete value for key "${key}".`, - deleteError, - ); - } - }); + + // remove the entry from all handlers in background + removeEntryFromHandlers(handlersList, key, CacheHandler.#debug); } - if (CacheHandler.#debug) { - console.info(`get from "${handler.name}"`, key, Boolean(cacheHandlerValue)); + if (cacheHandlerValue && CacheHandler.#debug) { + console.info( + '[CacheHandler] [handler: %s] [method: %s] [key: %s] %s', + handler.name, + 'get', + key, + 'Successfully retrieved value.', + ); } return cacheHandlerValue; } catch (error) { if (CacheHandler.#debug) { - console.warn(`Handler "${handler.name}" failed to get value for key "${key}".`, error); + console.warn( + '[CacheHandler] [handler: %s] [method: %s] [key: %s] %s', + handler.name, + 'get', + key, + `Error: ${error}`, + ); } } } @@ -524,47 +657,80 @@ export class CacheHandler implements NextCacheHandler { return null; }, async set(key, cacheHandlerValue) { - await Promise.all( - handlersList.map((handler) => { - try { - return handler.set(key, { - lastModified: cacheHandlerValue.lastModified, - lifespan: cacheHandlerValue.lifespan, - tags: cacheHandlerValue.tags, - value: cacheHandlerValue.value, - age: cacheHandlerValue.age, - cacheState: cacheHandlerValue.cacheState, - }); - } catch (error) { - if (CacheHandler.#debug) { - console.warn(`Handler "${handler.name}" failed to set value for key "${key}".`, error); - } - } - - return Promise.resolve(); - }), + const operationsResults = await Promise.allSettled( + handlersList.map((handler) => handler.set(key, { ...cacheHandlerValue })), ); + + if (!CacheHandler.#debug) { + return; + } + + operationsResults.forEach((handlerResult, index) => { + if (handlerResult.status === 'rejected') { + console.warn( + '[CacheHandler] [handler: %s] [method: %s] [key: %s] %s', + handlersList[index]?.name ?? `unknown-${index}`, + 'set', + key, + `Error: ${handlerResult.reason}`, + ); + } else { + console.info( + '[CacheHandler] [handler: %s] [method: %s] [key: %s] %s', + handlersList[index]?.name ?? `unknown-${index}`, + 'set', + key, + 'Successfully set value.', + ); + } + }); }, async revalidateTag(tag) { - await Promise.all( - handlersList.map((handler) => { - try { - return handler.revalidateTag(tag); - } catch (error) { - if (CacheHandler.#debug) { - console.warn(`Handler "${handler.name}" failed to revalidate tag "${tag}".`, error); - } - } - - return Promise.resolve(); - }), + const operationsResults = await Promise.allSettled( + handlersList.map((handler) => handler.revalidateTag(tag)), ); + + if (!CacheHandler.#debug) { + return; + } + + operationsResults.forEach((handlerResult, index) => { + if (handlerResult.status === 'rejected') { + console.warn( + '[CacheHandler] [handler: %s] [method: %s] [tag: %s] %s', + handlersList[index]?.name ?? `unknown-${index}`, + 'revalidateTag', + tag, + `Error: ${handlerResult.reason}`, + ); + } else { + console.info( + '[CacheHandler] [handler: %s] [method: %s] [tag: %s] %s', + handlersList[index]?.name ?? `unknown-${index}`, + 'revalidateTag', + tag, + 'Successfully revalidated tag.', + ); + } + }); }, }; + + if (CacheHandler.#debug) { + console.info( + '[CacheHandler] [handlers: [%s]] %s', + handlersList.map((handler) => handler.name).join(', '), + 'Successfully created CacheHandler configuration.', + ); + } } private constructor(context: FileSystemCacheContext) { CacheHandler.#context = context; + + if (CacheHandler.#debug) { + console.info('[CacheHandler] %s', 'Instance created with provided context.'); + } } async get( @@ -573,7 +739,16 @@ export class CacheHandler implements NextCacheHandler { ): Promise { await CacheHandler.#configureCacheHandler(); - const { tags = [], kindHint, softTags = [] } = ctx; + const { softTags = [] } = ctx; + + if (CacheHandler.#debug) { + console.info( + '[CacheHandler] [method: %s] [key: %s] %s', + 'get', + cacheKey, + 'Started retrieving value in order.', + ); + } let cachedData: CacheHandlerValue | null | undefined = await CacheHandler.#mergedHandler.get(cacheKey, { implicitTags: softTags, @@ -586,10 +761,6 @@ export class CacheHandler implements NextCacheHandler { if (!cachedData && CacheHandler.#fallbackFalseRoutes.has(cacheKey)) { cachedData = await CacheHandler.#readPagesRouterPage(cacheKey); - if (CacheHandler.#debug) { - console.info('get from file system', cacheKey, tags, kindHint, 'got any value', Boolean(cachedData)); - } - // if we have a value from the file system, we should set it to the cache store if (cachedData) { await CacheHandler.#mergedHandler.set(cacheKey, cachedData); @@ -606,6 +777,15 @@ export class CacheHandler implements NextCacheHandler { ): Promise { await CacheHandler.#configureCacheHandler(); + if (CacheHandler.#debug) { + console.info( + '[CacheHandler] [method: %s] [key: %s] %s', + 'set', + cacheKey, + 'Started setting value in parallel.', + ); + } + const { revalidate, tags = [] } = ctx; const lastModified = Date.now(); @@ -649,20 +829,8 @@ export class CacheHandler implements NextCacheHandler { await CacheHandler.#mergedHandler.set(cacheKey, cacheHandlerValue); - if (CacheHandler.#debug) { - console.info('set to external cache store', cacheKey); - } - if (hasFallbackFalse && cacheHandlerValue.value?.kind === 'PAGE') { - const wasWritten = await CacheHandler.#writePagesRouterPage(cacheKey, cacheHandlerValue.value); - - if (CacheHandler.#debug && !wasWritten) { - console.warn('Unable to write to the file system', cacheKey); - } - - if (CacheHandler.#debug && wasWritten) { - console.info('set to file system', cacheKey); - } + await CacheHandler.#writePagesRouterPage(cacheKey, cacheHandlerValue.value); } } @@ -672,16 +840,17 @@ export class CacheHandler implements NextCacheHandler { const tags = typeof tag === 'string' ? [tag] : tag; if (CacheHandler.#debug) { - console.info('revalidateTag', tag); + console.info( + '[CacheHandler] [method: %s] [tags: [%s]] %s', + 'revalidateTag', + tags.join(', '), + 'Started revalidating tag in parallel.', + ); } for (const tag of tags) { await CacheHandler.#mergedHandler.revalidateTag(tag); } - - if (CacheHandler.#debug) { - console.info('updated external revalidated tags'); - } } resetRequestCache(): void { diff --git a/packages/cache-handler/src/functions/nesh-cache.ts b/packages/cache-handler/src/functions/nesh-cache.ts index 7d7b0d45..47819ea5 100644 --- a/packages/cache-handler/src/functions/nesh-cache.ts +++ b/packages/cache-handler/src/functions/nesh-cache.ts @@ -1,11 +1,9 @@ import assert from 'node:assert/strict'; +import { type IncrementalCacheEntry, NEXT_CACHE_IMPLICIT_TAG_ID, type Revalidate } from '@neshca/next-common'; import { - type IncrementalCacheEntry, - NEXT_CACHE_IMPLICIT_TAG_ID, - type Revalidate, type StaticGenerationStore, staticGenerationAsyncStorage, -} from '@neshca/next-common'; +} from 'next/dist/client/components/static-generation-async-storage.external.js'; import { TIME_ONE_YEAR } from '../constants'; function getDerivedTags(pathname: string): string[] { diff --git a/packages/cache-handler/src/handlers/experimental-redis-cluster.ts b/packages/cache-handler/src/handlers/experimental-redis-cluster.ts index 12bfcfbb..53cdce73 100644 --- a/packages/cache-handler/src/handlers/experimental-redis-cluster.ts +++ b/packages/cache-handler/src/handlers/experimental-redis-cluster.ts @@ -222,5 +222,8 @@ export default function createHandler({ await Promise.allSettled([...unlinkPromises, updateTagsOperation]); }, + async delete(key) { + await cluster.unlink(getTimeoutRedisCommandOptions(timeoutMs), key); + }, }; } diff --git a/packages/cache-handler/src/handlers/redis-stack.ts b/packages/cache-handler/src/handlers/redis-stack.ts index 0dc57705..116a959f 100644 --- a/packages/cache-handler/src/handlers/redis-stack.ts +++ b/packages/cache-handler/src/handlers/redis-stack.ts @@ -186,5 +186,8 @@ export default function createHandler({ await client.unlink(options, keysToDelete); }, + async delete(key) { + await client.unlink(getTimeoutRedisCommandOptions(timeoutMs), key); + }, }; } diff --git a/packages/cache-handler/src/handlers/redis-strings.ts b/packages/cache-handler/src/handlers/redis-strings.ts index 42c65bf4..42fd11b1 100644 --- a/packages/cache-handler/src/handlers/redis-strings.ts +++ b/packages/cache-handler/src/handlers/redis-strings.ts @@ -183,5 +183,8 @@ export default function createHandler({ await Promise.all([deleteKeysOperation, updateTagsOperation]); }, + async delete(key) { + await client.unlink(getTimeoutRedisCommandOptions(timeoutMs), key); + }, }; } diff --git a/packages/cache-handler/src/handlers/server.ts b/packages/cache-handler/src/handlers/server.ts index aa393dba..e341c3cc 100644 --- a/packages/cache-handler/src/handlers/server.ts +++ b/packages/cache-handler/src/handlers/server.ts @@ -107,5 +107,20 @@ export default function createHandler({ baseUrl, timeoutMs }: ServerCacheHandler throw new Error(`revalidateTag error: ${response.status}`); } }, + async delete(key) { + const url = new URL(`/${key}`, baseUrl); + + const response = await fetch(url, { + method: 'DELETE', + // @ts-expect-error -- act as an internal fetch call + next: { + internal: true, + }, + }); + + if (!response.ok) { + throw new Error(`delete error: ${response.status}`); + } + }, }; } diff --git a/packages/server/src/server.ts b/packages/server/src/server.ts index 9a8ed01c..05d1fc4d 100644 --- a/packages/server/src/server.ts +++ b/packages/server/src/server.ts @@ -90,6 +90,20 @@ server.get('/clear-cache', async (_request, reply): Promise => { await reply.code(200).send(true); }); +server.delete('/:key', async (request, reply): Promise => { + const { key } = request.params as { key?: string }; + + if (!key) { + await reply.code(200).send(false); + + return; + } + + lruCacheStore.delete(key); + + await reply.code(200).send(true); +}); + server .listen({ port, host }) .then((address) => { From fc56ac64cc867e3209fdf3a9553294b80d57ee6c Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 27 Aug 2024 18:17:56 +0300 Subject: [PATCH 356/458] Version Packages (#721) Co-authored-by: github-actions[bot] --- .changeset/popular-wolves-wash.md | 5 ----- .changeset/shiny-apples-refuse.md | 5 ----- packages/cache-handler/CHANGELOG.md | 6 ++++++ packages/cache-handler/package.json | 2 +- packages/server/CHANGELOG.md | 6 ++++++ packages/server/package.json | 2 +- 6 files changed, 14 insertions(+), 12 deletions(-) delete mode 100644 .changeset/popular-wolves-wash.md delete mode 100644 .changeset/shiny-apples-refuse.md diff --git a/.changeset/popular-wolves-wash.md b/.changeset/popular-wolves-wash.md deleted file mode 100644 index 0a369b81..00000000 --- a/.changeset/popular-wolves-wash.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@neshca/server': patch ---- - -Implement delete functionality. diff --git a/.changeset/shiny-apples-refuse.md b/.changeset/shiny-apples-refuse.md deleted file mode 100644 index 9db8cb76..00000000 --- a/.changeset/shiny-apples-refuse.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@neshca/cache-handler': patch ---- - -Fix delete functionality for all built-in Handlers and enhance debug logging. diff --git a/packages/cache-handler/CHANGELOG.md b/packages/cache-handler/CHANGELOG.md index 89f564ea..371f6e73 100644 --- a/packages/cache-handler/CHANGELOG.md +++ b/packages/cache-handler/CHANGELOG.md @@ -1,5 +1,11 @@ # @neshca/cache-handler +## 1.6.1 + +### Patch Changes + +- 435a4fe: Fix delete functionality for all built-in Handlers and enhance debug logging. + ## 1.6.0 ### Minor Changes diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index d783f773..2ae7e34c 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -1,6 +1,6 @@ { "name": "@neshca/cache-handler", - "version": "1.6.0", + "version": "1.6.1", "description": "Next.js self-hosting simplified.", "keywords": [ "cache", diff --git a/packages/server/CHANGELOG.md b/packages/server/CHANGELOG.md index b21bdfff..65523e89 100644 --- a/packages/server/CHANGELOG.md +++ b/packages/server/CHANGELOG.md @@ -1,5 +1,11 @@ # @neshca/server +## 1.1.2 + +### Patch Changes + +- 435a4fe: Implement delete functionality. + ## 1.1.1 ### Patch Changes diff --git a/packages/server/package.json b/packages/server/package.json index 120c859d..6010fbfb 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -1,6 +1,6 @@ { "name": "@neshca/server", - "version": "1.1.1", + "version": "1.1.2", "description": "Efficient and simple HTTP caching server with LRU eviction, tailored for seamless integration with `@neshca/cache-handler/server` Handler", "homepage": "https://github.com/caching-tools/next-shared-cache/tree/canary/packages/server", "bugs": "https://github.com/caching-tools/next-shared-cache/issues", From e0d1b4a77dd3f785760d83411c597ca44377a848 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 28 Aug 2024 00:43:26 +0300 Subject: [PATCH 357/458] Bump tsx from 4.18.0 to 4.19.0 (#723) Bumps [tsx](https://github.com/privatenumber/tsx) from 4.18.0 to 4.19.0. - [Release notes](https://github.com/privatenumber/tsx/releases) - [Changelog](https://github.com/privatenumber/tsx/blob/master/release.config.cjs) - [Commits](https://github.com/privatenumber/tsx/compare/v4.18.0...v4.19.0) --- updated-dependencies: - dependency-name: tsx dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- internal/backend/package.json | 2 +- package-lock.json | 20 ++++++++++---------- packages/cache-handler/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 6 files changed, 15 insertions(+), 15 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 2504dc31..00465ed9 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -38,7 +38,7 @@ "pm2": "5.4.2", "redis": "4.7.0", "rimraf": "6.0.1", - "tsx": "4.18.0", + "tsx": "4.19.0", "typescript": "5.5.4" } } diff --git a/internal/backend/package.json b/internal/backend/package.json index f9f1355b..229744ec 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -18,7 +18,7 @@ "@types/node": "22.5.0", "pino-pretty": "11.2.2", "rimraf": "6.0.1", - "tsx": "4.18.0", + "tsx": "4.19.0", "typescript": "5.5.4" } } diff --git a/package-lock.json b/package-lock.json index 7dc8b5e0..07f11e5e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -58,7 +58,7 @@ "pm2": "5.4.2", "redis": "4.7.0", "rimraf": "6.0.1", - "tsx": "4.18.0", + "tsx": "4.19.0", "typescript": "5.5.4" } }, @@ -455,7 +455,7 @@ "@types/node": "22.5.0", "pino-pretty": "11.2.2", "rimraf": "6.0.1", - "tsx": "4.18.0", + "tsx": "4.19.0", "typescript": "5.5.4" } }, @@ -15898,9 +15898,9 @@ "dev": true }, "node_modules/tsx": { - "version": "4.18.0", - "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.18.0.tgz", - "integrity": "sha512-a1jaKBSVQkd6yEc1/NI7G6yHFfefIcuf3QJST7ZEyn4oQnxLYrZR5uZAM8UrwUa3Ge8suiZHcNS1gNrEvmobqg==", + "version": "4.19.0", + "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.19.0.tgz", + "integrity": "sha512-bV30kM7bsLZKZIOCHeMNVMJ32/LuJzLVajkQI/qf92J2Qr08ueLQvW00PUZGiuLPP760UINwupgUj8qrSCPUKg==", "dev": true, "dependencies": { "esbuild": "~0.23.0", @@ -17013,7 +17013,7 @@ }, "packages/cache-handler": { "name": "@neshca/cache-handler", - "version": "1.6.0", + "version": "1.6.1", "license": "MIT", "dependencies": { "cluster-key-slot": "1.1.2", @@ -17026,7 +17026,7 @@ "@types/node": "22.5.0", "rimraf": "6.0.1", "tsup": "8.2.4", - "tsx": "4.18.0", + "tsx": "4.19.0", "typescript": "5.5.4" }, "peerDependencies": { @@ -17061,13 +17061,13 @@ "@types/node": "22.5.0", "rimraf": "6.0.1", "tsup": "8.2.4", - "tsx": "4.18.0", + "tsx": "4.19.0", "typescript": "5.5.4" } }, "packages/server": { "name": "@neshca/server", - "version": "1.1.1", + "version": "1.1.2", "license": "MIT", "dependencies": { "fastify": "4.28.1", @@ -17083,7 +17083,7 @@ "@types/node": "22.5.0", "rimraf": "6.0.1", "tsup": "8.2.4", - "tsx": "4.18.0", + "tsx": "4.19.0", "typescript": "5.5.4" } } diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 2ae7e34c..0956c84c 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -83,7 +83,7 @@ "@types/node": "22.5.0", "rimraf": "6.0.1", "tsup": "8.2.4", - "tsx": "4.18.0", + "tsx": "4.19.0", "typescript": "5.5.4" }, "peerDependencies": { diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index d2fe0e39..448d82d6 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -31,7 +31,7 @@ "@types/node": "22.5.0", "rimraf": "6.0.1", "tsup": "8.2.4", - "tsx": "4.18.0", + "tsx": "4.19.0", "typescript": "5.5.4" } } diff --git a/packages/server/package.json b/packages/server/package.json index 6010fbfb..cb5f1034 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -35,7 +35,7 @@ "@types/node": "22.5.0", "rimraf": "6.0.1", "tsup": "8.2.4", - "tsx": "4.18.0", + "tsx": "4.19.0", "typescript": "5.5.4" }, "distTags": [ From a9556d9d61266ca74ff767f765da5b51b455d72a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 30 Aug 2024 15:26:35 +0300 Subject: [PATCH 358/458] Bump @types/node from 22.5.0 to 22.5.1 in the definitely-typed group (#724) Bumps the definitely-typed group with 1 update: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node). Updates `@types/node` from 22.5.0 to 22.5.1 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) --- updated-dependencies: - dependency-name: "@types/node" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- internal/backend/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 24 ++++++++++----------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 10 files changed, 21 insertions(+), 21 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 00465ed9..06052183 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -28,7 +28,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "22.5.0", + "@types/node": "22.5.1", "@types/react": "18.3.4", "@types/react-dom": "18.3.0", "axios": "1.7.5", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 25ab93dc..6e851747 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -22,7 +22,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "22.5.0", + "@types/node": "22.5.1", "@types/react": "18.3.4", "@types/react-dom": "18.3.0", "eslint": "8.57.0", diff --git a/internal/backend/package.json b/internal/backend/package.json index 229744ec..96fe1b2b 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.5.0", + "@types/node": "22.5.1", "pino-pretty": "11.2.2", "rimraf": "6.0.1", "tsx": "4.19.0", diff --git a/internal/next-common/package.json b/internal/next-common/package.json index 904db423..bf5e09dd 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.5.0", + "@types/node": "22.5.1", "rimraf": "6.0.1", "typescript": "5.5.4" } diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index b24eda00..df33d11e 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -16,7 +16,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "22.5.0", + "@types/node": "22.5.1", "rimraf": "6.0.1", "typescript": "5.5.4" } diff --git a/package-lock.json b/package-lock.json index 07f11e5e..039f8c39 100644 --- a/package-lock.json +++ b/package-lock.json @@ -48,7 +48,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "22.5.0", + "@types/node": "22.5.1", "@types/react": "18.3.4", "@types/react-dom": "18.3.0", "axios": "1.7.5", @@ -126,7 +126,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "22.5.0", + "@types/node": "22.5.1", "@types/react": "18.3.4", "@types/react-dom": "18.3.0", "eslint": "8.57.0", @@ -452,7 +452,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.5.0", + "@types/node": "22.5.1", "pino-pretty": "11.2.2", "rimraf": "6.0.1", "tsx": "4.19.0", @@ -591,7 +591,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.5.0", + "@types/node": "22.5.1", "rimraf": "6.0.1", "typescript": "5.5.4" } @@ -657,7 +657,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "22.5.0", + "@types/node": "22.5.1", "rimraf": "6.0.1", "typescript": "5.5.4" } @@ -4088,9 +4088,9 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "22.5.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.0.tgz", - "integrity": "sha512-DkFrJOe+rfdHTqqMg0bSNlGlQ85hSoh2TPzZyhHsXnMtligRWpxUySiyw8FY14ITt24HVCiQPWxS3KO/QlGmWg==", + "version": "22.5.1", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.1.tgz", + "integrity": "sha512-KkHsxej0j9IW1KKOOAA/XBA0z08UFSrRQHErzEfA3Vgq57eXIMYboIlHJuYIfd+lwCQjtKqUu3UnmKbtUc9yRw==", "dependencies": { "undici-types": "~6.19.2" } @@ -17023,7 +17023,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.5.0", + "@types/node": "22.5.1", "rimraf": "6.0.1", "tsup": "8.2.4", "tsx": "4.19.0", @@ -17042,7 +17042,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.5.0", + "@types/node": "22.5.1", "rimraf": "6.0.1", "tsup": "8.2.4", "typescript": "5.5.4" @@ -17058,7 +17058,7 @@ "license": "MIT", "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.5.0", + "@types/node": "22.5.1", "rimraf": "6.0.1", "tsup": "8.2.4", "tsx": "4.19.0", @@ -17080,7 +17080,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.5.0", + "@types/node": "22.5.1", "rimraf": "6.0.1", "tsup": "8.2.4", "tsx": "4.19.0", diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 0956c84c..f49f076b 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -80,7 +80,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.5.0", + "@types/node": "22.5.1", "rimraf": "6.0.1", "tsup": "8.2.4", "tsx": "4.19.0", diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index 594a7b39..91c5f11b 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -25,7 +25,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.5.0", + "@types/node": "22.5.1", "rimraf": "6.0.1", "tsup": "8.2.4", "typescript": "5.5.4" diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 448d82d6..e8a7c3d9 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -28,7 +28,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.5.0", + "@types/node": "22.5.1", "rimraf": "6.0.1", "tsup": "8.2.4", "tsx": "4.19.0", diff --git a/packages/server/package.json b/packages/server/package.json index cb5f1034..797a5588 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -32,7 +32,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.5.0", + "@types/node": "22.5.1", "rimraf": "6.0.1", "tsup": "8.2.4", "tsx": "4.19.0", From 44b8a8befdef1216a56910a7aa1a11bcdfd436e2 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 30 Aug 2024 21:30:19 +0300 Subject: [PATCH 359/458] Bump the turbo group with 2 updates (#722) Bumps the turbo group with 2 updates: [turbo](https://github.com/vercel/turborepo) and [eslint-config-turbo](https://github.com/vercel/turborepo/tree/HEAD/packages/eslint-config-turbo). Updates `turbo` from 2.0.14 to 2.1.0 - [Release notes](https://github.com/vercel/turborepo/releases) - [Changelog](https://github.com/vercel/turborepo/blob/main/release.md) - [Commits](https://github.com/vercel/turborepo/compare/v2.0.14...v2.1.0) Updates `eslint-config-turbo` from 2.0.14 to 2.1.0 - [Release notes](https://github.com/vercel/turborepo/releases) - [Changelog](https://github.com/vercel/turborepo/blob/main/release.md) - [Commits](https://github.com/vercel/turborepo/commits/v2.1.0/packages/eslint-config-turbo) --- updated-dependencies: - dependency-name: turbo dependency-type: direct:development update-type: version-update:semver-minor dependency-group: turbo - dependency-name: eslint-config-turbo dependency-type: direct:development update-type: version-update:semver-minor dependency-group: turbo ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- internal/eslint-config/package.json | 2 +- package-lock.json | 72 ++++++++++++++--------------- package.json | 2 +- 3 files changed, 38 insertions(+), 38 deletions(-) diff --git a/internal/eslint-config/package.json b/internal/eslint-config/package.json index cd5d7569..8987ebbc 100644 --- a/internal/eslint-config/package.json +++ b/internal/eslint-config/package.json @@ -10,7 +10,7 @@ "@typescript-eslint/parser": "7.5.0", "@vercel/style-guide": "6.0.0", "eslint-config-prettier": "9.1.0", - "eslint-config-turbo": "2.0.14", + "eslint-config-turbo": "2.1.0", "eslint-plugin-only-warn": "1.1.0", "typescript": "5.5.4" } diff --git a/package-lock.json b/package-lock.json index 039f8c39..317524a3 100644 --- a/package-lock.json +++ b/package-lock.json @@ -26,7 +26,7 @@ "diffscribe": "*", "glob": "11.0.0", "prettier": "3.3.3", - "turbo": "2.0.14" + "turbo": "2.1.0" }, "engines": { "node": ">=20.9.0", @@ -467,7 +467,7 @@ "@typescript-eslint/parser": "7.5.0", "@vercel/style-guide": "6.0.0", "eslint-config-prettier": "9.1.0", - "eslint-config-turbo": "2.0.14", + "eslint-config-turbo": "2.1.0", "eslint-plugin-only-warn": "1.1.0", "typescript": "5.5.4" } @@ -6819,12 +6819,12 @@ } }, "node_modules/eslint-config-turbo": { - "version": "2.0.14", - "resolved": "https://registry.npmjs.org/eslint-config-turbo/-/eslint-config-turbo-2.0.14.tgz", - "integrity": "sha512-VkzAH/AR1/fjMsqzuurfWkEgyGVTTzfZQB1umDB8dMWzFhqo8p/2KEWbvRQLEvSFxjVfeJl5ErQAJ7h7DYglxg==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-config-turbo/-/eslint-config-turbo-2.1.0.tgz", + "integrity": "sha512-3SeE2OCWnkA/84adGJXABm++966LNGxRdXtXKBcplJdIe4PmERkov1z6Kzp2PrPKT13wGu/bwoLV5h1rm7v9ug==", "dev": true, "dependencies": { - "eslint-plugin-turbo": "2.0.14" + "eslint-plugin-turbo": "2.1.0" }, "peerDependencies": { "eslint": ">6.6.0" @@ -7509,9 +7509,9 @@ } }, "node_modules/eslint-plugin-turbo": { - "version": "2.0.14", - "resolved": "https://registry.npmjs.org/eslint-plugin-turbo/-/eslint-plugin-turbo-2.0.14.tgz", - "integrity": "sha512-E++MSAEeWZTU0FYARrfakMPq+7XeltqeY4JBDQTzbGEWG3kgYJPeYBMWsypcvBujVihQLlMu0S6ImnfV692mHg==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-turbo/-/eslint-plugin-turbo-2.1.0.tgz", + "integrity": "sha512-+CWVY29y7Qa+gvrKSzP+TOYrHAlNLCh/97K5VtDdnpH54h/JFmnd3U0aSG6WANe0HgAK8NHQfeWFDdRzfDqbKA==", "dev": true, "dependencies": { "dotenv": "16.0.3" @@ -15940,26 +15940,26 @@ } }, "node_modules/turbo": { - "version": "2.0.14", - "resolved": "https://registry.npmjs.org/turbo/-/turbo-2.0.14.tgz", - "integrity": "sha512-00JjdCMD/cpsjP0Izkjcm8Oaor5yUCfDwODtaLb+WyblyadkaDEisGhy3Dbd5az9n+5iLSPiUgf+WjPbns6MRg==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/turbo/-/turbo-2.1.0.tgz", + "integrity": "sha512-A969/LO/sPHKlapIarY2VVzqQ5JnnW2/1kksZlnMEpsRD6gwOELvVL+ozfMiO7av9RILt3UeN02L17efr6HUCA==", "dev": true, "bin": { "turbo": "bin/turbo" }, "optionalDependencies": { - "turbo-darwin-64": "2.0.14", - "turbo-darwin-arm64": "2.0.14", - "turbo-linux-64": "2.0.14", - "turbo-linux-arm64": "2.0.14", - "turbo-windows-64": "2.0.14", - "turbo-windows-arm64": "2.0.14" + "turbo-darwin-64": "2.1.0", + "turbo-darwin-arm64": "2.1.0", + "turbo-linux-64": "2.1.0", + "turbo-linux-arm64": "2.1.0", + "turbo-windows-64": "2.1.0", + "turbo-windows-arm64": "2.1.0" } }, "node_modules/turbo-darwin-64": { - "version": "2.0.14", - "resolved": "https://registry.npmjs.org/turbo-darwin-64/-/turbo-darwin-64-2.0.14.tgz", - "integrity": "sha512-kwfDmjNwlNfvtrvT29+ZBg5n1Wvxl891bFHchMJyzMoR0HOE9N1NSNdSZb9wG3e7sYNIu4uDkNk+VBEqJW0HzQ==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/turbo-darwin-64/-/turbo-darwin-64-2.1.0.tgz", + "integrity": "sha512-gHwpDk2gyB7qZ57gUUwDIS/IkglqEjjVtPZCTxmCRg28Tiwjui0azsLVKrnHP9UZHllozwbi28x8HXLXLEFF1w==", "cpu": [ "x64" ], @@ -15970,9 +15970,9 @@ ] }, "node_modules/turbo-darwin-arm64": { - "version": "2.0.14", - "resolved": "https://registry.npmjs.org/turbo-darwin-arm64/-/turbo-darwin-arm64-2.0.14.tgz", - "integrity": "sha512-m3LXYEshCx3wc4ZClM6gb01KYpFmtjQ9IBF3A7ofjb6ahux3xlYZJZ3uFCLAGHuvGLuJ3htfiPbwlDPTdknqqw==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/turbo-darwin-arm64/-/turbo-darwin-arm64-2.1.0.tgz", + "integrity": "sha512-GLaqGetNC6eS4eqXgsheLOHic/OcnGCGDi5boVf+TFZTXYH6YE15L4ugZha4xHXCr1KouCLILHh+f8EHEmWylg==", "cpu": [ "arm64" ], @@ -15983,9 +15983,9 @@ ] }, "node_modules/turbo-linux-64": { - "version": "2.0.14", - "resolved": "https://registry.npmjs.org/turbo-linux-64/-/turbo-linux-64-2.0.14.tgz", - "integrity": "sha512-7vBzCPdoTtR92SNn2JMgj1FlMmyonGmpMaQdgAB1OVYtuQ6NVGoh7/lODfaILqXjpvmFSVbpBIDrKOT6EvcprQ==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/turbo-linux-64/-/turbo-linux-64-2.1.0.tgz", + "integrity": "sha512-VzBOsj7JyGoZtiNZZ6brjnY7UehRnClluw7pwznuLPzClkqOOPMd2jOcgkWxnP/xW4NBmOoFANXXrtvKBD4f2w==", "cpu": [ "x64" ], @@ -15996,9 +15996,9 @@ ] }, "node_modules/turbo-linux-arm64": { - "version": "2.0.14", - "resolved": "https://registry.npmjs.org/turbo-linux-arm64/-/turbo-linux-arm64-2.0.14.tgz", - "integrity": "sha512-jwH+c0bfjpBf26K/tdEFatmnYyXwGROjbr6bZmNcL8R+IkGAc/cglL+OToqJnQZTgZvH7uDGbeSyUo7IsHyjuA==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/turbo-linux-arm64/-/turbo-linux-arm64-2.1.0.tgz", + "integrity": "sha512-St7svJnOO5g4F6R7Z32e10I/0M3e6qpNjEYybXwPNul9NSfnUXeky4WoKaALwqNhyJ7nYemoFpZ1d+i8hFQTHg==", "cpu": [ "arm64" ], @@ -16009,9 +16009,9 @@ ] }, "node_modules/turbo-windows-64": { - "version": "2.0.14", - "resolved": "https://registry.npmjs.org/turbo-windows-64/-/turbo-windows-64-2.0.14.tgz", - "integrity": "sha512-w9/XwkHSzvLjmioo6cl3S1yRfI6swxsV1j1eJwtl66JM4/pn0H2rBa855R0n7hZnmI6H5ywLt/nLt6Ae8RTDmw==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/turbo-windows-64/-/turbo-windows-64-2.1.0.tgz", + "integrity": "sha512-iSobNud2MrJ1SZ1upVPlErT8xexsr0MQtKapdfq6z0M0rBnrDGEq5bUCSScWyGu+O4+glB4br9xkTAkGFqaxqQ==", "cpu": [ "x64" ], @@ -16022,9 +16022,9 @@ ] }, "node_modules/turbo-windows-arm64": { - "version": "2.0.14", - "resolved": "https://registry.npmjs.org/turbo-windows-arm64/-/turbo-windows-arm64-2.0.14.tgz", - "integrity": "sha512-XaQlyYk+Rf4xS5XWCo8XCMIpssgGGy8blzLfolN6YBp4baElIWMlkLZHDbGyiFmCbNf9I9gJI64XGRG+LVyyjA==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/turbo-windows-arm64/-/turbo-windows-arm64-2.1.0.tgz", + "integrity": "sha512-d61jN4rjE5PnUfF66GKrKoj8S8Ql4FGXzFFzZz4kjsHpZZzCTtqlzPZBmd1byzGYhDPTorTqG3G1USohbdyohA==", "cpu": [ "arm64" ], diff --git a/package.json b/package.json index d5948eb6..499b581c 100644 --- a/package.json +++ b/package.json @@ -44,7 +44,7 @@ "diffscribe": "*", "glob": "11.0.0", "prettier": "3.3.3", - "turbo": "2.0.14" + "turbo": "2.1.0" }, "packageManager": "npm@10.7.0", "engines": { From 0c71f03bcb197bccf9b38fbcbc89f3e6925c4991 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 31 Aug 2024 21:39:23 +0300 Subject: [PATCH 360/458] Bump axios from 1.7.5 to 1.7.6 (#726) Bumps [axios](https://github.com/axios/axios) from 1.7.5 to 1.7.6. - [Release notes](https://github.com/axios/axios/releases) - [Changelog](https://github.com/axios/axios/blob/v1.x/CHANGELOG.md) - [Commits](https://github.com/axios/axios/compare/v1.7.5...v1.7.6) --- updated-dependencies: - dependency-name: axios dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- package-lock.json | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 06052183..b8bc1db8 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -31,7 +31,7 @@ "@types/node": "22.5.1", "@types/react": "18.3.4", "@types/react-dom": "18.3.0", - "axios": "1.7.5", + "axios": "1.7.6", "dotenv-cli": "7.4.2", "eslint": "8.57.0", "fastify": "4.28.1", diff --git a/package-lock.json b/package-lock.json index 317524a3..f807c94e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -51,7 +51,7 @@ "@types/node": "22.5.1", "@types/react": "18.3.4", "@types/react-dom": "18.3.0", - "axios": "1.7.5", + "axios": "1.7.6", "dotenv-cli": "7.4.2", "eslint": "8.57.0", "fastify": "4.28.1", @@ -4948,9 +4948,9 @@ } }, "node_modules/axios": { - "version": "1.7.5", - "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.5.tgz", - "integrity": "sha512-fZu86yCo+svH3uqJ/yTdQ0QHpQu5oL+/QE+QPSv6BZSkDAoky9vytxp7u5qk83OJFS3kEBcesWni9WTZAv3tSw==", + "version": "1.7.6", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.6.tgz", + "integrity": "sha512-Ekur6XDwhnJ5RgOCaxFnXyqlPALI3rVeukZMwOdfghW7/wGz784BYKiQq+QD8NPcr91KRo30KfHOchyijwWw7g==", "dev": true, "dependencies": { "follow-redirects": "^1.15.6", From 72deecee38a23c1737a4c1181d0f02fcccc40c6f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 2 Sep 2024 00:58:00 +0300 Subject: [PATCH 361/458] Bump @types/react from 18.3.4 to 18.3.5 in the definitely-typed group (#725) Bumps the definitely-typed group with 1 update: [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react). Updates `@types/react` from 18.3.4 to 18.3.5 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react) --- updated-dependencies: - dependency-name: "@types/react" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- package-lock.json | 10 +++++----- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index b8bc1db8..48397450 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -29,7 +29,7 @@ "@repo/typescript-config": "*", "@types/eslint": "8.56.7", "@types/node": "22.5.1", - "@types/react": "18.3.4", + "@types/react": "18.3.5", "@types/react-dom": "18.3.0", "axios": "1.7.6", "dotenv-cli": "7.4.2", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 6e851747..3346e682 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -23,7 +23,7 @@ "@repo/typescript-config": "*", "@types/eslint": "8.56.7", "@types/node": "22.5.1", - "@types/react": "18.3.4", + "@types/react": "18.3.5", "@types/react-dom": "18.3.0", "eslint": "8.57.0", "typescript": "5.5.4" diff --git a/package-lock.json b/package-lock.json index f807c94e..c7895bd3 100644 --- a/package-lock.json +++ b/package-lock.json @@ -49,7 +49,7 @@ "@repo/typescript-config": "*", "@types/eslint": "8.56.7", "@types/node": "22.5.1", - "@types/react": "18.3.4", + "@types/react": "18.3.5", "@types/react-dom": "18.3.0", "axios": "1.7.6", "dotenv-cli": "7.4.2", @@ -127,7 +127,7 @@ "@repo/typescript-config": "*", "@types/eslint": "8.56.7", "@types/node": "22.5.1", - "@types/react": "18.3.4", + "@types/react": "18.3.5", "@types/react-dom": "18.3.0", "eslint": "8.57.0", "typescript": "5.5.4" @@ -4122,9 +4122,9 @@ "integrity": "sha512-5zvhXYtRNRluoE/jAp4GVsSduVUzNWKkOZrCDBWYtE7biZywwdC2AcEzg+cSMLFRfVgeAFqpfNabiPjxFddV1Q==" }, "node_modules/@types/react": { - "version": "18.3.4", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.4.tgz", - "integrity": "sha512-J7W30FTdfCxDDjmfRM+/JqLHBIyl7xUIp9kwK637FGmY7+mkSFSe6L4jpZzhj5QMfLssSDP4/i75AKkrdC7/Jw==", + "version": "18.3.5", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.5.tgz", + "integrity": "sha512-WeqMfGJLGuLCqHGYRGHxnKrXcTitc6L/nBUWfWPcTarG3t9PsquqUMuVeXZeca+mglY4Vo5GZjCi0A3Or2lnxA==", "dependencies": { "@types/prop-types": "*", "csstype": "^3.0.2" From e342628d2edb8dec8fc09f0eeeb2e8bd4ca0ae7a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 3 Sep 2024 02:17:04 +0300 Subject: [PATCH 362/458] Bump axios from 1.7.6 to 1.7.7 (#730) Bumps [axios](https://github.com/axios/axios) from 1.7.6 to 1.7.7. - [Release notes](https://github.com/axios/axios/releases) - [Changelog](https://github.com/axios/axios/blob/v1.x/CHANGELOG.md) - [Commits](https://github.com/axios/axios/compare/v1.7.6...v1.7.7) --- updated-dependencies: - dependency-name: axios dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- package-lock.json | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 48397450..26cabfc2 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -31,7 +31,7 @@ "@types/node": "22.5.1", "@types/react": "18.3.5", "@types/react-dom": "18.3.0", - "axios": "1.7.6", + "axios": "1.7.7", "dotenv-cli": "7.4.2", "eslint": "8.57.0", "fastify": "4.28.1", diff --git a/package-lock.json b/package-lock.json index c7895bd3..c9063bfe 100644 --- a/package-lock.json +++ b/package-lock.json @@ -51,7 +51,7 @@ "@types/node": "22.5.1", "@types/react": "18.3.5", "@types/react-dom": "18.3.0", - "axios": "1.7.6", + "axios": "1.7.7", "dotenv-cli": "7.4.2", "eslint": "8.57.0", "fastify": "4.28.1", @@ -4948,9 +4948,9 @@ } }, "node_modules/axios": { - "version": "1.7.6", - "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.6.tgz", - "integrity": "sha512-Ekur6XDwhnJ5RgOCaxFnXyqlPALI3rVeukZMwOdfghW7/wGz784BYKiQq+QD8NPcr91KRo30KfHOchyijwWw7g==", + "version": "1.7.7", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.7.tgz", + "integrity": "sha512-S4kL7XrjgBmvdGut0sN3yJxqYzrDOnivkBiN0OFs6hLiUam3UPvswUo0kqGyhqUZGEOytHyumEdXsAkgCOUf3Q==", "dev": true, "dependencies": { "follow-redirects": "^1.15.6", From 1f530b015b9153c32622b1ac8d46fa14ff2e1009 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 3 Sep 2024 16:29:06 +0300 Subject: [PATCH 363/458] Bump @types/node from 22.5.1 to 22.5.2 in the definitely-typed group (#728) Bumps the definitely-typed group with 1 update: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node). Updates `@types/node` from 22.5.1 to 22.5.2 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) --- updated-dependencies: - dependency-name: "@types/node" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- internal/backend/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 24 ++++++++++----------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 10 files changed, 21 insertions(+), 21 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 26cabfc2..2c4c777a 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -28,7 +28,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "22.5.1", + "@types/node": "22.5.2", "@types/react": "18.3.5", "@types/react-dom": "18.3.0", "axios": "1.7.7", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 3346e682..54cb7341 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -22,7 +22,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "22.5.1", + "@types/node": "22.5.2", "@types/react": "18.3.5", "@types/react-dom": "18.3.0", "eslint": "8.57.0", diff --git a/internal/backend/package.json b/internal/backend/package.json index 96fe1b2b..79363d22 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.5.1", + "@types/node": "22.5.2", "pino-pretty": "11.2.2", "rimraf": "6.0.1", "tsx": "4.19.0", diff --git a/internal/next-common/package.json b/internal/next-common/package.json index bf5e09dd..fc39684b 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.5.1", + "@types/node": "22.5.2", "rimraf": "6.0.1", "typescript": "5.5.4" } diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index df33d11e..f939cb4d 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -16,7 +16,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "22.5.1", + "@types/node": "22.5.2", "rimraf": "6.0.1", "typescript": "5.5.4" } diff --git a/package-lock.json b/package-lock.json index c9063bfe..0955ebf8 100644 --- a/package-lock.json +++ b/package-lock.json @@ -48,7 +48,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "22.5.1", + "@types/node": "22.5.2", "@types/react": "18.3.5", "@types/react-dom": "18.3.0", "axios": "1.7.7", @@ -126,7 +126,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "22.5.1", + "@types/node": "22.5.2", "@types/react": "18.3.5", "@types/react-dom": "18.3.0", "eslint": "8.57.0", @@ -452,7 +452,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.5.1", + "@types/node": "22.5.2", "pino-pretty": "11.2.2", "rimraf": "6.0.1", "tsx": "4.19.0", @@ -591,7 +591,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.5.1", + "@types/node": "22.5.2", "rimraf": "6.0.1", "typescript": "5.5.4" } @@ -657,7 +657,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "22.5.1", + "@types/node": "22.5.2", "rimraf": "6.0.1", "typescript": "5.5.4" } @@ -4088,9 +4088,9 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "22.5.1", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.1.tgz", - "integrity": "sha512-KkHsxej0j9IW1KKOOAA/XBA0z08UFSrRQHErzEfA3Vgq57eXIMYboIlHJuYIfd+lwCQjtKqUu3UnmKbtUc9yRw==", + "version": "22.5.2", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.2.tgz", + "integrity": "sha512-acJsPTEqYqulZS/Yp/S3GgeE6GZ0qYODUR8aVr/DkhHQ8l9nd4j5x1/ZJy9/gHrRlFMqkO6i0I3E27Alu4jjPg==", "dependencies": { "undici-types": "~6.19.2" } @@ -17023,7 +17023,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.5.1", + "@types/node": "22.5.2", "rimraf": "6.0.1", "tsup": "8.2.4", "tsx": "4.19.0", @@ -17042,7 +17042,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.5.1", + "@types/node": "22.5.2", "rimraf": "6.0.1", "tsup": "8.2.4", "typescript": "5.5.4" @@ -17058,7 +17058,7 @@ "license": "MIT", "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.5.1", + "@types/node": "22.5.2", "rimraf": "6.0.1", "tsup": "8.2.4", "tsx": "4.19.0", @@ -17080,7 +17080,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.5.1", + "@types/node": "22.5.2", "rimraf": "6.0.1", "tsup": "8.2.4", "tsx": "4.19.0", diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index f49f076b..9a5779aa 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -80,7 +80,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.5.1", + "@types/node": "22.5.2", "rimraf": "6.0.1", "tsup": "8.2.4", "tsx": "4.19.0", diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index 91c5f11b..aae2e24f 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -25,7 +25,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.5.1", + "@types/node": "22.5.2", "rimraf": "6.0.1", "tsup": "8.2.4", "typescript": "5.5.4" diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index e8a7c3d9..bf97f8fa 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -28,7 +28,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.5.1", + "@types/node": "22.5.2", "rimraf": "6.0.1", "tsup": "8.2.4", "tsx": "4.19.0", diff --git a/packages/server/package.json b/packages/server/package.json index 797a5588..f36f539b 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -32,7 +32,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.5.1", + "@types/node": "22.5.2", "rimraf": "6.0.1", "tsup": "8.2.4", "tsx": "4.19.0", From 4334fc2d0d152b325ad0fd15e436cc8f3fd25191 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 3 Sep 2024 21:06:38 +0300 Subject: [PATCH 364/458] Bump the turbo group with 2 updates (#727) Bumps the turbo group with 2 updates: [turbo](https://github.com/vercel/turborepo) and [eslint-config-turbo](https://github.com/vercel/turborepo/tree/HEAD/packages/eslint-config-turbo). Updates `turbo` from 2.1.0 to 2.1.1 - [Release notes](https://github.com/vercel/turborepo/releases) - [Changelog](https://github.com/vercel/turborepo/blob/main/release.md) - [Commits](https://github.com/vercel/turborepo/compare/v2.1.0...v2.1.1) Updates `eslint-config-turbo` from 2.1.0 to 2.1.1 - [Release notes](https://github.com/vercel/turborepo/releases) - [Changelog](https://github.com/vercel/turborepo/blob/main/release.md) - [Commits](https://github.com/vercel/turborepo/commits/v2.1.1/packages/eslint-config-turbo) --- updated-dependencies: - dependency-name: turbo dependency-type: direct:development update-type: version-update:semver-patch dependency-group: turbo - dependency-name: eslint-config-turbo dependency-type: direct:development update-type: version-update:semver-patch dependency-group: turbo ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- internal/eslint-config/package.json | 2 +- package-lock.json | 72 ++++++++++++++--------------- package.json | 2 +- 3 files changed, 38 insertions(+), 38 deletions(-) diff --git a/internal/eslint-config/package.json b/internal/eslint-config/package.json index 8987ebbc..4b48b183 100644 --- a/internal/eslint-config/package.json +++ b/internal/eslint-config/package.json @@ -10,7 +10,7 @@ "@typescript-eslint/parser": "7.5.0", "@vercel/style-guide": "6.0.0", "eslint-config-prettier": "9.1.0", - "eslint-config-turbo": "2.1.0", + "eslint-config-turbo": "2.1.1", "eslint-plugin-only-warn": "1.1.0", "typescript": "5.5.4" } diff --git a/package-lock.json b/package-lock.json index 0955ebf8..9fdb7d58 100644 --- a/package-lock.json +++ b/package-lock.json @@ -26,7 +26,7 @@ "diffscribe": "*", "glob": "11.0.0", "prettier": "3.3.3", - "turbo": "2.1.0" + "turbo": "2.1.1" }, "engines": { "node": ">=20.9.0", @@ -467,7 +467,7 @@ "@typescript-eslint/parser": "7.5.0", "@vercel/style-guide": "6.0.0", "eslint-config-prettier": "9.1.0", - "eslint-config-turbo": "2.1.0", + "eslint-config-turbo": "2.1.1", "eslint-plugin-only-warn": "1.1.0", "typescript": "5.5.4" } @@ -6819,12 +6819,12 @@ } }, "node_modules/eslint-config-turbo": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-config-turbo/-/eslint-config-turbo-2.1.0.tgz", - "integrity": "sha512-3SeE2OCWnkA/84adGJXABm++966LNGxRdXtXKBcplJdIe4PmERkov1z6Kzp2PrPKT13wGu/bwoLV5h1rm7v9ug==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/eslint-config-turbo/-/eslint-config-turbo-2.1.1.tgz", + "integrity": "sha512-JJF8SZErmgKCGkt124WUmTt0sQ5YLvPo2YxDsfzn9avGJC7/BQIa+3FZoDb3zeYYsZx91pZ6htQAJaKK8NQQAg==", "dev": true, "dependencies": { - "eslint-plugin-turbo": "2.1.0" + "eslint-plugin-turbo": "2.1.1" }, "peerDependencies": { "eslint": ">6.6.0" @@ -7509,9 +7509,9 @@ } }, "node_modules/eslint-plugin-turbo": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-turbo/-/eslint-plugin-turbo-2.1.0.tgz", - "integrity": "sha512-+CWVY29y7Qa+gvrKSzP+TOYrHAlNLCh/97K5VtDdnpH54h/JFmnd3U0aSG6WANe0HgAK8NHQfeWFDdRzfDqbKA==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-turbo/-/eslint-plugin-turbo-2.1.1.tgz", + "integrity": "sha512-E/34kdQd0n3RP18+e0DSV0f3YTSCOojUh1p4X0Xrho2PBYmJ3umSnNo9FhkZt6UDACl+nBQcYTFkRHMz76lJdw==", "dev": true, "dependencies": { "dotenv": "16.0.3" @@ -15940,26 +15940,26 @@ } }, "node_modules/turbo": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/turbo/-/turbo-2.1.0.tgz", - "integrity": "sha512-A969/LO/sPHKlapIarY2VVzqQ5JnnW2/1kksZlnMEpsRD6gwOELvVL+ozfMiO7av9RILt3UeN02L17efr6HUCA==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/turbo/-/turbo-2.1.1.tgz", + "integrity": "sha512-u9gUDkmR9dFS8b5kAYqIETK4OnzsS4l2ragJ0+soSMHh6VEeNHjTfSjk1tKxCqLyziCrPogadxP680J+v6yGHw==", "dev": true, "bin": { "turbo": "bin/turbo" }, "optionalDependencies": { - "turbo-darwin-64": "2.1.0", - "turbo-darwin-arm64": "2.1.0", - "turbo-linux-64": "2.1.0", - "turbo-linux-arm64": "2.1.0", - "turbo-windows-64": "2.1.0", - "turbo-windows-arm64": "2.1.0" + "turbo-darwin-64": "2.1.1", + "turbo-darwin-arm64": "2.1.1", + "turbo-linux-64": "2.1.1", + "turbo-linux-arm64": "2.1.1", + "turbo-windows-64": "2.1.1", + "turbo-windows-arm64": "2.1.1" } }, "node_modules/turbo-darwin-64": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/turbo-darwin-64/-/turbo-darwin-64-2.1.0.tgz", - "integrity": "sha512-gHwpDk2gyB7qZ57gUUwDIS/IkglqEjjVtPZCTxmCRg28Tiwjui0azsLVKrnHP9UZHllozwbi28x8HXLXLEFF1w==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/turbo-darwin-64/-/turbo-darwin-64-2.1.1.tgz", + "integrity": "sha512-aYNuJpZlCoi0Htd79fl/2DywpewGKijdXeOfg9KzNuPVKzSMYlAXuAlNGh0MKjiOcyqxQGL7Mq9LFhwA0VpDpQ==", "cpu": [ "x64" ], @@ -15970,9 +15970,9 @@ ] }, "node_modules/turbo-darwin-arm64": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/turbo-darwin-arm64/-/turbo-darwin-arm64-2.1.0.tgz", - "integrity": "sha512-GLaqGetNC6eS4eqXgsheLOHic/OcnGCGDi5boVf+TFZTXYH6YE15L4ugZha4xHXCr1KouCLILHh+f8EHEmWylg==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/turbo-darwin-arm64/-/turbo-darwin-arm64-2.1.1.tgz", + "integrity": "sha512-tifJKD8yHY48rHXPMcM8o1jI/Jk2KCaXiNjTKvvy9Zsim61BZksNVLelIbrRoCGwAN6PUBZO2lGU5iL/TQJ5Pw==", "cpu": [ "arm64" ], @@ -15983,9 +15983,9 @@ ] }, "node_modules/turbo-linux-64": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/turbo-linux-64/-/turbo-linux-64-2.1.0.tgz", - "integrity": "sha512-VzBOsj7JyGoZtiNZZ6brjnY7UehRnClluw7pwznuLPzClkqOOPMd2jOcgkWxnP/xW4NBmOoFANXXrtvKBD4f2w==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/turbo-linux-64/-/turbo-linux-64-2.1.1.tgz", + "integrity": "sha512-Js6d/bSQe9DuV9c7ITXYpsU/ADzFHABdz1UIHa7Oqjj9VOEbFeA9WpAn0c+mdJrVD+IXJFbbDZUjN7VYssmtcg==", "cpu": [ "x64" ], @@ -15996,9 +15996,9 @@ ] }, "node_modules/turbo-linux-arm64": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/turbo-linux-arm64/-/turbo-linux-arm64-2.1.0.tgz", - "integrity": "sha512-St7svJnOO5g4F6R7Z32e10I/0M3e6qpNjEYybXwPNul9NSfnUXeky4WoKaALwqNhyJ7nYemoFpZ1d+i8hFQTHg==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/turbo-linux-arm64/-/turbo-linux-arm64-2.1.1.tgz", + "integrity": "sha512-LidzTCq0yvQ+N8w8Qub9FmhQ/mmEIeoqFi7DSupekEV2EjvE9jw/zYc9Pk67X+g7dHVfgOnvVzmrjChdxpFePw==", "cpu": [ "arm64" ], @@ -16009,9 +16009,9 @@ ] }, "node_modules/turbo-windows-64": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/turbo-windows-64/-/turbo-windows-64-2.1.0.tgz", - "integrity": "sha512-iSobNud2MrJ1SZ1upVPlErT8xexsr0MQtKapdfq6z0M0rBnrDGEq5bUCSScWyGu+O4+glB4br9xkTAkGFqaxqQ==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/turbo-windows-64/-/turbo-windows-64-2.1.1.tgz", + "integrity": "sha512-GKc9ZywKwy4xLDhwXd6H07yzl0TB52HjXMrFLyHGhCVnf/w0oq4sLJv2sjbvuarPjsyx4xnCBJ3m3oyL2XmFtA==", "cpu": [ "x64" ], @@ -16022,9 +16022,9 @@ ] }, "node_modules/turbo-windows-arm64": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/turbo-windows-arm64/-/turbo-windows-arm64-2.1.0.tgz", - "integrity": "sha512-d61jN4rjE5PnUfF66GKrKoj8S8Ql4FGXzFFzZz4kjsHpZZzCTtqlzPZBmd1byzGYhDPTorTqG3G1USohbdyohA==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/turbo-windows-arm64/-/turbo-windows-arm64-2.1.1.tgz", + "integrity": "sha512-oFKkMj11KKUv3xSK9/fhAEQTxLUp1Ol1EOktwc32+SFtEU0uls7kosAz0b+qe8k3pJGEMFdDPdqoEjyJidbxtQ==", "cpu": [ "arm64" ], diff --git a/package.json b/package.json index 499b581c..18337917 100644 --- a/package.json +++ b/package.json @@ -44,7 +44,7 @@ "diffscribe": "*", "glob": "11.0.0", "prettier": "3.3.3", - "turbo": "2.1.0" + "turbo": "2.1.1" }, "packageManager": "npm@10.7.0", "engines": { From af52d99359a311049523207bc17e5e7c8dea7458 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 4 Sep 2024 10:38:41 +0300 Subject: [PATCH 365/458] Bump pino from 9.3.2 to 9.4.0 in the pino group (#732) Bumps the pino group with 1 update: [pino](https://github.com/pinojs/pino). Updates `pino` from 9.3.2 to 9.4.0 - [Release notes](https://github.com/pinojs/pino/releases) - [Commits](https://github.com/pinojs/pino/compare/v9.3.2...v9.4.0) --- updated-dependencies: - dependency-name: pino dependency-type: direct:production update-type: version-update:semver-minor dependency-group: pino ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- internal/backend/package.json | 2 +- package-lock.json | 10 +++++----- packages/server/package.json | 2 +- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/internal/backend/package.json b/internal/backend/package.json index 79363d22..5f2bdf84 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -11,7 +11,7 @@ }, "dependencies": { "fastify": "4.28.1", - "pino": "9.3.2" + "pino": "9.4.0" }, "devDependencies": { "@repo/typescript-config": "*", diff --git a/package-lock.json b/package-lock.json index 9fdb7d58..7b19e6ee 100644 --- a/package-lock.json +++ b/package-lock.json @@ -448,7 +448,7 @@ "license": "MIT", "dependencies": { "fastify": "4.28.1", - "pino": "9.3.2" + "pino": "9.4.0" }, "devDependencies": { "@repo/typescript-config": "*", @@ -13043,9 +13043,9 @@ } }, "node_modules/pino": { - "version": "9.3.2", - "resolved": "https://registry.npmjs.org/pino/-/pino-9.3.2.tgz", - "integrity": "sha512-WtARBjgZ7LNEkrGWxMBN/jvlFiE17LTbBoH0konmBU684Kd0uIiDwBXlcTCW7iJnA6HfIKwUssS/2AC6cDEanw==", + "version": "9.4.0", + "resolved": "https://registry.npmjs.org/pino/-/pino-9.4.0.tgz", + "integrity": "sha512-nbkQb5+9YPhQRz/BeQmrWpEknAaqjpAqRK8NwJpmrX/JHu7JuZC5G1CeAwJDJfGes4h+YihC6in3Q2nGb+Y09w==", "dependencies": { "atomic-sleep": "^1.0.0", "fast-redact": "^3.1.1", @@ -17071,7 +17071,7 @@ "license": "MIT", "dependencies": { "fastify": "4.28.1", - "pino": "9.3.2" + "pino": "9.4.0" }, "bin": { "next-cache-server": "dist/server.js" diff --git a/packages/server/package.json b/packages/server/package.json index f36f539b..07afe08f 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -26,7 +26,7 @@ }, "dependencies": { "fastify": "4.28.1", - "pino": "9.3.2" + "pino": "9.4.0" }, "devDependencies": { "@neshca/next-common": "*", From b42d243ed932f4e77e132a6941eb2175b62e0b93 Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Wed, 4 Sep 2024 23:43:23 +0300 Subject: [PATCH 366/458] Use the same Next.js version in docs and cache-testing (#734) --- .github/dependabot.yml | 10 +- apps/cache-testing/package.json | 4 +- docs/cache-handler-docs/package.json | 4 +- internal/next-common/package.json | 2 +- package-lock.json | 6315 +++++++++++++------------- 5 files changed, 3172 insertions(+), 3163 deletions(-) diff --git a/.github/dependabot.yml b/.github/dependabot.yml index 443dd96c..89918d72 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -8,11 +8,11 @@ updates: - 'better-salmon' versioning-strategy: increase open-pull-requests-limit: 20 - ignore: - - dependency-name: 'next' - versions: ['14.x.x'] - - dependency-name: '@next/eslint-plugin-next' - versions: ['14.x.x'] + # ignore: + # - dependency-name: 'next' + # versions: ['14.x.x'] + # - dependency-name: '@next/eslint-plugin-next' + # versions: ['14.x.x'] groups: next-js: patterns: diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 2c4c777a..a54bf2af 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -17,13 +17,13 @@ "start": "dotenv -e .env.local -v SERVER_STARTED=1 node .next/standalone/apps/cache-testing/server.js" }, "dependencies": { - "next": "14.3.0-canary.44", + "next": "14.2.7", "react": "18.3.1", "react-dom": "18.3.1" }, "devDependencies": { "@neshca/cache-handler": "*", - "@next/eslint-plugin-next": "14.3.0-canary.44", + "@next/eslint-plugin-next": "14.2.7", "@playwright/test": "1.46.1", "@repo/eslint-config": "*", "@repo/typescript-config": "*", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 54cb7341..4bff85f5 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -11,14 +11,14 @@ "start:docs": "next start" }, "dependencies": { - "next": "14.2.3", + "next": "14.2.7", "nextra": "2.13.4", "nextra-theme-docs": "2.13.4", "react": "18.3.1", "react-dom": "18.3.1" }, "devDependencies": { - "@next/eslint-plugin-next": "14.2.3", + "@next/eslint-plugin-next": "14.2.7", "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", diff --git a/internal/next-common/package.json b/internal/next-common/package.json index fc39684b..d9b7020a 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -11,7 +11,7 @@ "clean": "rimraf ./.turbo ./node_modules" }, "dependencies": { - "next": "14.3.0-canary.44" + "next": "14.2.7" }, "devDependencies": { "@repo/typescript-config": "*", diff --git a/package-lock.json b/package-lock.json index 7b19e6ee..f8c35888 100644 --- a/package-lock.json +++ b/package-lock.json @@ -37,13 +37,13 @@ "version": "0.0.0", "license": "MIT", "dependencies": { - "next": "14.3.0-canary.44", + "next": "14.2.7", "react": "18.3.1", "react-dom": "18.3.1" }, "devDependencies": { "@neshca/cache-handler": "*", - "@next/eslint-plugin-next": "14.3.0-canary.44", + "@next/eslint-plugin-next": "14.2.7", "@playwright/test": "1.46.1", "@repo/eslint-config": "*", "@repo/typescript-config": "*", @@ -62,67 +62,27 @@ "typescript": "5.5.4" } }, - "apps/cache-testing/node_modules/next": { - "version": "14.3.0-canary.44", - "resolved": "https://registry.npmjs.org/next/-/next-14.3.0-canary.44.tgz", - "integrity": "sha512-iYJmuiARcldXjN27N0Yo8gWyy6vWl+FoUNcEaL2GGh3sA/rc4hcbZD89ZUXoVFsPAI7ze6sKM60Znct9RwCbKQ==", + "apps/cache-testing/node_modules/@types/node": { + "version": "22.5.2", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.2.tgz", + "integrity": "sha512-acJsPTEqYqulZS/Yp/S3GgeE6GZ0qYODUR8aVr/DkhHQ8l9nd4j5x1/ZJy9/gHrRlFMqkO6i0I3E27Alu4jjPg==", + "dev": true, + "license": "MIT", "dependencies": { - "@next/env": "14.3.0-canary.44", - "@swc/helpers": "0.5.11", - "busboy": "1.6.0", - "caniuse-lite": "^1.0.30001579", - "graceful-fs": "^4.2.11", - "postcss": "8.4.31", - "styled-jsx": "5.1.1" - }, - "bin": { - "next": "dist/bin/next" - }, - "engines": { - "node": ">=18.17.0" - }, - "optionalDependencies": { - "@next/swc-darwin-arm64": "14.3.0-canary.44", - "@next/swc-darwin-x64": "14.3.0-canary.44", - "@next/swc-linux-arm64-gnu": "14.3.0-canary.44", - "@next/swc-linux-arm64-musl": "14.3.0-canary.44", - "@next/swc-linux-x64-gnu": "14.3.0-canary.44", - "@next/swc-linux-x64-musl": "14.3.0-canary.44", - "@next/swc-win32-arm64-msvc": "14.3.0-canary.44", - "@next/swc-win32-ia32-msvc": "14.3.0-canary.44", - "@next/swc-win32-x64-msvc": "14.3.0-canary.44", - "sharp": "^0.33.3" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.1.0", - "@playwright/test": "^1.41.2", - "react": "^18.2.0", - "react-dom": "^18.2.0", - "sass": "^1.3.0" - }, - "peerDependenciesMeta": { - "@opentelemetry/api": { - "optional": true - }, - "@playwright/test": { - "optional": true - }, - "sass": { - "optional": true - } + "undici-types": "~6.19.2" } }, "docs/cache-handler-docs": { "version": "0.1.0", "dependencies": { - "next": "14.2.3", + "next": "14.2.7", "nextra": "2.13.4", "nextra-theme-docs": "2.13.4", "react": "18.3.1", "react-dom": "18.3.1" }, "devDependencies": { - "@next/eslint-plugin-next": "14.2.3", + "@next/eslint-plugin-next": "14.2.7", "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", @@ -133,314 +93,14 @@ "typescript": "5.5.4" } }, - "docs/cache-handler-docs/node_modules/@next/env": { - "version": "14.2.3", - "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.3.tgz", - "integrity": "sha512-W7fd7IbkfmeeY2gXrzJYDx8D2lWKbVoTIj1o1ScPHNzvp30s1AuoEFSdr39bC5sjxJaxTtq3OTCZboNp0lNWHA==" - }, - "docs/cache-handler-docs/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==", - "dev": true, - "dependencies": { - "glob": "10.3.10" - } - }, - "docs/cache-handler-docs/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==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">= 10" - } - }, - "docs/cache-handler-docs/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==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">= 10" - } - }, - "docs/cache-handler-docs/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==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "docs/cache-handler-docs/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==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "docs/cache-handler-docs/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==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "docs/cache-handler-docs/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==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "docs/cache-handler-docs/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==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 10" - } - }, - "docs/cache-handler-docs/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==", - "cpu": [ - "ia32" - ], - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 10" - } - }, - "docs/cache-handler-docs/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==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 10" - } - }, - "docs/cache-handler-docs/node_modules/@swc/helpers": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.5.tgz", - "integrity": "sha512-KGYxvIOXcceOAbEk4bi/dVLEK9z8sZ0uBB3Il5b1rhfClSpcX0yfRO0KmTkqR2cnQDymwLB+25ZyMzICg/cm/A==", - "dependencies": { - "@swc/counter": "^0.1.3", - "tslib": "^2.4.0" - } - }, - "docs/cache-handler-docs/node_modules/glob": { - "version": "10.3.10", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", - "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", + "docs/cache-handler-docs/node_modules/@types/node": { + "version": "22.5.2", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.2.tgz", + "integrity": "sha512-acJsPTEqYqulZS/Yp/S3GgeE6GZ0qYODUR8aVr/DkhHQ8l9nd4j5x1/ZJy9/gHrRlFMqkO6i0I3E27Alu4jjPg==", "dev": true, + "license": "MIT", "dependencies": { - "foreground-child": "^3.1.0", - "jackspeak": "^2.3.5", - "minimatch": "^9.0.1", - "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", - "path-scurry": "^1.10.1" - }, - "bin": { - "glob": "dist/esm/bin.mjs" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "docs/cache-handler-docs/node_modules/next": { - "version": "14.2.3", - "resolved": "https://registry.npmjs.org/next/-/next-14.2.3.tgz", - "integrity": "sha512-dowFkFTR8v79NPJO4QsBUtxv0g9BrS/phluVpMAt2ku7H+cbcBJlopXjkWlwxrk/xGqMemr7JkGPGemPrLLX7A==", - "dependencies": { - "@next/env": "14.2.3", - "@swc/helpers": "0.5.5", - "busboy": "1.6.0", - "caniuse-lite": "^1.0.30001579", - "graceful-fs": "^4.2.11", - "postcss": "8.4.31", - "styled-jsx": "5.1.1" - }, - "bin": { - "next": "dist/bin/next" - }, - "engines": { - "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" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.1.0", - "@playwright/test": "^1.41.2", - "react": "^18.2.0", - "react-dom": "^18.2.0", - "sass": "^1.3.0" - }, - "peerDependenciesMeta": { - "@opentelemetry/api": { - "optional": true - }, - "@playwright/test": { - "optional": true - }, - "sass": { - "optional": true - } - } - }, - "docs/cache-handler-docs/node_modules/nextra": { - "version": "2.13.4", - "resolved": "https://registry.npmjs.org/nextra/-/nextra-2.13.4.tgz", - "integrity": "sha512-7of2rSBxuUa3+lbMmZwG9cqgftcoNOVQLTT6Rxf3EhBR9t1EI7b43dted8YoqSNaigdE3j1CoyNkX8N/ZzlEpw==", - "dependencies": { - "@headlessui/react": "^1.7.17", - "@mdx-js/mdx": "^2.3.0", - "@mdx-js/react": "^2.3.0", - "@napi-rs/simple-git": "^0.1.9", - "@theguild/remark-mermaid": "^0.0.5", - "@theguild/remark-npm2yarn": "^0.2.0", - "clsx": "^2.0.0", - "github-slugger": "^2.0.0", - "graceful-fs": "^4.2.11", - "gray-matter": "^4.0.3", - "katex": "^0.16.9", - "lodash.get": "^4.4.2", - "next-mdx-remote": "^4.2.1", - "p-limit": "^3.1.0", - "rehype-katex": "^7.0.0", - "rehype-pretty-code": "0.9.11", - "rehype-raw": "^7.0.0", - "remark-gfm": "^3.0.1", - "remark-math": "^5.1.1", - "remark-reading-time": "^2.0.1", - "shiki": "^0.14.3", - "slash": "^3.0.0", - "title": "^3.5.3", - "unist-util-remove": "^4.0.0", - "unist-util-visit": "^5.0.0", - "zod": "^3.22.3" - }, - "engines": { - "node": ">=16" - }, - "peerDependencies": { - "next": ">=9.5.3", - "react": ">=16.13.1", - "react-dom": ">=16.13.1" - } - }, - "docs/cache-handler-docs/node_modules/nextra-theme-docs": { - "version": "2.13.4", - "resolved": "https://registry.npmjs.org/nextra-theme-docs/-/nextra-theme-docs-2.13.4.tgz", - "integrity": "sha512-2XOoMfwBCTYBt8ds4ZHftt9Wyf2XsykiNo02eir/XEYB+sGeUoE77kzqfidjEOKCSzOHYbK9BDMcg2+B/2vYRw==", - "dependencies": { - "@headlessui/react": "^1.7.17", - "@popperjs/core": "^2.11.8", - "clsx": "^2.0.0", - "escape-string-regexp": "^5.0.0", - "flexsearch": "^0.7.31", - "focus-visible": "^5.2.0", - "git-url-parse": "^13.1.0", - "intersection-observer": "^0.12.2", - "match-sorter": "^6.3.1", - "next-seo": "^6.0.0", - "next-themes": "^0.2.1", - "scroll-into-view-if-needed": "^3.1.0", - "zod": "^3.22.3" - }, - "peerDependencies": { - "next": ">=9.5.3", - "nextra": "2.13.4", - "react": ">=16.13.1", - "react-dom": ">=16.13.1" - } - }, - "docs/cache-handler-docs/node_modules/p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "dependencies": { - "yocto-queue": "^0.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "undici-types": "~6.19.2" } }, "internal/backend": { @@ -452,134 +112,34 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.5.2", - "pino-pretty": "11.2.2", - "rimraf": "6.0.1", - "tsx": "4.19.0", - "typescript": "5.5.4" - } - }, - "internal/eslint-config": { - "name": "@repo/eslint-config", - "version": "0.0.0", - "devDependencies": { - "@typescript-eslint/eslint-plugin": "7.5.0", - "@typescript-eslint/parser": "7.5.0", - "@vercel/style-guide": "6.0.0", - "eslint-config-prettier": "9.1.0", - "eslint-config-turbo": "2.1.1", - "eslint-plugin-only-warn": "1.1.0", - "typescript": "5.5.4" - } - }, - "internal/eslint-config/node_modules/@next/eslint-plugin-next": { - "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, - "optional": true, - "peer": true, - "dependencies": { - "glob": "10.3.10" - } - }, - "internal/eslint-config/node_modules/@vercel/style-guide": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/@vercel/style-guide/-/style-guide-6.0.0.tgz", - "integrity": "sha512-tu0wFINGz91EPwaT5VjSqUwbvCY9pvLach7SPG4XyfJKPU9Vku2TFa6+AyzJ4oroGbo9fK+TQhIFHrnFl0nCdg==", - "dev": true, - "dependencies": { - "@babel/core": "^7.24.0", - "@babel/eslint-parser": "^7.23.10", - "@rushstack/eslint-patch": "^1.7.2", - "@typescript-eslint/eslint-plugin": "^7.1.1", - "@typescript-eslint/parser": "^7.1.1", - "eslint-config-prettier": "^9.1.0", - "eslint-import-resolver-alias": "^1.1.2", - "eslint-import-resolver-typescript": "^3.6.1", - "eslint-plugin-eslint-comments": "^3.2.0", - "eslint-plugin-import": "^2.29.1", - "eslint-plugin-jest": "^27.9.0", - "eslint-plugin-jsx-a11y": "^6.8.0", - "eslint-plugin-playwright": "^1.5.2", - "eslint-plugin-react": "^7.34.0", - "eslint-plugin-react-hooks": "^4.6.0", - "eslint-plugin-testing-library": "^6.2.0", - "eslint-plugin-tsdoc": "^0.2.17", - "eslint-plugin-unicorn": "^51.0.1", - "eslint-plugin-vitest": "^0.3.22", - "prettier-plugin-packagejson": "^2.4.12" - }, - "engines": { - "node": ">=18.18" - }, - "peerDependencies": { - "@next/eslint-plugin-next": ">=12.3.0 <15.0.0-0", - "eslint": ">=8.48.0 <9", - "prettier": ">=3.0.0 <4", - "typescript": ">=4.8.0 <6" - }, - "peerDependenciesMeta": { - "@next/eslint-plugin-next": { - "optional": true - }, - "eslint": { - "optional": true - }, - "prettier": { - "optional": true - }, - "typescript": { - "optional": true - } - } - }, - "internal/eslint-config/node_modules/eslint-plugin-vitest": { - "version": "0.3.26", - "resolved": "https://registry.npmjs.org/eslint-plugin-vitest/-/eslint-plugin-vitest-0.3.26.tgz", - "integrity": "sha512-oxe5JSPgRjco8caVLTh7Ti8PxpwJdhSV0hTQAmkFcNcmy/9DnqLB/oNVRA11RmVRP//2+jIIT6JuBEcpW3obYg==", - "dev": true, - "dependencies": { - "@typescript-eslint/utils": "^7.1.1" - }, - "engines": { - "node": "^18.0.0 || >= 20.0.0" - }, - "peerDependencies": { - "eslint": ">=8.0.0", - "vitest": "*" - }, - "peerDependenciesMeta": { - "@typescript-eslint/eslint-plugin": { - "optional": true - }, - "vitest": { - "optional": true - } - } - }, - "internal/eslint-config/node_modules/glob": { - "version": "10.3.10", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", - "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", - "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "foreground-child": "^3.1.0", - "jackspeak": "^2.3.5", - "minimatch": "^9.0.1", - "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", - "path-scurry": "^1.10.1" - }, - "bin": { - "glob": "dist/esm/bin.mjs" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "@types/node": "22.5.2", + "pino-pretty": "11.2.2", + "rimraf": "6.0.1", + "tsx": "4.19.0", + "typescript": "5.5.4" + } + }, + "internal/backend/node_modules/@types/node": { + "version": "22.5.2", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.2.tgz", + "integrity": "sha512-acJsPTEqYqulZS/Yp/S3GgeE6GZ0qYODUR8aVr/DkhHQ8l9nd4j5x1/ZJy9/gHrRlFMqkO6i0I3E27Alu4jjPg==", + "dev": true, + "license": "MIT", + "dependencies": { + "undici-types": "~6.19.2" + } + }, + "internal/eslint-config": { + "name": "@repo/eslint-config", + "version": "0.0.0", + "devDependencies": { + "@typescript-eslint/eslint-plugin": "7.5.0", + "@typescript-eslint/parser": "7.5.0", + "@vercel/style-guide": "6.0.0", + "eslint-config-prettier": "9.1.0", + "eslint-config-turbo": "2.1.1", + "eslint-plugin-only-warn": "1.1.0", + "typescript": "5.5.4" } }, "internal/next-common": { @@ -587,7 +147,7 @@ "version": "0.0.0", "license": "MIT", "dependencies": { - "next": "14.3.0-canary.44" + "next": "14.2.7" }, "devDependencies": { "@repo/typescript-config": "*", @@ -596,55 +156,14 @@ "typescript": "5.5.4" } }, - "internal/next-common/node_modules/next": { - "version": "14.3.0-canary.44", - "resolved": "https://registry.npmjs.org/next/-/next-14.3.0-canary.44.tgz", - "integrity": "sha512-iYJmuiARcldXjN27N0Yo8gWyy6vWl+FoUNcEaL2GGh3sA/rc4hcbZD89ZUXoVFsPAI7ze6sKM60Znct9RwCbKQ==", + "internal/next-common/node_modules/@types/node": { + "version": "22.5.2", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.2.tgz", + "integrity": "sha512-acJsPTEqYqulZS/Yp/S3GgeE6GZ0qYODUR8aVr/DkhHQ8l9nd4j5x1/ZJy9/gHrRlFMqkO6i0I3E27Alu4jjPg==", + "dev": true, "license": "MIT", "dependencies": { - "@next/env": "14.3.0-canary.44", - "@swc/helpers": "0.5.11", - "busboy": "1.6.0", - "caniuse-lite": "^1.0.30001579", - "graceful-fs": "^4.2.11", - "postcss": "8.4.31", - "styled-jsx": "5.1.1" - }, - "bin": { - "next": "dist/bin/next" - }, - "engines": { - "node": ">=18.17.0" - }, - "optionalDependencies": { - "@next/swc-darwin-arm64": "14.3.0-canary.44", - "@next/swc-darwin-x64": "14.3.0-canary.44", - "@next/swc-linux-arm64-gnu": "14.3.0-canary.44", - "@next/swc-linux-arm64-musl": "14.3.0-canary.44", - "@next/swc-linux-x64-gnu": "14.3.0-canary.44", - "@next/swc-linux-x64-musl": "14.3.0-canary.44", - "@next/swc-win32-arm64-msvc": "14.3.0-canary.44", - "@next/swc-win32-ia32-msvc": "14.3.0-canary.44", - "@next/swc-win32-x64-msvc": "14.3.0-canary.44", - "sharp": "^0.33.3" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.1.0", - "@playwright/test": "^1.41.2", - "react": "^18.2.0", - "react-dom": "^18.2.0", - "sass": "^1.3.0" - }, - "peerDependenciesMeta": { - "@opentelemetry/api": { - "optional": true - }, - "@playwright/test": { - "optional": true - }, - "sass": { - "optional": true - } + "undici-types": "~6.19.2" } }, "internal/next-lru-cache": { @@ -662,6 +181,16 @@ "typescript": "5.5.4" } }, + "internal/next-lru-cache/node_modules/@types/node": { + "version": "22.5.2", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.2.tgz", + "integrity": "sha512-acJsPTEqYqulZS/Yp/S3GgeE6GZ0qYODUR8aVr/DkhHQ8l9nd4j5x1/ZJy9/gHrRlFMqkO6i0I3E27Alu4jjPg==", + "dev": true, + "license": "MIT", + "dependencies": { + "undici-types": "~6.19.2" + } + }, "internal/prettier-config": { "name": "@repo/prettier-config", "version": "0.0.0", @@ -670,116 +199,6 @@ "@vercel/style-guide": "6.0.0" } }, - "internal/prettier-config/node_modules/@next/eslint-plugin-next": { - "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, - "optional": true, - "peer": true, - "dependencies": { - "glob": "10.3.10" - } - }, - "internal/prettier-config/node_modules/@vercel/style-guide": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/@vercel/style-guide/-/style-guide-6.0.0.tgz", - "integrity": "sha512-tu0wFINGz91EPwaT5VjSqUwbvCY9pvLach7SPG4XyfJKPU9Vku2TFa6+AyzJ4oroGbo9fK+TQhIFHrnFl0nCdg==", - "dev": true, - "dependencies": { - "@babel/core": "^7.24.0", - "@babel/eslint-parser": "^7.23.10", - "@rushstack/eslint-patch": "^1.7.2", - "@typescript-eslint/eslint-plugin": "^7.1.1", - "@typescript-eslint/parser": "^7.1.1", - "eslint-config-prettier": "^9.1.0", - "eslint-import-resolver-alias": "^1.1.2", - "eslint-import-resolver-typescript": "^3.6.1", - "eslint-plugin-eslint-comments": "^3.2.0", - "eslint-plugin-import": "^2.29.1", - "eslint-plugin-jest": "^27.9.0", - "eslint-plugin-jsx-a11y": "^6.8.0", - "eslint-plugin-playwright": "^1.5.2", - "eslint-plugin-react": "^7.34.0", - "eslint-plugin-react-hooks": "^4.6.0", - "eslint-plugin-testing-library": "^6.2.0", - "eslint-plugin-tsdoc": "^0.2.17", - "eslint-plugin-unicorn": "^51.0.1", - "eslint-plugin-vitest": "^0.3.22", - "prettier-plugin-packagejson": "^2.4.12" - }, - "engines": { - "node": ">=18.18" - }, - "peerDependencies": { - "@next/eslint-plugin-next": ">=12.3.0 <15.0.0-0", - "eslint": ">=8.48.0 <9", - "prettier": ">=3.0.0 <4", - "typescript": ">=4.8.0 <6" - }, - "peerDependenciesMeta": { - "@next/eslint-plugin-next": { - "optional": true - }, - "eslint": { - "optional": true - }, - "prettier": { - "optional": true - }, - "typescript": { - "optional": true - } - } - }, - "internal/prettier-config/node_modules/eslint-plugin-vitest": { - "version": "0.3.26", - "resolved": "https://registry.npmjs.org/eslint-plugin-vitest/-/eslint-plugin-vitest-0.3.26.tgz", - "integrity": "sha512-oxe5JSPgRjco8caVLTh7Ti8PxpwJdhSV0hTQAmkFcNcmy/9DnqLB/oNVRA11RmVRP//2+jIIT6JuBEcpW3obYg==", - "dev": true, - "dependencies": { - "@typescript-eslint/utils": "^7.1.1" - }, - "engines": { - "node": "^18.0.0 || >= 20.0.0" - }, - "peerDependencies": { - "eslint": ">=8.0.0", - "vitest": "*" - }, - "peerDependenciesMeta": { - "@typescript-eslint/eslint-plugin": { - "optional": true - }, - "vitest": { - "optional": true - } - } - }, - "internal/prettier-config/node_modules/glob": { - "version": "10.3.10", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", - "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", - "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "foreground-child": "^3.1.0", - "jackspeak": "^2.3.5", - "minimatch": "^9.0.1", - "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", - "path-scurry": "^1.10.1" - }, - "bin": { - "glob": "dist/esm/bin.mjs" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, "internal/typescript-config": { "name": "@repo/typescript-config", "version": "0.0.0", @@ -790,16 +209,18 @@ "resolved": "https://registry.npmjs.org/@actions/core/-/core-1.10.1.tgz", "integrity": "sha512-3lBR9EDAY+iYIpTnTIXmWcNbX3T2kCkAEQGIQx4NVQ0575nk2k3GRZDTPQG+vVtS2izSLmINlxXf0uLtnrTP+g==", "dev": true, + "license": "MIT", "dependencies": { "@actions/http-client": "^2.0.1", "uuid": "^8.3.2" } }, "node_modules/@actions/http-client": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/@actions/http-client/-/http-client-2.2.1.tgz", - "integrity": "sha512-KhC/cZsq7f8I4LfZSJKgCvEwfkE8o1538VoBeoGzokVLLnbFDEAdFD3UhoMklxo2un9NJVBdANOresx7vTHlHw==", + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/@actions/http-client/-/http-client-2.2.3.tgz", + "integrity": "sha512-mx8hyJi/hjFvbPokCg4uRd4ZX78t+YyRPtnKWwIl+RzNaVuFpQHfmlGVfsKEJN8LwTCvL+DfVgAM04XaHkm6bA==", "dev": true, + "license": "MIT", "dependencies": { "tunnel": "^0.0.6", "undici": "^5.25.4" @@ -810,6 +231,7 @@ "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.3.0.tgz", "integrity": "sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==", "dev": true, + "license": "Apache-2.0", "dependencies": { "@jridgewell/gen-mapping": "^0.3.5", "@jridgewell/trace-mapping": "^0.3.24" @@ -823,6 +245,7 @@ "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.7.tgz", "integrity": "sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA==", "dev": true, + "license": "MIT", "dependencies": { "@babel/highlight": "^7.24.7", "picocolors": "^1.0.0" @@ -832,30 +255,32 @@ } }, "node_modules/@babel/compat-data": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.24.7.tgz", - "integrity": "sha512-qJzAIcv03PyaWqxRgO4mSU3lihncDT296vnyuE2O8uA4w3UHWI4S3hgeZd1L8W1Bft40w9JxJ2b412iDUFFRhw==", + "version": "7.25.4", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.25.4.tgz", + "integrity": "sha512-+LGRog6RAsCJrrrg/IO6LGmpphNe5DiK30dGjCoxxeGv49B10/3XYGxPsAwrDlMFcFEvdAUavDT8r9k/hSyQqQ==", "dev": true, + "license": "MIT", "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/core": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.7.tgz", - "integrity": "sha512-nykK+LEK86ahTkX/3TgauT0ikKoNCfKHEaZYTUVupJdTLzGNvrblu4u6fa7DhZONAltdf8e662t/abY8idrd/g==", + "version": "7.25.2", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.25.2.tgz", + "integrity": "sha512-BBt3opiCOxUr9euZ5/ro/Xv8/V7yJ5bjYMqG/C1YAo8MIKAnumZalCN+msbci3Pigy4lIQfPUpfMM27HMGaYEA==", "dev": true, + "license": "MIT", "dependencies": { "@ampproject/remapping": "^2.2.0", "@babel/code-frame": "^7.24.7", - "@babel/generator": "^7.24.7", - "@babel/helper-compilation-targets": "^7.24.7", - "@babel/helper-module-transforms": "^7.24.7", - "@babel/helpers": "^7.24.7", - "@babel/parser": "^7.24.7", - "@babel/template": "^7.24.7", - "@babel/traverse": "^7.24.7", - "@babel/types": "^7.24.7", + "@babel/generator": "^7.25.0", + "@babel/helper-compilation-targets": "^7.25.2", + "@babel/helper-module-transforms": "^7.25.2", + "@babel/helpers": "^7.25.0", + "@babel/parser": "^7.25.0", + "@babel/template": "^7.25.0", + "@babel/traverse": "^7.25.2", + "@babel/types": "^7.25.2", "convert-source-map": "^2.0.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -875,15 +300,17 @@ "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", "dev": true, + "license": "ISC", "bin": { "semver": "bin/semver.js" } }, "node_modules/@babel/eslint-parser": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.24.7.tgz", - "integrity": "sha512-SO5E3bVxDuxyNxM5agFv480YA2HO6ohZbGxbazZdIk3KQOPOGVNw6q78I9/lbviIf95eq6tPozeYnJLbjnC8IA==", + "version": "7.25.1", + "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.25.1.tgz", + "integrity": "sha512-Y956ghgTT4j7rKesabkh5WeqgSFZVFwaPR0IWFm7KFHFmmJ4afbG49SmfW4S+GyRPx0Dy5jxEWA5t0rpxfElWg==", "dev": true, + "license": "MIT", "dependencies": { "@nicolo-ribaudo/eslint-scope-5-internals": "5.1.1-v1", "eslint-visitor-keys": "^2.1.0", @@ -902,6 +329,7 @@ "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", "dev": true, + "license": "Apache-2.0", "engines": { "node": ">=10" } @@ -911,17 +339,19 @@ "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", "dev": true, + "license": "ISC", "bin": { "semver": "bin/semver.js" } }, "node_modules/@babel/generator": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.7.tgz", - "integrity": "sha512-oipXieGC3i45Y1A41t4tAqpnEZWgB/lC6Ehh6+rOviR5XWpTtMmLN+fGjz9vOiNRt0p6RtO6DtD0pdU3vpqdSA==", + "version": "7.25.6", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.25.6.tgz", + "integrity": "sha512-VPC82gr1seXOpkjAAKoLhP50vx4vGNlF4msF64dSFq1P8RfB+QAuJWGHPXXPc8QyfVWwwB/TNNU4+ayZmHNbZw==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/types": "^7.24.7", + "@babel/types": "^7.25.6", "@jridgewell/gen-mapping": "^0.3.5", "@jridgewell/trace-mapping": "^0.3.25", "jsesc": "^2.5.1" @@ -931,14 +361,15 @@ } }, "node_modules/@babel/helper-compilation-targets": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.24.7.tgz", - "integrity": "sha512-ctSdRHBi20qWOfy27RUb4Fhp07KSJ3sXcuSvTrXrc4aG8NSYDo1ici3Vhg9bg69y5bj0Mr1lh0aeEgTvc12rMg==", + "version": "7.25.2", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.25.2.tgz", + "integrity": "sha512-U2U5LsSaZ7TAt3cfaymQ8WHh0pxvdHoEk6HVpaexxixjyEquMh0L0YNJNM6CTGKMXV1iksi0iZkGw4AcFkPaaw==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/compat-data": "^7.24.7", - "@babel/helper-validator-option": "^7.24.7", - "browserslist": "^4.22.2", + "@babel/compat-data": "^7.25.2", + "@babel/helper-validator-option": "^7.24.8", + "browserslist": "^4.23.1", "lru-cache": "^5.1.1", "semver": "^6.3.1" }, @@ -951,6 +382,7 @@ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", "dev": true, + "license": "ISC", "dependencies": { "yallist": "^3.0.2" } @@ -960,6 +392,7 @@ "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", "dev": true, + "license": "ISC", "bin": { "semver": "bin/semver.js" } @@ -968,50 +401,15 @@ "version": "3.1.1", "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", - "dev": true - }, - "node_modules/@babel/helper-environment-visitor": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.24.7.tgz", - "integrity": "sha512-DoiN84+4Gnd0ncbBOM9AZENV4a5ZiL39HYMyZJGZ/AZEykHYdJw0wW3kdcsh9/Kn+BRXHLkkklZ51ecPKmI1CQ==", - "dev": true, - "dependencies": { - "@babel/types": "^7.24.7" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-function-name": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.24.7.tgz", - "integrity": "sha512-FyoJTsj/PEUWu1/TYRiXTIHc8lbw+TDYkZuoE43opPS5TrI7MyONBE1oNvfguEXAD9yhQRrVBnXdXzSLQl9XnA==", - "dev": true, - "dependencies": { - "@babel/template": "^7.24.7", - "@babel/types": "^7.24.7" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-hoist-variables": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.24.7.tgz", - "integrity": "sha512-MJJwhkoGy5c4ehfoRyrJ/owKeMl19U54h27YYftT0o2teQ3FJ3nQUf/I3LlJsX4l3qlw7WRXUmiyajvHXoTubQ==", "dev": true, - "dependencies": { - "@babel/types": "^7.24.7" - }, - "engines": { - "node": ">=6.9.0" - } + "license": "ISC" }, "node_modules/@babel/helper-module-imports": { "version": "7.24.7", "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.24.7.tgz", "integrity": "sha512-8AyH3C+74cgCVVXow/myrynrAGv+nTVg5vKu2nZph9x7RcRwzmh0VFallJuFTZ9mx6u4eSdXZfcOzSqTUm0HCA==", "dev": true, + "license": "MIT", "dependencies": { "@babel/traverse": "^7.24.7", "@babel/types": "^7.24.7" @@ -1021,16 +419,16 @@ } }, "node_modules/@babel/helper-module-transforms": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.24.7.tgz", - "integrity": "sha512-1fuJEwIrp+97rM4RWdO+qrRsZlAeL1lQJoPqtCYWv0NL115XM93hIH4CSRln2w52SqvmY5hqdtauB6QFCDiZNQ==", + "version": "7.25.2", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.25.2.tgz", + "integrity": "sha512-BjyRAbix6j/wv83ftcVJmBt72QtHI56C7JXZoG2xATiLpmoC7dpd8WnkikExHDVPpi/3qCmO6WY1EaXOluiecQ==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/helper-environment-visitor": "^7.24.7", "@babel/helper-module-imports": "^7.24.7", "@babel/helper-simple-access": "^7.24.7", - "@babel/helper-split-export-declaration": "^7.24.7", - "@babel/helper-validator-identifier": "^7.24.7" + "@babel/helper-validator-identifier": "^7.24.7", + "@babel/traverse": "^7.25.2" }, "engines": { "node": ">=6.9.0" @@ -1044,6 +442,7 @@ "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.24.7.tgz", "integrity": "sha512-zBAIvbCMh5Ts+b86r/CjU+4XGYIs+R1j951gxI3KmmxBMhCg4oQMsv6ZXQ64XOm/cvzfU1FmoCyt6+owc5QMYg==", "dev": true, + "license": "MIT", "dependencies": { "@babel/traverse": "^7.24.7", "@babel/types": "^7.24.7" @@ -1052,23 +451,12 @@ "node": ">=6.9.0" } }, - "node_modules/@babel/helper-split-export-declaration": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.24.7.tgz", - "integrity": "sha512-oy5V7pD+UvfkEATUKvIjvIAH/xCzfsFVw7ygW2SI6NClZzquT+mwdTfgfdbUiceh6iQO0CHtCPsyze/MZ2YbAA==", - "dev": true, - "dependencies": { - "@babel/types": "^7.24.7" - }, - "engines": { - "node": ">=6.9.0" - } - }, "node_modules/@babel/helper-string-parser": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.7.tgz", - "integrity": "sha512-7MbVt6xrwFQbunH2DNQsAP5sTGxfqQtErvBIvIMi6EQnbgUOuVYanvREcmFrOPhoXBrTtjhhP+lW+o5UfK+tDg==", + "version": "7.24.8", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.8.tgz", + "integrity": "sha512-pO9KhhRcuUyGnJWwyEgnRJTSIZHiT+vMD0kPeD+so0l7mxkMT19g3pjY9GTnHySck/hDzq+dtW/4VgnMkippsQ==", "dev": true, + "license": "MIT", "engines": { "node": ">=6.9.0" } @@ -1078,27 +466,30 @@ "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.7.tgz", "integrity": "sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w==", "dev": true, + "license": "MIT", "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-validator-option": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.24.7.tgz", - "integrity": "sha512-yy1/KvjhV/ZCL+SM7hBrvnZJ3ZuT9OuZgIJAGpPEToANvc3iM6iDvBnRjtElWibHU6n8/LPR/EjX9EtIEYO3pw==", + "version": "7.24.8", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.24.8.tgz", + "integrity": "sha512-xb8t9tD1MHLungh/AIoWYN+gVHaB9kwlu8gffXGSt3FFEIT7RjS+xWbc2vUD1UTZdIpKj/ab3rdqJ7ufngyi2Q==", "dev": true, + "license": "MIT", "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helpers": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.24.7.tgz", - "integrity": "sha512-NlmJJtvcw72yRJRcnCmGvSi+3jDEg8qFu3z0AFoymmzLx5ERVWyzd9kVXr7Th9/8yIJi2Zc6av4Tqz3wFs8QWg==", + "version": "7.25.6", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.25.6.tgz", + "integrity": "sha512-Xg0tn4HcfTijTwfDwYlvVCl43V6h4KyVVX2aEm4qdO/PC6L2YvzLHFdmxhoeSA3eslcE6+ZVXHgWwopXYLNq4Q==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/template": "^7.24.7", - "@babel/types": "^7.24.7" + "@babel/template": "^7.25.0", + "@babel/types": "^7.25.6" }, "engines": { "node": ">=6.9.0" @@ -1109,6 +500,7 @@ "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.7.tgz", "integrity": "sha512-EStJpq4OuY8xYfhGVXngigBJRWxftKX9ksiGDnmlY3o7B/V7KIAc9X4oiK87uPJSc/vs5L869bem5fhZa8caZw==", "dev": true, + "license": "MIT", "dependencies": { "@babel/helper-validator-identifier": "^7.24.7", "chalk": "^2.4.2", @@ -1120,10 +512,14 @@ } }, "node_modules/@babel/parser": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.7.tgz", - "integrity": "sha512-9uUYRm6OqQrCqQdG1iCBwBPZgN8ciDBro2nIOFaiRz1/BCxaI7CNvQbDHvsArAC7Tw9Hda/B3U+6ui9u4HWXPw==", + "version": "7.25.6", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.25.6.tgz", + "integrity": "sha512-trGdfBdbD0l1ZPmcJ83eNxB9rbEax4ALFTF7fN386TMYbeCQbyme5cOEXQhbGXKebwGaB/J52w1mrklMcbgy6Q==", "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.25.6" + }, "bin": { "parser": "bin/babel-parser.js" }, @@ -1132,9 +528,10 @@ } }, "node_modules/@babel/runtime": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.24.7.tgz", - "integrity": "sha512-UwgBRMjJP+xv857DCngvqXI3Iq6J4v0wXmwc6sapg+zyhbwmQX67LUEFrkK5tbyJ30jGuG3ZvWpBiB9LCy1kWw==", + "version": "7.25.6", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.25.6.tgz", + "integrity": "sha512-VBj9MYyDb9tuLq7yzqjgzt6Q+IBQLrGZfdjOekyEirZPHxXWoTSGUTMrpsfi58Up73d13NfYLv8HT9vmznjzhQ==", + "license": "MIT", "dependencies": { "regenerator-runtime": "^0.14.0" }, @@ -1143,33 +540,32 @@ } }, "node_modules/@babel/template": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.7.tgz", - "integrity": "sha512-jYqfPrU9JTF0PmPy1tLYHW4Mp4KlgxJD9l2nP9fD6yT/ICi554DmrWBAEYpIelzjHf1msDP3PxJIRt/nFNfBig==", + "version": "7.25.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.25.0.tgz", + "integrity": "sha512-aOOgh1/5XzKvg1jvVz7AVrx2piJ2XBi227DHmbY6y+bM9H2FlN+IfecYu4Xl0cNiiVejlsCri89LUsbj8vJD9Q==", "dev": true, + "license": "MIT", "dependencies": { "@babel/code-frame": "^7.24.7", - "@babel/parser": "^7.24.7", - "@babel/types": "^7.24.7" + "@babel/parser": "^7.25.0", + "@babel/types": "^7.25.0" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/traverse": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.7.tgz", - "integrity": "sha512-yb65Ed5S/QAcewNPh0nZczy9JdYXkkAbIsEo+P7BE7yO3txAY30Y/oPa3QkQ5It3xVG2kpKMg9MsdxZaO31uKA==", + "version": "7.25.6", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.25.6.tgz", + "integrity": "sha512-9Vrcx5ZW6UwK5tvqsj0nGpp/XzqthkT0dqIc9g1AdtygFToNtTF67XzYS//dm+SAK9cp3B9R4ZO/46p63SCjlQ==", "dev": true, + "license": "MIT", "dependencies": { "@babel/code-frame": "^7.24.7", - "@babel/generator": "^7.24.7", - "@babel/helper-environment-visitor": "^7.24.7", - "@babel/helper-function-name": "^7.24.7", - "@babel/helper-hoist-variables": "^7.24.7", - "@babel/helper-split-export-declaration": "^7.24.7", - "@babel/parser": "^7.24.7", - "@babel/types": "^7.24.7", + "@babel/generator": "^7.25.6", + "@babel/parser": "^7.25.6", + "@babel/template": "^7.25.0", + "@babel/types": "^7.25.6", "debug": "^4.3.1", "globals": "^11.1.0" }, @@ -1182,17 +578,19 @@ "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", "dev": true, + "license": "MIT", "engines": { "node": ">=4" } }, "node_modules/@babel/types": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.7.tgz", - "integrity": "sha512-XEFXSlxiG5td2EJRe8vOmRbaXVgfcBlszKujvVmWIK/UpywWljQCfzAv3RQCGujWQ1RD4YYWEAqDXfuJiy8f5Q==", + "version": "7.25.6", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.25.6.tgz", + "integrity": "sha512-/l42B1qxpG6RdfYf343Uw1vmDjeNhneUXtzhojE7pDgfpEypmRhI6j1kr17XCVv4Cgl9HdAiQY2x0GwKm7rWCw==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/helper-string-parser": "^7.24.7", + "@babel/helper-string-parser": "^7.24.8", "@babel/helper-validator-identifier": "^7.24.7", "to-fast-properties": "^2.0.0" }, @@ -1206,6 +604,7 @@ "integrity": "sha512-/uUV3MV+vyAczO+vKrPdOW0Iaet7UnJMU4bNMinggGJTAnBPjCoLEYcyYtYHNnUNYlv4xZMH6hVIQCAozq8d5w==", "dev": true, "hasInstallScript": true, + "license": "MIT OR Apache-2.0", "bin": { "biome": "bin/biome" }, @@ -1235,6 +634,7 @@ "arm64" ], "dev": true, + "license": "MIT OR Apache-2.0", "optional": true, "os": [ "darwin" @@ -1251,6 +651,7 @@ "x64" ], "dev": true, + "license": "MIT OR Apache-2.0", "optional": true, "os": [ "darwin" @@ -1267,6 +668,7 @@ "arm64" ], "dev": true, + "license": "MIT OR Apache-2.0", "optional": true, "os": [ "linux" @@ -1283,6 +685,7 @@ "arm64" ], "dev": true, + "license": "MIT OR Apache-2.0", "optional": true, "os": [ "linux" @@ -1299,6 +702,7 @@ "x64" ], "dev": true, + "license": "MIT OR Apache-2.0", "optional": true, "os": [ "linux" @@ -1315,6 +719,7 @@ "x64" ], "dev": true, + "license": "MIT OR Apache-2.0", "optional": true, "os": [ "linux" @@ -1331,6 +736,7 @@ "arm64" ], "dev": true, + "license": "MIT OR Apache-2.0", "optional": true, "os": [ "win32" @@ -1347,6 +753,7 @@ "x64" ], "dev": true, + "license": "MIT OR Apache-2.0", "optional": true, "os": [ "win32" @@ -1358,18 +765,19 @@ "node_modules/@braintree/sanitize-url": { "version": "6.0.4", "resolved": "https://registry.npmjs.org/@braintree/sanitize-url/-/sanitize-url-6.0.4.tgz", - "integrity": "sha512-s3jaWicZd0pkP0jf5ysyHUI/RE7MHos6qlToFcGWXVp+ykHOy77OUMrfbgJ9it2C5bow7OIQwYYaHjk9XlBQ2A==" + "integrity": "sha512-s3jaWicZd0pkP0jf5ysyHUI/RE7MHos6qlToFcGWXVp+ykHOy77OUMrfbgJ9it2C5bow7OIQwYYaHjk9XlBQ2A==", + "license": "MIT" }, "node_modules/@changesets/apply-release-plan": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/@changesets/apply-release-plan/-/apply-release-plan-7.0.4.tgz", - "integrity": "sha512-HLFwhKWayKinWAul0Vj+76jVx1Pc2v55MGPVjZ924Y/ROeSsBMFutv9heHmCUj48lJyRfOTJG5+ar+29FUky/A==", + "version": "7.0.5", + "resolved": "https://registry.npmjs.org/@changesets/apply-release-plan/-/apply-release-plan-7.0.5.tgz", + "integrity": "sha512-1cWCk+ZshEkSVEZrm2fSj1Gz8sYvxgUL4Q78+1ZZqeqfuevPTPk033/yUZ3df8BKMohkqqHfzj0HOOrG0KtXTw==", + "license": "MIT", "dependencies": { - "@babel/runtime": "^7.20.1", - "@changesets/config": "^3.0.2", + "@changesets/config": "^3.0.3", "@changesets/get-version-range-type": "^0.4.0", - "@changesets/git": "^3.0.0", - "@changesets/should-skip-package": "^0.1.0", + "@changesets/git": "^3.0.1", + "@changesets/should-skip-package": "^0.1.1", "@changesets/types": "^6.0.0", "@manypkg/get-packages": "^1.1.3", "detect-indent": "^6.0.0", @@ -1385,6 +793,7 @@ "version": "2.8.8", "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz", "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==", + "license": "MIT", "bin": { "prettier": "bin-prettier.js" }, @@ -1396,14 +805,14 @@ } }, "node_modules/@changesets/assemble-release-plan": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/@changesets/assemble-release-plan/-/assemble-release-plan-6.0.3.tgz", - "integrity": "sha512-bLNh9/Lgl1VwkjWZTq8JmRqH+hj7/Yzfz0jsQ/zJJ+FTmVqmqPj3szeKOri8O/hEM8JmHW019vh2gTO9iq5Cuw==", + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/@changesets/assemble-release-plan/-/assemble-release-plan-6.0.4.tgz", + "integrity": "sha512-nqICnvmrwWj4w2x0fOhVj2QEGdlUuwVAwESrUo5HLzWMI1rE5SWfsr9ln+rDqWB6RQ2ZyaMZHUcU7/IRaUJS+Q==", + "license": "MIT", "dependencies": { - "@babel/runtime": "^7.20.1", "@changesets/errors": "^0.2.0", - "@changesets/get-dependents-graph": "^2.1.1", - "@changesets/should-skip-package": "^0.1.0", + "@changesets/get-dependents-graph": "^2.1.2", + "@changesets/should-skip-package": "^0.1.1", "@changesets/types": "^6.0.0", "@manypkg/get-packages": "^1.1.3", "semver": "^7.5.3" @@ -1413,6 +822,7 @@ "version": "0.2.0", "resolved": "https://registry.npmjs.org/@changesets/changelog-git/-/changelog-git-0.2.0.tgz", "integrity": "sha512-bHOx97iFI4OClIT35Lok3sJAwM31VbUM++gnMBV16fdbtBhgYu4dxsphBF/0AZZsyAHMrnM0yFcj5gZM1py6uQ==", + "license": "MIT", "dependencies": { "@changesets/types": "^6.0.0" } @@ -1421,6 +831,7 @@ "version": "2.27.7", "resolved": "https://registry.npmjs.org/@changesets/cli/-/cli-2.27.7.tgz", "integrity": "sha512-6lr8JltiiXPIjDeYg4iM2MeePP6VN/JkmqBsVA5XRiy01hGS3y629LtSDvKcycj/w/5Eur1rEwby/MjcYS+e2A==", + "license": "MIT", "dependencies": { "@babel/runtime": "^7.20.1", "@changesets/apply-release-plan": "^7.0.4", @@ -1460,13 +871,14 @@ } }, "node_modules/@changesets/config": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@changesets/config/-/config-3.0.2.tgz", - "integrity": "sha512-cdEhS4t8woKCX2M8AotcV2BOWnBp09sqICxKapgLHf9m5KdENpWjyrFNMjkLqGJtUys9U+w93OxWT0czorVDfw==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@changesets/config/-/config-3.0.3.tgz", + "integrity": "sha512-vqgQZMyIcuIpw9nqFIpTSNyc/wgm/Lu1zKN5vECy74u95Qx/Wa9g27HdgO4NkVAaq+BGA8wUc/qvbvVNs93n6A==", + "license": "MIT", "dependencies": { "@changesets/errors": "^0.2.0", - "@changesets/get-dependents-graph": "^2.1.1", - "@changesets/logger": "^0.1.0", + "@changesets/get-dependents-graph": "^2.1.2", + "@changesets/logger": "^0.1.1", "@changesets/types": "^6.0.0", "@manypkg/get-packages": "^1.1.3", "fs-extra": "^7.0.1", @@ -1477,32 +889,33 @@ "version": "0.2.0", "resolved": "https://registry.npmjs.org/@changesets/errors/-/errors-0.2.0.tgz", "integrity": "sha512-6BLOQUscTpZeGljvyQXlWOItQyU71kCdGz7Pi8H8zdw6BI0g3m43iL4xKUVPWtG+qrrL9DTjpdn8eYuCQSRpow==", + "license": "MIT", "dependencies": { "extendable-error": "^0.1.5" } }, "node_modules/@changesets/get-dependents-graph": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/@changesets/get-dependents-graph/-/get-dependents-graph-2.1.1.tgz", - "integrity": "sha512-LRFjjvigBSzfnPU2n/AhFsuWR5DK++1x47aq6qZ8dzYsPtS/I5mNhIGAS68IAxh1xjO9BTtz55FwefhANZ+FCA==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@changesets/get-dependents-graph/-/get-dependents-graph-2.1.2.tgz", + "integrity": "sha512-sgcHRkiBY9i4zWYBwlVyAjEM9sAzs4wYVwJUdnbDLnVG3QwAaia1Mk5P8M7kraTOZN+vBET7n8KyB0YXCbFRLQ==", + "license": "MIT", "dependencies": { "@changesets/types": "^6.0.0", "@manypkg/get-packages": "^1.1.3", - "chalk": "^2.1.0", - "fs-extra": "^7.0.1", + "picocolors": "^1.1.0", "semver": "^7.5.3" } }, "node_modules/@changesets/get-release-plan": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/@changesets/get-release-plan/-/get-release-plan-4.0.3.tgz", - "integrity": "sha512-6PLgvOIwTSdJPTtpdcr3sLtGatT+Jr22+cQwEBJBy6wP0rjB4yJ9lv583J9fVpn1bfQlBkDa8JxbS2g/n9lIyA==", + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/@changesets/get-release-plan/-/get-release-plan-4.0.4.tgz", + "integrity": "sha512-SicG/S67JmPTrdcc9Vpu0wSQt7IiuN0dc8iR5VScnnTVPfIaLvKmEGRvIaF0kcn8u5ZqLbormZNTO77bCEvyWw==", + "license": "MIT", "dependencies": { - "@babel/runtime": "^7.20.1", - "@changesets/assemble-release-plan": "^6.0.3", - "@changesets/config": "^3.0.2", - "@changesets/pre": "^2.0.0", - "@changesets/read": "^0.6.0", + "@changesets/assemble-release-plan": "^6.0.4", + "@changesets/config": "^3.0.3", + "@changesets/pre": "^2.0.1", + "@changesets/read": "^0.6.1", "@changesets/types": "^6.0.0", "@manypkg/get-packages": "^1.1.3" } @@ -1510,16 +923,16 @@ "node_modules/@changesets/get-version-range-type": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/@changesets/get-version-range-type/-/get-version-range-type-0.4.0.tgz", - "integrity": "sha512-hwawtob9DryoGTpixy1D3ZXbGgJu1Rhr+ySH2PvTLHvkZuQ7sRT4oQwMh0hbqZH1weAooedEjRsbrWcGLCeyVQ==" + "integrity": "sha512-hwawtob9DryoGTpixy1D3ZXbGgJu1Rhr+ySH2PvTLHvkZuQ7sRT4oQwMh0hbqZH1weAooedEjRsbrWcGLCeyVQ==", + "license": "MIT" }, "node_modules/@changesets/git": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@changesets/git/-/git-3.0.0.tgz", - "integrity": "sha512-vvhnZDHe2eiBNRFHEgMiGd2CT+164dfYyrJDhwwxTVD/OW0FUD6G7+4DIx1dNwkwjHyzisxGAU96q0sVNBns0w==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@changesets/git/-/git-3.0.1.tgz", + "integrity": "sha512-pdgHcYBLCPcLd82aRcuO0kxCDbw/yISlOtkmwmE8Odo1L6hSiZrBOsRl84eYG7DRCab/iHnOkWqExqc4wxk2LQ==", + "license": "MIT", "dependencies": { - "@babel/runtime": "^7.20.1", "@changesets/errors": "^0.2.0", - "@changesets/types": "^6.0.0", "@manypkg/get-packages": "^1.1.3", "is-subdir": "^1.1.1", "micromatch": "^4.0.2", @@ -1527,28 +940,30 @@ } }, "node_modules/@changesets/logger": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/@changesets/logger/-/logger-0.1.0.tgz", - "integrity": "sha512-pBrJm4CQm9VqFVwWnSqKEfsS2ESnwqwH+xR7jETxIErZcfd1u2zBSqrHbRHR7xjhSgep9x2PSKFKY//FAshA3g==", + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@changesets/logger/-/logger-0.1.1.tgz", + "integrity": "sha512-OQtR36ZlnuTxKqoW4Sv6x5YIhOmClRd5pWsjZsddYxpWs517R0HkyiefQPIytCVh4ZcC5x9XaG8KTdd5iRQUfg==", + "license": "MIT", "dependencies": { - "chalk": "^2.1.0" + "picocolors": "^1.1.0" } }, "node_modules/@changesets/parse": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/@changesets/parse/-/parse-0.4.0.tgz", "integrity": "sha512-TS/9KG2CdGXS27S+QxbZXgr8uPsP4yNJYb4BC2/NeFUj80Rni3TeD2qwWmabymxmrLo7JEsytXH1FbpKTbvivw==", + "license": "MIT", "dependencies": { "@changesets/types": "^6.0.0", "js-yaml": "^3.13.1" } }, "node_modules/@changesets/pre": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@changesets/pre/-/pre-2.0.0.tgz", - "integrity": "sha512-HLTNYX/A4jZxc+Sq8D1AMBsv+1qD6rmmJtjsCJa/9MSRybdxh0mjbTvE6JYZQ/ZiQ0mMlDOlGPXTm9KLTU3jyw==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@changesets/pre/-/pre-2.0.1.tgz", + "integrity": "sha512-vvBJ/If4jKM4tPz9JdY2kGOgWmCowUYOi5Ycv8dyLnEE8FgpYYUo1mgJZxcdtGGP3aG8rAQulGLyyXGSLkIMTQ==", + "license": "MIT", "dependencies": { - "@babel/runtime": "^7.20.1", "@changesets/errors": "^0.2.0", "@changesets/types": "^6.0.0", "@manypkg/get-packages": "^1.1.3", @@ -1556,26 +971,26 @@ } }, "node_modules/@changesets/read": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/@changesets/read/-/read-0.6.0.tgz", - "integrity": "sha512-ZypqX8+/im1Fm98K4YcZtmLKgjs1kDQ5zHpc2U1qdtNBmZZfo/IBiG162RoP0CUF05tvp2y4IspH11PLnPxuuw==", + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/@changesets/read/-/read-0.6.1.tgz", + "integrity": "sha512-jYMbyXQk3nwP25nRzQQGa1nKLY0KfoOV7VLgwucI0bUO8t8ZLCr6LZmgjXsiKuRDc+5A6doKPr9w2d+FEJ55zQ==", + "license": "MIT", "dependencies": { - "@babel/runtime": "^7.20.1", - "@changesets/git": "^3.0.0", - "@changesets/logger": "^0.1.0", + "@changesets/git": "^3.0.1", + "@changesets/logger": "^0.1.1", "@changesets/parse": "^0.4.0", "@changesets/types": "^6.0.0", - "chalk": "^2.1.0", "fs-extra": "^7.0.1", - "p-filter": "^2.1.0" + "p-filter": "^2.1.0", + "picocolors": "^1.1.0" } }, "node_modules/@changesets/should-skip-package": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/@changesets/should-skip-package/-/should-skip-package-0.1.0.tgz", - "integrity": "sha512-FxG6Mhjw7yFStlSM7Z0Gmg3RiyQ98d/9VpQAZ3Fzr59dCOM9G6ZdYbjiSAt0XtFr9JR5U2tBaJWPjrkGGc618g==", + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@changesets/should-skip-package/-/should-skip-package-0.1.1.tgz", + "integrity": "sha512-H9LjLbF6mMHLtJIc/eHR9Na+MifJ3VxtgP/Y+XLn4BF7tDTEN1HNYtH6QMcjP1uxp9sjaFYmW8xqloaCi/ckTg==", + "license": "MIT", "dependencies": { - "@babel/runtime": "^7.20.1", "@changesets/types": "^6.0.0", "@manypkg/get-packages": "^1.1.3" } @@ -1583,14 +998,15 @@ "node_modules/@changesets/types": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/@changesets/types/-/types-6.0.0.tgz", - "integrity": "sha512-b1UkfNulgKoWfqyHtzKS5fOZYSJO+77adgL7DLRDr+/7jhChN+QcHnbjiQVOz/U+Ts3PGNySq7diAItzDgugfQ==" + "integrity": "sha512-b1UkfNulgKoWfqyHtzKS5fOZYSJO+77adgL7DLRDr+/7jhChN+QcHnbjiQVOz/U+Ts3PGNySq7diAItzDgugfQ==", + "license": "MIT" }, "node_modules/@changesets/write": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/@changesets/write/-/write-0.3.1.tgz", - "integrity": "sha512-SyGtMXzH3qFqlHKcvFY2eX+6b0NGiFcNav8AFsYwy5l8hejOeoeTDemu5Yjmke2V5jpzY+pBvM0vCCQ3gdZpfw==", + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@changesets/write/-/write-0.3.2.tgz", + "integrity": "sha512-kDxDrPNpUgsjDbWBvUo27PzKX4gqeKOlhibaOXDJA6kuBisGqNHv/HwGJrAu8U/dSf8ZEFIeHIPtvSlZI1kULw==", + "license": "MIT", "dependencies": { - "@babel/runtime": "^7.20.1", "@changesets/types": "^6.0.0", "fs-extra": "^7.0.1", "human-id": "^1.0.2", @@ -1601,1074 +1017,639 @@ "version": "2.8.8", "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz", "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==", + "license": "MIT", "bin": { - "prettier": "bin-prettier.js" - }, - "engines": { - "node": ">=10.13.0" - }, - "funding": { - "url": "https://github.com/prettier/prettier?sponsor=1" - } - }, - "node_modules/@emnapi/runtime": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.2.0.tgz", - "integrity": "sha512-bV21/9LQmcQeCPEg3BDFtvwL6cwiTMksYNWQQ4KOxCZikEGalWtenoZ0wCiukJINlGCIi2KXx01g4FoH/LxpzQ==", - "optional": true, - "dependencies": { - "tslib": "^2.4.0" - } - }, - "node_modules/@esbuild/aix-ppc64": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.23.0.tgz", - "integrity": "sha512-3sG8Zwa5fMcA9bgqB8AfWPQ+HFke6uD3h1s3RIwUNK8EG7a4buxvuFTs3j1IMs2NXAk9F30C/FF4vxRgQCcmoQ==", - "cpu": [ - "ppc64" - ], - "dev": true, - "optional": true, - "os": [ - "aix" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/android-arm": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.23.0.tgz", - "integrity": "sha512-+KuOHTKKyIKgEEqKbGTK8W7mPp+hKinbMBeEnNzjJGyFcWsfrXjSTNluJHCY1RqhxFurdD8uNXQDei7qDlR6+g==", - "cpu": [ - "arm" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/android-arm64": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.23.0.tgz", - "integrity": "sha512-EuHFUYkAVfU4qBdyivULuu03FhJO4IJN9PGuABGrFy4vUuzk91P2d+npxHcFdpUnfYKy0PuV+n6bKIpHOB3prQ==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/android-x64": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.23.0.tgz", - "integrity": "sha512-WRrmKidLoKDl56LsbBMhzTTBxrsVwTKdNbKDalbEZr0tcsBgCLbEtoNthOW6PX942YiYq8HzEnb4yWQMLQuipQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/darwin-arm64": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.23.0.tgz", - "integrity": "sha512-YLntie/IdS31H54Ogdn+v50NuoWF5BDkEUFpiOChVa9UnKpftgwzZRrI4J132ETIi+D8n6xh9IviFV3eXdxfow==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/darwin-x64": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.23.0.tgz", - "integrity": "sha512-IMQ6eme4AfznElesHUPDZ+teuGwoRmVuuixu7sv92ZkdQcPbsNHzutd+rAfaBKo8YK3IrBEi9SLLKWJdEvJniQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/freebsd-arm64": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.23.0.tgz", - "integrity": "sha512-0muYWCng5vqaxobq6LB3YNtevDFSAZGlgtLoAc81PjUfiFz36n4KMpwhtAd4he8ToSI3TGyuhyx5xmiWNYZFyw==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/freebsd-x64": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.23.0.tgz", - "integrity": "sha512-XKDVu8IsD0/q3foBzsXGt/KjD/yTKBCIwOHE1XwiXmrRwrX6Hbnd5Eqn/WvDekddK21tfszBSrE/WMaZh+1buQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-arm": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.23.0.tgz", - "integrity": "sha512-SEELSTEtOFu5LPykzA395Mc+54RMg1EUgXP+iw2SJ72+ooMwVsgfuwXo5Fn0wXNgWZsTVHwY2cg4Vi/bOD88qw==", - "cpu": [ - "arm" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-arm64": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.23.0.tgz", - "integrity": "sha512-j1t5iG8jE7BhonbsEg5d9qOYcVZv/Rv6tghaXM/Ug9xahM0nX/H2gfu6X6z11QRTMT6+aywOMA8TDkhPo8aCGw==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-ia32": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.23.0.tgz", - "integrity": "sha512-P7O5Tkh2NbgIm2R6x1zGJJsnacDzTFcRWZyTTMgFdVit6E98LTxO+v8LCCLWRvPrjdzXHx9FEOA8oAZPyApWUA==", - "cpu": [ - "ia32" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-loong64": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.23.0.tgz", - "integrity": "sha512-InQwepswq6urikQiIC/kkx412fqUZudBO4SYKu0N+tGhXRWUqAx+Q+341tFV6QdBifpjYgUndV1hhMq3WeJi7A==", - "cpu": [ - "loong64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-mips64el": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.23.0.tgz", - "integrity": "sha512-J9rflLtqdYrxHv2FqXE2i1ELgNjT+JFURt/uDMoPQLcjWQA5wDKgQA4t/dTqGa88ZVECKaD0TctwsUfHbVoi4w==", - "cpu": [ - "mips64el" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], + "prettier": "bin-prettier.js" + }, "engines": { - "node": ">=18" + "node": ">=10.13.0" + }, + "funding": { + "url": "https://github.com/prettier/prettier?sponsor=1" } }, - "node_modules/@esbuild/linux-ppc64": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.23.0.tgz", - "integrity": "sha512-cShCXtEOVc5GxU0fM+dsFD10qZ5UpcQ8AM22bYj0u/yaAykWnqXJDpd77ublcX6vdDsWLuweeuSNZk4yUxZwtw==", + "node_modules/@esbuild/aix-ppc64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.23.1.tgz", + "integrity": "sha512-6VhYk1diRqrhBAqpJEdjASR/+WVRtfjpqKuNw11cLiaWpAT/Uu+nokB+UJnevzy/P9C/ty6AOe0dwueMrGh/iQ==", "cpu": [ "ppc64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-riscv64": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.23.0.tgz", - "integrity": "sha512-HEtaN7Y5UB4tZPeQmgz/UhzoEyYftbMXrBCUjINGjh3uil+rB/QzzpMshz3cNUxqXN7Vr93zzVtpIDL99t9aRw==", - "cpu": [ - "riscv64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" + "aix" ], "engines": { "node": ">=18" } }, - "node_modules/@esbuild/linux-s390x": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.23.0.tgz", - "integrity": "sha512-WDi3+NVAuyjg/Wxi+o5KPqRbZY0QhI9TjrEEm+8dmpY9Xir8+HE/HNx2JoLckhKbFopW0RdO2D72w8trZOV+Wg==", + "node_modules/@esbuild/android-arm": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.23.1.tgz", + "integrity": "sha512-uz6/tEy2IFm9RYOyvKl88zdzZfwEfKZmnX9Cj1BHjeSGNuGLuMD1kR8y5bteYmwqKm1tj8m4cb/aKEorr6fHWQ==", "cpu": [ - "s390x" + "arm" ], "dev": true, + "license": "MIT", "optional": true, "os": [ - "linux" + "android" ], "engines": { "node": ">=18" } }, - "node_modules/@esbuild/linux-x64": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.23.0.tgz", - "integrity": "sha512-a3pMQhUEJkITgAw6e0bWA+F+vFtCciMjW/LPtoj99MhVt+Mfb6bbL9hu2wmTZgNd994qTAEw+U/r6k3qHWWaOQ==", + "node_modules/@esbuild/android-arm64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.23.1.tgz", + "integrity": "sha512-xw50ipykXcLstLeWH7WRdQuysJqejuAGPd30vd1i5zSyKK3WE+ijzHmLKxdiCMtH1pHz78rOg0BKSYOSB/2Khw==", "cpu": [ - "x64" + "arm64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ - "linux" + "android" ], "engines": { "node": ">=18" } }, - "node_modules/@esbuild/netbsd-x64": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.23.0.tgz", - "integrity": "sha512-cRK+YDem7lFTs2Q5nEv/HHc4LnrfBCbH5+JHu6wm2eP+d8OZNoSMYgPZJq78vqQ9g+9+nMuIsAO7skzphRXHyw==", + "node_modules/@esbuild/android-x64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.23.1.tgz", + "integrity": "sha512-nlN9B69St9BwUoB+jkyU090bru8L0NA3yFvAd7k8dNsVH8bi9a8cUAUSEcEEgTp2z3dbEDGJGfP6VUnkQnlReg==", "cpu": [ "x64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ - "netbsd" + "android" ], "engines": { "node": ">=18" } }, - "node_modules/@esbuild/openbsd-arm64": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.23.0.tgz", - "integrity": "sha512-suXjq53gERueVWu0OKxzWqk7NxiUWSUlrxoZK7usiF50C6ipColGR5qie2496iKGYNLhDZkPxBI3erbnYkU0rQ==", + "node_modules/@esbuild/darwin-arm64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.23.1.tgz", + "integrity": "sha512-YsS2e3Wtgnw7Wq53XXBLcV6JhRsEq8hkfg91ESVadIrzr9wO6jJDMZnCQbHm1Guc5t/CdDiFSSfWP58FNuvT3Q==", "cpu": [ "arm64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ - "openbsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/openbsd-x64": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.23.0.tgz", - "integrity": "sha512-6p3nHpby0DM/v15IFKMjAaayFhqnXV52aEmv1whZHX56pdkK+MEaLoQWj+H42ssFarP1PcomVhbsR4pkz09qBg==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "openbsd" + "darwin" ], "engines": { "node": ">=18" } }, - "node_modules/@esbuild/sunos-x64": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.23.0.tgz", - "integrity": "sha512-BFelBGfrBwk6LVrmFzCq1u1dZbG4zy/Kp93w2+y83Q5UGYF1d8sCzeLI9NXjKyujjBBniQa8R8PzLFAUrSM9OA==", + "node_modules/@esbuild/darwin-x64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.23.1.tgz", + "integrity": "sha512-aClqdgTDVPSEGgoCS8QDG37Gu8yc9lTHNAQlsztQ6ENetKEO//b8y31MMu2ZaPbn4kVsIABzVLXYLhCGekGDqw==", "cpu": [ "x64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ - "sunos" + "darwin" ], "engines": { "node": ">=18" } }, - "node_modules/@esbuild/win32-arm64": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.23.0.tgz", - "integrity": "sha512-lY6AC8p4Cnb7xYHuIxQ6iYPe6MfO2CC43XXKo9nBXDb35krYt7KGhQnOkRGar5psxYkircpCqfbNDB4uJbS2jQ==", + "node_modules/@esbuild/freebsd-arm64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.23.1.tgz", + "integrity": "sha512-h1k6yS8/pN/NHlMl5+v4XPfikhJulk4G+tKGFIOwURBSFzE8bixw1ebjluLOjfwtLqY0kewfjLSrO6tN2MgIhA==", "cpu": [ "arm64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ - "win32" + "freebsd" ], "engines": { "node": ">=18" } }, - "node_modules/@esbuild/win32-ia32": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.23.0.tgz", - "integrity": "sha512-7L1bHlOTcO4ByvI7OXVI5pNN6HSu6pUQq9yodga8izeuB1KcT2UkHaH6118QJwopExPn0rMHIseCTx1CRo/uNA==", + "node_modules/@esbuild/freebsd-x64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.23.1.tgz", + "integrity": "sha512-lK1eJeyk1ZX8UklqFd/3A60UuZ/6UVfGT2LuGo3Wp4/z7eRTRYY+0xOu2kpClP+vMTi9wKOfXi2vjUpO1Ro76g==", "cpu": [ - "ia32" + "x64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ - "win32" + "freebsd" ], "engines": { "node": ">=18" } }, - "node_modules/@esbuild/win32-x64": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.23.0.tgz", - "integrity": "sha512-Arm+WgUFLUATuoxCJcahGuk6Yj9Pzxd6l11Zb/2aAuv5kWWvvfhLFo2fni4uSK5vzlUdCGZ/BdV5tH8klj8p8g==", + "node_modules/@esbuild/linux-arm": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.23.1.tgz", + "integrity": "sha512-CXXkzgn+dXAPs3WBwE+Kvnrf4WECwBdfjfeYHpMeVxWE0EceB6vhWGShs6wi0IYEqMSIzdOF1XjQ/Mkm5d7ZdQ==", "cpu": [ - "x64" + "arm" ], "dev": true, + "license": "MIT", "optional": true, "os": [ - "win32" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@eslint-community/eslint-utils": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz", - "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==", - "dev": true, - "dependencies": { - "eslint-visitor-keys": "^3.3.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" - } - }, - "node_modules/@eslint-community/regexpp": { - "version": "4.10.1", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.10.1.tgz", - "integrity": "sha512-Zm2NGpWELsQAD1xsJzGQpYfvICSsFkEpU0jxBjfdC6uNEWXcHnfs9hScFWtXVDVl+rBQJGrl4g1vcKIejpH9dA==", - "dev": true, - "engines": { - "node": "^12.0.0 || ^14.0.0 || >=16.0.0" - } - }, - "node_modules/@eslint/eslintrc": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz", - "integrity": "sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==", - "dev": true, - "dependencies": { - "ajv": "^6.12.4", - "debug": "^4.3.2", - "espree": "^9.6.0", - "globals": "^13.19.0", - "ignore": "^5.2.0", - "import-fresh": "^3.2.1", - "js-yaml": "^4.1.0", - "minimatch": "^3.1.2", - "strip-json-comments": "^3.1.1" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/@eslint/eslintrc/node_modules/argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", - "dev": true - }, - "node_modules/@eslint/eslintrc/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/@eslint/eslintrc/node_modules/js-yaml": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", - "dev": true, - "dependencies": { - "argparse": "^2.0.1" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/@eslint/eslintrc/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/@eslint/js": { - "version": "8.57.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.57.0.tgz", - "integrity": "sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==", - "dev": true, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - } - }, - "node_modules/@fastify/ajv-compiler": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/@fastify/ajv-compiler/-/ajv-compiler-3.5.0.tgz", - "integrity": "sha512-ebbEtlI7dxXF5ziNdr05mOY8NnDiPB1XvAlLHctRt/Rc+C3LCOVW5imUVX+mhvUhnNzmPBHewUkOFgGlCxgdAA==", - "dependencies": { - "ajv": "^8.11.0", - "ajv-formats": "^2.1.1", - "fast-uri": "^2.0.0" - } - }, - "node_modules/@fastify/ajv-compiler/node_modules/ajv": { - "version": "8.16.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.16.0.tgz", - "integrity": "sha512-F0twR8U1ZU67JIEtekUcLkXkoO5mMMmgGD8sK/xUFzJ805jxHQl92hImFAqqXMyMYjSPOyUPAwHYhB72g5sTXw==", - "dependencies": { - "fast-deep-equal": "^3.1.3", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.4.1" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/@fastify/ajv-compiler/node_modules/json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==" - }, - "node_modules/@fastify/busboy": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/@fastify/busboy/-/busboy-2.1.1.tgz", - "integrity": "sha512-vBZP4NlzfOlerQTnba4aqZoMhE/a9HY7HRqoOPaETQcSQuWEIyZMHGfVu6w9wGtGK5fED5qRs2DteVCjOH60sA==", - "dev": true, - "engines": { - "node": ">=14" - } - }, - "node_modules/@fastify/error": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/@fastify/error/-/error-3.4.1.tgz", - "integrity": "sha512-wWSvph+29GR783IhmvdwWnN4bUxTD01Vm5Xad4i7i1VuAOItLvbPAb69sb0IQ2N57yprvhNIwAP5B6xfKTmjmQ==" - }, - "node_modules/@fastify/fast-json-stringify-compiler": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/@fastify/fast-json-stringify-compiler/-/fast-json-stringify-compiler-4.3.0.tgz", - "integrity": "sha512-aZAXGYo6m22Fk1zZzEUKBvut/CIIQe/BapEORnxiD5Qr0kPHqqI69NtEMCme74h+at72sPhbkb4ZrLd1W3KRLA==", - "dependencies": { - "fast-json-stringify": "^5.7.0" - } - }, - "node_modules/@fastify/merge-json-schemas": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@fastify/merge-json-schemas/-/merge-json-schemas-0.1.1.tgz", - "integrity": "sha512-fERDVz7topgNjtXsJTTW1JKLy0rhuLRcquYqNR9rF7OcVpCa2OVW49ZPDIhaRRCaUuvVxI+N416xUoF76HNSXA==", - "dependencies": { - "fast-deep-equal": "^3.1.3" - } - }, - "node_modules/@headlessui/react": { - "version": "1.7.19", - "resolved": "https://registry.npmjs.org/@headlessui/react/-/react-1.7.19.tgz", - "integrity": "sha512-Ll+8q3OlMJfJbAKM/+/Y2q6PPYbryqNTXDbryx7SXLIDamkF6iQFbriYHga0dY44PvDhvvBWCx1Xj4U5+G4hOw==", - "dependencies": { - "@tanstack/react-virtual": "^3.0.0-beta.60", - "client-only": "^0.0.1" - }, - "engines": { - "node": ">=10" - }, - "peerDependencies": { - "react": "^16 || ^17 || ^18", - "react-dom": "^16 || ^17 || ^18" + "linux" + ], + "engines": { + "node": ">=18" } }, - "node_modules/@humanwhocodes/config-array": { - "version": "0.11.14", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.14.tgz", - "integrity": "sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==", - "deprecated": "Use @eslint/config-array instead", + "node_modules/@esbuild/linux-arm64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.23.1.tgz", + "integrity": "sha512-/93bf2yxencYDnItMYV/v116zff6UyTjo4EtEQjUBeGiVpMmffDNUyD9UN2zV+V3LRV3/on4xdZ26NKzn6754g==", + "cpu": [ + "arm64" + ], "dev": true, - "dependencies": { - "@humanwhocodes/object-schema": "^2.0.2", - "debug": "^4.3.1", - "minimatch": "^3.0.5" - }, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": ">=10.10.0" + "node": ">=18" } }, - "node_modules/@humanwhocodes/config-array/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "node_modules/@esbuild/linux-ia32": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.23.1.tgz", + "integrity": "sha512-VTN4EuOHwXEkXzX5nTvVY4s7E/Krz7COC8xkftbbKRYAl96vPiUssGkeMELQMOnLOJ8k3BY1+ZY52tttZnHcXQ==", + "cpu": [ + "ia32" + ], "dev": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" } }, - "node_modules/@humanwhocodes/config-array/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "node_modules/@esbuild/linux-loong64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.23.1.tgz", + "integrity": "sha512-Vx09LzEoBa5zDnieH8LSMRToj7ir/Jeq0Gu6qJ/1GcBq9GkfoEAoXvLiW1U9J1qE/Y/Oyaq33w5p2ZWrNNHNEw==", + "cpu": [ + "loong64" + ], "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": "*" + "node": ">=18" } }, - "node_modules/@humanwhocodes/module-importer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", - "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", + "node_modules/@esbuild/linux-mips64el": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.23.1.tgz", + "integrity": "sha512-nrFzzMQ7W4WRLNUOU5dlWAqa6yVeI0P78WKGUo7lg2HShq/yx+UYkeNSE0SSfSure0SqgnsxPvmAUu/vu0E+3Q==", + "cpu": [ + "mips64el" + ], "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": ">=12.22" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/nzakas" + "node": ">=18" } }, - "node_modules/@humanwhocodes/object-schema": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.3.tgz", - "integrity": "sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==", - "deprecated": "Use @eslint/object-schema instead", - "dev": true - }, - "node_modules/@img/sharp-darwin-arm64": { - "version": "0.33.4", - "resolved": "https://registry.npmjs.org/@img/sharp-darwin-arm64/-/sharp-darwin-arm64-0.33.4.tgz", - "integrity": "sha512-p0suNqXufJs9t3RqLBO6vvrgr5OhgbWp76s5gTRvdmxmuv9E1rcaqGUsl3l4mKVmXPkTkTErXediAui4x+8PSA==", + "node_modules/@esbuild/linux-ppc64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.23.1.tgz", + "integrity": "sha512-dKN8fgVqd0vUIjxuJI6P/9SSSe/mB9rvA98CSH2sJnlZ/OCZWO1DJvxj8jvKTfYUdGfcq2dDxoKaC6bHuTlgcw==", "cpu": [ - "arm64" + "ppc64" ], + "dev": true, + "license": "MIT", "optional": true, "os": [ - "darwin" + "linux" ], "engines": { - "glibc": ">=2.26", - "node": "^18.17.0 || ^20.3.0 || >=21.0.0", - "npm": ">=9.6.5", - "pnpm": ">=7.1.0", - "yarn": ">=3.2.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" - }, - "optionalDependencies": { - "@img/sharp-libvips-darwin-arm64": "1.0.2" + "node": ">=18" } }, - "node_modules/@img/sharp-darwin-x64": { - "version": "0.33.4", - "resolved": "https://registry.npmjs.org/@img/sharp-darwin-x64/-/sharp-darwin-x64-0.33.4.tgz", - "integrity": "sha512-0l7yRObwtTi82Z6ebVI2PnHT8EB2NxBgpK2MiKJZJ7cz32R4lxd001ecMhzzsZig3Yv9oclvqqdV93jo9hy+Dw==", + "node_modules/@esbuild/linux-riscv64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.23.1.tgz", + "integrity": "sha512-5AV4Pzp80fhHL83JM6LoA6pTQVWgB1HovMBsLQ9OZWLDqVY8MVobBXNSmAJi//Csh6tcY7e7Lny2Hg1tElMjIA==", "cpu": [ - "x64" + "riscv64" ], + "dev": true, + "license": "MIT", "optional": true, "os": [ - "darwin" + "linux" ], "engines": { - "glibc": ">=2.26", - "node": "^18.17.0 || ^20.3.0 || >=21.0.0", - "npm": ">=9.6.5", - "pnpm": ">=7.1.0", - "yarn": ">=3.2.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" - }, - "optionalDependencies": { - "@img/sharp-libvips-darwin-x64": "1.0.2" + "node": ">=18" } }, - "node_modules/@img/sharp-libvips-darwin-arm64": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-arm64/-/sharp-libvips-darwin-arm64-1.0.2.tgz", - "integrity": "sha512-tcK/41Rq8IKlSaKRCCAuuY3lDJjQnYIW1UXU1kxcEKrfL8WR7N6+rzNoOxoQRJWTAECuKwgAHnPvqXGN8XfkHA==", + "node_modules/@esbuild/linux-s390x": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.23.1.tgz", + "integrity": "sha512-9ygs73tuFCe6f6m/Tb+9LtYxWR4c9yg7zjt2cYkjDbDpV/xVn+68cQxMXCjUpYwEkze2RcU/rMnfIXNRFmSoDw==", "cpu": [ - "arm64" + "s390x" ], + "dev": true, + "license": "MIT", "optional": true, "os": [ - "darwin" + "linux" ], "engines": { - "macos": ">=11", - "npm": ">=9.6.5", - "pnpm": ">=7.1.0", - "yarn": ">=3.2.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" + "node": ">=18" } }, - "node_modules/@img/sharp-libvips-darwin-x64": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-x64/-/sharp-libvips-darwin-x64-1.0.2.tgz", - "integrity": "sha512-Ofw+7oaWa0HiiMiKWqqaZbaYV3/UGL2wAPeLuJTx+9cXpCRdvQhCLG0IH8YGwM0yGWGLpsF4Su9vM1o6aer+Fw==", + "node_modules/@esbuild/linux-x64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.23.1.tgz", + "integrity": "sha512-EV6+ovTsEXCPAp58g2dD68LxoP/wK5pRvgy0J/HxPGB009omFPv3Yet0HiaqvrIrgPTBuC6wCH1LTOY91EO5hQ==", "cpu": [ "x64" ], + "dev": true, + "license": "MIT", "optional": true, "os": [ - "darwin" + "linux" ], "engines": { - "macos": ">=10.13", - "npm": ">=9.6.5", - "pnpm": ">=7.1.0", - "yarn": ">=3.2.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" + "node": ">=18" } }, - "node_modules/@img/sharp-libvips-linux-arm": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm/-/sharp-libvips-linux-arm-1.0.2.tgz", - "integrity": "sha512-iLWCvrKgeFoglQxdEwzu1eQV04o8YeYGFXtfWU26Zr2wWT3q3MTzC+QTCO3ZQfWd3doKHT4Pm2kRmLbupT+sZw==", + "node_modules/@esbuild/netbsd-x64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.23.1.tgz", + "integrity": "sha512-aevEkCNu7KlPRpYLjwmdcuNz6bDFiE7Z8XC4CPqExjTvrHugh28QzUXVOZtiYghciKUacNktqxdpymplil1beA==", "cpu": [ - "arm" + "x64" ], + "dev": true, + "license": "MIT", "optional": true, "os": [ - "linux" + "netbsd" ], "engines": { - "glibc": ">=2.28", - "npm": ">=9.6.5", - "pnpm": ">=7.1.0", - "yarn": ">=3.2.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" + "node": ">=18" } }, - "node_modules/@img/sharp-libvips-linux-arm64": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm64/-/sharp-libvips-linux-arm64-1.0.2.tgz", - "integrity": "sha512-x7kCt3N00ofFmmkkdshwj3vGPCnmiDh7Gwnd4nUwZln2YjqPxV1NlTyZOvoDWdKQVDL911487HOueBvrpflagw==", + "node_modules/@esbuild/openbsd-arm64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.23.1.tgz", + "integrity": "sha512-3x37szhLexNA4bXhLrCC/LImN/YtWis6WXr1VESlfVtVeoFJBRINPJ3f0a/6LV8zpikqoUg4hyXw0sFBt5Cr+Q==", "cpu": [ "arm64" ], + "dev": true, + "license": "MIT", "optional": true, "os": [ - "linux" + "openbsd" ], "engines": { - "glibc": ">=2.26", - "npm": ">=9.6.5", - "pnpm": ">=7.1.0", - "yarn": ">=3.2.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" + "node": ">=18" } }, - "node_modules/@img/sharp-libvips-linux-s390x": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-s390x/-/sharp-libvips-linux-s390x-1.0.2.tgz", - "integrity": "sha512-cmhQ1J4qVhfmS6szYW7RT+gLJq9dH2i4maq+qyXayUSn9/3iY2ZeWpbAgSpSVbV2E1JUL2Gg7pwnYQ1h8rQIog==", + "node_modules/@esbuild/openbsd-x64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.23.1.tgz", + "integrity": "sha512-aY2gMmKmPhxfU+0EdnN+XNtGbjfQgwZj43k8G3fyrDM/UdZww6xrWxmDkuz2eCZchqVeABjV5BpildOrUbBTqA==", "cpu": [ - "s390x" + "x64" ], + "dev": true, + "license": "MIT", "optional": true, "os": [ - "linux" + "openbsd" ], "engines": { - "glibc": ">=2.28", - "npm": ">=9.6.5", - "pnpm": ">=7.1.0", - "yarn": ">=3.2.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" + "node": ">=18" } }, - "node_modules/@img/sharp-libvips-linux-x64": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-x64/-/sharp-libvips-linux-x64-1.0.2.tgz", - "integrity": "sha512-E441q4Qdb+7yuyiADVi5J+44x8ctlrqn8XgkDTwr4qPJzWkaHwD489iZ4nGDgcuya4iMN3ULV6NwbhRZJ9Z7SQ==", + "node_modules/@esbuild/sunos-x64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.23.1.tgz", + "integrity": "sha512-RBRT2gqEl0IKQABT4XTj78tpk9v7ehp+mazn2HbUeZl1YMdaGAQqhapjGTCe7uw7y0frDi4gS0uHzhvpFuI1sA==", "cpu": [ "x64" ], + "dev": true, + "license": "MIT", "optional": true, "os": [ - "linux" + "sunos" ], "engines": { - "glibc": ">=2.26", - "npm": ">=9.6.5", - "pnpm": ">=7.1.0", - "yarn": ">=3.2.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" + "node": ">=18" } }, - "node_modules/@img/sharp-libvips-linuxmusl-arm64": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-arm64/-/sharp-libvips-linuxmusl-arm64-1.0.2.tgz", - "integrity": "sha512-3CAkndNpYUrlDqkCM5qhksfE+qSIREVpyoeHIU6jd48SJZViAmznoQQLAv4hVXF7xyUB9zf+G++e2v1ABjCbEQ==", + "node_modules/@esbuild/win32-arm64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.23.1.tgz", + "integrity": "sha512-4O+gPR5rEBe2FpKOVyiJ7wNDPA8nGzDuJ6gN4okSA1gEOYZ67N8JPk58tkWtdtPeLz7lBnY6I5L3jdsr3S+A6A==", "cpu": [ "arm64" ], + "dev": true, + "license": "MIT", "optional": true, "os": [ - "linux" + "win32" ], "engines": { - "musl": ">=1.2.2", - "npm": ">=9.6.5", - "pnpm": ">=7.1.0", - "yarn": ">=3.2.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" + "node": ">=18" } }, - "node_modules/@img/sharp-libvips-linuxmusl-x64": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-x64/-/sharp-libvips-linuxmusl-x64-1.0.2.tgz", - "integrity": "sha512-VI94Q6khIHqHWNOh6LLdm9s2Ry4zdjWJwH56WoiJU7NTeDwyApdZZ8c+SADC8OH98KWNQXnE01UdJ9CSfZvwZw==", + "node_modules/@esbuild/win32-ia32": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.23.1.tgz", + "integrity": "sha512-BcaL0Vn6QwCwre3Y717nVHZbAa4UBEigzFm6VdsVdT/MbZ38xoj1X9HPkZhbmaBGUD1W8vxAfffbDe8bA6AKnQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/win32-x64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.23.1.tgz", + "integrity": "sha512-BHpFFeslkWrXWyUPnbKm+xYYVYruCinGcftSBaa8zoF9hZO4BcSCFUvHVTtzpIY6YzUnYtuEhZ+C9iEXjxnasg==", "cpu": [ "x64" ], + "dev": true, + "license": "MIT", "optional": true, "os": [ - "linux" + "win32" ], "engines": { - "musl": ">=1.2.2", - "npm": ">=9.6.5", - "pnpm": ">=7.1.0", - "yarn": ">=3.2.0" + "node": ">=18" + } + }, + "node_modules/@eslint-community/eslint-utils": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz", + "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==", + "dev": true, + "license": "MIT", + "dependencies": { + "eslint-visitor-keys": "^3.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" + } + }, + "node_modules/@eslint-community/regexpp": { + "version": "4.11.0", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.11.0.tgz", + "integrity": "sha512-G/M/tIiMrTAxEWRfLfQJMmGNX28IxBg4PBz8XqQhqUHLFI6TL2htpIB1iQCj144V5ee/JaKyT9/WZ0MGZWfA7A==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^12.0.0 || ^14.0.0 || >=16.0.0" + } + }, + "node_modules/@eslint/eslintrc": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz", + "integrity": "sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^9.6.0", + "globals": "^13.19.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "minimatch": "^3.1.2", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@eslint/eslintrc/node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true, + "license": "Python-2.0" + }, + "node_modules/@eslint/eslintrc/node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dev": true, + "license": "MIT", + "dependencies": { + "argparse": "^2.0.1" }, - "funding": { - "url": "https://opencollective.com/libvips" + "bin": { + "js-yaml": "bin/js-yaml.js" } }, - "node_modules/@img/sharp-linux-arm": { - "version": "0.33.4", - "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm/-/sharp-linux-arm-0.33.4.tgz", - "integrity": "sha512-RUgBD1c0+gCYZGCCe6mMdTiOFS0Zc/XrN0fYd6hISIKcDUbAW5NtSQW9g/powkrXYm6Vzwd6y+fqmExDuCdHNQ==", - "cpu": [ - "arm" - ], - "optional": true, - "os": [ - "linux" - ], + "node_modules/@eslint/js": { + "version": "8.57.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.57.0.tgz", + "integrity": "sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==", + "dev": true, + "license": "MIT", "engines": { - "glibc": ">=2.28", - "node": "^18.17.0 || ^20.3.0 || >=21.0.0", - "npm": ">=9.6.5", - "pnpm": ">=7.1.0", - "yarn": ">=3.2.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" - }, - "optionalDependencies": { - "@img/sharp-libvips-linux-arm": "1.0.2" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, - "node_modules/@img/sharp-linux-arm64": { - "version": "0.33.4", - "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm64/-/sharp-linux-arm64-0.33.4.tgz", - "integrity": "sha512-2800clwVg1ZQtxwSoTlHvtm9ObgAax7V6MTAB/hDT945Tfyy3hVkmiHpeLPCKYqYR1Gcmv1uDZ3a4OFwkdBL7Q==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "glibc": ">=2.26", - "node": "^18.17.0 || ^20.3.0 || >=21.0.0", - "npm": ">=9.6.5", - "pnpm": ">=7.1.0", - "yarn": ">=3.2.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" - }, - "optionalDependencies": { - "@img/sharp-libvips-linux-arm64": "1.0.2" + "node_modules/@fastify/ajv-compiler": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/@fastify/ajv-compiler/-/ajv-compiler-3.6.0.tgz", + "integrity": "sha512-LwdXQJjmMD+GwLOkP7TVC68qa+pSSogeWWmznRJ/coyTcfe9qA05AHFSe1eZFwK6q+xVRpChnvFUkf1iYaSZsQ==", + "license": "MIT", + "dependencies": { + "ajv": "^8.11.0", + "ajv-formats": "^2.1.1", + "fast-uri": "^2.0.0" } }, - "node_modules/@img/sharp-linux-s390x": { - "version": "0.33.4", - "resolved": "https://registry.npmjs.org/@img/sharp-linux-s390x/-/sharp-linux-s390x-0.33.4.tgz", - "integrity": "sha512-h3RAL3siQoyzSoH36tUeS0PDmb5wINKGYzcLB5C6DIiAn2F3udeFAum+gj8IbA/82+8RGCTn7XW8WTFnqag4tQ==", - "cpu": [ - "s390x" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "glibc": ">=2.31", - "node": "^18.17.0 || ^20.3.0 || >=21.0.0", - "npm": ">=9.6.5", - "pnpm": ">=7.1.0", - "yarn": ">=3.2.0" + "node_modules/@fastify/ajv-compiler/node_modules/ajv": { + "version": "8.17.1", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.17.1.tgz", + "integrity": "sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==", + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.3", + "fast-uri": "^3.0.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2" }, "funding": { - "url": "https://opencollective.com/libvips" - }, - "optionalDependencies": { - "@img/sharp-libvips-linux-s390x": "1.0.2" + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" } }, - "node_modules/@img/sharp-linux-x64": { - "version": "0.33.4", - "resolved": "https://registry.npmjs.org/@img/sharp-linux-x64/-/sharp-linux-x64-0.33.4.tgz", - "integrity": "sha512-GoR++s0XW9DGVi8SUGQ/U4AeIzLdNjHka6jidVwapQ/JebGVQIpi52OdyxCNVRE++n1FCLzjDovJNozif7w/Aw==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "linux" - ], + "node_modules/@fastify/ajv-compiler/node_modules/ajv/node_modules/fast-uri": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.0.1.tgz", + "integrity": "sha512-MWipKbbYiYI0UC7cl8m/i/IWTqfC8YXsqjzybjddLsFjStroQzsHXkc73JutMvBiXmOvapk+axIl79ig5t55Bw==", + "license": "MIT" + }, + "node_modules/@fastify/ajv-compiler/node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "license": "MIT" + }, + "node_modules/@fastify/busboy": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/@fastify/busboy/-/busboy-2.1.1.tgz", + "integrity": "sha512-vBZP4NlzfOlerQTnba4aqZoMhE/a9HY7HRqoOPaETQcSQuWEIyZMHGfVu6w9wGtGK5fED5qRs2DteVCjOH60sA==", + "dev": true, + "license": "MIT", "engines": { - "glibc": ">=2.26", - "node": "^18.17.0 || ^20.3.0 || >=21.0.0", - "npm": ">=9.6.5", - "pnpm": ">=7.1.0", - "yarn": ">=3.2.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" - }, - "optionalDependencies": { - "@img/sharp-libvips-linux-x64": "1.0.2" + "node": ">=14" } }, - "node_modules/@img/sharp-linuxmusl-arm64": { - "version": "0.33.4", - "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-arm64/-/sharp-linuxmusl-arm64-0.33.4.tgz", - "integrity": "sha512-nhr1yC3BlVrKDTl6cO12gTpXMl4ITBUZieehFvMntlCXFzH2bvKG76tBL2Y/OqhupZt81pR7R+Q5YhJxW0rGgQ==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "musl": ">=1.2.2", - "node": "^18.17.0 || ^20.3.0 || >=21.0.0", - "npm": ">=9.6.5", - "pnpm": ">=7.1.0", - "yarn": ">=3.2.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" - }, - "optionalDependencies": { - "@img/sharp-libvips-linuxmusl-arm64": "1.0.2" + "node_modules/@fastify/error": { + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/@fastify/error/-/error-3.4.1.tgz", + "integrity": "sha512-wWSvph+29GR783IhmvdwWnN4bUxTD01Vm5Xad4i7i1VuAOItLvbPAb69sb0IQ2N57yprvhNIwAP5B6xfKTmjmQ==", + "license": "MIT" + }, + "node_modules/@fastify/fast-json-stringify-compiler": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/@fastify/fast-json-stringify-compiler/-/fast-json-stringify-compiler-4.3.0.tgz", + "integrity": "sha512-aZAXGYo6m22Fk1zZzEUKBvut/CIIQe/BapEORnxiD5Qr0kPHqqI69NtEMCme74h+at72sPhbkb4ZrLd1W3KRLA==", + "license": "MIT", + "dependencies": { + "fast-json-stringify": "^5.7.0" } }, - "node_modules/@img/sharp-linuxmusl-x64": { - "version": "0.33.4", - "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-x64/-/sharp-linuxmusl-x64-0.33.4.tgz", - "integrity": "sha512-uCPTku0zwqDmZEOi4ILyGdmW76tH7dm8kKlOIV1XC5cLyJ71ENAAqarOHQh0RLfpIpbV5KOpXzdU6XkJtS0daw==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "musl": ">=1.2.2", - "node": "^18.17.0 || ^20.3.0 || >=21.0.0", - "npm": ">=9.6.5", - "pnpm": ">=7.1.0", - "yarn": ">=3.2.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" - }, - "optionalDependencies": { - "@img/sharp-libvips-linuxmusl-x64": "1.0.2" + "node_modules/@fastify/merge-json-schemas": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@fastify/merge-json-schemas/-/merge-json-schemas-0.1.1.tgz", + "integrity": "sha512-fERDVz7topgNjtXsJTTW1JKLy0rhuLRcquYqNR9rF7OcVpCa2OVW49ZPDIhaRRCaUuvVxI+N416xUoF76HNSXA==", + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.3" } }, - "node_modules/@img/sharp-wasm32": { - "version": "0.33.4", - "resolved": "https://registry.npmjs.org/@img/sharp-wasm32/-/sharp-wasm32-0.33.4.tgz", - "integrity": "sha512-Bmmauh4sXUsUqkleQahpdNXKvo+wa1V9KhT2pDA4VJGKwnKMJXiSTGphn0gnJrlooda0QxCtXc6RX1XAU6hMnQ==", - "cpu": [ - "wasm32" - ], - "optional": true, + "node_modules/@headlessui/react": { + "version": "1.7.19", + "resolved": "https://registry.npmjs.org/@headlessui/react/-/react-1.7.19.tgz", + "integrity": "sha512-Ll+8q3OlMJfJbAKM/+/Y2q6PPYbryqNTXDbryx7SXLIDamkF6iQFbriYHga0dY44PvDhvvBWCx1Xj4U5+G4hOw==", + "license": "MIT", "dependencies": { - "@emnapi/runtime": "^1.1.1" + "@tanstack/react-virtual": "^3.0.0-beta.60", + "client-only": "^0.0.1" }, "engines": { - "node": "^18.17.0 || ^20.3.0 || >=21.0.0", - "npm": ">=9.6.5", - "pnpm": ">=7.1.0", - "yarn": ">=3.2.0" + "node": ">=10" }, - "funding": { - "url": "https://opencollective.com/libvips" + "peerDependencies": { + "react": "^16 || ^17 || ^18", + "react-dom": "^16 || ^17 || ^18" } }, - "node_modules/@img/sharp-win32-ia32": { - "version": "0.33.4", - "resolved": "https://registry.npmjs.org/@img/sharp-win32-ia32/-/sharp-win32-ia32-0.33.4.tgz", - "integrity": "sha512-99SJ91XzUhYHbx7uhK3+9Lf7+LjwMGQZMDlO/E/YVJ7Nc3lyDFZPGhjwiYdctoH2BOzW9+TnfqcaMKt0jHLdqw==", - "cpu": [ - "ia32" - ], - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": "^18.17.0 || ^20.3.0 || >=21.0.0", - "npm": ">=9.6.5", - "pnpm": ">=7.1.0", - "yarn": ">=3.2.0" + "node_modules/@humanwhocodes/config-array": { + "version": "0.11.14", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.14.tgz", + "integrity": "sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==", + "deprecated": "Use @eslint/config-array instead", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@humanwhocodes/object-schema": "^2.0.2", + "debug": "^4.3.1", + "minimatch": "^3.0.5" }, - "funding": { - "url": "https://opencollective.com/libvips" + "engines": { + "node": ">=10.10.0" } }, - "node_modules/@img/sharp-win32-x64": { - "version": "0.33.4", - "resolved": "https://registry.npmjs.org/@img/sharp-win32-x64/-/sharp-win32-x64-0.33.4.tgz", - "integrity": "sha512-3QLocdTRVIrFNye5YocZl+KKpYKP+fksi1QhmOArgx7GyhIbQp/WrJRu176jm8IxromS7RIkzMiMINVdBtC8Aw==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "win32" - ], + "node_modules/@humanwhocodes/module-importer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", + "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", + "dev": true, + "license": "Apache-2.0", "engines": { - "node": "^18.17.0 || ^20.3.0 || >=21.0.0", - "npm": ">=9.6.5", - "pnpm": ">=7.1.0", - "yarn": ">=3.2.0" + "node": ">=12.22" }, "funding": { - "url": "https://opencollective.com/libvips" + "type": "github", + "url": "https://github.com/sponsors/nzakas" } }, + "node_modules/@humanwhocodes/object-schema": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.3.tgz", + "integrity": "sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==", + "deprecated": "Use @eslint/object-schema instead", + "dev": true, + "license": "BSD-3-Clause" + }, "node_modules/@isaacs/cliui": { "version": "8.0.2", "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", "dev": true, + "license": "ISC", "dependencies": { "string-width": "^5.1.2", "string-width-cjs": "npm:string-width@^4.2.0", @@ -2686,6 +1667,7 @@ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", "dev": true, + "license": "MIT", "engines": { "node": ">=12" }, @@ -2698,6 +1680,7 @@ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", "dev": true, + "license": "MIT", "dependencies": { "ansi-regex": "^6.0.1" }, @@ -2713,6 +1696,7 @@ "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", "dev": true, + "license": "MIT", "dependencies": { "@jridgewell/set-array": "^1.2.1", "@jridgewell/sourcemap-codec": "^1.4.10", @@ -2727,6 +1711,7 @@ "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", "dev": true, + "license": "MIT", "engines": { "node": ">=6.0.0" } @@ -2736,21 +1721,24 @@ "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", "dev": true, + "license": "MIT", "engines": { "node": ">=6.0.0" } }, "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.4.15", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", - "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==", - "dev": true + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz", + "integrity": "sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==", + "dev": true, + "license": "MIT" }, "node_modules/@jridgewell/trace-mapping": { "version": "0.3.25", "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", "dev": true, + "license": "MIT", "dependencies": { "@jridgewell/resolve-uri": "^3.1.0", "@jridgewell/sourcemap-codec": "^1.4.14" @@ -2760,6 +1748,7 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/@manypkg/find-root/-/find-root-1.1.0.tgz", "integrity": "sha512-mki5uBvhHzO8kYYix/WRy2WX8S3B5wdVSc9D6KcU5lQNglP2yt58/VfLuAK49glRXChosY8ap2oJ1qgma3GUVA==", + "license": "MIT", "dependencies": { "@babel/runtime": "^7.5.5", "@types/node": "^12.7.1", @@ -2767,15 +1756,11 @@ "fs-extra": "^8.1.0" } }, - "node_modules/@manypkg/find-root/node_modules/@types/node": { - "version": "12.20.55", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", - "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" - }, "node_modules/@manypkg/find-root/node_modules/fs-extra": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", + "license": "MIT", "dependencies": { "graceful-fs": "^4.2.0", "jsonfile": "^4.0.0", @@ -2789,6 +1774,7 @@ "version": "1.1.3", "resolved": "https://registry.npmjs.org/@manypkg/get-packages/-/get-packages-1.1.3.tgz", "integrity": "sha512-fo+QhuU3qE/2TQMQmbVMqaQ6EWbMhi4ABWP+O4AM1NqPBuy0OrApV5LO6BrrgnhtAHS2NH6RrVk9OL181tTi8A==", + "license": "MIT", "dependencies": { "@babel/runtime": "^7.5.5", "@changesets/types": "^4.0.1", @@ -2801,12 +1787,14 @@ "node_modules/@manypkg/get-packages/node_modules/@changesets/types": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/@changesets/types/-/types-4.1.0.tgz", - "integrity": "sha512-LDQvVDv5Kb50ny2s25Fhm3d9QSZimsoUGBsUioj6MC3qbMUCuC8GPIvk/M6IvXx3lYhAs0lwWUQLb+VIEUCECw==" + "integrity": "sha512-LDQvVDv5Kb50ny2s25Fhm3d9QSZimsoUGBsUioj6MC3qbMUCuC8GPIvk/M6IvXx3lYhAs0lwWUQLb+VIEUCECw==", + "license": "MIT" }, "node_modules/@manypkg/get-packages/node_modules/fs-extra": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", + "license": "MIT", "dependencies": { "graceful-fs": "^4.2.0", "jsonfile": "^4.0.0", @@ -2820,6 +1808,7 @@ "version": "2.3.0", "resolved": "https://registry.npmjs.org/@mdx-js/mdx/-/mdx-2.3.0.tgz", "integrity": "sha512-jLuwRlz8DQfQNiUCJR50Y09CGPq3fLtmtUQfVrj79E0JWu3dvsVcxVIcfhR5h0iXu+/z++zDrYeiJqifRynJkA==", + "license": "MIT", "dependencies": { "@types/estree-jsx": "^1.0.0", "@types/mdx": "^2.0.0", @@ -2848,6 +1837,7 @@ "version": "4.1.2", "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-4.1.2.tgz", "integrity": "sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg==", + "license": "MIT", "dependencies": { "@types/unist": "^2.0.0", "unist-util-is": "^5.0.0", @@ -2862,6 +1852,7 @@ "version": "5.1.3", "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-5.1.3.tgz", "integrity": "sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==", + "license": "MIT", "dependencies": { "@types/unist": "^2.0.0", "unist-util-is": "^5.0.0" @@ -2875,6 +1866,7 @@ "version": "2.3.0", "resolved": "https://registry.npmjs.org/@mdx-js/react/-/react-2.3.0.tgz", "integrity": "sha512-zQH//gdOmuu7nt2oJR29vFhDv88oGPmVw6BggmrHeMI+xgEkp1B2dX9/bMBSYtK0dyLX/aOmesKS09g222K1/g==", + "license": "MIT", "dependencies": { "@types/mdx": "^2.0.0", "@types/react": ">=16" @@ -2891,13 +1883,15 @@ "version": "0.14.2", "resolved": "https://registry.npmjs.org/@microsoft/tsdoc/-/tsdoc-0.14.2.tgz", "integrity": "sha512-9b8mPpKrfeGRuhFH5iO1iwCLeIIsV6+H1sRfxbkoGXIyQE2BTsPd9zqSqQJ+pv5sJ/hT5M1zvOFL02MnEezFug==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/@microsoft/tsdoc-config": { "version": "0.16.2", "resolved": "https://registry.npmjs.org/@microsoft/tsdoc-config/-/tsdoc-config-0.16.2.tgz", "integrity": "sha512-OGiIzzoBLgWWR0UdRJX98oYO+XKGf7tiK4Zk6tQ/E4IJqGCe7dvkTvgDZV5cFJUzLGDOjeAXrnZoA6QkVySuxw==", "dev": true, + "license": "MIT", "dependencies": { "@microsoft/tsdoc": "0.14.2", "ajv": "~6.12.6", @@ -2910,6 +1904,7 @@ "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.19.0.tgz", "integrity": "sha512-rArEXAgsBG4UgRGcynxWIWKFvh/XZCcS8UJdHhwy91zwAvCZIbcs+vAbflgBnNjYMs/i/i+/Ux6IZhML1yPvxg==", "dev": true, + "license": "MIT", "dependencies": { "is-core-module": "^2.1.0", "path-parse": "^1.0.6" @@ -2919,33 +1914,38 @@ } }, "node_modules/@napi-rs/simple-git": { - "version": "0.1.16", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git/-/simple-git-0.1.16.tgz", - "integrity": "sha512-C5wRPw9waqL2jk3jEDeJv+f7ScuO3N0a39HVdyFLkwKxHH4Sya4ZbzZsu2JLi6eEqe7RuHipHL6mC7B2OfYZZw==", + "version": "0.1.19", + "resolved": "https://registry.npmjs.org/@napi-rs/simple-git/-/simple-git-0.1.19.tgz", + "integrity": "sha512-jMxvwzkKzd3cXo2EB9GM2ic0eYo2rP/BS6gJt6HnWbsDO1O8GSD4k7o2Cpr2YERtMpGF/MGcDfsfj2EbQPtrXw==", + "license": "MIT", "engines": { "node": ">= 10" }, "optionalDependencies": { - "@napi-rs/simple-git-android-arm-eabi": "0.1.16", - "@napi-rs/simple-git-android-arm64": "0.1.16", - "@napi-rs/simple-git-darwin-arm64": "0.1.16", - "@napi-rs/simple-git-darwin-x64": "0.1.16", - "@napi-rs/simple-git-linux-arm-gnueabihf": "0.1.16", - "@napi-rs/simple-git-linux-arm64-gnu": "0.1.16", - "@napi-rs/simple-git-linux-arm64-musl": "0.1.16", - "@napi-rs/simple-git-linux-x64-gnu": "0.1.16", - "@napi-rs/simple-git-linux-x64-musl": "0.1.16", - "@napi-rs/simple-git-win32-arm64-msvc": "0.1.16", - "@napi-rs/simple-git-win32-x64-msvc": "0.1.16" + "@napi-rs/simple-git-android-arm-eabi": "0.1.19", + "@napi-rs/simple-git-android-arm64": "0.1.19", + "@napi-rs/simple-git-darwin-arm64": "0.1.19", + "@napi-rs/simple-git-darwin-x64": "0.1.19", + "@napi-rs/simple-git-freebsd-x64": "0.1.19", + "@napi-rs/simple-git-linux-arm-gnueabihf": "0.1.19", + "@napi-rs/simple-git-linux-arm64-gnu": "0.1.19", + "@napi-rs/simple-git-linux-arm64-musl": "0.1.19", + "@napi-rs/simple-git-linux-powerpc64le-gnu": "0.1.19", + "@napi-rs/simple-git-linux-s390x-gnu": "0.1.19", + "@napi-rs/simple-git-linux-x64-gnu": "0.1.19", + "@napi-rs/simple-git-linux-x64-musl": "0.1.19", + "@napi-rs/simple-git-win32-arm64-msvc": "0.1.19", + "@napi-rs/simple-git-win32-x64-msvc": "0.1.19" } }, "node_modules/@napi-rs/simple-git-android-arm-eabi": { - "version": "0.1.16", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-android-arm-eabi/-/simple-git-android-arm-eabi-0.1.16.tgz", - "integrity": "sha512-dbrCL0Pl5KZG7x7tXdtVsA5CO6At5ohDX3myf5xIYn9kN4jDFxsocl8bNt6Vb/hZQoJd8fI+k5VlJt+rFhbdVw==", + "version": "0.1.19", + "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-android-arm-eabi/-/simple-git-android-arm-eabi-0.1.19.tgz", + "integrity": "sha512-XryEH/hadZ4Duk/HS/HC/cA1j0RHmqUGey3MsCf65ZS0VrWMqChXM/xlTPWuY5jfCc/rPubHaqI7DZlbexnX/g==", "cpu": [ "arm" ], + "license": "MIT", "optional": true, "os": [ "android" @@ -2955,12 +1955,13 @@ } }, "node_modules/@napi-rs/simple-git-android-arm64": { - "version": "0.1.16", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-android-arm64/-/simple-git-android-arm64-0.1.16.tgz", - "integrity": "sha512-xYz+TW5J09iK8SuTAKK2D5MMIsBUXVSs8nYp7HcMi8q6FCRO7yJj96YfP9PvKsc/k64hOyqGmL5DhCzY9Cu1FQ==", + "version": "0.1.19", + "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-android-arm64/-/simple-git-android-arm64-0.1.19.tgz", + "integrity": "sha512-ZQ0cPvY6nV9p7zrR9ZPo7hQBkDAcY/CHj3BjYNhykeUCiSNCrhvwX+WEeg5on8M1j4d5jcI/cwVG2FslfiByUg==", "cpu": [ "arm64" ], + "license": "MIT", "optional": true, "os": [ "android" @@ -2970,12 +1971,13 @@ } }, "node_modules/@napi-rs/simple-git-darwin-arm64": { - "version": "0.1.16", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-darwin-arm64/-/simple-git-darwin-arm64-0.1.16.tgz", - "integrity": "sha512-XfgsYqxhUE022MJobeiX563TJqyQyX4FmYCnqrtJwAfivESVeAJiH6bQIum8dDEYMHXCsG7nL8Ok0Dp8k2m42g==", + "version": "0.1.19", + "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-darwin-arm64/-/simple-git-darwin-arm64-0.1.19.tgz", + "integrity": "sha512-viZB5TYgjA1vH+QluhxZo0WKro3xBA+1xSzYx8mcxUMO5gnAoUMwXn0ZO/6Zy6pai+aGae+cj6XihGnrBRu3Pg==", "cpu": [ "arm64" ], + "license": "MIT", "optional": true, "os": [ "darwin" @@ -2985,12 +1987,13 @@ } }, "node_modules/@napi-rs/simple-git-darwin-x64": { - "version": "0.1.16", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-darwin-x64/-/simple-git-darwin-x64-0.1.16.tgz", - "integrity": "sha512-tkEVBhD6vgRCbeWsaAQqM3bTfpIVGeitamPPRVSbsq8qgzJ5Dx6ZedH27R7KSsA/uao7mZ3dsrNLXbu1Wy5MzA==", + "version": "0.1.19", + "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-darwin-x64/-/simple-git-darwin-x64-0.1.19.tgz", + "integrity": "sha512-6dNkzSNUV5X9rsVYQbpZLyJu4Gtkl2vNJ3abBXHX/Etk0ILG5ZasO3ncznIANZQpqcbn/QPHr49J2QYAXGoKJA==", "cpu": [ "x64" ], + "license": "MIT", "optional": true, "os": [ "darwin" @@ -2999,13 +2002,62 @@ "node": ">= 10" } }, + "node_modules/@napi-rs/simple-git-freebsd-x64": { + "version": "0.1.19", + "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-freebsd-x64/-/simple-git-freebsd-x64-0.1.19.tgz", + "integrity": "sha512-sB9krVIchzd20FjI2ZZ8FDsTSsXLBdnwJ6CpeVyrhXHnoszfcqxt49ocZHujAS9lMpXq7i2Nv1EXJmCy4KdhwA==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">= 10" + } + }, "node_modules/@napi-rs/simple-git-linux-arm-gnueabihf": { - "version": "0.1.16", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-arm-gnueabihf/-/simple-git-linux-arm-gnueabihf-0.1.16.tgz", - "integrity": "sha512-R6VAyNnp/yRaT7DV1Ao3r67SqTWDa+fNq2LrNy0Z8gXk2wB9ZKlrxFtLPE1WSpWknWtyRDLpRlsorh7Evk7+7w==", + "version": "0.1.19", + "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-arm-gnueabihf/-/simple-git-linux-arm-gnueabihf-0.1.19.tgz", + "integrity": "sha512-6HPn09lr9N1n5/XKfP8Np53g4fEXVxOFqNkS6rTH3Rm1lZHdazTRH62RggXLTguZwjcE+MvOLvoTIoR5kAS8+g==", + "cpu": [ + "arm" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@napi-rs/simple-git-linux-arm64-gnu": { + "version": "0.1.19", + "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-arm64-gnu/-/simple-git-linux-arm64-gnu-0.1.19.tgz", + "integrity": "sha512-G0gISckt4cVDp3oh5Z6PV3GHJrJO6Z8bIS+9xA7vTtKdqB1i5y0n3cSFLlzQciLzhr+CajFD27doW4lEyErQ/Q==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@napi-rs/simple-git-linux-arm64-musl": { + "version": "0.1.19", + "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-arm64-musl/-/simple-git-linux-arm64-musl-0.1.19.tgz", + "integrity": "sha512-OwTRF+H4IZYxmDFRi1IrLMfqbdIpvHeYbJl2X94NVsLVOY+3NUHvEzL3fYaVx5urBaMnIK0DD3wZLbcueWvxbA==", "cpu": [ - "arm" + "arm64" ], + "license": "MIT", "optional": true, "os": [ "linux" @@ -3014,13 +2066,14 @@ "node": ">= 10" } }, - "node_modules/@napi-rs/simple-git-linux-arm64-gnu": { - "version": "0.1.16", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-arm64-gnu/-/simple-git-linux-arm64-gnu-0.1.16.tgz", - "integrity": "sha512-LAGI0opFKw/HBMCV2qIBK3uWSEW9h4xd2ireZKLJy8DBPymX6NrWIamuxYNyCuACnFdPRxR4LaRFy4J5ZwuMdw==", + "node_modules/@napi-rs/simple-git-linux-powerpc64le-gnu": { + "version": "0.1.19", + "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-powerpc64le-gnu/-/simple-git-linux-powerpc64le-gnu-0.1.19.tgz", + "integrity": "sha512-p7zuNNVyzpRvkCt2RIGv9FX/WPcPbZ6/FRUgUTZkA2WU33mrbvNqSi4AOqCCl6mBvEd+EOw5NU4lS9ORRJvAEg==", "cpu": [ - "arm64" + "powerpc64le" ], + "license": "MIT", "optional": true, "os": [ "linux" @@ -3029,13 +2082,14 @@ "node": ">= 10" } }, - "node_modules/@napi-rs/simple-git-linux-arm64-musl": { - "version": "0.1.16", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-arm64-musl/-/simple-git-linux-arm64-musl-0.1.16.tgz", - "integrity": "sha512-I57Ph0F0Yn2KW93ep+V1EzKhACqX0x49vvSiapqIsdDA2PifdEWLc1LJarBolmK7NKoPqKmf6lAKKO9lhiZzkg==", + "node_modules/@napi-rs/simple-git-linux-s390x-gnu": { + "version": "0.1.19", + "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-s390x-gnu/-/simple-git-linux-s390x-gnu-0.1.19.tgz", + "integrity": "sha512-6N2vwJUPLiak8GLrS0a3is0gSb0UwI2CHOOqtvQxPmv+JVI8kn3vKiUscsktdDb0wGEPeZ8PvZs0y8UWix7K4g==", "cpu": [ - "arm64" + "s390x" ], + "license": "MIT", "optional": true, "os": [ "linux" @@ -3045,12 +2099,13 @@ } }, "node_modules/@napi-rs/simple-git-linux-x64-gnu": { - "version": "0.1.16", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-x64-gnu/-/simple-git-linux-x64-gnu-0.1.16.tgz", - "integrity": "sha512-AZYYFY2V7hlcQASPEOWyOa3e1skzTct9QPzz0LiDM3f/hCFY/wBaU2M6NC5iG3d2Kr38heuyFS/+JqxLm5WaKA==", + "version": "0.1.19", + "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-x64-gnu/-/simple-git-linux-x64-gnu-0.1.19.tgz", + "integrity": "sha512-61YfeO1J13WK7MalLgP3QlV6of2rWnVw1aqxWkAgy/lGxoOFSJ4Wid6ANVCEZk4tJpPX/XNeneqkUz5xpeb2Cw==", "cpu": [ "x64" ], + "license": "MIT", "optional": true, "os": [ "linux" @@ -3060,12 +2115,13 @@ } }, "node_modules/@napi-rs/simple-git-linux-x64-musl": { - "version": "0.1.16", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-x64-musl/-/simple-git-linux-x64-musl-0.1.16.tgz", - "integrity": "sha512-9TyMcYSBJwjT8jwjY9m24BZbu7ozyWTjsmYBYNtK3B0Um1Ov6jthSNneLVvouQ6x+k3Ow+00TiFh6bvmT00r8g==", + "version": "0.1.19", + "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-x64-musl/-/simple-git-linux-x64-musl-0.1.19.tgz", + "integrity": "sha512-cCTWNpMJnN3PrUBItWcs3dQKCydsIasbrS3laMzq8k7OzF93Zrp2LWDTPlLCO9brbBVpBzy2Qk5Xg9uAfe/Ukw==", "cpu": [ "x64" ], + "license": "MIT", "optional": true, "os": [ "linux" @@ -3075,12 +2131,13 @@ } }, "node_modules/@napi-rs/simple-git-win32-arm64-msvc": { - "version": "0.1.16", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-win32-arm64-msvc/-/simple-git-win32-arm64-msvc-0.1.16.tgz", - "integrity": "sha512-uslJ1WuAHCYJWui6xjsyT47SjX6KOHDtClmNO8hqKz1pmDSNY7AjyUY8HxvD1lK9bDnWwc4JYhikS9cxCqHybw==", + "version": "0.1.19", + "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-win32-arm64-msvc/-/simple-git-win32-arm64-msvc-0.1.19.tgz", + "integrity": "sha512-sWavb1BjeLKKBA+PbTsRSSzVNfb7V/dOpaJvkgR5d2kWFn/AHmCZHSSj/3nyZdYf0BdDC+DIvqk3daAEZ6QMVw==", "cpu": [ "arm64" ], + "license": "MIT", "optional": true, "os": [ "win32" @@ -3090,12 +2147,13 @@ } }, "node_modules/@napi-rs/simple-git-win32-x64-msvc": { - "version": "0.1.16", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-win32-x64-msvc/-/simple-git-win32-x64-msvc-0.1.16.tgz", - "integrity": "sha512-SoEaVeCZCDF1MP+M9bMSXsZWgEjk4On9GWADO5JOulvzR1bKjk0s9PMHwe/YztR9F0sJzrCxwtvBZowhSJsQPg==", + "version": "0.1.19", + "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-win32-x64-msvc/-/simple-git-win32-x64-msvc-0.1.19.tgz", + "integrity": "sha512-FmNuPoK4+qwaSCkp8lm3sJlrxk374enW+zCE5ZksXlZzj/9BDJAULJb5QUJ7o9Y8A/G+d8LkdQLPBE2Jaxe5XA==", "cpu": [ "x64" ], + "license": "MIT", "optional": true, "os": [ "win32" @@ -3125,24 +2183,37 @@ "link": true }, "node_modules/@next/env": { - "version": "14.3.0-canary.44", - "resolved": "https://registry.npmjs.org/@next/env/-/env-14.3.0-canary.44.tgz", - "integrity": "sha512-n7E0UKB5tAcEEVO9iLuWVdx5nf+39GEHBo4mrRrC9zqXdP9Jxve4nFWFeDTU5EBSzuH3Zy4DmoVNHUOspHLmyQ==" + "version": "14.2.7", + "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.7.tgz", + "integrity": "sha512-OTx9y6I3xE/eih+qtthppwLytmpJVPM5PPoJxChFsbjIEFXIayG0h/xLzefHGJviAa3Q5+Fd+9uYojKkHDKxoQ==", + "license": "MIT" }, "node_modules/@next/eslint-plugin-next": { - "version": "14.3.0-canary.44", - "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.3.0-canary.44.tgz", - "integrity": "sha512-coZFdAfpZ0dFQz3ldCl9jcrs5jqwBpB+UEJTLfOpt9KJrxVJC2ahaDL2UumfdoEvIUsI5fR/e1j/fgC402Wo8A==", + "version": "14.2.7", + "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.2.7.tgz", + "integrity": "sha512-+7xh142AdhZGjY9/L0iFo7mqRBMJHe+q+uOL+hto1Lfo9DeWCGcR6no4StlFbVSVcA6fQLKEX6y6qhMsSKbgNQ==", "dev": true, + "license": "MIT", "dependencies": { "glob": "10.3.10" } }, + "node_modules/@next/eslint-plugin-next/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, "node_modules/@next/eslint-plugin-next/node_modules/glob": { "version": "10.3.10", "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", "dev": true, + "license": "ISC", "dependencies": { "foreground-child": "^3.1.0", "jackspeak": "^2.3.5", @@ -3160,13 +2231,66 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/@next/eslint-plugin-next/node_modules/jackspeak": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.3.6.tgz", + "integrity": "sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==", + "dev": true, + "license": "BlueOak-1.0.0", + "dependencies": { + "@isaacs/cliui": "^8.0.2" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + }, + "optionalDependencies": { + "@pkgjs/parseargs": "^0.11.0" + } + }, + "node_modules/@next/eslint-plugin-next/node_modules/minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@next/eslint-plugin-next/node_modules/path-scurry": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz", + "integrity": "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==", + "dev": true, + "license": "BlueOak-1.0.0", + "dependencies": { + "lru-cache": "^10.2.0", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" + }, + "engines": { + "node": ">=16 || 14 >=14.18" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/@next/swc-darwin-arm64": { - "version": "14.3.0-canary.44", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.3.0-canary.44.tgz", - "integrity": "sha512-gooP4KXsw3DDZAlvjEJNyQsSacwPRJJ5f5wkrws1J17L/heUgZHX6G7vHnQgkAejyvfa5BhW2c9rlcPxOHNQqw==", + "version": "14.2.7", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.7.tgz", + "integrity": "sha512-UhZGcOyI9LE/tZL3h9rs/2wMZaaJKwnpAyegUVDGZqwsla6hMfeSj9ssBWQS9yA4UXun3pPhrFLVnw5KXZs3vw==", "cpu": [ "arm64" ], + "license": "MIT", "optional": true, "os": [ "darwin" @@ -3176,12 +2300,13 @@ } }, "node_modules/@next/swc-darwin-x64": { - "version": "14.3.0-canary.44", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.3.0-canary.44.tgz", - "integrity": "sha512-NbtsRFYzs8sU2VCMzqGjb4tdzhkQt1KcMB/ZqnHX5pPw5xtXqPXzBGLM0z3wHr5/vWlL4V22j8E7AGchE2TeXg==", + "version": "14.2.7", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.7.tgz", + "integrity": "sha512-ys2cUgZYRc+CbyDeLAaAdZgS7N1Kpyy+wo0b/gAj+SeOeaj0Lw/q+G1hp+DuDiDAVyxLBCJXEY/AkhDmtihUTA==", "cpu": [ "x64" ], + "license": "MIT", "optional": true, "os": [ "darwin" @@ -3191,12 +2316,13 @@ } }, "node_modules/@next/swc-linux-arm64-gnu": { - "version": "14.3.0-canary.44", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.3.0-canary.44.tgz", - "integrity": "sha512-ctGyGeHy/07TH82ZYuA74Xy0t8Zcq1xrMLTI9RUA8Dh4khf37RI7r9SHzAeqKmPGZJAPRyE6pwXtAlCg/TstjA==", + "version": "14.2.7", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.7.tgz", + "integrity": "sha512-2xoWtE13sUJ3qrC1lwE/HjbDPm+kBQYFkkiVECJWctRASAHQ+NwjMzgrfqqMYHfMxFb5Wws3w9PqzZJqKFdWcQ==", "cpu": [ "arm64" ], + "license": "MIT", "optional": true, "os": [ "linux" @@ -3206,12 +2332,13 @@ } }, "node_modules/@next/swc-linux-arm64-musl": { - "version": "14.3.0-canary.44", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.3.0-canary.44.tgz", - "integrity": "sha512-cX/jD3EnhIphZwRBureGSPV4GlQ7ueUKmne+5N2BsO6tHih0cnveyssropX1dTupU7aGti+22kPorPDY7BYNfQ==", + "version": "14.2.7", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.7.tgz", + "integrity": "sha512-+zJ1gJdl35BSAGpkCbfyiY6iRTaPrt3KTl4SF/B1NyELkqqnrNX6cp4IjjjxKpd64/7enI0kf6b9O1Uf3cL0pw==", "cpu": [ "arm64" ], + "license": "MIT", "optional": true, "os": [ "linux" @@ -3221,12 +2348,13 @@ } }, "node_modules/@next/swc-linux-x64-gnu": { - "version": "14.3.0-canary.44", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.3.0-canary.44.tgz", - "integrity": "sha512-2HPcwOxXBQj3WD5ezz78o/SJXXz9D4U5H7Mc4e0cTUMy/GGW4ysg2Ullwus+FVOmm2z8GAcNbEeqh71D/lAtww==", + "version": "14.2.7", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.7.tgz", + "integrity": "sha512-m6EBqrskeMUzykBrv0fDX/28lWIBGhMzOYaStp0ihkjzIYJiKUOzVYD1gULHc8XDf5EMSqoH/0/TRAgXqpQwmw==", "cpu": [ "x64" ], + "license": "MIT", "optional": true, "os": [ "linux" @@ -3236,12 +2364,13 @@ } }, "node_modules/@next/swc-linux-x64-musl": { - "version": "14.3.0-canary.44", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.3.0-canary.44.tgz", - "integrity": "sha512-UV9HUQenKZkrqbhRsB59X5KrMKaPUnXkbZmwLkjD2IieUgm5CswfXJ2+7JneopviwaR3k8eJMA2KV9uyA/3LpQ==", + "version": "14.2.7", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.7.tgz", + "integrity": "sha512-gUu0viOMvMlzFRz1r1eQ7Ql4OE+hPOmA7smfZAhn8vC4+0swMZaZxa9CSIozTYavi+bJNDZ3tgiSdMjmMzRJlQ==", "cpu": [ "x64" ], + "license": "MIT", "optional": true, "os": [ "linux" @@ -3251,12 +2380,13 @@ } }, "node_modules/@next/swc-win32-arm64-msvc": { - "version": "14.3.0-canary.44", - "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.3.0-canary.44.tgz", - "integrity": "sha512-Swrl7I7q4sw7iS6O2j5v/c5bLgHP+i4/z79XTzU2LDubMP7gL3eUqLhN1GAOO35q/j49Ysbsr3VUM14JCtGOkg==", + "version": "14.2.7", + "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.7.tgz", + "integrity": "sha512-PGbONHIVIuzWlYmLvuFKcj+8jXnLbx4WrlESYlVnEzDsa3+Q2hI1YHoXaSmbq0k4ZwZ7J6sWNV4UZfx1OeOlbQ==", "cpu": [ "arm64" ], + "license": "MIT", "optional": true, "os": [ "win32" @@ -3266,12 +2396,13 @@ } }, "node_modules/@next/swc-win32-ia32-msvc": { - "version": "14.3.0-canary.44", - "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.3.0-canary.44.tgz", - "integrity": "sha512-3KKbNG6EDMpAY9PP/Bv32ildjljC9vUwRbLrhBLa6l3TkD6n8xtlObNf9DMD0Fsa79VKHZKIkY1EvCn/7xlj5A==", + "version": "14.2.7", + "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.7.tgz", + "integrity": "sha512-BiSY5umlx9ed5RQDoHcdbuKTUkuFORDqzYKPHlLeS+STUWQKWziVOn3Ic41LuTBvqE0TRJPKpio9GSIblNR+0w==", "cpu": [ "ia32" ], + "license": "MIT", "optional": true, "os": [ "win32" @@ -3281,12 +2412,13 @@ } }, "node_modules/@next/swc-win32-x64-msvc": { - "version": "14.3.0-canary.44", - "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.3.0-canary.44.tgz", - "integrity": "sha512-pDD9g/tTI/ihOP4c8wy5E0dRz8QUy2/7uAVyW11MIkroA4A4/cWa58PQNW5ByhvySPTcf9trnlaVPa2mdxBMMA==", + "version": "14.2.7", + "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.7.tgz", + "integrity": "sha512-pxsI23gKWRt/SPHFkDEsP+w+Nd7gK37Hpv0ngc5HpWy2e7cKx9zR/+Q2ptAUqICNTecAaGWvmhway7pj/JLEWA==", "cpu": [ "x64" ], + "license": "MIT", "optional": true, "os": [ "win32" @@ -3300,6 +2432,7 @@ "resolved": "https://registry.npmjs.org/@nicolo-ribaudo/eslint-scope-5-internals/-/eslint-scope-5-internals-5.1.1-v1.tgz", "integrity": "sha512-54/JRvkLIzzDWshCWfuhadfrfZVPiElY8Fcgmg1HroEly/EDSszzhBAsarCux+D/kOslTRquNzuyGSmUSTTHGg==", "dev": true, + "license": "MIT", "dependencies": { "eslint-scope": "5.1.1" } @@ -3309,6 +2442,7 @@ "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", "dev": true, + "license": "BSD-2-Clause", "dependencies": { "esrecurse": "^4.3.0", "estraverse": "^4.1.1" @@ -3322,6 +2456,7 @@ "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", "dev": true, + "license": "BSD-2-Clause", "engines": { "node": ">=4.0" } @@ -3330,6 +2465,7 @@ "version": "2.1.5", "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "license": "MIT", "dependencies": { "@nodelib/fs.stat": "2.0.5", "run-parallel": "^1.1.9" @@ -3342,6 +2478,7 @@ "version": "2.0.5", "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "license": "MIT", "engines": { "node": ">= 8" } @@ -3350,6 +2487,7 @@ "version": "1.2.8", "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "license": "MIT", "dependencies": { "@nodelib/fs.scandir": "2.1.5", "fastq": "^1.6.0" @@ -3358,11 +2496,22 @@ "node": ">= 8" } }, + "node_modules/@nolyfill/is-core-module": { + "version": "1.0.39", + "resolved": "https://registry.npmjs.org/@nolyfill/is-core-module/-/is-core-module-1.0.39.tgz", + "integrity": "sha512-nn5ozdjYQpUCZlWGuxcJY/KpxkWQs4DcbMCmKojjyrYDEAGy4Ce19NN4v5MduafTwJlbKc99UA8YhSVqq9yPZA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12.4.0" + } + }, "node_modules/@pkgjs/parseargs": { "version": "0.11.0", "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", "dev": true, + "license": "MIT", "optional": true, "engines": { "node": ">=14" @@ -3373,6 +2522,7 @@ "resolved": "https://registry.npmjs.org/@pkgr/core/-/core-0.1.1.tgz", "integrity": "sha512-cq8o4cWH0ibXh9VGi5P20Tu9XF/0fFXl9EUinr9QfTM7a7p0oTA4iJRCQWppXR1Pg8dSM0UCItCkPwsk9qWWYA==", "dev": true, + "license": "MIT", "engines": { "node": "^12.20.0 || ^14.18.0 || >=16.0.0" }, @@ -3385,6 +2535,7 @@ "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.46.1.tgz", "integrity": "sha512-Fq6SwLujA/DOIvNC2EL/SojJnkKf/rAwJ//APpJJHRyMi1PdKrY3Az+4XNQ51N4RTbItbIByQ0jgd1tayq1aeA==", "devOptional": true, + "license": "Apache-2.0", "dependencies": { "playwright": "1.46.1" }, @@ -3400,6 +2551,7 @@ "resolved": "https://registry.npmjs.org/@pm2/agent/-/agent-2.0.4.tgz", "integrity": "sha512-n7WYvvTJhHLS2oBb1PjOtgLpMhgImOq8sXkPBw6smeg9LJBWZjiEgPKOpR8mn9UJZsB5P3W4V/MyvNnp31LKeA==", "dev": true, + "license": "AGPL-3.0", "dependencies": { "async": "~3.2.0", "chalk": "~3.0.0", @@ -3421,6 +2573,7 @@ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, + "license": "MIT", "dependencies": { "color-convert": "^2.0.1" }, @@ -3436,6 +2589,7 @@ "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", "dev": true, + "license": "MIT", "dependencies": { "ansi-styles": "^4.1.0", "supports-color": "^7.1.0" @@ -3449,6 +2603,7 @@ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, + "license": "MIT", "dependencies": { "color-name": "~1.1.4" }, @@ -3460,19 +2615,22 @@ "version": "1.1.4", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/@pm2/agent/node_modules/dayjs": { "version": "1.8.36", "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.8.36.tgz", "integrity": "sha512-3VmRXEtw7RZKAf+4Tv1Ym9AGeo8r8+CjDi26x+7SYQil1UqtqdaokhzoEJohqlzt0m5kacJSDhJQkG/LWhpRBw==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/@pm2/agent/node_modules/has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } @@ -3482,6 +2640,7 @@ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", "dev": true, + "license": "ISC", "dependencies": { "yallist": "^4.0.0" }, @@ -3494,6 +2653,7 @@ "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", "dev": true, + "license": "ISC", "dependencies": { "lru-cache": "^6.0.0" }, @@ -3509,6 +2669,7 @@ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, + "license": "MIT", "dependencies": { "has-flag": "^4.0.0" }, @@ -3521,6 +2682,7 @@ "resolved": "https://registry.npmjs.org/@pm2/io/-/io-6.0.1.tgz", "integrity": "sha512-KiA+shC6sULQAr9mGZ1pg+6KVW9MF8NpG99x26Lf/082/Qy8qsTCtnJy+HQReW1A9Rdf0C/404cz0RZGZro+IA==", "dev": true, + "license": "Apache-2", "dependencies": { "async": "~2.6.1", "debug": "~4.3.1", @@ -3540,6 +2702,7 @@ "resolved": "https://registry.npmjs.org/async/-/async-2.6.4.tgz", "integrity": "sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==", "dev": true, + "license": "MIT", "dependencies": { "lodash": "^4.17.14" } @@ -3548,13 +2711,15 @@ "version": "6.4.9", "resolved": "https://registry.npmjs.org/eventemitter2/-/eventemitter2-6.4.9.tgz", "integrity": "sha512-JEPTiaOt9f04oa6NOkc4aH+nVp5I3wEjpHbIPqfgCdD5v5bUzy7xQqwcVO2aDQgOWhI28da57HksMrzK9HlRxg==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/@pm2/io/node_modules/lru-cache": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", "dev": true, + "license": "ISC", "dependencies": { "yallist": "^4.0.0" }, @@ -3567,6 +2732,7 @@ "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", "dev": true, + "license": "ISC", "dependencies": { "lru-cache": "^6.0.0" }, @@ -3581,19 +2747,22 @@ "version": "3.0.7", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/@pm2/io/node_modules/tslib": { "version": "1.9.3", "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.9.3.tgz", "integrity": "sha512-4krF8scpejhaOgqzBEcGM7yDIEfi0/8+8zDRZhNZZ2kjmHJ4hv3zCbQWxoJGz1iw5U0Jl0nma13xzHXcncMavQ==", - "dev": true + "dev": true, + "license": "Apache-2.0" }, "node_modules/@pm2/js-api": { "version": "0.8.0", "resolved": "https://registry.npmjs.org/@pm2/js-api/-/js-api-0.8.0.tgz", "integrity": "sha512-nmWzrA/BQZik3VBz+npRcNIu01kdBhWL0mxKmP1ciF/gTcujPTQqt027N9fc1pK9ERM8RipFhymw7RcmCyOEYA==", "dev": true, + "license": "Apache-2", "dependencies": { "async": "^2.6.3", "debug": "~4.3.1", @@ -3610,6 +2779,7 @@ "resolved": "https://registry.npmjs.org/async/-/async-2.6.4.tgz", "integrity": "sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==", "dev": true, + "license": "MIT", "dependencies": { "lodash": "^4.17.14" } @@ -3618,13 +2788,15 @@ "version": "6.4.9", "resolved": "https://registry.npmjs.org/eventemitter2/-/eventemitter2-6.4.9.tgz", "integrity": "sha512-JEPTiaOt9f04oa6NOkc4aH+nVp5I3wEjpHbIPqfgCdD5v5bUzy7xQqwcVO2aDQgOWhI28da57HksMrzK9HlRxg==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/@pm2/pm2-version-check": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/@pm2/pm2-version-check/-/pm2-version-check-1.0.4.tgz", "integrity": "sha512-SXsM27SGH3yTWKc2fKR4SYNxsmnvuBQ9dd6QHtEWmiZ/VqaOYPAIlS8+vMcn27YLtAEBGvNRSh3TPNvtjZgfqA==", "dev": true, + "license": "MIT", "dependencies": { "debug": "^4.3.1" } @@ -3633,6 +2805,7 @@ "version": "2.11.8", "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.8.tgz", "integrity": "sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==", + "license": "MIT", "funding": { "type": "opencollective", "url": "https://opencollective.com/popperjs" @@ -3642,6 +2815,7 @@ "version": "1.2.0", "resolved": "https://registry.npmjs.org/@redis/bloom/-/bloom-1.2.0.tgz", "integrity": "sha512-HG2DFjYKbpNmVXsa0keLHp/3leGJz1mjh09f2RLGGLQZzSHpkmZWuwJbAvo3QcRY8p80m5+ZdXZdYOSBLlp7Cg==", + "license": "MIT", "peerDependencies": { "@redis/client": "^1.0.0" } @@ -3650,6 +2824,7 @@ "version": "1.6.0", "resolved": "https://registry.npmjs.org/@redis/client/-/client-1.6.0.tgz", "integrity": "sha512-aR0uffYI700OEEH4gYnitAnv3vzVGXCFvYfdpu/CJKvk4pHfLPEy/JSZyrpQ+15WhXe1yJRXLtfQ84s4mEXnPg==", + "license": "MIT", "dependencies": { "cluster-key-slot": "1.1.2", "generic-pool": "3.9.0", @@ -3663,6 +2838,7 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/@redis/graph/-/graph-1.1.1.tgz", "integrity": "sha512-FEMTcTHZozZciLRl6GiiIB4zGm5z5F3F6a6FZCyrfxdKOhFlGkiAqlexWMBzCi4DcRoyiOsuLfW+cjlGWyExOw==", + "license": "MIT", "peerDependencies": { "@redis/client": "^1.0.0" } @@ -3671,6 +2847,7 @@ "version": "1.0.7", "resolved": "https://registry.npmjs.org/@redis/json/-/json-1.0.7.tgz", "integrity": "sha512-6UyXfjVaTBTJtKNG4/9Z8PSpKE6XgSyEb8iwaqDcy+uKrd/DGYHTWkUdnQDyzm727V7p21WUMhsqz5oy65kPcQ==", + "license": "MIT", "peerDependencies": { "@redis/client": "^1.0.0" } @@ -3679,6 +2856,7 @@ "version": "1.2.0", "resolved": "https://registry.npmjs.org/@redis/search/-/search-1.2.0.tgz", "integrity": "sha512-tYoDBbtqOVigEDMAcTGsRlMycIIjwMCgD8eR2t0NANeQmgK/lvxNAvYyb6bZDD4frHRhIHkJu2TBRvB0ERkOmw==", + "license": "MIT", "peerDependencies": { "@redis/client": "^1.0.0" } @@ -3687,6 +2865,7 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/@redis/time-series/-/time-series-1.1.0.tgz", "integrity": "sha512-c1Q99M5ljsIuc4YdaCwfUEXsofakb9c8+Zse2qxTadu8TalLXuAESzLvFAvNVbkmSlvlzIQOLpBCmWI9wTOt+g==", + "license": "MIT", "peerDependencies": { "@redis/client": "^1.0.0" } @@ -3704,238 +2883,266 @@ "link": true }, "node_modules/@rollup/rollup-android-arm-eabi": { - "version": "4.19.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.19.0.tgz", - "integrity": "sha512-JlPfZ/C7yn5S5p0yKk7uhHTTnFlvTgLetl2VxqE518QgyM7C9bSfFTYvB/Q/ftkq0RIPY4ySxTz+/wKJ/dXC0w==", + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.21.2.tgz", + "integrity": "sha512-fSuPrt0ZO8uXeS+xP3b+yYTCBUd05MoSp2N/MFOgjhhUhMmchXlpTQrTpI8T+YAwAQuK7MafsCOxW7VrPMrJcg==", "cpu": [ "arm" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "android" ] }, "node_modules/@rollup/rollup-android-arm64": { - "version": "4.19.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.19.0.tgz", - "integrity": "sha512-RDxUSY8D1tWYfn00DDi5myxKgOk6RvWPxhmWexcICt/MEC6yEMr4HNCu1sXXYLw8iAsg0D44NuU+qNq7zVWCrw==", + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.21.2.tgz", + "integrity": "sha512-xGU5ZQmPlsjQS6tzTTGwMsnKUtu0WVbl0hYpTPauvbRAnmIvpInhJtgjj3mcuJpEiuUw4v1s4BimkdfDWlh7gA==", "cpu": [ "arm64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "android" ] }, "node_modules/@rollup/rollup-darwin-arm64": { - "version": "4.19.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.19.0.tgz", - "integrity": "sha512-emvKHL4B15x6nlNTBMtIaC9tLPRpeA5jMvRLXVbl/W9Ie7HhkrE7KQjvgS9uxgatL1HmHWDXk5TTS4IaNJxbAA==", + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.21.2.tgz", + "integrity": "sha512-99AhQ3/ZMxU7jw34Sq8brzXqWH/bMnf7ZVhvLk9QU2cOepbQSVTns6qoErJmSiAvU3InRqC2RRZ5ovh1KN0d0Q==", "cpu": [ "arm64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "darwin" ] }, "node_modules/@rollup/rollup-darwin-x64": { - "version": "4.19.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.19.0.tgz", - "integrity": "sha512-fO28cWA1dC57qCd+D0rfLC4VPbh6EOJXrreBmFLWPGI9dpMlER2YwSPZzSGfq11XgcEpPukPTfEVFtw2q2nYJg==", + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.21.2.tgz", + "integrity": "sha512-ZbRaUvw2iN/y37x6dY50D8m2BnDbBjlnMPotDi/qITMJ4sIxNY33HArjikDyakhSv0+ybdUxhWxE6kTI4oX26w==", "cpu": [ "x64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "darwin" ] }, "node_modules/@rollup/rollup-linux-arm-gnueabihf": { - "version": "4.19.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.19.0.tgz", - "integrity": "sha512-2Rn36Ubxdv32NUcfm0wB1tgKqkQuft00PtM23VqLuCUR4N5jcNWDoV5iBC9jeGdgS38WK66ElncprqgMUOyomw==", + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.21.2.tgz", + "integrity": "sha512-ztRJJMiE8nnU1YFcdbd9BcH6bGWG1z+jP+IPW2oDUAPxPjo9dverIOyXz76m6IPA6udEL12reYeLojzW2cYL7w==", "cpu": [ "arm" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "linux" ] }, "node_modules/@rollup/rollup-linux-arm-musleabihf": { - "version": "4.19.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.19.0.tgz", - "integrity": "sha512-gJuzIVdq/X1ZA2bHeCGCISe0VWqCoNT8BvkQ+BfsixXwTOndhtLUpOg0A1Fcx/+eA6ei6rMBzlOz4JzmiDw7JQ==", + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.21.2.tgz", + "integrity": "sha512-flOcGHDZajGKYpLV0JNc0VFH361M7rnV1ee+NTeC/BQQ1/0pllYcFmxpagltANYt8FYf9+kL6RSk80Ziwyhr7w==", "cpu": [ "arm" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "linux" ] }, "node_modules/@rollup/rollup-linux-arm64-gnu": { - "version": "4.19.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.19.0.tgz", - "integrity": "sha512-0EkX2HYPkSADo9cfeGFoQ7R0/wTKb7q6DdwI4Yn/ULFE1wuRRCHybxpl2goQrx4c/yzK3I8OlgtBu4xvted0ug==", + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.21.2.tgz", + "integrity": "sha512-69CF19Kp3TdMopyteO/LJbWufOzqqXzkrv4L2sP8kfMaAQ6iwky7NoXTp7bD6/irKgknDKM0P9E/1l5XxVQAhw==", "cpu": [ "arm64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "linux" ] }, "node_modules/@rollup/rollup-linux-arm64-musl": { - "version": "4.19.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.19.0.tgz", - "integrity": "sha512-GlIQRj9px52ISomIOEUq/IojLZqzkvRpdP3cLgIE1wUWaiU5Takwlzpz002q0Nxxr1y2ZgxC2obWxjr13lvxNQ==", + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.21.2.tgz", + "integrity": "sha512-48pD/fJkTiHAZTnZwR0VzHrao70/4MlzJrq0ZsILjLW/Ab/1XlVUStYyGt7tdyIiVSlGZbnliqmult/QGA2O2w==", "cpu": [ "arm64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "linux" ] }, "node_modules/@rollup/rollup-linux-powerpc64le-gnu": { - "version": "4.19.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.19.0.tgz", - "integrity": "sha512-N6cFJzssruDLUOKfEKeovCKiHcdwVYOT1Hs6dovDQ61+Y9n3Ek4zXvtghPPelt6U0AH4aDGnDLb83uiJMkWYzQ==", + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.21.2.tgz", + "integrity": "sha512-cZdyuInj0ofc7mAQpKcPR2a2iu4YM4FQfuUzCVA2u4HI95lCwzjoPtdWjdpDKyHxI0UO82bLDoOaLfpZ/wviyQ==", "cpu": [ "ppc64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "linux" ] }, "node_modules/@rollup/rollup-linux-riscv64-gnu": { - "version": "4.19.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.19.0.tgz", - "integrity": "sha512-2DnD3mkS2uuam/alF+I7M84koGwvn3ZVD7uG+LEWpyzo/bq8+kKnus2EVCkcvh6PlNB8QPNFOz6fWd5N8o1CYg==", + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.21.2.tgz", + "integrity": "sha512-RL56JMT6NwQ0lXIQmMIWr1SW28z4E4pOhRRNqwWZeXpRlykRIlEpSWdsgNWJbYBEWD84eocjSGDu/XxbYeCmwg==", "cpu": [ "riscv64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "linux" ] }, "node_modules/@rollup/rollup-linux-s390x-gnu": { - "version": "4.19.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.19.0.tgz", - "integrity": "sha512-D6pkaF7OpE7lzlTOFCB2m3Ngzu2ykw40Nka9WmKGUOTS3xcIieHe82slQlNq69sVB04ch73thKYIWz/Ian8DUA==", + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.21.2.tgz", + "integrity": "sha512-PMxkrWS9z38bCr3rWvDFVGD6sFeZJw4iQlhrup7ReGmfn7Oukrr/zweLhYX6v2/8J6Cep9IEA/SmjXjCmSbrMQ==", "cpu": [ "s390x" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "linux" ] }, "node_modules/@rollup/rollup-linux-x64-gnu": { - "version": "4.19.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.19.0.tgz", - "integrity": "sha512-HBndjQLP8OsdJNSxpNIN0einbDmRFg9+UQeZV1eiYupIRuZsDEoeGU43NQsS34Pp166DtwQOnpcbV/zQxM+rWA==", + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.21.2.tgz", + "integrity": "sha512-B90tYAUoLhU22olrafY3JQCFLnT3NglazdwkHyxNDYF/zAxJt5fJUB/yBoWFoIQ7SQj+KLe3iL4BhOMa9fzgpw==", "cpu": [ "x64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "linux" ] }, "node_modules/@rollup/rollup-linux-x64-musl": { - "version": "4.19.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.19.0.tgz", - "integrity": "sha512-HxfbvfCKJe/RMYJJn0a12eiOI9OOtAUF4G6ozrFUK95BNyoJaSiBjIOHjZskTUffUrB84IPKkFG9H9nEvJGW6A==", + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.21.2.tgz", + "integrity": "sha512-7twFizNXudESmC9oneLGIUmoHiiLppz/Xs5uJQ4ShvE6234K0VB1/aJYU3f/4g7PhssLGKBVCC37uRkkOi8wjg==", "cpu": [ "x64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "linux" ] }, "node_modules/@rollup/rollup-win32-arm64-msvc": { - "version": "4.19.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.19.0.tgz", - "integrity": "sha512-HxDMKIhmcguGTiP5TsLNolwBUK3nGGUEoV/BO9ldUBoMLBssvh4J0X8pf11i1fTV7WShWItB1bKAKjX4RQeYmg==", + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.21.2.tgz", + "integrity": "sha512-9rRero0E7qTeYf6+rFh3AErTNU1VCQg2mn7CQcI44vNUWM9Ze7MSRS/9RFuSsox+vstRt97+x3sOhEey024FRQ==", "cpu": [ "arm64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "win32" ] }, "node_modules/@rollup/rollup-win32-ia32-msvc": { - "version": "4.19.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.19.0.tgz", - "integrity": "sha512-xItlIAZZaiG/u0wooGzRsx11rokP4qyc/79LkAOdznGRAbOFc+SfEdfUOszG1odsHNgwippUJavag/+W/Etc6Q==", + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.21.2.tgz", + "integrity": "sha512-5rA4vjlqgrpbFVVHX3qkrCo/fZTj1q0Xxpg+Z7yIo3J2AilW7t2+n6Q8Jrx+4MrYpAnjttTYF8rr7bP46BPzRw==", "cpu": [ "ia32" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "win32" ] }, "node_modules/@rollup/rollup-win32-x64-msvc": { - "version": "4.19.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.19.0.tgz", - "integrity": "sha512-xNo5fV5ycvCCKqiZcpB65VMR11NJB+StnxHz20jdqRAktfdfzhgjTiJ2doTDQE/7dqGaV5I7ZGqKpgph6lCIag==", + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.21.2.tgz", + "integrity": "sha512-6UUxd0+SKomjdzuAcp+HAmxw1FlGBnl1v2yEPSabtx4lBfdXHDVsW7+lQkgz9cNFJGY3AWR7+V8P5BqkD9L9nA==", "cpu": [ "x64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "win32" ] }, + "node_modules/@rtsao/scc": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@rtsao/scc/-/scc-1.1.0.tgz", + "integrity": "sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g==", + "dev": true, + "license": "MIT" + }, "node_modules/@rushstack/eslint-patch": { - "version": "1.10.3", - "resolved": "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.10.3.tgz", - "integrity": "sha512-qC/xYId4NMebE6w/V33Fh9gWxLgURiNYgVNObbJl2LZv0GUUItCcCqC5axQSwRaAgaxl2mELq1rMzlswaQ0Zxg==", - "dev": true + "version": "1.10.4", + "resolved": "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.10.4.tgz", + "integrity": "sha512-WJgX9nzTqknM393q1QJDJmoW28kUfEnybeTfVNcNAPnIx210RXm2DiXiHzfNPJNIUUb1tJnz/l4QGtJ30PgWmA==", + "dev": true, + "license": "MIT" }, "node_modules/@swc/counter": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/@swc/counter/-/counter-0.1.3.tgz", - "integrity": "sha512-e2BR4lsJkkRlKZ/qCHPw9ZaSxc0MVUd7gtbtaB7aMvHeJVYe8sOB8DBZkP2DtISHGSku9sCK6T6cnY0CtXrOCQ==" + "integrity": "sha512-e2BR4lsJkkRlKZ/qCHPw9ZaSxc0MVUd7gtbtaB7aMvHeJVYe8sOB8DBZkP2DtISHGSku9sCK6T6cnY0CtXrOCQ==", + "license": "Apache-2.0" }, "node_modules/@swc/helpers": { - "version": "0.5.11", - "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.11.tgz", - "integrity": "sha512-YNlnKRWF2sVojTpIyzwou9XoTNbzbzONwRhOoniEioF1AtaitTvVZblaQRrAzChWQ1bLYyYSWzM18y4WwgzJ+A==", + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.5.tgz", + "integrity": "sha512-KGYxvIOXcceOAbEk4bi/dVLEK9z8sZ0uBB3Il5b1rhfClSpcX0yfRO0KmTkqR2cnQDymwLB+25ZyMzICg/cm/A==", + "license": "Apache-2.0", "dependencies": { + "@swc/counter": "^0.1.3", "tslib": "^2.4.0" } }, "node_modules/@tanstack/react-virtual": { - "version": "3.5.1", - "resolved": "https://registry.npmjs.org/@tanstack/react-virtual/-/react-virtual-3.5.1.tgz", - "integrity": "sha512-jIsuhfgy8GqA67PdWqg73ZB2LFE+HD9hjWL1L6ifEIZVyZVAKpYmgUG4WsKQ005aEyImJmbuimPiEvc57IY0Aw==", + "version": "3.10.7", + "resolved": "https://registry.npmjs.org/@tanstack/react-virtual/-/react-virtual-3.10.7.tgz", + "integrity": "sha512-yeP+M0G8D+15ZFPivpuQ5hoM4Fa/PzERBx8P8EGcfEsXX3JOb9G9UUrqc47ZXAxvK+YqzM9T5qlJUYUFOwCZJw==", + "license": "MIT", "dependencies": { - "@tanstack/virtual-core": "3.5.1" + "@tanstack/virtual-core": "3.10.7" }, "funding": { "type": "github", @@ -3947,9 +3154,10 @@ } }, "node_modules/@tanstack/virtual-core": { - "version": "3.5.1", - "resolved": "https://registry.npmjs.org/@tanstack/virtual-core/-/virtual-core-3.5.1.tgz", - "integrity": "sha512-046+AUSiDru/V9pajE1du8WayvBKeCvJ2NmKPy/mR8/SbKKrqmSbj7LJBfXE+nSq4f5TBXvnCzu0kcYebI9WdQ==", + "version": "3.10.7", + "resolved": "https://registry.npmjs.org/@tanstack/virtual-core/-/virtual-core-3.10.7.tgz", + "integrity": "sha512-ND5dfsU0n9F4gROzwNNDJmg6y8n9pI8YWxtgbfJ5UcNn7Hx+MxEXtXcQ189tS7sh8pmCObgz2qSiyRKTZxT4dg==", + "license": "MIT", "funding": { "type": "github", "url": "https://github.com/sponsors/tannerlinsley" @@ -3959,6 +3167,7 @@ "version": "0.0.5", "resolved": "https://registry.npmjs.org/@theguild/remark-mermaid/-/remark-mermaid-0.0.5.tgz", "integrity": "sha512-e+ZIyJkEv9jabI4m7q29wZtZv+2iwPGsXJ2d46Zi7e+QcFudiyuqhLhHG/3gX3ZEB+hxTch+fpItyMS8jwbIcw==", + "license": "MIT", "dependencies": { "mermaid": "^10.2.2", "unist-util-visit": "^5.0.0" @@ -3971,6 +3180,7 @@ "version": "0.2.1", "resolved": "https://registry.npmjs.org/@theguild/remark-npm2yarn/-/remark-npm2yarn-0.2.1.tgz", "integrity": "sha512-jUTFWwDxtLEFtGZh/TW/w30ySaDJ8atKWH8dq2/IiQF61dPrGfETpl0WxD0VdBfuLOeU14/kop466oBSRO/5CA==", + "license": "MIT", "dependencies": { "npm-to-yarn": "^2.1.0", "unist-util-visit": "^5.0.0" @@ -3980,12 +3190,14 @@ "version": "0.23.0", "resolved": "https://registry.npmjs.org/@tootallnate/quickjs-emscripten/-/quickjs-emscripten-0.23.0.tgz", "integrity": "sha512-C5Mc6rdnsaJDjO3UpGW/CQTHtCKaYlScZTly4JIu97Jxo/odCiH0ITnDXSJPTOrEKk/ycSZ0AOgTmkDtkOsvIA==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/@types/acorn": { "version": "4.0.6", "resolved": "https://registry.npmjs.org/@types/acorn/-/acorn-4.0.6.tgz", "integrity": "sha512-veQTnWP+1D/xbxVrPC3zHnCZRjSrKfhbMUlEA43iMZLu7EsnTtkJklIuwrCPbOi8YkvDQAiW05VQQFvvz9oieQ==", + "license": "MIT", "dependencies": { "@types/estree": "*" } @@ -3994,6 +3206,7 @@ "version": "4.0.8", "resolved": "https://registry.npmjs.org/@types/d3-scale/-/d3-scale-4.0.8.tgz", "integrity": "sha512-gkK1VVTr5iNiYJ7vWDI+yUFFlszhNMtVeneJ6lUTKPjprsvLLI9/tgEGiXJOnlINJA8FyA88gfnQsHbybVZrYQ==", + "license": "MIT", "dependencies": { "@types/d3-time": "*" } @@ -4001,17 +3214,20 @@ "node_modules/@types/d3-scale-chromatic": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/@types/d3-scale-chromatic/-/d3-scale-chromatic-3.0.3.tgz", - "integrity": "sha512-laXM4+1o5ImZv3RpFAsTRn3TEkzqkytiOY0Dz0sq5cnd1dtNlk6sHLon4OvqaiJb28T0S/TdsBI3Sjsy+keJrw==" + "integrity": "sha512-laXM4+1o5ImZv3RpFAsTRn3TEkzqkytiOY0Dz0sq5cnd1dtNlk6sHLon4OvqaiJb28T0S/TdsBI3Sjsy+keJrw==", + "license": "MIT" }, "node_modules/@types/d3-time": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/@types/d3-time/-/d3-time-3.0.3.tgz", - "integrity": "sha512-2p6olUZ4w3s+07q3Tm2dbiMZy5pCDfYwtLXXHUnVzXgQlZ/OyPtUz6OL382BkOuGlLXqfT+wqv8Fw2v8/0geBw==" + "integrity": "sha512-2p6olUZ4w3s+07q3Tm2dbiMZy5pCDfYwtLXXHUnVzXgQlZ/OyPtUz6OL382BkOuGlLXqfT+wqv8Fw2v8/0geBw==", + "license": "MIT" }, "node_modules/@types/debug": { "version": "4.1.12", "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.12.tgz", "integrity": "sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==", + "license": "MIT", "dependencies": { "@types/ms": "*" } @@ -4021,6 +3237,7 @@ "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.56.7.tgz", "integrity": "sha512-SjDvI/x3zsZnOkYZ3lCt9lOZWZLB2jIlNKz+LBgCtDurK0JZcwucxYHn1w2BJkD34dgX9Tjnak0txtq4WTggEA==", "dev": true, + "license": "MIT", "dependencies": { "@types/estree": "*", "@types/json-schema": "*" @@ -4029,12 +3246,14 @@ "node_modules/@types/estree": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz", - "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==" + "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==", + "license": "MIT" }, "node_modules/@types/estree-jsx": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/@types/estree-jsx/-/estree-jsx-1.0.5.tgz", "integrity": "sha512-52CcUVNFyfb1A2ALocQw/Dd1BQFNmSdkuC3BkZ6iqhdMfQz7JWOFRuJFloOzjk+6WijU56m9oKXFAXc7o3Towg==", + "license": "MIT", "dependencies": { "@types/estree": "*" } @@ -4043,6 +3262,7 @@ "version": "2.3.10", "resolved": "https://registry.npmjs.org/@types/hast/-/hast-2.3.10.tgz", "integrity": "sha512-McWspRw8xx8J9HurkVBfYj0xKoE25tOFlHGdx4MJ5xORQrMGZNqJhVQWaIbm6Oyla5kYOXtDiopzKRJzEOkwJw==", + "license": "MIT", "dependencies": { "@types/unist": "^2" } @@ -4050,29 +3270,34 @@ "node_modules/@types/js-yaml": { "version": "4.0.9", "resolved": "https://registry.npmjs.org/@types/js-yaml/-/js-yaml-4.0.9.tgz", - "integrity": "sha512-k4MGaQl5TGo/iipqb2UDG2UwjXziSWkh0uysQelTlJpX1qGlpUZYm8PnO4DxG1qBomtJUdYJ6qR6xdIah10JLg==" + "integrity": "sha512-k4MGaQl5TGo/iipqb2UDG2UwjXziSWkh0uysQelTlJpX1qGlpUZYm8PnO4DxG1qBomtJUdYJ6qR6xdIah10JLg==", + "license": "MIT" }, "node_modules/@types/json-schema": { "version": "7.0.15", "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/@types/json5": { "version": "0.0.29", "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/@types/katex": { "version": "0.16.7", "resolved": "https://registry.npmjs.org/@types/katex/-/katex-0.16.7.tgz", - "integrity": "sha512-HMwFiRujE5PjrgwHQ25+bsLJgowjGjm5Z8FVSf0N6PwgJrwxH0QxzHYDcKsTfV3wva0vzrpqMTJS2jXPr5BMEQ==" + "integrity": "sha512-HMwFiRujE5PjrgwHQ25+bsLJgowjGjm5Z8FVSf0N6PwgJrwxH0QxzHYDcKsTfV3wva0vzrpqMTJS2jXPr5BMEQ==", + "license": "MIT" }, "node_modules/@types/mdast": { "version": "3.0.15", "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.15.tgz", "integrity": "sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==", + "license": "MIT", "dependencies": { "@types/unist": "^2" } @@ -4080,51 +3305,57 @@ "node_modules/@types/mdx": { "version": "2.0.13", "resolved": "https://registry.npmjs.org/@types/mdx/-/mdx-2.0.13.tgz", - "integrity": "sha512-+OWZQfAYyio6YkJb3HLxDrvnx6SWWDbC0zVPfBRzUk0/nqoDyf6dNxQi3eArPe8rJ473nobTMQ/8Zk+LxJ+Yuw==" + "integrity": "sha512-+OWZQfAYyio6YkJb3HLxDrvnx6SWWDbC0zVPfBRzUk0/nqoDyf6dNxQi3eArPe8rJ473nobTMQ/8Zk+LxJ+Yuw==", + "license": "MIT" }, "node_modules/@types/ms": { "version": "0.7.34", "resolved": "https://registry.npmjs.org/@types/ms/-/ms-0.7.34.tgz", - "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" + "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==", + "license": "MIT" }, "node_modules/@types/node": { - "version": "22.5.2", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.2.tgz", - "integrity": "sha512-acJsPTEqYqulZS/Yp/S3GgeE6GZ0qYODUR8aVr/DkhHQ8l9nd4j5x1/ZJy9/gHrRlFMqkO6i0I3E27Alu4jjPg==", - "dependencies": { - "undici-types": "~6.19.2" - } + "version": "12.20.55", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", + "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==", + "license": "MIT" }, "node_modules/@types/node-fetch": { "version": "2.6.11", "resolved": "https://registry.npmjs.org/@types/node-fetch/-/node-fetch-2.6.11.tgz", "integrity": "sha512-24xFj9R5+rfQJLRyM56qh+wnVSYhyXC2tkoBndtY0U+vubqNsYXGjufB2nn8Q6gt0LrARwL6UBtMCSVCwl4B1g==", + "license": "MIT", "peer": true, "dependencies": { "@types/node": "*", "form-data": "^4.0.0" } }, - "node_modules/@types/node/node_modules/undici-types": { - "version": "6.19.6", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.19.6.tgz", - "integrity": "sha512-e/vggGopEfTKSvj4ihnOLTsqhrKRN3LeO6qSN/GxohhuRv8qH9bNQ4B8W7e/vFL+0XTnmHPB4/kegunZGA4Org==" - }, "node_modules/@types/normalize-package-data": { "version": "2.4.4", "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.4.tgz", "integrity": "sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/@types/prop-types": { "version": "15.7.12", "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.12.tgz", - "integrity": "sha512-5zvhXYtRNRluoE/jAp4GVsSduVUzNWKkOZrCDBWYtE7biZywwdC2AcEzg+cSMLFRfVgeAFqpfNabiPjxFddV1Q==" + "integrity": "sha512-5zvhXYtRNRluoE/jAp4GVsSduVUzNWKkOZrCDBWYtE7biZywwdC2AcEzg+cSMLFRfVgeAFqpfNabiPjxFddV1Q==", + "license": "MIT" + }, + "node_modules/@types/qs": { + "version": "6.9.15", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.15.tgz", + "integrity": "sha512-uXHQKES6DQKKCLh441Xv/dwxOq1TVS3JPUMlEqoEglvlhR6Mxnlew/Xq/LRVHpLyk7iK3zODe1qYHIMltO7XGg==", + "license": "MIT", + "peer": true }, "node_modules/@types/react": { "version": "18.3.5", "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.5.tgz", "integrity": "sha512-WeqMfGJLGuLCqHGYRGHxnKrXcTitc6L/nBUWfWPcTarG3t9PsquqUMuVeXZeca+mglY4Vo5GZjCi0A3Or2lnxA==", + "license": "MIT", "dependencies": { "@types/prop-types": "*", "csstype": "^3.0.2" @@ -4135,6 +3366,7 @@ "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.3.0.tgz", "integrity": "sha512-EhwApuTmMBmXuFOikhQLIBUn6uFg81SwLMOAUgodJF14SOBOCMdU04gDoYi0WOJJHD144TL32z4yDqCW3dnkQg==", "dev": true, + "license": "MIT", "dependencies": { "@types/react": "*" } @@ -4142,18 +3374,21 @@ "node_modules/@types/semver": { "version": "7.5.8", "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.8.tgz", - "integrity": "sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==" + "integrity": "sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==", + "license": "MIT" }, "node_modules/@types/unist": { - "version": "2.0.10", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz", - "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" + "version": "2.0.11", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.11.tgz", + "integrity": "sha512-CmBKiL6NNo/OqgmMn95Fk9Whlp2mtvIv+KNpQKN2F4SjvrEesubTRWGYSg+BnWZOnlCaSTU1sMpsBOzgbYhnsA==", + "license": "MIT" }, "node_modules/@typescript-eslint/eslint-plugin": { "version": "7.5.0", "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.5.0.tgz", "integrity": "sha512-HpqNTH8Du34nLxbKgVMGljZMG0rJd2O9ecvr2QLYp+7512ty1j42KnsFwspPXg1Vh8an9YImf6CokUBltisZFQ==", "dev": true, + "license": "MIT", "dependencies": { "@eslint-community/regexpp": "^4.5.1", "@typescript-eslint/scope-manager": "7.5.0", @@ -4184,36 +3419,12 @@ } } }, - "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/utils": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-7.5.0.tgz", - "integrity": "sha512-3vZl9u0R+/FLQcpy2EHyRGNqAS/ofJ3Ji8aebilfJe+fobK8+LbIFmrHciLVDxjDoONmufDcnVSF38KwMEOjzw==", - "dev": true, - "dependencies": { - "@eslint-community/eslint-utils": "^4.4.0", - "@types/json-schema": "^7.0.12", - "@types/semver": "^7.5.0", - "@typescript-eslint/scope-manager": "7.5.0", - "@typescript-eslint/types": "7.5.0", - "@typescript-eslint/typescript-estree": "7.5.0", - "semver": "^7.5.4" - }, - "engines": { - "node": "^18.18.0 || >=20.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^8.56.0" - } - }, "node_modules/@typescript-eslint/parser": { "version": "7.5.0", "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-7.5.0.tgz", "integrity": "sha512-cj+XGhNujfD2/wzR1tabNsidnYRaFfEkcULdcIyVBYcXjBvBKOes+mpMBP7hMpOyk+gBcfXsrg4NBGAStQyxjQ==", "dev": true, + "license": "BSD-2-Clause", "dependencies": { "@typescript-eslint/scope-manager": "7.5.0", "@typescript-eslint/types": "7.5.0", @@ -4242,6 +3453,7 @@ "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-7.5.0.tgz", "integrity": "sha512-Z1r7uJY0MDeUlql9XJ6kRVgk/sP11sr3HKXn268HZyqL7i4cEfrdFuSSY/0tUqT37l5zT0tJOsuDP16kio85iA==", "dev": true, + "license": "MIT", "dependencies": { "@typescript-eslint/types": "7.5.0", "@typescript-eslint/visitor-keys": "7.5.0" @@ -4259,6 +3471,7 @@ "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-7.5.0.tgz", "integrity": "sha512-A021Rj33+G8mx2Dqh0nMO9GyjjIBK3MqgVgZ2qlKf6CJy51wY/lkkFqq3TqqnH34XyAHUkq27IjlUkWlQRpLHw==", "dev": true, + "license": "MIT", "dependencies": { "@typescript-eslint/typescript-estree": "7.5.0", "@typescript-eslint/utils": "7.5.0", @@ -4276,34 +3489,9 @@ "eslint": "^8.56.0" }, "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/utils": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-7.5.0.tgz", - "integrity": "sha512-3vZl9u0R+/FLQcpy2EHyRGNqAS/ofJ3Ji8aebilfJe+fobK8+LbIFmrHciLVDxjDoONmufDcnVSF38KwMEOjzw==", - "dev": true, - "dependencies": { - "@eslint-community/eslint-utils": "^4.4.0", - "@types/json-schema": "^7.0.12", - "@types/semver": "^7.5.0", - "@typescript-eslint/scope-manager": "7.5.0", - "@typescript-eslint/types": "7.5.0", - "@typescript-eslint/typescript-estree": "7.5.0", - "semver": "^7.5.4" - }, - "engines": { - "node": "^18.18.0 || >=20.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^8.56.0" + "typescript": { + "optional": true + } } }, "node_modules/@typescript-eslint/types": { @@ -4311,6 +3499,7 @@ "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.5.0.tgz", "integrity": "sha512-tv5B4IHeAdhR7uS4+bf8Ov3k793VEVHd45viRRkehIUZxm0WF82VPiLgHzA/Xl4TGPg1ZD49vfxBKFPecD5/mg==", "dev": true, + "license": "MIT", "engines": { "node": "^18.18.0 || >=20.0.0" }, @@ -4324,6 +3513,7 @@ "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-7.5.0.tgz", "integrity": "sha512-YklQQfe0Rv2PZEueLTUffiQGKQneiIEKKnfIqPIOxgM9lKSZFCjT5Ad4VqRKj/U4+kQE3fa8YQpskViL7WjdPQ==", "dev": true, + "license": "BSD-2-Clause", "dependencies": { "@typescript-eslint/types": "7.5.0", "@typescript-eslint/visitor-keys": "7.5.0", @@ -4347,11 +3537,22 @@ } } }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, "node_modules/@typescript-eslint/typescript-estree/node_modules/minimatch": { "version": "9.0.3", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", "dev": true, + "license": "ISC", "dependencies": { "brace-expansion": "^2.0.1" }, @@ -4363,15 +3564,19 @@ } }, "node_modules/@typescript-eslint/utils": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-7.13.0.tgz", - "integrity": "sha512-jceD8RgdKORVnB4Y6BqasfIkFhl4pajB1wVxrF4akxD2QPM8GNYjgGwEzYS+437ewlqqrg7Dw+6dhdpjMpeBFQ==", + "version": "7.5.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-7.5.0.tgz", + "integrity": "sha512-3vZl9u0R+/FLQcpy2EHyRGNqAS/ofJ3Ji8aebilfJe+fobK8+LbIFmrHciLVDxjDoONmufDcnVSF38KwMEOjzw==", "dev": true, + "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.4.0", - "@typescript-eslint/scope-manager": "7.13.0", - "@typescript-eslint/types": "7.13.0", - "@typescript-eslint/typescript-estree": "7.13.0" + "@types/json-schema": "^7.0.12", + "@types/semver": "^7.5.0", + "@typescript-eslint/scope-manager": "7.5.0", + "@typescript-eslint/types": "7.5.0", + "@typescript-eslint/typescript-estree": "7.5.0", + "semver": "^7.5.4" }, "engines": { "node": "^18.18.0 || >=20.0.0" @@ -4384,14 +3589,15 @@ "eslint": "^8.56.0" } }, - "node_modules/@typescript-eslint/utils/node_modules/@typescript-eslint/scope-manager": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-7.13.0.tgz", - "integrity": "sha512-ZrMCe1R6a01T94ilV13egvcnvVJ1pxShkE0+NDjDzH4nvG1wXpwsVI5bZCvE7AEDH1mXEx5tJSVR68bLgG7Dng==", + "node_modules/@typescript-eslint/visitor-keys": { + "version": "7.5.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-7.5.0.tgz", + "integrity": "sha512-mcuHM/QircmA6O7fy6nn2w/3ditQkj+SgtOc8DW3uQ10Yfj42amm2i+6F2K4YAOPNNTmE6iM1ynM6lrSwdendA==", "dev": true, + "license": "MIT", "dependencies": { - "@typescript-eslint/types": "7.13.0", - "@typescript-eslint/visitor-keys": "7.13.0" + "@typescript-eslint/types": "7.5.0", + "eslint-visitor-keys": "^3.4.1" }, "engines": { "node": "^18.18.0 || >=20.0.0" @@ -4401,90 +3607,94 @@ "url": "https://opencollective.com/typescript-eslint" } }, - "node_modules/@typescript-eslint/utils/node_modules/@typescript-eslint/types": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.13.0.tgz", - "integrity": "sha512-QWuwm9wcGMAuTsxP+qz6LBBd3Uq8I5Nv8xb0mk54jmNoCyDspnMvVsOxI6IsMmway5d1S9Su2+sCKv1st2l6eA==", - "dev": true, - "engines": { - "node": "^18.18.0 || >=20.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } + "node_modules/@ungap/structured-clone": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz", + "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==", + "license": "ISC" }, - "node_modules/@typescript-eslint/utils/node_modules/@typescript-eslint/typescript-estree": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-7.13.0.tgz", - "integrity": "sha512-cAvBvUoobaoIcoqox1YatXOnSl3gx92rCZoMRPzMNisDiM12siGilSM4+dJAekuuHTibI2hVC2fYK79iSFvWjw==", + "node_modules/@vercel/style-guide": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/@vercel/style-guide/-/style-guide-6.0.0.tgz", + "integrity": "sha512-tu0wFINGz91EPwaT5VjSqUwbvCY9pvLach7SPG4XyfJKPU9Vku2TFa6+AyzJ4oroGbo9fK+TQhIFHrnFl0nCdg==", "dev": true, + "license": "MPL-2.0", "dependencies": { - "@typescript-eslint/types": "7.13.0", - "@typescript-eslint/visitor-keys": "7.13.0", - "debug": "^4.3.4", - "globby": "^11.1.0", - "is-glob": "^4.0.3", - "minimatch": "^9.0.4", - "semver": "^7.6.0", - "ts-api-utils": "^1.3.0" + "@babel/core": "^7.24.0", + "@babel/eslint-parser": "^7.23.10", + "@rushstack/eslint-patch": "^1.7.2", + "@typescript-eslint/eslint-plugin": "^7.1.1", + "@typescript-eslint/parser": "^7.1.1", + "eslint-config-prettier": "^9.1.0", + "eslint-import-resolver-alias": "^1.1.2", + "eslint-import-resolver-typescript": "^3.6.1", + "eslint-plugin-eslint-comments": "^3.2.0", + "eslint-plugin-import": "^2.29.1", + "eslint-plugin-jest": "^27.9.0", + "eslint-plugin-jsx-a11y": "^6.8.0", + "eslint-plugin-playwright": "^1.5.2", + "eslint-plugin-react": "^7.34.0", + "eslint-plugin-react-hooks": "^4.6.0", + "eslint-plugin-testing-library": "^6.2.0", + "eslint-plugin-tsdoc": "^0.2.17", + "eslint-plugin-unicorn": "^51.0.1", + "eslint-plugin-vitest": "^0.3.22", + "prettier-plugin-packagejson": "^2.4.12" }, "engines": { - "node": "^18.18.0 || >=20.0.0" + "node": ">=18.18" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" + "peerDependencies": { + "@next/eslint-plugin-next": ">=12.3.0 <15.0.0-0", + "eslint": ">=8.48.0 <9", + "prettier": ">=3.0.0 <4", + "typescript": ">=4.8.0 <6" }, "peerDependenciesMeta": { + "@next/eslint-plugin-next": { + "optional": true + }, + "eslint": { + "optional": true + }, + "prettier": { + "optional": true + }, "typescript": { "optional": true } } }, - "node_modules/@typescript-eslint/utils/node_modules/@typescript-eslint/visitor-keys": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-7.13.0.tgz", - "integrity": "sha512-nxn+dozQx+MK61nn/JP+M4eCkHDSxSLDpgE3WcQo0+fkjEolnaB5jswvIKC4K56By8MMgIho7f1PVxERHEo8rw==", + "node_modules/@vercel/style-guide/node_modules/eslint-plugin-vitest": { + "version": "0.3.26", + "resolved": "https://registry.npmjs.org/eslint-plugin-vitest/-/eslint-plugin-vitest-0.3.26.tgz", + "integrity": "sha512-oxe5JSPgRjco8caVLTh7Ti8PxpwJdhSV0hTQAmkFcNcmy/9DnqLB/oNVRA11RmVRP//2+jIIT6JuBEcpW3obYg==", "dev": true, + "license": "MIT", "dependencies": { - "@typescript-eslint/types": "7.13.0", - "eslint-visitor-keys": "^3.4.3" + "@typescript-eslint/utils": "^7.1.1" }, "engines": { - "node": "^18.18.0 || >=20.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/visitor-keys": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-7.5.0.tgz", - "integrity": "sha512-mcuHM/QircmA6O7fy6nn2w/3ditQkj+SgtOc8DW3uQ10Yfj42amm2i+6F2K4YAOPNNTmE6iM1ynM6lrSwdendA==", - "dev": true, - "dependencies": { - "@typescript-eslint/types": "7.5.0", - "eslint-visitor-keys": "^3.4.1" + "node": "^18.0.0 || >= 20.0.0" }, - "engines": { - "node": "^18.18.0 || >=20.0.0" + "peerDependencies": { + "eslint": ">=8.0.0", + "vitest": "*" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" + "peerDependenciesMeta": { + "@typescript-eslint/eslint-plugin": { + "optional": true + }, + "vitest": { + "optional": true + } } }, - "node_modules/@ungap/structured-clone": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz", - "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==" - }, "node_modules/abort-controller": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz", "integrity": "sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==", + "license": "MIT", "dependencies": { "event-target-shim": "^5.0.0" }, @@ -4495,12 +3705,14 @@ "node_modules/abstract-logging": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/abstract-logging/-/abstract-logging-2.0.1.tgz", - "integrity": "sha512-2BjRTZxTPvheOvGbBslFSYOUkr+SjPtOnrLP33f+VIWLzezQpZcqVg7ja3L4dBXmzzgwT+a029jRx5PCi3JuiA==" + "integrity": "sha512-2BjRTZxTPvheOvGbBslFSYOUkr+SjPtOnrLP33f+VIWLzezQpZcqVg7ja3L4dBXmzzgwT+a029jRx5PCi3JuiA==", + "license": "MIT" }, "node_modules/acorn": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.12.0.tgz", - "integrity": "sha512-RTvkC4w+KNXrM39/lWCUaG0IbRkWdCv7W/IOW9oU6SawyxulvkQy5HQPVTKxEjczcUvapcrw3cFx/60VN/NRNw==", + "version": "8.12.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.12.1.tgz", + "integrity": "sha512-tcpGyI9zbizT9JbV6oYE477V6mTlXvvi0T0G3SNIYE2apm/G5huBa1+K89VGeovbg+jycCrfhl3ADxErOuO6Jg==", + "license": "MIT", "bin": { "acorn": "bin/acorn" }, @@ -4512,6 +3724,7 @@ "version": "5.3.2", "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "license": "MIT", "peerDependencies": { "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" } @@ -4521,6 +3734,7 @@ "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz", "integrity": "sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==", "dev": true, + "license": "MIT", "dependencies": { "debug": "^4.3.4" }, @@ -4532,6 +3746,7 @@ "version": "4.5.0", "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.5.0.tgz", "integrity": "sha512-5GG/5IbQQpC9FpkRGsSvZI5QYeSCzlJHdpBQntCsuTOxhKD8lqKhrleg2Yi7yvMIf82Ycmmqln9U8V9qwEiJew==", + "license": "MIT", "peer": true, "dependencies": { "humanize-ms": "^1.2.1" @@ -4545,6 +3760,7 @@ "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", "dev": true, + "license": "MIT", "dependencies": { "fast-deep-equal": "^3.1.1", "fast-json-stable-stringify": "^2.0.0", @@ -4560,6 +3776,7 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz", "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", + "license": "MIT", "dependencies": { "ajv": "^8.0.0" }, @@ -4573,36 +3790,46 @@ } }, "node_modules/ajv-formats/node_modules/ajv": { - "version": "8.16.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.16.0.tgz", - "integrity": "sha512-F0twR8U1ZU67JIEtekUcLkXkoO5mMMmgGD8sK/xUFzJ805jxHQl92hImFAqqXMyMYjSPOyUPAwHYhB72g5sTXw==", + "version": "8.17.1", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.17.1.tgz", + "integrity": "sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==", + "license": "MIT", "dependencies": { "fast-deep-equal": "^3.1.3", + "fast-uri": "^3.0.1", "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.4.1" + "require-from-string": "^2.0.2" }, "funding": { "type": "github", "url": "https://github.com/sponsors/epoberezkin" } }, + "node_modules/ajv-formats/node_modules/fast-uri": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.0.1.tgz", + "integrity": "sha512-MWipKbbYiYI0UC7cl8m/i/IWTqfC8YXsqjzybjddLsFjStroQzsHXkc73JutMvBiXmOvapk+axIl79ig5t55Bw==", + "license": "MIT" + }, "node_modules/ajv-formats/node_modules/json-schema-traverse": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==" + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "license": "MIT" }, "node_modules/amp": { "version": "0.3.1", "resolved": "https://registry.npmjs.org/amp/-/amp-0.3.1.tgz", "integrity": "sha512-OwIuC4yZaRogHKiuU5WlMR5Xk/jAcpPtawWL05Gj8Lvm2F6mwoJt4O/bHI+DHwG79vWd+8OFYM4/BzYqyRd3qw==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/amp-message": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/amp-message/-/amp-message-0.1.2.tgz", "integrity": "sha512-JqutcFwoU1+jhv7ArgW38bqrE+LQdcRv4NxNw0mp0JHQyB6tXesWRjtYKlDgHRY2o3JE5UTaBGUK8kSWUdxWUg==", "dev": true, + "license": "MIT", "dependencies": { "amp": "0.3.1" } @@ -4611,6 +3838,7 @@ "version": "4.1.3", "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", + "license": "MIT", "engines": { "node": ">=6" } @@ -4619,6 +3847,7 @@ "version": "5.0.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "license": "MIT", "engines": { "node": ">=8" } @@ -4626,12 +3855,14 @@ "node_modules/ansi-sequence-parser": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/ansi-sequence-parser/-/ansi-sequence-parser-1.1.1.tgz", - "integrity": "sha512-vJXt3yiaUL4UU546s3rPXlsry/RnM730G1+HkpKE012AN0sx1eOrxSu95oKDIonskeLTijMgqWZ3uDEe3NFvyg==" + "integrity": "sha512-vJXt3yiaUL4UU546s3rPXlsry/RnM730G1+HkpKE012AN0sx1eOrxSu95oKDIonskeLTijMgqWZ3uDEe3NFvyg==", + "license": "MIT" }, "node_modules/ansi-styles": { "version": "3.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "license": "MIT", "dependencies": { "color-convert": "^1.9.0" }, @@ -4643,13 +3874,15 @@ "version": "1.3.0", "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", "integrity": "sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/anymatch": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", "dev": true, + "license": "ISC", "dependencies": { "normalize-path": "^3.0.0", "picomatch": "^2.0.4" @@ -4675,28 +3908,32 @@ "type": "consulting", "url": "https://feross.org/support" } - ] + ], + "license": "MIT" }, "node_modules/arg": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/arg/-/arg-1.0.0.tgz", - "integrity": "sha512-Wk7TEzl1KqvTGs/uyhmHO/3XLd3t1UeU4IstvPXVzGPM522cTjqjNZ99esCkcL52sjqjo8e8CTBcWhkxvGzoAw==" + "integrity": "sha512-Wk7TEzl1KqvTGs/uyhmHO/3XLd3t1UeU4IstvPXVzGPM522cTjqjNZ99esCkcL52sjqjo8e8CTBcWhkxvGzoAw==", + "license": "MIT" }, "node_modules/argparse": { "version": "1.0.10", "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "license": "MIT", "dependencies": { "sprintf-js": "~1.0.2" } }, "node_modules/aria-query": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.3.0.tgz", - "integrity": "sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A==", + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.1.3.tgz", + "integrity": "sha512-R5iJ5lkuHybztUfuOAznmboyjWq8O6sqNqtK7CLOqdydi54VNbORp49mb14KbWgG1QD3JFO9hJdZ+y4KutfdOQ==", "dev": true, + "license": "Apache-2.0", "dependencies": { - "dequal": "^2.0.3" + "deep-equal": "^2.0.5" } }, "node_modules/array-buffer-byte-length": { @@ -4704,6 +3941,7 @@ "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.1.tgz", "integrity": "sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.5", "is-array-buffer": "^3.0.4" @@ -4720,6 +3958,7 @@ "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.8.tgz", "integrity": "sha512-itaWrbYbqpGXkGhZPGUulwnhVf5Hpy1xiCFsGqyIGglbBxmG5vSjxQen3/WGOjPpNEv1RtBLKxbmVXm8HpJStQ==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.7", "define-properties": "^1.2.1", @@ -4739,6 +3978,7 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", + "license": "MIT", "engines": { "node": ">=8" } @@ -4748,6 +3988,7 @@ "resolved": "https://registry.npmjs.org/array.prototype.findlast/-/array.prototype.findlast-1.2.5.tgz", "integrity": "sha512-CVvd6FHg1Z3POpBLxO6E6zr+rSKEQ9L6rZHAaY7lLfhKsWYUBBOuMs0e9o24oopj6H+geRCX0YJ+TJLBK2eHyQ==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.7", "define-properties": "^1.2.1", @@ -4768,6 +4009,7 @@ "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.5.tgz", "integrity": "sha512-zfETvRFA8o7EiNn++N5f/kaCw221hrpGsDmcpndVupkPzEc1Wuf3VgC0qby1BbHs7f5DVYjgtEU2LLh5bqeGfQ==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.7", "define-properties": "^1.2.1", @@ -4788,6 +4030,7 @@ "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.2.tgz", "integrity": "sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.2.0", @@ -4806,6 +4049,7 @@ "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.2.tgz", "integrity": "sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.2.0", @@ -4819,23 +4063,12 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/array.prototype.toreversed": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/array.prototype.toreversed/-/array.prototype.toreversed-1.1.2.tgz", - "integrity": "sha512-wwDCoT4Ck4Cz7sLtgUmzR5UV3YF5mFHUlbChCzZBQZ+0m2cl/DH3tKgvphv1nKgFsJ48oCSg6p91q2Vm0I/ZMA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "es-shim-unscopables": "^1.0.0" - } - }, "node_modules/array.prototype.tosorted": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/array.prototype.tosorted/-/array.prototype.tosorted-1.1.4.tgz", "integrity": "sha512-p6Fx8B7b7ZhL/gmUsAy0D15WhvDccw3mnGNbZpi3pmeJdxtWsj2jEaI4Y6oo3XiHfzuSgPwKc04MYt6KgvC/wA==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.7", "define-properties": "^1.2.1", @@ -4852,6 +4085,7 @@ "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.3.tgz", "integrity": "sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A==", "dev": true, + "license": "MIT", "dependencies": { "array-buffer-byte-length": "^1.0.1", "call-bind": "^1.0.5", @@ -4874,6 +4108,7 @@ "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.13.4.tgz", "integrity": "sha512-x1FCFnFifvYDDzTaLII71vG5uvDwgtmDTEVWAxrgeiR8VjMONcCXJx7E+USjDtHlwFmt9MysbqgF9b9Vjr6w+w==", "dev": true, + "license": "MIT", "dependencies": { "tslib": "^2.0.1" }, @@ -4885,31 +4120,36 @@ "version": "0.0.8", "resolved": "https://registry.npmjs.org/ast-types-flow/-/ast-types-flow-0.0.8.tgz", "integrity": "sha512-OH/2E5Fg20h2aPrbe+QL8JZQFko0YZaF+j4mnQ7BGhfavO7OpSLa8a0y9sBwomHdSbkhTS8TQNayBfnW5DwbvQ==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/astring": { - "version": "1.8.6", - "resolved": "https://registry.npmjs.org/astring/-/astring-1.8.6.tgz", - "integrity": "sha512-ISvCdHdlTDlH5IpxQJIex7BWBywFWgjJSVdwst+/iQCoEYnyOaQ95+X1JGshuBjGp6nxKUy1jMgE3zPqN7fQdg==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/astring/-/astring-1.9.0.tgz", + "integrity": "sha512-LElXdjswlqjWrPpJFg1Fx4wpkOCxj1TDHlSV4PlaRxHGWko024xICaa97ZkMfs6DRKlCguiAI+rbXv5GWwXIkg==", + "license": "MIT", "bin": { "astring": "bin/astring" } }, "node_modules/async": { - "version": "3.2.5", - "resolved": "https://registry.npmjs.org/async/-/async-3.2.5.tgz", - "integrity": "sha512-baNZyqaaLhyLVKm/DlvdW051MSgO6b8eVfIezl9E5PqWxFgzLm/wQntEW4zOytVburDEr0JlALEpdOFwvErLsg==", - "dev": true + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.6.tgz", + "integrity": "sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA==", + "dev": true, + "license": "MIT" }, "node_modules/asynckit": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", + "license": "MIT" }, "node_modules/atomic-sleep": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/atomic-sleep/-/atomic-sleep-1.0.0.tgz", "integrity": "sha512-kNOjDqAh7px0XWNI+4QbzoiR/nTkHAWNud2uvnJquD1/x5a7EQZMJT0AczqK0Qn67oY/TTQ1LbUKajZpp3I9tQ==", + "license": "MIT", "engines": { "node": ">=8.0.0" } @@ -4919,6 +4159,7 @@ "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==", "dev": true, + "license": "MIT", "dependencies": { "possible-typed-array-names": "^1.0.0" }, @@ -4930,19 +4171,21 @@ } }, "node_modules/avvio": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/avvio/-/avvio-8.3.2.tgz", - "integrity": "sha512-st8e519GWHa/azv8S87mcJvZs4WsgTBjOw/Ih1CP6u+8SZvcOeAYNG6JbsIrAUUJJ7JfmrnOkR8ipDS+u9SIRQ==", + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/avvio/-/avvio-8.4.0.tgz", + "integrity": "sha512-CDSwaxINFy59iNwhYnkvALBwZiTydGkOecZyPkqBpABYR1KqGEsET0VOOYDwtleZSUIdeY36DC2bSZ24CO1igA==", + "license": "MIT", "dependencies": { "@fastify/error": "^3.3.0", "fastq": "^1.17.1" } }, "node_modules/axe-core": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.7.0.tgz", - "integrity": "sha512-M0JtH+hlOL5pLQwHOLNYZaXuhqmvS8oExsqB1SBYgA4Dk7u/xx+YdGHXaK5pyUfed5mYXdlYiphWq3G8cRi5JQ==", + "version": "4.10.0", + "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.10.0.tgz", + "integrity": "sha512-Mr2ZakwQ7XUAjp7pAwQWRhhK8mQQ6JAaNWSjmjxil0R8BPioMtQsTLOolGYkji1rcL++3dCqZA3zWqpT+9Ew6g==", "dev": true, + "license": "MPL-2.0", "engines": { "node": ">=4" } @@ -4952,6 +4195,7 @@ "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.7.tgz", "integrity": "sha512-S4kL7XrjgBmvdGut0sN3yJxqYzrDOnivkBiN0OFs6hLiUam3UPvswUo0kqGyhqUZGEOytHyumEdXsAkgCOUf3Q==", "dev": true, + "license": "MIT", "dependencies": { "follow-redirects": "^1.15.6", "form-data": "^4.0.0", @@ -4959,12 +4203,13 @@ } }, "node_modules/axobject-query": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-3.2.1.tgz", - "integrity": "sha512-jsyHu61e6N4Vbz/v18DHwWYKK0bSWLqn47eeDSKPB7m8tqMHF9YJ+mhIk2lVteyZrY8tnSj/jHOv4YiTCuCJgg==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-4.1.0.tgz", + "integrity": "sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==", "dev": true, - "dependencies": { - "dequal": "^2.0.3" + "license": "Apache-2.0", + "engines": { + "node": ">= 0.4" } }, "node_modules/backend": { @@ -4975,6 +4220,7 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/bail/-/bail-2.0.2.tgz", "integrity": "sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw==", + "license": "MIT", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" @@ -4984,7 +4230,8 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/base64-js": { "version": "1.5.1", @@ -5003,13 +4250,15 @@ "type": "consulting", "url": "https://feross.org/support" } - ] + ], + "license": "MIT" }, "node_modules/basic-ftp": { "version": "5.0.5", "resolved": "https://registry.npmjs.org/basic-ftp/-/basic-ftp-5.0.5.tgz", "integrity": "sha512-4Bcg1P8xhUuqcii/S0Z9wiHIrQVPMermM1any+MX5GeGD7faD3/msQUDGLol9wOcz4/jbg/WJnGqoJF6LiBdtg==", "dev": true, + "license": "MIT", "engines": { "node": ">=10.0.0" } @@ -5018,6 +4267,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/better-path-resolve/-/better-path-resolve-1.0.0.tgz", "integrity": "sha512-pbnl5XzGBdrFU/wT4jqmJVPn2B6UHPBOhzMQkY/SPUPB6QtUXtmBHBIwCbXJol93mOpGMnQyP/+BB19q04xj7g==", + "license": "MIT", "dependencies": { "is-windows": "^1.0.0" }, @@ -5030,6 +4280,7 @@ "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" }, @@ -5042,6 +4293,7 @@ "resolved": "https://registry.npmjs.org/blessed/-/blessed-0.1.81.tgz", "integrity": "sha512-LoF5gae+hlmfORcG1M5+5XZi4LBmvlXTzwJWzUlPryN/SJdSflZvROM2TwkT0GMpq7oqT48NRd4GS7BiVBc5OQ==", "dev": true, + "license": "MIT", "bin": { "blessed": "bin/tput.js" }, @@ -5053,21 +4305,25 @@ "version": "0.1.0", "resolved": "https://registry.npmjs.org/bodec/-/bodec-0.1.0.tgz", "integrity": "sha512-Ylo+MAo5BDUq1KA3f3R/MFhh+g8cnHmo8bz3YPGhI1znrMaf77ol1sfvYJzsw3nTE+Y2GryfDxBaR+AqpAkEHQ==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", "dev": true, + "license": "MIT", "dependencies": { - "balanced-match": "^1.0.0" + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" } }, "node_modules/braces": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", + "license": "MIT", "dependencies": { "fill-range": "^7.1.1" }, @@ -5076,9 +4332,9 @@ } }, "node_modules/browserslist": { - "version": "4.23.1", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.1.tgz", - "integrity": "sha512-TUfofFo/KsK/bWZ9TWQ5O26tsWW4Uhmt8IYklbnUa70udB6P2wA7w7o4PY4muaEPBQaAX+CEnmmIA41NVHtPVw==", + "version": "4.23.3", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.3.tgz", + "integrity": "sha512-btwCFJVjI4YWDNfau8RhZ+B1Q/VLoUITrm3RlP6y1tYGWIOa+InuYiRGXUBXo8nA1qKmHMyLB/iVQg5TT4eFoA==", "dev": true, "funding": [ { @@ -5094,11 +4350,12 @@ "url": "https://github.com/sponsors/ai" } ], + "license": "MIT", "dependencies": { - "caniuse-lite": "^1.0.30001629", - "electron-to-chromium": "^1.4.796", - "node-releases": "^2.0.14", - "update-browserslist-db": "^1.0.16" + "caniuse-lite": "^1.0.30001646", + "electron-to-chromium": "^1.5.4", + "node-releases": "^2.0.18", + "update-browserslist-db": "^1.1.0" }, "bin": { "browserslist": "cli.js" @@ -5125,6 +4382,7 @@ "url": "https://feross.org/support" } ], + "license": "MIT", "dependencies": { "base64-js": "^1.3.1", "ieee754": "^1.2.1" @@ -5134,13 +4392,15 @@ "version": "1.1.2", "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/builtin-modules": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.3.0.tgz", "integrity": "sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==", "dev": true, + "license": "MIT", "engines": { "node": ">=6" }, @@ -5153,6 +4413,7 @@ "resolved": "https://registry.npmjs.org/bundle-require/-/bundle-require-5.0.0.tgz", "integrity": "sha512-GuziW3fSSmopcx4KRymQEJVbZUfqlCqcq7dvs6TYwKRZiegK/2buMxQTPs6MGlNv50wms1699qYO54R8XfRX4w==", "dev": true, + "license": "MIT", "dependencies": { "load-tsconfig": "^0.2.3" }, @@ -5179,6 +4440,7 @@ "resolved": "https://registry.npmjs.org/cac/-/cac-6.7.14.tgz", "integrity": "sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } @@ -5195,7 +4457,7 @@ "version": "1.0.7", "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.7.tgz", "integrity": "sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==", - "dev": true, + "license": "MIT", "dependencies": { "es-define-property": "^1.0.0", "es-errors": "^1.3.0", @@ -5215,14 +4477,15 @@ "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", "dev": true, + "license": "MIT", "engines": { "node": ">=6" } }, "node_modules/caniuse-lite": { - "version": "1.0.30001636", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001636.tgz", - "integrity": "sha512-bMg2vmr8XBsbL6Lr0UHXy/21m84FTxDLWn2FSqMd5PrlbMxwJlQnC2YWYxVgp66PZE+BBNF2jYQUBKCo1FDeZg==", + "version": "1.0.30001655", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001655.tgz", + "integrity": "sha512-jRGVy3iSGO5Uutn2owlb5gR6qsGngTw9ZTb4ali9f3glshcNmJ2noam4Mo9zia5P9Dk3jNNydy7vQjuE5dQmfg==", "funding": [ { "type": "opencollective", @@ -5236,12 +4499,14 @@ "type": "github", "url": "https://github.com/sponsors/ai" } - ] + ], + "license": "CC-BY-4.0" }, "node_modules/ccount": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/ccount/-/ccount-2.0.1.tgz", "integrity": "sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==", + "license": "MIT", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" @@ -5251,6 +4516,7 @@ "version": "2.4.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "license": "MIT", "dependencies": { "ansi-styles": "^3.2.1", "escape-string-regexp": "^1.0.5", @@ -5260,18 +4526,11 @@ "node": ">=4" } }, - "node_modules/chalk/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "engines": { - "node": ">=0.8.0" - } - }, "node_modules/character-entities": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/character-entities/-/character-entities-2.0.2.tgz", "integrity": "sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ==", + "license": "MIT", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" @@ -5281,6 +4540,7 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/character-entities-html4/-/character-entities-html4-2.1.0.tgz", "integrity": "sha512-1v7fgQRj6hnSwFpq1Eu0ynr/CDEw0rXo2B61qXrLNdHZmPKgb7fqS1a2JwF0rISo9q77jDI8VMEHoApn8qDoZA==", + "license": "MIT", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" @@ -5290,6 +4550,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-3.0.0.tgz", "integrity": "sha512-RpPp0asT/6ufRm//AJVwpViZbGM/MkjQFxJccQRHmISF/22NBtsHqAWmL+/pmkPWoIUJdWyeVleTl1wydHATVQ==", + "license": "MIT", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" @@ -5299,6 +4560,7 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/character-reference-invalid/-/character-reference-invalid-2.0.1.tgz", "integrity": "sha512-iBZ4F4wRbyORVsu0jPV7gXkOsGYjGHPmAyv+HiHG8gi5PtC9KI2j1+v8/tlibRvjoWX027ypmG/n0HtO5t7unw==", + "license": "MIT", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" @@ -5307,19 +4569,22 @@ "node_modules/chardet": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", - "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==" + "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", + "license": "MIT" }, "node_modules/charm": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/charm/-/charm-0.1.2.tgz", "integrity": "sha512-syedaZ9cPe7r3hoQA9twWYKu5AIyCswN5+szkmPBe9ccdLrj4bYaCnLVPTLd2kgVRc7+zoX4tyPgRnFKCj5YjQ==", - "dev": true + "dev": true, + "license": "MIT/X11" }, "node_modules/chokidar": { "version": "3.6.0", "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", "dev": true, + "license": "MIT", "dependencies": { "anymatch": "~3.1.2", "braces": "~3.0.2", @@ -5344,6 +4609,7 @@ "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", "dev": true, + "license": "ISC", "dependencies": { "is-glob": "^4.0.1" }, @@ -5361,6 +4627,7 @@ "url": "https://github.com/sponsors/sibiraj-s" } ], + "license": "MIT", "engines": { "node": ">=8" } @@ -5370,20 +4637,12 @@ "resolved": "https://registry.npmjs.org/clean-regexp/-/clean-regexp-1.0.0.tgz", "integrity": "sha512-GfisEZEJvzKrmGWkvfhgzcz/BllN1USeqD2V6tg14OAOgaCD2Z/PUEuxnAZ/nPvmaHRG7a8y77p1T/IRQ4D1Hw==", "dev": true, - "dependencies": { - "escape-string-regexp": "^1.0.5" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/clean-regexp/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "dev": true, + "license": "MIT", + "dependencies": { + "escape-string-regexp": "^1.0.5" + }, "engines": { - "node": ">=0.8.0" + "node": ">=4" } }, "node_modules/cli-tableau": { @@ -5403,6 +4662,7 @@ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, + "license": "MIT", "dependencies": { "color-convert": "^2.0.1" }, @@ -5418,6 +4678,7 @@ "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", "dev": true, + "license": "MIT", "dependencies": { "ansi-styles": "^4.1.0", "supports-color": "^7.1.0" @@ -5431,6 +4692,7 @@ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, + "license": "MIT", "dependencies": { "color-name": "~1.1.4" }, @@ -5442,13 +4704,15 @@ "version": "1.1.4", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/cli-tableau/node_modules/has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } @@ -5458,6 +4722,7 @@ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, + "license": "MIT", "dependencies": { "has-flag": "^4.0.0" }, @@ -5468,12 +4733,14 @@ "node_modules/client-only": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/client-only/-/client-only-0.0.1.tgz", - "integrity": "sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==" + "integrity": "sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==", + "license": "MIT" }, "node_modules/clipboardy": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/clipboardy/-/clipboardy-1.2.2.tgz", "integrity": "sha512-16KrBOV7bHmHdxcQiCvfUFYVFyEah4FI8vYT1Fr7CGSA4G+xBWMEfUEQJS1hxeHGtI9ju1Bzs9uXSbj5HZKArw==", + "license": "MIT", "dependencies": { "arch": "^2.1.0", "execa": "^0.8.0" @@ -5486,6 +4753,7 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/clsx/-/clsx-2.1.1.tgz", "integrity": "sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==", + "license": "MIT", "engines": { "node": ">=6" } @@ -5494,27 +4762,16 @@ "version": "1.1.2", "resolved": "https://registry.npmjs.org/cluster-key-slot/-/cluster-key-slot-1.1.2.tgz", "integrity": "sha512-RMr0FhtfXemyinomL4hrWcYJxmX6deFdCxpJzhDttxgO1+bcCnkk+9drydLVDmAMG7NE6aN/fl4F7ucU/90gAA==", + "license": "Apache-2.0", "engines": { "node": ">=0.10.0" } }, - "node_modules/color": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/color/-/color-4.2.3.tgz", - "integrity": "sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==", - "optional": true, - "dependencies": { - "color-convert": "^2.0.1", - "color-string": "^1.9.0" - }, - "engines": { - "node": ">=12.5.0" - } - }, "node_modules/color-convert": { "version": "1.9.3", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "license": "MIT", "dependencies": { "color-name": "1.1.3" } @@ -5522,46 +4779,21 @@ "node_modules/color-name": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" - }, - "node_modules/color-string": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.9.1.tgz", - "integrity": "sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==", - "optional": true, - "dependencies": { - "color-name": "^1.0.0", - "simple-swizzle": "^0.2.2" - } - }, - "node_modules/color/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "optional": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/color/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "optional": true + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "license": "MIT" }, "node_modules/colorette": { "version": "2.0.20", "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz", "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/combined-stream": { "version": "1.0.8", "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "license": "MIT", "dependencies": { "delayed-stream": "~1.0.0" }, @@ -5573,6 +4805,7 @@ "version": "2.0.3", "resolved": "https://registry.npmjs.org/comma-separated-tokens/-/comma-separated-tokens-2.0.3.tgz", "integrity": "sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==", + "license": "MIT", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" @@ -5582,6 +4815,7 @@ "version": "8.3.0", "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz", "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==", + "license": "MIT", "engines": { "node": ">= 12" } @@ -5589,19 +4823,22 @@ "node_modules/compute-scroll-into-view": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/compute-scroll-into-view/-/compute-scroll-into-view-3.1.0.tgz", - "integrity": "sha512-rj8l8pD4bJ1nx+dAkMhV1xB5RuZEyVysfxJqB1pRchh1KVvwOv9b7CGB8ZfjTImVv2oF+sYMUkMZq6Na5Ftmbg==" + "integrity": "sha512-rj8l8pD4bJ1nx+dAkMhV1xB5RuZEyVysfxJqB1pRchh1KVvwOv9b7CGB8ZfjTImVv2oF+sYMUkMZq6Na5Ftmbg==", + "license": "MIT" }, "node_modules/concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/consola": { "version": "3.2.3", "resolved": "https://registry.npmjs.org/consola/-/consola-3.2.3.tgz", "integrity": "sha512-I5qxpzLv+sJhTVEoLYNcTW+bThDCPsit0vLNKShZx6rLtpilNpmmeTPaeqJb9ZE9dV3DGaeby6Vuhrw38WjeyQ==", "dev": true, + "license": "MIT", "engines": { "node": "^14.18.0 || >=16.10.0" } @@ -5610,23 +4847,26 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/cookie": { "version": "0.6.0", "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.6.0.tgz", "integrity": "sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==", + "license": "MIT", "engines": { "node": ">= 0.6" } }, "node_modules/core-js-compat": { - "version": "3.37.1", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.37.1.tgz", - "integrity": "sha512-9TNiImhKvQqSUkOvk/mMRZzOANTiEVC7WaBNhHcKM7x+/5E1l5NvsysR19zuDQScE8k+kfQXWRN3AtS/eOSHpg==", + "version": "3.38.1", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.38.1.tgz", + "integrity": "sha512-JRH6gfXxGmrzF3tZ57lFx97YARxCXPaMzPo6jELZhv88pBH5VXpQ+y0znKGlFnzuaihqhLbefxSJxWJMPtfDzw==", "dev": true, + "license": "MIT", "dependencies": { - "browserslist": "^4.23.0" + "browserslist": "^4.23.3" }, "funding": { "type": "opencollective", @@ -5637,6 +4877,7 @@ "version": "1.0.3", "resolved": "https://registry.npmjs.org/cose-base/-/cose-base-1.0.3.tgz", "integrity": "sha512-s9whTXInMSgAp/NVXVNuVxVKzGH2qck3aQlVHxDCdAEPgtMKwc4Wq6/QKhgdEdgbLSi9rBTAcPoRa6JpiG4ksg==", + "license": "MIT", "dependencies": { "layout-base": "^1.0.0" } @@ -5645,13 +4886,15 @@ "version": "4.1.97", "resolved": "https://registry.npmjs.org/croner/-/croner-4.1.97.tgz", "integrity": "sha512-/f6gpQuxDaqXu+1kwQYSckUglPaOrHdbIlBAu0YuW8/Cdb45XwXYNUBXg3r/9Mo6n540Kn/smKcZWko5x99KrQ==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/cross-spawn": { "version": "7.0.3", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", "dev": true, + "license": "MIT", "dependencies": { "path-key": "^3.1.0", "shebang-command": "^2.0.0", @@ -5664,18 +4907,21 @@ "node_modules/csstype": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", - "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==" + "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==", + "license": "MIT" }, "node_modules/culvert": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/culvert/-/culvert-0.1.2.tgz", "integrity": "sha512-yi1x3EAWKjQTreYWeSd98431AV+IEE0qoDyOoaHJ7KJ21gv6HtBXHVLX74opVSGqcR8/AbjJBHAHpcOy2bj5Gg==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/cytoscape": { - "version": "3.29.2", - "resolved": "https://registry.npmjs.org/cytoscape/-/cytoscape-3.29.2.tgz", - "integrity": "sha512-2G1ycU28Nh7OHT9rkXRLpCDP30MKH1dXJORZuBhtEhEW7pKwgPi77ImqlCWinouyE1PNepIOGZBOrE84DG7LyQ==", + "version": "3.30.2", + "resolved": "https://registry.npmjs.org/cytoscape/-/cytoscape-3.30.2.tgz", + "integrity": "sha512-oICxQsjW8uSaRmn4UK/jkczKOqTrVqt5/1WL0POiJUT2EKNc9STM4hYFHv917yu55aTBMFNRzymlJhVAiWPCxw==", + "license": "MIT", "engines": { "node": ">=0.10" } @@ -5684,6 +4930,7 @@ "version": "4.1.0", "resolved": "https://registry.npmjs.org/cytoscape-cose-bilkent/-/cytoscape-cose-bilkent-4.1.0.tgz", "integrity": "sha512-wgQlVIUJF13Quxiv5e1gstZ08rnZj2XaLHGoFMYXz7SkNfCDOOteKBE6SYRfA9WxxI/iBc3ajfDoc6hb/MRAHQ==", + "license": "MIT", "dependencies": { "cose-base": "^1.0.0" }, @@ -5695,6 +4942,7 @@ "version": "7.9.0", "resolved": "https://registry.npmjs.org/d3/-/d3-7.9.0.tgz", "integrity": "sha512-e1U46jVP+w7Iut8Jt8ri1YsPOvFpg46k+K8TpCb0P+zjCkjkPnV7WzfDJzMHy1LnA+wj5pLT1wjO901gLXeEhA==", + "license": "ISC", "dependencies": { "d3-array": "3", "d3-axis": "3", @@ -5735,6 +4983,7 @@ "version": "3.2.4", "resolved": "https://registry.npmjs.org/d3-array/-/d3-array-3.2.4.tgz", "integrity": "sha512-tdQAmyA18i4J7wprpYq8ClcxZy3SC31QMeByyCFyRt7BVHdREQZ5lpzoe5mFEYZUWe+oq8HBvk9JjpibyEV4Jg==", + "license": "ISC", "dependencies": { "internmap": "1 - 2" }, @@ -5746,6 +4995,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/d3-axis/-/d3-axis-3.0.0.tgz", "integrity": "sha512-IH5tgjV4jE/GhHkRV0HiVYPDtvfjHQlQfJHs0usq7M30XcSBvOotpmH1IgkcXsO/5gEQZD43B//fc7SRT5S+xw==", + "license": "ISC", "engines": { "node": ">=12" } @@ -5754,6 +5004,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/d3-brush/-/d3-brush-3.0.0.tgz", "integrity": "sha512-ALnjWlVYkXsVIGlOsuWH1+3udkYFI48Ljihfnh8FZPF2QS9o+PzGLBslO0PjzVoHLZ2KCVgAM8NVkXPJB2aNnQ==", + "license": "ISC", "dependencies": { "d3-dispatch": "1 - 3", "d3-drag": "2 - 3", @@ -5769,6 +5020,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/d3-chord/-/d3-chord-3.0.1.tgz", "integrity": "sha512-VE5S6TNa+j8msksl7HwjxMHDM2yNK3XCkusIlpX5kwauBfXuyLAtNg9jCp/iHH61tgI4sb6R/EIMWCqEIdjT/g==", + "license": "ISC", "dependencies": { "d3-path": "1 - 3" }, @@ -5780,6 +5032,7 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/d3-color/-/d3-color-3.1.0.tgz", "integrity": "sha512-zg/chbXyeBtMQ1LbD/WSoW2DpC3I0mpmPdW+ynRTj/x2DAWYrIY7qeZIHidozwV24m4iavr15lNwIwLxRmOxhA==", + "license": "ISC", "engines": { "node": ">=12" } @@ -5788,6 +5041,7 @@ "version": "4.0.2", "resolved": "https://registry.npmjs.org/d3-contour/-/d3-contour-4.0.2.tgz", "integrity": "sha512-4EzFTRIikzs47RGmdxbeUvLWtGedDUNkTcmzoeyg4sP/dvCexO47AaQL7VKy/gul85TOxw+IBgA8US2xwbToNA==", + "license": "ISC", "dependencies": { "d3-array": "^3.2.0" }, @@ -5799,6 +5053,7 @@ "version": "6.0.4", "resolved": "https://registry.npmjs.org/d3-delaunay/-/d3-delaunay-6.0.4.tgz", "integrity": "sha512-mdjtIZ1XLAM8bm/hx3WwjfHt6Sggek7qH043O8KEjDXN40xi3vx/6pYSVTwLjEgiXQTbvaouWKynLBiUZ6SK6A==", + "license": "ISC", "dependencies": { "delaunator": "5" }, @@ -5810,6 +5065,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/d3-dispatch/-/d3-dispatch-3.0.1.tgz", "integrity": "sha512-rzUyPU/S7rwUflMyLc1ETDeBj0NRuHKKAcvukozwhshr6g6c5d8zh4c2gQjY2bZ0dXeGLWc1PF174P2tVvKhfg==", + "license": "ISC", "engines": { "node": ">=12" } @@ -5818,6 +5074,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/d3-drag/-/d3-drag-3.0.0.tgz", "integrity": "sha512-pWbUJLdETVA8lQNJecMxoXfH6x+mO2UQo8rSmZ+QqxcbyA3hfeprFgIT//HW2nlHChWeIIMwS2Fq+gEARkhTkg==", + "license": "ISC", "dependencies": { "d3-dispatch": "1 - 3", "d3-selection": "3" @@ -5830,6 +5087,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/d3-dsv/-/d3-dsv-3.0.1.tgz", "integrity": "sha512-UG6OvdI5afDIFP9w4G0mNq50dSOsXHJaRE8arAS5o9ApWnIElp8GZw1Dun8vP8OyHOZ/QJUKUJwxiiCCnUwm+Q==", + "license": "ISC", "dependencies": { "commander": "7", "iconv-lite": "0.6", @@ -5854,6 +5112,7 @@ "version": "7.2.0", "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz", "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==", + "license": "MIT", "engines": { "node": ">= 10" } @@ -5862,6 +5121,7 @@ "version": "0.6.3", "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "license": "MIT", "dependencies": { "safer-buffer": ">= 2.1.2 < 3.0.0" }, @@ -5873,6 +5133,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/d3-ease/-/d3-ease-3.0.1.tgz", "integrity": "sha512-wR/XK3D3XcLIZwpbvQwQ5fK+8Ykds1ip7A2Txe0yxncXSdq1L9skcG7blcedkOX+ZcgxGAmLX1FrRGbADwzi0w==", + "license": "BSD-3-Clause", "engines": { "node": ">=12" } @@ -5881,6 +5142,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/d3-fetch/-/d3-fetch-3.0.1.tgz", "integrity": "sha512-kpkQIM20n3oLVBKGg6oHrUchHM3xODkTzjMoj7aWQFq5QEM+R6E4WkzT5+tojDY7yjez8KgCBRoj4aEr99Fdqw==", + "license": "ISC", "dependencies": { "d3-dsv": "1 - 3" }, @@ -5892,6 +5154,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/d3-force/-/d3-force-3.0.0.tgz", "integrity": "sha512-zxV/SsA+U4yte8051P4ECydjD/S+qeYtnaIyAs9tgHCqfguma/aAQDjo85A9Z6EKhBirHRJHXIgJUlffT4wdLg==", + "license": "ISC", "dependencies": { "d3-dispatch": "1 - 3", "d3-quadtree": "1 - 3", @@ -5905,6 +5168,7 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/d3-format/-/d3-format-3.1.0.tgz", "integrity": "sha512-YyUI6AEuY/Wpt8KWLgZHsIU86atmikuoOmCfommt0LYHiQSPjvX2AcFc38PX0CBpr2RCyZhjex+NS/LPOv6YqA==", + "license": "ISC", "engines": { "node": ">=12" } @@ -5913,6 +5177,7 @@ "version": "3.1.1", "resolved": "https://registry.npmjs.org/d3-geo/-/d3-geo-3.1.1.tgz", "integrity": "sha512-637ln3gXKXOwhalDzinUgY83KzNWZRKbYubaG+fGVuc/dxO64RRljtCTnf5ecMyE1RIdtqpkVcq0IbtU2S8j2Q==", + "license": "ISC", "dependencies": { "d3-array": "2.5.0 - 3" }, @@ -5924,6 +5189,7 @@ "version": "3.1.2", "resolved": "https://registry.npmjs.org/d3-hierarchy/-/d3-hierarchy-3.1.2.tgz", "integrity": "sha512-FX/9frcub54beBdugHjDCdikxThEqjnR93Qt7PvQTOHxyiNCAlvMrHhclk3cD5VeAaq9fxmfRp+CnWw9rEMBuA==", + "license": "ISC", "engines": { "node": ">=12" } @@ -5932,6 +5198,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/d3-interpolate/-/d3-interpolate-3.0.1.tgz", "integrity": "sha512-3bYs1rOD33uo8aqJfKP3JWPAibgw8Zm2+L9vBKEHJ2Rg+viTR7o5Mmv5mZcieN+FRYaAOWX5SJATX6k1PWz72g==", + "license": "ISC", "dependencies": { "d3-color": "1 - 3" }, @@ -5943,6 +5210,7 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/d3-path/-/d3-path-3.1.0.tgz", "integrity": "sha512-p3KP5HCf/bvjBSSKuXid6Zqijx7wIfNW+J/maPs+iwR35at5JCbLUT0LzF1cnjbCHWhqzQTIN2Jpe8pRebIEFQ==", + "license": "ISC", "engines": { "node": ">=12" } @@ -5951,6 +5219,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/d3-polygon/-/d3-polygon-3.0.1.tgz", "integrity": "sha512-3vbA7vXYwfe1SYhED++fPUQlWSYTTGmFmQiany/gdbiWgU/iEyQzyymwL9SkJjFFuCS4902BSzewVGsHHmHtXg==", + "license": "ISC", "engines": { "node": ">=12" } @@ -5959,6 +5228,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/d3-quadtree/-/d3-quadtree-3.0.1.tgz", "integrity": "sha512-04xDrxQTDTCFwP5H6hRhsRcb9xxv2RzkcsygFzmkSIOJy3PeRJP7sNk3VRIbKXcog561P9oU0/rVH6vDROAgUw==", + "license": "ISC", "engines": { "node": ">=12" } @@ -5967,6 +5237,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/d3-random/-/d3-random-3.0.1.tgz", "integrity": "sha512-FXMe9GfxTxqd5D6jFsQ+DJ8BJS4E/fT5mqqdjovykEB2oFbTMDVdg1MGFxfQW+FBOGoB++k8swBrgwSHT1cUXQ==", + "license": "ISC", "engines": { "node": ">=12" } @@ -5975,6 +5246,7 @@ "version": "0.12.3", "resolved": "https://registry.npmjs.org/d3-sankey/-/d3-sankey-0.12.3.tgz", "integrity": "sha512-nQhsBRmM19Ax5xEIPLMY9ZmJ/cDvd1BG3UVvt5h3WRxKg5zGRbvnteTyWAbzeSvlh3tW7ZEmq4VwR5mB3tutmQ==", + "license": "BSD-3-Clause", "dependencies": { "d3-array": "1 - 2", "d3-shape": "^1.2.0" @@ -5984,6 +5256,7 @@ "version": "2.12.1", "resolved": "https://registry.npmjs.org/d3-array/-/d3-array-2.12.1.tgz", "integrity": "sha512-B0ErZK/66mHtEsR1TkPEEkwdy+WDesimkM5gpZr5Dsg54BiTA5RXtYW5qTLIAcekaS9xfZrzBLF/OAkB3Qn1YQ==", + "license": "BSD-3-Clause", "dependencies": { "internmap": "^1.0.0" } @@ -5991,12 +5264,14 @@ "node_modules/d3-sankey/node_modules/d3-path": { "version": "1.0.9", "resolved": "https://registry.npmjs.org/d3-path/-/d3-path-1.0.9.tgz", - "integrity": "sha512-VLaYcn81dtHVTjEHd8B+pbe9yHWpXKZUC87PzoFmsFrJqgFwDe/qxfp5MlfsfM1V5E/iVt0MmEbWQ7FVIXh/bg==" + "integrity": "sha512-VLaYcn81dtHVTjEHd8B+pbe9yHWpXKZUC87PzoFmsFrJqgFwDe/qxfp5MlfsfM1V5E/iVt0MmEbWQ7FVIXh/bg==", + "license": "BSD-3-Clause" }, "node_modules/d3-sankey/node_modules/d3-shape": { "version": "1.3.7", "resolved": "https://registry.npmjs.org/d3-shape/-/d3-shape-1.3.7.tgz", "integrity": "sha512-EUkvKjqPFUAZyOlhY5gzCxCeI0Aep04LwIRpsZ/mLFelJiUfnK56jo5JMDSE7yyP2kLSb6LtF+S5chMk7uqPqw==", + "license": "BSD-3-Clause", "dependencies": { "d3-path": "1" } @@ -6004,12 +5279,14 @@ "node_modules/d3-sankey/node_modules/internmap": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/internmap/-/internmap-1.0.1.tgz", - "integrity": "sha512-lDB5YccMydFBtasVtxnZ3MRBHuaoE8GKsppq+EchKL2U4nK/DmEpPHNH8MZe5HkMtpSiTSOZwfN0tzYjO/lJEw==" + "integrity": "sha512-lDB5YccMydFBtasVtxnZ3MRBHuaoE8GKsppq+EchKL2U4nK/DmEpPHNH8MZe5HkMtpSiTSOZwfN0tzYjO/lJEw==", + "license": "ISC" }, "node_modules/d3-scale": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/d3-scale/-/d3-scale-4.0.2.tgz", "integrity": "sha512-GZW464g1SH7ag3Y7hXjf8RoUuAFIqklOAq3MRl4OaWabTFJY9PN/E1YklhXLh+OQ3fM9yS2nOkCoS+WLZ6kvxQ==", + "license": "ISC", "dependencies": { "d3-array": "2.10.0 - 3", "d3-format": "1 - 3", @@ -6025,6 +5302,7 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/d3-scale-chromatic/-/d3-scale-chromatic-3.1.0.tgz", "integrity": "sha512-A3s5PWiZ9YCXFye1o246KoscMWqf8BsD9eRiJ3He7C9OBaxKhAd5TFCdEx/7VbKtxxTsu//1mMJFrEt572cEyQ==", + "license": "ISC", "dependencies": { "d3-color": "1 - 3", "d3-interpolate": "1 - 3" @@ -6037,6 +5315,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/d3-selection/-/d3-selection-3.0.0.tgz", "integrity": "sha512-fmTRWbNMmsmWq6xJV8D19U/gw/bwrHfNXxrIN+HfZgnzqTHp9jOmKMhsTUjXOJnZOdZY9Q28y4yebKzqDKlxlQ==", + "license": "ISC", "engines": { "node": ">=12" } @@ -6045,6 +5324,7 @@ "version": "3.2.0", "resolved": "https://registry.npmjs.org/d3-shape/-/d3-shape-3.2.0.tgz", "integrity": "sha512-SaLBuwGm3MOViRq2ABk3eLoxwZELpH6zhl3FbAoJ7Vm1gofKx6El1Ib5z23NUEhF9AsGl7y+dzLe5Cw2AArGTA==", + "license": "ISC", "dependencies": { "d3-path": "^3.1.0" }, @@ -6056,6 +5336,7 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/d3-time/-/d3-time-3.1.0.tgz", "integrity": "sha512-VqKjzBLejbSMT4IgbmVgDjpkYrNWUYJnbCGo874u7MMKIWsILRX+OpX/gTk8MqjpT1A/c6HY2dCA77ZN0lkQ2Q==", + "license": "ISC", "dependencies": { "d3-array": "2 - 3" }, @@ -6067,6 +5348,7 @@ "version": "4.1.0", "resolved": "https://registry.npmjs.org/d3-time-format/-/d3-time-format-4.1.0.tgz", "integrity": "sha512-dJxPBlzC7NugB2PDLwo9Q8JiTR3M3e4/XANkreKSUxF8vvXKqm1Yfq4Q5dl8budlunRVlUUaDUgFt7eA8D6NLg==", + "license": "ISC", "dependencies": { "d3-time": "1 - 3" }, @@ -6078,6 +5360,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/d3-timer/-/d3-timer-3.0.1.tgz", "integrity": "sha512-ndfJ/JxxMd3nw31uyKoY2naivF+r29V+Lc0svZxe1JvvIRmi8hUsrMvdOwgS1o6uBHmiz91geQ0ylPP0aj1VUA==", + "license": "ISC", "engines": { "node": ">=12" } @@ -6086,6 +5369,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/d3-transition/-/d3-transition-3.0.1.tgz", "integrity": "sha512-ApKvfjsSR6tg06xrL434C0WydLr7JewBB3V+/39RMHsaXTOG0zmt/OAXeng5M5LBm0ojmxJrpomQVZ1aPvBL4w==", + "license": "ISC", "dependencies": { "d3-color": "1 - 3", "d3-dispatch": "1 - 3", @@ -6104,6 +5388,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/d3-zoom/-/d3-zoom-3.0.0.tgz", "integrity": "sha512-b8AmV3kfQaqWAuacbPuNbL6vahnOJflOhexLzMMNLga62+/nh0JzvJ0aO/5a5MVgUFGS7Hu1P9P03o3fJkDCyw==", + "license": "ISC", "dependencies": { "d3-dispatch": "1 - 3", "d3-drag": "2 - 3", @@ -6119,6 +5404,7 @@ "version": "7.0.10", "resolved": "https://registry.npmjs.org/dagre-d3-es/-/dagre-d3-es-7.0.10.tgz", "integrity": "sha512-qTCQmEhcynucuaZgY5/+ti3X/rnszKZhEQH/ZdWdtP1tA/y3VoHJzcVrO9pjjJCNpigfscAtoUB5ONcd2wNn0A==", + "license": "MIT", "dependencies": { "d3": "^7.8.2", "lodash-es": "^4.17.21" @@ -6128,13 +5414,15 @@ "version": "1.0.8", "resolved": "https://registry.npmjs.org/damerau-levenshtein/-/damerau-levenshtein-1.0.8.tgz", "integrity": "sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==", - "dev": true + "dev": true, + "license": "BSD-2-Clause" }, "node_modules/data-uri-to-buffer": { "version": "6.0.2", "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-6.0.2.tgz", "integrity": "sha512-7hvf7/GW8e86rW0ptuwS3OcBGDjIi6SZva7hCyWC0yYry2cOPmLIjXAUHI6DK2HsnwJd9ifmt57i8eV2n4YNpw==", "dev": true, + "license": "MIT", "engines": { "node": ">= 14" } @@ -6144,6 +5432,7 @@ "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.1.tgz", "integrity": "sha512-0lht7OugA5x3iJLOWFhWK/5ehONdprk0ISXqVFn/NFrDu+cuc8iADFrGQz5BnRK7LLU3JmkbXSxaqX+/mXYtUA==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.6", "es-errors": "^1.3.0", @@ -6161,6 +5450,7 @@ "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.1.tgz", "integrity": "sha512-4J7wRJD3ABAzr8wP+OcIcqq2dlUKp4DVflx++hs5h5ZKydWMI6/D/fAot+yh6g2tHh8fLFTvNOaVN357NvSrOQ==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.7", "es-errors": "^1.3.0", @@ -6178,6 +5468,7 @@ "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.0.tgz", "integrity": "sha512-t/Ygsytq+R995EJ5PZlD4Cu56sWa8InXySaViRzw9apusqsOO2bQP+SbYzAhR0pFKoB+43lYy8rWban9JSuXnA==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.6", "es-errors": "^1.3.0", @@ -6195,19 +5486,22 @@ "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-4.6.3.tgz", "integrity": "sha512-2P0p0pFGzHS5EMnhdxQi7aJN+iMheud0UhG4dlE1DLAlvL8JHjJJTX/CSm4JXwV0Ka5nGk3zC5mcb5bUQUxxMA==", "dev": true, + "license": "MIT", "engines": { "node": "*" } }, "node_modules/dayjs": { - "version": "1.11.11", - "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.11.tgz", - "integrity": "sha512-okzr3f11N6WuqYtZSvm+F776mB41wRZMhKP+hc34YdW+KmtYYK9iqvHSwo2k9FEH3fhGXvOPV6yz2IcSrfRUDg==" + "version": "1.11.13", + "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.13.tgz", + "integrity": "sha512-oaMBel6gjolK862uaPQOVTA7q3TZhuSvuMQAAglQDOWYO9A91IrAOUJEyKVlqJlHE0vq5p5UXxzdPfMH/x6xNg==", + "license": "MIT" }, "node_modules/debug": { - "version": "4.3.5", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.5.tgz", - "integrity": "sha512-pt0bNEmneDIvdL1Xsd9oDQ/wrQRkXDT4AUWlNZNPKvW5x/jyO9VFXkJUP07vQ2upmw5PlaITaPKc31jK13V+jg==", + "version": "4.3.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.6.tgz", + "integrity": "sha512-O/09Bd4Z1fBrU4VzkhFqVgpPzaGbw6Sm9FEkBT1A/YBXQFGuuSxa1dN2nxgxS34JmKXqYx8CZAwEVoJFImUXIg==", + "license": "MIT", "dependencies": { "ms": "2.1.2" }, @@ -6224,6 +5518,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/decode-named-character-reference/-/decode-named-character-reference-1.0.2.tgz", "integrity": "sha512-O8x12RzrUF8xyVcY0KJowWsmaJxQbmy0/EtnNtHRpsOcT7dFk5W598coHqBVpmWo1oQQfsCqfCmkZN5DJrZVdg==", + "license": "MIT", "dependencies": { "character-entities": "^2.0.0" }, @@ -6232,17 +5527,51 @@ "url": "https://github.com/sponsors/wooorm" } }, + "node_modules/deep-equal": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-2.2.3.tgz", + "integrity": "sha512-ZIwpnevOurS8bpT4192sqAowWM76JDKSHYzMLty3BZGSswgq6pBaH3DhCSW5xVAZICZyKdOBPjwww5wfgT/6PA==", + "dev": true, + "license": "MIT", + "dependencies": { + "array-buffer-byte-length": "^1.0.0", + "call-bind": "^1.0.5", + "es-get-iterator": "^1.1.3", + "get-intrinsic": "^1.2.2", + "is-arguments": "^1.1.1", + "is-array-buffer": "^3.0.2", + "is-date-object": "^1.0.5", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.2", + "isarray": "^2.0.5", + "object-is": "^1.1.5", + "object-keys": "^1.1.1", + "object.assign": "^4.1.4", + "regexp.prototype.flags": "^1.5.1", + "side-channel": "^1.0.4", + "which-boxed-primitive": "^1.0.2", + "which-collection": "^1.0.1", + "which-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/deep-is": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/define-data-property": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", - "dev": true, + "license": "MIT", "dependencies": { "es-define-property": "^1.0.0", "es-errors": "^1.3.0", @@ -6260,6 +5589,7 @@ "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", "dev": true, + "license": "MIT", "dependencies": { "define-data-property": "^1.0.1", "has-property-descriptors": "^1.0.0", @@ -6277,6 +5607,7 @@ "resolved": "https://registry.npmjs.org/degenerator/-/degenerator-5.0.1.tgz", "integrity": "sha512-TllpMR/t0M5sqCXfj85i4XaAzxmS5tVA16dqvdkMwGmzI+dXLXnw3J+3Vdv7VKw+ThlTMboK6i9rnZ6Nntj5CQ==", "dev": true, + "license": "MIT", "dependencies": { "ast-types": "^0.13.4", "escodegen": "^2.1.0", @@ -6290,6 +5621,7 @@ "version": "5.0.1", "resolved": "https://registry.npmjs.org/delaunator/-/delaunator-5.0.1.tgz", "integrity": "sha512-8nvh+XBe96aCESrGOqMp/84b13H9cdKbG5P2ejQCh4d4sK9RL4371qou9drQjMhvnPmhWl5hnmqbEE0fXr9Xnw==", + "license": "ISC", "dependencies": { "robust-predicates": "^3.0.2" } @@ -6298,6 +5630,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", + "license": "MIT", "engines": { "node": ">=0.4.0" } @@ -6306,6 +5639,7 @@ "version": "2.0.3", "resolved": "https://registry.npmjs.org/dequal/-/dequal-2.0.3.tgz", "integrity": "sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==", + "license": "MIT", "engines": { "node": ">=6" } @@ -6314,15 +5648,7 @@ "version": "6.1.0", "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-6.1.0.tgz", "integrity": "sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA==", - "engines": { - "node": ">=8" - } - }, - "node_modules/detect-libc": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.3.tgz", - "integrity": "sha512-bwy0MGW55bG41VqxxypOsdSdGqLwXPI/focwgTYCFMbdUiBAxLg9CFzG08sz2aqzknwiX7Hkl0bQENjg8iLByw==", - "optional": true, + "license": "MIT", "engines": { "node": ">=8" } @@ -6332,6 +5658,7 @@ "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-4.0.1.tgz", "integrity": "sha512-qE3Veg1YXzGHQhlA6jzebZN2qVf6NX+A7m7qlhCGG30dJixrAQhYOsJjsnBjJkCSmuOPpCk30145fr8FV0bzog==", "dev": true, + "license": "MIT", "engines": { "node": "^12.20.0 || ^14.13.1 || >=16.0.0" }, @@ -6343,6 +5670,7 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/devlop/-/devlop-1.1.0.tgz", "integrity": "sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==", + "license": "MIT", "dependencies": { "dequal": "^2.0.0" }, @@ -6355,6 +5683,7 @@ "version": "5.2.0", "resolved": "https://registry.npmjs.org/diff/-/diff-5.2.0.tgz", "integrity": "sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==", + "license": "BSD-3-Clause", "engines": { "node": ">=0.3.1" } @@ -6367,6 +5696,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "license": "MIT", "dependencies": { "path-type": "^4.0.0" }, @@ -6379,6 +5709,7 @@ "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", "dev": true, + "license": "Apache-2.0", "dependencies": { "esutils": "^2.0.2" }, @@ -6387,14 +5718,16 @@ } }, "node_modules/dompurify": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-3.1.5.tgz", - "integrity": "sha512-lwG+n5h8QNpxtyrJW/gJWckL+1/DQiYMX8f7t8Z2AZTPw1esVrqjI63i7Zc2Gz0aKzLVMYC1V1PL/ky+aY/NgA==" + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-3.1.6.tgz", + "integrity": "sha512-cTOAhc36AalkjtBpfG6O8JimdTMWNXjiePT2xQH/ppBGi/4uIpmj8eKyIkMJErXWARyINV/sB38yf8JCLF5pbQ==", + "license": "(MPL-2.0 OR Apache-2.0)" }, "node_modules/dotenv": { "version": "16.4.5", "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.4.5.tgz", "integrity": "sha512-ZmdL2rui+eB2YwhsWzjInR8LldtZHGDoQ1ugH85ppHKwpUHL7j7rN0Ti9NCnGiQbhaZ11FpR+7ao1dNsmduNUg==", + "license": "BSD-2-Clause", "engines": { "node": ">=12" }, @@ -6407,6 +5740,7 @@ "resolved": "https://registry.npmjs.org/dotenv-cli/-/dotenv-cli-7.4.2.tgz", "integrity": "sha512-SbUj8l61zIbzyhIbg0FwPJq6+wjbzdn9oEtozQpZ6kW2ihCcapKVZj49oCT3oPM+mgQm+itgvUQcG5szxVrZTA==", "dev": true, + "license": "MIT", "dependencies": { "cross-spawn": "^7.0.3", "dotenv": "^16.3.0", @@ -6422,6 +5756,7 @@ "resolved": "https://registry.npmjs.org/dotenv-expand/-/dotenv-expand-10.0.0.tgz", "integrity": "sha512-GopVGCpVS1UKH75VKHGuQFqS1Gusej0z4FyQkPdwjil2gNIv+LNsqBlboOzpJFZKVT95GkCyWJbBSdFEFUWI2A==", "dev": true, + "license": "BSD-2-Clause", "engines": { "node": ">=12" } @@ -6430,39 +5765,45 @@ "version": "0.2.0", "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/electron-to-chromium": { - "version": "1.4.803", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.803.tgz", - "integrity": "sha512-61H9mLzGOCLLVsnLiRzCbc63uldP0AniRYPV3hbGVtONA1pI7qSGILdbofR7A8TMbOypDocEAjH/e+9k1QIe3g==", - "dev": true + "version": "1.5.13", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.13.tgz", + "integrity": "sha512-lbBcvtIJ4J6sS4tb5TLp1b4LyfCdMkwStzXPyAgVgTRAsep4bvrAGaBOP7ZJtQMNJpSQ9SqG4brWOroNaQtm7Q==", + "dev": true, + "license": "ISC" }, "node_modules/elkjs": { "version": "0.9.3", "resolved": "https://registry.npmjs.org/elkjs/-/elkjs-0.9.3.tgz", - "integrity": "sha512-f/ZeWvW/BCXbhGEf1Ujp29EASo/lk1FDnETgNKwJrsVvGZhUWCZyg3xLJjAsxfOmt8KjswHmI5EwCQcPMpOYhQ==" + "integrity": "sha512-f/ZeWvW/BCXbhGEf1Ujp29EASo/lk1FDnETgNKwJrsVvGZhUWCZyg3xLJjAsxfOmt8KjswHmI5EwCQcPMpOYhQ==", + "license": "EPL-2.0" }, "node_modules/emoji-regex": { "version": "9.2.2", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/end-of-stream": { "version": "1.4.4", "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", "dev": true, + "license": "MIT", "dependencies": { "once": "^1.4.0" } }, "node_modules/enhanced-resolve": { - "version": "5.17.0", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.17.0.tgz", - "integrity": "sha512-dwDPwZL0dmye8Txp2gzFmA6sxALaSvdRDjPH0viLcKrtlOL3tw62nWWweVD1SdILDTJrbrL6tdWVN58Wo6U3eA==", + "version": "5.17.1", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.17.1.tgz", + "integrity": "sha512-LMHl3dXhTcfv8gM4kEzIUeTQ+7fpdA0l2tUf34BddXPkz2A5xJ5L/Pchd5BL6rdccM9QGvu0sWZzK1Z1t4wwyg==", "dev": true, + "license": "MIT", "dependencies": { "graceful-fs": "^4.2.4", "tapable": "^2.2.0" @@ -6475,6 +5816,7 @@ "version": "2.4.1", "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.4.1.tgz", "integrity": "sha512-rRqJg/6gd538VHvR3PSrdRBb/1Vy2YfzHqzvbhGIQpDRKIa4FgV/54b5Q1xYSxOOwKvjXweS26E0Q+nAMwp2pQ==", + "license": "MIT", "dependencies": { "ansi-colors": "^4.1.1", "strip-ansi": "^6.0.1" @@ -6487,6 +5829,7 @@ "version": "4.5.0", "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", + "license": "BSD-2-Clause", "engines": { "node": ">=0.12" }, @@ -6499,6 +5842,7 @@ "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", "dev": true, + "license": "MIT", "dependencies": { "is-arrayish": "^0.2.1" } @@ -6508,6 +5852,7 @@ "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.23.3.tgz", "integrity": "sha512-e+HfNH61Bj1X9/jLc5v1owaLYuHdeHHSQlkhCBiTK8rBvKaULl/beGMxwrMXjpYrv4pz22BlY570vVePA2ho4A==", "dev": true, + "license": "MIT", "dependencies": { "array-buffer-byte-length": "^1.0.1", "arraybuffer.prototype.slice": "^1.0.3", @@ -6567,7 +5912,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.0.tgz", "integrity": "sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==", - "dev": true, + "license": "MIT", "dependencies": { "get-intrinsic": "^1.2.4" }, @@ -6579,16 +5924,38 @@ "version": "1.3.0", "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", - "dev": true, + "license": "MIT", "engines": { "node": ">= 0.4" } }, + "node_modules/es-get-iterator": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/es-get-iterator/-/es-get-iterator-1.1.3.tgz", + "integrity": "sha512-sPZmqHBe6JIiTfN5q2pEi//TwxmAFHwj/XEuYjTuse78i8KxaqMTTzxPoFKuzRpDpTJ+0NAbpfenkmH2rePtuw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.3", + "has-symbols": "^1.0.3", + "is-arguments": "^1.1.1", + "is-map": "^2.0.2", + "is-set": "^2.0.2", + "is-string": "^1.0.7", + "isarray": "^2.0.5", + "stop-iteration-iterator": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/es-iterator-helpers": { "version": "1.0.19", "resolved": "https://registry.npmjs.org/es-iterator-helpers/-/es-iterator-helpers-1.0.19.tgz", "integrity": "sha512-zoMwbCcH5hwUkKJkT8kDIBZSz9I6mVG//+lDCinLCGov4+r7NIy0ld8o03M0cJxl2spVf6ESYVS6/gpIfq1FFw==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.7", "define-properties": "^1.2.1", @@ -6614,6 +5981,7 @@ "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.0.0.tgz", "integrity": "sha512-MZ4iQ6JwHOBQjahnjwaC1ZtIBH+2ohjamzAO3oaHcXYup7qxjF2fixyH+Q71voWHeOkI2q/TnJao/KfXYIZWbw==", "dev": true, + "license": "MIT", "dependencies": { "es-errors": "^1.3.0" }, @@ -6626,6 +5994,7 @@ "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.3.tgz", "integrity": "sha512-3T8uNMC3OQTHkFUsFq8r/BwAXLHvU/9O9mE0fBc/MY5iq/8H7ncvO947LmYA6ldWw9Uh8Yhf25zu6n7nML5QWQ==", "dev": true, + "license": "MIT", "dependencies": { "get-intrinsic": "^1.2.4", "has-tostringtag": "^1.0.2", @@ -6640,6 +6009,7 @@ "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.2.tgz", "integrity": "sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw==", "dev": true, + "license": "MIT", "dependencies": { "hasown": "^2.0.0" } @@ -6649,6 +6019,7 @@ "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", "dev": true, + "license": "MIT", "dependencies": { "is-callable": "^1.1.4", "is-date-object": "^1.0.1", @@ -6662,11 +6033,12 @@ } }, "node_modules/esbuild": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.23.0.tgz", - "integrity": "sha512-1lvV17H2bMYda/WaFb2jLPeHU3zml2k4/yagNMG8Q/YtfMjCwEUZa2eXXMgZTVSL5q1n4H7sQ0X6CdJDqqeCFA==", + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.23.1.tgz", + "integrity": "sha512-VVNz/9Sa0bs5SELtn3f7qhJCDPCF5oMEl5cO9/SSinpE9hbPVvxbd572HH5AKiP7WD8INO53GgfDDhRjkylHEg==", "dev": true, "hasInstallScript": true, + "license": "MIT", "bin": { "esbuild": "bin/esbuild" }, @@ -6674,50 +6046,49 @@ "node": ">=18" }, "optionalDependencies": { - "@esbuild/aix-ppc64": "0.23.0", - "@esbuild/android-arm": "0.23.0", - "@esbuild/android-arm64": "0.23.0", - "@esbuild/android-x64": "0.23.0", - "@esbuild/darwin-arm64": "0.23.0", - "@esbuild/darwin-x64": "0.23.0", - "@esbuild/freebsd-arm64": "0.23.0", - "@esbuild/freebsd-x64": "0.23.0", - "@esbuild/linux-arm": "0.23.0", - "@esbuild/linux-arm64": "0.23.0", - "@esbuild/linux-ia32": "0.23.0", - "@esbuild/linux-loong64": "0.23.0", - "@esbuild/linux-mips64el": "0.23.0", - "@esbuild/linux-ppc64": "0.23.0", - "@esbuild/linux-riscv64": "0.23.0", - "@esbuild/linux-s390x": "0.23.0", - "@esbuild/linux-x64": "0.23.0", - "@esbuild/netbsd-x64": "0.23.0", - "@esbuild/openbsd-arm64": "0.23.0", - "@esbuild/openbsd-x64": "0.23.0", - "@esbuild/sunos-x64": "0.23.0", - "@esbuild/win32-arm64": "0.23.0", - "@esbuild/win32-ia32": "0.23.0", - "@esbuild/win32-x64": "0.23.0" + "@esbuild/aix-ppc64": "0.23.1", + "@esbuild/android-arm": "0.23.1", + "@esbuild/android-arm64": "0.23.1", + "@esbuild/android-x64": "0.23.1", + "@esbuild/darwin-arm64": "0.23.1", + "@esbuild/darwin-x64": "0.23.1", + "@esbuild/freebsd-arm64": "0.23.1", + "@esbuild/freebsd-x64": "0.23.1", + "@esbuild/linux-arm": "0.23.1", + "@esbuild/linux-arm64": "0.23.1", + "@esbuild/linux-ia32": "0.23.1", + "@esbuild/linux-loong64": "0.23.1", + "@esbuild/linux-mips64el": "0.23.1", + "@esbuild/linux-ppc64": "0.23.1", + "@esbuild/linux-riscv64": "0.23.1", + "@esbuild/linux-s390x": "0.23.1", + "@esbuild/linux-x64": "0.23.1", + "@esbuild/netbsd-x64": "0.23.1", + "@esbuild/openbsd-arm64": "0.23.1", + "@esbuild/openbsd-x64": "0.23.1", + "@esbuild/sunos-x64": "0.23.1", + "@esbuild/win32-arm64": "0.23.1", + "@esbuild/win32-ia32": "0.23.1", + "@esbuild/win32-x64": "0.23.1" } }, "node_modules/escalade": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.2.tgz", - "integrity": "sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", "dev": true, + "license": "MIT", "engines": { "node": ">=6" } }, "node_modules/escape-string-regexp": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", - "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "license": "MIT", "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=0.8.0" } }, "node_modules/escodegen": { @@ -6725,6 +6096,7 @@ "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-2.1.0.tgz", "integrity": "sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w==", "dev": true, + "license": "BSD-2-Clause", "dependencies": { "esprima": "^4.0.1", "estraverse": "^5.2.0", @@ -6746,6 +6118,7 @@ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "dev": true, + "license": "BSD-3-Clause", "optional": true, "engines": { "node": ">=0.10.0" @@ -6756,6 +6129,7 @@ "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.57.0.tgz", "integrity": "sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ==", "dev": true, + "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.6.1", @@ -6811,6 +6185,7 @@ "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-9.1.0.tgz", "integrity": "sha512-NSWl5BFQWEPi1j4TjVNItzYV7dZXZ+wP6I6ZhrBGpChQhZRUaElihE9uRRkcbRnNb76UMKDF3r+WTmNcGPKsqw==", "dev": true, + "license": "MIT", "bin": { "eslint-config-prettier": "bin/cli.js" }, @@ -6823,6 +6198,7 @@ "resolved": "https://registry.npmjs.org/eslint-config-turbo/-/eslint-config-turbo-2.1.1.tgz", "integrity": "sha512-JJF8SZErmgKCGkt124WUmTt0sQ5YLvPo2YxDsfzn9avGJC7/BQIa+3FZoDb3zeYYsZx91pZ6htQAJaKK8NQQAg==", "dev": true, + "license": "MIT", "dependencies": { "eslint-plugin-turbo": "2.1.1" }, @@ -6835,6 +6211,7 @@ "resolved": "https://registry.npmjs.org/eslint-import-resolver-alias/-/eslint-import-resolver-alias-1.1.2.tgz", "integrity": "sha512-WdviM1Eu834zsfjHtcGHtGfcu+F30Od3V7I9Fi57uhBEwPkjDcii7/yW8jAT+gOhn4P/vOxxNAXbFAKsrrc15w==", "dev": true, + "license": "MIT", "engines": { "node": ">= 4" }, @@ -6847,6 +6224,7 @@ "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz", "integrity": "sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==", "dev": true, + "license": "MIT", "dependencies": { "debug": "^3.2.7", "is-core-module": "^2.13.0", @@ -6858,22 +6236,25 @@ "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, + "license": "MIT", "dependencies": { "ms": "^2.1.1" } }, "node_modules/eslint-import-resolver-typescript": { - "version": "3.6.1", - "resolved": "https://registry.npmjs.org/eslint-import-resolver-typescript/-/eslint-import-resolver-typescript-3.6.1.tgz", - "integrity": "sha512-xgdptdoi5W3niYeuQxKmzVDTATvLYqhpwmykwsh7f6HIOStGWEIL9iqZgQDF9u9OEzrRwR8no5q2VT+bjAujTg==", + "version": "3.6.3", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-typescript/-/eslint-import-resolver-typescript-3.6.3.tgz", + "integrity": "sha512-ud9aw4szY9cCT1EWWdGv1L1XR6hh2PaRWif0j2QjQ0pgTY/69iw+W0Z4qZv5wHahOl8isEr+k/JnyAqNQkLkIA==", "dev": true, + "license": "ISC", "dependencies": { - "debug": "^4.3.4", - "enhanced-resolve": "^5.12.0", - "eslint-module-utils": "^2.7.4", - "fast-glob": "^3.3.1", - "get-tsconfig": "^4.5.0", - "is-core-module": "^2.11.0", + "@nolyfill/is-core-module": "1.0.39", + "debug": "^4.3.5", + "enhanced-resolve": "^5.15.0", + "eslint-module-utils": "^2.8.1", + "fast-glob": "^3.3.2", + "get-tsconfig": "^4.7.5", + "is-bun-module": "^1.0.2", "is-glob": "^4.0.3" }, "engines": { @@ -6884,14 +6265,24 @@ }, "peerDependencies": { "eslint": "*", - "eslint-plugin-import": "*" + "eslint-plugin-import": "*", + "eslint-plugin-import-x": "*" + }, + "peerDependenciesMeta": { + "eslint-plugin-import": { + "optional": true + }, + "eslint-plugin-import-x": { + "optional": true + } } }, "node_modules/eslint-module-utils": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.8.1.tgz", - "integrity": "sha512-rXDXR3h7cs7dy9RNpUlQf80nX31XWJEyGq1tRMo+6GsO5VmTe4UTwtmonAD4ZkAsrfMVDA2wlGJ3790Ys+D49Q==", + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.9.0.tgz", + "integrity": "sha512-McVbYmwA3NEKwRQY5g4aWMdcZE5xZxV8i8l7CqJSrameuGSQJtSWaL/LxTEzSKKaCcOhlpDR8XEfYXWPrdo/ZQ==", "dev": true, + "license": "MIT", "dependencies": { "debug": "^3.2.7" }, @@ -6909,6 +6300,7 @@ "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, + "license": "MIT", "dependencies": { "ms": "^2.1.1" } @@ -6918,6 +6310,7 @@ "resolved": "https://registry.npmjs.org/eslint-plugin-eslint-comments/-/eslint-plugin-eslint-comments-3.2.0.tgz", "integrity": "sha512-0jkOl0hfojIHHmEHgmNdqv4fmh7300NdpA9FFpF7zaoLvB/QeXOGNLIo86oAveJFrfB1p05kC8hpEMHM8DwWVQ==", "dev": true, + "license": "MIT", "dependencies": { "escape-string-regexp": "^1.0.5", "ignore": "^5.0.5" @@ -6932,36 +6325,29 @@ "eslint": ">=4.19.1" } }, - "node_modules/eslint-plugin-eslint-comments/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "dev": true, - "engines": { - "node": ">=0.8.0" - } - }, "node_modules/eslint-plugin-import": { - "version": "2.29.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.29.1.tgz", - "integrity": "sha512-BbPC0cuExzhiMo4Ff1BTVwHpjjv28C5R+btTOGaCRC7UEz801up0JadwkeSk5Ued6TG34uaczuVuH6qyy5YUxw==", + "version": "2.30.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.30.0.tgz", + "integrity": "sha512-/mHNE9jINJfiD2EKkg1BKyPyUk4zdnT54YgbOgfjSakWT5oyX/qQLVNTkehyfpcMxZXMy1zyonZ2v7hZTX43Yw==", "dev": true, + "license": "MIT", "dependencies": { - "array-includes": "^3.1.7", - "array.prototype.findlastindex": "^1.2.3", + "@rtsao/scc": "^1.1.0", + "array-includes": "^3.1.8", + "array.prototype.findlastindex": "^1.2.5", "array.prototype.flat": "^1.3.2", "array.prototype.flatmap": "^1.3.2", "debug": "^3.2.7", "doctrine": "^2.1.0", "eslint-import-resolver-node": "^0.3.9", - "eslint-module-utils": "^2.8.0", - "hasown": "^2.0.0", - "is-core-module": "^2.13.1", + "eslint-module-utils": "^2.9.0", + "hasown": "^2.0.2", + "is-core-module": "^2.15.1", "is-glob": "^4.0.3", "minimatch": "^3.1.2", - "object.fromentries": "^2.0.7", - "object.groupby": "^1.0.1", - "object.values": "^1.1.7", + "object.fromentries": "^2.0.8", + "object.groupby": "^1.0.3", + "object.values": "^1.2.0", "semver": "^6.3.1", "tsconfig-paths": "^3.15.0" }, @@ -6972,21 +6358,12 @@ "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8" } }, - "node_modules/eslint-plugin-import/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, "node_modules/eslint-plugin-import/node_modules/debug": { "version": "3.2.7", "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, + "license": "MIT", "dependencies": { "ms": "^2.1.1" } @@ -6996,6 +6373,7 @@ "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", "dev": true, + "license": "Apache-2.0", "dependencies": { "esutils": "^2.0.2" }, @@ -7003,23 +6381,12 @@ "node": ">=0.10.0" } }, - "node_modules/eslint-plugin-import/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, "node_modules/eslint-plugin-import/node_modules/semver": { "version": "6.3.1", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", "dev": true, + "license": "ISC", "bin": { "semver": "bin/semver.js" } @@ -7029,6 +6396,7 @@ "resolved": "https://registry.npmjs.org/eslint-plugin-jest/-/eslint-plugin-jest-27.9.0.tgz", "integrity": "sha512-QIT7FH7fNmd9n4se7FFKHbsLKGQiw885Ds6Y/sxKgCZ6natwCsXdgPOADnYVxN2QrRweF0FZWbJ6S7Rsn7llug==", "dev": true, + "license": "MIT", "dependencies": { "@typescript-eslint/utils": "^5.10.0" }, @@ -7054,6 +6422,7 @@ "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.62.0.tgz", "integrity": "sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==", "dev": true, + "license": "MIT", "dependencies": { "@typescript-eslint/types": "5.62.0", "@typescript-eslint/visitor-keys": "5.62.0" @@ -7071,6 +6440,7 @@ "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.62.0.tgz", "integrity": "sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==", "dev": true, + "license": "MIT", "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, @@ -7084,6 +6454,7 @@ "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.62.0.tgz", "integrity": "sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==", "dev": true, + "license": "BSD-2-Clause", "dependencies": { "@typescript-eslint/types": "5.62.0", "@typescript-eslint/visitor-keys": "5.62.0", @@ -7111,6 +6482,7 @@ "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.62.0.tgz", "integrity": "sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ==", "dev": true, + "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@types/json-schema": "^7.0.9", @@ -7137,6 +6509,7 @@ "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.62.0.tgz", "integrity": "sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==", "dev": true, + "license": "MIT", "dependencies": { "@typescript-eslint/types": "5.62.0", "eslint-visitor-keys": "^3.3.0" @@ -7154,6 +6527,7 @@ "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", "dev": true, + "license": "BSD-2-Clause", "dependencies": { "esrecurse": "^4.3.0", "estraverse": "^4.1.1" @@ -7167,60 +6541,40 @@ "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", "dev": true, + "license": "BSD-2-Clause", "engines": { "node": ">=4.0" } }, "node_modules/eslint-plugin-jsx-a11y": { - "version": "6.8.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.8.0.tgz", - "integrity": "sha512-Hdh937BS3KdwwbBaKd5+PLCOmYY6U4f2h9Z2ktwtNKvIdIEu137rjYbcb9ApSbVJfWxANNuiKTD/9tOKjK9qOA==", - "dev": true, - "dependencies": { - "@babel/runtime": "^7.23.2", - "aria-query": "^5.3.0", - "array-includes": "^3.1.7", - "array.prototype.flatmap": "^1.3.2", - "ast-types-flow": "^0.0.8", - "axe-core": "=4.7.0", - "axobject-query": "^3.2.1", - "damerau-levenshtein": "^1.0.8", - "emoji-regex": "^9.2.2", - "es-iterator-helpers": "^1.0.15", - "hasown": "^2.0.0", - "jsx-ast-utils": "^3.3.5", - "language-tags": "^1.0.9", - "minimatch": "^3.1.2", - "object.entries": "^1.1.7", - "object.fromentries": "^2.0.7" - }, - "engines": { - "node": ">=4.0" - }, - "peerDependencies": { - "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8" - } - }, - "node_modules/eslint-plugin-jsx-a11y/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/eslint-plugin-jsx-a11y/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "version": "6.10.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.10.0.tgz", + "integrity": "sha512-ySOHvXX8eSN6zz8Bywacm7CvGNhUtdjvqfQDVe6020TUK34Cywkw7m0KsCCk1Qtm9G1FayfTN1/7mMYnYO2Bhg==", "dev": true, + "license": "MIT", "dependencies": { - "brace-expansion": "^1.1.7" + "aria-query": "~5.1.3", + "array-includes": "^3.1.8", + "array.prototype.flatmap": "^1.3.2", + "ast-types-flow": "^0.0.8", + "axe-core": "^4.10.0", + "axobject-query": "^4.1.0", + "damerau-levenshtein": "^1.0.8", + "emoji-regex": "^9.2.2", + "es-iterator-helpers": "^1.0.19", + "hasown": "^2.0.2", + "jsx-ast-utils": "^3.3.5", + "language-tags": "^1.0.9", + "minimatch": "^3.1.2", + "object.fromentries": "^2.0.8", + "safe-regex-test": "^1.0.3", + "string.prototype.includes": "^2.0.0" }, "engines": { - "node": "*" + "node": ">=4.0" + }, + "peerDependencies": { + "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9" } }, "node_modules/eslint-plugin-only-warn": { @@ -7228,6 +6582,7 @@ "resolved": "https://registry.npmjs.org/eslint-plugin-only-warn/-/eslint-plugin-only-warn-1.1.0.tgz", "integrity": "sha512-2tktqUAT+Q3hCAU0iSf4xAN1k9zOpjK5WO8104mB0rT/dGhOa09582HN5HlbxNbPRZ0THV7nLGvzugcNOSjzfA==", "dev": true, + "license": "MIT", "engines": { "node": ">=6" } @@ -7237,6 +6592,7 @@ "resolved": "https://registry.npmjs.org/eslint-plugin-playwright/-/eslint-plugin-playwright-1.6.2.tgz", "integrity": "sha512-mraN4Em3b5jLt01q7qWPyLg0Q5v3KAWfJSlEWwldyUXoa7DSPrBR4k6B6LROLqipsG8ndkwWMdjl1Ffdh15tag==", "dev": true, + "license": "MIT", "workspaces": [ "examples" ], @@ -7257,35 +6613,36 @@ } }, "node_modules/eslint-plugin-react": { - "version": "7.34.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.34.2.tgz", - "integrity": "sha512-2HCmrU+/JNigDN6tg55cRDKCQWicYAPB38JGSFDQt95jDm8rrvSUo7YPkOIm5l6ts1j1zCvysNcasvfTMQzUOw==", + "version": "7.35.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.35.2.tgz", + "integrity": "sha512-Rbj2R9zwP2GYNcIak4xoAMV57hrBh3hTaR0k7hVjwCQgryE/pw5px4b13EYjduOI0hfXyZhwBxaGpOTbWSGzKQ==", "dev": true, + "license": "MIT", "dependencies": { "array-includes": "^3.1.8", "array.prototype.findlast": "^1.2.5", "array.prototype.flatmap": "^1.3.2", - "array.prototype.toreversed": "^1.1.2", - "array.prototype.tosorted": "^1.1.3", + "array.prototype.tosorted": "^1.1.4", "doctrine": "^2.1.0", "es-iterator-helpers": "^1.0.19", "estraverse": "^5.3.0", + "hasown": "^2.0.2", "jsx-ast-utils": "^2.4.1 || ^3.0.0", "minimatch": "^3.1.2", "object.entries": "^1.1.8", "object.fromentries": "^2.0.8", - "object.hasown": "^1.1.4", "object.values": "^1.2.0", "prop-types": "^15.8.1", "resolve": "^2.0.0-next.5", "semver": "^6.3.1", - "string.prototype.matchall": "^4.0.11" + "string.prototype.matchall": "^4.0.11", + "string.prototype.repeat": "^1.0.0" }, "engines": { "node": ">=4" }, "peerDependencies": { - "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8" + "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7" } }, "node_modules/eslint-plugin-react-hooks": { @@ -7293,6 +6650,7 @@ "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.6.2.tgz", "integrity": "sha512-QzliNJq4GinDBcD8gPB5v0wh6g8q3SUi6EFF0x8N/BL9PoVs0atuGc47ozMRyOWAKdwaZ5OnbOEa3WR+dSGKuQ==", "dev": true, + "license": "MIT", "engines": { "node": ">=10" }, @@ -7300,21 +6658,12 @@ "eslint": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0" } }, - "node_modules/eslint-plugin-react/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, "node_modules/eslint-plugin-react/node_modules/doctrine": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", "dev": true, + "license": "Apache-2.0", "dependencies": { "esutils": "^2.0.2" }, @@ -7322,23 +6671,12 @@ "node": ">=0.10.0" } }, - "node_modules/eslint-plugin-react/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, "node_modules/eslint-plugin-react/node_modules/resolve": { "version": "2.0.0-next.5", "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.5.tgz", "integrity": "sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==", "dev": true, + "license": "MIT", "dependencies": { "is-core-module": "^2.13.0", "path-parse": "^1.0.7", @@ -7356,15 +6694,17 @@ "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", "dev": true, + "license": "ISC", "bin": { "semver": "bin/semver.js" } }, "node_modules/eslint-plugin-testing-library": { - "version": "6.2.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-testing-library/-/eslint-plugin-testing-library-6.2.2.tgz", - "integrity": "sha512-1E94YOTUDnOjSLyvOwmbVDzQi/WkKm3WVrMXu6SmBr6DN95xTGZmI6HJ/eOkSXh/DlheRsxaPsJvZByDBhWLVQ==", + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-testing-library/-/eslint-plugin-testing-library-6.3.0.tgz", + "integrity": "sha512-GYcEErTt6EGwE0bPDY+4aehfEBpB2gDBFKohir8jlATSUvzStEyzCx8QWB/14xeKc/AwyXkzScSzMHnFojkWrA==", "dev": true, + "license": "MIT", "dependencies": { "@typescript-eslint/utils": "^5.58.0" }, @@ -7381,6 +6721,7 @@ "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.62.0.tgz", "integrity": "sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==", "dev": true, + "license": "MIT", "dependencies": { "@typescript-eslint/types": "5.62.0", "@typescript-eslint/visitor-keys": "5.62.0" @@ -7398,6 +6739,7 @@ "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.62.0.tgz", "integrity": "sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==", "dev": true, + "license": "MIT", "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, @@ -7411,6 +6753,7 @@ "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.62.0.tgz", "integrity": "sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==", "dev": true, + "license": "BSD-2-Clause", "dependencies": { "@typescript-eslint/types": "5.62.0", "@typescript-eslint/visitor-keys": "5.62.0", @@ -7438,6 +6781,7 @@ "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.62.0.tgz", "integrity": "sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ==", "dev": true, + "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@types/json-schema": "^7.0.9", @@ -7464,6 +6808,7 @@ "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.62.0.tgz", "integrity": "sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==", "dev": true, + "license": "MIT", "dependencies": { "@typescript-eslint/types": "5.62.0", "eslint-visitor-keys": "^3.3.0" @@ -7481,6 +6826,7 @@ "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", "dev": true, + "license": "BSD-2-Clause", "dependencies": { "esrecurse": "^4.3.0", "estraverse": "^4.1.1" @@ -7494,6 +6840,7 @@ "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", "dev": true, + "license": "BSD-2-Clause", "engines": { "node": ">=4.0" } @@ -7503,6 +6850,7 @@ "resolved": "https://registry.npmjs.org/eslint-plugin-tsdoc/-/eslint-plugin-tsdoc-0.2.17.tgz", "integrity": "sha512-xRmVi7Zx44lOBuYqG8vzTXuL6IdGOeF9nHX17bjJ8+VE6fsxpdGem0/SBTmAwgYMKYB1WBkqRJVQ+n8GK041pA==", "dev": true, + "license": "MIT", "dependencies": { "@microsoft/tsdoc": "0.14.2", "@microsoft/tsdoc-config": "0.16.2" @@ -7513,6 +6861,7 @@ "resolved": "https://registry.npmjs.org/eslint-plugin-turbo/-/eslint-plugin-turbo-2.1.1.tgz", "integrity": "sha512-E/34kdQd0n3RP18+e0DSV0f3YTSCOojUh1p4X0Xrho2PBYmJ3umSnNo9FhkZt6UDACl+nBQcYTFkRHMz76lJdw==", "dev": true, + "license": "MIT", "dependencies": { "dotenv": "16.0.3" }, @@ -7525,6 +6874,7 @@ "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.0.3.tgz", "integrity": "sha512-7GO6HghkA5fYG9TYnNxi14/7K9f5occMlp3zXAuSxn7CKCxt9xbNWG7yF8hTCSUchlfWSe3uLmlPfigevRItzQ==", "dev": true, + "license": "BSD-2-Clause", "engines": { "node": ">=12" } @@ -7534,6 +6884,7 @@ "resolved": "https://registry.npmjs.org/eslint-plugin-unicorn/-/eslint-plugin-unicorn-51.0.1.tgz", "integrity": "sha512-MuR/+9VuB0fydoI0nIn2RDA5WISRn4AsJyNSaNKLVwie9/ONvQhxOBbkfSICBPnzKrB77Fh6CZZXjgTt/4Latw==", "dev": true, + "license": "MIT", "dependencies": { "@babel/helper-validator-identifier": "^7.22.20", "@eslint-community/eslint-utils": "^4.4.0", @@ -7573,6 +6924,7 @@ "url": "https://github.com/sponsors/sibiraj-s" } ], + "license": "MIT", "engines": { "node": ">=8" } @@ -7582,6 +6934,7 @@ "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.0.2.tgz", "integrity": "sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==", "dev": true, + "license": "MIT", "bin": { "jsesc": "bin/jsesc" }, @@ -7594,6 +6947,7 @@ "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", "dev": true, + "license": "BSD-2-Clause", "dependencies": { "esrecurse": "^4.3.0", "estraverse": "^5.2.0" @@ -7610,6 +6964,7 @@ "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", "dev": true, + "license": "Apache-2.0", "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, @@ -7622,6 +6977,7 @@ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, + "license": "MIT", "dependencies": { "color-convert": "^2.0.1" }, @@ -7636,23 +6992,15 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", - "dev": true - }, - "node_modules/eslint/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", "dev": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } + "license": "Python-2.0" }, "node_modules/eslint/node_modules/chalk": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dev": true, + "license": "MIT", "dependencies": { "ansi-styles": "^4.1.0", "supports-color": "^7.1.0" @@ -7669,6 +7017,7 @@ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, + "license": "MIT", "dependencies": { "color-name": "~1.1.4" }, @@ -7680,13 +7029,15 @@ "version": "1.1.4", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/eslint/node_modules/escape-string-regexp": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", "dev": true, + "license": "MIT", "engines": { "node": ">=10" }, @@ -7699,6 +7050,7 @@ "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", "dev": true, + "license": "MIT", "dependencies": { "locate-path": "^6.0.0", "path-exists": "^4.0.0" @@ -7715,6 +7067,7 @@ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } @@ -7724,6 +7077,7 @@ "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", "dev": true, + "license": "MIT", "dependencies": { "argparse": "^2.0.1" }, @@ -7736,6 +7090,7 @@ "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", "dev": true, + "license": "MIT", "dependencies": { "p-locate": "^5.0.0" }, @@ -7746,23 +7101,12 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/eslint/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, "node_modules/eslint/node_modules/p-limit": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", "dev": true, + "license": "MIT", "dependencies": { "yocto-queue": "^0.1.0" }, @@ -7778,6 +7122,7 @@ "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", "dev": true, + "license": "MIT", "dependencies": { "p-limit": "^3.0.2" }, @@ -7793,6 +7138,7 @@ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, + "license": "MIT", "dependencies": { "has-flag": "^4.0.0" }, @@ -7805,6 +7151,7 @@ "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", "dev": true, + "license": "BSD-2-Clause", "dependencies": { "acorn": "^8.9.0", "acorn-jsx": "^5.3.2", @@ -7821,6 +7168,7 @@ "version": "4.0.1", "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "license": "BSD-2-Clause", "bin": { "esparse": "bin/esparse.js", "esvalidate": "bin/esvalidate.js" @@ -7830,10 +7178,11 @@ } }, "node_modules/esquery": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", - "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.6.0.tgz", + "integrity": "sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==", "dev": true, + "license": "BSD-3-Clause", "dependencies": { "estraverse": "^5.1.0" }, @@ -7846,6 +7195,7 @@ "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", "dev": true, + "license": "BSD-2-Clause", "dependencies": { "estraverse": "^5.2.0" }, @@ -7858,6 +7208,7 @@ "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", "dev": true, + "license": "BSD-2-Clause", "engines": { "node": ">=4.0" } @@ -7866,6 +7217,7 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/estree-util-attach-comments/-/estree-util-attach-comments-2.1.1.tgz", "integrity": "sha512-+5Ba/xGGS6mnwFbXIuQiDPTbuTxuMCooq3arVv7gPZtYpjp+VXH/NkHAP35OOefPhNG/UGqU3vt/LTABwcHX0w==", + "license": "MIT", "dependencies": { "@types/estree": "^1.0.0" }, @@ -7878,6 +7230,7 @@ "version": "2.2.2", "resolved": "https://registry.npmjs.org/estree-util-build-jsx/-/estree-util-build-jsx-2.2.2.tgz", "integrity": "sha512-m56vOXcOBuaF+Igpb9OPAy7f9w9OIkb5yhjsZuaPm7HoGi4oTOQi0h2+yZ+AtKklYFZ+rPC4n0wYCJCEU1ONqg==", + "license": "MIT", "dependencies": { "@types/estree-jsx": "^1.0.0", "estree-util-is-identifier-name": "^2.0.0", @@ -7892,6 +7245,7 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/estree-util-is-identifier-name/-/estree-util-is-identifier-name-2.1.0.tgz", "integrity": "sha512-bEN9VHRyXAUOjkKVQVvArFym08BTWB0aJPppZZr0UNyAqWsLaVfAqP7hbaTJjzHifmB5ebnR8Wm7r7yGN/HonQ==", + "license": "MIT", "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" @@ -7901,6 +7255,7 @@ "version": "1.2.0", "resolved": "https://registry.npmjs.org/estree-util-to-js/-/estree-util-to-js-1.2.0.tgz", "integrity": "sha512-IzU74r1PK5IMMGZXUVZbmiu4A1uhiPgW5hm1GjcOfr4ZzHaMPpLNJjR7HjXiIOzi25nZDrgFTobHTkV5Q6ITjA==", + "license": "MIT", "dependencies": { "@types/estree-jsx": "^1.0.0", "astring": "^1.8.0", @@ -7915,6 +7270,7 @@ "version": "1.3.0", "resolved": "https://registry.npmjs.org/estree-util-value-to-estree/-/estree-util-value-to-estree-1.3.0.tgz", "integrity": "sha512-Y+ughcF9jSUJvncXwqRageavjrNPAI+1M/L3BI3PyLp1nmgYTGUXU6t5z1Y7OWuThoDdhPME07bQU+d5LxdJqw==", + "license": "MIT", "dependencies": { "is-plain-obj": "^3.0.0" }, @@ -7922,21 +7278,11 @@ "node": ">=12.0.0" } }, - "node_modules/estree-util-value-to-estree/node_modules/is-plain-obj": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-3.0.0.tgz", - "integrity": "sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/estree-util-visit": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/estree-util-visit/-/estree-util-visit-1.2.1.tgz", "integrity": "sha512-xbgqcrkIVbIG+lI/gzbvd9SGTJL4zqJKBFttUl5pP27KhAjtMKbX/mQXJ7qgyXpMgVy/zvpm0xoQQaGL8OloOw==", + "license": "MIT", "dependencies": { "@types/estree-jsx": "^1.0.0", "@types/unist": "^2.0.0" @@ -7950,6 +7296,7 @@ "version": "3.0.3", "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-3.0.3.tgz", "integrity": "sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==", + "license": "MIT", "dependencies": { "@types/estree": "^1.0.0" } @@ -7959,6 +7306,7 @@ "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", "dev": true, + "license": "BSD-2-Clause", "engines": { "node": ">=0.10.0" } @@ -7967,6 +7315,7 @@ "version": "5.0.1", "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz", "integrity": "sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==", + "license": "MIT", "engines": { "node": ">=6" } @@ -7975,12 +7324,14 @@ "version": "5.0.1", "resolved": "https://registry.npmjs.org/eventemitter2/-/eventemitter2-5.0.1.tgz", "integrity": "sha512-5EM1GHXycJBS6mauYAbVKT1cVs7POKWb2NXD4Vyt8dDqeZa7LaDK1/sjtL+Zb0lzTpSNil4596Dyu97hz37QLg==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/events": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", + "license": "MIT", "engines": { "node": ">=0.8.x" } @@ -7989,6 +7340,7 @@ "version": "0.8.0", "resolved": "https://registry.npmjs.org/execa/-/execa-0.8.0.tgz", "integrity": "sha512-zDWS+Rb1E8BlqqhALSt9kUhss8Qq4nN3iof3gsOdyINksElaPyNBtKUMTR62qhvgVWR0CqCX7sdnKe4MnUbFEA==", + "license": "MIT", "dependencies": { "cross-spawn": "^5.0.1", "get-stream": "^3.0.0", @@ -8006,6 +7358,7 @@ "version": "5.1.0", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", "integrity": "sha512-pTgQJ5KC0d2hcY8eyL1IzlBPYjTkyH72XRZPnLyKus2mBfNjQs3klqbJU2VILqZryAZUt9JOb3h/mWMy23/f5A==", + "license": "MIT", "dependencies": { "lru-cache": "^4.0.1", "shebang-command": "^1.2.0", @@ -8016,6 +7369,7 @@ "version": "4.1.5", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "license": "ISC", "dependencies": { "pseudomap": "^1.0.2", "yallist": "^2.1.2" @@ -8025,6 +7379,7 @@ "version": "1.2.0", "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", "integrity": "sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==", + "license": "MIT", "dependencies": { "shebang-regex": "^1.0.0" }, @@ -8036,6 +7391,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", "integrity": "sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==", + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -8043,12 +7399,14 @@ "node_modules/execa/node_modules/signal-exit": { "version": "3.0.7", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "license": "ISC" }, "node_modules/execa/node_modules/which": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "license": "ISC", "dependencies": { "isexe": "^2.0.0" }, @@ -8059,17 +7417,20 @@ "node_modules/execa/node_modules/yallist": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==" + "integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==", + "license": "ISC" }, "node_modules/extend": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", + "license": "MIT" }, "node_modules/extend-shallow": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "license": "MIT", "dependencies": { "is-extendable": "^0.1.0" }, @@ -8080,12 +7441,14 @@ "node_modules/extendable-error": { "version": "0.1.7", "resolved": "https://registry.npmjs.org/extendable-error/-/extendable-error-0.1.7.tgz", - "integrity": "sha512-UOiS2in6/Q0FK0R0q6UY9vYpQ21mr/Qn1KOnte7vsACuNJf514WvCCUHSRCPcgjPT2bAhNIJdlE6bVap1GKmeg==" + "integrity": "sha512-UOiS2in6/Q0FK0R0q6UY9vYpQ21mr/Qn1KOnte7vsACuNJf514WvCCUHSRCPcgjPT2bAhNIJdlE6bVap1GKmeg==", + "license": "MIT" }, "node_modules/external-editor": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", + "license": "MIT", "dependencies": { "chardet": "^0.7.0", "iconv-lite": "^0.4.24", @@ -8100,6 +7463,7 @@ "resolved": "https://registry.npmjs.org/extrareqp2/-/extrareqp2-1.0.0.tgz", "integrity": "sha512-Gum0g1QYb6wpPJCVypWP3bbIuaibcFiJcpuPM10YSXp/tzqi84x9PJageob+eN4xVRIOto4wjSGNLyMD54D2xA==", "dev": true, + "license": "MIT", "dependencies": { "follow-redirects": "^1.14.0" } @@ -8107,28 +7471,33 @@ "node_modules/fast-content-type-parse": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/fast-content-type-parse/-/fast-content-type-parse-1.1.0.tgz", - "integrity": "sha512-fBHHqSTFLVnR61C+gltJuE5GkVQMV0S2nqUO8TJ+5Z3qAKG8vAx4FKai1s5jq/inV1+sREynIWSuQ6HgoSXpDQ==" + "integrity": "sha512-fBHHqSTFLVnR61C+gltJuE5GkVQMV0S2nqUO8TJ+5Z3qAKG8vAx4FKai1s5jq/inV1+sREynIWSuQ6HgoSXpDQ==", + "license": "MIT" }, "node_modules/fast-copy": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/fast-copy/-/fast-copy-3.0.2.tgz", "integrity": "sha512-dl0O9Vhju8IrcLndv2eU4ldt1ftXMqqfgN4H1cpmGV7P6jeB9FwpN9a2c8DPGE1Ys88rNUJVYDHq73CGAGOPfQ==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/fast-decode-uri-component": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/fast-decode-uri-component/-/fast-decode-uri-component-1.0.1.tgz", - "integrity": "sha512-WKgKWg5eUxvRZGwW8FvfbaH7AXSh2cL+3j5fMGzUMCxWBJ3dV3a7Wz8y2f/uQ0e3B6WmodD3oS54jTQ9HVTIIg==" + "integrity": "sha512-WKgKWg5eUxvRZGwW8FvfbaH7AXSh2cL+3j5fMGzUMCxWBJ3dV3a7Wz8y2f/uQ0e3B6WmodD3oS54jTQ9HVTIIg==", + "license": "MIT" }, "node_modules/fast-deep-equal": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "license": "MIT" }, "node_modules/fast-glob": { "version": "3.3.2", "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz", "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==", + "license": "MIT", "dependencies": { "@nodelib/fs.stat": "^2.0.2", "@nodelib/fs.walk": "^1.2.3", @@ -8144,6 +7513,7 @@ "version": "5.1.2", "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "license": "ISC", "dependencies": { "is-glob": "^4.0.1" }, @@ -8155,18 +7525,21 @@ "version": "3.1.1", "resolved": "https://registry.npmjs.org/fast-json-patch/-/fast-json-patch-3.1.1.tgz", "integrity": "sha512-vf6IHUX2SBcA+5/+4883dsIjpBTqmfBjmYiWK1savxQmFk4JfBMLa7ynTYOs1Rolp/T1betJxHiGD3g1Mn8lUQ==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/fast-json-stable-stringify": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/fast-json-stringify": { - "version": "5.16.0", - "resolved": "https://registry.npmjs.org/fast-json-stringify/-/fast-json-stringify-5.16.0.tgz", - "integrity": "sha512-A4bg6E15QrkuVO3f0SwIASgzMzR6XC4qTyTqhf3hYXy0iazbAdZKwkE+ox4WgzKyzM6ygvbdq3r134UjOaaAnA==", + "version": "5.16.1", + "resolved": "https://registry.npmjs.org/fast-json-stringify/-/fast-json-stringify-5.16.1.tgz", + "integrity": "sha512-KAdnLvy1yu/XrRtP+LJnxbBGrhN+xXu+gt3EUvZhYGKCr3lFHq/7UFJHHFgmJKoqlh6B40bZLEv7w46B0mqn1g==", + "license": "MIT", "dependencies": { "@fastify/merge-json-schemas": "^0.1.0", "ajv": "^8.10.0", @@ -8178,14 +7551,15 @@ } }, "node_modules/fast-json-stringify/node_modules/ajv": { - "version": "8.16.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.16.0.tgz", - "integrity": "sha512-F0twR8U1ZU67JIEtekUcLkXkoO5mMMmgGD8sK/xUFzJ805jxHQl92hImFAqqXMyMYjSPOyUPAwHYhB72g5sTXw==", + "version": "8.17.1", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.17.1.tgz", + "integrity": "sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==", + "license": "MIT", "dependencies": { "fast-deep-equal": "^3.1.3", + "fast-uri": "^3.0.1", "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.4.1" + "require-from-string": "^2.0.2" }, "funding": { "type": "github", @@ -8196,6 +7570,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-3.0.1.tgz", "integrity": "sha512-8iUql50EUR+uUcdRQ3HDqa6EVyo3docL8g5WJ3FNcWmu62IbkGUue/pEyLBW8VGKKucTPgqeks4fIU1DA4yowQ==", + "license": "MIT", "dependencies": { "ajv": "^8.0.0" }, @@ -8208,21 +7583,30 @@ } } }, + "node_modules/fast-json-stringify/node_modules/ajv/node_modules/fast-uri": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.0.1.tgz", + "integrity": "sha512-MWipKbbYiYI0UC7cl8m/i/IWTqfC8YXsqjzybjddLsFjStroQzsHXkc73JutMvBiXmOvapk+axIl79ig5t55Bw==", + "license": "MIT" + }, "node_modules/fast-json-stringify/node_modules/json-schema-traverse": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==" + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "license": "MIT" }, "node_modules/fast-levenshtein": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/fast-querystring": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/fast-querystring/-/fast-querystring-1.1.2.tgz", "integrity": "sha512-g6KuKWmFXc0fID8WWH0jit4g0AGBoJhCkJMb1RmbsSEUNvQ+ZC8D6CUZ+GtF8nMzSPXnhiePyyqqipzNNEnHjg==", + "license": "MIT", "dependencies": { "fast-decode-uri-component": "^1.0.1" } @@ -8231,6 +7615,7 @@ "version": "3.5.0", "resolved": "https://registry.npmjs.org/fast-redact/-/fast-redact-3.5.0.tgz", "integrity": "sha512-dwsoQlS7h9hMeYUq1W++23NDcBLV4KqONnITDV9DjfS3q1SgDGVrBdvvTLUotWtPSD7asWDV9/CmsZPy8Hf70A==", + "license": "MIT", "engines": { "node": ">=6" } @@ -8239,12 +7624,14 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz", "integrity": "sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/fast-uri": { "version": "2.4.0", "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-2.4.0.tgz", - "integrity": "sha512-ypuAmmMKInk5q7XcepxlnUWDLWv4GFtaJqAzWKqn62IpQ3pejtr5dTVbt3vwqVaMKmkNR55sTT+CqUKIaT21BA==" + "integrity": "sha512-ypuAmmMKInk5q7XcepxlnUWDLWv4GFtaJqAzWKqn62IpQ3pejtr5dTVbt3vwqVaMKmkNR55sTT+CqUKIaT21BA==", + "license": "MIT" }, "node_modules/fastify": { "version": "4.28.1", @@ -8260,6 +7647,7 @@ "url": "https://opencollective.com/fastify" } ], + "license": "MIT", "dependencies": { "@fastify/ajv-compiler": "^3.5.0", "@fastify/error": "^3.4.0", @@ -8283,6 +7671,7 @@ "version": "1.17.1", "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz", "integrity": "sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==", + "license": "ISC", "dependencies": { "reusify": "^1.0.4" } @@ -8291,13 +7680,15 @@ "version": "1.0.11", "resolved": "https://registry.npmjs.org/fclone/-/fclone-1.0.11.tgz", "integrity": "sha512-GDqVQezKzRABdeqflsgMr7ktzgF9CyS+p2oe0jJqUY6izSSbhPIQJDpoU4PtGcD7VPM9xh/dVrTu6z1nwgmEGw==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/file-entry-cache": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", "dev": true, + "license": "MIT", "dependencies": { "flat-cache": "^3.0.4" }, @@ -8309,6 +7700,7 @@ "version": "7.1.1", "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", + "license": "MIT", "dependencies": { "to-regex-range": "^5.0.1" }, @@ -8320,6 +7712,7 @@ "version": "8.2.0", "resolved": "https://registry.npmjs.org/find-my-way/-/find-my-way-8.2.0.tgz", "integrity": "sha512-HdWXgFYc6b1BJcOBDBwjqWuHJj1WYiqrxSh25qtU4DabpMFdj/gSunNBQb83t+8Zt67D7CXEzJWTkxaShMTMOA==", + "license": "MIT", "dependencies": { "fast-deep-equal": "^3.1.3", "fast-querystring": "^1.0.0", @@ -8333,6 +7726,7 @@ "version": "4.1.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "license": "MIT", "dependencies": { "locate-path": "^5.0.0", "path-exists": "^4.0.0" @@ -8345,6 +7739,7 @@ "version": "1.2.16", "resolved": "https://registry.npmjs.org/find-yarn-workspace-root2/-/find-yarn-workspace-root2-1.2.16.tgz", "integrity": "sha512-hr6hb1w8ePMpPVUK39S4RlwJzi+xPLuVuG8XlwXU3KD5Yn3qgBWVfy3AzNlDhWvE1EORCE65/Qm26rFQt3VLVA==", + "license": "Apache-2.0", "dependencies": { "micromatch": "^4.0.2", "pkg-dir": "^4.2.0" @@ -8355,6 +7750,7 @@ "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz", "integrity": "sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==", "dev": true, + "license": "MIT", "dependencies": { "flatted": "^3.2.9", "keyv": "^4.5.3", @@ -8364,22 +7760,13 @@ "node": "^10.12.0 || >=12.0.0" } }, - "node_modules/flat-cache/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, "node_modules/flat-cache/node_modules/glob": { "version": "7.2.3", "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", "deprecated": "Glob versions prior to v9 are no longer supported", "dev": true, + "license": "ISC", "dependencies": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", @@ -8395,24 +7782,13 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/flat-cache/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, "node_modules/flat-cache/node_modules/rimraf": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", "deprecated": "Rimraf versions prior to v4 are no longer supported", "dev": true, + "license": "ISC", "dependencies": { "glob": "^7.1.3" }, @@ -8427,22 +7803,25 @@ "version": "3.3.1", "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.1.tgz", "integrity": "sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/flexsearch": { "version": "0.7.43", "resolved": "https://registry.npmjs.org/flexsearch/-/flexsearch-0.7.43.tgz", - "integrity": "sha512-c5o/+Um8aqCSOXGcZoqZOm+NqtVwNsvVpWv6lfmSclU954O3wvQKxxK8zj74fPaSJbXpSLTs4PRhh+wnoCXnKg==" + "integrity": "sha512-c5o/+Um8aqCSOXGcZoqZOm+NqtVwNsvVpWv6lfmSclU954O3wvQKxxK8zj74fPaSJbXpSLTs4PRhh+wnoCXnKg==", + "license": "Apache-2.0" }, "node_modules/focus-visible": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/focus-visible/-/focus-visible-5.2.0.tgz", - "integrity": "sha512-Rwix9pBtC1Nuy5wysTmKy+UjbDJpIfg8eHjw0rjZ1mX4GNLz1Bmd16uDpI3Gk1i70Fgcs8Csg2lPm8HULFg9DQ==" + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/focus-visible/-/focus-visible-5.2.1.tgz", + "integrity": "sha512-8Bx950VD1bWTQJEH/AM6SpEk+SU55aVnp4Ujhuuxy3eMEBCRwBnTBnVXr9YAPvZL3/CNjCa8u4IWfNmEO53whA==", + "license": "W3C" }, "node_modules/follow-redirects": { - "version": "1.15.6", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.6.tgz", - "integrity": "sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA==", + "version": "1.15.8", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.8.tgz", + "integrity": "sha512-xgrmBhBToVKay1q2Tao5LI26B83UhrB/vM1avwVSDzt8rx3rO6AizBAaF46EgksTVr+rFTQaqZZ9MVBfUe4nig==", "dev": true, "funding": [ { @@ -8450,6 +7829,7 @@ "url": "https://github.com/sponsors/RubenVerborgh" } ], + "license": "MIT", "engines": { "node": ">=4.0" }, @@ -8464,15 +7844,17 @@ "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", "dev": true, + "license": "MIT", "dependencies": { "is-callable": "^1.1.3" } }, "node_modules/foreground-child": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.2.1.tgz", - "integrity": "sha512-PXUUyLqrR2XCWICfv6ukppP96sdFwWbNEnfEMt7jNsISjMsvaLNinAHNDYyvkyU+SZG2BTSbT5NjG+vZslfGTA==", + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.0.tgz", + "integrity": "sha512-Ld2g8rrAyMYFXBhEqMz8ZAHBi4J4uS1i/CxGMDnjyFWddMXLVcDp051DZfu+t7+ab7Wv6SMqpWmyFIj5UbfFvg==", "dev": true, + "license": "ISC", "dependencies": { "cross-spawn": "^7.0.0", "signal-exit": "^4.0.1" @@ -8488,6 +7870,7 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", + "license": "MIT", "dependencies": { "asynckit": "^0.4.0", "combined-stream": "^1.0.8", @@ -8501,12 +7884,14 @@ "version": "1.7.2", "resolved": "https://registry.npmjs.org/form-data-encoder/-/form-data-encoder-1.7.2.tgz", "integrity": "sha512-qfqtYan3rxrnCk1VYaA4H+Ms9xdpPqvLZa6xmMgFvhO32x7/3J/ExcTd6qpxM0vH2GdMI+poehyBZvqfMTto8A==", + "license": "MIT", "peer": true }, "node_modules/formdata-node": { "version": "4.4.1", "resolved": "https://registry.npmjs.org/formdata-node/-/formdata-node-4.4.1.tgz", "integrity": "sha512-0iirZp3uVDjVGt9p49aTaqjk84TrglENEDuqfdlZQ1roC9CWlPk6Avf8EEnZNcAqPonwkG35x4n3ww/1THYAeQ==", + "license": "MIT", "peer": true, "dependencies": { "node-domexception": "1.0.0", @@ -8516,19 +7901,11 @@ "node": ">= 12.20" } }, - "node_modules/formdata-node/node_modules/web-streams-polyfill": { - "version": "4.0.0-beta.3", - "resolved": "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-4.0.0-beta.3.tgz", - "integrity": "sha512-QW95TCTaHmsYfHDybGMwO5IJIM93I/6vTRk+daHTWFPhwh+C8Cg7j7XyKrwrj8Ib6vYXe0ocYNrmzY4xAAN6ug==", - "peer": true, - "engines": { - "node": ">= 14" - } - }, "node_modules/forwarded": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", + "license": "MIT", "engines": { "node": ">= 0.6" } @@ -8537,6 +7914,7 @@ "version": "7.0.1", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-7.0.1.tgz", "integrity": "sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==", + "license": "MIT", "dependencies": { "graceful-fs": "^4.1.2", "jsonfile": "^4.0.0", @@ -8550,13 +7928,15 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/fsevents": { "version": "2.3.2", "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", "hasInstallScript": true, + "license": "MIT", "optional": true, "os": [ "darwin" @@ -8569,7 +7949,7 @@ "version": "1.1.2", "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", - "dev": true, + "license": "MIT", "funding": { "url": "https://github.com/sponsors/ljharb" } @@ -8579,6 +7959,7 @@ "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.6.tgz", "integrity": "sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.2.0", @@ -8597,6 +7978,7 @@ "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", "dev": true, + "license": "MIT", "funding": { "url": "https://github.com/sponsors/ljharb" } @@ -8605,6 +7987,7 @@ "version": "3.9.0", "resolved": "https://registry.npmjs.org/generic-pool/-/generic-pool-3.9.0.tgz", "integrity": "sha512-hymDOu5B53XvN4QT9dBmZxPX4CWhBPPLguTZ9MMFeFa/Kg0xWVfylOVNlJji/E7yTZWFd/q9GO5TxDLq156D7g==", + "license": "MIT", "engines": { "node": ">= 4" } @@ -8614,6 +7997,7 @@ "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", "dev": true, + "license": "MIT", "engines": { "node": ">=6.9.0" } @@ -8622,7 +8006,7 @@ "version": "1.2.4", "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz", "integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==", - "dev": true, + "license": "MIT", "dependencies": { "es-errors": "^1.3.0", "function-bind": "^1.1.2", @@ -8642,6 +8026,7 @@ "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-9.0.0.tgz", "integrity": "sha512-dVKBjfWisLAicarI2Sf+JuBE/DghV4UzNAVe9yhEJuzeREd3JhOTE9cUaJTeSa77fsbQUK3pcOpJfM59+VKZaA==", "dev": true, + "license": "MIT", "engines": { "node": ">=12" }, @@ -8653,6 +8038,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", "integrity": "sha512-GlhdIUuVakc8SJ6kK0zAFbiGzRFzNnY4jUuEbV9UROo4Y+0Ny4fjvcZFVTeDA4odpFyOQzaw6hXukJSq/f28sQ==", + "license": "MIT", "engines": { "node": ">=4" } @@ -8662,6 +8048,7 @@ "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.2.tgz", "integrity": "sha512-g0QYk1dZBxGwk+Ngc+ltRH2IBp2f7zBkBMBJZCDerh6EhlhSR6+9irMCuT/09zD6qkarHUSn529sK/yL4S27mg==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.5", "es-errors": "^1.3.0", @@ -8675,10 +8062,11 @@ } }, "node_modules/get-tsconfig": { - "version": "4.7.5", - "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.7.5.tgz", - "integrity": "sha512-ZCuZCnlqNzjb4QprAzXKdpp/gh6KTxSJuw3IBsPnV/7fV4NxC9ckB+vPTt8w7fJA0TaSD7c55BR47JD6MEDyDw==", + "version": "4.8.0", + "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.8.0.tgz", + "integrity": "sha512-Pgba6TExTZ0FJAn1qkJAjIeKoDJ3CsI2ChuLohJnZl/tTU8MVrq3b+2t5UOPfRa4RMsorClBjJALkJUMjG1PAw==", "dev": true, + "license": "MIT", "dependencies": { "resolve-pkg-maps": "^1.0.0" }, @@ -8691,6 +8079,7 @@ "resolved": "https://registry.npmjs.org/get-uri/-/get-uri-6.0.3.tgz", "integrity": "sha512-BzUrJBS9EcUb4cFol8r4W3v1cPsSyajLSthNkz5BxbpDcHN5tIrM10E2eNvfnvBn3DaT3DUgx0OpsBKkaOpanw==", "dev": true, + "license": "MIT", "dependencies": { "basic-ftp": "^5.0.2", "data-uri-to-buffer": "^6.0.2", @@ -8706,6 +8095,7 @@ "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.2.0.tgz", "integrity": "sha512-PmDi3uwK5nFuXh7XDTlVnS17xJS7vW36is2+w3xcv8SVxiB4NyATf4ctkVY5bkSjX0Y4nbvZCq1/EjtEyr9ktw==", "dev": true, + "license": "MIT", "dependencies": { "graceful-fs": "^4.2.0", "jsonfile": "^6.0.1", @@ -8720,6 +8110,7 @@ "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", "dev": true, + "license": "MIT", "dependencies": { "universalify": "^2.0.0" }, @@ -8732,6 +8123,7 @@ "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", "dev": true, + "license": "MIT", "engines": { "node": ">= 10.0.0" } @@ -8741,6 +8133,7 @@ "resolved": "https://registry.npmjs.org/git-hooks-list/-/git-hooks-list-3.1.0.tgz", "integrity": "sha512-LF8VeHeR7v+wAbXqfgRlTSX/1BJR9Q1vEMR8JAz1cEg6GX07+zyj3sAdDvYjj/xnlIfVuGgj4qBei1K3hKH+PA==", "dev": true, + "license": "MIT", "funding": { "url": "https://github.com/fisker/git-hooks-list?sponsor=1" } @@ -8749,18 +8142,21 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/git-node-fs/-/git-node-fs-1.0.0.tgz", "integrity": "sha512-bLQypt14llVXBg0S0u8q8HmU7g9p3ysH+NvVlae5vILuUvs759665HvmR5+wb04KjHyjFcDRxdYb4kyNnluMUQ==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/git-sha1": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/git-sha1/-/git-sha1-0.1.2.tgz", "integrity": "sha512-2e/nZezdVlyCopOCYHeW0onkbZg7xP1Ad6pndPy1rCygeRykefUS6r7oA5cJRGEFvseiaz5a/qUHFVX1dd6Isg==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/git-up": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/git-up/-/git-up-7.0.0.tgz", "integrity": "sha512-ONdIrbBCFusq1Oy0sC71F5azx8bVkvtZtMJAsv+a6lz5YAmbNnLD6HAB4gptHZVLPR8S2/kVN6Gab7lryq5+lQ==", + "license": "MIT", "dependencies": { "is-ssh": "^1.4.0", "parse-url": "^8.1.0" @@ -8770,6 +8166,7 @@ "version": "13.1.1", "resolved": "https://registry.npmjs.org/git-url-parse/-/git-url-parse-13.1.1.tgz", "integrity": "sha512-PCFJyeSSdtnbfhSNRw9Wk96dDCNx+sogTe4YNXeXSJxt7xz5hvXekuRn9JX7m+Mf4OscCu8h+mtAl3+h5Fo8lQ==", + "license": "MIT", "dependencies": { "git-up": "^7.0.0" } @@ -8777,13 +8174,15 @@ "node_modules/github-slugger": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/github-slugger/-/github-slugger-2.0.0.tgz", - "integrity": "sha512-IaOQ9puYtjrkq7Y0Ygl9KDZnrf/aiUJYUpVf89y8kyaxbRG7Y1SrX/jaumrv81vc61+kiMempujsM3Yw7w5qcw==" + "integrity": "sha512-IaOQ9puYtjrkq7Y0Ygl9KDZnrf/aiUJYUpVf89y8kyaxbRG7Y1SrX/jaumrv81vc61+kiMempujsM3Yw7w5qcw==", + "license": "ISC" }, "node_modules/glob": { "version": "11.0.0", "resolved": "https://registry.npmjs.org/glob/-/glob-11.0.0.tgz", "integrity": "sha512-9UiX/Bl6J2yaBbxKoEBRm4Cipxgok8kQYcOPEhScPwebu2I0HoQOuYdIO6S3hLuWoZgpDpwQZMzTFxgpkyT76g==", "dev": true, + "license": "ISC", "dependencies": { "foreground-child": "^3.1.0", "jackspeak": "^4.0.1", @@ -8807,6 +8206,7 @@ "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", "dev": true, + "license": "ISC", "dependencies": { "is-glob": "^4.0.3" }, @@ -8814,56 +8214,24 @@ "node": ">=10.13.0" } }, - "node_modules/glob/node_modules/jackspeak": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-4.0.1.tgz", - "integrity": "sha512-cub8rahkh0Q/bw1+GxP7aeSe29hHHn2V4m29nnDlvCdlgU+3UGxkZp7Z53jLUdpX3jdTO0nJZUDl3xvbWc2Xog==", + "node_modules/glob/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", "dev": true, + "license": "MIT", "dependencies": { - "@isaacs/cliui": "^8.0.2" - }, - "engines": { - "node": "20 || >=22" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - }, - "optionalDependencies": { - "@pkgjs/parseargs": "^0.11.0" - } - }, - "node_modules/glob/node_modules/lru-cache": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.0.0.tgz", - "integrity": "sha512-Qv32eSV1RSCfhY3fpPE2GNZ8jgM9X7rdAfemLWqTUxwiyIC4jJ6Sy0fZ8H+oLWevO6i4/bizg7c8d8i6bxrzbA==", - "dev": true, - "engines": { - "node": "20 || >=22" + "balanced-match": "^1.0.0" } }, "node_modules/glob/node_modules/minimatch": { "version": "10.0.1", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.0.1.tgz", - "integrity": "sha512-ethXTt3SGGR+95gudmqJ1eNhRO7eGEGIgYA9vnPatK4/etz2MEVDno5GMCibdMTuBMyElzIlgxMna3K94XDIDQ==", - "dev": true, - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": "20 || >=22" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/glob/node_modules/path-scurry": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-2.0.0.tgz", - "integrity": "sha512-ypGJsmGtdXUOeM5u93TyeIEfEhM6s+ljAhrk5vAvSx8uyY/02OvrZnA0YNGUrPXfpJMgI1ODd3nwz8Npx4O4cg==", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.0.1.tgz", + "integrity": "sha512-ethXTt3SGGR+95gudmqJ1eNhRO7eGEGIgYA9vnPatK4/etz2MEVDno5GMCibdMTuBMyElzIlgxMna3K94XDIDQ==", "dev": true, + "license": "ISC", "dependencies": { - "lru-cache": "^11.0.0", - "minipass": "^7.1.2" + "brace-expansion": "^2.0.1" }, "engines": { "node": "20 || >=22" @@ -8877,6 +8245,7 @@ "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", "dev": true, + "license": "MIT", "dependencies": { "type-fest": "^0.20.2" }, @@ -8892,6 +8261,7 @@ "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz", "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==", "dev": true, + "license": "MIT", "dependencies": { "define-properties": "^1.2.1", "gopd": "^1.0.1" @@ -8907,6 +8277,7 @@ "version": "11.1.0", "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", + "license": "MIT", "dependencies": { "array-union": "^2.1.0", "dir-glob": "^3.0.1", @@ -8926,7 +8297,7 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", - "dev": true, + "license": "MIT", "dependencies": { "get-intrinsic": "^1.1.3" }, @@ -8937,18 +8308,21 @@ "node_modules/graceful-fs": { "version": "4.2.11", "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", - "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==" + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", + "license": "ISC" }, "node_modules/graphemer": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/gray-matter": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/gray-matter/-/gray-matter-4.0.3.tgz", "integrity": "sha512-5v6yZd4JK3eMI3FqqCouswVqwugaA9r4dNZB1wwcmrD02QkV5H0y7XBQW8QwQqEaZY1pM9aqORSORhJRdNK44Q==", + "license": "MIT", "dependencies": { "js-yaml": "^3.13.1", "kind-of": "^6.0.2", @@ -8964,6 +8338,7 @@ "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", "dev": true, + "license": "MIT", "funding": { "url": "https://github.com/sponsors/ljharb" } @@ -8972,6 +8347,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "license": "MIT", "engines": { "node": ">=4" } @@ -8980,7 +8356,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", - "dev": true, + "license": "MIT", "dependencies": { "es-define-property": "^1.0.0" }, @@ -8992,7 +8368,7 @@ "version": "1.0.3", "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.3.tgz", "integrity": "sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==", - "dev": true, + "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -9004,7 +8380,7 @@ "version": "1.0.3", "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", - "dev": true, + "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -9017,6 +8393,7 @@ "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", "dev": true, + "license": "MIT", "dependencies": { "has-symbols": "^1.0.3" }, @@ -9031,6 +8408,7 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/hash-obj/-/hash-obj-4.0.0.tgz", "integrity": "sha512-FwO1BUVWkyHasWDW4S8o0ssQXjvyghLV2rfVhnN36b2bbcj45eGiuzdn9XOvOpjV3TKQD7Gm2BWNXdE9V4KKYg==", + "license": "MIT", "dependencies": { "is-obj": "^3.0.0", "sort-keys": "^5.0.0", @@ -9047,6 +8425,7 @@ "version": "1.4.0", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz", "integrity": "sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==", + "license": "(MIT OR CC0-1.0)", "engines": { "node": ">=10" }, @@ -9058,7 +8437,7 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", - "dev": true, + "license": "MIT", "dependencies": { "function-bind": "^1.1.2" }, @@ -9070,6 +8449,7 @@ "version": "5.0.0", "resolved": "https://registry.npmjs.org/hast-util-from-dom/-/hast-util-from-dom-5.0.0.tgz", "integrity": "sha512-d6235voAp/XR3Hh5uy7aGLbM3S4KamdW0WEgOaU1YoewnuYw4HXb5eRtv9g65m/RFGEfUY1Mw4UqCc5Y8L4Stg==", + "license": "ISC", "dependencies": { "@types/hast": "^3.0.0", "hastscript": "^8.0.0", @@ -9084,14 +8464,16 @@ "version": "3.0.4", "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==", + "license": "MIT", "dependencies": { "@types/unist": "*" } }, "node_modules/hast-util-from-html": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/hast-util-from-html/-/hast-util-from-html-2.0.1.tgz", - "integrity": "sha512-RXQBLMl9kjKVNkJTIO6bZyb2n+cUH8LFaSSzo82jiLT6Tfc+Pt7VQCS+/h3YwG4jaNE2TA2sdJisGWR+aJrp0g==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hast-util-from-html/-/hast-util-from-html-2.0.2.tgz", + "integrity": "sha512-HwOHwxdt2zC5KQ/CNoybBntRook2zJvfZE/u5/Ap7aLPe22bDqen7KwGkOqOyzL5zIqKwiYX/OTtE0FWgr6XXA==", + "license": "MIT", "dependencies": { "@types/hast": "^3.0.0", "devlop": "^1.1.0", @@ -9109,6 +8491,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/hast-util-from-html-isomorphic/-/hast-util-from-html-isomorphic-2.0.0.tgz", "integrity": "sha512-zJfpXq44yff2hmE0XmwEOzdWin5xwH+QIhMLOScpX91e/NSGPsAzNCvLQDIEPyO2TXi+lBmU6hjLIhV8MwP2kw==", + "license": "MIT", "dependencies": { "@types/hast": "^3.0.0", "hast-util-from-dom": "^5.0.0", @@ -9124,6 +8507,7 @@ "version": "3.0.4", "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==", + "license": "MIT", "dependencies": { "@types/unist": "*" } @@ -9132,34 +8516,24 @@ "version": "3.0.4", "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==", + "license": "MIT", "dependencies": { "@types/unist": "*" } }, "node_modules/hast-util-from-html/node_modules/@types/unist": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.2.tgz", - "integrity": "sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==" - }, - "node_modules/hast-util-from-html/node_modules/unist-util-stringify-position": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-4.0.0.tgz", - "integrity": "sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==", - "dependencies": { - "@types/unist": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", + "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==", + "license": "MIT" }, "node_modules/hast-util-from-html/node_modules/vfile": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.1.tgz", - "integrity": "sha512-1bYqc7pt6NIADBJ98UiG0Bn/CHIVOoZ/IyEkqIruLg0mE1BKzkOXY2D6CSqQIcKqgadppE5lrxgWXJmXd7zZJw==", + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.3.tgz", + "integrity": "sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==", + "license": "MIT", "dependencies": { "@types/unist": "^3.0.0", - "unist-util-stringify-position": "^4.0.0", "vfile-message": "^4.0.0" }, "funding": { @@ -9171,6 +8545,7 @@ "version": "8.0.1", "resolved": "https://registry.npmjs.org/hast-util-from-parse5/-/hast-util-from-parse5-8.0.1.tgz", "integrity": "sha512-Er/Iixbc7IEa7r/XLtuG52zoqn/b3Xng/w6aZQ0xGVxzhw5xUFxcRqdPzP6yFi/4HBYRaifaI5fQ1RH8n0ZeOQ==", + "license": "MIT", "dependencies": { "@types/hast": "^3.0.0", "@types/unist": "^3.0.0", @@ -9190,34 +8565,24 @@ "version": "3.0.4", "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==", + "license": "MIT", "dependencies": { "@types/unist": "*" } }, "node_modules/hast-util-from-parse5/node_modules/@types/unist": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.2.tgz", - "integrity": "sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==" - }, - "node_modules/hast-util-from-parse5/node_modules/unist-util-stringify-position": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-4.0.0.tgz", - "integrity": "sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==", - "dependencies": { - "@types/unist": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", + "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==", + "license": "MIT" }, "node_modules/hast-util-from-parse5/node_modules/vfile": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.1.tgz", - "integrity": "sha512-1bYqc7pt6NIADBJ98UiG0Bn/CHIVOoZ/IyEkqIruLg0mE1BKzkOXY2D6CSqQIcKqgadppE5lrxgWXJmXd7zZJw==", + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.3.tgz", + "integrity": "sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==", + "license": "MIT", "dependencies": { "@types/unist": "^3.0.0", - "unist-util-stringify-position": "^4.0.0", "vfile-message": "^4.0.0" }, "funding": { @@ -9229,6 +8594,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/hast-util-is-element/-/hast-util-is-element-3.0.0.tgz", "integrity": "sha512-Val9mnv2IWpLbNPqc/pUem+a7Ipj2aHacCwgNfTiK0vJKl0LF+4Ba4+v1oPHFpf3bLYmreq0/l3Gud9S5OH42g==", + "license": "MIT", "dependencies": { "@types/hast": "^3.0.0" }, @@ -9241,6 +8607,7 @@ "version": "3.0.4", "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==", + "license": "MIT", "dependencies": { "@types/unist": "*" } @@ -9249,6 +8616,7 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/hast-util-parse-selector/-/hast-util-parse-selector-4.0.0.tgz", "integrity": "sha512-wkQCkSYoOGCRKERFWcxMVMOcYE2K1AaNLU8DXS9arxnLOUEWbOXKXiJUNzEpqZ3JOKpnha3jkFrumEjVliDe7A==", + "license": "MIT", "dependencies": { "@types/hast": "^3.0.0" }, @@ -9261,14 +8629,16 @@ "version": "3.0.4", "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==", + "license": "MIT", "dependencies": { "@types/unist": "*" } }, "node_modules/hast-util-raw": { - "version": "9.0.3", - "resolved": "https://registry.npmjs.org/hast-util-raw/-/hast-util-raw-9.0.3.tgz", - "integrity": "sha512-ICWvVOF2fq4+7CMmtCPD5CM4QKjPbHpPotE6+8tDooV0ZuyJVUzHsrNX+O5NaRbieTf0F7FfeBOMAwi6Td0+yQ==", + "version": "9.0.4", + "resolved": "https://registry.npmjs.org/hast-util-raw/-/hast-util-raw-9.0.4.tgz", + "integrity": "sha512-LHE65TD2YiNsHD3YuXcKPHXPLuYh/gjp12mOfU8jxSrm1f/yJpsb0F/KKljS6U9LJoP0Ux+tCe8iJ2AsPzTdgA==", + "license": "MIT", "dependencies": { "@types/hast": "^3.0.0", "@types/unist": "^3.0.0", @@ -9293,31 +8663,22 @@ "version": "3.0.4", "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==", + "license": "MIT", "dependencies": { "@types/unist": "*" } }, "node_modules/hast-util-raw/node_modules/@types/unist": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.2.tgz", - "integrity": "sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==" + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", + "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==", + "license": "MIT" }, "node_modules/hast-util-raw/node_modules/unist-util-position": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/unist-util-position/-/unist-util-position-5.0.0.tgz", "integrity": "sha512-fucsC7HjXvkB5R3kTCO7kUjRdrS0BJt3M/FPxmHMBOm8JQi2BsHAHFsy27E0EolP8rp0NzXsJ+jNPyDWvOJZPA==", - "dependencies": { - "@types/unist": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hast-util-raw/node_modules/unist-util-stringify-position": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-4.0.0.tgz", - "integrity": "sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==", + "license": "MIT", "dependencies": { "@types/unist": "^3.0.0" }, @@ -9327,12 +8688,12 @@ } }, "node_modules/hast-util-raw/node_modules/vfile": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.1.tgz", - "integrity": "sha512-1bYqc7pt6NIADBJ98UiG0Bn/CHIVOoZ/IyEkqIruLg0mE1BKzkOXY2D6CSqQIcKqgadppE5lrxgWXJmXd7zZJw==", + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.3.tgz", + "integrity": "sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==", + "license": "MIT", "dependencies": { "@types/unist": "^3.0.0", - "unist-util-stringify-position": "^4.0.0", "vfile-message": "^4.0.0" }, "funding": { @@ -9344,6 +8705,7 @@ "version": "2.3.3", "resolved": "https://registry.npmjs.org/hast-util-to-estree/-/hast-util-to-estree-2.3.3.tgz", "integrity": "sha512-ihhPIUPxN0v0w6M5+IiAZZrn0LH2uZomeWwhn7uP7avZC6TE7lIiEh2yBMPr5+zi1aUCXq6VoYRgs2Bw9xmycQ==", + "license": "MIT", "dependencies": { "@types/estree": "^1.0.0", "@types/estree-jsx": "^1.0.0", @@ -9370,6 +8732,7 @@ "version": "8.0.0", "resolved": "https://registry.npmjs.org/hast-util-to-parse5/-/hast-util-to-parse5-8.0.0.tgz", "integrity": "sha512-3KKrV5ZVI8if87DVSi1vDeByYrkGzg4mEfeu4alwgmmIeARiBLKCZS2uw5Gb6nU9x9Yufyj3iudm6i7nl52PFw==", + "license": "MIT", "dependencies": { "@types/hast": "^3.0.0", "comma-separated-tokens": "^2.0.0", @@ -9388,6 +8751,7 @@ "version": "3.0.4", "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==", + "license": "MIT", "dependencies": { "@types/unist": "*" } @@ -9396,6 +8760,7 @@ "version": "4.0.2", "resolved": "https://registry.npmjs.org/hast-util-to-text/-/hast-util-to-text-4.0.2.tgz", "integrity": "sha512-KK6y/BN8lbaq654j7JgBydev7wuNMcID54lkRav1P0CaE1e47P72AWWPiGKXTJU271ooYzcvTAn/Zt0REnvc7A==", + "license": "MIT", "dependencies": { "@types/hast": "^3.0.0", "@types/unist": "^3.0.0", @@ -9411,19 +8776,22 @@ "version": "3.0.4", "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==", + "license": "MIT", "dependencies": { "@types/unist": "*" } }, "node_modules/hast-util-to-text/node_modules/@types/unist": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.2.tgz", - "integrity": "sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==" + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", + "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==", + "license": "MIT" }, "node_modules/hast-util-whitespace": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/hast-util-whitespace/-/hast-util-whitespace-2.0.1.tgz", "integrity": "sha512-nAxA0v8+vXSBDt3AnRUNjyRIQ0rD+ntpbAp4LnPkumc5M9yUbSMa4XDU9Q6etY4f1Wp4bNgvc1yjiZtsTTrSng==", + "license": "MIT", "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" @@ -9433,6 +8801,7 @@ "version": "8.0.0", "resolved": "https://registry.npmjs.org/hastscript/-/hastscript-8.0.0.tgz", "integrity": "sha512-dMOtzCEd3ABUeSIISmrETiKuyydk1w0pa+gE/uormcTpSYuaNJPbX1NU3JLyscSLjwAQM8bWMhhIlnCqnRvDTw==", + "license": "MIT", "dependencies": { "@types/hast": "^3.0.0", "comma-separated-tokens": "^2.0.0", @@ -9449,6 +8818,7 @@ "version": "3.0.4", "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==", + "license": "MIT", "dependencies": { "@types/unist": "*" } @@ -9457,18 +8827,21 @@ "version": "5.0.0", "resolved": "https://registry.npmjs.org/help-me/-/help-me-5.0.0.tgz", "integrity": "sha512-7xgomUX6ADmcYzFik0HzAxh/73YlKR9bmFzf51CZwR+b6YtzU2m0u49hQCqV6SvlqIqsaxovfwdvbnsw3b/zpg==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/hosted-git-info": { "version": "2.8.9", "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/html-void-elements": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/html-void-elements/-/html-void-elements-3.0.0.tgz", "integrity": "sha512-bEqo66MRXsUGxWHV5IP0PUiAWwoEjba4VCzg0LjFJBpchPaTfyfCKTG6bc5F8ucKec3q5y6qOdGyYTSBEvhCrg==", + "license": "MIT", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" @@ -9479,6 +8852,7 @@ "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.2.tgz", "integrity": "sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==", "dev": true, + "license": "MIT", "dependencies": { "agent-base": "^7.1.0", "debug": "^4.3.4" @@ -9488,10 +8862,11 @@ } }, "node_modules/https-proxy-agent": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.4.tgz", - "integrity": "sha512-wlwpilI7YdjSkWaQ/7omYBMTliDcmCN8OLihO6I9B86g06lMyAoqgoDpV0XqoaPOKj+0DIdAvnsWfyAAhmimcg==", + "version": "7.0.5", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.5.tgz", + "integrity": "sha512-1e4Wqeblerz+tMKPIq2EMGiiWW1dIjZOksyHWSUm1rmuvw/how9hBHZ38lAGj5ID4Ik6EdkOw7NmWPy6LAwalw==", "dev": true, + "license": "MIT", "dependencies": { "agent-base": "^7.0.2", "debug": "4" @@ -9503,13 +8878,15 @@ "node_modules/human-id": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/human-id/-/human-id-1.0.2.tgz", - "integrity": "sha512-UNopramDEhHJD+VR+ehk8rOslwSfByxPIZyJRfV739NDhN5LF1fa1MqnzKm2lGTQRjNrjK19Q5fhkgIfjlVUKw==" + "integrity": "sha512-UNopramDEhHJD+VR+ehk8rOslwSfByxPIZyJRfV739NDhN5LF1fa1MqnzKm2lGTQRjNrjK19Q5fhkgIfjlVUKw==", + "license": "MIT" }, "node_modules/human-signals": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", "dev": true, + "license": "Apache-2.0", "engines": { "node": ">=10.17.0" } @@ -9518,6 +8895,7 @@ "version": "1.2.1", "resolved": "https://registry.npmjs.org/humanize-ms/-/humanize-ms-1.2.1.tgz", "integrity": "sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==", + "license": "MIT", "peer": true, "dependencies": { "ms": "^2.0.0" @@ -9527,6 +8905,7 @@ "version": "0.4.24", "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "license": "MIT", "dependencies": { "safer-buffer": ">= 2.1.2 < 3" }, @@ -9551,12 +8930,14 @@ "type": "consulting", "url": "https://feross.org/support" } - ] + ], + "license": "BSD-3-Clause" }, "node_modules/ignore": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz", - "integrity": "sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==", + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", + "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", + "license": "MIT", "engines": { "node": ">= 4" } @@ -9566,6 +8947,7 @@ "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", "dev": true, + "license": "MIT", "dependencies": { "parent-module": "^1.0.0", "resolve-from": "^4.0.0" @@ -9582,6 +8964,7 @@ "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", "dev": true, + "license": "MIT", "engines": { "node": ">=4" } @@ -9591,6 +8974,7 @@ "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.8.19" } @@ -9600,6 +8984,7 @@ "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } @@ -9610,6 +8995,7 @@ "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", "dev": true, + "license": "ISC", "dependencies": { "once": "^1.3.0", "wrappy": "1" @@ -9619,24 +9005,28 @@ "version": "2.0.4", "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/ini": { "version": "1.3.8", "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/inline-style-parser": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/inline-style-parser/-/inline-style-parser-0.1.1.tgz", - "integrity": "sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q==" + "integrity": "sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q==", + "license": "MIT" }, "node_modules/internal-slot": { "version": "1.0.7", "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.7.tgz", "integrity": "sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g==", "dev": true, + "license": "MIT", "dependencies": { "es-errors": "^1.3.0", "hasown": "^2.0.0", @@ -9650,6 +9040,7 @@ "version": "2.0.3", "resolved": "https://registry.npmjs.org/internmap/-/internmap-2.0.3.tgz", "integrity": "sha512-5Hh7Y1wQbvY5ooGgPbDaL5iYLAPzMTUrjMulskHLH6wnv/A+1q5rgEaiuqEjB+oxGXIVZs1FF+R/KPN3ZSQYYg==", + "license": "ISC", "engines": { "node": ">=12" } @@ -9657,13 +9048,15 @@ "node_modules/intersection-observer": { "version": "0.12.2", "resolved": "https://registry.npmjs.org/intersection-observer/-/intersection-observer-0.12.2.tgz", - "integrity": "sha512-7m1vEcPCxXYI8HqnL8CKI6siDyD+eIWSwgB3DZA+ZTogxk9I4CDnj4wilt9x/+/QbHI4YG5YZNmC6458/e9Ktg==" + "integrity": "sha512-7m1vEcPCxXYI8HqnL8CKI6siDyD+eIWSwgB3DZA+ZTogxk9I4CDnj4wilt9x/+/QbHI4YG5YZNmC6458/e9Ktg==", + "license": "Apache-2.0" }, "node_modules/ip-address": { "version": "9.0.5", "resolved": "https://registry.npmjs.org/ip-address/-/ip-address-9.0.5.tgz", "integrity": "sha512-zHtQzGojZXTwZTHQqra+ETKd4Sn3vgi7uBmlPoXVWZqYvuKmtI0l/VZTjqGmJY9x88GGOaZ9+G9ES8hC4T4X8g==", "dev": true, + "license": "MIT", "dependencies": { "jsbn": "1.1.0", "sprintf-js": "^1.1.3" @@ -9676,12 +9069,14 @@ "version": "1.1.3", "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.3.tgz", "integrity": "sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA==", - "dev": true + "dev": true, + "license": "BSD-3-Clause" }, "node_modules/ipaddr.js": { "version": "1.9.1", "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", + "license": "MIT", "engines": { "node": ">= 0.10" } @@ -9690,6 +9085,7 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/is-alphabetical/-/is-alphabetical-2.0.1.tgz", "integrity": "sha512-FWyyY60MeTNyeSRpkM2Iry0G9hpr7/9kD40mD/cGQEuilcZYS4okz8SN2Q6rLCJ8gbCt6fN+rC+6tMGS99LaxQ==", + "license": "MIT", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" @@ -9699,6 +9095,7 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/is-alphanumerical/-/is-alphanumerical-2.0.1.tgz", "integrity": "sha512-hmbYhX/9MUMF5uh7tOXyK/n0ZvWpad5caBA17GsC6vyuCqaWliRG5K1qS9inmUhEMaOBIW7/whAnSwveW/LtZw==", + "license": "MIT", "dependencies": { "is-alphabetical": "^2.0.0", "is-decimal": "^2.0.0" @@ -9708,11 +9105,29 @@ "url": "https://github.com/sponsors/wooorm" } }, + "node_modules/is-arguments": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz", + "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/is-array-buffer": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.4.tgz", "integrity": "sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.2", "get-intrinsic": "^1.2.1" @@ -9728,13 +9143,15 @@ "version": "0.2.1", "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/is-async-function": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/is-async-function/-/is-async-function-2.0.0.tgz", "integrity": "sha512-Y1JXKrfykRJGdlDwdKlLpLyMIiWqWvuSd17TvZk68PLAOGOoF4Xyav1z0Xhoi+gCYjZVeC5SI+hYFOfvXmGRCA==", "dev": true, + "license": "MIT", "dependencies": { "has-tostringtag": "^1.0.0" }, @@ -9750,6 +9167,7 @@ "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", "dev": true, + "license": "MIT", "dependencies": { "has-bigints": "^1.0.1" }, @@ -9762,6 +9180,7 @@ "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", "dev": true, + "license": "MIT", "dependencies": { "binary-extensions": "^2.0.0" }, @@ -9774,6 +9193,7 @@ "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.2", "has-tostringtag": "^1.0.0" @@ -9803,6 +9223,7 @@ "url": "https://feross.org/support" } ], + "license": "MIT", "engines": { "node": ">=4" } @@ -9812,6 +9233,7 @@ "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-3.2.1.tgz", "integrity": "sha512-BSLE3HnV2syZ0FK0iMA/yUGplUeMmNz4AW5fnTunbCIqZi4vG3WjJT9FHMy5D69xmAYBHXQhJdALdpwVxV501A==", "dev": true, + "license": "MIT", "dependencies": { "builtin-modules": "^3.3.0" }, @@ -9822,11 +9244,22 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/is-bun-module": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-bun-module/-/is-bun-module-1.1.0.tgz", + "integrity": "sha512-4mTAVPlrXpaN3jtF0lsnPCMGnq4+qZjVIKq0HCpfcqf8OC1SM5oATCIAPM5V5FN05qp2NNnFndphmdZS9CV3hA==", + "dev": true, + "license": "MIT", + "dependencies": { + "semver": "^7.6.3" + } + }, "node_modules/is-callable": { "version": "1.2.7", "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", "dev": true, + "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -9835,12 +9268,16 @@ } }, "node_modules/is-core-module": { - "version": "2.13.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", - "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==", + "version": "2.15.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.15.1.tgz", + "integrity": "sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ==", "dev": true, + "license": "MIT", "dependencies": { - "hasown": "^2.0.0" + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -9851,6 +9288,7 @@ "resolved": "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.1.tgz", "integrity": "sha512-AHkaJrsUVW6wq6JS8y3JnM/GJF/9cf+k20+iDzlSaJrinEo5+7vRiteOSwBhHRiAyQATN1AmY4hwzxJKPmYf+w==", "dev": true, + "license": "MIT", "dependencies": { "is-typed-array": "^1.1.13" }, @@ -9866,6 +9304,7 @@ "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", "dev": true, + "license": "MIT", "dependencies": { "has-tostringtag": "^1.0.0" }, @@ -9880,6 +9319,7 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/is-decimal/-/is-decimal-2.0.1.tgz", "integrity": "sha512-AAB9hiomQs5DXWcRB1rqsxGUstbRroFOPPVAomNk/3XHR5JyEZChOyTWe2oayKnsSsr/kcGqF+z6yuH6HHpN0A==", + "license": "MIT", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" @@ -9889,6 +9329,7 @@ "version": "0.1.1", "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -9897,6 +9338,7 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -9906,6 +9348,7 @@ "resolved": "https://registry.npmjs.org/is-finalizationregistry/-/is-finalizationregistry-1.0.2.tgz", "integrity": "sha512-0by5vtUJs8iFQb5TYUHHPudOR+qXYIMKtiUzvLIZITZUjknFmziyBJuLhVRc+Ds0dREFlskDNJKYIdIzu/9pfw==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.2" }, @@ -9918,6 +9361,7 @@ "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } @@ -9927,6 +9371,7 @@ "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.10.tgz", "integrity": "sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==", "dev": true, + "license": "MIT", "dependencies": { "has-tostringtag": "^1.0.0" }, @@ -9941,6 +9386,7 @@ "version": "4.0.3", "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "license": "MIT", "dependencies": { "is-extglob": "^2.1.1" }, @@ -9952,6 +9398,7 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/is-hexadecimal/-/is-hexadecimal-2.0.1.tgz", "integrity": "sha512-DgZQp241c8oO6cA1SbTEWiXeoxV42vlcJxgH+B3hi1AiqqKruZR3ZGF8In3fj4+/y/7rHvlOZLZtgJ/4ttYGZg==", + "license": "MIT", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" @@ -9962,6 +9409,7 @@ "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.3.tgz", "integrity": "sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==", "dev": true, + "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -9974,6 +9422,7 @@ "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.3.tgz", "integrity": "sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==", "dev": true, + "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -9985,6 +9434,7 @@ "version": "7.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "license": "MIT", "engines": { "node": ">=0.12.0" } @@ -9994,6 +9444,7 @@ "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", "dev": true, + "license": "MIT", "dependencies": { "has-tostringtag": "^1.0.0" }, @@ -10008,6 +9459,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-3.0.0.tgz", "integrity": "sha512-IlsXEHOjtKhpN8r/tRFj2nDyTmHvcfNeu/nrRIcXE17ROeatXchkojffa1SpdqW4cr/Fj6QkEf/Gn4zf6KKvEQ==", + "license": "MIT", "engines": { "node": ">=12" }, @@ -10020,14 +9472,28 @@ "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } }, + "node_modules/is-plain-obj": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-3.0.0.tgz", + "integrity": "sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==", + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/is-reference": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/is-reference/-/is-reference-3.0.2.tgz", "integrity": "sha512-v3rht/LgVcsdZa3O2Nqs+NMowLOxeOm7Ay9+/ARQ2F+qEoANRcqrjAZKGN0v8ymUetZGgkp26LTnGT7H0Qo9Pg==", + "license": "MIT", "dependencies": { "@types/estree": "*" } @@ -10037,6 +9503,7 @@ "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.2", "has-tostringtag": "^1.0.0" @@ -10053,6 +9520,7 @@ "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.3.tgz", "integrity": "sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==", "dev": true, + "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -10065,6 +9533,7 @@ "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.3.tgz", "integrity": "sha512-nA2hv5XIhLR3uVzDDfCIknerhx8XUKnstuOERPNNIinXG7v9u+ohXF67vxm4TPTEPU6lm61ZkwP3c9PCB97rhg==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.7" }, @@ -10079,6 +9548,7 @@ "version": "1.4.0", "resolved": "https://registry.npmjs.org/is-ssh/-/is-ssh-1.4.0.tgz", "integrity": "sha512-x7+VxdxOdlV3CYpjvRLBv5Lo9OJerlYanjwFrPR9fuGPjCiNiCzFgAWpiLAohSbsnH4ZAys3SBh+hq5rJosxUQ==", + "license": "MIT", "dependencies": { "protocols": "^2.0.1" } @@ -10087,6 +9557,7 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", "integrity": "sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ==", + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -10096,6 +9567,7 @@ "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", "dev": true, + "license": "MIT", "dependencies": { "has-tostringtag": "^1.0.0" }, @@ -10110,6 +9582,7 @@ "version": "1.2.0", "resolved": "https://registry.npmjs.org/is-subdir/-/is-subdir-1.2.0.tgz", "integrity": "sha512-2AT6j+gXe/1ueqbW6fLZJiIw3F8iXGJtt0yDrZaBhAZEG1raiTxKWU+IPqMCzQAXOUCKdA4UDMgacKH25XG2Cw==", + "license": "MIT", "dependencies": { "better-path-resolve": "1.0.0" }, @@ -10122,6 +9595,7 @@ "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", "dev": true, + "license": "MIT", "dependencies": { "has-symbols": "^1.0.2" }, @@ -10137,6 +9611,7 @@ "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.13.tgz", "integrity": "sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw==", "dev": true, + "license": "MIT", "dependencies": { "which-typed-array": "^1.1.14" }, @@ -10152,6 +9627,7 @@ "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.2.tgz", "integrity": "sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==", "dev": true, + "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -10164,6 +9640,7 @@ "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.2" }, @@ -10176,6 +9653,7 @@ "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.3.tgz", "integrity": "sha512-LvIm3/KWzS9oRFHugab7d+M/GcBXuXX5xZkzPmN+NxihdQlZUQ4dWuSV1xR/sq6upL1TJEDrfBgRepHFdBtSNQ==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.7", "get-intrinsic": "^1.2.4" @@ -10191,6 +9669,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -10199,18 +9678,21 @@ "version": "2.0.5", "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/isexe": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==" + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "license": "ISC" }, "node_modules/iterator.prototype": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/iterator.prototype/-/iterator.prototype-1.1.2.tgz", "integrity": "sha512-DR33HMMr8EzwuRL8Y9D3u2BMj8+RqSE850jfGu59kS7tbmPLzGkZmVSfyCFSDxuZiEY6Rzt3T2NA/qU+NwVj1w==", "dev": true, + "license": "MIT", "dependencies": { "define-properties": "^1.2.1", "get-intrinsic": "^1.2.1", @@ -10220,15 +9702,16 @@ } }, "node_modules/jackspeak": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.3.6.tgz", - "integrity": "sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-4.0.1.tgz", + "integrity": "sha512-cub8rahkh0Q/bw1+GxP7aeSe29hHHn2V4m29nnDlvCdlgU+3UGxkZp7Z53jLUdpX3jdTO0nJZUDl3xvbWc2Xog==", "dev": true, + "license": "BlueOak-1.0.0", "dependencies": { "@isaacs/cliui": "^8.0.2" }, "engines": { - "node": ">=14" + "node": "20 || >=22" }, "funding": { "url": "https://github.com/sponsors/isaacs" @@ -10241,13 +9724,15 @@ "version": "1.4.0", "resolved": "https://registry.npmjs.org/jju/-/jju-1.4.0.tgz", "integrity": "sha512-8wb9Yw966OSxApiCt0K3yNJL8pnNeIv+OEq2YMidz4FKP6nonSRoOXc80iXY4JaN2FC11B9qsNmDsm+ZOfMROA==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/joycon": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/joycon/-/joycon-3.1.1.tgz", "integrity": "sha512-34wB/Y7MW7bzjKRjUKTa46I2Z7eV62Rkhva+KkopW7Qvv/OSWBqvkSY7vusOPrNuZcUG3tApvdVgNB8POj3SPw==", "dev": true, + "license": "MIT", "engines": { "node": ">=10" } @@ -10257,6 +9742,7 @@ "resolved": "https://registry.npmjs.org/js-git/-/js-git-0.7.8.tgz", "integrity": "sha512-+E5ZH/HeRnoc/LW0AmAyhU+mNcWBzAKE+30+IDMLSLbbK+Tdt02AdkOKq9u15rlJsDEGFqtgckc8ZM59LhhiUA==", "dev": true, + "license": "MIT", "dependencies": { "bodec": "^0.1.0", "culvert": "^0.1.2", @@ -10267,12 +9753,14 @@ "node_modules/js-tokens": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "license": "MIT" }, "node_modules/js-yaml": { "version": "3.14.1", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "license": "MIT", "dependencies": { "argparse": "^1.0.7", "esprima": "^4.0.0" @@ -10285,13 +9773,15 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-1.1.0.tgz", "integrity": "sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/jsesc": { "version": "2.5.2", "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", "dev": true, + "license": "MIT", "bin": { "jsesc": "bin/jsesc" }, @@ -10303,18 +9793,21 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/json-parse-even-better-errors": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/json-schema-ref-resolver": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/json-schema-ref-resolver/-/json-schema-ref-resolver-1.0.1.tgz", "integrity": "sha512-EJAj1pgHc1hxF6vo2Z3s69fMjO1INq6eGHXZ8Z6wCQeldCuwxGK9Sxf4/cScGn3FZubCVUehfWtcDM/PLteCQw==", + "license": "MIT", "dependencies": { "fast-deep-equal": "^3.1.3" } @@ -10323,19 +9816,22 @@ "version": "0.4.1", "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/json-stable-stringify-without-jsonify": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/json-stringify-safe": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==", "dev": true, + "license": "ISC", "optional": true }, "node_modules/json5": { @@ -10343,6 +9839,7 @@ "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", "dev": true, + "license": "MIT", "bin": { "json5": "lib/cli.js" }, @@ -10351,14 +9848,16 @@ } }, "node_modules/jsonc-parser": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.2.1.tgz", - "integrity": "sha512-AilxAyFOAcK5wA1+LeaySVBrHsGQvUFCDWXKpZjzaL0PqW+xfBOttn8GNtWKFWqneyMZj41MWF9Kl6iPWLwgOA==" + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.3.1.tgz", + "integrity": "sha512-HUgH65KyejrUFPvHFPbqOY0rsFip3Bo5wb4ngvdi1EpCYWUQDC5V+Y7mZws+DLkr4M//zQJoanu1SP+87Dv1oQ==", + "license": "MIT" }, "node_modules/jsonfile": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", + "license": "MIT", "optionalDependencies": { "graceful-fs": "^4.1.6" } @@ -10368,6 +9867,7 @@ "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.5.tgz", "integrity": "sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==", "dev": true, + "license": "MIT", "dependencies": { "array-includes": "^3.1.6", "array.prototype.flat": "^1.3.1", @@ -10379,13 +9879,14 @@ } }, "node_modules/katex": { - "version": "0.16.10", - "resolved": "https://registry.npmjs.org/katex/-/katex-0.16.10.tgz", - "integrity": "sha512-ZiqaC04tp2O5utMsl2TEZTXxa6WSC4yo0fv5ML++D3QZv/vx2Mct0mTlRx3O+uUkjfuAgOkzsCmq5MiUEsDDdA==", + "version": "0.16.11", + "resolved": "https://registry.npmjs.org/katex/-/katex-0.16.11.tgz", + "integrity": "sha512-RQrI8rlHY92OLf3rho/Ts8i/XvjgguEjOkO1BEXcU3N8BqPpSzBNwV/G0Ukr+P/l3ivvJUE/Fa/CwbS6HesGNQ==", "funding": [ "https://opencollective.com/katex", "https://github.com/sponsors/katex" ], + "license": "MIT", "dependencies": { "commander": "^8.3.0" }, @@ -10398,6 +9899,7 @@ "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", "dev": true, + "license": "MIT", "dependencies": { "json-buffer": "3.0.1" } @@ -10411,6 +9913,7 @@ "version": "6.0.3", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -10419,6 +9922,7 @@ "version": "4.1.5", "resolved": "https://registry.npmjs.org/kleur/-/kleur-4.1.5.tgz", "integrity": "sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==", + "license": "MIT", "engines": { "node": ">=6" } @@ -10427,13 +9931,15 @@ "version": "0.3.23", "resolved": "https://registry.npmjs.org/language-subtag-registry/-/language-subtag-registry-0.3.23.tgz", "integrity": "sha512-0K65Lea881pHotoGEa5gDlMxt3pctLi2RplBb7Ezh4rRdLEOtgi7n4EwK9lamnUCkKBqaeKRVebTq6BAxSkpXQ==", - "dev": true + "dev": true, + "license": "CC0-1.0" }, "node_modules/language-tags": { "version": "1.0.9", "resolved": "https://registry.npmjs.org/language-tags/-/language-tags-1.0.9.tgz", "integrity": "sha512-MbjN408fEndfiQXbFQ1vnd+1NoLDsnQW41410oQBXiyXDMYH5z505juWa4KUE1LqxRC7DgOgZDbKLxHIwm27hA==", "dev": true, + "license": "MIT", "dependencies": { "language-subtag-registry": "^0.3.20" }, @@ -10444,13 +9950,15 @@ "node_modules/layout-base": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/layout-base/-/layout-base-1.0.2.tgz", - "integrity": "sha512-8h2oVEZNktL4BH2JCOI90iD1yXwL6iNW7KcCKT2QZgQJR2vbqDsldCTPRU9NifTCqHZci57XvQQ15YTu+sTYPg==" + "integrity": "sha512-8h2oVEZNktL4BH2JCOI90iD1yXwL6iNW7KcCKT2QZgQJR2vbqDsldCTPRU9NifTCqHZci57XvQQ15YTu+sTYPg==", + "license": "MIT" }, "node_modules/lazy": { "version": "1.0.11", "resolved": "https://registry.npmjs.org/lazy/-/lazy-1.0.11.tgz", "integrity": "sha512-Y+CjUfLmIpoUCCRl0ub4smrYtGGr5AOa2AKOaWelGHOGz33X/Y/KizefGqbkwfz44+cnq/+9habclf8vOmu2LA==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.2.0" } @@ -10460,6 +9968,7 @@ "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", "dev": true, + "license": "MIT", "dependencies": { "prelude-ls": "^1.2.1", "type-check": "~0.4.0" @@ -10472,6 +9981,7 @@ "version": "5.13.0", "resolved": "https://registry.npmjs.org/light-my-request/-/light-my-request-5.13.0.tgz", "integrity": "sha512-9IjUN9ZyCS9pTG+KqTDEQo68Sui2lHsYBrfMyVUTTZ3XhH8PMZq7xO94Kr+eP9dhi/kcKsx4N41p2IXEBil1pQ==", + "license": "BSD-3-Clause", "dependencies": { "cookie": "^0.6.0", "process-warning": "^3.0.0", @@ -10483,6 +9993,7 @@ "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-3.1.2.tgz", "integrity": "sha512-eop+wDAvpItUys0FWkHIKeC9ybYrTGbU41U5K7+bttZZeohvnY7M9dZ5kB21GNWiFT2q1OoPTvncPCgSOVO5ow==", "dev": true, + "license": "MIT", "engines": { "node": ">=14" }, @@ -10494,13 +10005,15 @@ "version": "1.2.4", "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/load-tsconfig": { "version": "0.2.5", "resolved": "https://registry.npmjs.org/load-tsconfig/-/load-tsconfig-0.2.5.tgz", "integrity": "sha512-IXO6OCs9yg8tMKzfPZ1YmheJbZCiEsnBdcB03l0OcfK9prKnJb96siuHCr5Fl37/yo9DnKU+TLpxzTUspw9shg==", "dev": true, + "license": "MIT", "engines": { "node": "^12.20.0 || ^14.13.1 || >=16.0.0" } @@ -10509,6 +10022,7 @@ "version": "0.2.0", "resolved": "https://registry.npmjs.org/load-yaml-file/-/load-yaml-file-0.2.0.tgz", "integrity": "sha512-OfCBkGEw4nN6JLtgRidPX6QxjBQGQf72q3si2uvqyFEMbycSFFHwAZeXx6cJgFM9wmLrf9zBwCP3Ivqa+LLZPw==", + "license": "MIT", "dependencies": { "graceful-fs": "^4.1.5", "js-yaml": "^3.13.0", @@ -10523,6 +10037,7 @@ "version": "5.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "license": "MIT", "dependencies": { "p-locate": "^4.1.0" }, @@ -10534,39 +10049,46 @@ "version": "4.17.21", "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/lodash-es": { "version": "4.17.21", "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.21.tgz", - "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==" + "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==", + "license": "MIT" }, "node_modules/lodash.get": { "version": "4.4.2", "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", - "integrity": "sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==" + "integrity": "sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==", + "license": "MIT" }, "node_modules/lodash.merge": { "version": "4.6.2", "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/lodash.sortby": { "version": "4.7.0", "resolved": "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz", "integrity": "sha512-HDWXG8isMntAyRF5vZ7xKuEvOhT4AhlRt/3czTSjvGUxjYCBVRQY48ViDHyfYz9VIoBkW4TMGQNapx+l3RUwdA==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/lodash.startcase": { "version": "4.4.0", "resolved": "https://registry.npmjs.org/lodash.startcase/-/lodash.startcase-4.4.0.tgz", - "integrity": "sha512-+WKqsK294HMSc2jEbNgpHpd0JfIBhp7rEV4aqXWqFr6AlXov+SlcgB1Fv01y2kGe3Gc8nMW7VA0SrGuSkRfIEg==" + "integrity": "sha512-+WKqsK294HMSc2jEbNgpHpd0JfIBhp7rEV4aqXWqFr6AlXov+SlcgB1Fv01y2kGe3Gc8nMW7VA0SrGuSkRfIEg==", + "license": "MIT" }, "node_modules/longest-streak": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/longest-streak/-/longest-streak-3.1.0.tgz", "integrity": "sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g==", + "license": "MIT", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" @@ -10576,6 +10098,7 @@ "version": "1.4.0", "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "license": "MIT", "dependencies": { "js-tokens": "^3.0.0 || ^4.0.0" }, @@ -10587,6 +10110,7 @@ "version": "10.3.0", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.3.0.tgz", "integrity": "sha512-CQl19J/g+Hbjbv4Y3mFNNXFEL/5t/KCg8POCuUqd4rMKjGG+j1ybER83hxV58zL+dFI1PTkt3GNFSHRt+d8qEQ==", + "license": "ISC", "engines": { "node": "14 || >=16.14" } @@ -10595,6 +10119,7 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/markdown-extensions/-/markdown-extensions-1.1.1.tgz", "integrity": "sha512-WWC0ZuMzCyDHYCasEGs4IPvLyTGftYwh6wIEOULOF0HXcqZlhwRzrK0w2VUlxWA98xnvb/jszw4ZSkJ6ADpM6Q==", + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -10603,6 +10128,7 @@ "version": "3.0.3", "resolved": "https://registry.npmjs.org/markdown-table/-/markdown-table-3.0.3.tgz", "integrity": "sha512-Z1NL3Tb1M9wH4XESsCDEksWoKTdlUafKc4pt0GRwjUyXaCFZ+dc3g2erqB6zm3szA2IUSi7VnPI+o/9jnxh9hw==", + "license": "MIT", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" @@ -10612,6 +10138,7 @@ "version": "6.3.4", "resolved": "https://registry.npmjs.org/match-sorter/-/match-sorter-6.3.4.tgz", "integrity": "sha512-jfZW7cWS5y/1xswZo8VBOdudUiSd9nifYRWphc9M5D/ee4w4AoXLgBEdRbgVaxbMuagBPeUC5y2Hi8DO6o9aDg==", + "license": "MIT", "dependencies": { "@babel/runtime": "^7.23.8", "remove-accents": "0.5.0" @@ -10621,6 +10148,7 @@ "version": "5.1.2", "resolved": "https://registry.npmjs.org/mdast-util-definitions/-/mdast-util-definitions-5.1.2.tgz", "integrity": "sha512-8SVPMuHqlPME/z3gqVwWY4zVXn8lqKv/pAhC57FuJ40ImXyBpmO5ukh98zB2v7Blql2FiHjHv9LVztSIqjY+MA==", + "license": "MIT", "dependencies": { "@types/mdast": "^3.0.0", "@types/unist": "^2.0.0", @@ -10635,6 +10163,7 @@ "version": "4.1.2", "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-4.1.2.tgz", "integrity": "sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg==", + "license": "MIT", "dependencies": { "@types/unist": "^2.0.0", "unist-util-is": "^5.0.0", @@ -10649,6 +10178,7 @@ "version": "5.1.3", "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-5.1.3.tgz", "integrity": "sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==", + "license": "MIT", "dependencies": { "@types/unist": "^2.0.0", "unist-util-is": "^5.0.0" @@ -10662,6 +10192,7 @@ "version": "2.2.2", "resolved": "https://registry.npmjs.org/mdast-util-find-and-replace/-/mdast-util-find-and-replace-2.2.2.tgz", "integrity": "sha512-MTtdFRz/eMDHXzeK6W3dO7mXUlF82Gom4y0oOgvHhh/HXZAGvIQDUvQ0SuUx+j2tv44b8xTHOm8K/9OoRFnXKw==", + "license": "MIT", "dependencies": { "@types/mdast": "^3.0.0", "escape-string-regexp": "^5.0.0", @@ -10673,10 +10204,23 @@ "url": "https://opencollective.com/unified" } }, + "node_modules/mdast-util-find-and-replace/node_modules/escape-string-regexp": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", + "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/mdast-util-find-and-replace/node_modules/unist-util-visit-parents": { "version": "5.1.3", "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-5.1.3.tgz", "integrity": "sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==", + "license": "MIT", "dependencies": { "@types/unist": "^2.0.0", "unist-util-is": "^5.0.0" @@ -10690,6 +10234,7 @@ "version": "1.3.1", "resolved": "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-1.3.1.tgz", "integrity": "sha512-4xTO/M8c82qBcnQc1tgpNtubGUW/Y1tBQ1B0i5CtSoelOLKFYlElIr3bvgREYYO5iRqbMY1YuqZng0GVOI8Qww==", + "license": "MIT", "dependencies": { "@types/mdast": "^3.0.0", "@types/unist": "^2.0.0", @@ -10713,6 +10258,7 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/mdast-util-gfm/-/mdast-util-gfm-2.0.2.tgz", "integrity": "sha512-qvZ608nBppZ4icQlhQQIAdc6S3Ffj9RGmzwUKUWuEICFnd1LVkN3EktF7ZHAgfcEdvZB5owU9tQgt99e2TlLjg==", + "license": "MIT", "dependencies": { "mdast-util-from-markdown": "^1.0.0", "mdast-util-gfm-autolink-literal": "^1.0.0", @@ -10731,6 +10277,7 @@ "version": "1.0.3", "resolved": "https://registry.npmjs.org/mdast-util-gfm-autolink-literal/-/mdast-util-gfm-autolink-literal-1.0.3.tgz", "integrity": "sha512-My8KJ57FYEy2W2LyNom4n3E7hKTuQk/0SES0u16tjA9Z3oFkF4RrC/hPAPgjlSpezsOvI8ObcXcElo92wn5IGA==", + "license": "MIT", "dependencies": { "@types/mdast": "^3.0.0", "ccount": "^2.0.0", @@ -10746,6 +10293,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/mdast-util-gfm-footnote/-/mdast-util-gfm-footnote-1.0.2.tgz", "integrity": "sha512-56D19KOGbE00uKVj3sgIykpwKL179QsVFwx/DCW0u/0+URsryacI4MAdNJl0dh+u2PSsD9FtxPFbHCzJ78qJFQ==", + "license": "MIT", "dependencies": { "@types/mdast": "^3.0.0", "mdast-util-to-markdown": "^1.3.0", @@ -10760,6 +10308,7 @@ "version": "1.0.3", "resolved": "https://registry.npmjs.org/mdast-util-gfm-strikethrough/-/mdast-util-gfm-strikethrough-1.0.3.tgz", "integrity": "sha512-DAPhYzTYrRcXdMjUtUjKvW9z/FNAMTdU0ORyMcbmkwYNbKocDpdk+PX1L1dQgOID/+vVs1uBQ7ElrBQfZ0cuiQ==", + "license": "MIT", "dependencies": { "@types/mdast": "^3.0.0", "mdast-util-to-markdown": "^1.3.0" @@ -10773,6 +10322,7 @@ "version": "1.0.7", "resolved": "https://registry.npmjs.org/mdast-util-gfm-table/-/mdast-util-gfm-table-1.0.7.tgz", "integrity": "sha512-jjcpmNnQvrmN5Vx7y7lEc2iIOEytYv7rTvu+MeyAsSHTASGCCRA79Igg2uKssgOs1i1po8s3plW0sTu1wkkLGg==", + "license": "MIT", "dependencies": { "@types/mdast": "^3.0.0", "markdown-table": "^3.0.0", @@ -10788,6 +10338,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/mdast-util-gfm-task-list-item/-/mdast-util-gfm-task-list-item-1.0.2.tgz", "integrity": "sha512-PFTA1gzfp1B1UaiJVyhJZA1rm0+Tzn690frc/L8vNX1Jop4STZgOE6bxUhnzdVSB+vm2GU1tIsuQcA9bxTQpMQ==", + "license": "MIT", "dependencies": { "@types/mdast": "^3.0.0", "mdast-util-to-markdown": "^1.3.0" @@ -10801,6 +10352,7 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/mdast-util-math/-/mdast-util-math-2.0.2.tgz", "integrity": "sha512-8gmkKVp9v6+Tgjtq6SYx9kGPpTf6FVYRa53/DLh479aldR9AyP48qeVOgNZ5X7QUK7nOy4yw7vg6mbiGcs9jWQ==", + "license": "MIT", "dependencies": { "@types/mdast": "^3.0.0", "longest-streak": "^3.0.0", @@ -10815,6 +10367,7 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/mdast-util-mdx/-/mdast-util-mdx-2.0.1.tgz", "integrity": "sha512-38w5y+r8nyKlGvNjSEqWrhG0w5PmnRA+wnBvm+ulYCct7nsGYhFVb0lljS9bQav4psDAS1eGkP2LMVcZBi/aqw==", + "license": "MIT", "dependencies": { "mdast-util-from-markdown": "^1.0.0", "mdast-util-mdx-expression": "^1.0.0", @@ -10831,6 +10384,7 @@ "version": "1.3.2", "resolved": "https://registry.npmjs.org/mdast-util-mdx-expression/-/mdast-util-mdx-expression-1.3.2.tgz", "integrity": "sha512-xIPmR5ReJDu/DHH1OoIT1HkuybIfRGYRywC+gJtI7qHjCJp/M9jrmBEJW22O8lskDWm562BX2W8TiAwRTb0rKA==", + "license": "MIT", "dependencies": { "@types/estree-jsx": "^1.0.0", "@types/hast": "^2.0.0", @@ -10847,6 +10401,7 @@ "version": "2.1.4", "resolved": "https://registry.npmjs.org/mdast-util-mdx-jsx/-/mdast-util-mdx-jsx-2.1.4.tgz", "integrity": "sha512-DtMn9CmVhVzZx3f+optVDF8yFgQVt7FghCRNdlIaS3X5Bnym3hZwPbg/XW86vdpKjlc1PVj26SpnLGeJBXD3JA==", + "license": "MIT", "dependencies": { "@types/estree-jsx": "^1.0.0", "@types/hast": "^2.0.0", @@ -10870,6 +10425,7 @@ "version": "4.0.2", "resolved": "https://registry.npmjs.org/unist-util-remove-position/-/unist-util-remove-position-4.0.2.tgz", "integrity": "sha512-TkBb0HABNmxzAcfLf4qsIbFbaPDvMO6wa3b3j4VcEzFVaw1LBKwnW4/sRJ/atSLSzoIg41JWEdnE7N6DIhGDGQ==", + "license": "MIT", "dependencies": { "@types/unist": "^2.0.0", "unist-util-visit": "^4.0.0" @@ -10883,6 +10439,7 @@ "version": "4.1.2", "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-4.1.2.tgz", "integrity": "sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg==", + "license": "MIT", "dependencies": { "@types/unist": "^2.0.0", "unist-util-is": "^5.0.0", @@ -10897,6 +10454,7 @@ "version": "5.1.3", "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-5.1.3.tgz", "integrity": "sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==", + "license": "MIT", "dependencies": { "@types/unist": "^2.0.0", "unist-util-is": "^5.0.0" @@ -10910,6 +10468,7 @@ "version": "3.1.4", "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-3.1.4.tgz", "integrity": "sha512-fa0Z6P8HUrQN4BZaX05SIVXic+7kE3b05PWAtPuYP9QLHsLKYR7/AlLW3NtOrpXRLeawpDLMsVkmk5DG0NXgWw==", + "license": "MIT", "dependencies": { "@types/unist": "^2.0.0", "unist-util-stringify-position": "^3.0.0" @@ -10923,6 +10482,7 @@ "version": "1.3.1", "resolved": "https://registry.npmjs.org/mdast-util-mdxjs-esm/-/mdast-util-mdxjs-esm-1.3.1.tgz", "integrity": "sha512-SXqglS0HrEvSdUEfoXFtcg7DRl7S2cwOXc7jkuusG472Mmjag34DUDeOJUZtl+BVnyeO1frIgVpHlNRWc2gk/w==", + "license": "MIT", "dependencies": { "@types/estree-jsx": "^1.0.0", "@types/hast": "^2.0.0", @@ -10939,6 +10499,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/mdast-util-phrasing/-/mdast-util-phrasing-3.0.1.tgz", "integrity": "sha512-WmI1gTXUBJo4/ZmSk79Wcb2HcjPJBzM1nlI/OUWA8yk2X9ik3ffNbBGsU+09BFmXaL1IBb9fiuvq6/KMiNycSg==", + "license": "MIT", "dependencies": { "@types/mdast": "^3.0.0", "unist-util-is": "^5.0.0" @@ -10952,6 +10513,7 @@ "version": "13.2.0", "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-13.2.0.tgz", "integrity": "sha512-QGYKEuUsYT9ykKBCMOEDLsU5JRObWQusAolFMeko/tYPufNkRffBAQjIE+99jbA87xv6FgmjLtwjh9wBWajwAA==", + "license": "MIT", "dependencies": { "@types/hast": "^3.0.0", "@types/mdast": "^4.0.0", @@ -10972,6 +10534,7 @@ "version": "3.0.4", "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==", + "license": "MIT", "dependencies": { "@types/unist": "*" } @@ -10980,14 +10543,16 @@ "version": "4.0.4", "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-4.0.4.tgz", "integrity": "sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==", + "license": "MIT", "dependencies": { "@types/unist": "*" } }, "node_modules/mdast-util-to-hast/node_modules/@types/unist": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.2.tgz", - "integrity": "sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==" + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", + "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==", + "license": "MIT" }, "node_modules/mdast-util-to-hast/node_modules/micromark-util-character": { "version": "2.1.0", @@ -11003,6 +10568,7 @@ "url": "https://opencollective.com/unified" } ], + "license": "MIT", "dependencies": { "micromark-util-symbol": "^2.0.0", "micromark-util-types": "^2.0.0" @@ -11021,7 +10587,8 @@ "type": "OpenCollective", "url": "https://opencollective.com/unified" } - ] + ], + "license": "MIT" }, "node_modules/mdast-util-to-hast/node_modules/micromark-util-sanitize-uri": { "version": "2.0.0", @@ -11037,6 +10604,7 @@ "url": "https://opencollective.com/unified" } ], + "license": "MIT", "dependencies": { "micromark-util-character": "^2.0.0", "micromark-util-encode": "^2.0.0", @@ -11056,7 +10624,8 @@ "type": "OpenCollective", "url": "https://opencollective.com/unified" } - ] + ], + "license": "MIT" }, "node_modules/mdast-util-to-hast/node_modules/micromark-util-types": { "version": "2.0.0", @@ -11071,24 +10640,14 @@ "type": "OpenCollective", "url": "https://opencollective.com/unified" } - ] + ], + "license": "MIT" }, "node_modules/mdast-util-to-hast/node_modules/unist-util-position": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/unist-util-position/-/unist-util-position-5.0.0.tgz", "integrity": "sha512-fucsC7HjXvkB5R3kTCO7kUjRdrS0BJt3M/FPxmHMBOm8JQi2BsHAHFsy27E0EolP8rp0NzXsJ+jNPyDWvOJZPA==", - "dependencies": { - "@types/unist": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-to-hast/node_modules/unist-util-stringify-position": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-4.0.0.tgz", - "integrity": "sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==", + "license": "MIT", "dependencies": { "@types/unist": "^3.0.0" }, @@ -11098,12 +10657,12 @@ } }, "node_modules/mdast-util-to-hast/node_modules/vfile": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.1.tgz", - "integrity": "sha512-1bYqc7pt6NIADBJ98UiG0Bn/CHIVOoZ/IyEkqIruLg0mE1BKzkOXY2D6CSqQIcKqgadppE5lrxgWXJmXd7zZJw==", + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.3.tgz", + "integrity": "sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==", + "license": "MIT", "dependencies": { "@types/unist": "^3.0.0", - "unist-util-stringify-position": "^4.0.0", "vfile-message": "^4.0.0" }, "funding": { @@ -11115,6 +10674,7 @@ "version": "1.5.0", "resolved": "https://registry.npmjs.org/mdast-util-to-markdown/-/mdast-util-to-markdown-1.5.0.tgz", "integrity": "sha512-bbv7TPv/WC49thZPg3jXuqzuvI45IL2EVAr/KxF0BSdHsU0ceFHOmwQn6evxAh1GaoK/6GQ1wp4R4oW2+LFL/A==", + "license": "MIT", "dependencies": { "@types/mdast": "^3.0.0", "@types/unist": "^2.0.0", @@ -11134,6 +10694,7 @@ "version": "4.1.2", "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-4.1.2.tgz", "integrity": "sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg==", + "license": "MIT", "dependencies": { "@types/unist": "^2.0.0", "unist-util-is": "^5.0.0", @@ -11148,6 +10709,7 @@ "version": "5.1.3", "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-5.1.3.tgz", "integrity": "sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==", + "license": "MIT", "dependencies": { "@types/unist": "^2.0.0", "unist-util-is": "^5.0.0" @@ -11161,6 +10723,7 @@ "version": "3.2.0", "resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-3.2.0.tgz", "integrity": "sha512-V4Zn/ncyN1QNSqSBxTrMOLpjr+IKdHl2v3KVLoWmDPscP4r9GcCi71gjgvUV1SFSKh92AjAG4peFuBl2/YgCJg==", + "license": "MIT", "dependencies": { "@types/mdast": "^3.0.0" }, @@ -11173,12 +10736,14 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/merge2": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "license": "MIT", "engines": { "node": ">= 8" } @@ -11187,6 +10752,7 @@ "version": "10.9.1", "resolved": "https://registry.npmjs.org/mermaid/-/mermaid-10.9.1.tgz", "integrity": "sha512-Mx45Obds5W1UkW1nv/7dHRsbfMM1aOKA2+Pxs/IGHNonygDHwmng8xTHyS9z4KWVi0rbko8gjiBmuwwXQ7tiNA==", + "license": "MIT", "dependencies": { "@braintree/sanitize-url": "^6.0.1", "@types/d3-scale": "^4.0.3", @@ -11218,6 +10784,7 @@ "https://github.com/sponsors/broofa", "https://github.com/sponsors/ctavan" ], + "license": "MIT", "bin": { "uuid": "dist/bin/uuid" } @@ -11236,6 +10803,7 @@ "url": "https://opencollective.com/unified" } ], + "license": "MIT", "dependencies": { "@types/debug": "^4.0.0", "debug": "^4.0.0", @@ -11270,6 +10838,7 @@ "url": "https://opencollective.com/unified" } ], + "license": "MIT", "dependencies": { "decode-named-character-reference": "^1.0.0", "micromark-factory-destination": "^1.0.0", @@ -11293,6 +10862,7 @@ "version": "2.0.3", "resolved": "https://registry.npmjs.org/micromark-extension-gfm/-/micromark-extension-gfm-2.0.3.tgz", "integrity": "sha512-vb9OoHqrhCmbRidQv/2+Bc6pkP0FrtlhurxZofvOEy5o8RtuuvTq+RQ1Vw5ZDNrVraQZu3HixESqbG+0iKk/MQ==", + "license": "MIT", "dependencies": { "micromark-extension-gfm-autolink-literal": "^1.0.0", "micromark-extension-gfm-footnote": "^1.0.0", @@ -11312,6 +10882,7 @@ "version": "1.0.5", "resolved": "https://registry.npmjs.org/micromark-extension-gfm-autolink-literal/-/micromark-extension-gfm-autolink-literal-1.0.5.tgz", "integrity": "sha512-z3wJSLrDf8kRDOh2qBtoTRD53vJ+CWIyo7uyZuxf/JAbNJjiHsOpG1y5wxk8drtv3ETAHutCu6N3thkOOgueWg==", + "license": "MIT", "dependencies": { "micromark-util-character": "^1.0.0", "micromark-util-sanitize-uri": "^1.0.0", @@ -11327,6 +10898,7 @@ "version": "1.1.2", "resolved": "https://registry.npmjs.org/micromark-extension-gfm-footnote/-/micromark-extension-gfm-footnote-1.1.2.tgz", "integrity": "sha512-Yxn7z7SxgyGWRNa4wzf8AhYYWNrwl5q1Z8ii+CSTTIqVkmGZF1CElX2JI8g5yGoM3GAman9/PVCUFUSJ0kB/8Q==", + "license": "MIT", "dependencies": { "micromark-core-commonmark": "^1.0.0", "micromark-factory-space": "^1.0.0", @@ -11346,6 +10918,7 @@ "version": "1.0.7", "resolved": "https://registry.npmjs.org/micromark-extension-gfm-strikethrough/-/micromark-extension-gfm-strikethrough-1.0.7.tgz", "integrity": "sha512-sX0FawVE1o3abGk3vRjOH50L5TTLr3b5XMqnP9YDRb34M0v5OoZhG+OHFz1OffZ9dlwgpTBKaT4XW/AsUVnSDw==", + "license": "MIT", "dependencies": { "micromark-util-chunked": "^1.0.0", "micromark-util-classify-character": "^1.0.0", @@ -11363,6 +10936,7 @@ "version": "1.0.7", "resolved": "https://registry.npmjs.org/micromark-extension-gfm-table/-/micromark-extension-gfm-table-1.0.7.tgz", "integrity": "sha512-3ZORTHtcSnMQEKtAOsBQ9/oHp9096pI/UvdPtN7ehKvrmZZ2+bbWhi0ln+I9drmwXMt5boocn6OlwQzNXeVeqw==", + "license": "MIT", "dependencies": { "micromark-factory-space": "^1.0.0", "micromark-util-character": "^1.0.0", @@ -11379,6 +10953,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/micromark-extension-gfm-tagfilter/-/micromark-extension-gfm-tagfilter-1.0.2.tgz", "integrity": "sha512-5XWB9GbAUSHTn8VPU8/1DBXMuKYT5uOgEjJb8gN3mW0PNW5OPHpSdojoqf+iq1xo7vWzw/P8bAHY0n6ijpXF7g==", + "license": "MIT", "dependencies": { "micromark-util-types": "^1.0.0" }, @@ -11391,6 +10966,7 @@ "version": "1.0.5", "resolved": "https://registry.npmjs.org/micromark-extension-gfm-task-list-item/-/micromark-extension-gfm-task-list-item-1.0.5.tgz", "integrity": "sha512-RMFXl2uQ0pNQy6Lun2YBYT9g9INXtWJULgbt01D/x8/6yJ2qpKyzdZD3pi6UIkzF++Da49xAelVKUeUMqd5eIQ==", + "license": "MIT", "dependencies": { "micromark-factory-space": "^1.0.0", "micromark-util-character": "^1.0.0", @@ -11407,6 +10983,7 @@ "version": "2.1.2", "resolved": "https://registry.npmjs.org/micromark-extension-math/-/micromark-extension-math-2.1.2.tgz", "integrity": "sha512-es0CcOV89VNS9wFmyn+wyFTKweXGW4CEvdaAca6SWRWPyYCbBisnjaHLjWO4Nszuiud84jCpkHsqAJoa768Pvg==", + "license": "MIT", "dependencies": { "@types/katex": "^0.16.0", "katex": "^0.16.0", @@ -11435,6 +11012,7 @@ "url": "https://opencollective.com/unified" } ], + "license": "MIT", "dependencies": { "@types/estree": "^1.0.0", "micromark-factory-mdx-expression": "^1.0.0", @@ -11450,6 +11028,7 @@ "version": "1.0.5", "resolved": "https://registry.npmjs.org/micromark-extension-mdx-jsx/-/micromark-extension-mdx-jsx-1.0.5.tgz", "integrity": "sha512-gPH+9ZdmDflbu19Xkb8+gheqEDqkSpdCEubQyxuz/Hn8DOXiXvrXeikOoBA71+e8Pfi0/UYmU3wW3H58kr7akA==", + "license": "MIT", "dependencies": { "@types/acorn": "^4.0.0", "@types/estree": "^1.0.0", @@ -11471,6 +11050,7 @@ "version": "3.1.4", "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-3.1.4.tgz", "integrity": "sha512-fa0Z6P8HUrQN4BZaX05SIVXic+7kE3b05PWAtPuYP9QLHsLKYR7/AlLW3NtOrpXRLeawpDLMsVkmk5DG0NXgWw==", + "license": "MIT", "dependencies": { "@types/unist": "^2.0.0", "unist-util-stringify-position": "^3.0.0" @@ -11484,6 +11064,7 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/micromark-extension-mdx-md/-/micromark-extension-mdx-md-1.0.1.tgz", "integrity": "sha512-7MSuj2S7xjOQXAjjkbjBsHkMtb+mDGVW6uI2dBL9snOBCbZmoNgDAeZ0nSn9j3T42UE/g2xVNMn18PJxZvkBEA==", + "license": "MIT", "dependencies": { "micromark-util-types": "^1.0.0" }, @@ -11496,6 +11077,7 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/micromark-extension-mdxjs/-/micromark-extension-mdxjs-1.0.1.tgz", "integrity": "sha512-7YA7hF6i5eKOfFUzZ+0z6avRG52GpWR8DL+kN47y3f2KhxbBZMhmxe7auOeaTBrW2DenbbZTf1ea9tA2hDpC2Q==", + "license": "MIT", "dependencies": { "acorn": "^8.0.0", "acorn-jsx": "^5.0.0", @@ -11515,6 +11097,7 @@ "version": "1.0.5", "resolved": "https://registry.npmjs.org/micromark-extension-mdxjs-esm/-/micromark-extension-mdxjs-esm-1.0.5.tgz", "integrity": "sha512-xNRBw4aoURcyz/S69B19WnZAkWJMxHMT5hE36GtDAyhoyn/8TuAeqjFJQlwk+MKQsUD7b3l7kFX+vlfVWgcX1w==", + "license": "MIT", "dependencies": { "@types/estree": "^1.0.0", "micromark-core-commonmark": "^1.0.0", @@ -11535,6 +11118,7 @@ "version": "3.1.4", "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-3.1.4.tgz", "integrity": "sha512-fa0Z6P8HUrQN4BZaX05SIVXic+7kE3b05PWAtPuYP9QLHsLKYR7/AlLW3NtOrpXRLeawpDLMsVkmk5DG0NXgWw==", + "license": "MIT", "dependencies": { "@types/unist": "^2.0.0", "unist-util-stringify-position": "^3.0.0" @@ -11558,6 +11142,7 @@ "url": "https://opencollective.com/unified" } ], + "license": "MIT", "dependencies": { "micromark-util-character": "^1.0.0", "micromark-util-symbol": "^1.0.0", @@ -11578,6 +11163,7 @@ "url": "https://opencollective.com/unified" } ], + "license": "MIT", "dependencies": { "micromark-util-character": "^1.0.0", "micromark-util-symbol": "^1.0.0", @@ -11599,6 +11185,7 @@ "url": "https://opencollective.com/unified" } ], + "license": "MIT", "dependencies": { "@types/estree": "^1.0.0", "micromark-util-character": "^1.0.0", @@ -11614,6 +11201,7 @@ "version": "3.1.4", "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-3.1.4.tgz", "integrity": "sha512-fa0Z6P8HUrQN4BZaX05SIVXic+7kE3b05PWAtPuYP9QLHsLKYR7/AlLW3NtOrpXRLeawpDLMsVkmk5DG0NXgWw==", + "license": "MIT", "dependencies": { "@types/unist": "^2.0.0", "unist-util-stringify-position": "^3.0.0" @@ -11637,6 +11225,7 @@ "url": "https://opencollective.com/unified" } ], + "license": "MIT", "dependencies": { "micromark-util-character": "^1.0.0", "micromark-util-types": "^1.0.0" @@ -11656,6 +11245,7 @@ "url": "https://opencollective.com/unified" } ], + "license": "MIT", "dependencies": { "micromark-factory-space": "^1.0.0", "micromark-util-character": "^1.0.0", @@ -11677,6 +11267,7 @@ "url": "https://opencollective.com/unified" } ], + "license": "MIT", "dependencies": { "micromark-factory-space": "^1.0.0", "micromark-util-character": "^1.0.0", @@ -11698,6 +11289,7 @@ "url": "https://opencollective.com/unified" } ], + "license": "MIT", "dependencies": { "micromark-util-symbol": "^1.0.0", "micromark-util-types": "^1.0.0" @@ -11717,6 +11309,7 @@ "url": "https://opencollective.com/unified" } ], + "license": "MIT", "dependencies": { "micromark-util-symbol": "^1.0.0" } @@ -11735,6 +11328,7 @@ "url": "https://opencollective.com/unified" } ], + "license": "MIT", "dependencies": { "micromark-util-character": "^1.0.0", "micromark-util-symbol": "^1.0.0", @@ -11755,6 +11349,7 @@ "url": "https://opencollective.com/unified" } ], + "license": "MIT", "dependencies": { "micromark-util-chunked": "^1.0.0", "micromark-util-types": "^1.0.0" @@ -11774,6 +11369,7 @@ "url": "https://opencollective.com/unified" } ], + "license": "MIT", "dependencies": { "micromark-util-symbol": "^1.0.0" } @@ -11792,6 +11388,7 @@ "url": "https://opencollective.com/unified" } ], + "license": "MIT", "dependencies": { "decode-named-character-reference": "^1.0.0", "micromark-util-character": "^1.0.0", @@ -11812,7 +11409,8 @@ "type": "OpenCollective", "url": "https://opencollective.com/unified" } - ] + ], + "license": "MIT" }, "node_modules/micromark-util-events-to-acorn": { "version": "1.2.3", @@ -11828,6 +11426,7 @@ "url": "https://opencollective.com/unified" } ], + "license": "MIT", "dependencies": { "@types/acorn": "^4.0.0", "@types/estree": "^1.0.0", @@ -11843,6 +11442,7 @@ "version": "3.1.4", "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-3.1.4.tgz", "integrity": "sha512-fa0Z6P8HUrQN4BZaX05SIVXic+7kE3b05PWAtPuYP9QLHsLKYR7/AlLW3NtOrpXRLeawpDLMsVkmk5DG0NXgWw==", + "license": "MIT", "dependencies": { "@types/unist": "^2.0.0", "unist-util-stringify-position": "^3.0.0" @@ -11865,7 +11465,8 @@ "type": "OpenCollective", "url": "https://opencollective.com/unified" } - ] + ], + "license": "MIT" }, "node_modules/micromark-util-normalize-identifier": { "version": "1.1.0", @@ -11881,6 +11482,7 @@ "url": "https://opencollective.com/unified" } ], + "license": "MIT", "dependencies": { "micromark-util-symbol": "^1.0.0" } @@ -11899,6 +11501,7 @@ "url": "https://opencollective.com/unified" } ], + "license": "MIT", "dependencies": { "micromark-util-types": "^1.0.0" } @@ -11917,6 +11520,7 @@ "url": "https://opencollective.com/unified" } ], + "license": "MIT", "dependencies": { "micromark-util-character": "^1.0.0", "micromark-util-encode": "^1.0.0", @@ -11937,6 +11541,7 @@ "url": "https://opencollective.com/unified" } ], + "license": "MIT", "dependencies": { "micromark-util-chunked": "^1.0.0", "micromark-util-symbol": "^1.0.0", @@ -11957,7 +11562,8 @@ "type": "OpenCollective", "url": "https://opencollective.com/unified" } - ] + ], + "license": "MIT" }, "node_modules/micromark-util-types": { "version": "1.1.0", @@ -11972,12 +11578,14 @@ "type": "OpenCollective", "url": "https://opencollective.com/unified" } - ] + ], + "license": "MIT" }, "node_modules/micromatch": { "version": "4.0.8", "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", + "license": "MIT", "dependencies": { "braces": "^3.0.3", "picomatch": "^2.3.1" @@ -11990,6 +11598,7 @@ "version": "1.52.0", "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "license": "MIT", "engines": { "node": ">= 0.6" } @@ -11998,6 +11607,7 @@ "version": "2.1.35", "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "license": "MIT", "dependencies": { "mime-db": "1.52.0" }, @@ -12010,6 +11620,7 @@ "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", "dev": true, + "license": "MIT", "engines": { "node": ">=6" } @@ -12019,23 +11630,22 @@ "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", "dev": true, + "license": "MIT", "engines": { "node": ">=4" } }, "node_modules/minimatch": { - "version": "9.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.4.tgz", - "integrity": "sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", "dev": true, + "license": "ISC", "dependencies": { - "brace-expansion": "^2.0.1" + "brace-expansion": "^1.1.7" }, "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "node": "*" } }, "node_modules/minimist": { @@ -12043,6 +11653,7 @@ "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", "dev": true, + "license": "MIT", "funding": { "url": "https://github.com/sponsors/ljharb" } @@ -12052,6 +11663,7 @@ "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==", "dev": true, + "license": "ISC", "engines": { "node": ">=16 || 14 >=14.17" } @@ -12061,6 +11673,7 @@ "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", "dev": true, + "license": "MIT", "bin": { "mkdirp": "bin/cmd.js" }, @@ -12072,12 +11685,14 @@ "version": "1.0.3", "resolved": "https://registry.npmjs.org/module-details-from-path/-/module-details-from-path-1.0.3.tgz", "integrity": "sha512-ySViT69/76t8VhE1xXHK6Ch4NcDd26gx0MzKXLO+F7NOtnqH68d9zF94nT8ZWSxXh8ELOERsnJO/sWt1xZYw5A==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/mri": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/mri/-/mri-1.2.0.tgz", "integrity": "sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==", + "license": "MIT", "engines": { "node": ">=4" } @@ -12085,19 +11700,22 @@ "node_modules/ms": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "license": "MIT" }, "node_modules/mute-stream": { "version": "0.0.8", "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/mz": { "version": "2.7.0", "resolved": "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz", "integrity": "sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==", "dev": true, + "license": "MIT", "dependencies": { "any-promise": "^1.0.0", "object-assign": "^4.0.1", @@ -12114,6 +11732,7 @@ "url": "https://github.com/sponsors/ai" } ], + "license": "MIT", "bin": { "nanoid": "bin/nanoid.cjs" }, @@ -12125,13 +11744,15 @@ "version": "1.4.0", "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/needle": { "version": "2.4.0", "resolved": "https://registry.npmjs.org/needle/-/needle-2.4.0.tgz", "integrity": "sha512-4Hnwzr3mi5L97hMYeNl8wRW/Onhy4nUKR/lVemJ8gJedxxUyBLm9kkrDColJvoSfwi0jCNhD+xCdOtiGDQiRZg==", "dev": true, + "license": "MIT", "dependencies": { "debug": "^3.2.6", "iconv-lite": "^0.4.4", @@ -12149,6 +11770,7 @@ "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, + "license": "MIT", "dependencies": { "ms": "^2.1.1" } @@ -12158,17 +11780,18 @@ "resolved": "https://registry.npmjs.org/netmask/-/netmask-2.0.2.tgz", "integrity": "sha512-dBpDMdxv9Irdq66304OLfEmQ9tbNRFnFTuZiLo+bD+r332bBmMJ8GBLXklIXXgxd3+v9+KUnZaUR5PJMa75Gsg==", "dev": true, + "license": "MIT", "engines": { "node": ">= 0.4.0" } }, "node_modules/next": { - "version": "14.2.4", - "resolved": "https://registry.npmjs.org/next/-/next-14.2.4.tgz", - "integrity": "sha512-R8/V7vugY+822rsQGQCjoLhMuC9oFj9SOi4Cl4b2wjDrseD0LRZ10W7R6Czo4w9ZznVSshKjuIomsRjvm9EKJQ==", - "peer": true, + "version": "14.2.7", + "resolved": "https://registry.npmjs.org/next/-/next-14.2.7.tgz", + "integrity": "sha512-4Qy2aK0LwH4eQiSvQWyKuC7JXE13bIopEQesWE0c/P3uuNRnZCQanI0vsrMLmUQJLAto+A+/8+sve2hd+BQuOQ==", + "license": "MIT", "dependencies": { - "@next/env": "14.2.4", + "@next/env": "14.2.7", "@swc/helpers": "0.5.5", "busboy": "1.6.0", "caniuse-lite": "^1.0.30001579", @@ -12183,15 +11806,15 @@ "node": ">=18.17.0" }, "optionalDependencies": { - "@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" + "@next/swc-darwin-arm64": "14.2.7", + "@next/swc-darwin-x64": "14.2.7", + "@next/swc-linux-arm64-gnu": "14.2.7", + "@next/swc-linux-arm64-musl": "14.2.7", + "@next/swc-linux-x64-gnu": "14.2.7", + "@next/swc-linux-x64-musl": "14.2.7", + "@next/swc-win32-arm64-msvc": "14.2.7", + "@next/swc-win32-ia32-msvc": "14.2.7", + "@next/swc-win32-x64-msvc": "14.2.7" }, "peerDependencies": { "@opentelemetry/api": "^1.1.0", @@ -12216,6 +11839,7 @@ "version": "4.4.1", "resolved": "https://registry.npmjs.org/next-mdx-remote/-/next-mdx-remote-4.4.1.tgz", "integrity": "sha512-1BvyXaIou6xy3XoNF4yaMZUCb6vD2GTAa5ciOa6WoO+gAUTYsb1K4rI/HSC2ogAWLrb/7VSV52skz07vOzmqIQ==", + "license": "MPL-2.0", "dependencies": { "@mdx-js/mdx": "^2.2.1", "@mdx-js/react": "^2.2.1", @@ -12232,183 +11856,121 @@ } }, "node_modules/next-seo": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/next-seo/-/next-seo-6.5.0.tgz", - "integrity": "sha512-MfzUeWTN/x/rsKp/1n0213eojO97lIl0unxqbeCY+6pAucViHDA8GSLRRcXpgjsSmBxfCFdfpu7LXbt4ANQoNQ==", + "version": "6.6.0", + "resolved": "https://registry.npmjs.org/next-seo/-/next-seo-6.6.0.tgz", + "integrity": "sha512-0VSted/W6XNtgAtH3D+BZrMLLudqfm0D5DYNJRXHcDgan/1ZF1tDFIsWrmvQlYngALyphPfZ3ZdOqlKpKdvG6w==", + "license": "MIT", "peerDependencies": { "next": "^8.1.1-canary.54 || >=9.0.0", "react": ">=16.0.0", "react-dom": ">=16.0.0" } }, - "node_modules/next-themes": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/next-themes/-/next-themes-0.2.1.tgz", - "integrity": "sha512-B+AKNfYNIzh0vqQQKqQItTS8evEouKD7H5Hj3kmuPERwddR2TxvDSFZuTj6T7Jfn1oyeUyJMydPl1Bkxkh0W7A==", - "peerDependencies": { - "next": "*", - "react": "*", - "react-dom": "*" - } - }, - "node_modules/next/node_modules/@next/env": { - "version": "14.2.4", - "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.4.tgz", - "integrity": "sha512-3EtkY5VDkuV2+lNmKlbkibIJxcO4oIHEhBWne6PaAp+76J9KoSsGvNikp6ivzAT8dhhBMYrm6op2pS1ApG0Hzg==", - "peer": true - }, - "node_modules/next/node_modules/@next/swc-darwin-arm64": { - "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" - ], - "optional": true, - "os": [ - "darwin" - ], - "peer": true, - "engines": { - "node": ">= 10" - } - }, - "node_modules/next/node_modules/@next/swc-darwin-x64": { - "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" - ], - "optional": true, - "os": [ - "darwin" - ], - "peer": true, - "engines": { - "node": ">= 10" - } - }, - "node_modules/next/node_modules/@next/swc-linux-arm64-gnu": { - "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" - ], - "optional": true, - "os": [ - "linux" - ], - "peer": true, - "engines": { - "node": ">= 10" - } - }, - "node_modules/next/node_modules/@next/swc-linux-arm64-musl": { - "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" - ], - "optional": true, - "os": [ - "linux" - ], - "peer": true, - "engines": { - "node": ">= 10" - } - }, - "node_modules/next/node_modules/@next/swc-linux-x64-gnu": { - "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" - ], - "optional": true, - "os": [ - "linux" - ], - "peer": true, - "engines": { - "node": ">= 10" - } - }, - "node_modules/next/node_modules/@next/swc-linux-x64-musl": { - "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" - ], - "optional": true, - "os": [ - "linux" - ], - "peer": true, - "engines": { - "node": ">= 10" - } - }, - "node_modules/next/node_modules/@next/swc-win32-arm64-msvc": { - "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" - ], - "optional": true, - "os": [ - "win32" - ], - "peer": true, - "engines": { - "node": ">= 10" + "node_modules/next-themes": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/next-themes/-/next-themes-0.2.1.tgz", + "integrity": "sha512-B+AKNfYNIzh0vqQQKqQItTS8evEouKD7H5Hj3kmuPERwddR2TxvDSFZuTj6T7Jfn1oyeUyJMydPl1Bkxkh0W7A==", + "license": "MIT", + "peerDependencies": { + "next": "*", + "react": "*", + "react-dom": "*" } }, - "node_modules/next/node_modules/@next/swc-win32-ia32-msvc": { - "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" - ], - "optional": true, - "os": [ - "win32" - ], - "peer": true, + "node_modules/nextra": { + "version": "2.13.4", + "resolved": "https://registry.npmjs.org/nextra/-/nextra-2.13.4.tgz", + "integrity": "sha512-7of2rSBxuUa3+lbMmZwG9cqgftcoNOVQLTT6Rxf3EhBR9t1EI7b43dted8YoqSNaigdE3j1CoyNkX8N/ZzlEpw==", + "license": "MIT", + "dependencies": { + "@headlessui/react": "^1.7.17", + "@mdx-js/mdx": "^2.3.0", + "@mdx-js/react": "^2.3.0", + "@napi-rs/simple-git": "^0.1.9", + "@theguild/remark-mermaid": "^0.0.5", + "@theguild/remark-npm2yarn": "^0.2.0", + "clsx": "^2.0.0", + "github-slugger": "^2.0.0", + "graceful-fs": "^4.2.11", + "gray-matter": "^4.0.3", + "katex": "^0.16.9", + "lodash.get": "^4.4.2", + "next-mdx-remote": "^4.2.1", + "p-limit": "^3.1.0", + "rehype-katex": "^7.0.0", + "rehype-pretty-code": "0.9.11", + "rehype-raw": "^7.0.0", + "remark-gfm": "^3.0.1", + "remark-math": "^5.1.1", + "remark-reading-time": "^2.0.1", + "shiki": "^0.14.3", + "slash": "^3.0.0", + "title": "^3.5.3", + "unist-util-remove": "^4.0.0", + "unist-util-visit": "^5.0.0", + "zod": "^3.22.3" + }, "engines": { - "node": ">= 10" + "node": ">=16" + }, + "peerDependencies": { + "next": ">=9.5.3", + "react": ">=16.13.1", + "react-dom": ">=16.13.1" } }, - "node_modules/next/node_modules/@next/swc-win32-x64-msvc": { - "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" - ], - "optional": true, - "os": [ - "win32" - ], - "peer": true, + "node_modules/nextra-theme-docs": { + "version": "2.13.4", + "resolved": "https://registry.npmjs.org/nextra-theme-docs/-/nextra-theme-docs-2.13.4.tgz", + "integrity": "sha512-2XOoMfwBCTYBt8ds4ZHftt9Wyf2XsykiNo02eir/XEYB+sGeUoE77kzqfidjEOKCSzOHYbK9BDMcg2+B/2vYRw==", + "license": "MIT", + "dependencies": { + "@headlessui/react": "^1.7.17", + "@popperjs/core": "^2.11.8", + "clsx": "^2.0.0", + "escape-string-regexp": "^5.0.0", + "flexsearch": "^0.7.31", + "focus-visible": "^5.2.0", + "git-url-parse": "^13.1.0", + "intersection-observer": "^0.12.2", + "match-sorter": "^6.3.1", + "next-seo": "^6.0.0", + "next-themes": "^0.2.1", + "scroll-into-view-if-needed": "^3.1.0", + "zod": "^3.22.3" + }, + "peerDependencies": { + "next": ">=9.5.3", + "nextra": "2.13.4", + "react": ">=16.13.1", + "react-dom": ">=16.13.1" + } + }, + "node_modules/nextra-theme-docs/node_modules/escape-string-regexp": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", + "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", + "license": "MIT", "engines": { - "node": ">= 10" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/next/node_modules/@swc/helpers": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.5.tgz", - "integrity": "sha512-KGYxvIOXcceOAbEk4bi/dVLEK9z8sZ0uBB3Il5b1rhfClSpcX0yfRO0KmTkqR2cnQDymwLB+25ZyMzICg/cm/A==", - "peer": true, + "node_modules/nextra/node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "license": "MIT", "dependencies": { - "@swc/counter": "^0.1.3", - "tslib": "^2.4.0" + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/node-domexception": { @@ -12425,6 +11987,7 @@ "url": "https://paypal.me/jimmywarting" } ], + "license": "MIT", "peer": true, "engines": { "node": ">=10.5.0" @@ -12434,6 +11997,7 @@ "version": "2.7.0", "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", "integrity": "sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==", + "license": "MIT", "peer": true, "dependencies": { "whatwg-url": "^5.0.0" @@ -12451,21 +12015,24 @@ } }, "node_modules/node-releases": { - "version": "2.0.14", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", - "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", - "dev": true + "version": "2.0.18", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.18.tgz", + "integrity": "sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==", + "dev": true, + "license": "MIT" }, "node_modules/non-layered-tidy-tree-layout": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/non-layered-tidy-tree-layout/-/non-layered-tidy-tree-layout-2.0.2.tgz", - "integrity": "sha512-gkXMxRzUH+PB0ax9dUN0yYF0S25BqeAYqhgMaLUFmpXLEk7Fcu8f4emJuOAY0V8kjDICxROIKsTAKsV/v355xw==" + "integrity": "sha512-gkXMxRzUH+PB0ax9dUN0yYF0S25BqeAYqhgMaLUFmpXLEk7Fcu8f4emJuOAY0V8kjDICxROIKsTAKsV/v355xw==", + "license": "MIT" }, "node_modules/normalize-package-data": { "version": "2.5.0", "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", "dev": true, + "license": "BSD-2-Clause", "dependencies": { "hosted-git-info": "^2.1.4", "resolve": "^1.10.0", @@ -12478,6 +12045,7 @@ "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", "dev": true, + "license": "ISC", "bin": { "semver": "bin/semver" } @@ -12487,6 +12055,7 @@ "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -12495,6 +12064,7 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", "integrity": "sha512-lJxZYlT4DW/bRUtFh1MQIWqmLwQfAxnqWG4HhEdjMlkrJYnJn0Jrr2u3mgxqaWsdiBc76TYkTG/mhrnYTuzfHw==", + "license": "MIT", "dependencies": { "path-key": "^2.0.0" }, @@ -12506,6 +12076,7 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", "integrity": "sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==", + "license": "MIT", "engines": { "node": ">=4" } @@ -12514,6 +12085,7 @@ "version": "2.2.1", "resolved": "https://registry.npmjs.org/npm-to-yarn/-/npm-to-yarn-2.2.1.tgz", "integrity": "sha512-O/j/ROyX0KGLG7O6Ieut/seQ0oiTpHF2tXAcFbpdTLQFiaNtkyTXXocM1fwpaa60dg1qpWj0nHlbNhx6qwuENQ==", + "license": "MIT", "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, @@ -12526,6 +12098,7 @@ "resolved": "https://registry.npmjs.org/nssocket/-/nssocket-0.6.0.tgz", "integrity": "sha512-a9GSOIql5IqgWJR3F/JXG4KpJTA3Z53Cj0MeMvGpglytB1nxE4PdFNC0jINe27CS7cGivoynwc054EzCcT3M3w==", "dev": true, + "license": "MIT", "dependencies": { "eventemitter2": "~0.4.14", "lazy": "~1.0.11" @@ -12538,22 +12111,44 @@ "version": "0.4.14", "resolved": "https://registry.npmjs.org/eventemitter2/-/eventemitter2-0.4.14.tgz", "integrity": "sha512-K7J4xq5xAD5jHsGM5ReWXRTFa3JRGofHiMcVgQ8PRwgWxzjHpMWCIzsmyf60+mh8KLsqYPcjUMa0AC4hd6lPyQ==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/object-assign": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/object-inspect": { - "version": "1.13.1", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.1.tgz", - "integrity": "sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==", + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.2.tgz", + "integrity": "sha512-IRZSRuzJiynemAXPYtPe5BoI/RESNYR7TYm50MC5Mqbd3Jmw5y790sErYw3V6SryFJD64b74qQQs9wn5Bg/k3g==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object-is": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.6.tgz", + "integrity": "sha512-F8cZ+KfGlSGi09lJT7/Nd6KJZ9ygtvYC0/UYYLI9nmQKLMnydpB9yvbv9K1uSkEu7FU9vYPmVwLg328tX+ot3Q==", "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, "funding": { "url": "https://github.com/sponsors/ljharb" } @@ -12563,6 +12158,7 @@ "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", "dev": true, + "license": "MIT", "engines": { "node": ">= 0.4" } @@ -12572,6 +12168,7 @@ "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.5.tgz", "integrity": "sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.5", "define-properties": "^1.2.1", @@ -12590,6 +12187,7 @@ "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.8.tgz", "integrity": "sha512-cmopxi8VwRIAw/fkijJohSfpef5PdN0pMQJN6VC/ZKvn0LIknWD8KtgY6KlQdEc4tIjcQ3HxSMmnvtzIscdaYQ==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.7", "define-properties": "^1.2.1", @@ -12604,6 +12202,7 @@ "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.8.tgz", "integrity": "sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.7", "define-properties": "^1.2.1", @@ -12622,6 +12221,7 @@ "resolved": "https://registry.npmjs.org/object.groupby/-/object.groupby-1.0.3.tgz", "integrity": "sha512-+Lhy3TQTuzXI5hevh8sBGqbmurHbbIjAi0Z4S63nthVLmLxfbj4T54a4CfZrXIrt9iP4mVAPYMo/v99taj3wjQ==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.7", "define-properties": "^1.2.1", @@ -12631,28 +12231,12 @@ "node": ">= 0.4" } }, - "node_modules/object.hasown": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/object.hasown/-/object.hasown-1.1.4.tgz", - "integrity": "sha512-FZ9LZt9/RHzGySlBARE3VF+gE26TxR38SdmqOqliuTnl9wrKulaQs+4dee1V+Io8VfxqzAfHu6YuRgUy8OHoTg==", - "dev": true, - "dependencies": { - "define-properties": "^1.2.1", - "es-abstract": "^1.23.2", - "es-object-atoms": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/object.values": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.2.0.tgz", "integrity": "sha512-yBYjY9QX2hnRmZHAjG/f13MzmBzxzYgQhFrke06TTyKY5zSTEqkOeukBzIdVA3j3ulu8Qa3MbVFShV7T2RmGtQ==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.7", "define-properties": "^1.2.1", @@ -12669,6 +12253,7 @@ "version": "2.1.2", "resolved": "https://registry.npmjs.org/on-exit-leak-free/-/on-exit-leak-free-2.1.2.tgz", "integrity": "sha512-0eJJY6hXLGf1udHwfNftBqH+g73EU4B504nZeKpz1sYRKafAghwxEJunB2O7rDZkL4PGfsMVnTXZ2EjibbqcsA==", + "license": "MIT", "engines": { "node": ">=14.0.0" } @@ -12678,6 +12263,7 @@ "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", "dev": true, + "license": "ISC", "dependencies": { "wrappy": "1" } @@ -12687,6 +12273,7 @@ "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", "dev": true, + "license": "MIT", "dependencies": { "mimic-fn": "^2.1.0" }, @@ -12698,38 +12285,57 @@ } }, "node_modules/openai": { - "version": "4.51.0", - "resolved": "https://registry.npmjs.org/openai/-/openai-4.51.0.tgz", - "integrity": "sha512-UKuWc3/qQyklqhHM8CbdXCv0Z0obap6T0ECdcO5oATQxAbKE5Ky3YCXFQY207z+eGG6ez4U9wvAcuMygxhmStg==", + "version": "4.57.2", + "resolved": "https://registry.npmjs.org/openai/-/openai-4.57.2.tgz", + "integrity": "sha512-IgIxNjo9tfgnfx6gmwNMg3tdF9giK/2lbwG5DY7zs4TP9Gz+h6h2hBOMoalLPFUVOO5HLOgMI/PFV5VDAUvvMg==", + "license": "Apache-2.0", "peer": true, "dependencies": { "@types/node": "^18.11.18", "@types/node-fetch": "^2.6.4", + "@types/qs": "^6.9.7", "abort-controller": "^3.0.0", "agentkeepalive": "^4.2.1", "form-data-encoder": "1.7.2", "formdata-node": "^4.3.2", "node-fetch": "^2.6.7", - "web-streams-polyfill": "^3.2.1" + "qs": "^6.10.3" }, "bin": { "openai": "bin/cli" + }, + "peerDependencies": { + "zod": "^3.23.8" + }, + "peerDependenciesMeta": { + "zod": { + "optional": true + } } }, "node_modules/openai/node_modules/@types/node": { - "version": "18.19.34", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.34.tgz", - "integrity": "sha512-eXF4pfBNV5DAMKGbI02NnDtWrQ40hAN558/2vvS4gMpMIxaf6JmD7YjnZbq0Q9TDSSkKBamime8ewRoomHdt4g==", + "version": "18.19.49", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.49.tgz", + "integrity": "sha512-ALCeIR6n0nQ7j0FUF1ycOhrp6+XutJWqEu/vtdEqXFUQwkBfgUA5cEg3ZNmjWGF/ZYA/FcF9QMkL55Ar0O6UrA==", + "license": "MIT", "peer": true, "dependencies": { "undici-types": "~5.26.4" } }, + "node_modules/openai/node_modules/undici-types": { + "version": "5.26.5", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", + "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==", + "license": "MIT", + "peer": true + }, "node_modules/optionator": { "version": "0.9.4", "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz", "integrity": "sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==", "dev": true, + "license": "MIT", "dependencies": { "deep-is": "^0.1.3", "fast-levenshtein": "^2.0.6", @@ -12746,6 +12352,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -12753,12 +12360,14 @@ "node_modules/outdent": { "version": "0.5.0", "resolved": "https://registry.npmjs.org/outdent/-/outdent-0.5.0.tgz", - "integrity": "sha512-/jHxFIzoMXdqPzTaCpFzAAWhpkSjZPF4Vsn6jAfNpmbH/ymsmd7Qc6VE9BGn0L6YMj6uwpQLxCECpus4ukKS9Q==" + "integrity": "sha512-/jHxFIzoMXdqPzTaCpFzAAWhpkSjZPF4Vsn6jAfNpmbH/ymsmd7Qc6VE9BGn0L6YMj6uwpQLxCECpus4ukKS9Q==", + "license": "MIT" }, "node_modules/p-filter": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/p-filter/-/p-filter-2.1.0.tgz", "integrity": "sha512-ZBxxZ5sL2HghephhpGAQdoskxplTwr7ICaehZwLIlfL6acuVgZPm8yBNuRAFBGEqtD/hmUeq9eqLg2ys9Xr/yw==", + "license": "MIT", "dependencies": { "p-map": "^2.0.0" }, @@ -12770,6 +12379,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", "integrity": "sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow==", + "license": "MIT", "engines": { "node": ">=4" } @@ -12778,6 +12388,7 @@ "version": "2.3.0", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "license": "MIT", "dependencies": { "p-try": "^2.0.0" }, @@ -12792,6 +12403,7 @@ "version": "4.1.0", "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "license": "MIT", "dependencies": { "p-limit": "^2.2.0" }, @@ -12803,6 +12415,7 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/p-map/-/p-map-2.1.0.tgz", "integrity": "sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==", + "license": "MIT", "engines": { "node": ">=6" } @@ -12811,24 +12424,26 @@ "version": "2.2.0", "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "license": "MIT", "engines": { "node": ">=6" } }, "node_modules/pac-proxy-agent": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/pac-proxy-agent/-/pac-proxy-agent-7.0.1.tgz", - "integrity": "sha512-ASV8yU4LLKBAjqIPMbrgtaKIvxQri/yh2OpI+S6hVa9JRkUI3Y3NPFbfngDtY7oFtSMD3w31Xns89mDa3Feo5A==", + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/pac-proxy-agent/-/pac-proxy-agent-7.0.2.tgz", + "integrity": "sha512-BFi3vZnO9X5Qt6NRz7ZOaPja3ic0PhlsmCRYLOpN11+mWBCR6XJDqW5RF3j8jm4WGGQZtBA+bTfxYzeKW73eHg==", "dev": true, + "license": "MIT", "dependencies": { "@tootallnate/quickjs-emscripten": "^0.23.0", "agent-base": "^7.0.2", "debug": "^4.3.4", "get-uri": "^6.0.1", "http-proxy-agent": "^7.0.0", - "https-proxy-agent": "^7.0.2", - "pac-resolver": "^7.0.0", - "socks-proxy-agent": "^8.0.2" + "https-proxy-agent": "^7.0.5", + "pac-resolver": "^7.0.1", + "socks-proxy-agent": "^8.0.4" }, "engines": { "node": ">= 14" @@ -12839,6 +12454,7 @@ "resolved": "https://registry.npmjs.org/pac-resolver/-/pac-resolver-7.0.1.tgz", "integrity": "sha512-5NPgf87AT2STgwa2ntRMr45jTKrYBGkVU36yT0ig/n/GMAa3oPqhZfIQ2kMEimReg0+t9kZViDVZ83qfVUlckg==", "dev": true, + "license": "MIT", "dependencies": { "degenerator": "^5.0.0", "netmask": "^2.0.2" @@ -12851,19 +12467,22 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.0.tgz", "integrity": "sha512-dATvCeZN/8wQsGywez1mzHtTlP22H8OEfPrVMLNr4/eGa+ijtLn/6M5f0dY8UKNrC2O9UCU6SSoG3qRKnt7STw==", - "dev": true + "dev": true, + "license": "BlueOak-1.0.0" }, "node_modules/pako": { "version": "0.2.9", "resolved": "https://registry.npmjs.org/pako/-/pako-0.2.9.tgz", "integrity": "sha512-NUcwaKxUxWrZLpDG+z/xZaCgQITkA/Dv4V/T6bw7VON6l1Xz/VnrBqrYjZQ12TamKHzITTfOEIYUj48y2KXImA==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/parent-module": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", "dev": true, + "license": "MIT", "dependencies": { "callsites": "^3.0.0" }, @@ -12875,6 +12494,7 @@ "version": "4.0.1", "resolved": "https://registry.npmjs.org/parse-entities/-/parse-entities-4.0.1.tgz", "integrity": "sha512-SWzvYcSJh4d/SGLIOQfZ/CoNv6BTlI6YEQ7Nj82oDVnRpwe/Z/F1EMx42x3JAOwGBlCjeCH0BRJQbQ/opHL17w==", + "license": "MIT", "dependencies": { "@types/unist": "^2.0.0", "character-entities": "^2.0.0", @@ -12895,6 +12515,7 @@ "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", "dev": true, + "license": "MIT", "dependencies": { "@babel/code-frame": "^7.0.0", "error-ex": "^1.3.1", @@ -12911,12 +12532,14 @@ "node_modules/parse-numeric-range": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/parse-numeric-range/-/parse-numeric-range-1.3.0.tgz", - "integrity": "sha512-twN+njEipszzlMJd4ONUYgSfZPDxgHhT9Ahed5uTigpQn90FggW4SA/AIPq/6a149fTbE9qBEcSwE3FAEp6wQQ==" + "integrity": "sha512-twN+njEipszzlMJd4ONUYgSfZPDxgHhT9Ahed5uTigpQn90FggW4SA/AIPq/6a149fTbE9qBEcSwE3FAEp6wQQ==", + "license": "ISC" }, "node_modules/parse-path": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/parse-path/-/parse-path-7.0.0.tgz", "integrity": "sha512-Euf9GG8WT9CdqwuWJGdf3RkUcTBArppHABkO7Lm8IzRQp0e2r/kkFnmhu4TSK30Wcu5rVAZLmfPKSBBi9tWFog==", + "license": "MIT", "dependencies": { "protocols": "^2.0.0" } @@ -12925,6 +12548,7 @@ "version": "8.1.0", "resolved": "https://registry.npmjs.org/parse-url/-/parse-url-8.1.0.tgz", "integrity": "sha512-xDvOoLU5XRrcOZvnI6b8zA6n9O9ejNk/GExuz1yBuWUGn9KA97GI6HTs6u02wKara1CeVmZhH+0TZFdWScR89w==", + "license": "MIT", "dependencies": { "parse-path": "^7.0.0" } @@ -12933,6 +12557,7 @@ "version": "7.1.2", "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.1.2.tgz", "integrity": "sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==", + "license": "MIT", "dependencies": { "entities": "^4.4.0" }, @@ -12944,6 +12569,7 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "license": "MIT", "engines": { "node": ">=8" } @@ -12953,6 +12579,7 @@ "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -12962,6 +12589,7 @@ "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } @@ -12970,28 +12598,41 @@ "version": "1.0.7", "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/path-scurry": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz", - "integrity": "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-2.0.0.tgz", + "integrity": "sha512-ypGJsmGtdXUOeM5u93TyeIEfEhM6s+ljAhrk5vAvSx8uyY/02OvrZnA0YNGUrPXfpJMgI1ODd3nwz8Npx4O4cg==", "dev": true, + "license": "BlueOak-1.0.0", "dependencies": { - "lru-cache": "^10.2.0", - "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" + "lru-cache": "^11.0.0", + "minipass": "^7.1.2" }, "engines": { - "node": ">=16 || 14 >=14.18" + "node": "20 || >=22" }, "funding": { "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/path-scurry/node_modules/lru-cache": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.0.0.tgz", + "integrity": "sha512-Qv32eSV1RSCfhY3fpPE2GNZ8jgM9X7rdAfemLWqTUxwiyIC4jJ6Sy0fZ8H+oLWevO6i4/bizg7c8d8i6bxrzbA==", + "dev": true, + "license": "ISC", + "engines": { + "node": "20 || >=22" + } + }, "node_modules/path-type": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "license": "MIT", "engines": { "node": ">=8" } @@ -13000,6 +12641,7 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/periscopic/-/periscopic-3.1.0.tgz", "integrity": "sha512-vKiQ8RRtkl9P+r/+oefh25C3fhybptkHKCZSPlcXiJux2tJF55GnEj3BVn4A5gKfq9NWWXXrxkHBwVPUfH0opw==", + "license": "MIT", "dependencies": { "@types/estree": "^1.0.0", "estree-walker": "^3.0.0", @@ -13007,14 +12649,16 @@ } }, "node_modules/picocolors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.1.tgz", - "integrity": "sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==" + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.0.tgz", + "integrity": "sha512-TQ92mBOW0l3LeMeyLV6mzy/kWr8lkd/hp3mTg7wYK7zJhuBStmGMBG0BdeDZS/dZx1IukaX6Bk11zcln25o1Aw==", + "license": "ISC" }, "node_modules/picomatch": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "license": "MIT", "engines": { "node": ">=8.6" }, @@ -13027,6 +12671,7 @@ "resolved": "https://registry.npmjs.org/pidusage/-/pidusage-3.0.2.tgz", "integrity": "sha512-g0VU+y08pKw5M8EZ2rIGiEBaB8wrQMjYGFfW2QVIfyT8V+fq8YFLkvlz4bz5ljvFDJYNFCWT3PWqcRr2FKO81w==", "dev": true, + "license": "MIT", "dependencies": { "safe-buffer": "^5.2.1" }, @@ -13038,6 +12683,7 @@ "version": "4.0.1", "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "license": "MIT", "engines": { "node": ">=6" } @@ -13046,6 +12692,7 @@ "version": "9.4.0", "resolved": "https://registry.npmjs.org/pino/-/pino-9.4.0.tgz", "integrity": "sha512-nbkQb5+9YPhQRz/BeQmrWpEknAaqjpAqRK8NwJpmrX/JHu7JuZC5G1CeAwJDJfGes4h+YihC6in3Q2nGb+Y09w==", + "license": "MIT", "dependencies": { "atomic-sleep": "^1.0.0", "fast-redact": "^3.1.1", @@ -13067,6 +12714,7 @@ "version": "1.2.0", "resolved": "https://registry.npmjs.org/pino-abstract-transport/-/pino-abstract-transport-1.2.0.tgz", "integrity": "sha512-Guhh8EZfPCfH+PMXAb6rKOjGQEoy0xlAIn+irODG5kgfYV+BQ0rGYYWTIel3P5mmyXqkYkPmdIkywsn6QKUR1Q==", + "license": "MIT", "dependencies": { "readable-stream": "^4.0.0", "split2": "^4.0.0" @@ -13077,6 +12725,7 @@ "resolved": "https://registry.npmjs.org/pino-pretty/-/pino-pretty-11.2.2.tgz", "integrity": "sha512-2FnyGir8nAJAqD3srROdrF1J5BIcMT4nwj7hHSc60El6Uxlym00UbCCd8pYIterstVBFlMyF1yFV8XdGIPbj4A==", "dev": true, + "license": "MIT", "dependencies": { "colorette": "^2.0.7", "dateformat": "^4.6.3", @@ -13100,18 +12749,21 @@ "node_modules/pino-std-serializers": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/pino-std-serializers/-/pino-std-serializers-7.0.0.tgz", - "integrity": "sha512-e906FRY0+tV27iq4juKzSYPbUj2do2X2JX4EzSca1631EB2QJQUqGbDuERal7LCtOpxl6x3+nvo9NPZcmjkiFA==" + "integrity": "sha512-e906FRY0+tV27iq4juKzSYPbUj2do2X2JX4EzSca1631EB2QJQUqGbDuERal7LCtOpxl6x3+nvo9NPZcmjkiFA==", + "license": "MIT" }, "node_modules/pino/node_modules/process-warning": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/process-warning/-/process-warning-4.0.0.tgz", - "integrity": "sha512-/MyYDxttz7DfGMMHiysAsFE4qF+pQYAA8ziO/3NcRVrQ5fSk+Mns4QZA/oRPFzvcqNoVJXQNWNAsdwBXLUkQKw==" + "integrity": "sha512-/MyYDxttz7DfGMMHiysAsFE4qF+pQYAA8ziO/3NcRVrQ5fSk+Mns4QZA/oRPFzvcqNoVJXQNWNAsdwBXLUkQKw==", + "license": "MIT" }, "node_modules/pirates": { "version": "4.0.6", "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz", "integrity": "sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==", "dev": true, + "license": "MIT", "engines": { "node": ">= 6" } @@ -13120,6 +12772,7 @@ "version": "4.2.0", "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "license": "MIT", "dependencies": { "find-up": "^4.0.0" }, @@ -13132,6 +12785,7 @@ "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.46.1.tgz", "integrity": "sha512-oPcr1yqoXLCkgKtD5eNUPLiN40rYEM39odNpIb6VE6S7/15gJmA1NzVv6zJYusV0e7tzvkU/utBFNa/Kpxmwng==", "devOptional": true, + "license": "Apache-2.0", "dependencies": { "playwright-core": "1.46.1" }, @@ -13150,6 +12804,7 @@ "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.46.1.tgz", "integrity": "sha512-h9LqIQaAv+CYvWzsZ+h3RsrqCStkBHlgo6/TJlFst3cOTlLghBQlJwPOZKQJTKNaD3QIB7aAVQ+gfWbN3NXB7A==", "devOptional": true, + "license": "Apache-2.0", "bin": { "playwright-core": "cli.js" }, @@ -13162,6 +12817,7 @@ "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-8.0.0.tgz", "integrity": "sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==", "dev": true, + "license": "MIT", "engines": { "node": ">=4" } @@ -13171,6 +12827,7 @@ "resolved": "https://registry.npmjs.org/pm2/-/pm2-5.4.2.tgz", "integrity": "sha512-ynVpBwZampRH3YWLwRepZpQ7X3MvpwLIaqIdFEeBYEhaXbHmEx2KqOdxGV4T54wvKBhH3LixvU1j1bK4/sq7Tw==", "dev": true, + "license": "AGPL-3.0", "dependencies": { "@pm2/agent": "~2.0.0", "@pm2/io": "~6.0.1", @@ -13220,6 +12877,7 @@ "resolved": "https://registry.npmjs.org/pm2-axon/-/pm2-axon-4.0.1.tgz", "integrity": "sha512-kES/PeSLS8orT8dR5jMlNl+Yu4Ty3nbvZRmaAtROuVm9nYYGiaoXqqKQqQYzWQzMYWUKHMQTvBlirjE5GIIxqg==", "dev": true, + "license": "MIT", "dependencies": { "amp": "~0.3.1", "amp-message": "~0.1.1", @@ -13235,6 +12893,7 @@ "resolved": "https://registry.npmjs.org/pm2-axon-rpc/-/pm2-axon-rpc-0.7.1.tgz", "integrity": "sha512-FbLvW60w+vEyvMjP/xom2UPhUN/2bVpdtLfKJeYM3gwzYhoTEEChCOICfFzxkxuoEleOlnpjie+n1nue91bDQw==", "dev": true, + "license": "MIT", "dependencies": { "debug": "^4.3.1" }, @@ -13247,6 +12906,7 @@ "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", "dev": true, + "license": "MIT", "engines": { "node": ">=10" }, @@ -13259,6 +12919,7 @@ "resolved": "https://registry.npmjs.org/pm2-deploy/-/pm2-deploy-1.0.2.tgz", "integrity": "sha512-YJx6RXKrVrWaphEYf++EdOOx9EH18vM8RSZN/P1Y+NokTKqYAca/ejXwVLyiEpNju4HPZEk3Y2uZouwMqUlcgg==", "dev": true, + "license": "MIT", "dependencies": { "run-series": "^1.1.8", "tv4": "^1.3.0" @@ -13272,6 +12933,7 @@ "resolved": "https://registry.npmjs.org/pm2-multimeter/-/pm2-multimeter-0.1.2.tgz", "integrity": "sha512-S+wT6XfyKfd7SJIBqRgOctGxaBzUOmVQzTAS+cg04TsEUObJVreha7lvCfX8zzGVr871XwCSnHUU7DQQ5xEsfA==", "dev": true, + "license": "MIT/X11", "dependencies": { "charm": "~0.1.1" } @@ -13281,6 +12943,7 @@ "resolved": "https://registry.npmjs.org/pm2-sysmonit/-/pm2-sysmonit-1.2.8.tgz", "integrity": "sha512-ACOhlONEXdCTVwKieBIQLSi2tQZ8eKinhcr9JpZSUAL8Qy0ajIgRtsLxG/lwPOW3JEKqPyw/UaHmTWhUzpP4kA==", "dev": true, + "license": "Apache", "optional": true, "dependencies": { "async": "^3.2.0", @@ -13295,6 +12958,7 @@ "resolved": "https://registry.npmjs.org/pidusage/-/pidusage-2.0.21.tgz", "integrity": "sha512-cv3xAQos+pugVX+BfXpHsbyz/dLzX+lr44zNMsYiGxUw+kV5sgQCIcLd1z+0vq+KyC7dJ+/ts2PsfgWfSC3WXA==", "dev": true, + "license": "MIT", "optional": true, "dependencies": { "safe-buffer": "^5.2.1" @@ -13308,6 +12972,7 @@ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, + "license": "MIT", "dependencies": { "color-convert": "^2.0.1" }, @@ -13322,13 +12987,15 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", - "dev": true + "dev": true, + "license": "Python-2.0" }, "node_modules/pm2/node_modules/chalk": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", "dev": true, + "license": "MIT", "dependencies": { "ansi-styles": "^4.1.0", "supports-color": "^7.1.0" @@ -13342,6 +13009,7 @@ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, + "license": "MIT", "dependencies": { "color-name": "~1.1.4" }, @@ -13353,19 +13021,22 @@ "version": "1.1.4", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/pm2/node_modules/commander": { "version": "2.15.1", "resolved": "https://registry.npmjs.org/commander/-/commander-2.15.1.tgz", "integrity": "sha512-VlfT9F3V0v+jr4yxPc5gg9s62/fIVWsd2Bk2iD435um1NlGMYdVCq+MjcXnhYq2icNOizHr1kK+5TI6H0Hy0ag==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/pm2/node_modules/enquirer": { "version": "2.3.6", "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz", "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==", "dev": true, + "license": "MIT", "dependencies": { "ansi-colors": "^4.1.1" }, @@ -13378,6 +13049,7 @@ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } @@ -13387,6 +13059,7 @@ "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", "dev": true, + "license": "MIT", "dependencies": { "argparse": "^2.0.1" }, @@ -13398,13 +13071,15 @@ "version": "1.1.2", "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.2.tgz", "integrity": "sha512-VE0SOVEHCk7Qc8ulkWw3ntAzXuqf7S2lvwQaDLRnUeIEaKNQJzV6BwmLKhOqT61aGhfUMrXeaBk+oDGCzvhcug==", - "dev": true + "dev": true, + "license": "BSD-3-Clause" }, "node_modules/pm2/node_modules/supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, + "license": "MIT", "dependencies": { "has-flag": "^4.0.0" }, @@ -13417,6 +13092,7 @@ "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.0.0.tgz", "integrity": "sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==", "dev": true, + "license": "MIT", "engines": { "node": ">= 0.4" } @@ -13439,6 +13115,7 @@ "url": "https://github.com/sponsors/ai" } ], + "license": "MIT", "dependencies": { "nanoid": "^3.3.6", "picocolors": "^1.0.0", @@ -13463,6 +13140,7 @@ "url": "https://github.com/sponsors/ai" } ], + "license": "MIT", "dependencies": { "lilconfig": "^3.1.1" }, @@ -13491,14 +13169,15 @@ } }, "node_modules/preferred-pm": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/preferred-pm/-/preferred-pm-3.1.3.tgz", - "integrity": "sha512-MkXsENfftWSRpzCzImcp4FRsCc3y1opwB73CfCNWyzMqArju2CrlMHlqB7VexKiPEOjGMbttv1r9fSCn5S610w==", + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/preferred-pm/-/preferred-pm-3.1.4.tgz", + "integrity": "sha512-lEHd+yEm22jXdCphDrkvIJQU66EuLojPPtvZkpKIkiD+l0DMThF/niqZKJSoU8Vl7iuvtmzyMhir9LdVy5WMnA==", + "license": "MIT", "dependencies": { "find-up": "^5.0.0", "find-yarn-workspace-root2": "1.2.16", "path-exists": "^4.0.0", - "which-pm": "2.0.0" + "which-pm": "^2.2.0" }, "engines": { "node": ">=10" @@ -13508,6 +13187,7 @@ "version": "5.0.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "license": "MIT", "dependencies": { "locate-path": "^6.0.0", "path-exists": "^4.0.0" @@ -13523,6 +13203,7 @@ "version": "6.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "license": "MIT", "dependencies": { "p-locate": "^5.0.0" }, @@ -13537,6 +13218,7 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "license": "MIT", "dependencies": { "yocto-queue": "^0.1.0" }, @@ -13551,6 +13233,7 @@ "version": "5.0.0", "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "license": "MIT", "dependencies": { "p-limit": "^3.0.2" }, @@ -13566,6 +13249,7 @@ "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", "dev": true, + "license": "MIT", "engines": { "node": ">= 0.8.0" } @@ -13575,6 +13259,7 @@ "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.3.3.tgz", "integrity": "sha512-i2tDNA0O5IrMO757lfrdQZCc2jPNDVntV0m/+4whiDfWaTKfMNgR7Qz0NAeGz/nRqF4m5/6CLzbP4/liHt12Ew==", "dev": true, + "license": "MIT", "bin": { "prettier": "bin/prettier.cjs" }, @@ -13586,13 +13271,14 @@ } }, "node_modules/prettier-plugin-packagejson": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/prettier-plugin-packagejson/-/prettier-plugin-packagejson-2.5.0.tgz", - "integrity": "sha512-6XkH3rpin5QEQodBSVNg+rBo4r91g/1mCaRwS1YGdQJZ6jwqrg2UchBsIG9tpS1yK1kNBvOt84OILsX8uHzBGg==", + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/prettier-plugin-packagejson/-/prettier-plugin-packagejson-2.5.2.tgz", + "integrity": "sha512-w+TmoLv2pIa+siplW1cCj2ujEXQQS6z7wmWLOiLQK/2QVl7Wy6xh/ZUpqQw8tbKMXDodmSW4GONxlA33xpdNOg==", "dev": true, + "license": "MIT", "dependencies": { - "sort-package-json": "2.10.0", - "synckit": "0.9.0" + "sort-package-json": "2.10.1", + "synckit": "0.9.1" }, "peerDependencies": { "prettier": ">= 1.16.0" @@ -13607,6 +13293,7 @@ "version": "0.11.10", "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==", + "license": "MIT", "engines": { "node": ">= 0.6.0" } @@ -13614,13 +13301,15 @@ "node_modules/process-warning": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/process-warning/-/process-warning-3.0.0.tgz", - "integrity": "sha512-mqn0kFRl0EoqhnL0GQ0veqFHyIN1yig9RHh/InzORTUiZHFRAur+aMtRkELNwGs9aNwKS6tg/An4NYBPGwvtzQ==" + "integrity": "sha512-mqn0kFRl0EoqhnL0GQ0veqFHyIN1yig9RHh/InzORTUiZHFRAur+aMtRkELNwGs9aNwKS6tg/An4NYBPGwvtzQ==", + "license": "MIT" }, "node_modules/promptly": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/promptly/-/promptly-2.2.0.tgz", "integrity": "sha512-aC9j+BZsRSSzEsXBNBwDnAxujdx19HycZoKgRgzWnS8eOHg1asuf9heuLprfbe739zY3IdUQx+Egv6Jn135WHA==", "dev": true, + "license": "MIT", "dependencies": { "read": "^1.0.4" } @@ -13630,6 +13319,7 @@ "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", "dev": true, + "license": "MIT", "dependencies": { "loose-envify": "^1.4.0", "object-assign": "^4.1.1", @@ -13640,6 +13330,7 @@ "version": "6.5.0", "resolved": "https://registry.npmjs.org/property-information/-/property-information-6.5.0.tgz", "integrity": "sha512-PgTgs/BlvHxOu8QuEN7wi5A0OmXaBcHpmCSTehcs6Uuu9IkDIEo13Hy7n898RHfrQ49vKCoGeWZSaAK01nwVig==", + "license": "MIT", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" @@ -13648,12 +13339,14 @@ "node_modules/protocols": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/protocols/-/protocols-2.0.1.tgz", - "integrity": "sha512-/XJ368cyBJ7fzLMwLKv1e4vLxOju2MNAIokcr7meSaNcVbWz/CPcW22cP04mwxOErdA5mwjA8Q6w/cdAQxVn7Q==" + "integrity": "sha512-/XJ368cyBJ7fzLMwLKv1e4vLxOju2MNAIokcr7meSaNcVbWz/CPcW22cP04mwxOErdA5mwjA8Q6w/cdAQxVn7Q==", + "license": "MIT" }, "node_modules/proxy-addr": { "version": "2.0.7", "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", + "license": "MIT", "dependencies": { "forwarded": "0.2.0", "ipaddr.js": "1.9.1" @@ -13667,6 +13360,7 @@ "resolved": "https://registry.npmjs.org/proxy-agent/-/proxy-agent-6.3.1.tgz", "integrity": "sha512-Rb5RVBy1iyqOtNl15Cw/llpeLH8bsb37gM1FUfKQ+Wck6xHlbAhWGUFiTRHtkjqGTA5pSHz6+0hrPW/oECihPQ==", "dev": true, + "license": "MIT", "dependencies": { "agent-base": "^7.0.2", "debug": "^4.3.4", @@ -13686,6 +13380,7 @@ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", "dev": true, + "license": "ISC", "engines": { "node": ">=12" } @@ -13694,18 +13389,21 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/pseudomap": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", - "integrity": "sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==" + "integrity": "sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==", + "license": "ISC" }, "node_modules/pump": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", "dev": true, + "license": "MIT", "dependencies": { "end-of-stream": "^1.1.0", "once": "^1.3.1" @@ -13715,10 +13413,28 @@ "version": "2.3.1", "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "dev": true, + "license": "MIT", "engines": { "node": ">=6" } }, + "node_modules/qs": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz", + "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==", + "license": "BSD-3-Clause", + "peer": true, + "dependencies": { + "side-channel": "^1.0.6" + }, + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/queue-microtask": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", @@ -13736,17 +13452,20 @@ "type": "consulting", "url": "https://feross.org/support" } - ] + ], + "license": "MIT" }, "node_modules/quick-format-unescaped": { "version": "4.0.4", "resolved": "https://registry.npmjs.org/quick-format-unescaped/-/quick-format-unescaped-4.0.4.tgz", - "integrity": "sha512-tYC1Q1hgyRuHgloV/YXs2w15unPVh8qfu/qCTfhTYamaw7fyhumKa2yGpdSo87vY32rIclj+4fWYQXUMs9EHvg==" + "integrity": "sha512-tYC1Q1hgyRuHgloV/YXs2w15unPVh8qfu/qCTfhTYamaw7fyhumKa2yGpdSo87vY32rIclj+4fWYQXUMs9EHvg==", + "license": "MIT" }, "node_modules/react": { "version": "18.3.1", "resolved": "https://registry.npmjs.org/react/-/react-18.3.1.tgz", "integrity": "sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==", + "license": "MIT", "dependencies": { "loose-envify": "^1.1.0" }, @@ -13758,6 +13477,7 @@ "version": "18.3.1", "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.3.1.tgz", "integrity": "sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw==", + "license": "MIT", "dependencies": { "loose-envify": "^1.1.0", "scheduler": "^0.23.2" @@ -13770,13 +13490,15 @@ "version": "16.13.1", "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/read": { "version": "1.0.7", "resolved": "https://registry.npmjs.org/read/-/read-1.0.7.tgz", "integrity": "sha512-rSOKNYUmaxy0om1BNjMN4ezNT6VKK+2xF4GBhc81mkH7L60i6dp8qPYrkndNLT3QPphoII3maL9PVC9XmhHwVQ==", "dev": true, + "license": "ISC", "dependencies": { "mute-stream": "~0.0.4" }, @@ -13789,6 +13511,7 @@ "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", "dev": true, + "license": "MIT", "dependencies": { "@types/normalize-package-data": "^2.4.0", "normalize-package-data": "^2.5.0", @@ -13804,6 +13527,7 @@ "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz", "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==", "dev": true, + "license": "MIT", "dependencies": { "find-up": "^4.1.0", "read-pkg": "^5.2.0", @@ -13821,6 +13545,7 @@ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", "dev": true, + "license": "(MIT OR CC0-1.0)", "engines": { "node": ">=8" } @@ -13830,6 +13555,7 @@ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==", "dev": true, + "license": "(MIT OR CC0-1.0)", "engines": { "node": ">=8" } @@ -13838,6 +13564,7 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/read-yaml-file/-/read-yaml-file-1.1.0.tgz", "integrity": "sha512-VIMnQi/Z4HT2Fxuwg5KrY174U1VdUIASQVWXXyqtNRtxSr9IYkn1rsI6Tb6HsrHCmB7gVpNwX6JxPTHcH6IoTA==", + "license": "MIT", "dependencies": { "graceful-fs": "^4.1.5", "js-yaml": "^3.6.1", @@ -13852,6 +13579,7 @@ "version": "4.5.2", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.5.2.tgz", "integrity": "sha512-yjavECdqeZ3GLXNgRXgeQEdz9fvDDkNKyHnbHRFtOr7/LcfgBcmct7t/ET+HaCTqfh06OzoAxrkN/IfjJBVe+g==", + "license": "MIT", "dependencies": { "abort-controller": "^3.0.0", "buffer": "^6.0.3", @@ -13868,6 +13596,7 @@ "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", "dev": true, + "license": "MIT", "dependencies": { "picomatch": "^2.2.1" }, @@ -13878,12 +13607,14 @@ "node_modules/reading-time": { "version": "1.5.0", "resolved": "https://registry.npmjs.org/reading-time/-/reading-time-1.5.0.tgz", - "integrity": "sha512-onYyVhBNr4CmAxFsKS7bz+uTLRakypIe4R+5A824vBSkQy/hB3fZepoVEf8OVAxzLvK+H/jm9TzpI3ETSm64Kg==" + "integrity": "sha512-onYyVhBNr4CmAxFsKS7bz+uTLRakypIe4R+5A824vBSkQy/hB3fZepoVEf8OVAxzLvK+H/jm9TzpI3ETSm64Kg==", + "license": "MIT" }, "node_modules/real-require": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/real-require/-/real-require-0.2.0.tgz", "integrity": "sha512-57frrGM/OCTLqLOAh0mhVA9VBMHd+9U7Zb2THMGdBUoZVOtGbJzjxsYGDJ3A9AYYCP4hn6y1TVbaOfzWtm5GFg==", + "license": "MIT", "engines": { "node": ">= 12.13.0" } @@ -13892,6 +13623,7 @@ "version": "4.7.0", "resolved": "https://registry.npmjs.org/redis/-/redis-4.7.0.tgz", "integrity": "sha512-zvmkHEAdGMn+hMRXuMBtu4Vo5P6rHQjLoHftu+lBqq8ZTA3RCVC/WzD790bkKKiNFp7d5/9PcSD19fJyyRvOdQ==", + "license": "MIT", "workspaces": [ "./packages/*" ], @@ -13909,6 +13641,7 @@ "resolved": "https://registry.npmjs.org/reflect.getprototypeof/-/reflect.getprototypeof-1.0.6.tgz", "integrity": "sha512-fmfw4XgoDke3kdI6h4xcUz1dG8uaiv5q9gcEwLS4Pnth2kxT+GZ7YehS1JTMGBQmtV7Y4GFGbs2re2NqhdozUg==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.7", "define-properties": "^1.2.1", @@ -13928,13 +13661,15 @@ "node_modules/regenerator-runtime": { "version": "0.14.1", "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz", - "integrity": "sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==" + "integrity": "sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==", + "license": "MIT" }, "node_modules/regexp-tree": { "version": "0.1.27", "resolved": "https://registry.npmjs.org/regexp-tree/-/regexp-tree-0.1.27.tgz", "integrity": "sha512-iETxpjK6YoRWJG5o6hXLwvjYAoW+FEZn9os0PD/b6AP6xQwsa/Y7lCVgIixBbUPMfhu+i2LtdeAqVTgGlQarfA==", "dev": true, + "license": "MIT", "bin": { "regexp-tree": "bin/regexp-tree" } @@ -13944,6 +13679,7 @@ "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.2.tgz", "integrity": "sha512-NcDiDkTLuPR+++OCKB0nWafEmhg/Da8aUPLPMQbK+bxKKCm1/S5he+AqYa4PlMCVBalb4/yxIRub6qkEx5yJbw==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.6", "define-properties": "^1.2.1", @@ -13962,6 +13698,7 @@ "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.10.0.tgz", "integrity": "sha512-qx+xQGZVsy55CH0a1hiVwHmqjLryfh7wQyF5HO07XJ9f7dQMY/gPQHhlyDkIzJKC+x2fUCpCcUODUUUFrm7SHA==", "dev": true, + "license": "BSD-2-Clause", "dependencies": { "jsesc": "~0.5.0" }, @@ -13979,9 +13716,10 @@ } }, "node_modules/rehype-katex": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/rehype-katex/-/rehype-katex-7.0.0.tgz", - "integrity": "sha512-h8FPkGE00r2XKU+/acgqwWUlyzve1IiOKwsEkg4pDL3k48PiE0Pt+/uLtVHDVkN1yA4iurZN6UES8ivHVEQV6Q==", + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/rehype-katex/-/rehype-katex-7.0.1.tgz", + "integrity": "sha512-OiM2wrZ/wuhKkigASodFoo8wimG3H12LWQaH8qSPVJn9apWKFSH3YOCtbKpBorTVw/eI7cuT21XBbvwEswbIOA==", + "license": "MIT", "dependencies": { "@types/hast": "^3.0.0", "@types/katex": "^0.16.0", @@ -14000,34 +13738,24 @@ "version": "3.0.4", "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==", + "license": "MIT", "dependencies": { "@types/unist": "*" } }, "node_modules/rehype-katex/node_modules/@types/unist": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.2.tgz", - "integrity": "sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==" - }, - "node_modules/rehype-katex/node_modules/unist-util-stringify-position": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-4.0.0.tgz", - "integrity": "sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==", - "dependencies": { - "@types/unist": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", + "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==", + "license": "MIT" }, "node_modules/rehype-katex/node_modules/vfile": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.1.tgz", - "integrity": "sha512-1bYqc7pt6NIADBJ98UiG0Bn/CHIVOoZ/IyEkqIruLg0mE1BKzkOXY2D6CSqQIcKqgadppE5lrxgWXJmXd7zZJw==", + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.3.tgz", + "integrity": "sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==", + "license": "MIT", "dependencies": { "@types/unist": "^3.0.0", - "unist-util-stringify-position": "^4.0.0", "vfile-message": "^4.0.0" }, "funding": { @@ -14039,6 +13767,7 @@ "version": "0.9.11", "resolved": "https://registry.npmjs.org/rehype-pretty-code/-/rehype-pretty-code-0.9.11.tgz", "integrity": "sha512-Eq90eCYXQJISktfRZ8PPtwc5SUyH6fJcxS8XOMnHPUQZBtC6RYo67gGlley9X2nR8vlniPj0/7oCDEYHKQa/oA==", + "license": "MIT", "workspaces": [ "./word-highlighter-playground" ], @@ -14058,6 +13787,7 @@ "version": "7.0.0", "resolved": "https://registry.npmjs.org/rehype-raw/-/rehype-raw-7.0.0.tgz", "integrity": "sha512-/aE8hCfKlQeA8LmyeyQvQF3eBiLRGNlfBJEvWH7ivp9sBqs7TNqBL5X3v157rM4IFETqDnIOO+z5M/biZbo9Ww==", + "license": "MIT", "dependencies": { "@types/hast": "^3.0.0", "hast-util-raw": "^9.0.0", @@ -14072,34 +13802,24 @@ "version": "3.0.4", "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==", + "license": "MIT", "dependencies": { "@types/unist": "*" } }, "node_modules/rehype-raw/node_modules/@types/unist": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.2.tgz", - "integrity": "sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==" - }, - "node_modules/rehype-raw/node_modules/unist-util-stringify-position": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-4.0.0.tgz", - "integrity": "sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==", - "dependencies": { - "@types/unist": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", + "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==", + "license": "MIT" }, "node_modules/rehype-raw/node_modules/vfile": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.1.tgz", - "integrity": "sha512-1bYqc7pt6NIADBJ98UiG0Bn/CHIVOoZ/IyEkqIruLg0mE1BKzkOXY2D6CSqQIcKqgadppE5lrxgWXJmXd7zZJw==", + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.3.tgz", + "integrity": "sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==", + "license": "MIT", "dependencies": { "@types/unist": "^3.0.0", - "unist-util-stringify-position": "^4.0.0", "vfile-message": "^4.0.0" }, "funding": { @@ -14111,6 +13831,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/remark-gfm/-/remark-gfm-3.0.1.tgz", "integrity": "sha512-lEFDoi2PICJyNrACFOfDD3JlLkuSbOa5Wd8EPt06HUdptv8Gn0bxYTdbU/XXQ3swAPkEaGxxPN9cbnMHvVu1Ig==", + "license": "MIT", "dependencies": { "@types/mdast": "^3.0.0", "mdast-util-gfm": "^2.0.0", @@ -14126,6 +13847,7 @@ "version": "5.1.1", "resolved": "https://registry.npmjs.org/remark-math/-/remark-math-5.1.1.tgz", "integrity": "sha512-cE5T2R/xLVtfFI4cCePtiRn+e6jKMtFDR3P8V3qpv8wpKjwvHoBA4eJzvX+nVrnlNy0911bdGmuspCSwetfYHw==", + "license": "MIT", "dependencies": { "@types/mdast": "^3.0.0", "mdast-util-math": "^2.0.0", @@ -14141,6 +13863,7 @@ "version": "2.3.0", "resolved": "https://registry.npmjs.org/remark-mdx/-/remark-mdx-2.3.0.tgz", "integrity": "sha512-g53hMkpM0I98MU266IzDFMrTD980gNF3BJnkyFcmN+dD873mQeD5rdMO3Y2X+x8umQfbSE0PcoEDl7ledSA+2g==", + "license": "MIT", "dependencies": { "mdast-util-mdx": "^2.0.0", "micromark-extension-mdxjs": "^1.0.0" @@ -14154,6 +13877,7 @@ "version": "10.0.2", "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-10.0.2.tgz", "integrity": "sha512-3ydxgHa/ZQzG8LvC7jTXccARYDcRld3VfcgIIFs7bI6vbRSxJJmzgLEIIoYKyrfhaY+ujuWaf/PJiMZXoiCXgw==", + "license": "MIT", "dependencies": { "@types/mdast": "^3.0.0", "mdast-util-from-markdown": "^1.0.0", @@ -14168,6 +13892,7 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/remark-reading-time/-/remark-reading-time-2.0.1.tgz", "integrity": "sha512-fy4BKy9SRhtYbEHvp6AItbRTnrhiDGbqLQTSYVbQPGuRCncU1ubSsh9p/W5QZSxtYcUXv8KGL0xBgPLyNJA1xw==", + "license": "ISC", "dependencies": { "estree-util-is-identifier-name": "^2.0.0", "estree-util-value-to-estree": "^1.3.0", @@ -14179,6 +13904,7 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-3.1.0.tgz", "integrity": "sha512-Szoh+R/Ll68QWAyQyZZpQzZQm2UPbxibDvaY8Xc9SUtYgPsDzx5AWSk++UUt2hJuow8mvwR+rG+LQLw+KsuAKA==", + "license": "MIT", "dependencies": { "@types/unist": "^2.0.0", "unist-util-is": "^5.0.0", @@ -14193,6 +13919,7 @@ "version": "4.1.1", "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-4.1.1.tgz", "integrity": "sha512-1xAFJXAKpnnJl8G7K5KgU7FY55y3GcLIXqkzUj5QF/QVP7biUm0K0O2oqVkYsdjzJKifYeWn9+o6piAK2hGSHw==", + "license": "MIT", "dependencies": { "@types/unist": "^2.0.0", "unist-util-is": "^5.0.0" @@ -14206,6 +13933,7 @@ "version": "10.1.0", "resolved": "https://registry.npmjs.org/remark-rehype/-/remark-rehype-10.1.0.tgz", "integrity": "sha512-EFmR5zppdBp0WQeDVZ/b66CWJipB2q2VLNFMabzDSGR66Z2fQii83G5gTBbgGEnEEA0QRussvrFHxk1HWGJskw==", + "license": "MIT", "dependencies": { "@types/hast": "^2.0.0", "@types/mdast": "^3.0.0", @@ -14221,6 +13949,7 @@ "version": "12.3.0", "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-12.3.0.tgz", "integrity": "sha512-pits93r8PhnIoU4Vy9bjW39M2jJ6/tdHyja9rrot9uujkN7UTU9SDnE6WNJz/IGyQk3XHX6yNNtrBH6cQzm8Hw==", + "license": "MIT", "dependencies": { "@types/hast": "^2.0.0", "@types/mdast": "^3.0.0", @@ -14240,6 +13969,7 @@ "version": "4.1.2", "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-4.1.2.tgz", "integrity": "sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg==", + "license": "MIT", "dependencies": { "@types/unist": "^2.0.0", "unist-util-is": "^5.0.0", @@ -14254,6 +13984,7 @@ "version": "5.1.3", "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-5.1.3.tgz", "integrity": "sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==", + "license": "MIT", "dependencies": { "@types/unist": "^2.0.0", "unist-util-is": "^5.0.0" @@ -14266,12 +13997,14 @@ "node_modules/remove-accents": { "version": "0.5.0", "resolved": "https://registry.npmjs.org/remove-accents/-/remove-accents-0.5.0.tgz", - "integrity": "sha512-8g3/Otx1eJaVD12e31UbJj1YzdtVvzH85HV7t+9MJYk/u3XmkOUJ5Ys9wQrf9PCPK8+xn4ymzqYCiZl6QWKn+A==" + "integrity": "sha512-8g3/Otx1eJaVD12e31UbJj1YzdtVvzH85HV7t+9MJYk/u3XmkOUJ5Ys9wQrf9PCPK8+xn4ymzqYCiZl6QWKn+A==", + "license": "MIT" }, "node_modules/require-from-string": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -14281,6 +14014,7 @@ "resolved": "https://registry.npmjs.org/require-in-the-middle/-/require-in-the-middle-5.2.0.tgz", "integrity": "sha512-efCx3b+0Z69/LGJmm9Yvi4cqEdxnoGnxYxGxBghkkTTFeXRtTCmmhO0AnAfHz59k957uTSuy8WaHqOs8wbYUWg==", "dev": true, + "license": "MIT", "dependencies": { "debug": "^4.1.1", "module-details-from-path": "^1.0.3", @@ -14295,6 +14029,7 @@ "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", "dev": true, + "license": "MIT", "dependencies": { "is-core-module": "^2.13.0", "path-parse": "^1.0.7", @@ -14311,6 +14046,7 @@ "version": "5.0.0", "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "license": "MIT", "engines": { "node": ">=8" } @@ -14320,6 +14056,7 @@ "resolved": "https://registry.npmjs.org/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz", "integrity": "sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==", "dev": true, + "license": "MIT", "funding": { "url": "https://github.com/privatenumber/resolve-pkg-maps?sponsor=1" } @@ -14328,6 +14065,7 @@ "version": "0.4.3", "resolved": "https://registry.npmjs.org/ret/-/ret-0.4.3.tgz", "integrity": "sha512-0f4Memo5QP7WQyUEAYUO3esD/XjOc3Zjjg5CPsAq1p8sIu0XPeMbHJemKA0BO7tV0X7+A0FoEpbmHXWxPyD3wQ==", + "license": "MIT", "engines": { "node": ">=10" } @@ -14336,6 +14074,7 @@ "version": "1.0.4", "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "license": "MIT", "engines": { "iojs": ">=1.0.0", "node": ">=0.10.0" @@ -14344,13 +14083,15 @@ "node_modules/rfdc": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.4.1.tgz", - "integrity": "sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==" + "integrity": "sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==", + "license": "MIT" }, "node_modules/rimraf": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-6.0.1.tgz", "integrity": "sha512-9dkvaxAsk/xNXSJzMgFqqMCuFgt2+KsOFek3TMLfo8NCPfWpBmqwyNn5Y+NX56QUYfCtsyhF3ayiboEoUmJk/A==", "dev": true, + "license": "ISC", "dependencies": { "glob": "^11.0.0", "package-json-from-dist": "^1.0.0" @@ -14368,13 +14109,15 @@ "node_modules/robust-predicates": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/robust-predicates/-/robust-predicates-3.0.2.tgz", - "integrity": "sha512-IXgzBWvWQwE6PrDI05OvmXUIruQTcoMDzRsOd5CDvHCVLcLHMTSYvOK5Cm46kWqlV3yAbuSpBZdJ5oP5OUoStg==" + "integrity": "sha512-IXgzBWvWQwE6PrDI05OvmXUIruQTcoMDzRsOd5CDvHCVLcLHMTSYvOK5Cm46kWqlV3yAbuSpBZdJ5oP5OUoStg==", + "license": "Unlicense" }, "node_modules/rollup": { - "version": "4.19.0", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.19.0.tgz", - "integrity": "sha512-5r7EYSQIowHsK4eTZ0Y81qpZuJz+MUuYeqmmYmRMl1nwhdmbiYqt5jwzf6u7wyOzJgYqtCRMtVRKOtHANBz7rA==", + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.21.2.tgz", + "integrity": "sha512-e3TapAgYf9xjdLvKQCkQTnbTKd4a6jwlpQSJJFokHGaX2IVjoEqkIIhiQfqsi0cdwlOD+tQGuOd5AJkc5RngBw==", "dev": true, + "license": "MIT", "dependencies": { "@types/estree": "1.0.5" }, @@ -14386,22 +14129,22 @@ "npm": ">=8.0.0" }, "optionalDependencies": { - "@rollup/rollup-android-arm-eabi": "4.19.0", - "@rollup/rollup-android-arm64": "4.19.0", - "@rollup/rollup-darwin-arm64": "4.19.0", - "@rollup/rollup-darwin-x64": "4.19.0", - "@rollup/rollup-linux-arm-gnueabihf": "4.19.0", - "@rollup/rollup-linux-arm-musleabihf": "4.19.0", - "@rollup/rollup-linux-arm64-gnu": "4.19.0", - "@rollup/rollup-linux-arm64-musl": "4.19.0", - "@rollup/rollup-linux-powerpc64le-gnu": "4.19.0", - "@rollup/rollup-linux-riscv64-gnu": "4.19.0", - "@rollup/rollup-linux-s390x-gnu": "4.19.0", - "@rollup/rollup-linux-x64-gnu": "4.19.0", - "@rollup/rollup-linux-x64-musl": "4.19.0", - "@rollup/rollup-win32-arm64-msvc": "4.19.0", - "@rollup/rollup-win32-ia32-msvc": "4.19.0", - "@rollup/rollup-win32-x64-msvc": "4.19.0", + "@rollup/rollup-android-arm-eabi": "4.21.2", + "@rollup/rollup-android-arm64": "4.21.2", + "@rollup/rollup-darwin-arm64": "4.21.2", + "@rollup/rollup-darwin-x64": "4.21.2", + "@rollup/rollup-linux-arm-gnueabihf": "4.21.2", + "@rollup/rollup-linux-arm-musleabihf": "4.21.2", + "@rollup/rollup-linux-arm64-gnu": "4.21.2", + "@rollup/rollup-linux-arm64-musl": "4.21.2", + "@rollup/rollup-linux-powerpc64le-gnu": "4.21.2", + "@rollup/rollup-linux-riscv64-gnu": "4.21.2", + "@rollup/rollup-linux-s390x-gnu": "4.21.2", + "@rollup/rollup-linux-x64-gnu": "4.21.2", + "@rollup/rollup-linux-x64-musl": "4.21.2", + "@rollup/rollup-win32-arm64-msvc": "4.21.2", + "@rollup/rollup-win32-ia32-msvc": "4.21.2", + "@rollup/rollup-win32-x64-msvc": "4.21.2", "fsevents": "~2.3.2" } }, @@ -14423,6 +14166,7 @@ "url": "https://feross.org/support" } ], + "license": "MIT", "dependencies": { "queue-microtask": "^1.2.2" } @@ -14445,17 +14189,20 @@ "type": "consulting", "url": "https://feross.org/support" } - ] + ], + "license": "MIT" }, "node_modules/rw": { "version": "1.3.3", "resolved": "https://registry.npmjs.org/rw/-/rw-1.3.3.tgz", - "integrity": "sha512-PdhdWy89SiZogBLaw42zdeqtRJ//zFd2PgQavcICDUgJT5oW10QCRKbJ6bg4r0/UY2M6BWd5tkxuGFRvCkgfHQ==" + "integrity": "sha512-PdhdWy89SiZogBLaw42zdeqtRJ//zFd2PgQavcICDUgJT5oW10QCRKbJ6bg4r0/UY2M6BWd5tkxuGFRvCkgfHQ==", + "license": "BSD-3-Clause" }, "node_modules/sade": { "version": "1.8.1", "resolved": "https://registry.npmjs.org/sade/-/sade-1.8.1.tgz", "integrity": "sha512-xal3CZX1Xlo/k4ApwCFrHVACi9fBqJ7V+mwhBsuf/1IOKbBy098Fex+Wa/5QMubw09pSZ/u8EY8PWgevJsXp1A==", + "license": "MIT", "dependencies": { "mri": "^1.1.0" }, @@ -14468,6 +14215,7 @@ "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.2.tgz", "integrity": "sha512-vj6RsCsWBCf19jIeHEfkRMw8DPiBb+DMXklQ/1SGDHOMlHdPUkZXFQ2YdplS23zESTijAcurb1aSgJA3AgMu1Q==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.7", "get-intrinsic": "^1.2.4", @@ -14498,13 +14246,15 @@ "type": "consulting", "url": "https://feross.org/support" } - ] + ], + "license": "MIT" }, "node_modules/safe-regex-test": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.3.tgz", "integrity": "sha512-CdASjNJPvRa7roO6Ra/gLYBTzYzzPyyBXxIMdGW3USQLyjWEls2RgW5UBTXaQVp+OrpeCK3bLem8smtmheoRuw==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.6", "es-errors": "^1.3.0", @@ -14521,14 +14271,16 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/safe-regex2/-/safe-regex2-3.1.0.tgz", "integrity": "sha512-RAAZAGbap2kBfbVhvmnTFv73NWLMvDGOITFYTZBAaY8eR+Ir4ef7Up/e7amo+y1+AH+3PtLkrt9mvcTsG9LXug==", + "license": "MIT", "dependencies": { "ret": "~0.4.0" } }, "node_modules/safe-stable-stringify": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.4.3.tgz", - "integrity": "sha512-e2bDA2WJT0wxseVd4lsDP4+3ONX6HpMXQa1ZhFQ7SU+GjvORCmShbCMltrtIDfkYhVHrOcPtj+KhmDBdPdZD1g==", + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.5.0.tgz", + "integrity": "sha512-b3rppTKm9T+PsVCBEOUR46GWI7fdOs00VKZ1+9c1EWDaDMvjQc6tUwuFyIprgGgTcWoVHSKrU8H31ZHA2e0RHA==", + "license": "MIT", "engines": { "node": ">=10" } @@ -14536,18 +14288,21 @@ "node_modules/safer-buffer": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "license": "MIT" }, "node_modules/sax": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/sax/-/sax-1.4.1.tgz", "integrity": "sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg==", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/scheduler": { "version": "0.23.2", "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.2.tgz", "integrity": "sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==", + "license": "MIT", "dependencies": { "loose-envify": "^1.1.0" } @@ -14556,6 +14311,7 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/scroll-into-view-if-needed/-/scroll-into-view-if-needed-3.1.0.tgz", "integrity": "sha512-49oNpRjWRvnU8NyGVmUaYG4jtTkNonFZI86MmGRDqBphEK2EXT9gdEUoQPZhuBM8yWHxCWbobltqYO5M4XrUvQ==", + "license": "MIT", "dependencies": { "compute-scroll-into-view": "^3.0.2" } @@ -14564,6 +14320,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/section-matter/-/section-matter-1.0.0.tgz", "integrity": "sha512-vfD3pmTzGpufjScBh50YHKzEu2lxBWhVEHsNGoEXmCmn2hKGfeNLYMzCJpe8cD7gqX7TJluOVpBkAequ6dgMmA==", + "license": "MIT", "dependencies": { "extend-shallow": "^2.0.1", "kind-of": "^6.0.0" @@ -14575,12 +14332,14 @@ "node_modules/secure-json-parse": { "version": "2.7.0", "resolved": "https://registry.npmjs.org/secure-json-parse/-/secure-json-parse-2.7.0.tgz", - "integrity": "sha512-6aU+Rwsezw7VR8/nyvKTx8QpWH9FrcYiXXlqC4z5d5XQBDRqtbfsRjnwGyqbi3gddNtWHuEk9OANUotL26qKUw==" + "integrity": "sha512-6aU+Rwsezw7VR8/nyvKTx8QpWH9FrcYiXXlqC4z5d5XQBDRqtbfsRjnwGyqbi3gddNtWHuEk9OANUotL26qKUw==", + "license": "BSD-3-Clause" }, "node_modules/semver": { - "version": "7.6.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.2.tgz", - "integrity": "sha512-FNAIBWCx9qcRhoHcgcJ0gvU7SN1lYU2ZXuSfl04bSC5OpvDHFyJCjdNHomPXxjQlCBU67YW64PzY7/VIEH7F2w==", + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", + "license": "ISC", "bin": { "semver": "bin/semver.js" }, @@ -14589,15 +14348,16 @@ } }, "node_modules/set-cookie-parser": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/set-cookie-parser/-/set-cookie-parser-2.6.0.tgz", - "integrity": "sha512-RVnVQxTXuerk653XfuliOxBP81Sf0+qfQE73LIYKcyMYHG94AuH0kgrQpRDuTZnSmjpysHmzxJXKNfa6PjFhyQ==" + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/set-cookie-parser/-/set-cookie-parser-2.7.0.tgz", + "integrity": "sha512-lXLOiqpkUumhRdFF3k1osNXCy9akgx/dyPZ5p8qAg9seJzXr5ZrlqZuWIMuY6ejOsVLE6flJ5/h3lsn57fQ/PQ==", + "license": "MIT" }, "node_modules/set-function-length": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", - "dev": true, + "license": "MIT", "dependencies": { "define-data-property": "^1.1.4", "es-errors": "^1.3.0", @@ -14615,6 +14375,7 @@ "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz", "integrity": "sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==", "dev": true, + "license": "MIT", "dependencies": { "define-data-property": "^1.1.4", "es-errors": "^1.3.0", @@ -14625,51 +14386,12 @@ "node": ">= 0.4" } }, - "node_modules/sharp": { - "version": "0.33.4", - "resolved": "https://registry.npmjs.org/sharp/-/sharp-0.33.4.tgz", - "integrity": "sha512-7i/dt5kGl7qR4gwPRD2biwD2/SvBn3O04J77XKFgL2OnZtQw+AG9wnuS/csmu80nPRHLYE9E41fyEiG8nhH6/Q==", - "hasInstallScript": true, - "optional": true, - "dependencies": { - "color": "^4.2.3", - "detect-libc": "^2.0.3", - "semver": "^7.6.0" - }, - "engines": { - "libvips": ">=8.15.2", - "node": "^18.17.0 || ^20.3.0 || >=21.0.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" - }, - "optionalDependencies": { - "@img/sharp-darwin-arm64": "0.33.4", - "@img/sharp-darwin-x64": "0.33.4", - "@img/sharp-libvips-darwin-arm64": "1.0.2", - "@img/sharp-libvips-darwin-x64": "1.0.2", - "@img/sharp-libvips-linux-arm": "1.0.2", - "@img/sharp-libvips-linux-arm64": "1.0.2", - "@img/sharp-libvips-linux-s390x": "1.0.2", - "@img/sharp-libvips-linux-x64": "1.0.2", - "@img/sharp-libvips-linuxmusl-arm64": "1.0.2", - "@img/sharp-libvips-linuxmusl-x64": "1.0.2", - "@img/sharp-linux-arm": "0.33.4", - "@img/sharp-linux-arm64": "0.33.4", - "@img/sharp-linux-s390x": "0.33.4", - "@img/sharp-linux-x64": "0.33.4", - "@img/sharp-linuxmusl-arm64": "0.33.4", - "@img/sharp-linuxmusl-x64": "0.33.4", - "@img/sharp-wasm32": "0.33.4", - "@img/sharp-win32-ia32": "0.33.4", - "@img/sharp-win32-x64": "0.33.4" - } - }, "node_modules/shebang-command": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", "dev": true, + "license": "MIT", "dependencies": { "shebang-regex": "^3.0.0" }, @@ -14682,6 +14404,7 @@ "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } @@ -14690,6 +14413,7 @@ "version": "0.14.7", "resolved": "https://registry.npmjs.org/shiki/-/shiki-0.14.7.tgz", "integrity": "sha512-dNPAPrxSc87ua2sKJ3H5dQ/6ZaY8RNnaAqK+t0eG7p0Soi2ydiqbGOTaZCqaYvA/uZYfS1LJnemt3Q+mSfcPCg==", + "license": "MIT", "dependencies": { "ansi-sequence-parser": "^1.1.0", "jsonc-parser": "^3.2.0", @@ -14701,13 +14425,14 @@ "version": "1.2.1", "resolved": "https://registry.npmjs.org/shimmer/-/shimmer-1.2.1.tgz", "integrity": "sha512-sQTKC1Re/rM6XyFM6fIAGHRPVGvyXfgzIDvzoq608vM+jeyVD0Tu1E6Np0Kc2zAIFWIj963V2800iF/9LPieQw==", - "dev": true + "dev": true, + "license": "BSD-2-Clause" }, "node_modules/side-channel": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.6.tgz", "integrity": "sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==", - "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.7", "es-errors": "^1.3.0", @@ -14726,6 +14451,7 @@ "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", "dev": true, + "license": "ISC", "engines": { "node": ">=14" }, @@ -14733,25 +14459,11 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/simple-swizzle": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz", - "integrity": "sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==", - "optional": true, - "dependencies": { - "is-arrayish": "^0.3.1" - } - }, - "node_modules/simple-swizzle/node_modules/is-arrayish": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz", - "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==", - "optional": true - }, "node_modules/slash": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "license": "MIT", "engines": { "node": ">=8" } @@ -14761,6 +14473,7 @@ "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", "dev": true, + "license": "MIT", "engines": { "node": ">= 6.0.0", "npm": ">= 3.0.0" @@ -14771,6 +14484,7 @@ "resolved": "https://registry.npmjs.org/socks/-/socks-2.8.3.tgz", "integrity": "sha512-l5x7VUUWbjVFbafGLxPWkYsHIhEvmF85tbIeFZWc8ZPtoMyybuEhL7Jye/ooC4/d48FgOjSJXgsF/AJPYCW8Zw==", "dev": true, + "license": "MIT", "dependencies": { "ip-address": "^9.0.5", "smart-buffer": "^4.2.0" @@ -14781,23 +14495,25 @@ } }, "node_modules/socks-proxy-agent": { - "version": "8.0.3", - "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-8.0.3.tgz", - "integrity": "sha512-VNegTZKhuGq5vSD6XNKlbqWhyt/40CgoEw8XxD6dhnm8Jq9IEa3nIa4HwnM8XOqU0CdB0BwWVXusqiFXfHB3+A==", + "version": "8.0.4", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-8.0.4.tgz", + "integrity": "sha512-GNAq/eg8Udq2x0eNiFkr9gRg5bA7PXEWagQdeRX4cPSG+X/8V38v637gim9bjFptMk1QWsCTr0ttrJEiXbNnRw==", "dev": true, + "license": "MIT", "dependencies": { "agent-base": "^7.1.1", "debug": "^4.3.4", - "socks": "^2.7.1" + "socks": "^2.8.3" }, "engines": { "node": ">= 14" } }, "node_modules/sonic-boom": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/sonic-boom/-/sonic-boom-4.0.1.tgz", - "integrity": "sha512-hTSD/6JMLyT4r9zeof6UtuBDpjJ9sO08/nmS5djaA9eozT9oOlNdpXSnzcgj4FTqpk3nkLrs61l4gip9r1HCrQ==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/sonic-boom/-/sonic-boom-4.1.0.tgz", + "integrity": "sha512-NGipjjRicyJJ03rPiZCJYjwlsuP2d1/5QUviozRXC7S3WdVWNK5e3Ojieb9CCyfhq2UC+3+SRd9nG3I2lPRvUw==", + "license": "MIT", "dependencies": { "atomic-sleep": "^1.0.0" } @@ -14806,6 +14522,7 @@ "version": "5.0.0", "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-5.0.0.tgz", "integrity": "sha512-Pdz01AvCAottHTPQGzndktFNdbRA75BgOfeT1hH+AMnJFv8lynkPi42rfeEhpx1saTEI3YNMWxfqu0sFD1G8pw==", + "license": "MIT", "dependencies": { "is-plain-obj": "^4.0.0" }, @@ -14820,6 +14537,7 @@ "version": "4.1.0", "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz", "integrity": "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==", + "license": "MIT", "engines": { "node": ">=12" }, @@ -14831,13 +14549,15 @@ "version": "1.1.3", "resolved": "https://registry.npmjs.org/sort-object-keys/-/sort-object-keys-1.1.3.tgz", "integrity": "sha512-855pvK+VkU7PaKYPc+Jjnmt4EzejQHyhhF33q31qG8x7maDzkeFhAAThdCYay11CISO+qAMwjOBP+fPZe0IPyg==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/sort-package-json": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/sort-package-json/-/sort-package-json-2.10.0.tgz", - "integrity": "sha512-MYecfvObMwJjjJskhxYfuOADkXp1ZMMnCFC8yhp+9HDsk7HhR336hd7eiBs96lTXfiqmUNI+WQCeCMRBhl251g==", + "version": "2.10.1", + "resolved": "https://registry.npmjs.org/sort-package-json/-/sort-package-json-2.10.1.tgz", + "integrity": "sha512-d76wfhgUuGypKqY72Unm5LFnMpACbdxXsLPcL27pOsSrmVqH3PztFp1uq+Z22suk15h7vXmTesuh2aEjdCqb5w==", "dev": true, + "license": "MIT", "dependencies": { "detect-indent": "^7.0.1", "detect-newline": "^4.0.0", @@ -14857,6 +14577,7 @@ "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-7.0.1.tgz", "integrity": "sha512-Mc7QhQ8s+cLrnUfU/Ji94vG/r8M26m8f++vyres4ZoojaRDpZ1eSIh/EpzLNwlWuvzSZ3UbDFspjFvTDXe6e/g==", "dev": true, + "license": "MIT", "engines": { "node": ">=12.20" } @@ -14866,6 +14587,7 @@ "resolved": "https://registry.npmjs.org/globby/-/globby-13.2.2.tgz", "integrity": "sha512-Y1zNGV+pzQdh7H39l9zgB4PJqjRNqydvdYCDG4HFXM4XuvSaQQlEc91IU1yALL8gUTDomgBAfz3XJdmUS+oo0w==", "dev": true, + "license": "MIT", "dependencies": { "dir-glob": "^3.0.1", "fast-glob": "^3.3.0", @@ -14885,6 +14607,7 @@ "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz", "integrity": "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==", "dev": true, + "license": "MIT", "engines": { "node": ">=12" }, @@ -14897,6 +14620,7 @@ "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", "dev": true, + "license": "MIT", "engines": { "node": ">=12" }, @@ -14908,6 +14632,7 @@ "version": "0.7.4", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", + "license": "BSD-3-Clause", "engines": { "node": ">= 8" } @@ -14916,6 +14641,7 @@ "version": "1.2.0", "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.0.tgz", "integrity": "sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==", + "license": "BSD-3-Clause", "engines": { "node": ">=0.10.0" } @@ -14925,6 +14651,7 @@ "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", "dev": true, + "license": "MIT", "dependencies": { "buffer-from": "^1.0.0", "source-map": "^0.6.0" @@ -14935,6 +14662,7 @@ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "dev": true, + "license": "BSD-3-Clause", "engines": { "node": ">=0.10.0" } @@ -14943,6 +14671,7 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/space-separated-tokens/-/space-separated-tokens-2.0.2.tgz", "integrity": "sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==", + "license": "MIT", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" @@ -14952,6 +14681,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/spawndamnit/-/spawndamnit-2.0.0.tgz", "integrity": "sha512-j4JKEcncSjFlqIwU5L/rp2N5SIPsdxaRsIv678+TZxZ0SRDJTm8JrxJMjE/XuiEZNEir3S8l0Fa3Ke339WI4qA==", + "license": "MIT", "dependencies": { "cross-spawn": "^5.1.0", "signal-exit": "^3.0.2" @@ -14961,6 +14691,7 @@ "version": "5.1.0", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", "integrity": "sha512-pTgQJ5KC0d2hcY8eyL1IzlBPYjTkyH72XRZPnLyKus2mBfNjQs3klqbJU2VILqZryAZUt9JOb3h/mWMy23/f5A==", + "license": "MIT", "dependencies": { "lru-cache": "^4.0.1", "shebang-command": "^1.2.0", @@ -14971,6 +14702,7 @@ "version": "4.1.5", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "license": "ISC", "dependencies": { "pseudomap": "^1.0.2", "yallist": "^2.1.2" @@ -14980,6 +14712,7 @@ "version": "1.2.0", "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", "integrity": "sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==", + "license": "MIT", "dependencies": { "shebang-regex": "^1.0.0" }, @@ -14991,6 +14724,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", "integrity": "sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==", + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -14998,12 +14732,14 @@ "node_modules/spawndamnit/node_modules/signal-exit": { "version": "3.0.7", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "license": "ISC" }, "node_modules/spawndamnit/node_modules/which": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "license": "ISC", "dependencies": { "isexe": "^2.0.0" }, @@ -15014,13 +14750,15 @@ "node_modules/spawndamnit/node_modules/yallist": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==" + "integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==", + "license": "ISC" }, "node_modules/spdx-correct": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.2.0.tgz", "integrity": "sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==", "dev": true, + "license": "Apache-2.0", "dependencies": { "spdx-expression-parse": "^3.0.0", "spdx-license-ids": "^3.0.0" @@ -15030,28 +14768,32 @@ "version": "2.5.0", "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.5.0.tgz", "integrity": "sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w==", - "dev": true + "dev": true, + "license": "CC-BY-3.0" }, "node_modules/spdx-expression-parse": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", "dev": true, + "license": "MIT", "dependencies": { "spdx-exceptions": "^2.1.0", "spdx-license-ids": "^3.0.0" } }, "node_modules/spdx-license-ids": { - "version": "3.0.18", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.18.tgz", - "integrity": "sha512-xxRs31BqRYHwiMzudOrpSiHtZ8i/GeionCBDSilhYRj+9gIcI8wCZTlXZKu9vZIVqViP3dcp9qE5G6AlIaD+TQ==", - "dev": true + "version": "3.0.20", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.20.tgz", + "integrity": "sha512-jg25NiDV/1fLtSgEgyvVyDunvaNHbuwF9lfNV17gSmPFAlYzdfNBlLtLzXTevwkPj7DhGbmN9VnmJIgLnhvaBw==", + "dev": true, + "license": "CC0-1.0" }, "node_modules/split2": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/split2/-/split2-4.2.0.tgz", "integrity": "sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg==", + "license": "ISC", "engines": { "node": ">= 10.x" } @@ -15059,7 +14801,21 @@ "node_modules/sprintf-js": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==" + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", + "license": "BSD-3-Clause" + }, + "node_modules/stop-iteration-iterator": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.0.0.tgz", + "integrity": "sha512-iCGQj+0l0HOdZ2AEeBADlsRC+vsnDsZsbdSiH1yNSjcfKM7fdpCMfqAL/dwF5BLiw/XhRft/Wax6zQbhq2BcjQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "internal-slot": "^1.0.4" + }, + "engines": { + "node": ">= 0.4" + } }, "node_modules/streamsearch": { "version": "1.1.0", @@ -15073,6 +14829,7 @@ "version": "1.3.0", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "license": "MIT", "dependencies": { "safe-buffer": "~5.2.0" } @@ -15082,6 +14839,7 @@ "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", "dev": true, + "license": "MIT", "dependencies": { "eastasianwidth": "^0.2.0", "emoji-regex": "^9.2.2", @@ -15100,6 +14858,7 @@ "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", "dev": true, + "license": "MIT", "dependencies": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", @@ -15113,13 +14872,15 @@ "version": "8.0.0", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/string-width/node_modules/ansi-regex": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", "dev": true, + "license": "MIT", "engines": { "node": ">=12" }, @@ -15132,6 +14893,7 @@ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", "dev": true, + "license": "MIT", "dependencies": { "ansi-regex": "^6.0.1" }, @@ -15142,11 +14904,23 @@ "url": "https://github.com/chalk/strip-ansi?sponsor=1" } }, + "node_modules/string.prototype.includes": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/string.prototype.includes/-/string.prototype.includes-2.0.0.tgz", + "integrity": "sha512-E34CkBgyeqNDcrbU76cDjL5JLcVrtSdYq0MEh/B10r17pRP4ciHLwTgnuLV8Ay6cgEMLkcBkFCKyFZ43YldYzg==", + "dev": true, + "license": "MIT", + "dependencies": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.5" + } + }, "node_modules/string.prototype.matchall": { "version": "4.0.11", "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.11.tgz", "integrity": "sha512-NUdh0aDavY2og7IbBPenWqR9exH+E26Sv8e0/eTe1tltDGZL+GtBkDAnnyBtmekfK6/Dq3MkcGtzXFEd1LQrtg==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.7", "define-properties": "^1.2.1", @@ -15168,11 +14942,23 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/string.prototype.repeat": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/string.prototype.repeat/-/string.prototype.repeat-1.0.0.tgz", + "integrity": "sha512-0u/TldDbKD8bFCQ/4f5+mNRrXwZ8hg2w7ZR8wa16e8z9XpePWl3eGEcUD0OXpEH/VJH/2G3gjUtR3ZOiBe2S/w==", + "dev": true, + "license": "MIT", + "dependencies": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.5" + } + }, "node_modules/string.prototype.trim": { "version": "1.2.9", "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.9.tgz", "integrity": "sha512-klHuCNxiMZ8MlsOihJhJEBJAiMVqU3Z2nEXWfWnIqjN0gEFS9J9+IxKozWWtQGcgoa1WUZzLjKPTr4ZHNFTFxw==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.7", "define-properties": "^1.2.1", @@ -15191,6 +14977,7 @@ "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.8.tgz", "integrity": "sha512-p73uL5VCHCO2BZZ6krwwQE3kCzM7NKmis8S//xEC6fQonchbum4eP6kR4DLEjQFO3Wnj3Fuo8NM0kOSjVdHjZQ==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.7", "define-properties": "^1.2.1", @@ -15205,6 +14992,7 @@ "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz", "integrity": "sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.7", "define-properties": "^1.2.1", @@ -15221,6 +15009,7 @@ "version": "4.0.4", "resolved": "https://registry.npmjs.org/stringify-entities/-/stringify-entities-4.0.4.tgz", "integrity": "sha512-IwfBptatlO+QCJUo19AqvrPNqlVMpW9YEL2LIVY+Rpv2qsjCGxaDLNRgeGsQWJhfItebuJhsGSLjaBbNSQ+ieg==", + "license": "MIT", "dependencies": { "character-entities-html4": "^2.0.0", "character-entities-legacy": "^3.0.0" @@ -15234,6 +15023,7 @@ "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "license": "MIT", "dependencies": { "ansi-regex": "^5.0.1" }, @@ -15247,6 +15037,7 @@ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "dev": true, + "license": "MIT", "dependencies": { "ansi-regex": "^5.0.1" }, @@ -15258,6 +15049,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", + "license": "MIT", "engines": { "node": ">=4" } @@ -15266,6 +15058,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/strip-bom-string/-/strip-bom-string-1.0.0.tgz", "integrity": "sha512-uCC2VHvQRYu+lMh4My/sFNmF2klFymLX1wHJeXnbEJERpV/ZsVuonzerjfrGpIGF7LBVa1O7i9kjiWvJiFck8g==", + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -15274,6 +15067,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", "integrity": "sha512-7FCwGGmx8mD5xQd3RPUvnSpUXHM3BWuzjtpD4TXsfcZ9EL4azvVVUscFYwD9nx8Kh+uCBC00XBtAykoMHwTh8Q==", + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -15283,6 +15077,7 @@ "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", "dev": true, + "license": "MIT", "engines": { "node": ">=6" } @@ -15292,6 +15087,7 @@ "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz", "integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==", "dev": true, + "license": "MIT", "dependencies": { "min-indent": "^1.0.0" }, @@ -15304,6 +15100,7 @@ "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" }, @@ -15315,6 +15112,7 @@ "version": "0.4.4", "resolved": "https://registry.npmjs.org/style-to-object/-/style-to-object-0.4.4.tgz", "integrity": "sha512-HYNoHZa2GorYNyqiCaBgsxvcJIn7OHq6inEga+E6Ke3m5JkoqpQbnFssk4jwe+K7AhGa2fcha4wSOf1Kn01dMg==", + "license": "MIT", "dependencies": { "inline-style-parser": "0.1.1" } @@ -15323,6 +15121,7 @@ "version": "5.1.1", "resolved": "https://registry.npmjs.org/styled-jsx/-/styled-jsx-5.1.1.tgz", "integrity": "sha512-pW7uC1l4mBZ8ugbiZrcIsiIvVx1UmTfw7UkC3Um2tmfUq9Bhk8IiyEIPl6F8agHgjzku6j0xQEZbfA5uSgSaCw==", + "license": "MIT", "dependencies": { "client-only": "0.0.1" }, @@ -15342,15 +15141,17 @@ } }, "node_modules/stylis": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.3.2.tgz", - "integrity": "sha512-bhtUjWd/z6ltJiQwg0dUfxEJ+W+jdqQd8TbWLWyeIJHlnsqmGLRFFd8e5mA0AZi/zx90smXRlN66YMTcaSFifg==" + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.3.4.tgz", + "integrity": "sha512-osIBl6BGUmSfDkyH2mB7EFvCJntXDrLhKjHTRj/rK6xLH0yuPrHULDRQzKokSOD4VoorhtKpfcfW1GAntu8now==", + "license": "MIT" }, "node_modules/sucrase": { "version": "3.35.0", "resolved": "https://registry.npmjs.org/sucrase/-/sucrase-3.35.0.tgz", "integrity": "sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==", "dev": true, + "license": "MIT", "dependencies": { "@jridgewell/gen-mapping": "^0.3.2", "commander": "^4.0.0", @@ -15368,11 +15169,22 @@ "node": ">=16 || 14 >=14.17" } }, + "node_modules/sucrase/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, "node_modules/sucrase/node_modules/commander": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", "dev": true, + "license": "MIT", "engines": { "node": ">= 6" } @@ -15382,6 +15194,7 @@ "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz", "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==", "dev": true, + "license": "ISC", "dependencies": { "foreground-child": "^3.1.0", "jackspeak": "^3.1.2", @@ -15402,6 +15215,7 @@ "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.3.tgz", "integrity": "sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==", "dev": true, + "license": "BlueOak-1.0.0", "dependencies": { "@isaacs/cliui": "^8.0.2" }, @@ -15412,10 +15226,44 @@ "@pkgjs/parseargs": "^0.11.0" } }, + "node_modules/sucrase/node_modules/minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/sucrase/node_modules/path-scurry": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz", + "integrity": "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==", + "dev": true, + "license": "BlueOak-1.0.0", + "dependencies": { + "lru-cache": "^10.2.0", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" + }, + "engines": { + "node": ">=16 || 14 >=14.18" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/supports-color": { "version": "5.5.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "license": "MIT", "dependencies": { "has-flag": "^3.0.0" }, @@ -15428,6 +15276,7 @@ "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", "dev": true, + "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -15436,10 +15285,11 @@ } }, "node_modules/synckit": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.9.0.tgz", - "integrity": "sha512-7RnqIMq572L8PeEzKeBINYEJDDxpcH8JEgLwUqBd3TkofhFRbkq4QLR0u+36avGAhCRbk2nnmjcW9SE531hPDg==", + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.9.1.tgz", + "integrity": "sha512-7gr8p9TQP6RAHusBOSLs46F4564ZrjV8xFmw5zCmgmhGUcw2hxsShhJ6CEiHQMgPDwAQ1fWHPM0ypc4RMAig4A==", "dev": true, + "license": "MIT", "dependencies": { "@pkgr/core": "^0.1.0", "tslib": "^2.6.2" @@ -15452,10 +15302,11 @@ } }, "node_modules/systeminformation": { - "version": "5.22.11", - "resolved": "https://registry.npmjs.org/systeminformation/-/systeminformation-5.22.11.tgz", - "integrity": "sha512-aLws5yi4KCHTb0BVvbodQY5bY8eW4asMRDTxTW46hqw9lGjACX6TlLdJrkdoHYRB0qs+MekqEq1zG7WDnWE8Ug==", + "version": "5.23.5", + "resolved": "https://registry.npmjs.org/systeminformation/-/systeminformation-5.23.5.tgz", + "integrity": "sha512-PEpJwhRYxZgBCAlWZhWIgfMTjXLqfcaZ1pJsJn9snWNfBW/Z1YQg1mbIUSWrEV3ErAHF7l/OoVLQeaZDlPzkpA==", "dev": true, + "license": "MIT", "optional": true, "os": [ "darwin", @@ -15483,6 +15334,7 @@ "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", "dev": true, + "license": "MIT", "engines": { "node": ">=6" } @@ -15491,6 +15343,7 @@ "version": "2.2.1", "resolved": "https://registry.npmjs.org/term-size/-/term-size-2.2.1.tgz", "integrity": "sha512-wK0Ri4fOGjv/XPy8SBHZChl8CM7uMc5VML7SqiQ0zG7+J5Vr+RMQDoHa2CNT6KHUnTGIXH34UDMkPzAUyapBZg==", + "license": "MIT", "engines": { "node": ">=8" }, @@ -15502,13 +15355,15 @@ "version": "0.2.0", "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/thenify": { "version": "3.3.1", "resolved": "https://registry.npmjs.org/thenify/-/thenify-3.3.1.tgz", "integrity": "sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==", "dev": true, + "license": "MIT", "dependencies": { "any-promise": "^1.0.0" } @@ -15518,6 +15373,7 @@ "resolved": "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz", "integrity": "sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==", "dev": true, + "license": "MIT", "dependencies": { "thenify": ">= 3.1.0 < 4" }, @@ -15529,6 +15385,7 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/thread-stream/-/thread-stream-3.1.0.tgz", "integrity": "sha512-OqyPZ9u96VohAyMfJykzmivOrY2wfMSf3C5TtFJVgN+Hm6aj+voFhlK+kZEIv2FBh1X6Xp3DlnCOfEQ3B2J86A==", + "license": "MIT", "dependencies": { "real-require": "^0.2.0" } @@ -15537,6 +15394,7 @@ "version": "3.5.3", "resolved": "https://registry.npmjs.org/title/-/title-3.5.3.tgz", "integrity": "sha512-20JyowYglSEeCvZv3EZ0nZ046vLarO37prvV0mbtQV7C8DJPGgN967r8SJkqd3XK3K3lD3/Iyfp3avjfil8Q2Q==", + "license": "MIT", "dependencies": { "arg": "1.0.0", "chalk": "2.3.0", @@ -15551,6 +15409,7 @@ "version": "2.3.0", "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.3.0.tgz", "integrity": "sha512-Az5zJR2CBujap2rqXGaJKaPHyJ0IrUimvYNX+ncCy8PJP4ltOGTrHUIo097ZaL2zMeKYpiCdqDvS6zdrTFok3Q==", + "license": "MIT", "dependencies": { "ansi-styles": "^3.1.0", "escape-string-regexp": "^1.0.5", @@ -15560,18 +15419,11 @@ "node": ">=4" } }, - "node_modules/title/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "engines": { - "node": ">=0.8.0" - } - }, "node_modules/title/node_modules/has-flag": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz", "integrity": "sha512-P+1n3MnwjR/Epg9BBo1KT8qbye2g2Ou4sFumihwt6I4tsUX7jnLcX4BTOSKg/B1ZrIYMN9FcEnG4x5a7NB8Eng==", + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -15580,6 +15432,7 @@ "version": "4.5.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-4.5.0.tgz", "integrity": "sha512-ycQR/UbvI9xIlEdQT1TQqwoXtEldExbCEAJgRo5YXlmSKjv6ThHnP9/vwGa1gr19Gfw+LkFd7KqYMhzrRC5JYw==", + "license": "MIT", "dependencies": { "has-flag": "^2.0.0" }, @@ -15591,6 +15444,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/titleize/-/titleize-1.0.0.tgz", "integrity": "sha512-TARUb7z1pGvlLxgPk++7wJ6aycXF3GJ0sNSBTAsTuJrQG5QuZlkUQP+zl+nbjAh4gMX9yDw9ZYklMd7vAfJKEw==", + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -15599,6 +15453,7 @@ "version": "0.0.33", "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "license": "MIT", "dependencies": { "os-tmpdir": "~1.0.2" }, @@ -15611,6 +15466,7 @@ "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", "dev": true, + "license": "MIT", "engines": { "node": ">=4" } @@ -15619,6 +15475,7 @@ "version": "5.0.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "license": "MIT", "dependencies": { "is-number": "^7.0.0" }, @@ -15630,6 +15487,7 @@ "version": "3.7.0", "resolved": "https://registry.npmjs.org/toad-cache/-/toad-cache-3.7.0.tgz", "integrity": "sha512-/m8M+2BJUpoJdgAHoG+baCwBT+tf2VraSfkBgl0Y00qIWt41DJ8R5B8nsEw0I58YwF5IZH6z24/2TobDKnqSWw==", + "license": "MIT", "engines": { "node": ">=12" } @@ -15638,6 +15496,7 @@ "version": "0.0.3", "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", + "license": "MIT", "peer": true }, "node_modules/tree-kill": { @@ -15645,6 +15504,7 @@ "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz", "integrity": "sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==", "dev": true, + "license": "MIT", "bin": { "tree-kill": "cli.js" } @@ -15653,6 +15513,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/trim-lines/-/trim-lines-3.0.1.tgz", "integrity": "sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg==", + "license": "MIT", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" @@ -15662,6 +15523,7 @@ "version": "2.2.0", "resolved": "https://registry.npmjs.org/trough/-/trough-2.2.0.tgz", "integrity": "sha512-tmMpK00BjZiUyVyvrBK7knerNgmgvcV/KLVyuma/SC+TQN167GrMRciANTz09+k3zW8L8t60jWO1GpfkZdjTaw==", + "license": "MIT", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" @@ -15672,6 +15534,7 @@ "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.3.0.tgz", "integrity": "sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ==", "dev": true, + "license": "MIT", "engines": { "node": ">=16" }, @@ -15683,6 +15546,7 @@ "version": "2.2.0", "resolved": "https://registry.npmjs.org/ts-dedent/-/ts-dedent-2.2.0.tgz", "integrity": "sha512-q5W7tVM71e2xjHZTlgfTDoPF/SmqKG5hddq9SzR49CH2hayqRKJtQ4mtRlSxKaJlR/+9rEM+mnBHf7I2/BQcpQ==", + "license": "MIT", "engines": { "node": ">=6.10" } @@ -15691,13 +15555,15 @@ "version": "0.1.13", "resolved": "https://registry.npmjs.org/ts-interface-checker/-/ts-interface-checker-0.1.13.tgz", "integrity": "sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==", - "dev": true + "dev": true, + "license": "Apache-2.0" }, "node_modules/tsconfig-paths": { "version": "3.15.0", "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.15.0.tgz", "integrity": "sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==", "dev": true, + "license": "MIT", "dependencies": { "@types/json5": "^0.0.29", "json5": "^1.0.2", @@ -15710,6 +15576,7 @@ "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", "dev": true, + "license": "MIT", "dependencies": { "minimist": "^1.2.0" }, @@ -15718,15 +15585,17 @@ } }, "node_modules/tslib": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.3.tgz", - "integrity": "sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ==" + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.7.0.tgz", + "integrity": "sha512-gLXCKdN1/j47AiHiOkJN69hJmcbGTHI0ImLmbYLHykhgeN0jVGola9yVjFgzCUklsZQMW55o+dW7IXv3RCXDzA==", + "license": "0BSD" }, "node_modules/tsup": { "version": "8.2.4", "resolved": "https://registry.npmjs.org/tsup/-/tsup-8.2.4.tgz", "integrity": "sha512-akpCPePnBnC/CXgRrcy72ZSntgIEUa1jN0oJbbvpALWKNOz1B7aM+UVDWGRGIO/T/PZugAESWDJUAb5FD48o8Q==", "dev": true, + "license": "MIT", "dependencies": { "bundle-require": "^5.0.0", "cac": "^6.7.14", @@ -15778,6 +15647,7 @@ "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", "dev": true, + "license": "MIT", "dependencies": { "cross-spawn": "^7.0.3", "get-stream": "^6.0.0", @@ -15801,6 +15671,7 @@ "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", "dev": true, + "license": "MIT", "engines": { "node": ">=10" }, @@ -15813,6 +15684,7 @@ "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" }, @@ -15825,6 +15697,7 @@ "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", "dev": true, + "license": "MIT", "dependencies": { "path-key": "^3.0.0" }, @@ -15836,13 +15709,15 @@ "version": "3.0.7", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/tsup/node_modules/source-map": { "version": "0.8.0-beta.0", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.8.0-beta.0.tgz", "integrity": "sha512-2ymg6oRBpebeZi9UUNsgQ89bhx01TcTkmNTGnNO88imTmbSgy4nfujrgVEFKWpMTEGA11EDkTt7mqObTPdigIA==", "dev": true, + "license": "BSD-3-Clause", "dependencies": { "whatwg-url": "^7.0.0" }, @@ -15855,6 +15730,7 @@ "resolved": "https://registry.npmjs.org/tr46/-/tr46-1.0.1.tgz", "integrity": "sha512-dTpowEjclQ7Kgx5SdBkqRzVhERQXov8/l9Ft9dVM9fmg0W0KQSVaXX9T4i6twCPNtYiZM53lpSSUAwJbFPOHxA==", "dev": true, + "license": "MIT", "dependencies": { "punycode": "^2.1.0" } @@ -15863,13 +15739,15 @@ "version": "4.0.2", "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz", "integrity": "sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==", - "dev": true + "dev": true, + "license": "BSD-2-Clause" }, "node_modules/tsup/node_modules/whatwg-url": { "version": "7.1.0", "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-7.1.0.tgz", "integrity": "sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg==", "dev": true, + "license": "MIT", "dependencies": { "lodash.sortby": "^4.7.0", "tr46": "^1.0.1", @@ -15881,6 +15759,7 @@ "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", "dev": true, + "license": "MIT", "dependencies": { "tslib": "^1.8.1" }, @@ -15895,13 +15774,15 @@ "version": "1.14.1", "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true + "dev": true, + "license": "0BSD" }, "node_modules/tsx": { "version": "4.19.0", "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.19.0.tgz", "integrity": "sha512-bV30kM7bsLZKZIOCHeMNVMJ32/LuJzLVajkQI/qf92J2Qr08ueLQvW00PUZGiuLPP760UINwupgUj8qrSCPUKg==", "dev": true, + "license": "MIT", "dependencies": { "esbuild": "~0.23.0", "get-tsconfig": "^4.7.5" @@ -15922,6 +15803,7 @@ "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", "dev": true, "hasInstallScript": true, + "license": "MIT", "optional": true, "os": [ "darwin" @@ -15935,6 +15817,7 @@ "resolved": "https://registry.npmjs.org/tunnel/-/tunnel-0.0.6.tgz", "integrity": "sha512-1h/Lnq9yajKY2PEbBadPXj3VxsDDu844OnaAo52UVmIzIvwwtBPIuNvkjuzBlTWpfJyUbG3ez0KSBibQkj4ojg==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.6.11 <=0.7.0 || >=0.7.3" } @@ -15944,6 +15827,7 @@ "resolved": "https://registry.npmjs.org/turbo/-/turbo-2.1.1.tgz", "integrity": "sha512-u9gUDkmR9dFS8b5kAYqIETK4OnzsS4l2ragJ0+soSMHh6VEeNHjTfSjk1tKxCqLyziCrPogadxP680J+v6yGHw==", "dev": true, + "license": "MIT", "bin": { "turbo": "bin/turbo" }, @@ -15964,6 +15848,7 @@ "x64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "darwin" @@ -15977,6 +15862,7 @@ "arm64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "darwin" @@ -15990,6 +15876,7 @@ "x64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "linux" @@ -16003,6 +15890,7 @@ "arm64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "linux" @@ -16016,6 +15904,7 @@ "x64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "win32" @@ -16029,6 +15918,7 @@ "arm64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "win32" @@ -16039,6 +15929,16 @@ "resolved": "https://registry.npmjs.org/tv4/-/tv4-1.3.0.tgz", "integrity": "sha512-afizzfpJgvPr+eDkREK4MxJ/+r8nEEHcmitwgnPUqpaP+FpwQyadnxNoSACbgc/b1LsZYtODGoPiFxQrgJgjvw==", "dev": true, + "license": [ + { + "type": "Public Domain", + "url": "http://geraintluff.github.io/tv4/LICENSE.txt" + }, + { + "type": "MIT", + "url": "http://jsonary.com/LICENSE.txt" + } + ], "engines": { "node": ">= 0.8.0" } @@ -16048,6 +15948,7 @@ "resolved": "https://registry.npmjs.org/tx2/-/tx2-1.0.5.tgz", "integrity": "sha512-sJ24w0y03Md/bxzK4FU8J8JveYYUbSs2FViLJ2D/8bytSiyPRbuE3DyL/9UKYXTZlV3yXq0L8GLlhobTnekCVg==", "dev": true, + "license": "MIT", "optional": true, "dependencies": { "json-stringify-safe": "^5.0.1" @@ -16058,6 +15959,7 @@ "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", "dev": true, + "license": "MIT", "dependencies": { "prelude-ls": "^1.2.1" }, @@ -16070,6 +15972,7 @@ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", "dev": true, + "license": "(MIT OR CC0-1.0)", "engines": { "node": ">=10" }, @@ -16082,6 +15985,7 @@ "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.2.tgz", "integrity": "sha512-gEymJYKZtKXzzBzM4jqa9w6Q1Jjm7x2d+sh19AdsD4wqnMPDYyvwpsIc2Q/835kHuo3BEQ7CjelGhfTsoBb2MQ==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.7", "es-errors": "^1.3.0", @@ -16096,6 +16000,7 @@ "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.1.tgz", "integrity": "sha512-3iMJ9q0ao7WE9tWcaYKIptkNBuOIcZCCT0d4MRvuuH88fEoEH62IuQe0OtraD3ebQEoTRk8XCBoknUNc1Y67pw==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.7", "for-each": "^0.3.3", @@ -16115,6 +16020,7 @@ "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.2.tgz", "integrity": "sha512-Ous0vodHa56FviZucS2E63zkgtgrACj7omjwd/8lTEMEPFFyjfixMZ1ZXenpgCFBBt4EC1J2XsyVS2gkG0eTFA==", "dev": true, + "license": "MIT", "dependencies": { "available-typed-arrays": "^1.0.7", "call-bind": "^1.0.7", @@ -16135,6 +16041,7 @@ "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.6.tgz", "integrity": "sha512-/OxDN6OtAk5KBpGb28T+HZc2M+ADtvRxXrKKbUwtsLgdoxgX13hyy7ek6bFRl5+aBs2yZzB0c4CnQfAtVypW/g==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.7", "for-each": "^0.3.3", @@ -16155,6 +16062,7 @@ "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.5.4.tgz", "integrity": "sha512-Mtq29sKDAEYP7aljRgtPOpTvOfbwRWlS6dPRzwjdE+C0R4brX/GUyhHSecbHMFLNBLcJIPt9nl9yG5TZ1weH+Q==", "dev": true, + "license": "Apache-2.0", "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" @@ -16168,6 +16076,7 @@ "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.2", "has-bigints": "^1.0.2", @@ -16183,6 +16092,7 @@ "resolved": "https://registry.npmjs.org/undici/-/undici-5.28.4.tgz", "integrity": "sha512-72RFADWFqKmUb2hmmvNODKL3p9hcB6Gt2DOQMis1SEBaV6a4MH8soBvzg+95CYhCKPFedut2JY9bMfrDl9D23g==", "dev": true, + "license": "MIT", "dependencies": { "@fastify/busboy": "^2.0.0" }, @@ -16191,15 +16101,17 @@ } }, "node_modules/undici-types": { - "version": "5.26.5", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", - "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==", - "peer": true + "version": "6.19.8", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.19.8.tgz", + "integrity": "sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==", + "dev": true, + "license": "MIT" }, "node_modules/unified": { "version": "10.1.2", "resolved": "https://registry.npmjs.org/unified/-/unified-10.1.2.tgz", "integrity": "sha512-pUSWAi/RAnVy1Pif2kAoeWNBa3JVrx0MId2LASj8G+7AiHWoKZNTomq6LG326T68U7/e263X6fTdcXIy7XnF7Q==", + "license": "MIT", "dependencies": { "@types/unist": "^2.0.0", "bail": "^2.0.0", @@ -16218,6 +16130,7 @@ "version": "4.1.0", "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz", "integrity": "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==", + "license": "MIT", "engines": { "node": ">=12" }, @@ -16229,6 +16142,7 @@ "version": "5.0.0", "resolved": "https://registry.npmjs.org/unist-util-find-after/-/unist-util-find-after-5.0.0.tgz", "integrity": "sha512-amQa0Ep2m6hE2g72AugUItjbuM8X8cGQnFoHk0pGfrFeT9GZhzN5SW8nRsiGKK7Aif4CrACPENkA6P/Lw6fHGQ==", + "license": "MIT", "dependencies": { "@types/unist": "^3.0.0", "unist-util-is": "^6.0.0" @@ -16239,14 +16153,16 @@ } }, "node_modules/unist-util-find-after/node_modules/@types/unist": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.2.tgz", - "integrity": "sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==" + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", + "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==", + "license": "MIT" }, "node_modules/unist-util-find-after/node_modules/unist-util-is": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-6.0.0.tgz", "integrity": "sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==", + "license": "MIT", "dependencies": { "@types/unist": "^3.0.0" }, @@ -16259,6 +16175,7 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/unist-util-generated/-/unist-util-generated-2.0.1.tgz", "integrity": "sha512-qF72kLmPxAw0oN2fwpWIqbXAVyEqUzDHMsbtPvOudIlUzXYFIeQIuxXQCRCFh22B7cixvU0MG7m3MW8FTq/S+A==", + "license": "MIT", "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" @@ -16268,6 +16185,7 @@ "version": "5.2.1", "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-5.2.1.tgz", "integrity": "sha512-u9njyyfEh43npf1M+yGKDGVPbY/JWEemg5nH05ncKPfi+kBbKBJoTdsogMu33uhytuLlv9y0O7GH7fEdwLdLQw==", + "license": "MIT", "dependencies": { "@types/unist": "^2.0.0" }, @@ -16280,6 +16198,7 @@ "version": "4.0.4", "resolved": "https://registry.npmjs.org/unist-util-position/-/unist-util-position-4.0.4.tgz", "integrity": "sha512-kUBE91efOWfIVBo8xzh/uZQ7p9ffYRtUbMRZBNFYwf0RK8koUMx6dGUfwylLOKmaT2cs4wSW96QoYUSXAyEtpg==", + "license": "MIT", "dependencies": { "@types/unist": "^2.0.0" }, @@ -16292,6 +16211,7 @@ "version": "1.1.2", "resolved": "https://registry.npmjs.org/unist-util-position-from-estree/-/unist-util-position-from-estree-1.1.2.tgz", "integrity": "sha512-poZa0eXpS+/XpoQwGwl79UUdea4ol2ZuCYguVaJS4qzIOMDzbqz8a3erUCOmubSZkaOuGamb3tX790iwOIROww==", + "license": "MIT", "dependencies": { "@types/unist": "^2.0.0" }, @@ -16304,6 +16224,7 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/unist-util-remove/-/unist-util-remove-4.0.0.tgz", "integrity": "sha512-b4gokeGId57UVRX/eVKej5gXqGlc9+trkORhFJpu9raqZkZhU0zm8Doi05+HaiBsMEIJowL+2WtQ5ItjsngPXg==", + "license": "MIT", "dependencies": { "@types/unist": "^3.0.0", "unist-util-is": "^6.0.0", @@ -16318,6 +16239,7 @@ "version": "5.0.0", "resolved": "https://registry.npmjs.org/unist-util-remove-position/-/unist-util-remove-position-5.0.0.tgz", "integrity": "sha512-Hp5Kh3wLxv0PHj9m2yZhhLt58KzPtEYKQQ4yxfYFEO7EvHwzyDYnduhHnY1mDxoqr7VUwVuHXk9RXKIiYS1N8Q==", + "license": "MIT", "dependencies": { "@types/unist": "^3.0.0", "unist-util-visit": "^5.0.0" @@ -16328,19 +16250,22 @@ } }, "node_modules/unist-util-remove-position/node_modules/@types/unist": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.2.tgz", - "integrity": "sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==" + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", + "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==", + "license": "MIT" }, "node_modules/unist-util-remove/node_modules/@types/unist": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.2.tgz", - "integrity": "sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==" + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", + "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==", + "license": "MIT" }, "node_modules/unist-util-remove/node_modules/unist-util-is": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-6.0.0.tgz", "integrity": "sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==", + "license": "MIT", "dependencies": { "@types/unist": "^3.0.0" }, @@ -16353,6 +16278,7 @@ "version": "3.0.3", "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-3.0.3.tgz", "integrity": "sha512-k5GzIBZ/QatR8N5X2y+drfpWG8IDBzdnVj6OInRNWm1oXrzydiaAT2OQiA8DPRRZyAKb9b6I2a6PxYklZD0gKg==", + "license": "MIT", "dependencies": { "@types/unist": "^2.0.0" }, @@ -16365,6 +16291,7 @@ "version": "5.0.0", "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-5.0.0.tgz", "integrity": "sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==", + "license": "MIT", "dependencies": { "@types/unist": "^3.0.0", "unist-util-is": "^6.0.0", @@ -16379,6 +16306,7 @@ "version": "6.0.1", "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-6.0.1.tgz", "integrity": "sha512-L/PqWzfTP9lzzEa6CKs0k2nARxTdZduw3zyh8d2NVBnsyvHjSX4TWse388YrrQKbvI8w20fGjGlhgT96WwKykw==", + "license": "MIT", "dependencies": { "@types/unist": "^3.0.0", "unist-util-is": "^6.0.0" @@ -16389,14 +16317,16 @@ } }, "node_modules/unist-util-visit-parents/node_modules/@types/unist": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.2.tgz", - "integrity": "sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==" + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", + "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==", + "license": "MIT" }, "node_modules/unist-util-visit-parents/node_modules/unist-util-is": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-6.0.0.tgz", "integrity": "sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==", + "license": "MIT", "dependencies": { "@types/unist": "^3.0.0" }, @@ -16406,14 +16336,16 @@ } }, "node_modules/unist-util-visit/node_modules/@types/unist": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.2.tgz", - "integrity": "sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==" + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", + "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==", + "license": "MIT" }, "node_modules/unist-util-visit/node_modules/unist-util-is": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-6.0.0.tgz", "integrity": "sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==", + "license": "MIT", "dependencies": { "@types/unist": "^3.0.0" }, @@ -16426,14 +16358,15 @@ "version": "0.1.2", "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", + "license": "MIT", "engines": { "node": ">= 4.0.0" } }, "node_modules/update-browserslist-db": { - "version": "1.0.16", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.16.tgz", - "integrity": "sha512-KVbTxlBYlckhF5wgfyZXTWnMn7MMZjMu9XG8bPlliUOP9ThaF4QnhP8qrjrH7DRzHfSk0oQv1wToW+iA5GajEQ==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.0.tgz", + "integrity": "sha512-EdRAaAyk2cUE1wOf2DkEhzxqOQvFOoRJFNS6NeyJ01Gp2beMRpBAINjM2iDXE3KCuKhwnvHIQCJm6ThL2Z+HzQ==", "dev": true, "funding": [ { @@ -16449,6 +16382,7 @@ "url": "https://github.com/sponsors/ai" } ], + "license": "MIT", "dependencies": { "escalade": "^3.1.2", "picocolors": "^1.0.1" @@ -16464,6 +16398,8 @@ "version": "4.4.1", "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "license": "BSD-2-Clause", "dependencies": { "punycode": "^2.1.0" } @@ -16473,6 +16409,7 @@ "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", "dev": true, + "license": "MIT", "bin": { "uuid": "dist/bin/uuid" } @@ -16481,6 +16418,7 @@ "version": "0.5.6", "resolved": "https://registry.npmjs.org/uvu/-/uvu-0.5.6.tgz", "integrity": "sha512-+g8ENReyr8YsOc6fv/NVJs2vFdHBnBNdfE49rshrTzDWOlUx4Gq7KOS2GD8eqhy2j+Ejq29+SbKH8yjkAqXqoA==", + "license": "MIT", "dependencies": { "dequal": "^2.0.0", "diff": "^5.0.0", @@ -16499,6 +16437,7 @@ "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", "dev": true, + "license": "Apache-2.0", "dependencies": { "spdx-correct": "^3.0.0", "spdx-expression-parse": "^3.0.0" @@ -16508,6 +16447,7 @@ "version": "5.3.7", "resolved": "https://registry.npmjs.org/vfile/-/vfile-5.3.7.tgz", "integrity": "sha512-r7qlzkgErKjobAmyNIkkSpizsFPYiUPuJb5pNW1RB4JcYVZhs4lIbVqk8XPk033CV/1z8ss5pkax8SuhGpcG8g==", + "license": "MIT", "dependencies": { "@types/unist": "^2.0.0", "is-buffer": "^2.0.0", @@ -16520,9 +16460,10 @@ } }, "node_modules/vfile-location": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/vfile-location/-/vfile-location-5.0.2.tgz", - "integrity": "sha512-NXPYyxyBSH7zB5U6+3uDdd6Nybz6o6/od9rk8bp9H8GR3L+cm/fC0uUTbqBmUTnMCUDslAGBOIKNfvvb+gGlDg==", + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/vfile-location/-/vfile-location-5.0.3.tgz", + "integrity": "sha512-5yXvWDEgqeiYiBe1lbxYF7UMAIm/IcopxMHrMQDq3nvKcjPKIhZklUKL+AE7J7uApI4kwe2snsK+eI6UTj9EHg==", + "license": "MIT", "dependencies": { "@types/unist": "^3.0.0", "vfile": "^6.0.0" @@ -16533,29 +16474,18 @@ } }, "node_modules/vfile-location/node_modules/@types/unist": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.2.tgz", - "integrity": "sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==" - }, - "node_modules/vfile-location/node_modules/unist-util-stringify-position": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-4.0.0.tgz", - "integrity": "sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==", - "dependencies": { - "@types/unist": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", + "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==", + "license": "MIT" }, "node_modules/vfile-location/node_modules/vfile": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.1.tgz", - "integrity": "sha512-1bYqc7pt6NIADBJ98UiG0Bn/CHIVOoZ/IyEkqIruLg0mE1BKzkOXY2D6CSqQIcKqgadppE5lrxgWXJmXd7zZJw==", + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.3.tgz", + "integrity": "sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==", + "license": "MIT", "dependencies": { "@types/unist": "^3.0.0", - "unist-util-stringify-position": "^4.0.0", "vfile-message": "^4.0.0" }, "funding": { @@ -16567,6 +16497,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/vfile-matter/-/vfile-matter-3.0.1.tgz", "integrity": "sha512-CAAIDwnh6ZdtrqAuxdElUqQRQDQgbbIrYtDYI8gCjXS1qQ+1XdLoK8FIZWxJwn0/I+BkSSZpar3SOgjemQz4fg==", + "license": "MIT", "dependencies": { "@types/js-yaml": "^4.0.0", "is-buffer": "^2.0.0", @@ -16580,12 +16511,14 @@ "node_modules/vfile-matter/node_modules/argparse": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==" + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "license": "Python-2.0" }, "node_modules/vfile-matter/node_modules/js-yaml": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "license": "MIT", "dependencies": { "argparse": "^2.0.1" }, @@ -16597,6 +16530,7 @@ "version": "4.0.2", "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-4.0.2.tgz", "integrity": "sha512-jRDZ1IMLttGj41KcZvlrYAaI3CfqpLpfpf+Mfig13viT6NKvRzWZ+lXz0Y5D60w6uJIBAOGq9mSHf0gktF0duw==", + "license": "MIT", "dependencies": { "@types/unist": "^3.0.0", "unist-util-stringify-position": "^4.0.0" @@ -16607,14 +16541,16 @@ } }, "node_modules/vfile-message/node_modules/@types/unist": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.2.tgz", - "integrity": "sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==" + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", + "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==", + "license": "MIT" }, "node_modules/vfile-message/node_modules/unist-util-stringify-position": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-4.0.0.tgz", "integrity": "sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==", + "license": "MIT", "dependencies": { "@types/unist": "^3.0.0" }, @@ -16627,6 +16563,7 @@ "version": "3.1.4", "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-3.1.4.tgz", "integrity": "sha512-fa0Z6P8HUrQN4BZaX05SIVXic+7kE3b05PWAtPuYP9QLHsLKYR7/AlLW3NtOrpXRLeawpDLMsVkmk5DG0NXgWw==", + "license": "MIT", "dependencies": { "@types/unist": "^2.0.0", "unist-util-stringify-position": "^3.0.0" @@ -16641,6 +16578,7 @@ "resolved": "https://registry.npmjs.org/vizion/-/vizion-2.2.1.tgz", "integrity": "sha512-sfAcO2yeSU0CSPFI/DmZp3FsFE9T+8913nv1xWBOyzODv13fwkn6Vl7HqxGpkr9F608M+8SuFId3s+BlZqfXww==", "dev": true, + "license": "Apache-2.0", "dependencies": { "async": "^2.6.3", "git-node-fs": "^1.0.0", @@ -16656,6 +16594,7 @@ "resolved": "https://registry.npmjs.org/async/-/async-2.6.4.tgz", "integrity": "sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==", "dev": true, + "license": "MIT", "dependencies": { "lodash": "^4.17.14" } @@ -16663,46 +16602,53 @@ "node_modules/vscode-oniguruma": { "version": "1.7.0", "resolved": "https://registry.npmjs.org/vscode-oniguruma/-/vscode-oniguruma-1.7.0.tgz", - "integrity": "sha512-L9WMGRfrjOhgHSdOYgCt/yRMsXzLDJSL7BPrOZt73gU0iWO4mpqzqQzOz5srxqTvMBaR0XZTSrVWo4j55Rc6cA==" + "integrity": "sha512-L9WMGRfrjOhgHSdOYgCt/yRMsXzLDJSL7BPrOZt73gU0iWO4mpqzqQzOz5srxqTvMBaR0XZTSrVWo4j55Rc6cA==", + "license": "MIT" }, "node_modules/vscode-textmate": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/vscode-textmate/-/vscode-textmate-8.0.0.tgz", - "integrity": "sha512-AFbieoL7a5LMqcnOF04ji+rpXadgOXnZsxQr//r83kLPr7biP7am3g9zbaZIaBGwBRWeSvoMD4mgPdX3e4NWBg==" + "integrity": "sha512-AFbieoL7a5LMqcnOF04ji+rpXadgOXnZsxQr//r83kLPr7biP7am3g9zbaZIaBGwBRWeSvoMD4mgPdX3e4NWBg==", + "license": "MIT" }, "node_modules/web-namespaces": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/web-namespaces/-/web-namespaces-2.0.1.tgz", "integrity": "sha512-bKr1DkiNa2krS7qxNtdrtHAmzuYGFQLiQ13TsorsdT6ULTkPLKuu5+GsFpDlg6JFjUTwX2DyhMPG2be8uPrqsQ==", + "license": "MIT", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" } }, "node_modules/web-streams-polyfill": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-3.3.3.tgz", - "integrity": "sha512-d2JWLCivmZYTSIoge9MsgFCZrt571BikcWGYkjC1khllbTeDlGqZ2D8vD8E/lJa8WGWbb7Plm8/XJYV7IJHZZw==", + "version": "4.0.0-beta.3", + "resolved": "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-4.0.0-beta.3.tgz", + "integrity": "sha512-QW95TCTaHmsYfHDybGMwO5IJIM93I/6vTRk+daHTWFPhwh+C8Cg7j7XyKrwrj8Ib6vYXe0ocYNrmzY4xAAN6ug==", + "license": "MIT", "peer": true, "engines": { - "node": ">= 8" + "node": ">= 14" } }, "node_modules/web-worker": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/web-worker/-/web-worker-1.3.0.tgz", - "integrity": "sha512-BSR9wyRsy/KOValMgd5kMyr3JzpdeoR9KVId8u5GVlTTAtNChlsE4yTxeY7zMdNSyOmoKBv8NH2qeRY9Tg+IaA==" + "integrity": "sha512-BSR9wyRsy/KOValMgd5kMyr3JzpdeoR9KVId8u5GVlTTAtNChlsE4yTxeY7zMdNSyOmoKBv8NH2qeRY9Tg+IaA==", + "license": "Apache-2.0" }, "node_modules/webidl-conversions": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", + "license": "BSD-2-Clause", "peer": true }, "node_modules/whatwg-url": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "license": "MIT", "peer": true, "dependencies": { "tr46": "~0.0.3", @@ -16714,6 +16660,7 @@ "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", "dev": true, + "license": "ISC", "dependencies": { "isexe": "^2.0.0" }, @@ -16729,6 +16676,7 @@ "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", "dev": true, + "license": "MIT", "dependencies": { "is-bigint": "^1.0.1", "is-boolean-object": "^1.1.0", @@ -16741,13 +16689,14 @@ } }, "node_modules/which-builtin-type": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/which-builtin-type/-/which-builtin-type-1.1.3.tgz", - "integrity": "sha512-YmjsSMDBYsM1CaFiayOVT06+KJeXf0o5M/CAd4o1lTadFAtacTUM49zoYxr/oroopFDfhvN6iEcBxUyc3gvKmw==", + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/which-builtin-type/-/which-builtin-type-1.1.4.tgz", + "integrity": "sha512-bppkmBSsHFmIMSl8BO9TbsyzsvGjVoppt8xUiGzwiu/bhDCGxnpOKCxgqj6GuyHE0mINMDecBFPlOm2hzY084w==", "dev": true, + "license": "MIT", "dependencies": { - "function.prototype.name": "^1.1.5", - "has-tostringtag": "^1.0.0", + "function.prototype.name": "^1.1.6", + "has-tostringtag": "^1.0.2", "is-async-function": "^2.0.0", "is-date-object": "^1.0.5", "is-finalizationregistry": "^1.0.2", @@ -16756,8 +16705,8 @@ "is-weakref": "^1.0.2", "isarray": "^2.0.5", "which-boxed-primitive": "^1.0.2", - "which-collection": "^1.0.1", - "which-typed-array": "^1.1.9" + "which-collection": "^1.0.2", + "which-typed-array": "^1.1.15" }, "engines": { "node": ">= 0.4" @@ -16771,6 +16720,7 @@ "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.2.tgz", "integrity": "sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==", "dev": true, + "license": "MIT", "dependencies": { "is-map": "^2.0.3", "is-set": "^2.0.3", @@ -16785,9 +16735,10 @@ } }, "node_modules/which-pm": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/which-pm/-/which-pm-2.0.0.tgz", - "integrity": "sha512-Lhs9Pmyph0p5n5Z3mVnN0yWcbQYUAD7rbQUiMsQxOJ3T57k7RFe35SUwWMf7dsbDZks1uOmw4AecB/JMDj3v/w==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/which-pm/-/which-pm-2.2.0.tgz", + "integrity": "sha512-MOiaDbA5ZZgUjkeMWM5EkJp4loW5ZRoa5bc3/aeMox/PJelMhE6t7S/mLuiY43DBupyxH+S0U1bTui9kWUlmsw==", + "license": "MIT", "dependencies": { "load-yaml-file": "^0.2.0", "path-exists": "^4.0.0" @@ -16801,6 +16752,7 @@ "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.15.tgz", "integrity": "sha512-oV0jmFtUky6CXfkqehVvBP/LSWJ2sy4vWMioiENyJLePrBO/yKyV9OyJySfAKosh+RYkIl5zJCNZ8/4JncrpdA==", "dev": true, + "license": "MIT", "dependencies": { "available-typed-arrays": "^1.0.7", "call-bind": "^1.0.7", @@ -16820,6 +16772,7 @@ "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -16829,6 +16782,7 @@ "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", "dev": true, + "license": "MIT", "dependencies": { "ansi-styles": "^6.1.0", "string-width": "^5.0.1", @@ -16847,6 +16801,7 @@ "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", "dev": true, + "license": "MIT", "dependencies": { "ansi-styles": "^4.0.0", "string-width": "^4.1.0", @@ -16864,6 +16819,7 @@ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, + "license": "MIT", "dependencies": { "color-convert": "^2.0.1" }, @@ -16879,6 +16835,7 @@ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, + "license": "MIT", "dependencies": { "color-name": "~1.1.4" }, @@ -16890,19 +16847,22 @@ "version": "1.1.4", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/wrap-ansi-cjs/node_modules/emoji-regex": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/wrap-ansi-cjs/node_modules/string-width": { "version": "4.2.3", "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", "dev": true, + "license": "MIT", "dependencies": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", @@ -16917,6 +16877,7 @@ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", "dev": true, + "license": "MIT", "engines": { "node": ">=12" }, @@ -16929,6 +16890,7 @@ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", "dev": true, + "license": "MIT", "engines": { "node": ">=12" }, @@ -16941,6 +16903,7 @@ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", "dev": true, + "license": "MIT", "dependencies": { "ansi-regex": "^6.0.1" }, @@ -16955,13 +16918,15 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/ws": { "version": "7.5.10", "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.10.tgz", "integrity": "sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ==", "dev": true, + "license": "MIT", "engines": { "node": ">=8.3.0" }, @@ -16981,12 +16946,14 @@ "node_modules/yallist": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "license": "ISC" }, "node_modules/yocto-queue": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "license": "MIT", "engines": { "node": ">=10" }, @@ -16998,6 +16965,7 @@ "version": "3.23.8", "resolved": "https://registry.npmjs.org/zod/-/zod-3.23.8.tgz", "integrity": "sha512-XBx9AXhXktjUqnepgTiE5flcKIYWi/rme0Eaj+5Y0lftuGBq+jyRu/md4WnuxqgP1ubdpNCsYEYPxrzVHD8d6g==", + "license": "MIT", "funding": { "url": "https://github.com/sponsors/colinhacks" } @@ -17006,6 +16974,7 @@ "version": "2.0.4", "resolved": "https://registry.npmjs.org/zwitch/-/zwitch-2.0.4.tgz", "integrity": "sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==", + "license": "MIT", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" @@ -17034,6 +17003,16 @@ "redis": ">=4.6" } }, + "packages/cache-handler/node_modules/@types/node": { + "version": "22.5.2", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.2.tgz", + "integrity": "sha512-acJsPTEqYqulZS/Yp/S3GgeE6GZ0qYODUR8aVr/DkhHQ8l9nd4j5x1/ZJy9/gHrRlFMqkO6i0I3E27Alu4jjPg==", + "dev": true, + "license": "MIT", + "dependencies": { + "undici-types": "~6.19.2" + } + }, "packages/diffscribe": { "version": "0.2.4", "license": "MIT", @@ -17052,6 +17031,16 @@ "openai": "^4.12.3" } }, + "packages/diffscribe/node_modules/@types/node": { + "version": "22.5.2", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.2.tgz", + "integrity": "sha512-acJsPTEqYqulZS/Yp/S3GgeE6GZ0qYODUR8aVr/DkhHQ8l9nd4j5x1/ZJy9/gHrRlFMqkO6i0I3E27Alu4jjPg==", + "dev": true, + "license": "MIT", + "dependencies": { + "undici-types": "~6.19.2" + } + }, "packages/json-replacer-reviver": { "name": "@neshca/json-replacer-reviver", "version": "1.1.3", @@ -17065,6 +17054,16 @@ "typescript": "5.5.4" } }, + "packages/json-replacer-reviver/node_modules/@types/node": { + "version": "22.5.2", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.2.tgz", + "integrity": "sha512-acJsPTEqYqulZS/Yp/S3GgeE6GZ0qYODUR8aVr/DkhHQ8l9nd4j5x1/ZJy9/gHrRlFMqkO6i0I3E27Alu4jjPg==", + "dev": true, + "license": "MIT", + "dependencies": { + "undici-types": "~6.19.2" + } + }, "packages/server": { "name": "@neshca/server", "version": "1.1.2", @@ -17086,6 +17085,16 @@ "tsx": "4.19.0", "typescript": "5.5.4" } + }, + "packages/server/node_modules/@types/node": { + "version": "22.5.2", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.2.tgz", + "integrity": "sha512-acJsPTEqYqulZS/Yp/S3GgeE6GZ0qYODUR8aVr/DkhHQ8l9nd4j5x1/ZJy9/gHrRlFMqkO6i0I3E27Alu4jjPg==", + "dev": true, + "license": "MIT", + "dependencies": { + "undici-types": "~6.19.2" + } } } } From 93e70ed705acce985c9c64565805320fbb1a73d2 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 4 Sep 2024 23:54:02 +0300 Subject: [PATCH 367/458] Bump @types/node from 22.5.2 to 22.5.3 in the definitely-typed group (#735) Bumps the definitely-typed group with 1 update: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node). Updates `@types/node` from 22.5.2 to 22.5.3 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) --- updated-dependencies: - dependency-name: "@types/node" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- internal/backend/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 124 ++++---------------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 10 files changed, 29 insertions(+), 113 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index a54bf2af..092c7c77 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -28,7 +28,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "22.5.2", + "@types/node": "22.5.3", "@types/react": "18.3.5", "@types/react-dom": "18.3.0", "axios": "1.7.7", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 4bff85f5..7ffde80d 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -22,7 +22,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "22.5.2", + "@types/node": "22.5.3", "@types/react": "18.3.5", "@types/react-dom": "18.3.0", "eslint": "8.57.0", diff --git a/internal/backend/package.json b/internal/backend/package.json index 5f2bdf84..caaaa9c5 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.5.2", + "@types/node": "22.5.3", "pino-pretty": "11.2.2", "rimraf": "6.0.1", "tsx": "4.19.0", diff --git a/internal/next-common/package.json b/internal/next-common/package.json index d9b7020a..ef5eda74 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.5.2", + "@types/node": "22.5.3", "rimraf": "6.0.1", "typescript": "5.5.4" } diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index f939cb4d..7e26faa3 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -16,7 +16,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "22.5.2", + "@types/node": "22.5.3", "rimraf": "6.0.1", "typescript": "5.5.4" } diff --git a/package-lock.json b/package-lock.json index f8c35888..d8fba443 100644 --- a/package-lock.json +++ b/package-lock.json @@ -48,7 +48,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "22.5.2", + "@types/node": "22.5.3", "@types/react": "18.3.5", "@types/react-dom": "18.3.0", "axios": "1.7.7", @@ -62,16 +62,6 @@ "typescript": "5.5.4" } }, - "apps/cache-testing/node_modules/@types/node": { - "version": "22.5.2", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.2.tgz", - "integrity": "sha512-acJsPTEqYqulZS/Yp/S3GgeE6GZ0qYODUR8aVr/DkhHQ8l9nd4j5x1/ZJy9/gHrRlFMqkO6i0I3E27Alu4jjPg==", - "dev": true, - "license": "MIT", - "dependencies": { - "undici-types": "~6.19.2" - } - }, "docs/cache-handler-docs": { "version": "0.1.0", "dependencies": { @@ -86,23 +76,13 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.7", - "@types/node": "22.5.2", + "@types/node": "22.5.3", "@types/react": "18.3.5", "@types/react-dom": "18.3.0", "eslint": "8.57.0", "typescript": "5.5.4" } }, - "docs/cache-handler-docs/node_modules/@types/node": { - "version": "22.5.2", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.2.tgz", - "integrity": "sha512-acJsPTEqYqulZS/Yp/S3GgeE6GZ0qYODUR8aVr/DkhHQ8l9nd4j5x1/ZJy9/gHrRlFMqkO6i0I3E27Alu4jjPg==", - "dev": true, - "license": "MIT", - "dependencies": { - "undici-types": "~6.19.2" - } - }, "internal/backend": { "version": "0.0.0", "license": "MIT", @@ -112,23 +92,13 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.5.2", + "@types/node": "22.5.3", "pino-pretty": "11.2.2", "rimraf": "6.0.1", "tsx": "4.19.0", "typescript": "5.5.4" } }, - "internal/backend/node_modules/@types/node": { - "version": "22.5.2", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.2.tgz", - "integrity": "sha512-acJsPTEqYqulZS/Yp/S3GgeE6GZ0qYODUR8aVr/DkhHQ8l9nd4j5x1/ZJy9/gHrRlFMqkO6i0I3E27Alu4jjPg==", - "dev": true, - "license": "MIT", - "dependencies": { - "undici-types": "~6.19.2" - } - }, "internal/eslint-config": { "name": "@repo/eslint-config", "version": "0.0.0", @@ -151,21 +121,11 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.5.2", + "@types/node": "22.5.3", "rimraf": "6.0.1", "typescript": "5.5.4" } }, - "internal/next-common/node_modules/@types/node": { - "version": "22.5.2", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.2.tgz", - "integrity": "sha512-acJsPTEqYqulZS/Yp/S3GgeE6GZ0qYODUR8aVr/DkhHQ8l9nd4j5x1/ZJy9/gHrRlFMqkO6i0I3E27Alu4jjPg==", - "dev": true, - "license": "MIT", - "dependencies": { - "undici-types": "~6.19.2" - } - }, "internal/next-lru-cache": { "name": "@neshca/next-lru-cache", "version": "0.0.0", @@ -176,21 +136,11 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "22.5.2", + "@types/node": "22.5.3", "rimraf": "6.0.1", "typescript": "5.5.4" } }, - "internal/next-lru-cache/node_modules/@types/node": { - "version": "22.5.2", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.2.tgz", - "integrity": "sha512-acJsPTEqYqulZS/Yp/S3GgeE6GZ0qYODUR8aVr/DkhHQ8l9nd4j5x1/ZJy9/gHrRlFMqkO6i0I3E27Alu4jjPg==", - "dev": true, - "license": "MIT", - "dependencies": { - "undici-types": "~6.19.2" - } - }, "internal/prettier-config": { "name": "@repo/prettier-config", "version": "0.0.0", @@ -1756,6 +1706,11 @@ "fs-extra": "^8.1.0" } }, + "node_modules/@manypkg/find-root/node_modules/@types/node": { + "version": "12.20.55", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", + "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" + }, "node_modules/@manypkg/find-root/node_modules/fs-extra": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", @@ -3315,10 +3270,12 @@ "license": "MIT" }, "node_modules/@types/node": { - "version": "12.20.55", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", - "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==", - "license": "MIT" + "version": "22.5.3", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.3.tgz", + "integrity": "sha512-njripolh85IA9SQGTAqbmnNZTdxv7X/4OYGPz8tgy5JDr8MP+uDBa921GpYEoDDnwm0Hmn5ZPeJgiiSTPoOzkQ==", + "dependencies": { + "undici-types": "~6.19.2" + } }, "node_modules/@types/node-fetch": { "version": "2.6.11", @@ -16104,7 +16061,6 @@ "version": "6.19.8", "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.19.8.tgz", "integrity": "sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==", - "dev": true, "license": "MIT" }, "node_modules/unified": { @@ -16992,7 +16948,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.5.2", + "@types/node": "22.5.3", "rimraf": "6.0.1", "tsup": "8.2.4", "tsx": "4.19.0", @@ -17003,16 +16959,6 @@ "redis": ">=4.6" } }, - "packages/cache-handler/node_modules/@types/node": { - "version": "22.5.2", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.2.tgz", - "integrity": "sha512-acJsPTEqYqulZS/Yp/S3GgeE6GZ0qYODUR8aVr/DkhHQ8l9nd4j5x1/ZJy9/gHrRlFMqkO6i0I3E27Alu4jjPg==", - "dev": true, - "license": "MIT", - "dependencies": { - "undici-types": "~6.19.2" - } - }, "packages/diffscribe": { "version": "0.2.4", "license": "MIT", @@ -17021,7 +16967,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.5.2", + "@types/node": "22.5.3", "rimraf": "6.0.1", "tsup": "8.2.4", "typescript": "5.5.4" @@ -17031,39 +16977,19 @@ "openai": "^4.12.3" } }, - "packages/diffscribe/node_modules/@types/node": { - "version": "22.5.2", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.2.tgz", - "integrity": "sha512-acJsPTEqYqulZS/Yp/S3GgeE6GZ0qYODUR8aVr/DkhHQ8l9nd4j5x1/ZJy9/gHrRlFMqkO6i0I3E27Alu4jjPg==", - "dev": true, - "license": "MIT", - "dependencies": { - "undici-types": "~6.19.2" - } - }, "packages/json-replacer-reviver": { "name": "@neshca/json-replacer-reviver", "version": "1.1.3", "license": "MIT", "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.5.2", + "@types/node": "22.5.3", "rimraf": "6.0.1", "tsup": "8.2.4", "tsx": "4.19.0", "typescript": "5.5.4" } }, - "packages/json-replacer-reviver/node_modules/@types/node": { - "version": "22.5.2", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.2.tgz", - "integrity": "sha512-acJsPTEqYqulZS/Yp/S3GgeE6GZ0qYODUR8aVr/DkhHQ8l9nd4j5x1/ZJy9/gHrRlFMqkO6i0I3E27Alu4jjPg==", - "dev": true, - "license": "MIT", - "dependencies": { - "undici-types": "~6.19.2" - } - }, "packages/server": { "name": "@neshca/server", "version": "1.1.2", @@ -17079,22 +17005,12 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.5.2", + "@types/node": "22.5.3", "rimraf": "6.0.1", "tsup": "8.2.4", "tsx": "4.19.0", "typescript": "5.5.4" } - }, - "packages/server/node_modules/@types/node": { - "version": "22.5.2", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.2.tgz", - "integrity": "sha512-acJsPTEqYqulZS/Yp/S3GgeE6GZ0qYODUR8aVr/DkhHQ8l9nd4j5x1/ZJy9/gHrRlFMqkO6i0I3E27Alu4jjPg==", - "dev": true, - "license": "MIT", - "dependencies": { - "undici-types": "~6.19.2" - } } } } diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 9a5779aa..2ae8791e 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -80,7 +80,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.5.2", + "@types/node": "22.5.3", "rimraf": "6.0.1", "tsup": "8.2.4", "tsx": "4.19.0", diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index aae2e24f..a9945599 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -25,7 +25,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.5.2", + "@types/node": "22.5.3", "rimraf": "6.0.1", "tsup": "8.2.4", "typescript": "5.5.4" diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index bf97f8fa..b4ddd081 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -28,7 +28,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.5.2", + "@types/node": "22.5.3", "rimraf": "6.0.1", "tsup": "8.2.4", "tsx": "4.19.0", diff --git a/packages/server/package.json b/packages/server/package.json index 07afe08f..1c8fc155 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -32,7 +32,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.5.2", + "@types/node": "22.5.3", "rimraf": "6.0.1", "tsup": "8.2.4", "tsx": "4.19.0", From 8336d75f8fe6dccb2b7a7844881d884d57c32463 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 5 Sep 2024 00:07:59 +0300 Subject: [PATCH 368/458] Bump @changesets/cli from 2.27.7 to 2.27.8 (#736) * Bump @changesets/cli from 2.27.7 to 2.27.8 Bumps [@changesets/cli](https://github.com/changesets/changesets) from 2.27.7 to 2.27.8. - [Release notes](https://github.com/changesets/changesets/releases) - [Changelog](https://github.com/changesets/changesets/blob/main/docs/modifying-changelog-format.md) - [Commits](https://github.com/changesets/changesets/compare/@changesets/cli@2.27.7...@changesets/cli@2.27.8) --- updated-dependencies: - dependency-name: "@changesets/cli" dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] * Update Changeset schema path to node_modules --------- Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Arseny <132773930+better-salmon@users.noreply.github.com> --- .changeset/config.json | 2 +- package-lock.json | 171 ++++++----------------------------------- package.json | 2 +- 3 files changed, 27 insertions(+), 148 deletions(-) diff --git a/.changeset/config.json b/.changeset/config.json index 83c56674..3da494d9 100644 --- a/.changeset/config.json +++ b/.changeset/config.json @@ -1,5 +1,5 @@ { - "$schema": "https://unpkg.com/@changesets/config@2.3.1/schema.json", + "$schema": "../node_modules/@changesets/config/schema.json", "changelog": "@changesets/cli/changelog", "commit": false, "fixed": [], diff --git a/package-lock.json b/package-lock.json index d8fba443..994a3b28 100644 --- a/package-lock.json +++ b/package-lock.json @@ -16,7 +16,7 @@ "internal/*" ], "dependencies": { - "@changesets/cli": "2.27.7" + "@changesets/cli": "2.27.8" }, "devDependencies": { "@actions/core": "1.10.1", @@ -778,39 +778,36 @@ } }, "node_modules/@changesets/cli": { - "version": "2.27.7", - "resolved": "https://registry.npmjs.org/@changesets/cli/-/cli-2.27.7.tgz", - "integrity": "sha512-6lr8JltiiXPIjDeYg4iM2MeePP6VN/JkmqBsVA5XRiy01hGS3y629LtSDvKcycj/w/5Eur1rEwby/MjcYS+e2A==", - "license": "MIT", + "version": "2.27.8", + "resolved": "https://registry.npmjs.org/@changesets/cli/-/cli-2.27.8.tgz", + "integrity": "sha512-gZNyh+LdSsI82wBSHLQ3QN5J30P4uHKJ4fXgoGwQxfXwYFTJzDdvIJasZn8rYQtmKhyQuiBj4SSnLuKlxKWq4w==", "dependencies": { - "@babel/runtime": "^7.20.1", - "@changesets/apply-release-plan": "^7.0.4", - "@changesets/assemble-release-plan": "^6.0.3", + "@changesets/apply-release-plan": "^7.0.5", + "@changesets/assemble-release-plan": "^6.0.4", "@changesets/changelog-git": "^0.2.0", - "@changesets/config": "^3.0.2", + "@changesets/config": "^3.0.3", "@changesets/errors": "^0.2.0", - "@changesets/get-dependents-graph": "^2.1.1", - "@changesets/get-release-plan": "^4.0.3", - "@changesets/git": "^3.0.0", - "@changesets/logger": "^0.1.0", - "@changesets/pre": "^2.0.0", - "@changesets/read": "^0.6.0", - "@changesets/should-skip-package": "^0.1.0", + "@changesets/get-dependents-graph": "^2.1.2", + "@changesets/get-release-plan": "^4.0.4", + "@changesets/git": "^3.0.1", + "@changesets/logger": "^0.1.1", + "@changesets/pre": "^2.0.1", + "@changesets/read": "^0.6.1", + "@changesets/should-skip-package": "^0.1.1", "@changesets/types": "^6.0.0", - "@changesets/write": "^0.3.1", + "@changesets/write": "^0.3.2", "@manypkg/get-packages": "^1.1.3", "@types/semver": "^7.5.0", "ansi-colors": "^4.1.3", - "chalk": "^2.1.0", "ci-info": "^3.7.0", "enquirer": "^2.3.0", "external-editor": "^3.1.0", "fs-extra": "^7.0.1", - "human-id": "^1.0.2", "mri": "^1.2.0", "outdent": "^0.5.0", "p-limit": "^2.2.0", - "preferred-pm": "^3.0.0", + "package-manager-detector": "^0.2.0", + "picocolors": "^1.1.0", "resolve-from": "^5.0.0", "semver": "^7.5.3", "spawndamnit": "^2.0.0", @@ -4473,6 +4470,7 @@ "version": "2.4.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, "license": "MIT", "dependencies": { "ansi-styles": "^3.2.1", @@ -7692,16 +7690,6 @@ "node": ">=8" } }, - "node_modules/find-yarn-workspace-root2": { - "version": "1.2.16", - "resolved": "https://registry.npmjs.org/find-yarn-workspace-root2/-/find-yarn-workspace-root2-1.2.16.tgz", - "integrity": "sha512-hr6hb1w8ePMpPVUK39S4RlwJzi+xPLuVuG8XlwXU3KD5Yn3qgBWVfy3AzNlDhWvE1EORCE65/Qm26rFQt3VLVA==", - "license": "Apache-2.0", - "dependencies": { - "micromatch": "^4.0.2", - "pkg-dir": "^4.2.0" - } - }, "node_modules/flat-cache": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz", @@ -8304,6 +8292,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true, "license": "MIT", "engines": { "node": ">=4" @@ -9975,21 +9964,6 @@ "node": "^12.20.0 || ^14.13.1 || >=16.0.0" } }, - "node_modules/load-yaml-file": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/load-yaml-file/-/load-yaml-file-0.2.0.tgz", - "integrity": "sha512-OfCBkGEw4nN6JLtgRidPX6QxjBQGQf72q3si2uvqyFEMbycSFFHwAZeXx6cJgFM9wmLrf9zBwCP3Ivqa+LLZPw==", - "license": "MIT", - "dependencies": { - "graceful-fs": "^4.1.5", - "js-yaml": "^3.13.0", - "pify": "^4.0.1", - "strip-bom": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, "node_modules/locate-path": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", @@ -12427,6 +12401,11 @@ "dev": true, "license": "BlueOak-1.0.0" }, + "node_modules/package-manager-detector": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/package-manager-detector/-/package-manager-detector-0.2.0.tgz", + "integrity": "sha512-E385OSk9qDcXhcM9LNSe4sdhx8a9mAPrZ4sMLW+tmxl5ZuGtPUcdFu+MPP2jbgiWAZ6Pfe5soGFMd+0Db5Vrog==" + }, "node_modules/pako": { "version": "0.2.9", "resolved": "https://registry.npmjs.org/pako/-/pako-0.2.9.tgz", @@ -12725,18 +12704,6 @@ "node": ">= 6" } }, - "node_modules/pkg-dir": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", - "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", - "license": "MIT", - "dependencies": { - "find-up": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/playwright": { "version": "1.46.1", "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.46.1.tgz", @@ -13125,82 +13092,6 @@ } } }, - "node_modules/preferred-pm": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/preferred-pm/-/preferred-pm-3.1.4.tgz", - "integrity": "sha512-lEHd+yEm22jXdCphDrkvIJQU66EuLojPPtvZkpKIkiD+l0DMThF/niqZKJSoU8Vl7iuvtmzyMhir9LdVy5WMnA==", - "license": "MIT", - "dependencies": { - "find-up": "^5.0.0", - "find-yarn-workspace-root2": "1.2.16", - "path-exists": "^4.0.0", - "which-pm": "^2.2.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/preferred-pm/node_modules/find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", - "license": "MIT", - "dependencies": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/preferred-pm/node_modules/locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", - "license": "MIT", - "dependencies": { - "p-locate": "^5.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/preferred-pm/node_modules/p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "license": "MIT", - "dependencies": { - "yocto-queue": "^0.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/preferred-pm/node_modules/p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", - "license": "MIT", - "dependencies": { - "p-limit": "^3.0.2" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/prelude-ls": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", @@ -15220,6 +15111,7 @@ "version": "5.5.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, "license": "MIT", "dependencies": { "has-flag": "^3.0.0" @@ -16690,19 +16582,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/which-pm": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/which-pm/-/which-pm-2.2.0.tgz", - "integrity": "sha512-MOiaDbA5ZZgUjkeMWM5EkJp4loW5ZRoa5bc3/aeMox/PJelMhE6t7S/mLuiY43DBupyxH+S0U1bTui9kWUlmsw==", - "license": "MIT", - "dependencies": { - "load-yaml-file": "^0.2.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=8.15" - } - }, "node_modules/which-typed-array": { "version": "1.1.15", "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.15.tgz", diff --git a/package.json b/package.json index 18337917..96cb6819 100644 --- a/package.json +++ b/package.json @@ -34,7 +34,7 @@ "version-packages": "changeset version && npm run codestyle:fix" }, "dependencies": { - "@changesets/cli": "2.27.7" + "@changesets/cli": "2.27.8" }, "devDependencies": { "@actions/core": "1.10.1", From 03a27035e990d76eaf1f659a8e3c0821bccfb8d9 Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Thu, 5 Sep 2024 00:48:52 +0300 Subject: [PATCH 369/458] Update ESLint (#738) Update ESLint dependencies across multiple packages and set ignore options for dependabot --- .github/dependabot.yml | 14 +- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- internal/eslint-config/package.json | 4 +- package-lock.json | 815 ++++++++++++--------------- 5 files changed, 378 insertions(+), 459 deletions(-) diff --git a/.github/dependabot.yml b/.github/dependabot.yml index 89918d72..6f23012e 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -8,11 +8,15 @@ updates: - 'better-salmon' versioning-strategy: increase open-pull-requests-limit: 20 - # ignore: - # - dependency-name: 'next' - # versions: ['14.x.x'] - # - dependency-name: '@next/eslint-plugin-next' - # versions: ['14.x.x'] + ignore: + - dependency-name: 'eslint' + versions: ['9.x.x'] + - dependency-name: '@types/eslint' + versions: ['9.x.x'] + - dependency-name: '@typescript-eslint/eslint-plugin' + versions: ['8.x.x'] + - dependency-name: '@typescript-eslint/parser' + versions: ['8.x.x'] groups: next-js: patterns: diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 092c7c77..8d777a10 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -27,7 +27,7 @@ "@playwright/test": "1.46.1", "@repo/eslint-config": "*", "@repo/typescript-config": "*", - "@types/eslint": "8.56.7", + "@types/eslint": "8.56.12", "@types/node": "22.5.3", "@types/react": "18.3.5", "@types/react-dom": "18.3.0", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 7ffde80d..6219d37f 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -21,7 +21,7 @@ "@next/eslint-plugin-next": "14.2.7", "@repo/eslint-config": "*", "@repo/typescript-config": "*", - "@types/eslint": "8.56.7", + "@types/eslint": "8.56.12", "@types/node": "22.5.3", "@types/react": "18.3.5", "@types/react-dom": "18.3.0", diff --git a/internal/eslint-config/package.json b/internal/eslint-config/package.json index 4b48b183..4743228e 100644 --- a/internal/eslint-config/package.json +++ b/internal/eslint-config/package.json @@ -6,8 +6,8 @@ "next.js" ], "devDependencies": { - "@typescript-eslint/eslint-plugin": "7.5.0", - "@typescript-eslint/parser": "7.5.0", + "@typescript-eslint/eslint-plugin": "7.18.0", + "@typescript-eslint/parser": "7.18.0", "@vercel/style-guide": "6.0.0", "eslint-config-prettier": "9.1.0", "eslint-config-turbo": "2.1.1", diff --git a/package-lock.json b/package-lock.json index 994a3b28..6677529c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -47,7 +47,7 @@ "@playwright/test": "1.46.1", "@repo/eslint-config": "*", "@repo/typescript-config": "*", - "@types/eslint": "8.56.7", + "@types/eslint": "8.56.12", "@types/node": "22.5.3", "@types/react": "18.3.5", "@types/react-dom": "18.3.0", @@ -62,6 +62,16 @@ "typescript": "5.5.4" } }, + "apps/cache-testing/node_modules/@types/node": { + "version": "22.5.3", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.3.tgz", + "integrity": "sha512-njripolh85IA9SQGTAqbmnNZTdxv7X/4OYGPz8tgy5JDr8MP+uDBa921GpYEoDDnwm0Hmn5ZPeJgiiSTPoOzkQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "undici-types": "~6.19.2" + } + }, "docs/cache-handler-docs": { "version": "0.1.0", "dependencies": { @@ -75,7 +85,7 @@ "@next/eslint-plugin-next": "14.2.7", "@repo/eslint-config": "*", "@repo/typescript-config": "*", - "@types/eslint": "8.56.7", + "@types/eslint": "8.56.12", "@types/node": "22.5.3", "@types/react": "18.3.5", "@types/react-dom": "18.3.0", @@ -83,6 +93,16 @@ "typescript": "5.5.4" } }, + "docs/cache-handler-docs/node_modules/@types/node": { + "version": "22.5.3", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.3.tgz", + "integrity": "sha512-njripolh85IA9SQGTAqbmnNZTdxv7X/4OYGPz8tgy5JDr8MP+uDBa921GpYEoDDnwm0Hmn5ZPeJgiiSTPoOzkQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "undici-types": "~6.19.2" + } + }, "internal/backend": { "version": "0.0.0", "license": "MIT", @@ -99,12 +119,22 @@ "typescript": "5.5.4" } }, + "internal/backend/node_modules/@types/node": { + "version": "22.5.3", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.3.tgz", + "integrity": "sha512-njripolh85IA9SQGTAqbmnNZTdxv7X/4OYGPz8tgy5JDr8MP+uDBa921GpYEoDDnwm0Hmn5ZPeJgiiSTPoOzkQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "undici-types": "~6.19.2" + } + }, "internal/eslint-config": { "name": "@repo/eslint-config", "version": "0.0.0", "devDependencies": { - "@typescript-eslint/eslint-plugin": "7.5.0", - "@typescript-eslint/parser": "7.5.0", + "@typescript-eslint/eslint-plugin": "7.18.0", + "@typescript-eslint/parser": "7.18.0", "@vercel/style-guide": "6.0.0", "eslint-config-prettier": "9.1.0", "eslint-config-turbo": "2.1.1", @@ -126,6 +156,16 @@ "typescript": "5.5.4" } }, + "internal/next-common/node_modules/@types/node": { + "version": "22.5.3", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.3.tgz", + "integrity": "sha512-njripolh85IA9SQGTAqbmnNZTdxv7X/4OYGPz8tgy5JDr8MP+uDBa921GpYEoDDnwm0Hmn5ZPeJgiiSTPoOzkQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "undici-types": "~6.19.2" + } + }, "internal/next-lru-cache": { "name": "@neshca/next-lru-cache", "version": "0.0.0", @@ -141,6 +181,16 @@ "typescript": "5.5.4" } }, + "internal/next-lru-cache/node_modules/@types/node": { + "version": "22.5.3", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.3.tgz", + "integrity": "sha512-njripolh85IA9SQGTAqbmnNZTdxv7X/4OYGPz8tgy5JDr8MP+uDBa921GpYEoDDnwm0Hmn5ZPeJgiiSTPoOzkQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "undici-types": "~6.19.2" + } + }, "internal/prettier-config": { "name": "@repo/prettier-config", "version": "0.0.0", @@ -461,6 +511,84 @@ "node": ">=6.9.0" } }, + "node_modules/@babel/highlight/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/@babel/highlight/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true, + "license": "MIT" + }, + "node_modules/@babel/highlight/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/@babel/highlight/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, "node_modules/@babel/parser": { "version": "7.25.6", "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.25.6.tgz", @@ -781,6 +909,7 @@ "version": "2.27.8", "resolved": "https://registry.npmjs.org/@changesets/cli/-/cli-2.27.8.tgz", "integrity": "sha512-gZNyh+LdSsI82wBSHLQ3QN5J30P4uHKJ4fXgoGwQxfXwYFTJzDdvIJasZn8rYQtmKhyQuiBj4SSnLuKlxKWq4w==", + "license": "MIT", "dependencies": { "@changesets/apply-release-plan": "^7.0.5", "@changesets/assemble-release-plan": "^6.0.4", @@ -1703,11 +1832,6 @@ "fs-extra": "^8.1.0" } }, - "node_modules/@manypkg/find-root/node_modules/@types/node": { - "version": "12.20.55", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", - "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" - }, "node_modules/@manypkg/find-root/node_modules/fs-extra": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", @@ -2520,22 +2644,6 @@ "ws": "~7.5.10" } }, - "node_modules/@pm2/agent/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, "node_modules/@pm2/agent/node_modules/chalk": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", @@ -2550,26 +2658,6 @@ "node": ">=8" } }, - "node_modules/@pm2/agent/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/@pm2/agent/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true, - "license": "MIT" - }, "node_modules/@pm2/agent/node_modules/dayjs": { "version": "1.8.36", "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.8.36.tgz", @@ -2577,16 +2665,6 @@ "dev": true, "license": "MIT" }, - "node_modules/@pm2/agent/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, "node_modules/@pm2/agent/node_modules/lru-cache": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", @@ -2616,19 +2694,6 @@ "node": ">=10" } }, - "node_modules/@pm2/agent/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/@pm2/io": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/@pm2/io/-/io-6.0.1.tgz", @@ -3185,9 +3250,9 @@ } }, "node_modules/@types/eslint": { - "version": "8.56.7", - "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.56.7.tgz", - "integrity": "sha512-SjDvI/x3zsZnOkYZ3lCt9lOZWZLB2jIlNKz+LBgCtDurK0JZcwucxYHn1w2BJkD34dgX9Tjnak0txtq4WTggEA==", + "version": "8.56.12", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.56.12.tgz", + "integrity": "sha512-03ruubjWyOHlmljCVoxSuNDdmfZDzsrrz0P2LeJsOXr+ZwFQ+0yQIwNCwt/GYhV7Z31fgtXJTAEs+FYlEL851g==", "dev": true, "license": "MIT", "dependencies": { @@ -3267,12 +3332,10 @@ "license": "MIT" }, "node_modules/@types/node": { - "version": "22.5.3", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.3.tgz", - "integrity": "sha512-njripolh85IA9SQGTAqbmnNZTdxv7X/4OYGPz8tgy5JDr8MP+uDBa921GpYEoDDnwm0Hmn5ZPeJgiiSTPoOzkQ==", - "dependencies": { - "undici-types": "~6.19.2" - } + "version": "12.20.55", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", + "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==", + "license": "MIT" }, "node_modules/@types/node-fetch": { "version": "2.6.11", @@ -3338,23 +3401,21 @@ "license": "MIT" }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.5.0.tgz", - "integrity": "sha512-HpqNTH8Du34nLxbKgVMGljZMG0rJd2O9ecvr2QLYp+7512ty1j42KnsFwspPXg1Vh8an9YImf6CokUBltisZFQ==", + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.18.0.tgz", + "integrity": "sha512-94EQTWZ40mzBc42ATNIBimBEDltSJ9RQHCC8vc/PDbxi4k8dVwUAv4o98dk50M1zB+JGFxp43FP7f8+FP8R6Sw==", "dev": true, "license": "MIT", "dependencies": { - "@eslint-community/regexpp": "^4.5.1", - "@typescript-eslint/scope-manager": "7.5.0", - "@typescript-eslint/type-utils": "7.5.0", - "@typescript-eslint/utils": "7.5.0", - "@typescript-eslint/visitor-keys": "7.5.0", - "debug": "^4.3.4", + "@eslint-community/regexpp": "^4.10.0", + "@typescript-eslint/scope-manager": "7.18.0", + "@typescript-eslint/type-utils": "7.18.0", + "@typescript-eslint/utils": "7.18.0", + "@typescript-eslint/visitor-keys": "7.18.0", "graphemer": "^1.4.0", - "ignore": "^5.2.4", + "ignore": "^5.3.1", "natural-compare": "^1.4.0", - "semver": "^7.5.4", - "ts-api-utils": "^1.0.1" + "ts-api-utils": "^1.3.0" }, "engines": { "node": "^18.18.0 || >=20.0.0" @@ -3374,16 +3435,16 @@ } }, "node_modules/@typescript-eslint/parser": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-7.5.0.tgz", - "integrity": "sha512-cj+XGhNujfD2/wzR1tabNsidnYRaFfEkcULdcIyVBYcXjBvBKOes+mpMBP7hMpOyk+gBcfXsrg4NBGAStQyxjQ==", + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-7.18.0.tgz", + "integrity": "sha512-4Z+L8I2OqhZV8qA132M4wNL30ypZGYOQVBfMgxDH/K5UX0PNqTu1c6za9ST5r9+tavvHiTWmBnKzpCJ/GlVFtg==", "dev": true, "license": "BSD-2-Clause", "dependencies": { - "@typescript-eslint/scope-manager": "7.5.0", - "@typescript-eslint/types": "7.5.0", - "@typescript-eslint/typescript-estree": "7.5.0", - "@typescript-eslint/visitor-keys": "7.5.0", + "@typescript-eslint/scope-manager": "7.18.0", + "@typescript-eslint/types": "7.18.0", + "@typescript-eslint/typescript-estree": "7.18.0", + "@typescript-eslint/visitor-keys": "7.18.0", "debug": "^4.3.4" }, "engines": { @@ -3403,14 +3464,14 @@ } }, "node_modules/@typescript-eslint/scope-manager": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-7.5.0.tgz", - "integrity": "sha512-Z1r7uJY0MDeUlql9XJ6kRVgk/sP11sr3HKXn268HZyqL7i4cEfrdFuSSY/0tUqT37l5zT0tJOsuDP16kio85iA==", + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-7.18.0.tgz", + "integrity": "sha512-jjhdIE/FPF2B7Z1uzc6i3oWKbGcHb87Qw7AWj6jmEqNOfDFbJWtjt/XfwCpvNkpGWlcJaog5vTR+VV8+w9JflA==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/types": "7.5.0", - "@typescript-eslint/visitor-keys": "7.5.0" + "@typescript-eslint/types": "7.18.0", + "@typescript-eslint/visitor-keys": "7.18.0" }, "engines": { "node": "^18.18.0 || >=20.0.0" @@ -3421,16 +3482,16 @@ } }, "node_modules/@typescript-eslint/type-utils": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-7.5.0.tgz", - "integrity": "sha512-A021Rj33+G8mx2Dqh0nMO9GyjjIBK3MqgVgZ2qlKf6CJy51wY/lkkFqq3TqqnH34XyAHUkq27IjlUkWlQRpLHw==", + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-7.18.0.tgz", + "integrity": "sha512-XL0FJXuCLaDuX2sYqZUUSOJ2sG5/i1AAze+axqmLnSkNEVMVYLF+cbwlB2w8D1tinFuSikHmFta+P+HOofrLeA==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/typescript-estree": "7.5.0", - "@typescript-eslint/utils": "7.5.0", + "@typescript-eslint/typescript-estree": "7.18.0", + "@typescript-eslint/utils": "7.18.0", "debug": "^4.3.4", - "ts-api-utils": "^1.0.1" + "ts-api-utils": "^1.3.0" }, "engines": { "node": "^18.18.0 || >=20.0.0" @@ -3449,9 +3510,9 @@ } }, "node_modules/@typescript-eslint/types": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.5.0.tgz", - "integrity": "sha512-tv5B4IHeAdhR7uS4+bf8Ov3k793VEVHd45viRRkehIUZxm0WF82VPiLgHzA/Xl4TGPg1ZD49vfxBKFPecD5/mg==", + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.18.0.tgz", + "integrity": "sha512-iZqi+Ds1y4EDYUtlOOC+aUmxnE9xS/yCigkjA7XpTKV6nCBd3Hp/PRGGmdwnfkV2ThMyYldP1wRpm/id99spTQ==", "dev": true, "license": "MIT", "engines": { @@ -3463,20 +3524,20 @@ } }, "node_modules/@typescript-eslint/typescript-estree": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-7.5.0.tgz", - "integrity": "sha512-YklQQfe0Rv2PZEueLTUffiQGKQneiIEKKnfIqPIOxgM9lKSZFCjT5Ad4VqRKj/U4+kQE3fa8YQpskViL7WjdPQ==", + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-7.18.0.tgz", + "integrity": "sha512-aP1v/BSPnnyhMHts8cf1qQ6Q1IFwwRvAQGRvBFkWlo3/lH29OXA3Pts+c10nxRxIBrDnoMqzhgdwVe5f2D6OzA==", "dev": true, "license": "BSD-2-Clause", "dependencies": { - "@typescript-eslint/types": "7.5.0", - "@typescript-eslint/visitor-keys": "7.5.0", + "@typescript-eslint/types": "7.18.0", + "@typescript-eslint/visitor-keys": "7.18.0", "debug": "^4.3.4", "globby": "^11.1.0", "is-glob": "^4.0.3", - "minimatch": "9.0.3", - "semver": "^7.5.4", - "ts-api-utils": "^1.0.1" + "minimatch": "^9.0.4", + "semver": "^7.6.0", + "ts-api-utils": "^1.3.0" }, "engines": { "node": "^18.18.0 || >=20.0.0" @@ -3502,9 +3563,9 @@ } }, "node_modules/@typescript-eslint/typescript-estree/node_modules/minimatch": { - "version": "9.0.3", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", - "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", "dev": true, "license": "ISC", "dependencies": { @@ -3518,19 +3579,16 @@ } }, "node_modules/@typescript-eslint/utils": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-7.5.0.tgz", - "integrity": "sha512-3vZl9u0R+/FLQcpy2EHyRGNqAS/ofJ3Ji8aebilfJe+fobK8+LbIFmrHciLVDxjDoONmufDcnVSF38KwMEOjzw==", + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-7.18.0.tgz", + "integrity": "sha512-kK0/rNa2j74XuHVcoCZxdFBMF+aq/vH83CXAOHieC+2Gis4mF8jJXT5eAfyD3K0sAxtPuwxaIOIOvhwzVDt/kw==", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.4.0", - "@types/json-schema": "^7.0.12", - "@types/semver": "^7.5.0", - "@typescript-eslint/scope-manager": "7.5.0", - "@typescript-eslint/types": "7.5.0", - "@typescript-eslint/typescript-estree": "7.5.0", - "semver": "^7.5.4" + "@typescript-eslint/scope-manager": "7.18.0", + "@typescript-eslint/types": "7.18.0", + "@typescript-eslint/typescript-estree": "7.18.0" }, "engines": { "node": "^18.18.0 || >=20.0.0" @@ -3544,14 +3602,14 @@ } }, "node_modules/@typescript-eslint/visitor-keys": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-7.5.0.tgz", - "integrity": "sha512-mcuHM/QircmA6O7fy6nn2w/3ditQkj+SgtOc8DW3uQ10Yfj42amm2i+6F2K4YAOPNNTmE6iM1ynM6lrSwdendA==", + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-7.18.0.tgz", + "integrity": "sha512-cDF0/Gf81QpY3xYyJKDV14Zwdmid5+uuENhjH2EqFaF0ni+yAyq/LzMaIJdhNJXZI7uLzwIlA+V7oWoyn6Curg==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/types": "7.5.0", - "eslint-visitor-keys": "^3.4.1" + "@typescript-eslint/types": "7.18.0", + "eslint-visitor-keys": "^3.4.3" }, "engines": { "node": "^18.18.0 || >=20.0.0" @@ -3813,15 +3871,19 @@ "license": "MIT" }, "node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, "license": "MIT", "dependencies": { - "color-convert": "^1.9.0" + "color-convert": "^2.0.1" }, "engines": { - "node": ">=4" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, "node_modules/any-promise": { @@ -4467,18 +4529,20 @@ } }, "node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dev": true, "license": "MIT", "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" }, "engines": { - "node": ">=4" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, "node_modules/character-entities": { @@ -4600,6 +4664,16 @@ "node": ">=4" } }, + "node_modules/clean-regexp/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8.0" + } + }, "node_modules/cli-tableau": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/cli-tableau/-/cli-tableau-2.0.1.tgz", @@ -4612,22 +4686,6 @@ "node": ">=8.10.0" } }, - "node_modules/cli-tableau/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, "node_modules/cli-tableau/node_modules/chalk": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", @@ -4642,49 +4700,6 @@ "node": ">=8" } }, - "node_modules/cli-tableau/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/cli-tableau/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true, - "license": "MIT" - }, - "node_modules/cli-tableau/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/cli-tableau/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/client-only": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/client-only/-/client-only-0.0.1.tgz", @@ -4723,18 +4738,23 @@ } }, "node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, "license": "MIT", "dependencies": { - "color-name": "1.1.3" + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" } }, "node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, "license": "MIT" }, "node_modules/colorette": { @@ -6038,12 +6058,16 @@ } }, "node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true, "license": "MIT", "engines": { - "node": ">=0.8.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/escodegen": { @@ -6280,6 +6304,16 @@ "eslint": ">=4.19.1" } }, + "node_modules/eslint-plugin-eslint-comments/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8.0" + } + }, "node_modules/eslint-plugin-import": { "version": "2.30.0", "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.30.0.tgz", @@ -6894,112 +6928,46 @@ "jsesc": "bin/jsesc" }, "engines": { - "node": ">=6" - } - }, - "node_modules/eslint-scope": { - "version": "7.2.2", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", - "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^5.2.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/eslint-visitor-keys": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", - "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", - "dev": true, - "license": "Apache-2.0", - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/eslint/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/eslint/node_modules/argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", - "dev": true, - "license": "Python-2.0" - }, - "node_modules/eslint/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "node": ">=6" } }, - "node_modules/eslint/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "node_modules/eslint-scope": { + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", + "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", "dev": true, - "license": "MIT", + "license": "BSD-2-Clause", "dependencies": { - "color-name": "~1.1.4" + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" }, "engines": { - "node": ">=7.0.0" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" } }, - "node_modules/eslint/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true, - "license": "MIT" - }, - "node_modules/eslint/node_modules/escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", "dev": true, - "license": "MIT", + "license": "Apache-2.0", "engines": { - "node": ">=10" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://opencollective.com/eslint" } }, + "node_modules/eslint/node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true, + "license": "Python-2.0" + }, "node_modules/eslint/node_modules/find-up": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", @@ -7017,16 +6985,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/eslint/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, "node_modules/eslint/node_modules/js-yaml": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", @@ -7088,19 +7046,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/eslint/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/espree": { "version": "9.6.1", "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", @@ -8289,13 +8234,13 @@ } }, "node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true, "license": "MIT", "engines": { - "node": ">=4" + "node": ">=8" } }, "node_modules/has-property-descriptors": { @@ -12404,7 +12349,8 @@ "node_modules/package-manager-detector": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/package-manager-detector/-/package-manager-detector-0.2.0.tgz", - "integrity": "sha512-E385OSk9qDcXhcM9LNSe4sdhx8a9mAPrZ4sMLW+tmxl5ZuGtPUcdFu+MPP2jbgiWAZ6Pfe5soGFMd+0Db5Vrog==" + "integrity": "sha512-E385OSk9qDcXhcM9LNSe4sdhx8a9mAPrZ4sMLW+tmxl5ZuGtPUcdFu+MPP2jbgiWAZ6Pfe5soGFMd+0Db5Vrog==", + "license": "MIT" }, "node_modules/pako": { "version": "0.2.9", @@ -12825,19 +12771,6 @@ "node": ">=5" } }, - "node_modules/pm2-axon/node_modules/escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/pm2-deploy": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/pm2-deploy/-/pm2-deploy-1.0.2.tgz", @@ -12891,22 +12824,6 @@ "node": ">=8" } }, - "node_modules/pm2/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, "node_modules/pm2/node_modules/argparse": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", @@ -12928,26 +12845,6 @@ "node": ">=8" } }, - "node_modules/pm2/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/pm2/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true, - "license": "MIT" - }, "node_modules/pm2/node_modules/commander": { "version": "2.15.1", "resolved": "https://registry.npmjs.org/commander/-/commander-2.15.1.tgz", @@ -12968,16 +12865,6 @@ "node": ">=8.6" } }, - "node_modules/pm2/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, "node_modules/pm2/node_modules/js-yaml": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", @@ -12998,19 +12885,6 @@ "dev": true, "license": "BSD-3-Clause" }, - "node_modules/pm2/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/possible-typed-array-names": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.0.0.tgz", @@ -15108,16 +14982,16 @@ } }, "node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, "license": "MIT", "dependencies": { - "has-flag": "^3.0.0" + "has-flag": "^4.0.0" }, "engines": { - "node": ">=4" + "node": ">=8" } }, "node_modules/supports-preserve-symlinks-flag": { @@ -15254,6 +15128,18 @@ "title": "bin/title.js" } }, + "node_modules/title/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "license": "MIT", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, "node_modules/title/node_modules/chalk": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.3.0.tgz", @@ -15268,6 +15154,30 @@ "node": ">=4" } }, + "node_modules/title/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "license": "MIT", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/title/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "license": "MIT" + }, + "node_modules/title/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "license": "MIT", + "engines": { + "node": ">=0.8.0" + } + }, "node_modules/title/node_modules/has-flag": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz", @@ -15953,6 +15863,7 @@ "version": "6.19.8", "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.19.8.tgz", "integrity": "sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==", + "dev": true, "license": "MIT" }, "node_modules/unified": { @@ -16649,42 +16560,6 @@ "url": "https://github.com/chalk/wrap-ansi?sponsor=1" } }, - "node_modules/wrap-ansi-cjs/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/wrap-ansi-cjs/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/wrap-ansi-cjs/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true, - "license": "MIT" - }, "node_modules/wrap-ansi-cjs/node_modules/emoji-regex": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", @@ -16838,6 +16713,16 @@ "redis": ">=4.6" } }, + "packages/cache-handler/node_modules/@types/node": { + "version": "22.5.3", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.3.tgz", + "integrity": "sha512-njripolh85IA9SQGTAqbmnNZTdxv7X/4OYGPz8tgy5JDr8MP+uDBa921GpYEoDDnwm0Hmn5ZPeJgiiSTPoOzkQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "undici-types": "~6.19.2" + } + }, "packages/diffscribe": { "version": "0.2.4", "license": "MIT", @@ -16856,6 +16741,16 @@ "openai": "^4.12.3" } }, + "packages/diffscribe/node_modules/@types/node": { + "version": "22.5.3", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.3.tgz", + "integrity": "sha512-njripolh85IA9SQGTAqbmnNZTdxv7X/4OYGPz8tgy5JDr8MP+uDBa921GpYEoDDnwm0Hmn5ZPeJgiiSTPoOzkQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "undici-types": "~6.19.2" + } + }, "packages/json-replacer-reviver": { "name": "@neshca/json-replacer-reviver", "version": "1.1.3", @@ -16869,6 +16764,16 @@ "typescript": "5.5.4" } }, + "packages/json-replacer-reviver/node_modules/@types/node": { + "version": "22.5.3", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.3.tgz", + "integrity": "sha512-njripolh85IA9SQGTAqbmnNZTdxv7X/4OYGPz8tgy5JDr8MP+uDBa921GpYEoDDnwm0Hmn5ZPeJgiiSTPoOzkQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "undici-types": "~6.19.2" + } + }, "packages/server": { "name": "@neshca/server", "version": "1.1.2", @@ -16890,6 +16795,16 @@ "tsx": "4.19.0", "typescript": "5.5.4" } + }, + "packages/server/node_modules/@types/node": { + "version": "22.5.3", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.3.tgz", + "integrity": "sha512-njripolh85IA9SQGTAqbmnNZTdxv7X/4OYGPz8tgy5JDr8MP+uDBa921GpYEoDDnwm0Hmn5ZPeJgiiSTPoOzkQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "undici-types": "~6.19.2" + } } } } From 7311796b8b0594d69413b23d8252d8229385175b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 5 Sep 2024 10:53:04 +0300 Subject: [PATCH 370/458] Bump the next-js group with 2 updates (#737) Bumps the next-js group with 2 updates: [next](https://github.com/vercel/next.js) and [@next/eslint-plugin-next](https://github.com/vercel/next.js/tree/HEAD/packages/eslint-plugin-next). Updates `next` from 14.2.7 to 14.2.8 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v14.2.7...v14.2.8) Updates `@next/eslint-plugin-next` from 14.2.7 to 14.2.8 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/commits/v14.2.8/packages/eslint-plugin-next) --- updated-dependencies: - dependency-name: next dependency-type: direct:production update-type: version-update:semver-patch dependency-group: next-js - dependency-name: "@next/eslint-plugin-next" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: next-js ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 4 +- docs/cache-handler-docs/package.json | 4 +- internal/next-common/package.json | 2 +- package-lock.json | 114 ++++++++++++--------------- 4 files changed, 56 insertions(+), 68 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 8d777a10..027fd807 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -17,13 +17,13 @@ "start": "dotenv -e .env.local -v SERVER_STARTED=1 node .next/standalone/apps/cache-testing/server.js" }, "dependencies": { - "next": "14.2.7", + "next": "14.2.8", "react": "18.3.1", "react-dom": "18.3.1" }, "devDependencies": { "@neshca/cache-handler": "*", - "@next/eslint-plugin-next": "14.2.7", + "@next/eslint-plugin-next": "14.2.8", "@playwright/test": "1.46.1", "@repo/eslint-config": "*", "@repo/typescript-config": "*", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 6219d37f..52a88820 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -11,14 +11,14 @@ "start:docs": "next start" }, "dependencies": { - "next": "14.2.7", + "next": "14.2.8", "nextra": "2.13.4", "nextra-theme-docs": "2.13.4", "react": "18.3.1", "react-dom": "18.3.1" }, "devDependencies": { - "@next/eslint-plugin-next": "14.2.7", + "@next/eslint-plugin-next": "14.2.8", "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.12", diff --git a/internal/next-common/package.json b/internal/next-common/package.json index ef5eda74..147b0983 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -11,7 +11,7 @@ "clean": "rimraf ./.turbo ./node_modules" }, "dependencies": { - "next": "14.2.7" + "next": "14.2.8" }, "devDependencies": { "@repo/typescript-config": "*", diff --git a/package-lock.json b/package-lock.json index 6677529c..b4ad6ede 100644 --- a/package-lock.json +++ b/package-lock.json @@ -37,13 +37,13 @@ "version": "0.0.0", "license": "MIT", "dependencies": { - "next": "14.2.7", + "next": "14.2.8", "react": "18.3.1", "react-dom": "18.3.1" }, "devDependencies": { "@neshca/cache-handler": "*", - "@next/eslint-plugin-next": "14.2.7", + "@next/eslint-plugin-next": "14.2.8", "@playwright/test": "1.46.1", "@repo/eslint-config": "*", "@repo/typescript-config": "*", @@ -75,14 +75,14 @@ "docs/cache-handler-docs": { "version": "0.1.0", "dependencies": { - "next": "14.2.7", + "next": "14.2.8", "nextra": "2.13.4", "nextra-theme-docs": "2.13.4", "react": "18.3.1", "react-dom": "18.3.1" }, "devDependencies": { - "@next/eslint-plugin-next": "14.2.7", + "@next/eslint-plugin-next": "14.2.8", "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.12", @@ -147,7 +147,7 @@ "version": "0.0.0", "license": "MIT", "dependencies": { - "next": "14.2.7" + "next": "14.2.8" }, "devDependencies": { "@repo/typescript-config": "*", @@ -2259,17 +2259,15 @@ "link": true }, "node_modules/@next/env": { - "version": "14.2.7", - "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.7.tgz", - "integrity": "sha512-OTx9y6I3xE/eih+qtthppwLytmpJVPM5PPoJxChFsbjIEFXIayG0h/xLzefHGJviAa3Q5+Fd+9uYojKkHDKxoQ==", - "license": "MIT" + "version": "14.2.8", + "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.8.tgz", + "integrity": "sha512-L44a+ynqkolyNBnYfF8VoCiSrjSZWgEHYKkKLGcs/a80qh7AkfVUD/MduVPgdsWZ31tgROR+yJRA0PZjSVBXWQ==" }, "node_modules/@next/eslint-plugin-next": { - "version": "14.2.7", - "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.2.7.tgz", - "integrity": "sha512-+7xh142AdhZGjY9/L0iFo7mqRBMJHe+q+uOL+hto1Lfo9DeWCGcR6no4StlFbVSVcA6fQLKEX6y6qhMsSKbgNQ==", + "version": "14.2.8", + "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.2.8.tgz", + "integrity": "sha512-ue5vcq9Fjk3asACRDrzYjcGMEN7pMMDQ5zUD+FenkqvlPCVUD1x7PxBNOLfPYDZOrk/Vnl4GHmjj2mZDqPW8TQ==", "dev": true, - "license": "MIT", "dependencies": { "glob": "10.3.10" } @@ -2360,13 +2358,12 @@ } }, "node_modules/@next/swc-darwin-arm64": { - "version": "14.2.7", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.7.tgz", - "integrity": "sha512-UhZGcOyI9LE/tZL3h9rs/2wMZaaJKwnpAyegUVDGZqwsla6hMfeSj9ssBWQS9yA4UXun3pPhrFLVnw5KXZs3vw==", + "version": "14.2.8", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.8.tgz", + "integrity": "sha512-1VrQlG8OzdyvvGZhGJFnaNE2P10Jjy/2FopnqbY0nSa/gr8If3iINxvOEW3cmVeoAYkmW0RsBazQecA2dBFOSw==", "cpu": [ "arm64" ], - "license": "MIT", "optional": true, "os": [ "darwin" @@ -2376,13 +2373,12 @@ } }, "node_modules/@next/swc-darwin-x64": { - "version": "14.2.7", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.7.tgz", - "integrity": "sha512-ys2cUgZYRc+CbyDeLAaAdZgS7N1Kpyy+wo0b/gAj+SeOeaj0Lw/q+G1hp+DuDiDAVyxLBCJXEY/AkhDmtihUTA==", + "version": "14.2.8", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.8.tgz", + "integrity": "sha512-87t3I86rNRSOJB1gXIUzaQWWSWrkWPDyZGsR0Z7JAPtLeX3uUOW2fHxl7dNWD2BZvbvftctTQjgtfpp7nMtmWg==", "cpu": [ "x64" ], - "license": "MIT", "optional": true, "os": [ "darwin" @@ -2392,13 +2388,12 @@ } }, "node_modules/@next/swc-linux-arm64-gnu": { - "version": "14.2.7", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.7.tgz", - "integrity": "sha512-2xoWtE13sUJ3qrC1lwE/HjbDPm+kBQYFkkiVECJWctRASAHQ+NwjMzgrfqqMYHfMxFb5Wws3w9PqzZJqKFdWcQ==", + "version": "14.2.8", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.8.tgz", + "integrity": "sha512-ta2sfVzbOpTbgBrF9HM5m+U58dv6QPuwU4n5EX4LLyCJGKc433Z0D9h9gay/HSOjLEXJ2fJYrMP5JYYbHdxhtw==", "cpu": [ "arm64" ], - "license": "MIT", "optional": true, "os": [ "linux" @@ -2408,13 +2403,12 @@ } }, "node_modules/@next/swc-linux-arm64-musl": { - "version": "14.2.7", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.7.tgz", - "integrity": "sha512-+zJ1gJdl35BSAGpkCbfyiY6iRTaPrt3KTl4SF/B1NyELkqqnrNX6cp4IjjjxKpd64/7enI0kf6b9O1Uf3cL0pw==", + "version": "14.2.8", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.8.tgz", + "integrity": "sha512-+IoLTPK6Z5uIgDhgeWnQF5/o5GBN7+zyUNrs4Bes1W3g9++YELb8y0unFybS8s87ntAKMDl6jeQ+mD7oNwp/Ng==", "cpu": [ "arm64" ], - "license": "MIT", "optional": true, "os": [ "linux" @@ -2424,13 +2418,12 @@ } }, "node_modules/@next/swc-linux-x64-gnu": { - "version": "14.2.7", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.7.tgz", - "integrity": "sha512-m6EBqrskeMUzykBrv0fDX/28lWIBGhMzOYaStp0ihkjzIYJiKUOzVYD1gULHc8XDf5EMSqoH/0/TRAgXqpQwmw==", + "version": "14.2.8", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.8.tgz", + "integrity": "sha512-pO+hVXC+mvzUOQJJRG4RX4wJsRJ5BkURSf6dD6EjUXAX4Ml9es1WsEfkaZ4lcpmFzFvY47IkDaffks/GdCn9ag==", "cpu": [ "x64" ], - "license": "MIT", "optional": true, "os": [ "linux" @@ -2440,13 +2433,12 @@ } }, "node_modules/@next/swc-linux-x64-musl": { - "version": "14.2.7", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.7.tgz", - "integrity": "sha512-gUu0viOMvMlzFRz1r1eQ7Ql4OE+hPOmA7smfZAhn8vC4+0swMZaZxa9CSIozTYavi+bJNDZ3tgiSdMjmMzRJlQ==", + "version": "14.2.8", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.8.tgz", + "integrity": "sha512-bCat9izctychCtf3uL1nqHq31N5e1VxvdyNcBQflkudPMLbxVnlrw45Vi87K+lt1CwrtVayHqzo4ie0Szcpwzg==", "cpu": [ "x64" ], - "license": "MIT", "optional": true, "os": [ "linux" @@ -2456,13 +2448,12 @@ } }, "node_modules/@next/swc-win32-arm64-msvc": { - "version": "14.2.7", - "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.7.tgz", - "integrity": "sha512-PGbONHIVIuzWlYmLvuFKcj+8jXnLbx4WrlESYlVnEzDsa3+Q2hI1YHoXaSmbq0k4ZwZ7J6sWNV4UZfx1OeOlbQ==", + "version": "14.2.8", + "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.8.tgz", + "integrity": "sha512-gbxfUaSPV7EyUobpavida2Hwi62GhSJaSg7iBjmBWoxkxlmETOD7U4tWt763cGIsyE6jM7IoNavq0BXqwdW2QA==", "cpu": [ "arm64" ], - "license": "MIT", "optional": true, "os": [ "win32" @@ -2472,13 +2463,12 @@ } }, "node_modules/@next/swc-win32-ia32-msvc": { - "version": "14.2.7", - "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.7.tgz", - "integrity": "sha512-BiSY5umlx9ed5RQDoHcdbuKTUkuFORDqzYKPHlLeS+STUWQKWziVOn3Ic41LuTBvqE0TRJPKpio9GSIblNR+0w==", + "version": "14.2.8", + "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.8.tgz", + "integrity": "sha512-PUXzEzjTTlUh3b5VAn1nlpwvujTnuCMMwbiCnaTazoVlN1nA3kWjlmp42IfURA2N/nyrlVEw7pURa/o4Qxj1cw==", "cpu": [ "ia32" ], - "license": "MIT", "optional": true, "os": [ "win32" @@ -2488,13 +2478,12 @@ } }, "node_modules/@next/swc-win32-x64-msvc": { - "version": "14.2.7", - "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.7.tgz", - "integrity": "sha512-pxsI23gKWRt/SPHFkDEsP+w+Nd7gK37Hpv0ngc5HpWy2e7cKx9zR/+Q2ptAUqICNTecAaGWvmhway7pj/JLEWA==", + "version": "14.2.8", + "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.8.tgz", + "integrity": "sha512-EnPKv0ttq02E9/1KZ/8Dn7kuutv6hy1CKc0HlNcvzOQcm4/SQtvfws5gY0zrG9tuupd3HfC2L/zcTrnBhpjTuQ==", "cpu": [ "x64" ], - "license": "MIT", "optional": true, "os": [ "win32" @@ -11662,12 +11651,11 @@ } }, "node_modules/next": { - "version": "14.2.7", - "resolved": "https://registry.npmjs.org/next/-/next-14.2.7.tgz", - "integrity": "sha512-4Qy2aK0LwH4eQiSvQWyKuC7JXE13bIopEQesWE0c/P3uuNRnZCQanI0vsrMLmUQJLAto+A+/8+sve2hd+BQuOQ==", - "license": "MIT", + "version": "14.2.8", + "resolved": "https://registry.npmjs.org/next/-/next-14.2.8.tgz", + "integrity": "sha512-EyEyJZ89r8C5FPlS/401AiF3O8jeMtHIE+bLom9MwcdWJJFBgRl+MR/2VgO0v5bI6tQORNY0a0DR5sjpFNrjbg==", "dependencies": { - "@next/env": "14.2.7", + "@next/env": "14.2.8", "@swc/helpers": "0.5.5", "busboy": "1.6.0", "caniuse-lite": "^1.0.30001579", @@ -11682,15 +11670,15 @@ "node": ">=18.17.0" }, "optionalDependencies": { - "@next/swc-darwin-arm64": "14.2.7", - "@next/swc-darwin-x64": "14.2.7", - "@next/swc-linux-arm64-gnu": "14.2.7", - "@next/swc-linux-arm64-musl": "14.2.7", - "@next/swc-linux-x64-gnu": "14.2.7", - "@next/swc-linux-x64-musl": "14.2.7", - "@next/swc-win32-arm64-msvc": "14.2.7", - "@next/swc-win32-ia32-msvc": "14.2.7", - "@next/swc-win32-x64-msvc": "14.2.7" + "@next/swc-darwin-arm64": "14.2.8", + "@next/swc-darwin-x64": "14.2.8", + "@next/swc-linux-arm64-gnu": "14.2.8", + "@next/swc-linux-arm64-musl": "14.2.8", + "@next/swc-linux-x64-gnu": "14.2.8", + "@next/swc-linux-x64-musl": "14.2.8", + "@next/swc-win32-arm64-msvc": "14.2.8", + "@next/swc-win32-ia32-msvc": "14.2.8", + "@next/swc-win32-x64-msvc": "14.2.8" }, "peerDependencies": { "@opentelemetry/api": "^1.1.0", From a990ad0c5e1f1226045d9bc1c2f283fce6b3ca60 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 5 Sep 2024 11:29:08 +0300 Subject: [PATCH 371/458] Bump @types/node from 22.5.3 to 22.5.4 in the definitely-typed group (#739) Bumps the definitely-typed group with 1 update: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node). Updates `@types/node` from 22.5.3 to 22.5.4 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) --- updated-dependencies: - dependency-name: "@types/node" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- internal/backend/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 124 ++++---------------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 10 files changed, 29 insertions(+), 113 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 027fd807..5f17cf08 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -28,7 +28,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.12", - "@types/node": "22.5.3", + "@types/node": "22.5.4", "@types/react": "18.3.5", "@types/react-dom": "18.3.0", "axios": "1.7.7", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 52a88820..5545aed8 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -22,7 +22,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.12", - "@types/node": "22.5.3", + "@types/node": "22.5.4", "@types/react": "18.3.5", "@types/react-dom": "18.3.0", "eslint": "8.57.0", diff --git a/internal/backend/package.json b/internal/backend/package.json index caaaa9c5..af6adba6 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.5.3", + "@types/node": "22.5.4", "pino-pretty": "11.2.2", "rimraf": "6.0.1", "tsx": "4.19.0", diff --git a/internal/next-common/package.json b/internal/next-common/package.json index 147b0983..45faf14e 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.5.3", + "@types/node": "22.5.4", "rimraf": "6.0.1", "typescript": "5.5.4" } diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index 7e26faa3..376861cb 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -16,7 +16,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "22.5.3", + "@types/node": "22.5.4", "rimraf": "6.0.1", "typescript": "5.5.4" } diff --git a/package-lock.json b/package-lock.json index b4ad6ede..9fd8bdd7 100644 --- a/package-lock.json +++ b/package-lock.json @@ -48,7 +48,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.12", - "@types/node": "22.5.3", + "@types/node": "22.5.4", "@types/react": "18.3.5", "@types/react-dom": "18.3.0", "axios": "1.7.7", @@ -62,16 +62,6 @@ "typescript": "5.5.4" } }, - "apps/cache-testing/node_modules/@types/node": { - "version": "22.5.3", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.3.tgz", - "integrity": "sha512-njripolh85IA9SQGTAqbmnNZTdxv7X/4OYGPz8tgy5JDr8MP+uDBa921GpYEoDDnwm0Hmn5ZPeJgiiSTPoOzkQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "undici-types": "~6.19.2" - } - }, "docs/cache-handler-docs": { "version": "0.1.0", "dependencies": { @@ -86,23 +76,13 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.12", - "@types/node": "22.5.3", + "@types/node": "22.5.4", "@types/react": "18.3.5", "@types/react-dom": "18.3.0", "eslint": "8.57.0", "typescript": "5.5.4" } }, - "docs/cache-handler-docs/node_modules/@types/node": { - "version": "22.5.3", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.3.tgz", - "integrity": "sha512-njripolh85IA9SQGTAqbmnNZTdxv7X/4OYGPz8tgy5JDr8MP+uDBa921GpYEoDDnwm0Hmn5ZPeJgiiSTPoOzkQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "undici-types": "~6.19.2" - } - }, "internal/backend": { "version": "0.0.0", "license": "MIT", @@ -112,23 +92,13 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.5.3", + "@types/node": "22.5.4", "pino-pretty": "11.2.2", "rimraf": "6.0.1", "tsx": "4.19.0", "typescript": "5.5.4" } }, - "internal/backend/node_modules/@types/node": { - "version": "22.5.3", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.3.tgz", - "integrity": "sha512-njripolh85IA9SQGTAqbmnNZTdxv7X/4OYGPz8tgy5JDr8MP+uDBa921GpYEoDDnwm0Hmn5ZPeJgiiSTPoOzkQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "undici-types": "~6.19.2" - } - }, "internal/eslint-config": { "name": "@repo/eslint-config", "version": "0.0.0", @@ -151,21 +121,11 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.5.3", + "@types/node": "22.5.4", "rimraf": "6.0.1", "typescript": "5.5.4" } }, - "internal/next-common/node_modules/@types/node": { - "version": "22.5.3", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.3.tgz", - "integrity": "sha512-njripolh85IA9SQGTAqbmnNZTdxv7X/4OYGPz8tgy5JDr8MP+uDBa921GpYEoDDnwm0Hmn5ZPeJgiiSTPoOzkQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "undici-types": "~6.19.2" - } - }, "internal/next-lru-cache": { "name": "@neshca/next-lru-cache", "version": "0.0.0", @@ -176,21 +136,11 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "22.5.3", + "@types/node": "22.5.4", "rimraf": "6.0.1", "typescript": "5.5.4" } }, - "internal/next-lru-cache/node_modules/@types/node": { - "version": "22.5.3", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.3.tgz", - "integrity": "sha512-njripolh85IA9SQGTAqbmnNZTdxv7X/4OYGPz8tgy5JDr8MP+uDBa921GpYEoDDnwm0Hmn5ZPeJgiiSTPoOzkQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "undici-types": "~6.19.2" - } - }, "internal/prettier-config": { "name": "@repo/prettier-config", "version": "0.0.0", @@ -1832,6 +1782,11 @@ "fs-extra": "^8.1.0" } }, + "node_modules/@manypkg/find-root/node_modules/@types/node": { + "version": "12.20.55", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", + "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" + }, "node_modules/@manypkg/find-root/node_modules/fs-extra": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", @@ -3321,10 +3276,12 @@ "license": "MIT" }, "node_modules/@types/node": { - "version": "12.20.55", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", - "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==", - "license": "MIT" + "version": "22.5.4", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.4.tgz", + "integrity": "sha512-FDuKUJQm/ju9fT/SeX/6+gBzoPzlVCzfzmGkwKvRHQVxi4BntVbyIwf6a4Xn62mrvndLiml6z/UBXIdEVjQLXg==", + "dependencies": { + "undici-types": "~6.19.2" + } }, "node_modules/@types/node-fetch": { "version": "2.6.11", @@ -15851,7 +15808,6 @@ "version": "6.19.8", "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.19.8.tgz", "integrity": "sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==", - "dev": true, "license": "MIT" }, "node_modules/unified": { @@ -16690,7 +16646,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.5.3", + "@types/node": "22.5.4", "rimraf": "6.0.1", "tsup": "8.2.4", "tsx": "4.19.0", @@ -16701,16 +16657,6 @@ "redis": ">=4.6" } }, - "packages/cache-handler/node_modules/@types/node": { - "version": "22.5.3", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.3.tgz", - "integrity": "sha512-njripolh85IA9SQGTAqbmnNZTdxv7X/4OYGPz8tgy5JDr8MP+uDBa921GpYEoDDnwm0Hmn5ZPeJgiiSTPoOzkQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "undici-types": "~6.19.2" - } - }, "packages/diffscribe": { "version": "0.2.4", "license": "MIT", @@ -16719,7 +16665,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.5.3", + "@types/node": "22.5.4", "rimraf": "6.0.1", "tsup": "8.2.4", "typescript": "5.5.4" @@ -16729,39 +16675,19 @@ "openai": "^4.12.3" } }, - "packages/diffscribe/node_modules/@types/node": { - "version": "22.5.3", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.3.tgz", - "integrity": "sha512-njripolh85IA9SQGTAqbmnNZTdxv7X/4OYGPz8tgy5JDr8MP+uDBa921GpYEoDDnwm0Hmn5ZPeJgiiSTPoOzkQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "undici-types": "~6.19.2" - } - }, "packages/json-replacer-reviver": { "name": "@neshca/json-replacer-reviver", "version": "1.1.3", "license": "MIT", "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.5.3", + "@types/node": "22.5.4", "rimraf": "6.0.1", "tsup": "8.2.4", "tsx": "4.19.0", "typescript": "5.5.4" } }, - "packages/json-replacer-reviver/node_modules/@types/node": { - "version": "22.5.3", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.3.tgz", - "integrity": "sha512-njripolh85IA9SQGTAqbmnNZTdxv7X/4OYGPz8tgy5JDr8MP+uDBa921GpYEoDDnwm0Hmn5ZPeJgiiSTPoOzkQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "undici-types": "~6.19.2" - } - }, "packages/server": { "name": "@neshca/server", "version": "1.1.2", @@ -16777,22 +16703,12 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.5.3", + "@types/node": "22.5.4", "rimraf": "6.0.1", "tsup": "8.2.4", "tsx": "4.19.0", "typescript": "5.5.4" } - }, - "packages/server/node_modules/@types/node": { - "version": "22.5.3", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.3.tgz", - "integrity": "sha512-njripolh85IA9SQGTAqbmnNZTdxv7X/4OYGPz8tgy5JDr8MP+uDBa921GpYEoDDnwm0Hmn5ZPeJgiiSTPoOzkQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "undici-types": "~6.19.2" - } } } } diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 2ae8791e..472f73bc 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -80,7 +80,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.5.3", + "@types/node": "22.5.4", "rimraf": "6.0.1", "tsup": "8.2.4", "tsx": "4.19.0", diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index a9945599..cb49a24c 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -25,7 +25,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.5.3", + "@types/node": "22.5.4", "rimraf": "6.0.1", "tsup": "8.2.4", "typescript": "5.5.4" diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index b4ddd081..1c6c42bd 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -28,7 +28,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.5.3", + "@types/node": "22.5.4", "rimraf": "6.0.1", "tsup": "8.2.4", "tsx": "4.19.0", diff --git a/packages/server/package.json b/packages/server/package.json index 1c8fc155..0bd62700 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -32,7 +32,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.5.3", + "@types/node": "22.5.4", "rimraf": "6.0.1", "tsup": "8.2.4", "tsx": "4.19.0", From 4ea551326ce21d279553248e6b2b07b0c7d9ef80 Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Thu, 5 Sep 2024 11:39:48 +0300 Subject: [PATCH 372/458] Forbid `lru-cache` 11 version (#740) --- .github/dependabot.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/dependabot.yml b/.github/dependabot.yml index 6f23012e..b694eff7 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -17,6 +17,8 @@ updates: versions: ['8.x.x'] - dependency-name: '@typescript-eslint/parser' versions: ['8.x.x'] + - dependency-name: 'lru-cache' + versions: ['11.x.x'] groups: next-js: patterns: From f54481525b7db02692d4ef2499e49c421a1c34f0 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 5 Sep 2024 12:13:33 +0300 Subject: [PATCH 373/458] Bump lru-cache from 10.3.0 to 10.4.3 (#741) Bumps [lru-cache](https://github.com/isaacs/node-lru-cache) from 10.3.0 to 10.4.3. - [Changelog](https://github.com/isaacs/node-lru-cache/blob/main/CHANGELOG.md) - [Commits](https://github.com/isaacs/node-lru-cache/compare/v10.3.0...v10.4.3) --- updated-dependencies: - dependency-name: lru-cache dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- internal/next-lru-cache/package.json | 2 +- package-lock.json | 14 +++++--------- packages/cache-handler/package.json | 2 +- 3 files changed, 7 insertions(+), 11 deletions(-) diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index 376861cb..7a109331 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -11,7 +11,7 @@ "clean": "rimraf ./.turbo ./node_modules" }, "dependencies": { - "lru-cache": "10.3.0" + "lru-cache": "10.4.3" }, "devDependencies": { "@neshca/next-common": "*", diff --git a/package-lock.json b/package-lock.json index 9fd8bdd7..71f3d0b8 100644 --- a/package-lock.json +++ b/package-lock.json @@ -131,7 +131,7 @@ "version": "0.0.0", "license": "MIT", "dependencies": { - "lru-cache": "10.3.0" + "lru-cache": "10.4.3" }, "devDependencies": { "@neshca/next-common": "*", @@ -9929,13 +9929,9 @@ } }, "node_modules/lru-cache": { - "version": "10.3.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.3.0.tgz", - "integrity": "sha512-CQl19J/g+Hbjbv4Y3mFNNXFEL/5t/KCg8POCuUqd4rMKjGG+j1ybER83hxV58zL+dFI1PTkt3GNFSHRt+d8qEQ==", - "license": "ISC", - "engines": { - "node": "14 || >=16.14" - } + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" }, "node_modules/markdown-extensions": { "version": "1.1.1", @@ -16640,7 +16636,7 @@ "license": "MIT", "dependencies": { "cluster-key-slot": "1.1.2", - "lru-cache": "10.3.0" + "lru-cache": "10.4.3" }, "devDependencies": { "@neshca/next-common": "*", diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 472f73bc..33c7e562 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -74,7 +74,7 @@ }, "dependencies": { "cluster-key-slot": "1.1.2", - "lru-cache": "10.3.0" + "lru-cache": "10.4.3" }, "devDependencies": { "@neshca/next-common": "*", From 579c82ba4da44e5c3870d338fabb6e3eab1fff16 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 7 Sep 2024 00:04:58 +0300 Subject: [PATCH 374/458] Bump @playwright/test from 1.46.1 to 1.47.0 (#742) Bumps [@playwright/test](https://github.com/microsoft/playwright) from 1.46.1 to 1.47.0. - [Release notes](https://github.com/microsoft/playwright/releases) - [Commits](https://github.com/microsoft/playwright/compare/v1.46.1...v1.47.0) --- updated-dependencies: - dependency-name: "@playwright/test" dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- package-lock.json | 27 ++++++++++++--------------- 2 files changed, 13 insertions(+), 16 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 5f17cf08..a5f72838 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -24,7 +24,7 @@ "devDependencies": { "@neshca/cache-handler": "*", "@next/eslint-plugin-next": "14.2.8", - "@playwright/test": "1.46.1", + "@playwright/test": "1.47.0", "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.12", diff --git a/package-lock.json b/package-lock.json index 71f3d0b8..5bf88a37 100644 --- a/package-lock.json +++ b/package-lock.json @@ -44,7 +44,7 @@ "devDependencies": { "@neshca/cache-handler": "*", "@next/eslint-plugin-next": "14.2.8", - "@playwright/test": "1.46.1", + "@playwright/test": "1.47.0", "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.12", @@ -2551,13 +2551,12 @@ } }, "node_modules/@playwright/test": { - "version": "1.46.1", - "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.46.1.tgz", - "integrity": "sha512-Fq6SwLujA/DOIvNC2EL/SojJnkKf/rAwJ//APpJJHRyMi1PdKrY3Az+4XNQ51N4RTbItbIByQ0jgd1tayq1aeA==", + "version": "1.47.0", + "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.47.0.tgz", + "integrity": "sha512-SgAdlSwYVpToI4e/IH19IHHWvoijAYH5hu2MWSXptRypLSnzj51PcGD+rsOXFayde4P9ZLi+loXVwArg6IUkCA==", "devOptional": true, - "license": "Apache-2.0", "dependencies": { - "playwright": "1.46.1" + "playwright": "1.47.0" }, "bin": { "playwright": "cli.js" @@ -12592,13 +12591,12 @@ } }, "node_modules/playwright": { - "version": "1.46.1", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.46.1.tgz", - "integrity": "sha512-oPcr1yqoXLCkgKtD5eNUPLiN40rYEM39odNpIb6VE6S7/15gJmA1NzVv6zJYusV0e7tzvkU/utBFNa/Kpxmwng==", + "version": "1.47.0", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.47.0.tgz", + "integrity": "sha512-jOWiRq2pdNAX/mwLiwFYnPHpEZ4rM+fRSQpRHwEwZlP2PUANvL3+aJOF/bvISMhFD30rqMxUB4RJx9aQbfh4Ww==", "devOptional": true, - "license": "Apache-2.0", "dependencies": { - "playwright-core": "1.46.1" + "playwright-core": "1.47.0" }, "bin": { "playwright": "cli.js" @@ -12611,11 +12609,10 @@ } }, "node_modules/playwright-core": { - "version": "1.46.1", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.46.1.tgz", - "integrity": "sha512-h9LqIQaAv+CYvWzsZ+h3RsrqCStkBHlgo6/TJlFst3cOTlLghBQlJwPOZKQJTKNaD3QIB7aAVQ+gfWbN3NXB7A==", + "version": "1.47.0", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.47.0.tgz", + "integrity": "sha512-1DyHT8OqkcfCkYUD9zzUTfg7EfTd+6a8MkD/NWOvjo0u/SCNd5YmY/lJwFvUZOxJbWNds+ei7ic2+R/cRz/PDg==", "devOptional": true, - "license": "Apache-2.0", "bin": { "playwright-core": "cli.js" }, From 19a2563ae33c7872c175d7aa9b06b75e719b317c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 9 Sep 2024 23:18:38 +0300 Subject: [PATCH 375/458] Bump the next-js group with 2 updates (#744) Bumps the next-js group with 2 updates: [next](https://github.com/vercel/next.js) and [@next/eslint-plugin-next](https://github.com/vercel/next.js/tree/HEAD/packages/eslint-plugin-next). Updates `next` from 14.2.8 to 14.2.9 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v14.2.8...v14.2.9) Updates `@next/eslint-plugin-next` from 14.2.8 to 14.2.9 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/commits/v14.2.9/packages/eslint-plugin-next) --- updated-dependencies: - dependency-name: next dependency-type: direct:production update-type: version-update:semver-patch dependency-group: next-js - dependency-name: "@next/eslint-plugin-next" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: next-js ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 4 +- docs/cache-handler-docs/package.json | 4 +- internal/next-common/package.json | 2 +- package-lock.json | 102 +++++++++++++-------------- 4 files changed, 56 insertions(+), 56 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index a5f72838..7ca64586 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -17,13 +17,13 @@ "start": "dotenv -e .env.local -v SERVER_STARTED=1 node .next/standalone/apps/cache-testing/server.js" }, "dependencies": { - "next": "14.2.8", + "next": "14.2.9", "react": "18.3.1", "react-dom": "18.3.1" }, "devDependencies": { "@neshca/cache-handler": "*", - "@next/eslint-plugin-next": "14.2.8", + "@next/eslint-plugin-next": "14.2.9", "@playwright/test": "1.47.0", "@repo/eslint-config": "*", "@repo/typescript-config": "*", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 5545aed8..7137f887 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -11,14 +11,14 @@ "start:docs": "next start" }, "dependencies": { - "next": "14.2.8", + "next": "14.2.9", "nextra": "2.13.4", "nextra-theme-docs": "2.13.4", "react": "18.3.1", "react-dom": "18.3.1" }, "devDependencies": { - "@next/eslint-plugin-next": "14.2.8", + "@next/eslint-plugin-next": "14.2.9", "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.12", diff --git a/internal/next-common/package.json b/internal/next-common/package.json index 45faf14e..a4cea6f9 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -11,7 +11,7 @@ "clean": "rimraf ./.turbo ./node_modules" }, "dependencies": { - "next": "14.2.8" + "next": "14.2.9" }, "devDependencies": { "@repo/typescript-config": "*", diff --git a/package-lock.json b/package-lock.json index 5bf88a37..296eb492 100644 --- a/package-lock.json +++ b/package-lock.json @@ -37,13 +37,13 @@ "version": "0.0.0", "license": "MIT", "dependencies": { - "next": "14.2.8", + "next": "14.2.9", "react": "18.3.1", "react-dom": "18.3.1" }, "devDependencies": { "@neshca/cache-handler": "*", - "@next/eslint-plugin-next": "14.2.8", + "@next/eslint-plugin-next": "14.2.9", "@playwright/test": "1.47.0", "@repo/eslint-config": "*", "@repo/typescript-config": "*", @@ -65,14 +65,14 @@ "docs/cache-handler-docs": { "version": "0.1.0", "dependencies": { - "next": "14.2.8", + "next": "14.2.9", "nextra": "2.13.4", "nextra-theme-docs": "2.13.4", "react": "18.3.1", "react-dom": "18.3.1" }, "devDependencies": { - "@next/eslint-plugin-next": "14.2.8", + "@next/eslint-plugin-next": "14.2.9", "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.12", @@ -117,7 +117,7 @@ "version": "0.0.0", "license": "MIT", "dependencies": { - "next": "14.2.8" + "next": "14.2.9" }, "devDependencies": { "@repo/typescript-config": "*", @@ -2214,14 +2214,14 @@ "link": true }, "node_modules/@next/env": { - "version": "14.2.8", - "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.8.tgz", - "integrity": "sha512-L44a+ynqkolyNBnYfF8VoCiSrjSZWgEHYKkKLGcs/a80qh7AkfVUD/MduVPgdsWZ31tgROR+yJRA0PZjSVBXWQ==" + "version": "14.2.9", + "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.9.tgz", + "integrity": "sha512-hnDAoDPMii31V0ivibI8p6b023jOF1XblWTVjsDUoZKwnZlaBtJFZKDwFqi22R8r9i6W08dThUWU7Bsh2Rg8Ww==" }, "node_modules/@next/eslint-plugin-next": { - "version": "14.2.8", - "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.2.8.tgz", - "integrity": "sha512-ue5vcq9Fjk3asACRDrzYjcGMEN7pMMDQ5zUD+FenkqvlPCVUD1x7PxBNOLfPYDZOrk/Vnl4GHmjj2mZDqPW8TQ==", + "version": "14.2.9", + "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.2.9.tgz", + "integrity": "sha512-tmLXuDNfPTqoFuSfsd9Q4R96SS/UCKTPtBnnR+cKDcbh8xZU+126vZnRWH1WEpOmS4Vl2Hy/X6SPmgOGZzn+hA==", "dev": true, "dependencies": { "glob": "10.3.10" @@ -2313,9 +2313,9 @@ } }, "node_modules/@next/swc-darwin-arm64": { - "version": "14.2.8", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.8.tgz", - "integrity": "sha512-1VrQlG8OzdyvvGZhGJFnaNE2P10Jjy/2FopnqbY0nSa/gr8If3iINxvOEW3cmVeoAYkmW0RsBazQecA2dBFOSw==", + "version": "14.2.9", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.9.tgz", + "integrity": "sha512-/kfQifl3uLYi3DlwFlzCkgxe6fprJNLzzTUFknq3M5wGYicDIbdGlxUl6oHpVLJpBB/CBY3Y//gO6alz/K4NWA==", "cpu": [ "arm64" ], @@ -2328,9 +2328,9 @@ } }, "node_modules/@next/swc-darwin-x64": { - "version": "14.2.8", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.8.tgz", - "integrity": "sha512-87t3I86rNRSOJB1gXIUzaQWWSWrkWPDyZGsR0Z7JAPtLeX3uUOW2fHxl7dNWD2BZvbvftctTQjgtfpp7nMtmWg==", + "version": "14.2.9", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.9.tgz", + "integrity": "sha512-tK/RyhCmOCiXQ9IVdFrBbZOf4/1+0RSuJkebXU2uMEsusS51TjIJO4l8ZmEijH9gZa0pJClvmApRHi7JuBqsRw==", "cpu": [ "x64" ], @@ -2343,9 +2343,9 @@ } }, "node_modules/@next/swc-linux-arm64-gnu": { - "version": "14.2.8", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.8.tgz", - "integrity": "sha512-ta2sfVzbOpTbgBrF9HM5m+U58dv6QPuwU4n5EX4LLyCJGKc433Z0D9h9gay/HSOjLEXJ2fJYrMP5JYYbHdxhtw==", + "version": "14.2.9", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.9.tgz", + "integrity": "sha512-tS5eqwsp2nO7mzywRUuFYmefNZsUKM/mTG3exK2jIHv9TEVklE1SByB1KMhFkqlit1PxS9YK1tV8BOV90Wpbrw==", "cpu": [ "arm64" ], @@ -2358,9 +2358,9 @@ } }, "node_modules/@next/swc-linux-arm64-musl": { - "version": "14.2.8", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.8.tgz", - "integrity": "sha512-+IoLTPK6Z5uIgDhgeWnQF5/o5GBN7+zyUNrs4Bes1W3g9++YELb8y0unFybS8s87ntAKMDl6jeQ+mD7oNwp/Ng==", + "version": "14.2.9", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.9.tgz", + "integrity": "sha512-8svpeTFNAMTUMKQbEzE8qRAwl9o7mNBv7LR1bmSkQvo1oy4WrNyZbhWsldOiKrc4mZ5dfQkGYsI9T75mIFMfeA==", "cpu": [ "arm64" ], @@ -2373,9 +2373,9 @@ } }, "node_modules/@next/swc-linux-x64-gnu": { - "version": "14.2.8", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.8.tgz", - "integrity": "sha512-pO+hVXC+mvzUOQJJRG4RX4wJsRJ5BkURSf6dD6EjUXAX4Ml9es1WsEfkaZ4lcpmFzFvY47IkDaffks/GdCn9ag==", + "version": "14.2.9", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.9.tgz", + "integrity": "sha512-0HNulLWpKTB7H5BhHCkEhcRAnWUHeAYCftrrGw3QC18+ZywTdAoPv/zEqKy/0adqt+ks4JDdlgSQ1lNKOKjo0A==", "cpu": [ "x64" ], @@ -2388,9 +2388,9 @@ } }, "node_modules/@next/swc-linux-x64-musl": { - "version": "14.2.8", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.8.tgz", - "integrity": "sha512-bCat9izctychCtf3uL1nqHq31N5e1VxvdyNcBQflkudPMLbxVnlrw45Vi87K+lt1CwrtVayHqzo4ie0Szcpwzg==", + "version": "14.2.9", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.9.tgz", + "integrity": "sha512-hhVFViPHLAVUJRNtwwm609p9ozWajOmRvzOZzzKXgiVGwx/CALxlMUeh+M+e0Zj6orENhWLZeilOPHpptuENsA==", "cpu": [ "x64" ], @@ -2403,9 +2403,9 @@ } }, "node_modules/@next/swc-win32-arm64-msvc": { - "version": "14.2.8", - "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.8.tgz", - "integrity": "sha512-gbxfUaSPV7EyUobpavida2Hwi62GhSJaSg7iBjmBWoxkxlmETOD7U4tWt763cGIsyE6jM7IoNavq0BXqwdW2QA==", + "version": "14.2.9", + "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.9.tgz", + "integrity": "sha512-p/v6XlOdrk06xfN9z4evLNBqftVQUWiyduQczCwSj7hNh8fWTbzdVxsEiNOcajMXJbQiaX/ZzZdFgKVmmJnnGQ==", "cpu": [ "arm64" ], @@ -2418,9 +2418,9 @@ } }, "node_modules/@next/swc-win32-ia32-msvc": { - "version": "14.2.8", - "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.8.tgz", - "integrity": "sha512-PUXzEzjTTlUh3b5VAn1nlpwvujTnuCMMwbiCnaTazoVlN1nA3kWjlmp42IfURA2N/nyrlVEw7pURa/o4Qxj1cw==", + "version": "14.2.9", + "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.9.tgz", + "integrity": "sha512-IcW9dynWDjMK/0M05E3zopbRen7v0/yEaMZbHFOSS1J/w+8YG3jKywOGZWNp/eCUVtUUXs0PW+7Lpz8uLu+KQA==", "cpu": [ "ia32" ], @@ -2433,9 +2433,9 @@ } }, "node_modules/@next/swc-win32-x64-msvc": { - "version": "14.2.8", - "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.8.tgz", - "integrity": "sha512-EnPKv0ttq02E9/1KZ/8Dn7kuutv6hy1CKc0HlNcvzOQcm4/SQtvfws5gY0zrG9tuupd3HfC2L/zcTrnBhpjTuQ==", + "version": "14.2.9", + "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.9.tgz", + "integrity": "sha512-gcbpoXyWZdVOBgNa5BRzynrL5UR1nb2ZT38yKgnphYU9UHjeecnylMHntrQiMg/QtONDcJPFC/PmsS47xIRYoA==", "cpu": [ "x64" ], @@ -11603,11 +11603,11 @@ } }, "node_modules/next": { - "version": "14.2.8", - "resolved": "https://registry.npmjs.org/next/-/next-14.2.8.tgz", - "integrity": "sha512-EyEyJZ89r8C5FPlS/401AiF3O8jeMtHIE+bLom9MwcdWJJFBgRl+MR/2VgO0v5bI6tQORNY0a0DR5sjpFNrjbg==", + "version": "14.2.9", + "resolved": "https://registry.npmjs.org/next/-/next-14.2.9.tgz", + "integrity": "sha512-3CzBNo6BuJnRjcQvRw+irnU1WiuJNZEp+dkzkt91y4jeIDN/Emg95F+takSYiLpJ/HkxClVQRyqiTwYce5IVqw==", "dependencies": { - "@next/env": "14.2.8", + "@next/env": "14.2.9", "@swc/helpers": "0.5.5", "busboy": "1.6.0", "caniuse-lite": "^1.0.30001579", @@ -11622,15 +11622,15 @@ "node": ">=18.17.0" }, "optionalDependencies": { - "@next/swc-darwin-arm64": "14.2.8", - "@next/swc-darwin-x64": "14.2.8", - "@next/swc-linux-arm64-gnu": "14.2.8", - "@next/swc-linux-arm64-musl": "14.2.8", - "@next/swc-linux-x64-gnu": "14.2.8", - "@next/swc-linux-x64-musl": "14.2.8", - "@next/swc-win32-arm64-msvc": "14.2.8", - "@next/swc-win32-ia32-msvc": "14.2.8", - "@next/swc-win32-x64-msvc": "14.2.8" + "@next/swc-darwin-arm64": "14.2.9", + "@next/swc-darwin-x64": "14.2.9", + "@next/swc-linux-arm64-gnu": "14.2.9", + "@next/swc-linux-arm64-musl": "14.2.9", + "@next/swc-linux-x64-gnu": "14.2.9", + "@next/swc-linux-x64-musl": "14.2.9", + "@next/swc-win32-arm64-msvc": "14.2.9", + "@next/swc-win32-ia32-msvc": "14.2.9", + "@next/swc-win32-x64-msvc": "14.2.9" }, "peerDependencies": { "@opentelemetry/api": "^1.1.0", From 84e9a8179af1eabb55f4ef4e369fa9e7927546e9 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 9 Sep 2024 23:34:24 +0300 Subject: [PATCH 376/458] Bump typescript from 5.5.4 to 5.6.2 (#745) Bumps [typescript](https://github.com/microsoft/TypeScript) from 5.5.4 to 5.6.2. - [Release notes](https://github.com/microsoft/TypeScript/releases) - [Changelog](https://github.com/microsoft/TypeScript/blob/main/azure-pipelines.release.yml) - [Commits](https://github.com/microsoft/TypeScript/compare/v5.5.4...v5.6.2) --- updated-dependencies: - dependency-name: typescript dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- internal/backend/package.json | 2 +- internal/eslint-config/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 27 ++++++++++----------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 11 files changed, 23 insertions(+), 24 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 7ca64586..b9873e3d 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -39,6 +39,6 @@ "redis": "4.7.0", "rimraf": "6.0.1", "tsx": "4.19.0", - "typescript": "5.5.4" + "typescript": "5.6.2" } } diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 7137f887..84ef1c8b 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -26,6 +26,6 @@ "@types/react": "18.3.5", "@types/react-dom": "18.3.0", "eslint": "8.57.0", - "typescript": "5.5.4" + "typescript": "5.6.2" } } diff --git a/internal/backend/package.json b/internal/backend/package.json index af6adba6..75297537 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -19,6 +19,6 @@ "pino-pretty": "11.2.2", "rimraf": "6.0.1", "tsx": "4.19.0", - "typescript": "5.5.4" + "typescript": "5.6.2" } } diff --git a/internal/eslint-config/package.json b/internal/eslint-config/package.json index 4743228e..0f60738c 100644 --- a/internal/eslint-config/package.json +++ b/internal/eslint-config/package.json @@ -12,6 +12,6 @@ "eslint-config-prettier": "9.1.0", "eslint-config-turbo": "2.1.1", "eslint-plugin-only-warn": "1.1.0", - "typescript": "5.5.4" + "typescript": "5.6.2" } } diff --git a/internal/next-common/package.json b/internal/next-common/package.json index a4cea6f9..5df31eb8 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -17,6 +17,6 @@ "@repo/typescript-config": "*", "@types/node": "22.5.4", "rimraf": "6.0.1", - "typescript": "5.5.4" + "typescript": "5.6.2" } } diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index 7a109331..1f00b38d 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -18,6 +18,6 @@ "@repo/typescript-config": "*", "@types/node": "22.5.4", "rimraf": "6.0.1", - "typescript": "5.5.4" + "typescript": "5.6.2" } } diff --git a/package-lock.json b/package-lock.json index 296eb492..a78a1548 100644 --- a/package-lock.json +++ b/package-lock.json @@ -59,7 +59,7 @@ "redis": "4.7.0", "rimraf": "6.0.1", "tsx": "4.19.0", - "typescript": "5.5.4" + "typescript": "5.6.2" } }, "docs/cache-handler-docs": { @@ -80,7 +80,7 @@ "@types/react": "18.3.5", "@types/react-dom": "18.3.0", "eslint": "8.57.0", - "typescript": "5.5.4" + "typescript": "5.6.2" } }, "internal/backend": { @@ -96,7 +96,7 @@ "pino-pretty": "11.2.2", "rimraf": "6.0.1", "tsx": "4.19.0", - "typescript": "5.5.4" + "typescript": "5.6.2" } }, "internal/eslint-config": { @@ -109,7 +109,7 @@ "eslint-config-prettier": "9.1.0", "eslint-config-turbo": "2.1.1", "eslint-plugin-only-warn": "1.1.0", - "typescript": "5.5.4" + "typescript": "5.6.2" } }, "internal/next-common": { @@ -123,7 +123,7 @@ "@repo/typescript-config": "*", "@types/node": "22.5.4", "rimraf": "6.0.1", - "typescript": "5.5.4" + "typescript": "5.6.2" } }, "internal/next-lru-cache": { @@ -138,7 +138,7 @@ "@repo/typescript-config": "*", "@types/node": "22.5.4", "rimraf": "6.0.1", - "typescript": "5.5.4" + "typescript": "5.6.2" } }, "internal/prettier-config": { @@ -15755,11 +15755,10 @@ } }, "node_modules/typescript": { - "version": "5.5.4", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.5.4.tgz", - "integrity": "sha512-Mtq29sKDAEYP7aljRgtPOpTvOfbwRWlS6dPRzwjdE+C0R4brX/GUyhHSecbHMFLNBLcJIPt9nl9yG5TZ1weH+Q==", + "version": "5.6.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.6.2.tgz", + "integrity": "sha512-NW8ByodCSNCwZeghjN3o+JX5OFH0Ojg6sadjEKY4huZ52TqbJTJnDo5+Tw98lSy63NZvi4n+ez5m2u5d4PkZyw==", "dev": true, - "license": "Apache-2.0", "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" @@ -16643,7 +16642,7 @@ "rimraf": "6.0.1", "tsup": "8.2.4", "tsx": "4.19.0", - "typescript": "5.5.4" + "typescript": "5.6.2" }, "peerDependencies": { "next": ">=13.5.1", @@ -16661,7 +16660,7 @@ "@types/node": "22.5.4", "rimraf": "6.0.1", "tsup": "8.2.4", - "typescript": "5.5.4" + "typescript": "5.6.2" }, "peerDependencies": { "dotenv": "^16.3.1", @@ -16678,7 +16677,7 @@ "rimraf": "6.0.1", "tsup": "8.2.4", "tsx": "4.19.0", - "typescript": "5.5.4" + "typescript": "5.6.2" } }, "packages/server": { @@ -16700,7 +16699,7 @@ "rimraf": "6.0.1", "tsup": "8.2.4", "tsx": "4.19.0", - "typescript": "5.5.4" + "typescript": "5.6.2" } } } diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 33c7e562..42147d71 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -84,7 +84,7 @@ "rimraf": "6.0.1", "tsup": "8.2.4", "tsx": "4.19.0", - "typescript": "5.5.4" + "typescript": "5.6.2" }, "peerDependencies": { "next": ">=13.5.1", diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index cb49a24c..025842a3 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -28,7 +28,7 @@ "@types/node": "22.5.4", "rimraf": "6.0.1", "tsup": "8.2.4", - "typescript": "5.5.4" + "typescript": "5.6.2" }, "peerDependencies": { "dotenv": "^16.3.1", diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 1c6c42bd..b5f23925 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -32,6 +32,6 @@ "rimraf": "6.0.1", "tsup": "8.2.4", "tsx": "4.19.0", - "typescript": "5.5.4" + "typescript": "5.6.2" } } diff --git a/packages/server/package.json b/packages/server/package.json index 0bd62700..4a154244 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -36,7 +36,7 @@ "rimraf": "6.0.1", "tsup": "8.2.4", "tsx": "4.19.0", - "typescript": "5.5.4" + "typescript": "5.6.2" }, "distTags": [ "next13.5", From 978c3e259f44da50d31676de9b41acd2c9252aaa Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Tue, 10 Sep 2024 15:49:17 +0300 Subject: [PATCH 377/458] Implement pre-populating the cache with the initial data (#743) This PR delivers the highly anticipated feature of pre-populating the cache with the initial data at application startup, resulting in improved performance. It introduces a new `registerInitialCache` function that takes a `CacheHandler` class (not an instance) and uses it to populate all cache stores. We must do this process after the build to guarantee that the initial cache is generated and the `prerender-manifest.json` is created. The instrumentation hook allows us to run a function just before the server starts, providing the perfect moment to populate the cache. By using this approach, we eliminate the necessity for any additional JS or shell scripts. _Note: This is an experimental feature and might change in future releases. To use it, you'll need to enable the `experimental.instrumentationHook` option in your `next.config.js`._ Fix #514 --- .changeset/cyan-suns-rest.md | 5 + .changeset/metal-dingos-cheat.md | 5 + README.md | 2 +- apps/cache-testing/.env.example | 2 +- .../cache-handler-redis-stack.js | 80 ++++++ apps/cache-testing/create-instances.sh | 5 + apps/cache-testing/next.config.mjs | 1 + apps/cache-testing/src/instrumentation.ts | 7 + .../src/pages/api-reference/handler.mdx | 6 +- .../pages/api-reference/ttl-parameters.mdx | 2 +- .../src/pages/handlers/local-lru.mdx | 2 +- docs/cache-handler-docs/src/pages/index.mdx | 2 +- .../src/pages/installation.mdx | 37 ++- docs/cache-handler-docs/src/pages/server.mdx | 47 ---- .../src/pages/troubleshooting.mdx | 2 +- .../src/pages/usage/_meta.json | 3 +- .../pages/usage/build-id-as-prefix-key.mdx | 2 +- .../pages/usage/creating-a-custom-handler.mdx | 4 +- .../pages/usage/on-demand-revalidation.mdx | 4 +- .../pages/usage/populating-cache-on-start.mdx | 38 +++ docs/cache-handler-docs/theme.config.jsx | 11 +- packages/cache-handler/README.md | 4 +- packages/cache-handler/package.json | 7 + packages/cache-handler/src/cache-handler.ts | 34 ++- packages/cache-handler/src/handlers/server.ts | 2 + .../src/helpers/get-tags-from-headers.ts | 23 ++ .../src/helpers/get-tags-from-page-data.ts | 15 - .../instrumentation/instrumentation.cache.ts | 262 ++++++++++++++++++ .../src/instrumentation/instrumentation.ts | 1 + packages/cache-handler/tsup.config.ts | 8 +- packages/server/README.md | 2 + turbo.json | 2 +- 32 files changed, 521 insertions(+), 106 deletions(-) create mode 100644 .changeset/cyan-suns-rest.md create mode 100644 .changeset/metal-dingos-cheat.md create mode 100644 apps/cache-testing/cache-handler-redis-stack.js create mode 100644 apps/cache-testing/src/instrumentation.ts delete mode 100644 docs/cache-handler-docs/src/pages/server.mdx create mode 100644 docs/cache-handler-docs/src/pages/usage/populating-cache-on-start.mdx create mode 100644 packages/cache-handler/src/helpers/get-tags-from-headers.ts delete mode 100644 packages/cache-handler/src/helpers/get-tags-from-page-data.ts create mode 100644 packages/cache-handler/src/instrumentation/instrumentation.cache.ts create mode 100644 packages/cache-handler/src/instrumentation/instrumentation.ts diff --git a/.changeset/cyan-suns-rest.md b/.changeset/cyan-suns-rest.md new file mode 100644 index 00000000..6b1d1103 --- /dev/null +++ b/.changeset/cyan-suns-rest.md @@ -0,0 +1,5 @@ +--- +'@neshca/server': minor +--- + +Make `@neshca/server` deprecated. `@neshca/cache-handler/server` will be removed in the next major release. diff --git a/.changeset/metal-dingos-cheat.md b/.changeset/metal-dingos-cheat.md new file mode 100644 index 00000000..f9190651 --- /dev/null +++ b/.changeset/metal-dingos-cheat.md @@ -0,0 +1,5 @@ +--- +'@neshca/cache-handler': minor +--- + +Add `registerInitialCache` instrumentation hook for pre-populating the cache with the initial data on application start. diff --git a/README.md b/README.md index c2495c14..44e76a02 100644 --- a/README.md +++ b/README.md @@ -4,7 +4,7 @@ [![Dependencies](https://img.shields.io/npm/dm/@neshca/cache-handler)](https://www.npmjs.com/package/@neshca/cache-handler) [![License](https://img.shields.io/npm/l/express.svg)](https://github.com/caching-tools/next-shared-cache/blob/canary/packages/cache-handler/LICENSE) -Welcome to [`@neshca/cache-handler`](./packages/cache-handler/README.md), a specialized ISR/Data cache API crafted for Next.js applications. This library simplifies configuring shared cache strategies in distributed environments, such as multiple, independent application instances. It offers a flexible and easy-to-integrate solution for custom cache strategies, especially for Redis. +Welcome to [`@neshca/cache-handler`](./packages/cache-handler/README.md) (pronounced /ˈnæʃkʌ/), a specialized ISR/Data cache API crafted for Next.js applications. This library simplifies configuring shared cache strategies in distributed environments, such as multiple, independent application instances. It offers a flexible and easy-to-integrate solution for custom cache strategies, especially for Redis. ### Features diff --git a/apps/cache-testing/.env.example b/apps/cache-testing/.env.example index e80641f9..8f0bc9d3 100644 --- a/apps/cache-testing/.env.example +++ b/apps/cache-testing/.env.example @@ -3,4 +3,4 @@ REMOTE_CACHE_SERVER_BASE_URL=http://localhost:8080 HOSTNAME=localhost PPR_ENABLED=false NEXT_PRIVATE_DEBUG_CACHE=1 -HANDLER_PATH=./cache-handler-redis-stack +HANDLER_PATH=./cache-handler-redis-stack.mjs diff --git a/apps/cache-testing/cache-handler-redis-stack.js b/apps/cache-testing/cache-handler-redis-stack.js new file mode 100644 index 00000000..3e2cc048 --- /dev/null +++ b/apps/cache-testing/cache-handler-redis-stack.js @@ -0,0 +1,80 @@ +// @ts-check + +const { CacheHandler } = require('@neshca/cache-handler'); +const createLruHandler = require('@neshca/cache-handler/local-lru').default; +const createRedisHandler = require('@neshca/cache-handler/redis-stack').default; +const { createClient } = require('redis'); + +CacheHandler.onCreation(async () => { + if (!process.env.REDIS_URL) { + console.warn('Make sure that REDIS_URL is added to the .env.local file and loaded properly.'); + } + + let client; + + try { + // Create a Redis client. + client = createClient({ + url: process.env.REDIS_URL, + name: `cache-handler:${process.env.PORT ?? process.pid}`, + }); + + // Redis won't work without error handling. https://github.com/redis/node-redis?tab=readme-ov-file#events + client.on('error', (error) => { + if (typeof process.env.NEXT_PRIVATE_DEBUG_CACHE !== 'undefined') { + console.error('Redis client error:', error); + } + }); + } catch (error) { + console.warn('Failed to create Redis client:', error); + } + + if (client) { + try { + console.info('Connecting Redis client...'); + + // Wait for the client to connect. + // Caveat: This will block the server from starting until the client is connected. + // And there is no timeout. Make your own timeout if needed. + await client.connect(); + console.info('Redis client connected.'); + } catch (error) { + console.warn('Failed to connect Redis client:', error); + + console.warn('Disconnecting the Redis client...'); + // Try to disconnect the client to stop it from reconnecting. + client + .disconnect() + .then(() => { + console.info('Redis client disconnected.'); + }) + .catch(() => { + console.warn('Failed to quit the Redis client after failing to connect.'); + }); + } + } + + /** @type {import("@neshca/cache-handler").Handler | null} */ + let handler; + + if (client) { + // Create the `redis-stack` Handler if the client is available. + handler = createRedisHandler({ + client, + keyPrefix: 'JSON:', + timeoutMs: 1000, + }); + } else { + // Fallback to LRU handler if Redis client is not available. + // The application will still work, but the cache will be in-memory only and not shared. + handler = createLruHandler(); + console.warn('Falling back to LRU handler because Redis client is not available.'); + } + + return { + handlers: [handler], + ttl: { defaultStaleAge: 60, estimateExpireAge: (staleAge) => staleAge * 2 }, + }; +}); + +module.exports = CacheHandler; diff --git a/apps/cache-testing/create-instances.sh b/apps/cache-testing/create-instances.sh index b7200190..d8403735 100755 --- a/apps/cache-testing/create-instances.sh +++ b/apps/cache-testing/create-instances.sh @@ -5,6 +5,7 @@ STANDALONE_DIR="$PWD/.next/standalone" APP_DIR="$STANDALONE_DIR/apps/cache-testing" PUBLIC_DIR="$PWD/public" STATIC_DIR="$PWD/.next/static" +FETCH_CACHE_DIR="$PWD/.next/cache/fetch-cache" INSTANCES_DIR="$PWD/.next/__instances" copy_dir() { @@ -20,6 +21,10 @@ copy_dir "$PUBLIC_DIR/" "$APP_DIR/public" # Copy static directory to standalone app/.next directory copy_dir "$STATIC_DIR/" "$APP_DIR/.next/static" +# Copy fetch cache directory to standalone app/.next directory +mkdir -p "$APP_DIR/.next/cache/fetch-cache/" +cp $FETCH_CACHE_DIR/* $APP_DIR/.next/cache/fetch-cache/ + create_instance_dir() { if ! mkdir -p "$INSTANCES_DIR/$1"; then echo "Failed to create $INSTANCES_DIR/$1 directory" diff --git a/apps/cache-testing/next.config.mjs b/apps/cache-testing/next.config.mjs index b77f7d2c..ab6f57d8 100644 --- a/apps/cache-testing/next.config.mjs +++ b/apps/cache-testing/next.config.mjs @@ -16,6 +16,7 @@ const nextConfig = { ppr: process.env.PPR_ENABLED === 'true', largePageDataBytes: 1024 * 1024, // 1MB outputFileTracingRoot: path.join(import.meta.dirname, '../../'), + instrumentationHook: true, }, }; diff --git a/apps/cache-testing/src/instrumentation.ts b/apps/cache-testing/src/instrumentation.ts new file mode 100644 index 00000000..be821101 --- /dev/null +++ b/apps/cache-testing/src/instrumentation.ts @@ -0,0 +1,7 @@ +export async function register() { + if (process.env.NEXT_RUNTIME === 'nodejs') { + const { registerInitialCache } = await import('@neshca/cache-handler/instrumentation'); + const CacheHandler = (await import('../cache-handler-redis-stack.mjs')).default; + await registerInitialCache(CacheHandler); + } +} diff --git a/docs/cache-handler-docs/src/pages/api-reference/handler.mdx b/docs/cache-handler-docs/src/pages/api-reference/handler.mdx index df3a2f14..e69bba9d 100644 --- a/docs/cache-handler-docs/src/pages/api-reference/handler.mdx +++ b/docs/cache-handler-docs/src/pages/api-reference/handler.mdx @@ -50,7 +50,7 @@ A Promise that resolves when the value has been successfully set in the cache. Sets or updates a value in the cache store. The `CacheHandler` class calls this method when a cache entry is created or updated. The method should return a Promise that resolves when the value has been successfully set in the cache. It will be called for each Handler from the `handlers` array in parallel. -You should consider the `lifespan` parameter when setting the cache entry. If no `revalidate` option or `revalidate: false` is set in your [`getStaticProps`](https://nextjs.org/docs/pages/api-reference/functions/get-static-props#revalidate), the `lifespan` parameter will be `null` and you should consider the cache entry as always fresh and never stale. +You should consider the `lifespan` parameter when setting the cache entry. If no `revalidate` option or `revalidate: false` is set in your [`getStaticProps` ↗](https://nextjs.org/docs/pages/api-reference/functions/get-static-props#revalidate), the `lifespan` parameter will be `null` and you should consider the cache entry as always fresh and never stale. Use the absolute time (`expireAt`) to set an expiration time for the cache entry in your cache store to be in sync with the file system cache. @@ -66,9 +66,9 @@ A Promise that resolves when the cache entry has been successfully deleted. #### Overview -This method is called by the `CacheHandler` class when [`revalidateTag`](https://nextjs.org/docs/app/api-reference/functions/revalidateTag) is called. It should delete all cache entries that are associated with the specified tag. It will be called for each Handler from the `handlers` array in parallel. +This method is called by the `CacheHandler` class when [`revalidateTag` ↗](https://nextjs.org/docs/app/api-reference/functions/revalidateTag) is called. It should delete all cache entries that are associated with the specified tag. It will be called for each Handler from the `handlers` array in parallel. -The tag list is stored in the `CacheHandlerValue` object and can be accessed via the `tags` property. If you use a remote cache store like Redis, it will be too expensive to retrieve all keys just to check tags. So, you may want to store tags in a separate set inside your cache store or [create an index](https://redis.io/docs/interact/search-and-query/indexing/) for tags. +The tag list is stored in the `CacheHandlerValue` object and can be accessed via the `tags` property. If you use a remote cache store like Redis, it will be too expensive to retrieve all keys just to check tags. So, you may want to store tags in a separate set inside your cache store or [create an index ↗](https://redis.io/docs/interact/search-and-query/indexing/) for tags. ### `delete` diff --git a/docs/cache-handler-docs/src/pages/api-reference/ttl-parameters.mdx b/docs/cache-handler-docs/src/pages/api-reference/ttl-parameters.mdx index 59508baa..ff7a5da7 100644 --- a/docs/cache-handler-docs/src/pages/api-reference/ttl-parameters.mdx +++ b/docs/cache-handler-docs/src/pages/api-reference/ttl-parameters.mdx @@ -27,7 +27,7 @@ The provided callback will be wrapped in a normalizing function to ensure that t - `staleAge` - The stale age in seconds. Defaults to 1 year. - The stale age is the time you have provided in the `revalidate` option in your [`getStaticProps`](https://nextjs.org/docs/pages/api-reference/functions/get-static-props#revalidate) or in the [`fetch`](https://nextjs.org/docs/app/building-your-application/data-fetching/fetching-caching-and-revalidating#time-based-revalidation) method. If you did not specify the `revalidate` option, the stale age will be the default stale age. + The stale age is the time you have provided in the `revalidate` option in your [`getStaticProps` ↗](https://nextjs.org/docs/pages/api-reference/functions/get-static-props#revalidate) or in the [`fetch` ↗](https://nextjs.org/docs/app/building-your-application/data-fetching/fetching-caching-and-revalidating#time-based-revalidation) method. If you did not specify the `revalidate` option, the stale age will be the default stale age. After the stale age, the cache entry is considered stale, can be served from the cache, and should be revalidated. Revalidation is handled by the `CacheHandler` class. diff --git a/docs/cache-handler-docs/src/pages/handlers/local-lru.mdx b/docs/cache-handler-docs/src/pages/handlers/local-lru.mdx index b421f401..777597ab 100644 --- a/docs/cache-handler-docs/src/pages/handlers/local-lru.mdx +++ b/docs/cache-handler-docs/src/pages/handlers/local-lru.mdx @@ -13,7 +13,7 @@ const localHandler = createLocalHandler({ // ... ``` -The `local-lru` Handler uses a [`lru-cache`](https://www.npmjs.com/package/lru-cache) instance as the cache store. It stores the cache in memory and evicts the least recently used entries when the cache reaches its limits. You can use this Handler as a fallback cache when the shared cache is unavailable. +The `local-lru` Handler uses a [`lru-cache` ↗](https://www.npmjs.com/package/lru-cache) instance as the cache store. It stores the cache in memory and evicts the least recently used entries when the cache reaches its limits. You can use this Handler as a fallback cache when the shared cache is unavailable. The `local-lru` Handler stores the cache in memory. Make sure to set the limits according to your server's memory diff --git a/docs/cache-handler-docs/src/pages/index.mdx b/docs/cache-handler-docs/src/pages/index.mdx index 1e05198c..b39bede2 100644 --- a/docs/cache-handler-docs/src/pages/index.mdx +++ b/docs/cache-handler-docs/src/pages/index.mdx @@ -1,4 +1,4 @@ -Welcome to `@neshca/cache-handler`, a specialized ISR/Data cache API crafted for Next.js applications. This library simplifies configuring shared cache strategies in distributed environments, such as multiple, independent application instances. It offers a flexible and easy-to-integrate solution for custom cache strategies, especially for Redis. +Welcome to `@neshca/cache-handler` (pronounced /ˈnæʃkʌ/), a specialized ISR/Data cache API crafted for Next.js applications. This library simplifies configuring shared cache strategies in distributed environments, such as multiple, independent application instances. It offers a flexible and easy-to-integrate solution for custom cache strategies, especially for Redis. --- diff --git a/docs/cache-handler-docs/src/pages/installation.mdx b/docs/cache-handler-docs/src/pages/installation.mdx index b7516c04..4ee47df6 100644 --- a/docs/cache-handler-docs/src/pages/installation.mdx +++ b/docs/cache-handler-docs/src/pages/installation.mdx @@ -89,8 +89,13 @@ pnpm create next-app --example cache-handler-redis cache-handler-redis-app export default CacheHandler; ``` + + Do not import @neshca/cache-handler to your client components or pages. It is only meant to be used in{' '} + cache-handler.mjs files. + + 3. **Integrate with Next.js**: - Update your `next.config.js` to utilize the cache handler, ensuring it's only active in production: + Update your `next.config.js` to utilize the cache handler, ensuring it's only active in production: ```js filename="next.config.js" copy const nextConfig = { @@ -100,15 +105,37 @@ pnpm create next-app --example cache-handler-redis cache-handler-redis-app incrementalCacheHandlerPath: process.env.NODE_ENV === 'production' ? require.resolve('./cache-handler.mjs') : undefined, }, */ + experimental: { + // This is required for the experimental feature of pre-populating the cache with the initial data + instrumentationHook: true, + }, }; module.exports = nextConfig; ``` - - Do not import @neshca/cache-handler to your components or pages. It is only meant to be used in{' '} - cache-handler.mjs files. - +4. **Populate the Cache with Prerendered Pages**: + Next.js pre-renders pages during the build process and stores them on the disk. This procedure bypasses the `CacheHandler`, so pre-rendered pages and routes are not added to the CacheHandler cache stores. To populate the cache with the initial data, you can utilize the `registerInitialCache` function from `@neshca/cache-handler/instrumentation`: + + ```js filename="instrumentation.ts" copy + export async function register() { + if (process.env.NEXT_RUNTIME === 'nodejs') { + const { registerInitialCache } = await import('@neshca/cache-handler/instrumentation'); + // Assuming that your CacheHandler configuration is in the root of the project and the instrumentation is in the src directory. + // Please adjust the path accordingly. + // CommonJS CacheHandler configuration is also supported. + const CacheHandler = (await import('../cache-handler.mjs')).default; + await registerInitialCache(CacheHandler); + } + } + ``` + + + Use NEXT_RUNTIME environment variable to ensure that the instrumentation is only executed in Node.js. + Use dynamic import to avoid bundling issues. + + + This instrumentation will fill the cache with the initial data when the application starts. The duration of this process may vary based on the number and size of pages, routes, and fetch calls. For more information refer to the [Populating the Cache with the initial data](/usage/populating-cache-on-start) section. ### Running Your Application diff --git a/docs/cache-handler-docs/src/pages/server.mdx b/docs/cache-handler-docs/src/pages/server.mdx deleted file mode 100644 index 22542c5b..00000000 --- a/docs/cache-handler-docs/src/pages/server.mdx +++ /dev/null @@ -1,47 +0,0 @@ -import { Callout } from 'nextra/components'; - -## `@neshca/server` example - -### Setup and run `@neshca/server` - -To install the `@neshca/server` package and its peer dependencies, run the following command: - -```sh npm2yarn copy -npm i @neshca/server pino fastify pino-pretty -``` - -Run the server with the following command: - -```sh copy -PORT=8080 HOST=localhost npx next-cache-server -``` - -Ensure that the `@neshca/server` is running when you build your Next.js app. - -### Configure Next.js to use the server: - - - In this example, we assume that in your deployment, you have `REMOTE_CACHE_SERVER_BASE_URL` environment variable set - to the URL of your `@neshca/server`. You can use any other way to set the URL. - - -Create a file called `cache-handler.mjs` next to your `next.config.js` with the following contents: - -```js filename="cache-handler.mjs" copy -import { CacheHandler } from '@neshca/cache-handler'; -import createServerHandler from '@neshca/cache-handler/server'; - -const baseUrl = process.env.REMOTE_CACHE_SERVER_BASE_URL ?? 'http://localhost:8080'; - -CacheHandler.onCreation(() => { - const httpHandler = createServerHandler({ - baseUrl, - }); - - return { - handlers: [httpHandler], - }; -}); - -export default CacheHandler; -``` diff --git a/docs/cache-handler-docs/src/pages/troubleshooting.mdx b/docs/cache-handler-docs/src/pages/troubleshooting.mdx index eac892cc..444a93c6 100644 --- a/docs/cache-handler-docs/src/pages/troubleshooting.mdx +++ b/docs/cache-handler-docs/src/pages/troubleshooting.mdx @@ -82,4 +82,4 @@ If the cache handler is not active: When you build or run your application, `NEXT_PRIVATE_DEBUG_CACHE 1` should appear in your console. -3. If you're using a third-party library to retrieve data or database records (e.g., `axios`, `node-fetch`, `pg`) within the App directory, ensure you're using the [`unstable_cache`](https://nextjs.org/docs/app/api-reference/functions/unstable_cache). By default, Next.js will cache only native fetch calls. +3. If you're using a third-party library to retrieve data or database records (e.g., `axios`, `node-fetch`, `pg`) within the App directory, ensure you're using the [`unstable_cache` ↗](https://nextjs.org/docs/app/api-reference/functions/unstable_cache). By default, Next.js will cache only native fetch calls. diff --git a/docs/cache-handler-docs/src/pages/usage/_meta.json b/docs/cache-handler-docs/src/pages/usage/_meta.json index f2e2fcad..c2fc6ee2 100644 --- a/docs/cache-handler-docs/src/pages/usage/_meta.json +++ b/docs/cache-handler-docs/src/pages/usage/_meta.json @@ -3,5 +3,6 @@ "on-demand-revalidation": "On-demand revalidation", "opt-out-cache-on-build": "Opt out the cache on Build", "development-environment": "", - "build-id-as-prefix-key": "Build Id as a Prefix Key" + "build-id-as-prefix-key": "Build Id as a Prefix Key", + "populating-cache-on-start": "Populating the Cache with Pre-rendered Pages" } diff --git a/docs/cache-handler-docs/src/pages/usage/build-id-as-prefix-key.mdx b/docs/cache-handler-docs/src/pages/usage/build-id-as-prefix-key.mdx index 0910a9b7..4c34e420 100644 --- a/docs/cache-handler-docs/src/pages/usage/build-id-as-prefix-key.mdx +++ b/docs/cache-handler-docs/src/pages/usage/build-id-as-prefix-key.mdx @@ -1,6 +1,6 @@ import { Callout } from 'nextra/components'; -Let me quote from the Next.js [documentation](https://nextjs.org/docs/pages/building-your-application/deploying#build-cache). +Let me quote from the Next.js [documentation ↗](https://nextjs.org/docs/pages/building-your-application/deploying#build-cache). Next.js generates an ID during `next build` to identify which version of your application is being served. The same build should be used and boot up multiple containers. diff --git a/docs/cache-handler-docs/src/pages/usage/creating-a-custom-handler.mdx b/docs/cache-handler-docs/src/pages/usage/creating-a-custom-handler.mdx index 88f81cea..6d4d3757 100644 --- a/docs/cache-handler-docs/src/pages/usage/creating-a-custom-handler.mdx +++ b/docs/cache-handler-docs/src/pages/usage/creating-a-custom-handler.mdx @@ -1,6 +1,6 @@ ## Custom Redis strings example -This example demonstrates how to create a full-featured custom Redis handler for `@neshca/cache-handler`. The handler uses the `redis` package to connect to a Redis instance and store cache data. The guide is presented as a code snippet with comments explaining each step. You may also want to learn how Redis works and how to use it in your application. For more information, see the [Redis documentation](https://redis.io/documentation). +This example demonstrates how to create a full-featured custom Redis handler for `@neshca/cache-handler`. The handler uses the `redis` package to connect to a Redis instance and store cache data. The guide is presented as a code snippet with comments explaining each step. You may also want to learn how Redis works and how to use it in your application. For more information, see the [Redis documentation ↗](https://redis.io/documentation). ### Prerequisites @@ -10,7 +10,7 @@ Install the `redis` package: npm install redis ``` -Then, install the Redis server locally or use a cloud-based Redis service. Learn how to run Redis locally by following the [Install Redis Stack documentation](https://redis.io/docs/install/install-stack/docker/). Redis Stack also includes a RedisInsight tool to manage and monitor your Redis instance. +Then, install the Redis server locally or use a cloud-based Redis service. Learn how to run Redis locally by following the [Install Redis Stack documentation ↗](https://redis.io/docs/install/install-stack/docker/). Redis Stack also includes a RedisInsight tool to manage and monitor your Redis instance. ### Guide diff --git a/docs/cache-handler-docs/src/pages/usage/on-demand-revalidation.mdx b/docs/cache-handler-docs/src/pages/usage/on-demand-revalidation.mdx index d87f8d11..e615843b 100644 --- a/docs/cache-handler-docs/src/pages/usage/on-demand-revalidation.mdx +++ b/docs/cache-handler-docs/src/pages/usage/on-demand-revalidation.mdx @@ -8,7 +8,7 @@ Next.js provides a way to revalidate a page or a result of a `fetch` call on dem The Pages Router supports only the `response.revalidate(path)`. -See [Using On-Demand Revalidation](https://nextjs.org/docs/pages/building-your-application/data-fetching/incremental-static-regeneration#using-on-demand-revalidation) in the Next.js documentation. +See [Using On-Demand Revalidation ↗](https://nextjs.org/docs/pages/building-your-application/data-fetching/incremental-static-regeneration#using-on-demand-revalidation) in the Next.js documentation. #### `response.revalidate(path)` caveat @@ -18,7 +18,7 @@ Calling `response.revalidate(path)` will synchronously call `getStaticProps` and The App Router supports both `revalidatePath` and `revalidateTag` functions. These functions will remove the cache values from the store. -See [On-demand Revalidation](https://nextjs.org/docs/app/building-your-application/data-fetching/fetching-caching-and-revalidating#on-demand-revalidation) in the Next.js documentation. +See [On-demand Revalidation ↗](https://nextjs.org/docs/app/building-your-application/data-fetching/fetching-caching-and-revalidating#on-demand-revalidation) in the Next.js documentation. #### `revalidatePath` caveat diff --git a/docs/cache-handler-docs/src/pages/usage/populating-cache-on-start.mdx b/docs/cache-handler-docs/src/pages/usage/populating-cache-on-start.mdx new file mode 100644 index 00000000..4c39e244 --- /dev/null +++ b/docs/cache-handler-docs/src/pages/usage/populating-cache-on-start.mdx @@ -0,0 +1,38 @@ +import { Callout } from 'nextra/components'; + +## Populating the Cache with the Initial Data + +This feature is experimental. To use it, you must explicitly opt in by defining [`experimental.instrumentationHook = true;` ↗](https://nextjs.org/docs/app/api-reference/next-config-js/instrumentationHook) in your `next.config.js` file. + +Next.js pre-renders pages during the build process and stores them on the disk. This procedure bypasses the `CacheHandler`, so pre-rendered pages and routes are not added to the CacheHandler cache stores. To populate the cache with the initial data, you can utilize the `registerInitialCache` function from `@neshca/cache-handler/instrumentation`: + +```js filename="instrumentation.ts" copy +export async function register() { + if (process.env.NEXT_RUNTIME === 'nodejs') { + const { registerInitialCache } = await import('@neshca/cache-handler/instrumentation'); + // Assuming that your CacheHandler configuration is in the root of the project and the instrumentation is in the src directory. + // Please adjust the path accordingly. + // CommonJS CacheHandler configuration is also supported. + const CacheHandler = (await import('../cache-handler.mjs')).default; + + await registerInitialCache(CacheHandler, { + // By default, it populates the cache with pre-rendered pages, routes, and fetch calls. + // You can disable these features by setting the options to false. + // For example, if you want to populate the cache with only pre-rendered pages, you can set the options as follows: + fetch: false, + routes: false, + }); + } +} +``` + + + Use NEXT_RUNTIME environment variable to ensure that the instrumentation is only executed in Node.js. Use + dynamic import to avoid bundling issues. + + +This instrumentation will fill the cache with the initial data when the application starts. The duration of this process may vary based on the number and size of pages, routes, and fetch calls. + +### Usful links + +- [Instrumentation Next.js documentation ↗](https://nextjs.org/docs/app/building-your-application/optimizing/instrumentation) diff --git a/docs/cache-handler-docs/theme.config.jsx b/docs/cache-handler-docs/theme.config.jsx index 483280db..228eb5d5 100644 --- a/docs/cache-handler-docs/theme.config.jsx +++ b/docs/cache-handler-docs/theme.config.jsx @@ -53,20 +53,19 @@ export default { ), }, banner: { - key: 'version-1.6.0', + key: 'version-1.7.0', text: (
- 🎉 1.6.0 is out! It features synchronous{' '} + 🎉 Version 1.7.0 is out! It has{' '} - redis-stack + a new instrumentation hook {' '} - Handler creation function! + to pre-populate the cache with pre-rendered pages on startup.
), }, diff --git a/packages/cache-handler/README.md b/packages/cache-handler/README.md index 71b1f299..aaa8a812 100644 --- a/packages/cache-handler/README.md +++ b/packages/cache-handler/README.md @@ -8,7 +8,7 @@ ## Latest Release -🎉 **Version 1.6.0** is here! Now featuring synchronous [`redis-stack`](https://caching-tools.github.io/next-shared-cache/handlers/redis-stack) Handler creation function. +🎉 **Version 1.7.0** has been released! It now includes the [`registerInitialCache` instrumentation hook ↗](https://caching-tools.github.io/next-shared-cache/usage/populating-cache-on-start), which allows the cache to be pre-populated with the initial data when the application starts. Do not forget the [`experimental-redis-cluster`](https://caching-tools.github.io/next-shared-cache/handlers/experimental-redis-cluster) Handler for Redis Cluster support from a previous release. @@ -27,7 +27,7 @@ Check out the [changelog](https://github.com/caching-tools/next-shared-cache/blo ## Overview -Welcome to `@neshca/cache-handler`, a specialized ISR/Data cache API crafted for Next.js applications. This library simplifies configuring shared cache strategies in distributed environments, such as multiple, independent application instances. It offers a flexible and easy-to-integrate solution for custom cache strategies, especially for Redis. +Welcome to `@neshca/cache-handler` (pronounced /ˈnæʃkʌ/), a specialized ISR/Data cache API crafted for Next.js applications. This library simplifies configuring shared cache strategies in distributed environments, such as multiple, independent application instances. It offers a flexible and easy-to-integrate solution for custom cache strategies, especially for Redis. ### Features diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 42147d71..9871389d 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -35,6 +35,10 @@ "require": "./dist/functions/functions.cjs", "import": "./dist/functions/functions.js" }, + "./instrumentation": { + "require": "./dist/instrumentation/instrumentation.cjs", + "import": "./dist/instrumentation/instrumentation.js" + }, "./*": { "require": "./dist/handlers/*.cjs", "import": "./dist/handlers/*.js" @@ -62,6 +66,9 @@ ], "local-lru": [ "dist/handlers/local-lru.d.ts" + ], + "instrumentation": [ + "dist/instrumentation/instrumentation.d.ts" ] } }, diff --git a/packages/cache-handler/src/cache-handler.ts b/packages/cache-handler/src/cache-handler.ts index 6913f511..fc8f3c4b 100644 --- a/packages/cache-handler/src/cache-handler.ts +++ b/packages/cache-handler/src/cache-handler.ts @@ -15,7 +15,7 @@ import type { } from '@neshca/next-common'; import { createValidatedAgeEstimationFunction } from './helpers/create-validated-age-estimation-function'; -import { getTagsFromPageData } from './helpers/get-tags-from-page-data'; +import { getTagsFromHeaders } from './helpers/get-tags-from-headers'; export type { CacheHandlerValue }; @@ -113,7 +113,7 @@ export type Handler = { * Read more about the `lifespan` parameter: {@link LifespanParameters}. * * ### LifespanParameters - * If no `revalidate` option or `revalidate: false` is set in your [`getStaticProps`](https://nextjs.org/docs/pages/api-reference/functions/get-static-props#revalidate) + * If no `revalidate` option or `revalidate: false` is set in your [`getStaticProps` ↗](https://nextjs.org/docs/pages/api-reference/functions/get-static-props#revalidate) * the `lifespan` parameter will be `null` and you should consider the cache entry as always fresh and never stale. * * Use the absolute time (`expireAt`) to set and expiration time for the cache entry in your cache store to be in sync with the file system cache. @@ -123,7 +123,7 @@ export type Handler = { set: (key: string, value: CacheHandlerValue) => Promise; /** * Deletes all cache entries that are associated with the specified tag. - * See [fetch `options.next.tags` and `revalidateTag`](https://nextjs.org/docs/app/building-your-application/caching#fetch-optionsnexttags-and-revalidatetag) + * See [fetch `options.next.tags` and `revalidateTag` ↗](https://nextjs.org/docs/app/building-your-application/caching#fetch-optionsnexttags-and-revalidatetag) * * @param tag - A string representing the cache tag associated with the data you want to revalidate. * Must be less than or equal to 256 characters. This value is case-sensitive. @@ -392,14 +392,12 @@ export class CacheHandler implements NextCacheHandler { pageHtmlHandle = await fsPromises.open(pageHtmlPath, 'r'); - const [pageHtmlFile, { mtimeMs }, pageDataFile] = await Promise.all([ + const [pageHtmlFile, { mtimeMs }, pageData] = await Promise.all([ pageHtmlHandle.readFile('utf-8'), pageHtmlHandle.stat(), - fsPromises.readFile(pageDataPath, 'utf-8'), + fsPromises.readFile(pageDataPath, 'utf-8').then((data) => JSON.parse(data) as object), ]); - const pageData = JSON.parse(pageDataFile) as object; - if (CacheHandler.#debug) { console.info( '[CacheHandler] [handler: %s] [method: %s] [key: %s] %s', @@ -479,9 +477,9 @@ export class CacheHandler implements NextCacheHandler { /** * Returns the cache control parameters based on the last modified timestamp and revalidate option. * - * @param lastModified The last modified timestamp in milliseconds. + * @param lastModified - The last modified timestamp in milliseconds. * - * @param revalidate The revalidate option, representing the maximum age of stale data in seconds. + * @param revalidate - The revalidate option, representing the maximum age of stale data in seconds. * * @returns The cache control parameters including expire age, expire at, last modified at, stale age, stale at and revalidate. * @@ -725,7 +723,10 @@ export class CacheHandler implements NextCacheHandler { } } - private constructor(context: FileSystemCacheContext) { + /** + * Creates a new CacheHandler instance. Constructor is intended for internal use only. + */ + constructor(context: FileSystemCacheContext) { CacheHandler.#context = context; if (CacheHandler.#debug) { @@ -773,7 +774,7 @@ export class CacheHandler implements NextCacheHandler { async set( cacheKey: CacheHandlerParametersSet[0], incrementalCacheValue: CacheHandlerParametersSet[1], - ctx: CacheHandlerParametersSet[2], + ctx: CacheHandlerParametersSet[2] & { neshca_lastModified?: number }, ): Promise { await CacheHandler.#configureCacheHandler(); @@ -786,21 +787,26 @@ export class CacheHandler implements NextCacheHandler { ); } - const { revalidate, tags = [] } = ctx; + const { revalidate, tags = [], neshca_lastModified } = ctx; - const lastModified = Date.now(); + const lastModified = Math.round(neshca_lastModified ?? Date.now()); const hasFallbackFalse = CacheHandler.#fallbackFalseRoutes.has(cacheKey); const lifespan = hasFallbackFalse ? null : CacheHandler.#getLifespanParameters(lastModified, revalidate); + // If expireAt is in the past, do not cache + if (lifespan !== null && Date.now() > lifespan.expireAt * 1000) { + return; + } + let cacheHandlerValueTags = tags; let value = incrementalCacheValue; switch (value?.kind) { case 'PAGE': { - cacheHandlerValueTags = getTagsFromPageData(value); + cacheHandlerValueTags = getTagsFromHeaders(value.headers ?? {}); break; } case 'ROUTE': { diff --git a/packages/cache-handler/src/handlers/server.ts b/packages/cache-handler/src/handlers/server.ts index e341c3cc..909bd227 100644 --- a/packages/cache-handler/src/handlers/server.ts +++ b/packages/cache-handler/src/handlers/server.ts @@ -22,6 +22,8 @@ export type ServerCacheHandlerOptions = { * It includes methods to get, set, and manage cache values and revalidated tags, * leveraging server-side storage. * + * @deprecated This Handler is deprecated since @neshca/cache-handler version 1.7.0 and will be removed in the next major release. + * * @param options - The configuration options for the server Handler. See {@link ServerCacheHandlerOptions}. * * @returns An object representing the cache, with methods for cache operations. diff --git a/packages/cache-handler/src/helpers/get-tags-from-headers.ts b/packages/cache-handler/src/helpers/get-tags-from-headers.ts new file mode 100644 index 00000000..14233a80 --- /dev/null +++ b/packages/cache-handler/src/helpers/get-tags-from-headers.ts @@ -0,0 +1,23 @@ +// biome-ignore lint/style/useNodejsImportProtocol: RollupError: "OutgoingHttpHeaders" is not exported by "node:http" +import type { OutgoingHttpHeaders } from 'http'; + +/** + * Retrieves the cache tags from the headers. + * + * @param headers - Headers object. + * + * @returns An array of cache tags. + */ +export function getTagsFromHeaders(headers: OutgoingHttpHeaders): string[] { + const tagsHeader = headers['x-next-cache-tags']; + + if (Array.isArray(tagsHeader)) { + return tagsHeader; + } + + if (typeof tagsHeader === 'string') { + return tagsHeader.split(','); + } + + return []; +} diff --git a/packages/cache-handler/src/helpers/get-tags-from-page-data.ts b/packages/cache-handler/src/helpers/get-tags-from-page-data.ts deleted file mode 100644 index 02d4dbeb..00000000 --- a/packages/cache-handler/src/helpers/get-tags-from-page-data.ts +++ /dev/null @@ -1,15 +0,0 @@ -import type { IncrementalCachedPageValue } from '@neshca/next-common'; - -/** - * Retrieves the cache tags from the given page data. - * - * @param data - The incremental cached page value. - * - * @returns An array of cache tags without the internal Next.js tags. - */ -export function getTagsFromPageData(data: IncrementalCachedPageValue): string[] { - const headers = data.headers?.['x-next-cache-tags']; - const pageTags = typeof headers === 'string' ? headers.split(',') : []; - - return pageTags; -} diff --git a/packages/cache-handler/src/instrumentation/instrumentation.cache.ts b/packages/cache-handler/src/instrumentation/instrumentation.cache.ts new file mode 100644 index 00000000..b6741866 --- /dev/null +++ b/packages/cache-handler/src/instrumentation/instrumentation.cache.ts @@ -0,0 +1,262 @@ +import { promises as fsPromises } from 'node:fs'; +import path from 'node:path'; +import type { CachedFetchValue } from '@neshca/next-common'; +import { PRERENDER_MANIFEST, SERVER_DIRECTORY } from 'next/constants'; +import type { PrerenderManifest } from 'next/dist/build'; +import type { RouteMetadata } from 'next/dist/export/routes/types'; +import { CACHE_ONE_YEAR } from 'next/dist/lib/constants'; +import type { Revalidate } from 'next/dist/server/lib/revalidate'; +import { getTagsFromHeaders } from '../helpers/get-tags-from-headers'; + +type CacheHandlerType = typeof import('../cache-handler').CacheHandler; + +/** + * Options for the `registerInitialCache` instrumentation. + * + * @since 1.7.0 + */ +export type RegisterInitialCacheOptions = { + /** + * Whether to populate the cache with fetch calls. + * + * @default true + * + * @since 1.7.0 + */ + fetch?: boolean; + /** + * Whether to populate the cache with pre-rendered pages. + * + * @default true + * + * @since 1.7.0 + */ + pages?: boolean; + /** + * Whether to populate the cache with routes. + * + * @default true + * + * @since 1.7.0 + */ + routes?: boolean; +}; + +/** + * Populates the cache with the initial data. + * + * By default, it includes the following: + * - Pre-rendered pages + * - Routes + * - Fetch calls + * + * @param CacheHandler - The configured CacheHandler class, not an instance. + * + * @param [options={}] - Options for the instrumentation. See {@link RegisterInitialCacheOptions}. + * + * @param [options.fetch=true] - Whether to populate the cache with fetch calls. + * + * @param [options.pages=true] - Whether to populate the cache with pre-rendered pages. + * + * @param [options.routes=true] - Whether to populate the cache with routes. + * + * @example file: `instrumentation.ts` + * + * ```js + * export async function register() { + * if (process.env.NEXT_RUNTIME === 'nodejs') { + * const { registerInitialCache } = await import('@neshca/cache-handler/instrumentation'); + * // Assuming that your CacheHandler configuration is in the root of the project and the instrumentation is in the src directory. + * // Please adjust the path accordingly. + * // CommonJS CacheHandler configuration is also supported. + * const CacheHandler = (await import('../cache-handler.mjs')).default; + * await registerInitialCache(CacheHandler); + * } + * } + * ``` + * + * @since 1.7.0 + */ +export async function registerInitialCache(CacheHandler: CacheHandlerType, options: RegisterInitialCacheOptions = {}) { + const nextJsPath = path.join(process.cwd(), '.next'); + const prerenderManifestPath = path.join(nextJsPath, PRERENDER_MANIFEST); + const serverDistDir = path.join(nextJsPath, SERVER_DIRECTORY); + const fetchCacheDir = path.join(nextJsPath, 'cache', 'fetch-cache'); + + const populateFetch = options.fetch ?? true; + const populatePages = options.pages ?? true; + const populateRoutes = options.routes ?? true; + + let prerenderManifest: PrerenderManifest | undefined; + + try { + const prerenderManifestData = await fsPromises.readFile(prerenderManifestPath, 'utf-8'); + prerenderManifest = JSON.parse(prerenderManifestData) as PrerenderManifest; + + if (prerenderManifest.version !== 4) { + throw new Error('Invalid prerender manifest version. Expected version 4.'); + } + } catch (error) { + console.warn( + '[CacheHandler] [%s] %s %s', + 'instrumentation.cache', + 'Failed to read prerender manifest', + `Error: ${error}`, + ); + } + + if (!prerenderManifest) { + return; + } + + const context = { + serverDistDir, + dev: process.env.NODE_ENV === 'development', + }; + + const cacheHandler = new CacheHandler(context as ConstructorParameters[0]); + + type Router = 'pages' | 'app'; + type CacheKind = 'PAGE' | 'ROUTE'; + + async function setCacheForRoute(route: string, router: Router, cacheKind: CacheKind, revalidate: Revalidate) { + const pathToRouteFiles = path.join(serverDistDir, router, route); + + if (cacheKind === 'ROUTE') { + let lastModified: number | undefined; + + try { + const stats = await fsPromises.stat(`${pathToRouteFiles}.body`); + lastModified = stats.mtimeMs; + } catch (_) { + return; + } + + const [body, meta] = await Promise.all([ + fsPromises.readFile(`${pathToRouteFiles}.body`), + fsPromises + .readFile(`${pathToRouteFiles}.meta`, 'utf-8') + .then((data) => JSON.parse(data) as RouteMetadata), + ]); + + try { + if (!(meta.headers && meta.status)) { + return; + } + + await cacheHandler.set( + route, + { + kind: 'ROUTE', + body, + headers: meta.headers, + status: meta.status, + }, + { revalidate, neshca_lastModified: lastModified, tags: getTagsFromHeaders(meta.headers) }, + ); + } catch (_) { + return; + } + } + + const isAppRouter = router === 'app'; + + let lastModified: number | undefined; + + try { + const stats = await fsPromises.stat(`${pathToRouteFiles}.html`); + lastModified = stats.mtimeMs; + } catch (_) { + return; + } + + let html: string | undefined; + let pageData: string | object | undefined; + let meta: RouteMetadata | undefined; + + try { + [html, pageData, meta] = await Promise.all([ + fsPromises.readFile(`${pathToRouteFiles}.html`, 'utf-8'), + fsPromises + .readFile(`${pathToRouteFiles}.${isAppRouter ? 'rsc' : 'json'}`, 'utf-8') + .then((data) => (isAppRouter ? data : (JSON.parse(data) as object))), + isAppRouter + ? fsPromises + .readFile(`${pathToRouteFiles}.meta`, 'utf-8') + .then((data) => JSON.parse(data) as RouteMetadata) + : undefined, + ]); + } catch (_) { + return; + } + + try { + await cacheHandler.set( + route, + { + kind: 'PAGE', + html, + pageData, + postponed: meta?.postponed, + headers: meta?.headers, + status: meta?.status, + }, + { revalidate, neshca_lastModified: lastModified }, + ); + } catch (_) { + return; + } + } + + for (const [route, { dataRoute, initialRevalidateSeconds }] of Object.entries(prerenderManifest.routes)) { + let router: Router | undefined; + let cacheKind: CacheKind | undefined; + + if (populatePages && dataRoute?.endsWith('.json')) { + router = 'pages'; + cacheKind = 'PAGE'; + } else if (populatePages && dataRoute?.endsWith('.rsc')) { + router = 'app'; + cacheKind = 'PAGE'; + } else if (populateRoutes && dataRoute === null) { + router = 'app'; + cacheKind = 'ROUTE'; + } + + if (router && cacheKind) { + await setCacheForRoute(route, router, cacheKind, initialRevalidateSeconds); + } + } + + if (!populateFetch) { + return; + } + + const fetchFiles = await fsPromises.readdir(fetchCacheDir); + + for (const fetchCacheKey of fetchFiles) { + const filePath = path.join(fetchCacheDir, fetchCacheKey); + + let lastModified: number | undefined; + + try { + const stats = await fsPromises.stat(filePath); + lastModified = stats.mtimeMs; + } catch (_) { + return; + } + + const fetchCache = await fsPromises + .readFile(filePath, 'utf-8') + .then((data) => JSON.parse(data) as CachedFetchValue); + + // HACK: By default, Next.js sets the revalidate option to CACHE_ONE_YEAR if the revalidate option is set + const revalidate = fetchCache.revalidate === CACHE_ONE_YEAR ? false : fetchCache.revalidate; + + await cacheHandler.set(fetchCacheKey, fetchCache, { + revalidate, + neshca_lastModified: lastModified, + tags: fetchCache.tags, + }); + } +} diff --git a/packages/cache-handler/src/instrumentation/instrumentation.ts b/packages/cache-handler/src/instrumentation/instrumentation.ts new file mode 100644 index 00000000..79c27163 --- /dev/null +++ b/packages/cache-handler/src/instrumentation/instrumentation.ts @@ -0,0 +1 @@ +export { registerInitialCache, type RegisterInitialCacheOptions } from './instrumentation.cache'; diff --git a/packages/cache-handler/tsup.config.ts b/packages/cache-handler/tsup.config.ts index e5fc86d3..262119ad 100644 --- a/packages/cache-handler/tsup.config.ts +++ b/packages/cache-handler/tsup.config.ts @@ -2,7 +2,13 @@ import { defineConfig } from 'tsup'; export const tsup = defineConfig({ name: 'Build cache-handler', - entry: ['src/cache-handler.ts', 'src/handlers/*.ts', 'src/helpers/helpers.ts', 'src/functions/functions.ts'], + entry: [ + 'src/cache-handler.ts', + 'src/handlers/*.ts', + 'src/helpers/helpers.ts', + 'src/functions/functions.ts', + 'src/instrumentation/instrumentation.ts', + ], splitting: false, outDir: 'dist', clean: false, diff --git a/packages/server/README.md b/packages/server/README.md index 750d2203..2a63b2ec 100644 --- a/packages/server/README.md +++ b/packages/server/README.md @@ -1,5 +1,7 @@ ## `@neshca/server` +**This package is deprecated since `@neshca/cache-handler` version 1.7.0 and will be removed in the next major release.** + Efficient and simple HTTP caching server with LRU eviction, tailored for seamless integration with `@neshca/cache-handler/server` Handler. ### Overview diff --git a/turbo.json b/turbo.json index 7415ebcc..6ac024cb 100644 --- a/turbo.json +++ b/turbo.json @@ -1,7 +1,7 @@ { "$schema": "https://turbo.build/schema.json", "globalDependencies": ["**/.env.*local"], - "globalEnv": ["CI", "NODE_ENV", "NEXT_PUBLIC_BASE_URL"], + "globalEnv": ["CI", "NODE_ENV", "NEXT_PUBLIC_BASE_URL", "NEXT_RUNTIME"], "tasks": { "build": { "dependsOn": ["^build"], From 2cf40e5d343522bcb3b16146ed3874ac3f048850 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 10 Sep 2024 15:58:09 +0300 Subject: [PATCH 378/458] Version Packages (#746) Co-authored-by: github-actions[bot] --- .changeset/cyan-suns-rest.md | 5 ----- .changeset/metal-dingos-cheat.md | 5 ----- packages/cache-handler/CHANGELOG.md | 6 ++++++ packages/cache-handler/package.json | 2 +- packages/server/CHANGELOG.md | 6 ++++++ packages/server/package.json | 2 +- 6 files changed, 14 insertions(+), 12 deletions(-) delete mode 100644 .changeset/cyan-suns-rest.md delete mode 100644 .changeset/metal-dingos-cheat.md diff --git a/.changeset/cyan-suns-rest.md b/.changeset/cyan-suns-rest.md deleted file mode 100644 index 6b1d1103..00000000 --- a/.changeset/cyan-suns-rest.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@neshca/server': minor ---- - -Make `@neshca/server` deprecated. `@neshca/cache-handler/server` will be removed in the next major release. diff --git a/.changeset/metal-dingos-cheat.md b/.changeset/metal-dingos-cheat.md deleted file mode 100644 index f9190651..00000000 --- a/.changeset/metal-dingos-cheat.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@neshca/cache-handler': minor ---- - -Add `registerInitialCache` instrumentation hook for pre-populating the cache with the initial data on application start. diff --git a/packages/cache-handler/CHANGELOG.md b/packages/cache-handler/CHANGELOG.md index 371f6e73..793f60a0 100644 --- a/packages/cache-handler/CHANGELOG.md +++ b/packages/cache-handler/CHANGELOG.md @@ -1,5 +1,11 @@ # @neshca/cache-handler +## 1.7.0 + +### Minor Changes + +- 978c3e2: Add `registerInitialCache` instrumentation hook for pre-populating the cache with the initial data on application start. + ## 1.6.1 ### Patch Changes diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 9871389d..be023313 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -1,6 +1,6 @@ { "name": "@neshca/cache-handler", - "version": "1.6.1", + "version": "1.7.0", "description": "Next.js self-hosting simplified.", "keywords": [ "cache", diff --git a/packages/server/CHANGELOG.md b/packages/server/CHANGELOG.md index 65523e89..7860b37a 100644 --- a/packages/server/CHANGELOG.md +++ b/packages/server/CHANGELOG.md @@ -1,5 +1,11 @@ # @neshca/server +## 1.2.0 + +### Minor Changes + +- 978c3e2: Make `@neshca/server` deprecated. `@neshca/cache-handler/server` will be removed in the next major release. + ## 1.1.2 ### Patch Changes diff --git a/packages/server/package.json b/packages/server/package.json index 4a154244..7dfe6232 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -1,6 +1,6 @@ { "name": "@neshca/server", - "version": "1.1.2", + "version": "1.2.0", "description": "Efficient and simple HTTP caching server with LRU eviction, tailored for seamless integration with `@neshca/cache-handler/server` Handler", "homepage": "https://github.com/caching-tools/next-shared-cache/tree/canary/packages/server", "bugs": "https://github.com/caching-tools/next-shared-cache/issues", From e1dde37abab57e39f2798e25a37e84f2df44e864 Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Tue, 10 Sep 2024 16:37:26 +0300 Subject: [PATCH 379/458] Add internal and deprecated packages to changeset ignore (#747) --- .changeset/config.json | 9 ++++++++- package-lock.json | 4 ++-- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/.changeset/config.json b/.changeset/config.json index 3da494d9..ea188a01 100644 --- a/.changeset/config.json +++ b/.changeset/config.json @@ -7,5 +7,12 @@ "access": "public", "baseBranch": "canary", "updateInternalDependencies": "patch", - "ignore": [] + "ignore": [ + "@neshca/server", + "backend", + "cache-handler-docs", + "cache-testing", + "@repo/eslint-config", + "@repo/prettier-config" + ] } diff --git a/package-lock.json b/package-lock.json index a78a1548..d616912c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -16628,7 +16628,7 @@ }, "packages/cache-handler": { "name": "@neshca/cache-handler", - "version": "1.6.1", + "version": "1.7.0", "license": "MIT", "dependencies": { "cluster-key-slot": "1.1.2", @@ -16682,7 +16682,7 @@ }, "packages/server": { "name": "@neshca/server", - "version": "1.1.2", + "version": "1.2.0", "license": "MIT", "dependencies": { "fastify": "4.28.1", From adf8ec872daec6dd2e41151b58f19306b478e404 Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Tue, 10 Sep 2024 17:18:00 +0300 Subject: [PATCH 380/458] Fix publish workflow and include additional files in `.npmignore` (#748) --- .npmignore | 4 ++++ package-lock.json | 2 +- packages/server/package.json | 2 +- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/.npmignore b/.npmignore index cbdb9611..b097392b 100644 --- a/.npmignore +++ b/.npmignore @@ -1 +1,5 @@ !dist +.turbo +src +tsconfig.json +tsup.config.ts diff --git a/package-lock.json b/package-lock.json index d616912c..9427b2fc 100644 --- a/package-lock.json +++ b/package-lock.json @@ -16682,7 +16682,7 @@ }, "packages/server": { "name": "@neshca/server", - "version": "1.2.0", + "version": "1.1.2", "license": "MIT", "dependencies": { "fastify": "4.28.1", diff --git a/packages/server/package.json b/packages/server/package.json index 7dfe6232..4a154244 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -1,6 +1,6 @@ { "name": "@neshca/server", - "version": "1.2.0", + "version": "1.1.2", "description": "Efficient and simple HTTP caching server with LRU eviction, tailored for seamless integration with `@neshca/cache-handler/server` Handler", "homepage": "https://github.com/caching-tools/next-shared-cache/tree/canary/packages/server", "bugs": "https://github.com/caching-tools/next-shared-cache/issues", From 432a918b3daba2c34a5407bcba1f8db9e12beb55 Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Wed, 11 Sep 2024 14:26:01 +0300 Subject: [PATCH 381/458] Fix an error when working with the `fetch-cache` in the `registerInitialCache` (#749) --- .changeset/blue-lobsters-shout.md | 5 + .../pages/usage/populating-cache-on-start.mdx | 31 +++ .../instrumentation/instrumentation.cache.ts | 253 +++++++++++++----- 3 files changed, 222 insertions(+), 67 deletions(-) create mode 100644 .changeset/blue-lobsters-shout.md diff --git a/.changeset/blue-lobsters-shout.md b/.changeset/blue-lobsters-shout.md new file mode 100644 index 00000000..44cfd9c5 --- /dev/null +++ b/.changeset/blue-lobsters-shout.md @@ -0,0 +1,5 @@ +--- +'@neshca/cache-handler': patch +--- + +Fix an error when working with the `fetch-cache` in the `registerInitialCache`. diff --git a/docs/cache-handler-docs/src/pages/usage/populating-cache-on-start.mdx b/docs/cache-handler-docs/src/pages/usage/populating-cache-on-start.mdx index 4c39e244..ec5b5765 100644 --- a/docs/cache-handler-docs/src/pages/usage/populating-cache-on-start.mdx +++ b/docs/cache-handler-docs/src/pages/usage/populating-cache-on-start.mdx @@ -33,6 +33,37 @@ export async function register() { This instrumentation will fill the cache with the initial data when the application starts. The duration of this process may vary based on the number and size of pages, routes, and fetch calls. +### Using `output: 'standalone'` in `next.config.js` + +If you use the `output: 'standalone'` option in your `next.config.js` file, you must copy the `fetch-cache` directory to the `standalone` directory. Otherwise, the instrumentation will not pre-populate the cache with the initial fetch calls data. + +To copy the `fetch-cache` directory, run the following command in your project root directory: + +```sh +mkdir -p .next/standalone/.next/cache/fetch-cache +cp .next/cache/fetch-cache/* .next/standalone/.next/cache/fetch-cache/ +``` + +Or using `Dockerfile`: + +```dockerfile +COPY .next/cache/fetch-cache/ .next/standalone/.next/cache/fetch-cache/ +``` + +#### Caveats + +When using the `output: 'standalone'` option in a monorepo, you may need to adjust the paths in the above command to match your project structure. + +For example, they may look like this: + +```sh +mkdir -p .next/standalone//.next/cache/fetch-cache +cp .next/cache/fetch-cache/* .next/standalone//.next/cache/fetch-cache/ +``` + +You may also need to configure `outputFileTracingRoot` in your `next.config.js` to work locally. Refer to the [Next.js `output: standalone` option ↗](https://nextjs.org/docs/app/api-reference/next-config-js/output) for more information. + ### Usful links - [Instrumentation Next.js documentation ↗](https://nextjs.org/docs/app/building-your-application/optimizing/instrumentation) +- [Next.js `output: standalone` option ↗](https://nextjs.org/docs/app/api-reference/next-config-js/output) diff --git a/packages/cache-handler/src/instrumentation/instrumentation.cache.ts b/packages/cache-handler/src/instrumentation/instrumentation.cache.ts index b6741866..b265d9b2 100644 --- a/packages/cache-handler/src/instrumentation/instrumentation.cache.ts +++ b/packages/cache-handler/src/instrumentation/instrumentation.cache.ts @@ -10,6 +10,10 @@ import { getTagsFromHeaders } from '../helpers/get-tags-from-headers'; type CacheHandlerType = typeof import('../cache-handler').CacheHandler; +type Router = 'pages' | 'app'; + +const PRERENDER_MANIFEST_VERSION = 4; + /** * Options for the `registerInitialCache` instrumentation. * @@ -78,6 +82,7 @@ export type RegisterInitialCacheOptions = { * @since 1.7.0 */ export async function registerInitialCache(CacheHandler: CacheHandlerType, options: RegisterInitialCacheOptions = {}) { + const debug = typeof process.env.NEXT_PRIVATE_DEBUG_CACHE !== 'undefined'; const nextJsPath = path.join(process.cwd(), '.next'); const prerenderManifestPath = path.join(nextJsPath, PRERENDER_MANIFEST); const serverDistDir = path.join(nextJsPath, SERVER_DIRECTORY); @@ -93,19 +98,21 @@ export async function registerInitialCache(CacheHandler: CacheHandlerType, optio const prerenderManifestData = await fsPromises.readFile(prerenderManifestPath, 'utf-8'); prerenderManifest = JSON.parse(prerenderManifestData) as PrerenderManifest; - if (prerenderManifest.version !== 4) { - throw new Error('Invalid prerender manifest version. Expected version 4.'); + if (prerenderManifest.version !== PRERENDER_MANIFEST_VERSION) { + throw new Error( + `Invalid prerender manifest version. Expected version ${PRERENDER_MANIFEST_VERSION}. Please check if the Next.js version is compatible with the CacheHandler version.`, + ); } } catch (error) { - console.warn( - '[CacheHandler] [%s] %s %s', - 'instrumentation.cache', - 'Failed to read prerender manifest', - `Error: ${error}`, - ); - } + if (debug) { + console.warn( + '[CacheHandler] [%s] %s %s', + 'instrumentation.cache', + 'Failed to read prerender manifest', + `Error: ${error}`, + ); + } - if (!prerenderManifest) { return; } @@ -114,51 +121,99 @@ export async function registerInitialCache(CacheHandler: CacheHandlerType, optio dev: process.env.NODE_ENV === 'development', }; - const cacheHandler = new CacheHandler(context as ConstructorParameters[0]); + let cacheHandler: InstanceType; + + try { + cacheHandler = new CacheHandler(context as ConstructorParameters[0]); + } catch (error) { + if (debug) { + console.warn( + '[CacheHandler] [%s] %s %s', + 'instrumentation.cache', + 'Failed to create CacheHandler instance', + `Error: ${error}`, + ); + } - type Router = 'pages' | 'app'; - type CacheKind = 'PAGE' | 'ROUTE'; + return; + } - async function setCacheForRoute(route: string, router: Router, cacheKind: CacheKind, revalidate: Revalidate) { - const pathToRouteFiles = path.join(serverDistDir, router, route); + async function setRouteCache(cachePath: string, router: Router, revalidate: Revalidate) { + const pathToRouteFiles = path.join(serverDistDir, router, cachePath); - if (cacheKind === 'ROUTE') { - let lastModified: number | undefined; + let lastModified: number | undefined; - try { - const stats = await fsPromises.stat(`${pathToRouteFiles}.body`); - lastModified = stats.mtimeMs; - } catch (_) { - return; + try { + const stats = await fsPromises.stat(`${pathToRouteFiles}.body`); + lastModified = stats.mtimeMs; + } catch (error) { + if (debug) { + console.warn( + '[CacheHandler] [%s] %s %s', + 'instrumentation.cache', + 'Failed to read route body file', + `Error: ${error}`, + ); } - const [body, meta] = await Promise.all([ + return; + } + + let body: Buffer; + let meta: RouteMetadata; + + try { + [body, meta] = await Promise.all([ fsPromises.readFile(`${pathToRouteFiles}.body`), fsPromises .readFile(`${pathToRouteFiles}.meta`, 'utf-8') .then((data) => JSON.parse(data) as RouteMetadata), ]); - try { - if (!(meta.headers && meta.status)) { - return; - } - - await cacheHandler.set( - route, - { - kind: 'ROUTE', - body, - headers: meta.headers, - status: meta.status, - }, - { revalidate, neshca_lastModified: lastModified, tags: getTagsFromHeaders(meta.headers) }, + if (!(meta.headers && meta.status)) { + throw new Error('Invalid route metadata. Missing headers or status.'); + } + } catch (error) { + if (debug) { + console.warn( + '[CacheHandler] [%s] %s %s', + 'instrumentation.cache', + 'Failed to read route body or metadata file, or parse metadata', + `Error: ${error}`, ); - } catch (_) { - return; } + + return; } + try { + await cacheHandler.set( + cachePath, + { + kind: 'ROUTE', + body, + headers: meta.headers, + status: meta.status, + }, + { revalidate, neshca_lastModified: lastModified, tags: getTagsFromHeaders(meta.headers) }, + ); + } catch (error) { + if (debug) { + console.warn( + '[CacheHandler] [%s] %s %s', + 'instrumentation.cache', + 'Failed to set route cache. Please check if the CacheHandler is configured correctly', + `Error: ${error}`, + ); + } + + return; + } + } + + async function setPageCache(cachePath: string, router: Router, revalidate: Revalidate) { + const pathToRouteFiles = path.join(serverDistDir, router, cachePath); + const isAppRouter = router === 'app'; let lastModified: number | undefined; @@ -166,7 +221,15 @@ export async function registerInitialCache(CacheHandler: CacheHandlerType, optio try { const stats = await fsPromises.stat(`${pathToRouteFiles}.html`); lastModified = stats.mtimeMs; - } catch (_) { + } catch (error) { + if (debug) { + console.warn( + '[CacheHandler] [%s] %s %s', + 'instrumentation.cache', + 'Failed to read page html file', + `Error: ${error}`, + ); + } return; } @@ -186,13 +249,22 @@ export async function registerInitialCache(CacheHandler: CacheHandlerType, optio .then((data) => JSON.parse(data) as RouteMetadata) : undefined, ]); - } catch (_) { + } catch (error) { + if (debug) { + console.warn( + '[CacheHandler] [%s] %s %s', + 'instrumentation.cache', + 'Failed to read page html, page data, or metadata file, or parse metadata', + `Error: ${error}`, + ); + } + return; } try { await cacheHandler.set( - route, + cachePath, { kind: 'PAGE', html, @@ -203,28 +275,27 @@ export async function registerInitialCache(CacheHandler: CacheHandlerType, optio }, { revalidate, neshca_lastModified: lastModified }, ); - } catch (_) { + } catch (error) { + if (debug) { + console.warn( + '[CacheHandler] [%s] %s %s', + 'instrumentation.cache', + 'Failed to set page cache. Please check if the CacheHandler is configured correctly', + `Error: ${error}`, + ); + } + return; } } - for (const [route, { dataRoute, initialRevalidateSeconds }] of Object.entries(prerenderManifest.routes)) { - let router: Router | undefined; - let cacheKind: CacheKind | undefined; - + for (const [cachePath, { dataRoute, initialRevalidateSeconds }] of Object.entries(prerenderManifest.routes)) { if (populatePages && dataRoute?.endsWith('.json')) { - router = 'pages'; - cacheKind = 'PAGE'; + await setPageCache(cachePath, 'pages', initialRevalidateSeconds); } else if (populatePages && dataRoute?.endsWith('.rsc')) { - router = 'app'; - cacheKind = 'PAGE'; + await setPageCache(cachePath, 'app', initialRevalidateSeconds); } else if (populateRoutes && dataRoute === null) { - router = 'app'; - cacheKind = 'ROUTE'; - } - - if (router && cacheKind) { - await setCacheForRoute(route, router, cacheKind, initialRevalidateSeconds); + await setRouteCache(cachePath, 'app', initialRevalidateSeconds); } } @@ -232,7 +303,22 @@ export async function registerInitialCache(CacheHandler: CacheHandlerType, optio return; } - const fetchFiles = await fsPromises.readdir(fetchCacheDir); + let fetchFiles: string[]; + + try { + fetchFiles = await fsPromises.readdir(fetchCacheDir); + } catch (error) { + if (debug) { + console.warn( + '[CacheHandler] [%s] %s %s', + 'instrumentation.cache', + 'Failed to read cache/fetch-cache directory', + `Error: ${error}`, + ); + } + + return; + } for (const fetchCacheKey of fetchFiles) { const filePath = path.join(fetchCacheDir, fetchCacheKey); @@ -242,21 +328,54 @@ export async function registerInitialCache(CacheHandler: CacheHandlerType, optio try { const stats = await fsPromises.stat(filePath); lastModified = stats.mtimeMs; - } catch (_) { + } catch (error) { + if (debug) { + console.warn( + '[CacheHandler] [%s] %s %s', + 'instrumentation.cache', + 'Failed to read fetch cache file', + `Error: ${error}`, + ); + } return; } - const fetchCache = await fsPromises - .readFile(filePath, 'utf-8') - .then((data) => JSON.parse(data) as CachedFetchValue); + let fetchCache: CachedFetchValue; + try { + fetchCache = await fsPromises + .readFile(filePath, 'utf-8') + .then((data) => JSON.parse(data) as CachedFetchValue); + } catch (error) { + if (debug) { + console.warn( + '[CacheHandler] [%s] %s %s', + 'instrumentation.cache', + 'Failed to parse fetch cache file', + `Error: ${error}`, + ); + } + + return; + } // HACK: By default, Next.js sets the revalidate option to CACHE_ONE_YEAR if the revalidate option is set const revalidate = fetchCache.revalidate === CACHE_ONE_YEAR ? false : fetchCache.revalidate; - await cacheHandler.set(fetchCacheKey, fetchCache, { - revalidate, - neshca_lastModified: lastModified, - tags: fetchCache.tags, - }); + try { + await cacheHandler.set(fetchCacheKey, fetchCache, { + revalidate, + neshca_lastModified: lastModified, + tags: fetchCache.tags, + }); + } catch (error) { + if (debug) { + console.warn( + '[CacheHandler] [%s] %s %s', + 'instrumentation.cache', + 'Failed to set fetch cache. Please check if the CacheHandler is configured correctly', + `Error: ${error}`, + ); + } + } } } From ad1ae4c9cd7a99a4901d9127693079f8ab8bb477 Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Wed, 11 Sep 2024 14:43:10 +0300 Subject: [PATCH 382/458] Update readme (#752) --- README.md | 3 ++- packages/cache-handler/README.md | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 44e76a02..f1b760e3 100644 --- a/README.md +++ b/README.md @@ -13,7 +13,8 @@ Welcome to [`@neshca/cache-handler`](./packages/cache-handler/README.md) (pronou - **On-Demand Revalidation**: Simplifies revalidation across all application replicas. - **TTL Management**: Automatic cache cleanup to keep storage space efficient. - **Support for Next.js Routers**: Full support and one setup for the Pages and the App Router. -- **`neshCache` Function**: Utilize the [`neshCache`](https://caching-tools.github.io/next-shared-cache/functions/nesh-cache) function to replace `unstable_cache` for more control over caching. +- **`neshCache` Function**: Utilize the [`neshCache` ↗](https://caching-tools.github.io/next-shared-cache/functions/nesh-cache) function to replace `unstable_cache` for more control over caching. +- **Pre-populate the Cache with Initial Data**: Automatically pre-populate the cache with the initial data when the application starts using the [instrumentation hook ↗](https://caching-tools.github.io/next-shared-cache/usage/populating-cache-on-start). ## Getting Started diff --git a/packages/cache-handler/README.md b/packages/cache-handler/README.md index aaa8a812..d4e287d9 100644 --- a/packages/cache-handler/README.md +++ b/packages/cache-handler/README.md @@ -36,7 +36,8 @@ Welcome to `@neshca/cache-handler` (pronounced /ˈnæʃkʌ/), a specialized ISR/ - **On-Demand Revalidation**: Simplifies revalidation across all application replicas. - **TTL Management**: Automatic cache cleanup to keep storage space efficient. - **Support for Next.js Routers**: Full support and one setup for the Pages and the App Router. -- **`neshCache` Function**: Utilize the [`neshCache`](https://caching-tools.github.io/next-shared-cache/functions/nesh-cache) function to replace `unstable_cache` for more control over caching. +- **`neshCache` Function**: Utilize the [`neshCache` ↗](https://caching-tools.github.io/next-shared-cache/functions/nesh-cache) function to replace `unstable_cache` for more control over caching. +- **Pre-populate the Cache with Initial Data**: Automatically pre-populate the cache with the initial data when the application starts using the [instrumentation hook ↗](https://caching-tools.github.io/next-shared-cache/usage/populating-cache-on-start). ## Getting Started From 5f830e213446e55c353deb5cb93109fc4b8b56e6 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Wed, 11 Sep 2024 14:46:18 +0300 Subject: [PATCH 383/458] Version Packages (#751) Co-authored-by: github-actions[bot] --- .changeset/blue-lobsters-shout.md | 5 ----- packages/cache-handler/CHANGELOG.md | 6 ++++++ packages/cache-handler/package.json | 2 +- 3 files changed, 7 insertions(+), 6 deletions(-) delete mode 100644 .changeset/blue-lobsters-shout.md diff --git a/.changeset/blue-lobsters-shout.md b/.changeset/blue-lobsters-shout.md deleted file mode 100644 index 44cfd9c5..00000000 --- a/.changeset/blue-lobsters-shout.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@neshca/cache-handler': patch ---- - -Fix an error when working with the `fetch-cache` in the `registerInitialCache`. diff --git a/packages/cache-handler/CHANGELOG.md b/packages/cache-handler/CHANGELOG.md index 793f60a0..7d9cc68e 100644 --- a/packages/cache-handler/CHANGELOG.md +++ b/packages/cache-handler/CHANGELOG.md @@ -1,5 +1,11 @@ # @neshca/cache-handler +## 1.7.1 + +### Patch Changes + +- 432a918: Fix an error when working with the `fetch-cache` in the `registerInitialCache`. + ## 1.7.0 ### Minor Changes diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index be023313..82ed0522 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -1,6 +1,6 @@ { "name": "@neshca/cache-handler", - "version": "1.7.0", + "version": "1.7.1", "description": "Next.js self-hosting simplified.", "keywords": [ "cache", From 45ddc35bbab1d8a472f3d569c86efe8e37419f0f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 13 Sep 2024 11:11:24 +0300 Subject: [PATCH 384/458] Bump the next-js group with 2 updates (#753) Bumps the next-js group with 2 updates: [next](https://github.com/vercel/next.js) and [@next/eslint-plugin-next](https://github.com/vercel/next.js/tree/HEAD/packages/eslint-plugin-next). Updates `next` from 14.2.9 to 14.2.11 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v14.2.9...v14.2.11) Updates `@next/eslint-plugin-next` from 14.2.9 to 14.2.11 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/commits/v14.2.11/packages/eslint-plugin-next) --- updated-dependencies: - dependency-name: next dependency-type: direct:production update-type: version-update:semver-patch dependency-group: next-js - dependency-name: "@next/eslint-plugin-next" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: next-js ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 4 +- docs/cache-handler-docs/package.json | 4 +- internal/next-common/package.json | 2 +- package-lock.json | 104 +++++++++++++-------------- 4 files changed, 57 insertions(+), 57 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index b9873e3d..ec6959a2 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -17,13 +17,13 @@ "start": "dotenv -e .env.local -v SERVER_STARTED=1 node .next/standalone/apps/cache-testing/server.js" }, "dependencies": { - "next": "14.2.9", + "next": "14.2.11", "react": "18.3.1", "react-dom": "18.3.1" }, "devDependencies": { "@neshca/cache-handler": "*", - "@next/eslint-plugin-next": "14.2.9", + "@next/eslint-plugin-next": "14.2.11", "@playwright/test": "1.47.0", "@repo/eslint-config": "*", "@repo/typescript-config": "*", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 84ef1c8b..496a535f 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -11,14 +11,14 @@ "start:docs": "next start" }, "dependencies": { - "next": "14.2.9", + "next": "14.2.11", "nextra": "2.13.4", "nextra-theme-docs": "2.13.4", "react": "18.3.1", "react-dom": "18.3.1" }, "devDependencies": { - "@next/eslint-plugin-next": "14.2.9", + "@next/eslint-plugin-next": "14.2.11", "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.12", diff --git a/internal/next-common/package.json b/internal/next-common/package.json index 5df31eb8..1cde4304 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -11,7 +11,7 @@ "clean": "rimraf ./.turbo ./node_modules" }, "dependencies": { - "next": "14.2.9" + "next": "14.2.11" }, "devDependencies": { "@repo/typescript-config": "*", diff --git a/package-lock.json b/package-lock.json index 9427b2fc..28228a5c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -37,13 +37,13 @@ "version": "0.0.0", "license": "MIT", "dependencies": { - "next": "14.2.9", + "next": "14.2.11", "react": "18.3.1", "react-dom": "18.3.1" }, "devDependencies": { "@neshca/cache-handler": "*", - "@next/eslint-plugin-next": "14.2.9", + "@next/eslint-plugin-next": "14.2.11", "@playwright/test": "1.47.0", "@repo/eslint-config": "*", "@repo/typescript-config": "*", @@ -65,14 +65,14 @@ "docs/cache-handler-docs": { "version": "0.1.0", "dependencies": { - "next": "14.2.9", + "next": "14.2.11", "nextra": "2.13.4", "nextra-theme-docs": "2.13.4", "react": "18.3.1", "react-dom": "18.3.1" }, "devDependencies": { - "@next/eslint-plugin-next": "14.2.9", + "@next/eslint-plugin-next": "14.2.11", "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.12", @@ -117,7 +117,7 @@ "version": "0.0.0", "license": "MIT", "dependencies": { - "next": "14.2.9" + "next": "14.2.11" }, "devDependencies": { "@repo/typescript-config": "*", @@ -2214,14 +2214,14 @@ "link": true }, "node_modules/@next/env": { - "version": "14.2.9", - "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.9.tgz", - "integrity": "sha512-hnDAoDPMii31V0ivibI8p6b023jOF1XblWTVjsDUoZKwnZlaBtJFZKDwFqi22R8r9i6W08dThUWU7Bsh2Rg8Ww==" + "version": "14.2.11", + "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.11.tgz", + "integrity": "sha512-HYsQRSIXwiNqvzzYThrBwq6RhXo3E0n8j8nQnAs8i4fCEo2Zf/3eS0IiRA8XnRg9Ha0YnpkyJZIZg1qEwemrHw==" }, "node_modules/@next/eslint-plugin-next": { - "version": "14.2.9", - "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.2.9.tgz", - "integrity": "sha512-tmLXuDNfPTqoFuSfsd9Q4R96SS/UCKTPtBnnR+cKDcbh8xZU+126vZnRWH1WEpOmS4Vl2Hy/X6SPmgOGZzn+hA==", + "version": "14.2.11", + "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.2.11.tgz", + "integrity": "sha512-7mw+xW7Y03Ph4NTCcAzYe+vu4BNjEHZUfZayyF3Y1D9RX6c5NIe25m1grHEAkyUuaqjRxOYhnCNeglOkIqLkBA==", "dev": true, "dependencies": { "glob": "10.3.10" @@ -2313,9 +2313,9 @@ } }, "node_modules/@next/swc-darwin-arm64": { - "version": "14.2.9", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.9.tgz", - "integrity": "sha512-/kfQifl3uLYi3DlwFlzCkgxe6fprJNLzzTUFknq3M5wGYicDIbdGlxUl6oHpVLJpBB/CBY3Y//gO6alz/K4NWA==", + "version": "14.2.11", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.11.tgz", + "integrity": "sha512-eiY9u7wEJZWp/Pga07Qy3ZmNEfALmmSS1HtsJF3y1QEyaExu7boENz11fWqDmZ3uvcyAxCMhTrA1jfVxITQW8g==", "cpu": [ "arm64" ], @@ -2328,9 +2328,9 @@ } }, "node_modules/@next/swc-darwin-x64": { - "version": "14.2.9", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.9.tgz", - "integrity": "sha512-tK/RyhCmOCiXQ9IVdFrBbZOf4/1+0RSuJkebXU2uMEsusS51TjIJO4l8ZmEijH9gZa0pJClvmApRHi7JuBqsRw==", + "version": "14.2.11", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.11.tgz", + "integrity": "sha512-lnB0zYCld4yE0IX3ANrVMmtAbziBb7MYekcmR6iE9bujmgERl6+FK+b0MBq0pl304lYe7zO4yxJus9H/Af8jbg==", "cpu": [ "x64" ], @@ -2343,9 +2343,9 @@ } }, "node_modules/@next/swc-linux-arm64-gnu": { - "version": "14.2.9", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.9.tgz", - "integrity": "sha512-tS5eqwsp2nO7mzywRUuFYmefNZsUKM/mTG3exK2jIHv9TEVklE1SByB1KMhFkqlit1PxS9YK1tV8BOV90Wpbrw==", + "version": "14.2.11", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.11.tgz", + "integrity": "sha512-Ulo9TZVocYmUAtzvZ7FfldtwUoQY0+9z3BiXZCLSUwU2bp7GqHA7/bqrfsArDlUb2xeGwn3ZuBbKtNK8TR0A8w==", "cpu": [ "arm64" ], @@ -2358,9 +2358,9 @@ } }, "node_modules/@next/swc-linux-arm64-musl": { - "version": "14.2.9", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.9.tgz", - "integrity": "sha512-8svpeTFNAMTUMKQbEzE8qRAwl9o7mNBv7LR1bmSkQvo1oy4WrNyZbhWsldOiKrc4mZ5dfQkGYsI9T75mIFMfeA==", + "version": "14.2.11", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.11.tgz", + "integrity": "sha512-fH377DnKGyUnkWlmUpFF1T90m0dADBfK11dF8sOQkiELF9M+YwDRCGe8ZyDzvQcUd20Rr5U7vpZRrAxKwd3Rzg==", "cpu": [ "arm64" ], @@ -2373,9 +2373,9 @@ } }, "node_modules/@next/swc-linux-x64-gnu": { - "version": "14.2.9", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.9.tgz", - "integrity": "sha512-0HNulLWpKTB7H5BhHCkEhcRAnWUHeAYCftrrGw3QC18+ZywTdAoPv/zEqKy/0adqt+ks4JDdlgSQ1lNKOKjo0A==", + "version": "14.2.11", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.11.tgz", + "integrity": "sha512-a0TH4ZZp4NS0LgXP/488kgvWelNpwfgGTUCDXVhPGH6pInb7yIYNgM4kmNWOxBFt+TIuOH6Pi9NnGG4XWFUyXQ==", "cpu": [ "x64" ], @@ -2388,9 +2388,9 @@ } }, "node_modules/@next/swc-linux-x64-musl": { - "version": "14.2.9", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.9.tgz", - "integrity": "sha512-hhVFViPHLAVUJRNtwwm609p9ozWajOmRvzOZzzKXgiVGwx/CALxlMUeh+M+e0Zj6orENhWLZeilOPHpptuENsA==", + "version": "14.2.11", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.11.tgz", + "integrity": "sha512-DYYZcO4Uir2gZxA4D2JcOAKVs8ZxbOFYPpXSVIgeoQbREbeEHxysVsg3nY4FrQy51e5opxt5mOHl/LzIyZBoKA==", "cpu": [ "x64" ], @@ -2403,9 +2403,9 @@ } }, "node_modules/@next/swc-win32-arm64-msvc": { - "version": "14.2.9", - "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.9.tgz", - "integrity": "sha512-p/v6XlOdrk06xfN9z4evLNBqftVQUWiyduQczCwSj7hNh8fWTbzdVxsEiNOcajMXJbQiaX/ZzZdFgKVmmJnnGQ==", + "version": "14.2.11", + "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.11.tgz", + "integrity": "sha512-PwqHeKG3/kKfPpM6of1B9UJ+Er6ySUy59PeFu0Un0LBzJTRKKAg2V6J60Yqzp99m55mLa+YTbU6xj61ImTv9mg==", "cpu": [ "arm64" ], @@ -2418,9 +2418,9 @@ } }, "node_modules/@next/swc-win32-ia32-msvc": { - "version": "14.2.9", - "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.9.tgz", - "integrity": "sha512-IcW9dynWDjMK/0M05E3zopbRen7v0/yEaMZbHFOSS1J/w+8YG3jKywOGZWNp/eCUVtUUXs0PW+7Lpz8uLu+KQA==", + "version": "14.2.11", + "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.11.tgz", + "integrity": "sha512-0U7PWMnOYIvM74GY6rbH6w7v+vNPDVH1gUhlwHpfInJnNe5LkmUZqhp7FNWeNa5wbVgRcRi1F1cyxp4dmeLLvA==", "cpu": [ "ia32" ], @@ -2433,9 +2433,9 @@ } }, "node_modules/@next/swc-win32-x64-msvc": { - "version": "14.2.9", - "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.9.tgz", - "integrity": "sha512-gcbpoXyWZdVOBgNa5BRzynrL5UR1nb2ZT38yKgnphYU9UHjeecnylMHntrQiMg/QtONDcJPFC/PmsS47xIRYoA==", + "version": "14.2.11", + "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.11.tgz", + "integrity": "sha512-gQpS7mcgovWoaTG1FbS5/ojF7CGfql1Q0ZLsMrhcsi2Sr9HEqsUZ70MPJyaYBXbk6iEAP7UXMD9HC8KY1qNwvA==", "cpu": [ "x64" ], @@ -11603,11 +11603,11 @@ } }, "node_modules/next": { - "version": "14.2.9", - "resolved": "https://registry.npmjs.org/next/-/next-14.2.9.tgz", - "integrity": "sha512-3CzBNo6BuJnRjcQvRw+irnU1WiuJNZEp+dkzkt91y4jeIDN/Emg95F+takSYiLpJ/HkxClVQRyqiTwYce5IVqw==", + "version": "14.2.11", + "resolved": "https://registry.npmjs.org/next/-/next-14.2.11.tgz", + "integrity": "sha512-8MDFqHBhdmR2wdfaWc8+lW3A/hppFe1ggQ9vgIu/g2/2QEMYJrPoQP6b+VNk56gIug/bStysAmrpUKtj3XN8Bw==", "dependencies": { - "@next/env": "14.2.9", + "@next/env": "14.2.11", "@swc/helpers": "0.5.5", "busboy": "1.6.0", "caniuse-lite": "^1.0.30001579", @@ -11622,15 +11622,15 @@ "node": ">=18.17.0" }, "optionalDependencies": { - "@next/swc-darwin-arm64": "14.2.9", - "@next/swc-darwin-x64": "14.2.9", - "@next/swc-linux-arm64-gnu": "14.2.9", - "@next/swc-linux-arm64-musl": "14.2.9", - "@next/swc-linux-x64-gnu": "14.2.9", - "@next/swc-linux-x64-musl": "14.2.9", - "@next/swc-win32-arm64-msvc": "14.2.9", - "@next/swc-win32-ia32-msvc": "14.2.9", - "@next/swc-win32-x64-msvc": "14.2.9" + "@next/swc-darwin-arm64": "14.2.11", + "@next/swc-darwin-x64": "14.2.11", + "@next/swc-linux-arm64-gnu": "14.2.11", + "@next/swc-linux-arm64-musl": "14.2.11", + "@next/swc-linux-x64-gnu": "14.2.11", + "@next/swc-linux-x64-musl": "14.2.11", + "@next/swc-win32-arm64-msvc": "14.2.11", + "@next/swc-win32-ia32-msvc": "14.2.11", + "@next/swc-win32-x64-msvc": "14.2.11" }, "peerDependencies": { "@opentelemetry/api": "^1.1.0", @@ -16628,7 +16628,7 @@ }, "packages/cache-handler": { "name": "@neshca/cache-handler", - "version": "1.7.0", + "version": "1.7.1", "license": "MIT", "dependencies": { "cluster-key-slot": "1.1.2", From 2037dccefbc97d97649b3ca990502d3694787f9b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 13 Sep 2024 11:23:00 +0300 Subject: [PATCH 385/458] Bump tsx from 4.19.0 to 4.19.1 (#755) Bumps [tsx](https://github.com/privatenumber/tsx) from 4.19.0 to 4.19.1. - [Release notes](https://github.com/privatenumber/tsx/releases) - [Changelog](https://github.com/privatenumber/tsx/blob/master/release.config.cjs) - [Commits](https://github.com/privatenumber/tsx/compare/v4.19.0...v4.19.1) --- updated-dependencies: - dependency-name: tsx dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- internal/backend/package.json | 2 +- package-lock.json | 17 ++++++++--------- packages/cache-handler/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 6 files changed, 13 insertions(+), 14 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index ec6959a2..60d8f2ba 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -38,7 +38,7 @@ "pm2": "5.4.2", "redis": "4.7.0", "rimraf": "6.0.1", - "tsx": "4.19.0", + "tsx": "4.19.1", "typescript": "5.6.2" } } diff --git a/internal/backend/package.json b/internal/backend/package.json index 75297537..82e3b013 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -18,7 +18,7 @@ "@types/node": "22.5.4", "pino-pretty": "11.2.2", "rimraf": "6.0.1", - "tsx": "4.19.0", + "tsx": "4.19.1", "typescript": "5.6.2" } } diff --git a/package-lock.json b/package-lock.json index 28228a5c..b71103ab 100644 --- a/package-lock.json +++ b/package-lock.json @@ -58,7 +58,7 @@ "pm2": "5.4.2", "redis": "4.7.0", "rimraf": "6.0.1", - "tsx": "4.19.0", + "tsx": "4.19.1", "typescript": "5.6.2" } }, @@ -95,7 +95,7 @@ "@types/node": "22.5.4", "pino-pretty": "11.2.2", "rimraf": "6.0.1", - "tsx": "4.19.0", + "tsx": "4.19.1", "typescript": "5.6.2" } }, @@ -15475,11 +15475,10 @@ "license": "0BSD" }, "node_modules/tsx": { - "version": "4.19.0", - "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.19.0.tgz", - "integrity": "sha512-bV30kM7bsLZKZIOCHeMNVMJ32/LuJzLVajkQI/qf92J2Qr08ueLQvW00PUZGiuLPP760UINwupgUj8qrSCPUKg==", + "version": "4.19.1", + "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.19.1.tgz", + "integrity": "sha512-0flMz1lh74BR4wOvBjuh9olbnwqCPc35OOlfyzHba0Dc+QNUeWX/Gq2YTbnwcWPO3BMd8fkzRVrHcsR+a7z7rA==", "dev": true, - "license": "MIT", "dependencies": { "esbuild": "~0.23.0", "get-tsconfig": "^4.7.5" @@ -16641,7 +16640,7 @@ "@types/node": "22.5.4", "rimraf": "6.0.1", "tsup": "8.2.4", - "tsx": "4.19.0", + "tsx": "4.19.1", "typescript": "5.6.2" }, "peerDependencies": { @@ -16676,7 +16675,7 @@ "@types/node": "22.5.4", "rimraf": "6.0.1", "tsup": "8.2.4", - "tsx": "4.19.0", + "tsx": "4.19.1", "typescript": "5.6.2" } }, @@ -16698,7 +16697,7 @@ "@types/node": "22.5.4", "rimraf": "6.0.1", "tsup": "8.2.4", - "tsx": "4.19.0", + "tsx": "4.19.1", "typescript": "5.6.2" } } diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 82ed0522..93f6ef10 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -90,7 +90,7 @@ "@types/node": "22.5.4", "rimraf": "6.0.1", "tsup": "8.2.4", - "tsx": "4.19.0", + "tsx": "4.19.1", "typescript": "5.6.2" }, "peerDependencies": { diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index b5f23925..6e23c064 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -31,7 +31,7 @@ "@types/node": "22.5.4", "rimraf": "6.0.1", "tsup": "8.2.4", - "tsx": "4.19.0", + "tsx": "4.19.1", "typescript": "5.6.2" } } diff --git a/packages/server/package.json b/packages/server/package.json index 4a154244..5579b388 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -35,7 +35,7 @@ "@types/node": "22.5.4", "rimraf": "6.0.1", "tsup": "8.2.4", - "tsx": "4.19.0", + "tsx": "4.19.1", "typescript": "5.6.2" }, "distTags": [ From 5e6110685332202f409cd223127cebd6a960c042 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 14 Sep 2024 00:56:57 +0300 Subject: [PATCH 386/458] Bump the turbo group with 2 updates (#756) Bumps the turbo group with 2 updates: [turbo](https://github.com/vercel/turborepo) and [eslint-config-turbo](https://github.com/vercel/turborepo/tree/HEAD/packages/eslint-config-turbo). Updates `turbo` from 2.1.1 to 2.1.2 - [Release notes](https://github.com/vercel/turborepo/releases) - [Changelog](https://github.com/vercel/turborepo/blob/main/release.md) - [Commits](https://github.com/vercel/turborepo/compare/v2.1.1...v2.1.2) Updates `eslint-config-turbo` from 2.1.1 to 2.1.2 - [Release notes](https://github.com/vercel/turborepo/releases) - [Changelog](https://github.com/vercel/turborepo/blob/main/release.md) - [Commits](https://github.com/vercel/turborepo/commits/v2.1.2/packages/eslint-config-turbo) --- updated-dependencies: - dependency-name: turbo dependency-type: direct:development update-type: version-update:semver-patch dependency-group: turbo - dependency-name: eslint-config-turbo dependency-type: direct:development update-type: version-update:semver-patch dependency-group: turbo ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- internal/eslint-config/package.json | 2 +- package-lock.json | 82 +++++++++++++---------------- package.json | 2 +- 3 files changed, 38 insertions(+), 48 deletions(-) diff --git a/internal/eslint-config/package.json b/internal/eslint-config/package.json index 0f60738c..0a137e11 100644 --- a/internal/eslint-config/package.json +++ b/internal/eslint-config/package.json @@ -10,7 +10,7 @@ "@typescript-eslint/parser": "7.18.0", "@vercel/style-guide": "6.0.0", "eslint-config-prettier": "9.1.0", - "eslint-config-turbo": "2.1.1", + "eslint-config-turbo": "2.1.2", "eslint-plugin-only-warn": "1.1.0", "typescript": "5.6.2" } diff --git a/package-lock.json b/package-lock.json index b71103ab..cd343abc 100644 --- a/package-lock.json +++ b/package-lock.json @@ -26,7 +26,7 @@ "diffscribe": "*", "glob": "11.0.0", "prettier": "3.3.3", - "turbo": "2.1.1" + "turbo": "2.1.2" }, "engines": { "node": ">=20.9.0", @@ -107,7 +107,7 @@ "@typescript-eslint/parser": "7.18.0", "@vercel/style-guide": "6.0.0", "eslint-config-prettier": "9.1.0", - "eslint-config-turbo": "2.1.1", + "eslint-config-turbo": "2.1.2", "eslint-plugin-only-warn": "1.1.0", "typescript": "5.6.2" } @@ -6118,13 +6118,12 @@ } }, "node_modules/eslint-config-turbo": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/eslint-config-turbo/-/eslint-config-turbo-2.1.1.tgz", - "integrity": "sha512-JJF8SZErmgKCGkt124WUmTt0sQ5YLvPo2YxDsfzn9avGJC7/BQIa+3FZoDb3zeYYsZx91pZ6htQAJaKK8NQQAg==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/eslint-config-turbo/-/eslint-config-turbo-2.1.2.tgz", + "integrity": "sha512-UCNwxBrTOx0K41h1OrwMg7vPdGvcGSAlj40ZzpuUi0S2Muac2UOs+6F2dMYQiKg7lX2HAtyHXlF0T2wlWNHjGg==", "dev": true, - "license": "MIT", "dependencies": { - "eslint-plugin-turbo": "2.1.1" + "eslint-plugin-turbo": "2.1.2" }, "peerDependencies": { "eslint": ">6.6.0" @@ -6791,11 +6790,10 @@ } }, "node_modules/eslint-plugin-turbo": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-turbo/-/eslint-plugin-turbo-2.1.1.tgz", - "integrity": "sha512-E/34kdQd0n3RP18+e0DSV0f3YTSCOojUh1p4X0Xrho2PBYmJ3umSnNo9FhkZt6UDACl+nBQcYTFkRHMz76lJdw==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-turbo/-/eslint-plugin-turbo-2.1.2.tgz", + "integrity": "sha512-q2ikGubfVLZDPEKliiuubZc3sI5oqbKIZJ6fRi6Bldv8E3cMNH3Qt7g6hXZV4+GxwQbzEEteCYSBNbOn1DBqRg==", "dev": true, - "license": "MIT", "dependencies": { "dotenv": "16.0.3" }, @@ -6808,7 +6806,6 @@ "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.0.3.tgz", "integrity": "sha512-7GO6HghkA5fYG9TYnNxi14/7K9f5occMlp3zXAuSxn7CKCxt9xbNWG7yF8hTCSUchlfWSe3uLmlPfigevRItzQ==", "dev": true, - "license": "BSD-2-Clause", "engines": { "node": ">=12" } @@ -15519,102 +15516,95 @@ } }, "node_modules/turbo": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/turbo/-/turbo-2.1.1.tgz", - "integrity": "sha512-u9gUDkmR9dFS8b5kAYqIETK4OnzsS4l2ragJ0+soSMHh6VEeNHjTfSjk1tKxCqLyziCrPogadxP680J+v6yGHw==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/turbo/-/turbo-2.1.2.tgz", + "integrity": "sha512-Jb0rbU4iHEVQ18An/YfakdIv9rKnd3zUfSE117EngrfWXFHo3RndVH96US3GsT8VHpwTncPePDBT2t06PaFLrw==", "dev": true, - "license": "MIT", "bin": { "turbo": "bin/turbo" }, "optionalDependencies": { - "turbo-darwin-64": "2.1.1", - "turbo-darwin-arm64": "2.1.1", - "turbo-linux-64": "2.1.1", - "turbo-linux-arm64": "2.1.1", - "turbo-windows-64": "2.1.1", - "turbo-windows-arm64": "2.1.1" + "turbo-darwin-64": "2.1.2", + "turbo-darwin-arm64": "2.1.2", + "turbo-linux-64": "2.1.2", + "turbo-linux-arm64": "2.1.2", + "turbo-windows-64": "2.1.2", + "turbo-windows-arm64": "2.1.2" } }, "node_modules/turbo-darwin-64": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/turbo-darwin-64/-/turbo-darwin-64-2.1.1.tgz", - "integrity": "sha512-aYNuJpZlCoi0Htd79fl/2DywpewGKijdXeOfg9KzNuPVKzSMYlAXuAlNGh0MKjiOcyqxQGL7Mq9LFhwA0VpDpQ==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/turbo-darwin-64/-/turbo-darwin-64-2.1.2.tgz", + "integrity": "sha512-3TEBxHWh99h2yIzkuIigMEOXt/ItYQp0aPiJjPd1xN4oDcsKK5AxiFKPH9pdtfIBzYsY59kQhZiFj0ELnSP7Bw==", "cpu": [ "x64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "darwin" ] }, "node_modules/turbo-darwin-arm64": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/turbo-darwin-arm64/-/turbo-darwin-arm64-2.1.1.tgz", - "integrity": "sha512-tifJKD8yHY48rHXPMcM8o1jI/Jk2KCaXiNjTKvvy9Zsim61BZksNVLelIbrRoCGwAN6PUBZO2lGU5iL/TQJ5Pw==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/turbo-darwin-arm64/-/turbo-darwin-arm64-2.1.2.tgz", + "integrity": "sha512-he0miWNq2WxJzsH82jS2Z4MXpnkzn9SH8a79iPXiJkq25QREImucscM4RPasXm8wARp91pyysJMq6aasD45CeA==", "cpu": [ "arm64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "darwin" ] }, "node_modules/turbo-linux-64": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/turbo-linux-64/-/turbo-linux-64-2.1.1.tgz", - "integrity": "sha512-Js6d/bSQe9DuV9c7ITXYpsU/ADzFHABdz1UIHa7Oqjj9VOEbFeA9WpAn0c+mdJrVD+IXJFbbDZUjN7VYssmtcg==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/turbo-linux-64/-/turbo-linux-64-2.1.2.tgz", + "integrity": "sha512-fKUBcc0rK8Vdqv5a/E3CSpMBLG1bzwv+Q0Q83F8fG2ZfNCNKGbcEYABdonNZkkx141Rj03cZQFCgxu3MVEGU+A==", "cpu": [ "x64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "linux" ] }, "node_modules/turbo-linux-arm64": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/turbo-linux-arm64/-/turbo-linux-arm64-2.1.1.tgz", - "integrity": "sha512-LidzTCq0yvQ+N8w8Qub9FmhQ/mmEIeoqFi7DSupekEV2EjvE9jw/zYc9Pk67X+g7dHVfgOnvVzmrjChdxpFePw==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/turbo-linux-arm64/-/turbo-linux-arm64-2.1.2.tgz", + "integrity": "sha512-sV8Bpmm0WiuxgbhxymcC7wSsuxfBBieI98GegSwbr/bs1ANAgzCg93urIrdKdQ3/b31zZxQwcaP4FBF1wx1Qdg==", "cpu": [ "arm64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "linux" ] }, "node_modules/turbo-windows-64": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/turbo-windows-64/-/turbo-windows-64-2.1.1.tgz", - "integrity": "sha512-GKc9ZywKwy4xLDhwXd6H07yzl0TB52HjXMrFLyHGhCVnf/w0oq4sLJv2sjbvuarPjsyx4xnCBJ3m3oyL2XmFtA==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/turbo-windows-64/-/turbo-windows-64-2.1.2.tgz", + "integrity": "sha512-wcmIJZI9ORT9ykHGliFE6kWRQrlH930QGSjSgWC8uFChFFuOyUlvC7ttcxuSvU9VqC7NF4C+GVAcFJQ8lTjN7g==", "cpu": [ "x64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "win32" ] }, "node_modules/turbo-windows-arm64": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/turbo-windows-arm64/-/turbo-windows-arm64-2.1.1.tgz", - "integrity": "sha512-oFKkMj11KKUv3xSK9/fhAEQTxLUp1Ol1EOktwc32+SFtEU0uls7kosAz0b+qe8k3pJGEMFdDPdqoEjyJidbxtQ==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/turbo-windows-arm64/-/turbo-windows-arm64-2.1.2.tgz", + "integrity": "sha512-zdnXjrhk7YO6CP+Q5wPueEvOCLH4lDa6C4rrwiakcWcPgcQGbVozJlo4uaQ6awo8HLWQEvOwu84RkWTdLAc/Hw==", "cpu": [ "arm64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "win32" diff --git a/package.json b/package.json index 96cb6819..e39db2f6 100644 --- a/package.json +++ b/package.json @@ -44,7 +44,7 @@ "diffscribe": "*", "glob": "11.0.0", "prettier": "3.3.3", - "turbo": "2.1.1" + "turbo": "2.1.2" }, "packageManager": "npm@10.7.0", "engines": { From 7c35e6b6e2985fc1f208603fffce91e757ac8771 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 14 Sep 2024 04:32:05 +0300 Subject: [PATCH 387/458] Bump @playwright/test from 1.47.0 to 1.47.1 (#757) Bumps [@playwright/test](https://github.com/microsoft/playwright) from 1.47.0 to 1.47.1. - [Release notes](https://github.com/microsoft/playwright/releases) - [Commits](https://github.com/microsoft/playwright/compare/v1.47.0...v1.47.1) --- updated-dependencies: - dependency-name: "@playwright/test" dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- package-lock.json | 24 ++++++++++++------------ 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 60d8f2ba..877ada3a 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -24,7 +24,7 @@ "devDependencies": { "@neshca/cache-handler": "*", "@next/eslint-plugin-next": "14.2.11", - "@playwright/test": "1.47.0", + "@playwright/test": "1.47.1", "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.12", diff --git a/package-lock.json b/package-lock.json index cd343abc..d4daee89 100644 --- a/package-lock.json +++ b/package-lock.json @@ -44,7 +44,7 @@ "devDependencies": { "@neshca/cache-handler": "*", "@next/eslint-plugin-next": "14.2.11", - "@playwright/test": "1.47.0", + "@playwright/test": "1.47.1", "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.12", @@ -2551,12 +2551,12 @@ } }, "node_modules/@playwright/test": { - "version": "1.47.0", - "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.47.0.tgz", - "integrity": "sha512-SgAdlSwYVpToI4e/IH19IHHWvoijAYH5hu2MWSXptRypLSnzj51PcGD+rsOXFayde4P9ZLi+loXVwArg6IUkCA==", + "version": "1.47.1", + "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.47.1.tgz", + "integrity": "sha512-dbWpcNQZ5nj16m+A5UNScYx7HX5trIy7g4phrcitn+Nk83S32EBX/CLU4hiF4RGKX/yRc93AAqtfaXB7JWBd4Q==", "devOptional": true, "dependencies": { - "playwright": "1.47.0" + "playwright": "1.47.1" }, "bin": { "playwright": "cli.js" @@ -12588,12 +12588,12 @@ } }, "node_modules/playwright": { - "version": "1.47.0", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.47.0.tgz", - "integrity": "sha512-jOWiRq2pdNAX/mwLiwFYnPHpEZ4rM+fRSQpRHwEwZlP2PUANvL3+aJOF/bvISMhFD30rqMxUB4RJx9aQbfh4Ww==", + "version": "1.47.1", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.47.1.tgz", + "integrity": "sha512-SUEKi6947IqYbKxRiqnbUobVZY4bF1uu+ZnZNJX9DfU1tlf2UhWfvVjLf01pQx9URsOr18bFVUKXmanYWhbfkw==", "devOptional": true, "dependencies": { - "playwright-core": "1.47.0" + "playwright-core": "1.47.1" }, "bin": { "playwright": "cli.js" @@ -12606,9 +12606,9 @@ } }, "node_modules/playwright-core": { - "version": "1.47.0", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.47.0.tgz", - "integrity": "sha512-1DyHT8OqkcfCkYUD9zzUTfg7EfTd+6a8MkD/NWOvjo0u/SCNd5YmY/lJwFvUZOxJbWNds+ei7ic2+R/cRz/PDg==", + "version": "1.47.1", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.47.1.tgz", + "integrity": "sha512-i1iyJdLftqtt51mEk6AhYFaAJCDx0xQ/O5NU8EKaWFgMjItPVma542Nh/Aq8aLCjIJSzjaiEQGW/nyqLkGF1OQ==", "devOptional": true, "bin": { "playwright-core": "cli.js" From be27549077a8cfc09ec03c1e528e7125768d6c10 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 17 Sep 2024 13:25:47 +0300 Subject: [PATCH 388/458] Add error handling for `keyExpirationStrategy` and `prerenderManifest` parsing (#758) * Bump @biomejs/biome from 1.8.3 to 1.9.1 Bumps [@biomejs/biome](https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome) from 1.8.3 to 1.9.1. - [Release notes](https://github.com/biomejs/biome/releases) - [Changelog](https://github.com/biomejs/biome/blob/main/CHANGELOG.md) - [Commits](https://github.com/biomejs/biome/commits/cli/v1.9.1/packages/@biomejs/biome) --- updated-dependencies: - dependency-name: "@biomejs/biome" dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] * Update biome.json with `npx biome migrate --write` * Add error handling for `keyExpirationStrategy` and `prerenderManifest` parsing Also fix codestyle errors after Biome.js update --------- Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Arseny <132773930+better-salmon@users.noreply.github.com> --- .changeset/cuddly-bottles-shake.md | 5 + apps/cache-testing/cache-handler-server.mjs | 21 - apps/cache-testing/package.json | 8 +- apps/cache-testing/run-app-instances.ts | 5 +- .../src/components/restart-button.tsx | 2 +- .../src/components/revalidate-button.tsx | 2 +- apps/cache-testing/src/globals.css | 7 +- apps/cache-testing/tests/test-helpers.ts | 3 + biome.json | 62 +-- internal/backend/src/backend.ts | 3 + package-lock.json | 499 +++++++++++------- package.json | 2 +- packages/cache-handler/src/cache-handler.ts | 19 +- .../handlers/experimental-redis-cluster.ts | 10 +- .../src/handlers/redis-strings.ts | 10 +- 15 files changed, 380 insertions(+), 278 deletions(-) create mode 100644 .changeset/cuddly-bottles-shake.md delete mode 100644 apps/cache-testing/cache-handler-server.mjs diff --git a/.changeset/cuddly-bottles-shake.md b/.changeset/cuddly-bottles-shake.md new file mode 100644 index 00000000..47ded4d2 --- /dev/null +++ b/.changeset/cuddly-bottles-shake.md @@ -0,0 +1,5 @@ +--- +'@neshca/cache-handler': patch +--- + +Add error handling for `keyExpirationStrategy` and `prerenderManifest` parsing. diff --git a/apps/cache-testing/cache-handler-server.mjs b/apps/cache-testing/cache-handler-server.mjs deleted file mode 100644 index d952ea49..00000000 --- a/apps/cache-testing/cache-handler-server.mjs +++ /dev/null @@ -1,21 +0,0 @@ -// @ts-check - -import { CacheHandler } from '@neshca/cache-handler'; -import createLruHandler from '@neshca/cache-handler/local-lru'; -import createServerHandler from '@neshca/cache-handler/server'; - -CacheHandler.onCreation(() => { - const baseUrl = process.env.REMOTE_CACHE_SERVER_BASE_URL ?? 'http://localhost:8080'; - - const httpHandler = createServerHandler({ - baseUrl, - }); - - const localHandler = createLruHandler(); - - return { - handlers: [httpHandler, localHandler], - }; -}); - -export default CacheHandler; diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 877ada3a..93a921f4 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -17,12 +17,14 @@ "start": "dotenv -e .env.local -v SERVER_STARTED=1 node .next/standalone/apps/cache-testing/server.js" }, "dependencies": { + "@neshca/cache-handler": "*", + "axios": "1.7.7", "next": "14.2.11", "react": "18.3.1", - "react-dom": "18.3.1" + "react-dom": "18.3.1", + "redis": "4.7.0" }, "devDependencies": { - "@neshca/cache-handler": "*", "@next/eslint-plugin-next": "14.2.11", "@playwright/test": "1.47.1", "@repo/eslint-config": "*", @@ -31,12 +33,10 @@ "@types/node": "22.5.4", "@types/react": "18.3.5", "@types/react-dom": "18.3.0", - "axios": "1.7.7", "dotenv-cli": "7.4.2", "eslint": "8.57.0", "fastify": "4.28.1", "pm2": "5.4.2", - "redis": "4.7.0", "rimraf": "6.0.1", "tsx": "4.19.1", "typescript": "5.6.2" diff --git a/apps/cache-testing/run-app-instances.ts b/apps/cache-testing/run-app-instances.ts index cc327a77..5aef554b 100644 --- a/apps/cache-testing/run-app-instances.ts +++ b/apps/cache-testing/run-app-instances.ts @@ -2,6 +2,7 @@ import { scheduler } from 'node:timers/promises'; import Fastify from 'fastify'; +// biome-ignore lint/style/noNamespaceImport: pm2 works only with Namespace import import * as pm2Default from 'pm2'; const { default: pm2 } = pm2Default as unknown as { default: typeof import('pm2') }; @@ -67,11 +68,11 @@ app.get('/restart/:port', async (request, reply) => { if (restartError) { console.error(restartError); - void reply.code(500).send({ status: 'error' }); + reply.code(500).send({ status: 'error' }); } // workaround for unstable tests - void scheduler.wait(1000).then(async () => { + scheduler.wait(1000).then(async () => { await reply.code(200).send({ restarted: name }); }); }); diff --git a/apps/cache-testing/src/components/restart-button.tsx b/apps/cache-testing/src/components/restart-button.tsx index d48735b9..e64e3b72 100644 --- a/apps/cache-testing/src/components/restart-button.tsx +++ b/apps/cache-testing/src/components/restart-button.tsx @@ -6,7 +6,7 @@ export function RestartButton(): JSX.Element { const [restartState, setRestartState] = useState(''); function restart(): void { - void fetch('/api/restart-app').then((result) => { + fetch('/api/restart-app').then((result) => { if (!result.ok) { setRestartState('Fail to restart'); } diff --git a/apps/cache-testing/src/components/revalidate-button.tsx b/apps/cache-testing/src/components/revalidate-button.tsx index 57d61fec..94a37dca 100644 --- a/apps/cache-testing/src/components/revalidate-button.tsx +++ b/apps/cache-testing/src/components/revalidate-button.tsx @@ -28,7 +28,7 @@ export function RevalidateButton({ searchParams.set(type, pathname); } - void fetch(`/api/revalidate-${nextApi}?${searchParams.toString()}`).then(async (result) => { + fetch(`/api/revalidate-${nextApi}?${searchParams.toString()}`).then(async (result) => { if (!result.ok) { setRevalidation('Fail to revalidate'); diff --git a/apps/cache-testing/src/globals.css b/apps/cache-testing/src/globals.css index 193c8b6c..b635028d 100644 --- a/apps/cache-testing/src/globals.css +++ b/apps/cache-testing/src/globals.css @@ -1,8 +1,9 @@ :root { --max-width: 1100px; --border-radius: 12px; - --font-mono: ui-monospace, Menlo, Monaco, 'Cascadia Mono', 'Segoe UI Mono', 'Roboto Mono', 'Oxygen Mono', - 'Ubuntu Monospace', 'Source Code Pro', 'Fira Mono', 'Droid Sans Mono', 'Courier New', monospace; + --font-mono: + ui-monospace, Menlo, Monaco, "Cascadia Mono", "Segoe UI Mono", "Roboto Mono", "Oxygen Mono", + "Ubuntu Monospace", "Source Code Pro", "Fira Mono", "Droid Sans Mono", "Courier New", monospace; --foreground-rgb: 0, 0, 0; --background-start-rgb: 214, 219, 220; @@ -63,7 +64,7 @@ html, body { max-width: 100vw; overflow-x: hidden; - font-family: 'Courier New', Courier, monospace; + font-family: "Courier New", Courier, monospace; } body { diff --git a/apps/cache-testing/tests/test-helpers.ts b/apps/cache-testing/tests/test-helpers.ts index 01d78de5..496cc237 100644 --- a/apps/cache-testing/tests/test-helpers.ts +++ b/apps/cache-testing/tests/test-helpers.ts @@ -22,6 +22,9 @@ export async function refreshPageCache(page: Page, by: 'tag' | 'path') { await revalidateByPath(page); break; } + default: { + throw new Error(`Invalid by: ${by}`); + } } await page.reload(); diff --git a/biome.json b/biome.json index d12fb6fb..c3084016 100644 --- a/biome.json +++ b/biome.json @@ -6,65 +6,37 @@ "linter": { "enabled": true, "rules": { - "recommended": true, + "all": true, "suspicious": { - "noConsoleLog": "error", - "noApproximativeNumericConstant": "error", - "noMisrefactoredShorthandAssign": "error", - "useAwait": "error", - "noDuplicateTestHooks": "error" - }, - "correctness": { - "noUndeclaredVariables": "error", - "noUnusedVariables": "error", - "noUnusedImports": "error", - "noUnusedPrivateClassMembers": "error", - "noConstantMathMinMaxClamp": "error", - "noFlatMapIdentity": "error" + "noConsole": { + "level": "error", + "options": { "allow": ["assert", "error", "info", "warn"] } + } }, "style": { - "noNamespace": "error", - "noNegationElse": "error", - "noParameterProperties": "error", - "noRestrictedGlobals": "error", - "noShoutyConstants": "error", - "useBlockStatements": "error", - "useCollapsedElseIf": "error", - "useShorthandArrayType": "error", - "useShorthandAssign": "error", - "useSingleCaseStatement": "error", - "useImportType": "error", - "useNumberNamespace": "error", - "useShorthandFunctionType": "error", "useFilenamingConvention": { "level": "error", "options": { "filenameCases": ["kebab-case"] } }, - "useNodeAssertStrict": "error" + "noDefaultExport": "off", + "useNamingConvention": "off" }, - "nursery": { - "noDoneCallback": "error", - "noDuplicateElseIf": "error", - "noEvolvingTypes": "error", - "noMisplacedAssertion": "error", - "useNumberToFixedDigitsArgument": "error", - "useThrowNewError": "error", - "useTopLevelRegex": "error", - "noYodaExpression": "error", - "noUnusedFunctionParameters": "error", - "noUselessUndefinedInitialization": "error" + "correctness": { + "noNodejsModules": "off", + "noUndeclaredDependencies": "off", + "useImportExtensions": "off" }, "complexity": { - "useSimplifiedLogicExpression": "error", - "noUselessTernary": "error" + "noExcessiveCognitiveComplexity": "off" }, "performance": { - "noReExportAll": "error" + "noBarrelFile": "off" } } }, + "formatter": { "enabled": true, "lineWidth": 120, @@ -95,7 +67,11 @@ }, { "include": ["*.test.ts"], - "linter": { "rules": { "nursery": { "useTopLevelRegex": "off" } } } + "linter": { "rules": { "performance": { "useTopLevelRegex": "off" } } } + }, + { + "include": ["*.js", "*.cjs"], + "linter": { "rules": { "nursery": { "noCommonJs": "off" } } } } ] } diff --git a/internal/backend/src/backend.ts b/internal/backend/src/backend.ts index b4e30ce8..c723b246 100644 --- a/internal/backend/src/backend.ts +++ b/internal/backend/src/backend.ts @@ -72,6 +72,9 @@ server.get('/count/:routerType/:preRendered:/:fallback/:page', async (request, r .send(result); break; } + default: { + throw new Error(`Invalid page: ${page}`); + } } }); diff --git a/package-lock.json b/package-lock.json index d4daee89..78394231 100644 --- a/package-lock.json +++ b/package-lock.json @@ -20,7 +20,7 @@ }, "devDependencies": { "@actions/core": "1.10.1", - "@biomejs/biome": "1.8.3", + "@biomejs/biome": "1.9.1", "@repo/prettier-config": "*", "@repo/typescript-config": "*", "diffscribe": "*", @@ -37,12 +37,14 @@ "version": "0.0.0", "license": "MIT", "dependencies": { + "@neshca/cache-handler": "*", + "axios": "1.7.7", "next": "14.2.11", "react": "18.3.1", - "react-dom": "18.3.1" + "react-dom": "18.3.1", + "redis": "4.7.0" }, "devDependencies": { - "@neshca/cache-handler": "*", "@next/eslint-plugin-next": "14.2.11", "@playwright/test": "1.47.1", "@repo/eslint-config": "*", @@ -51,17 +53,25 @@ "@types/node": "22.5.4", "@types/react": "18.3.5", "@types/react-dom": "18.3.0", - "axios": "1.7.7", "dotenv-cli": "7.4.2", "eslint": "8.57.0", "fastify": "4.28.1", "pm2": "5.4.2", - "redis": "4.7.0", "rimraf": "6.0.1", "tsx": "4.19.1", "typescript": "5.6.2" } }, + "apps/cache-testing/node_modules/@types/node": { + "version": "22.5.4", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.4.tgz", + "integrity": "sha512-FDuKUJQm/ju9fT/SeX/6+gBzoPzlVCzfzmGkwKvRHQVxi4BntVbyIwf6a4Xn62mrvndLiml6z/UBXIdEVjQLXg==", + "dev": true, + "license": "MIT", + "dependencies": { + "undici-types": "~6.19.2" + } + }, "docs/cache-handler-docs": { "version": "0.1.0", "dependencies": { @@ -83,6 +93,16 @@ "typescript": "5.6.2" } }, + "docs/cache-handler-docs/node_modules/@types/node": { + "version": "22.5.4", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.4.tgz", + "integrity": "sha512-FDuKUJQm/ju9fT/SeX/6+gBzoPzlVCzfzmGkwKvRHQVxi4BntVbyIwf6a4Xn62mrvndLiml6z/UBXIdEVjQLXg==", + "dev": true, + "license": "MIT", + "dependencies": { + "undici-types": "~6.19.2" + } + }, "internal/backend": { "version": "0.0.0", "license": "MIT", @@ -99,6 +119,16 @@ "typescript": "5.6.2" } }, + "internal/backend/node_modules/@types/node": { + "version": "22.5.4", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.4.tgz", + "integrity": "sha512-FDuKUJQm/ju9fT/SeX/6+gBzoPzlVCzfzmGkwKvRHQVxi4BntVbyIwf6a4Xn62mrvndLiml6z/UBXIdEVjQLXg==", + "dev": true, + "license": "MIT", + "dependencies": { + "undici-types": "~6.19.2" + } + }, "internal/eslint-config": { "name": "@repo/eslint-config", "version": "0.0.0", @@ -126,6 +156,16 @@ "typescript": "5.6.2" } }, + "internal/next-common/node_modules/@types/node": { + "version": "22.5.4", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.4.tgz", + "integrity": "sha512-FDuKUJQm/ju9fT/SeX/6+gBzoPzlVCzfzmGkwKvRHQVxi4BntVbyIwf6a4Xn62mrvndLiml6z/UBXIdEVjQLXg==", + "dev": true, + "license": "MIT", + "dependencies": { + "undici-types": "~6.19.2" + } + }, "internal/next-lru-cache": { "name": "@neshca/next-lru-cache", "version": "0.0.0", @@ -141,6 +181,16 @@ "typescript": "5.6.2" } }, + "internal/next-lru-cache/node_modules/@types/node": { + "version": "22.5.4", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.4.tgz", + "integrity": "sha512-FDuKUJQm/ju9fT/SeX/6+gBzoPzlVCzfzmGkwKvRHQVxi4BntVbyIwf6a4Xn62mrvndLiml6z/UBXIdEVjQLXg==", + "dev": true, + "license": "MIT", + "dependencies": { + "undici-types": "~6.19.2" + } + }, "internal/prettier-config": { "name": "@repo/prettier-config", "version": "0.0.0", @@ -627,9 +677,9 @@ } }, "node_modules/@biomejs/biome": { - "version": "1.8.3", - "resolved": "https://registry.npmjs.org/@biomejs/biome/-/biome-1.8.3.tgz", - "integrity": "sha512-/uUV3MV+vyAczO+vKrPdOW0Iaet7UnJMU4bNMinggGJTAnBPjCoLEYcyYtYHNnUNYlv4xZMH6hVIQCAozq8d5w==", + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/@biomejs/biome/-/biome-1.9.1.tgz", + "integrity": "sha512-Ps0Rg0zg3B1zpx+zQHMz5b0n0PBNCAaXttHEDTVrJD5YXR6Uj3T+abTDgeS3wsu4z5i2whqcE1lZxGyWH4bZYg==", "dev": true, "hasInstallScript": true, "license": "MIT OR Apache-2.0", @@ -644,20 +694,20 @@ "url": "https://opencollective.com/biome" }, "optionalDependencies": { - "@biomejs/cli-darwin-arm64": "1.8.3", - "@biomejs/cli-darwin-x64": "1.8.3", - "@biomejs/cli-linux-arm64": "1.8.3", - "@biomejs/cli-linux-arm64-musl": "1.8.3", - "@biomejs/cli-linux-x64": "1.8.3", - "@biomejs/cli-linux-x64-musl": "1.8.3", - "@biomejs/cli-win32-arm64": "1.8.3", - "@biomejs/cli-win32-x64": "1.8.3" + "@biomejs/cli-darwin-arm64": "1.9.1", + "@biomejs/cli-darwin-x64": "1.9.1", + "@biomejs/cli-linux-arm64": "1.9.1", + "@biomejs/cli-linux-arm64-musl": "1.9.1", + "@biomejs/cli-linux-x64": "1.9.1", + "@biomejs/cli-linux-x64-musl": "1.9.1", + "@biomejs/cli-win32-arm64": "1.9.1", + "@biomejs/cli-win32-x64": "1.9.1" } }, "node_modules/@biomejs/cli-darwin-arm64": { - "version": "1.8.3", - "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-1.8.3.tgz", - "integrity": "sha512-9DYOjclFpKrH/m1Oz75SSExR8VKvNSSsLnVIqdnKexj6NwmiMlKk94Wa1kZEdv6MCOHGHgyyoV57Cw8WzL5n3A==", + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-1.9.1.tgz", + "integrity": "sha512-js0brHswq/BoeKgfSEUJYOjUOlML6p65Nantti+PsoQ61u9+YVGIZ7325LK7iUpDH8KVJT+Bx7K2b/6Q//W1Pw==", "cpu": [ "arm64" ], @@ -672,9 +722,9 @@ } }, "node_modules/@biomejs/cli-darwin-x64": { - "version": "1.8.3", - "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-x64/-/cli-darwin-x64-1.8.3.tgz", - "integrity": "sha512-UeW44L/AtbmOF7KXLCoM+9PSgPo0IDcyEUfIoOXYeANaNXXf9mLUwV1GeF2OWjyic5zj6CnAJ9uzk2LT3v/wAw==", + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-x64/-/cli-darwin-x64-1.9.1.tgz", + "integrity": "sha512-2zVyjUg5rN0k8XrytkubQWLbp2r/AS5wPhXs4vgVjvqbLnzo32EGX8p61gzroF2dH9DCUCfskdrigCGqNdEbpg==", "cpu": [ "x64" ], @@ -689,9 +739,9 @@ } }, "node_modules/@biomejs/cli-linux-arm64": { - "version": "1.8.3", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64/-/cli-linux-arm64-1.8.3.tgz", - "integrity": "sha512-fed2ji8s+I/m8upWpTJGanqiJ0rnlHOK3DdxsyVLZQ8ClY6qLuPc9uehCREBifRJLl/iJyQpHIRufLDeotsPtw==", + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64/-/cli-linux-arm64-1.9.1.tgz", + "integrity": "sha512-QgxwfnG+r2aer5RNGR67Ey91Tv7xXW8E9YckHhwuyWjdLEvKWkrSJrhVG/6ub0kVvTSNkYOuT/7/jMOFBuUbRA==", "cpu": [ "arm64" ], @@ -706,9 +756,9 @@ } }, "node_modules/@biomejs/cli-linux-arm64-musl": { - "version": "1.8.3", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-1.8.3.tgz", - "integrity": "sha512-9yjUfOFN7wrYsXt/T/gEWfvVxKlnh3yBpnScw98IF+oOeCYb5/b/+K7YNqKROV2i1DlMjg9g/EcN9wvj+NkMuQ==", + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-1.9.1.tgz", + "integrity": "sha512-L/JmXKvhsZ1lTgqOr3tWkzuY/NRppdIscHeC9aaiR72WjnBgJS94mawl9BWmGB3aWBc0q6oSDWnBS7617EMMmA==", "cpu": [ "arm64" ], @@ -723,9 +773,9 @@ } }, "node_modules/@biomejs/cli-linux-x64": { - "version": "1.8.3", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64/-/cli-linux-x64-1.8.3.tgz", - "integrity": "sha512-I8G2QmuE1teISyT8ie1HXsjFRz9L1m5n83U1O6m30Kw+kPMPSKjag6QGUn+sXT8V+XWIZxFFBoTDEDZW2KPDDw==", + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64/-/cli-linux-x64-1.9.1.tgz", + "integrity": "sha512-F0INygtzI2L2n2R1KtYHGr3YWDt9Up1zrUluwembM+iJ1dXN3qzlSb7deFUsSJm4FaIPriqs6Xa56ukdQW6UeQ==", "cpu": [ "x64" ], @@ -740,9 +790,9 @@ } }, "node_modules/@biomejs/cli-linux-x64-musl": { - "version": "1.8.3", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-1.8.3.tgz", - "integrity": "sha512-UHrGJX7PrKMKzPGoEsooKC9jXJMa28TUSMjcIlbDnIO4EAavCoVmNQaIuUSH0Ls2mpGMwUIf+aZJv657zfWWjA==", + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-1.9.1.tgz", + "integrity": "sha512-gY+eFLIAW45v3WicQHicvjRfA0ntMZHx7h937bXwBMFNFoKmB6rMi6+fKQ6/hiS6juhsFxZdZIz20m15s49J6A==", "cpu": [ "x64" ], @@ -757,9 +807,9 @@ } }, "node_modules/@biomejs/cli-win32-arm64": { - "version": "1.8.3", - "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-arm64/-/cli-win32-arm64-1.8.3.tgz", - "integrity": "sha512-J+Hu9WvrBevfy06eU1Na0lpc7uR9tibm9maHynLIoAjLZpQU3IW+OKHUtyL8p6/3pT2Ju5t5emReeIS2SAxhkQ==", + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-arm64/-/cli-win32-arm64-1.9.1.tgz", + "integrity": "sha512-7Jahxar3OB+aTPOgXisMJmMKMsjcK+UmdlG3UIOQjzN/ZFEsPV+GT3bfrVjZDQaCw/zes0Cqd7VTWFjFTC/+MQ==", "cpu": [ "arm64" ], @@ -774,9 +824,9 @@ } }, "node_modules/@biomejs/cli-win32-x64": { - "version": "1.8.3", - "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-x64/-/cli-win32-x64-1.8.3.tgz", - "integrity": "sha512-/PJ59vA1pnQeKahemaQf4Nyj7IKUvGQSc3Ze1uIGi+Wvr1xF7rGobSrAAG01T/gUDG21vkDsZYM03NAmPiVkqg==", + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-x64/-/cli-win32-x64-1.9.1.tgz", + "integrity": "sha512-liSRWjWzFhyG7s1jg/Bbv9FL+ha/CEd5tFO3+dFIJNplL4TnvAivtyfRVi/tu/pNjISbV1k9JwdBewtAKAgA0w==", "cpu": [ "x64" ], @@ -1479,9 +1529,9 @@ } }, "node_modules/@eslint-community/regexpp": { - "version": "4.11.0", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.11.0.tgz", - "integrity": "sha512-G/M/tIiMrTAxEWRfLfQJMmGNX28IxBg4PBz8XqQhqUHLFI6TL2htpIB1iQCj144V5ee/JaKyT9/WZ0MGZWfA7A==", + "version": "4.11.1", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.11.1.tgz", + "integrity": "sha512-m4DVN9ZqskZoLU5GlWZadwDnYo3vAEydiUayB9widCl9ffWx2IvPnp6n3on5rJmziJSw9Bv+Z3ChDVdMwXCY8Q==", "dev": true, "license": "MIT", "engines": { @@ -1689,9 +1739,9 @@ } }, "node_modules/@isaacs/cliui/node_modules/ansi-regex": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", - "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.1.0.tgz", + "integrity": "sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==", "dev": true, "license": "MIT", "engines": { @@ -1782,11 +1832,6 @@ "fs-extra": "^8.1.0" } }, - "node_modules/@manypkg/find-root/node_modules/@types/node": { - "version": "12.20.55", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", - "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" - }, "node_modules/@manypkg/find-root/node_modules/fs-extra": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", @@ -2216,13 +2261,15 @@ "node_modules/@next/env": { "version": "14.2.11", "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.11.tgz", - "integrity": "sha512-HYsQRSIXwiNqvzzYThrBwq6RhXo3E0n8j8nQnAs8i4fCEo2Zf/3eS0IiRA8XnRg9Ha0YnpkyJZIZg1qEwemrHw==" + "integrity": "sha512-HYsQRSIXwiNqvzzYThrBwq6RhXo3E0n8j8nQnAs8i4fCEo2Zf/3eS0IiRA8XnRg9Ha0YnpkyJZIZg1qEwemrHw==", + "license": "MIT" }, "node_modules/@next/eslint-plugin-next": { "version": "14.2.11", "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.2.11.tgz", "integrity": "sha512-7mw+xW7Y03Ph4NTCcAzYe+vu4BNjEHZUfZayyF3Y1D9RX6c5NIe25m1grHEAkyUuaqjRxOYhnCNeglOkIqLkBA==", "dev": true, + "license": "MIT", "dependencies": { "glob": "10.3.10" } @@ -2319,6 +2366,7 @@ "cpu": [ "arm64" ], + "license": "MIT", "optional": true, "os": [ "darwin" @@ -2334,6 +2382,7 @@ "cpu": [ "x64" ], + "license": "MIT", "optional": true, "os": [ "darwin" @@ -2349,6 +2398,7 @@ "cpu": [ "arm64" ], + "license": "MIT", "optional": true, "os": [ "linux" @@ -2364,6 +2414,7 @@ "cpu": [ "arm64" ], + "license": "MIT", "optional": true, "os": [ "linux" @@ -2379,6 +2430,7 @@ "cpu": [ "x64" ], + "license": "MIT", "optional": true, "os": [ "linux" @@ -2394,6 +2446,7 @@ "cpu": [ "x64" ], + "license": "MIT", "optional": true, "os": [ "linux" @@ -2409,6 +2462,7 @@ "cpu": [ "arm64" ], + "license": "MIT", "optional": true, "os": [ "win32" @@ -2424,6 +2478,7 @@ "cpu": [ "ia32" ], + "license": "MIT", "optional": true, "os": [ "win32" @@ -2439,6 +2494,7 @@ "cpu": [ "x64" ], + "license": "MIT", "optional": true, "os": [ "win32" @@ -2555,6 +2611,7 @@ "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.47.1.tgz", "integrity": "sha512-dbWpcNQZ5nj16m+A5UNScYx7HX5trIy7g4phrcitn+Nk83S32EBX/CLU4hiF4RGKX/yRc93AAqtfaXB7JWBd4Q==", "devOptional": true, + "license": "Apache-2.0", "dependencies": { "playwright": "1.47.1" }, @@ -2843,9 +2900,9 @@ "link": true }, "node_modules/@rollup/rollup-android-arm-eabi": { - "version": "4.21.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.21.2.tgz", - "integrity": "sha512-fSuPrt0ZO8uXeS+xP3b+yYTCBUd05MoSp2N/MFOgjhhUhMmchXlpTQrTpI8T+YAwAQuK7MafsCOxW7VrPMrJcg==", + "version": "4.21.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.21.3.tgz", + "integrity": "sha512-MmKSfaB9GX+zXl6E8z4koOr/xU63AMVleLEa64v7R0QF/ZloMs5vcD1sHgM64GXXS1csaJutG+ddtzcueI/BLg==", "cpu": [ "arm" ], @@ -2857,9 +2914,9 @@ ] }, "node_modules/@rollup/rollup-android-arm64": { - "version": "4.21.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.21.2.tgz", - "integrity": "sha512-xGU5ZQmPlsjQS6tzTTGwMsnKUtu0WVbl0hYpTPauvbRAnmIvpInhJtgjj3mcuJpEiuUw4v1s4BimkdfDWlh7gA==", + "version": "4.21.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.21.3.tgz", + "integrity": "sha512-zrt8ecH07PE3sB4jPOggweBjJMzI1JG5xI2DIsUbkA+7K+Gkjys6eV7i9pOenNSDJH3eOr/jLb/PzqtmdwDq5g==", "cpu": [ "arm64" ], @@ -2871,9 +2928,9 @@ ] }, "node_modules/@rollup/rollup-darwin-arm64": { - "version": "4.21.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.21.2.tgz", - "integrity": "sha512-99AhQ3/ZMxU7jw34Sq8brzXqWH/bMnf7ZVhvLk9QU2cOepbQSVTns6qoErJmSiAvU3InRqC2RRZ5ovh1KN0d0Q==", + "version": "4.21.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.21.3.tgz", + "integrity": "sha512-P0UxIOrKNBFTQaXTxOH4RxuEBVCgEA5UTNV6Yz7z9QHnUJ7eLX9reOd/NYMO3+XZO2cco19mXTxDMXxit4R/eQ==", "cpu": [ "arm64" ], @@ -2885,9 +2942,9 @@ ] }, "node_modules/@rollup/rollup-darwin-x64": { - "version": "4.21.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.21.2.tgz", - "integrity": "sha512-ZbRaUvw2iN/y37x6dY50D8m2BnDbBjlnMPotDi/qITMJ4sIxNY33HArjikDyakhSv0+ybdUxhWxE6kTI4oX26w==", + "version": "4.21.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.21.3.tgz", + "integrity": "sha512-L1M0vKGO5ASKntqtsFEjTq/fD91vAqnzeaF6sfNAy55aD+Hi2pBI5DKwCO+UNDQHWsDViJLqshxOahXyLSh3EA==", "cpu": [ "x64" ], @@ -2899,9 +2956,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm-gnueabihf": { - "version": "4.21.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.21.2.tgz", - "integrity": "sha512-ztRJJMiE8nnU1YFcdbd9BcH6bGWG1z+jP+IPW2oDUAPxPjo9dverIOyXz76m6IPA6udEL12reYeLojzW2cYL7w==", + "version": "4.21.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.21.3.tgz", + "integrity": "sha512-btVgIsCjuYFKUjopPoWiDqmoUXQDiW2A4C3Mtmp5vACm7/GnyuprqIDPNczeyR5W8rTXEbkmrJux7cJmD99D2g==", "cpu": [ "arm" ], @@ -2913,9 +2970,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm-musleabihf": { - "version": "4.21.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.21.2.tgz", - "integrity": "sha512-flOcGHDZajGKYpLV0JNc0VFH361M7rnV1ee+NTeC/BQQ1/0pllYcFmxpagltANYt8FYf9+kL6RSk80Ziwyhr7w==", + "version": "4.21.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.21.3.tgz", + "integrity": "sha512-zmjbSphplZlau6ZTkxd3+NMtE4UKVy7U4aVFMmHcgO5CUbw17ZP6QCgyxhzGaU/wFFdTfiojjbLG3/0p9HhAqA==", "cpu": [ "arm" ], @@ -2927,9 +2984,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-gnu": { - "version": "4.21.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.21.2.tgz", - "integrity": "sha512-69CF19Kp3TdMopyteO/LJbWufOzqqXzkrv4L2sP8kfMaAQ6iwky7NoXTp7bD6/irKgknDKM0P9E/1l5XxVQAhw==", + "version": "4.21.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.21.3.tgz", + "integrity": "sha512-nSZfcZtAnQPRZmUkUQwZq2OjQciR6tEoJaZVFvLHsj0MF6QhNMg0fQ6mUOsiCUpTqxTx0/O6gX0V/nYc7LrgPw==", "cpu": [ "arm64" ], @@ -2941,9 +2998,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-musl": { - "version": "4.21.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.21.2.tgz", - "integrity": "sha512-48pD/fJkTiHAZTnZwR0VzHrao70/4MlzJrq0ZsILjLW/Ab/1XlVUStYyGt7tdyIiVSlGZbnliqmult/QGA2O2w==", + "version": "4.21.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.21.3.tgz", + "integrity": "sha512-MnvSPGO8KJXIMGlQDYfvYS3IosFN2rKsvxRpPO2l2cum+Z3exiExLwVU+GExL96pn8IP+GdH8Tz70EpBhO0sIQ==", "cpu": [ "arm64" ], @@ -2955,9 +3012,9 @@ ] }, "node_modules/@rollup/rollup-linux-powerpc64le-gnu": { - "version": "4.21.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.21.2.tgz", - "integrity": "sha512-cZdyuInj0ofc7mAQpKcPR2a2iu4YM4FQfuUzCVA2u4HI95lCwzjoPtdWjdpDKyHxI0UO82bLDoOaLfpZ/wviyQ==", + "version": "4.21.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.21.3.tgz", + "integrity": "sha512-+W+p/9QNDr2vE2AXU0qIy0qQE75E8RTwTwgqS2G5CRQ11vzq0tbnfBd6brWhS9bCRjAjepJe2fvvkvS3dno+iw==", "cpu": [ "ppc64" ], @@ -2969,9 +3026,9 @@ ] }, "node_modules/@rollup/rollup-linux-riscv64-gnu": { - "version": "4.21.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.21.2.tgz", - "integrity": "sha512-RL56JMT6NwQ0lXIQmMIWr1SW28z4E4pOhRRNqwWZeXpRlykRIlEpSWdsgNWJbYBEWD84eocjSGDu/XxbYeCmwg==", + "version": "4.21.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.21.3.tgz", + "integrity": "sha512-yXH6K6KfqGXaxHrtr+Uoy+JpNlUlI46BKVyonGiaD74ravdnF9BUNC+vV+SIuB96hUMGShhKV693rF9QDfO6nQ==", "cpu": [ "riscv64" ], @@ -2983,9 +3040,9 @@ ] }, "node_modules/@rollup/rollup-linux-s390x-gnu": { - "version": "4.21.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.21.2.tgz", - "integrity": "sha512-PMxkrWS9z38bCr3rWvDFVGD6sFeZJw4iQlhrup7ReGmfn7Oukrr/zweLhYX6v2/8J6Cep9IEA/SmjXjCmSbrMQ==", + "version": "4.21.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.21.3.tgz", + "integrity": "sha512-R8cwY9wcnApN/KDYWTH4gV/ypvy9yZUHlbJvfaiXSB48JO3KpwSpjOGqO4jnGkLDSk1hgjYkTbTt6Q7uvPf8eg==", "cpu": [ "s390x" ], @@ -2997,9 +3054,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-gnu": { - "version": "4.21.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.21.2.tgz", - "integrity": "sha512-B90tYAUoLhU22olrafY3JQCFLnT3NglazdwkHyxNDYF/zAxJt5fJUB/yBoWFoIQ7SQj+KLe3iL4BhOMa9fzgpw==", + "version": "4.21.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.21.3.tgz", + "integrity": "sha512-kZPbX/NOPh0vhS5sI+dR8L1bU2cSO9FgxwM8r7wHzGydzfSjLRCFAT87GR5U9scj2rhzN3JPYVC7NoBbl4FZ0g==", "cpu": [ "x64" ], @@ -3011,9 +3068,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-musl": { - "version": "4.21.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.21.2.tgz", - "integrity": "sha512-7twFizNXudESmC9oneLGIUmoHiiLppz/Xs5uJQ4ShvE6234K0VB1/aJYU3f/4g7PhssLGKBVCC37uRkkOi8wjg==", + "version": "4.21.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.21.3.tgz", + "integrity": "sha512-S0Yq+xA1VEH66uiMNhijsWAafffydd2X5b77eLHfRmfLsRSpbiAWiRHV6DEpz6aOToPsgid7TI9rGd6zB1rhbg==", "cpu": [ "x64" ], @@ -3025,9 +3082,9 @@ ] }, "node_modules/@rollup/rollup-win32-arm64-msvc": { - "version": "4.21.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.21.2.tgz", - "integrity": "sha512-9rRero0E7qTeYf6+rFh3AErTNU1VCQg2mn7CQcI44vNUWM9Ze7MSRS/9RFuSsox+vstRt97+x3sOhEey024FRQ==", + "version": "4.21.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.21.3.tgz", + "integrity": "sha512-9isNzeL34yquCPyerog+IMCNxKR8XYmGd0tHSV+OVx0TmE0aJOo9uw4fZfUuk2qxobP5sug6vNdZR6u7Mw7Q+Q==", "cpu": [ "arm64" ], @@ -3039,9 +3096,9 @@ ] }, "node_modules/@rollup/rollup-win32-ia32-msvc": { - "version": "4.21.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.21.2.tgz", - "integrity": "sha512-5rA4vjlqgrpbFVVHX3qkrCo/fZTj1q0Xxpg+Z7yIo3J2AilW7t2+n6Q8Jrx+4MrYpAnjttTYF8rr7bP46BPzRw==", + "version": "4.21.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.21.3.tgz", + "integrity": "sha512-nMIdKnfZfzn1Vsk+RuOvl43ONTZXoAPUUxgcU0tXooqg4YrAqzfKzVenqqk2g5efWh46/D28cKFrOzDSW28gTA==", "cpu": [ "ia32" ], @@ -3053,9 +3110,9 @@ ] }, "node_modules/@rollup/rollup-win32-x64-msvc": { - "version": "4.21.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.21.2.tgz", - "integrity": "sha512-6UUxd0+SKomjdzuAcp+HAmxw1FlGBnl1v2yEPSabtx4lBfdXHDVsW7+lQkgz9cNFJGY3AWR7+V8P5BqkD9L9nA==", + "version": "4.21.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.21.3.tgz", + "integrity": "sha512-fOvu7PCQjAj4eWDEuD8Xz5gpzFqXzGlxHZozHP4b9Jxv9APtdxL6STqztDzMLuRXEc4UpXGGhx029Xgm91QBeA==", "cpu": [ "x64" ], @@ -3097,12 +3154,12 @@ } }, "node_modules/@tanstack/react-virtual": { - "version": "3.10.7", - "resolved": "https://registry.npmjs.org/@tanstack/react-virtual/-/react-virtual-3.10.7.tgz", - "integrity": "sha512-yeP+M0G8D+15ZFPivpuQ5hoM4Fa/PzERBx8P8EGcfEsXX3JOb9G9UUrqc47ZXAxvK+YqzM9T5qlJUYUFOwCZJw==", + "version": "3.10.8", + "resolved": "https://registry.npmjs.org/@tanstack/react-virtual/-/react-virtual-3.10.8.tgz", + "integrity": "sha512-VbzbVGSsZlQktyLrP5nxE+vE1ZR+U0NFAWPbJLoG2+DKPwd2D7dVICTVIIaYlJqX1ZCEnYDbaOpmMwbsyhBoIA==", "license": "MIT", "dependencies": { - "@tanstack/virtual-core": "3.10.7" + "@tanstack/virtual-core": "3.10.8" }, "funding": { "type": "github", @@ -3114,9 +3171,9 @@ } }, "node_modules/@tanstack/virtual-core": { - "version": "3.10.7", - "resolved": "https://registry.npmjs.org/@tanstack/virtual-core/-/virtual-core-3.10.7.tgz", - "integrity": "sha512-ND5dfsU0n9F4gROzwNNDJmg6y8n9pI8YWxtgbfJ5UcNn7Hx+MxEXtXcQ189tS7sh8pmCObgz2qSiyRKTZxT4dg==", + "version": "3.10.8", + "resolved": "https://registry.npmjs.org/@tanstack/virtual-core/-/virtual-core-3.10.8.tgz", + "integrity": "sha512-PBu00mtt95jbKFi6Llk9aik8bnR3tR/oQP1o3TSi+iG//+Q2RTIzCEgKkHG8BB86kxMNW6O8wku+Lmi+QFR6jA==", "license": "MIT", "funding": { "type": "github", @@ -3275,12 +3332,10 @@ "license": "MIT" }, "node_modules/@types/node": { - "version": "22.5.4", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.4.tgz", - "integrity": "sha512-FDuKUJQm/ju9fT/SeX/6+gBzoPzlVCzfzmGkwKvRHQVxi4BntVbyIwf6a4Xn62mrvndLiml6z/UBXIdEVjQLXg==", - "dependencies": { - "undici-types": "~6.19.2" - } + "version": "12.20.55", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", + "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==", + "license": "MIT" }, "node_modules/@types/node-fetch": { "version": "2.6.11", @@ -3301,15 +3356,15 @@ "license": "MIT" }, "node_modules/@types/prop-types": { - "version": "15.7.12", - "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.12.tgz", - "integrity": "sha512-5zvhXYtRNRluoE/jAp4GVsSduVUzNWKkOZrCDBWYtE7biZywwdC2AcEzg+cSMLFRfVgeAFqpfNabiPjxFddV1Q==", + "version": "15.7.13", + "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.13.tgz", + "integrity": "sha512-hCZTSvwbzWGvhqxp/RqVqwU999pBf2vp7hzIjiYOsl8wqOmUxkQ6ddw1cV3l8811+kdUFus/q4d1Y3E3SyEifA==", "license": "MIT" }, "node_modules/@types/qs": { - "version": "6.9.15", - "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.15.tgz", - "integrity": "sha512-uXHQKES6DQKKCLh441Xv/dwxOq1TVS3JPUMlEqoEglvlhR6Mxnlew/Xq/LRVHpLyk7iK3zODe1qYHIMltO7XGg==", + "version": "6.9.16", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.16.tgz", + "integrity": "sha512-7i+zxXdPD0T4cKDuxCUXJ4wHcsJLwENa6Z3dCu8cfCK743OGy5Nu1RmAGqDPsoTDINVEcdXKRvR/zre+P2Ku1A==", "license": "MIT", "peer": true }, @@ -4155,7 +4210,6 @@ "version": "1.7.7", "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.7.tgz", "integrity": "sha512-S4kL7XrjgBmvdGut0sN3yJxqYzrDOnivkBiN0OFs6hLiUam3UPvswUo0kqGyhqUZGEOytHyumEdXsAkgCOUf3Q==", - "dev": true, "license": "MIT", "dependencies": { "follow-redirects": "^1.15.6", @@ -4444,9 +4498,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001655", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001655.tgz", - "integrity": "sha512-jRGVy3iSGO5Uutn2owlb5gR6qsGngTw9ZTb4ali9f3glshcNmJ2noam4Mo9zia5P9Dk3jNNydy7vQjuE5dQmfg==", + "version": "1.0.30001660", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001660.tgz", + "integrity": "sha512-GacvNTTuATm26qC74pt+ad1fW15mlQ/zuTzzY1ZoIzECTP8HURDfF43kNxPgf7H1jmelCBQTTbBNxdSXOA7Bqg==", "funding": [ { "type": "opencollective", @@ -5418,12 +5472,12 @@ "license": "MIT" }, "node_modules/debug": { - "version": "4.3.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.6.tgz", - "integrity": "sha512-O/09Bd4Z1fBrU4VzkhFqVgpPzaGbw6Sm9FEkBT1A/YBXQFGuuSxa1dN2nxgxS34JmKXqYx8CZAwEVoJFImUXIg==", + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz", + "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==", "license": "MIT", "dependencies": { - "ms": "2.1.2" + "ms": "^2.1.3" }, "engines": { "node": ">=6.0" @@ -5689,9 +5743,9 @@ "license": "MIT" }, "node_modules/electron-to-chromium": { - "version": "1.5.13", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.13.tgz", - "integrity": "sha512-lbBcvtIJ4J6sS4tb5TLp1b4LyfCdMkwStzXPyAgVgTRAsep4bvrAGaBOP7ZJtQMNJpSQ9SqG4brWOroNaQtm7Q==", + "version": "1.5.24", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.24.tgz", + "integrity": "sha512-0x0wLCmpdKFCi9ulhvYZebgcPmHTkFVUfU2wzDykadkslKwT4oAmDTHEKLnlrDsMGZe4B+ksn8quZfZjYsBetA==", "dev": true, "license": "ISC" }, @@ -6122,6 +6176,7 @@ "resolved": "https://registry.npmjs.org/eslint-config-turbo/-/eslint-config-turbo-2.1.2.tgz", "integrity": "sha512-UCNwxBrTOx0K41h1OrwMg7vPdGvcGSAlj40ZzpuUi0S2Muac2UOs+6F2dMYQiKg7lX2HAtyHXlF0T2wlWNHjGg==", "dev": true, + "license": "MIT", "dependencies": { "eslint-plugin-turbo": "2.1.2" }, @@ -6201,9 +6256,9 @@ } }, "node_modules/eslint-module-utils": { - "version": "2.9.0", - "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.9.0.tgz", - "integrity": "sha512-McVbYmwA3NEKwRQY5g4aWMdcZE5xZxV8i8l7CqJSrameuGSQJtSWaL/LxTEzSKKaCcOhlpDR8XEfYXWPrdo/ZQ==", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.11.0.tgz", + "integrity": "sha512-gbBE5Hitek/oG6MUVj6sFuzEjA/ClzNflVrLovHi/JgLdC7fiN5gLAY1WIPW1a0V5I999MnsrvVrCOGmmVqDBQ==", "dev": true, "license": "MIT", "dependencies": { @@ -6546,9 +6601,9 @@ } }, "node_modules/eslint-plugin-react": { - "version": "7.35.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.35.2.tgz", - "integrity": "sha512-Rbj2R9zwP2GYNcIak4xoAMV57hrBh3hTaR0k7hVjwCQgryE/pw5px4b13EYjduOI0hfXyZhwBxaGpOTbWSGzKQ==", + "version": "7.36.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.36.1.tgz", + "integrity": "sha512-/qwbqNXZoq+VP30s1d4Nc1C5GTxjJQjk4Jzs4Wq2qzxFM7dSmuG2UkIjg2USMLh3A/aVcUNrK7v0J5U1XEGGwA==", "dev": true, "license": "MIT", "dependencies": { @@ -6794,6 +6849,7 @@ "resolved": "https://registry.npmjs.org/eslint-plugin-turbo/-/eslint-plugin-turbo-2.1.2.tgz", "integrity": "sha512-q2ikGubfVLZDPEKliiuubZc3sI5oqbKIZJ6fRi6Bldv8E3cMNH3Qt7g6hXZV4+GxwQbzEEteCYSBNbOn1DBqRg==", "dev": true, + "license": "MIT", "dependencies": { "dotenv": "16.0.3" }, @@ -6806,6 +6862,7 @@ "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.0.3.tgz", "integrity": "sha512-7GO6HghkA5fYG9TYnNxi14/7K9f5occMlp3zXAuSxn7CKCxt9xbNWG7yF8hTCSUchlfWSe3uLmlPfigevRItzQ==", "dev": true, + "license": "BSD-2-Clause", "engines": { "node": ">=12" } @@ -7651,10 +7708,9 @@ "license": "W3C" }, "node_modules/follow-redirects": { - "version": "1.15.8", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.8.tgz", - "integrity": "sha512-xgrmBhBToVKay1q2Tao5LI26B83UhrB/vM1avwVSDzt8rx3rO6AizBAaF46EgksTVr+rFTQaqZZ9MVBfUe4nig==", - "dev": true, + "version": "1.15.9", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.9.tgz", + "integrity": "sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==", "funding": [ { "type": "individual", @@ -7894,9 +7950,9 @@ } }, "node_modules/get-tsconfig": { - "version": "4.8.0", - "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.8.0.tgz", - "integrity": "sha512-Pgba6TExTZ0FJAn1qkJAjIeKoDJ3CsI2ChuLohJnZl/tTU8MVrq3b+2t5UOPfRa4RMsorClBjJALkJUMjG1PAw==", + "version": "4.8.1", + "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.8.1.tgz", + "integrity": "sha512-k9PN+cFBmaLWtVz29SkUoqU5O0slLuHJXt/2P+tMVFT+phsSGXGkp9t3rQIqdz0e+06EHNGs3oM6ZX1s2zHxRg==", "dev": true, "license": "MIT", "dependencies": { @@ -9078,9 +9134,9 @@ } }, "node_modules/is-bun-module": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-bun-module/-/is-bun-module-1.1.0.tgz", - "integrity": "sha512-4mTAVPlrXpaN3jtF0lsnPCMGnq4+qZjVIKq0HCpfcqf8OC1SM5oATCIAPM5V5FN05qp2NNnFndphmdZS9CV3hA==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/is-bun-module/-/is-bun-module-1.2.1.tgz", + "integrity": "sha512-AmidtEM6D6NmUiLOvvU7+IePxjEjOzra2h0pSrsfSAcXwl/83zLLXDByafUJy9k/rKK0pvXMLdwKwGHlX2Ke6Q==", "dev": true, "license": "MIT", "dependencies": { @@ -9927,7 +9983,8 @@ "node_modules/lru-cache": { "version": "10.4.3", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", - "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==", + "license": "ISC" }, "node_modules/markdown-extensions": { "version": "1.1.1", @@ -11512,9 +11569,9 @@ } }, "node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", "license": "MIT" }, "node_modules/mute-stream": { @@ -11603,6 +11660,7 @@ "version": "14.2.11", "resolved": "https://registry.npmjs.org/next/-/next-14.2.11.tgz", "integrity": "sha512-8MDFqHBhdmR2wdfaWc8+lW3A/hppFe1ggQ9vgIu/g2/2QEMYJrPoQP6b+VNk56gIug/bStysAmrpUKtj3XN8Bw==", + "license": "MIT", "dependencies": { "@next/env": "14.2.11", "@swc/helpers": "0.5.5", @@ -12098,15 +12156,15 @@ } }, "node_modules/openai": { - "version": "4.57.2", - "resolved": "https://registry.npmjs.org/openai/-/openai-4.57.2.tgz", - "integrity": "sha512-IgIxNjo9tfgnfx6gmwNMg3tdF9giK/2lbwG5DY7zs4TP9Gz+h6h2hBOMoalLPFUVOO5HLOgMI/PFV5VDAUvvMg==", + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/openai/-/openai-4.61.1.tgz", + "integrity": "sha512-jZ2WRn+f4QWZkYnrUS+xzEUIBllsGN75dUCaXmMIHcv2W9yn7O8amaReTbGHCNEYkL43vuDOcxPUWfNPUmoD3Q==", "license": "Apache-2.0", "peer": true, "dependencies": { "@types/node": "^18.11.18", "@types/node-fetch": "^2.6.4", - "@types/qs": "^6.9.7", + "@types/qs": "^6.9.15", "abort-controller": "^3.0.0", "agentkeepalive": "^4.2.1", "form-data-encoder": "1.7.2", @@ -12127,9 +12185,9 @@ } }, "node_modules/openai/node_modules/@types/node": { - "version": "18.19.49", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.49.tgz", - "integrity": "sha512-ALCeIR6n0nQ7j0FUF1ycOhrp6+XutJWqEu/vtdEqXFUQwkBfgUA5cEg3ZNmjWGF/ZYA/FcF9QMkL55Ar0O6UrA==", + "version": "18.19.50", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.50.tgz", + "integrity": "sha512-xonK+NRrMBRtkL1hVCc3G+uXtjh1Al4opBLjqVmipe5ZAaBYWW6cNAiBVZ1BvmkBhep698rP3UM3aRAdSALuhg==", "license": "MIT", "peer": true, "dependencies": { @@ -12438,9 +12496,9 @@ } }, "node_modules/path-scurry/node_modules/lru-cache": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.0.0.tgz", - "integrity": "sha512-Qv32eSV1RSCfhY3fpPE2GNZ8jgM9X7rdAfemLWqTUxwiyIC4jJ6Sy0fZ8H+oLWevO6i4/bizg7c8d8i6bxrzbA==", + "version": "11.0.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.0.1.tgz", + "integrity": "sha512-CgeuL5uom6j/ZVrg7G/+1IXqRY8JXX4Hghfy5YE0EhoYQWvndP1kufu58cmZLNIDKnRhZrXfdS9urVWx98AipQ==", "dev": true, "license": "ISC", "engines": { @@ -12592,6 +12650,7 @@ "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.47.1.tgz", "integrity": "sha512-SUEKi6947IqYbKxRiqnbUobVZY4bF1uu+ZnZNJX9DfU1tlf2UhWfvVjLf01pQx9URsOr18bFVUKXmanYWhbfkw==", "devOptional": true, + "license": "Apache-2.0", "dependencies": { "playwright-core": "1.47.1" }, @@ -12610,6 +12669,7 @@ "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.47.1.tgz", "integrity": "sha512-i1iyJdLftqtt51mEk6AhYFaAJCDx0xQ/O5NU8EKaWFgMjItPVma542Nh/Aq8aLCjIJSzjaiEQGW/nyqLkGF1OQ==", "devOptional": true, + "license": "Apache-2.0", "bin": { "playwright-core": "cli.js" }, @@ -13046,7 +13106,6 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==", - "dev": true, "license": "MIT" }, "node_modules/pseudomap": { @@ -13056,9 +13115,9 @@ "license": "ISC" }, "node_modules/pump": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", - "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.2.tgz", + "integrity": "sha512-tUPXtzlGM8FE3P0ZL6DVs/3P58k9nk8/jZeQCurTJylQA8qFYzHFfhBJkuqyE0FifOsQ0uKWekiZ5g8wtr28cw==", "dev": true, "license": "MIT", "dependencies": { @@ -13770,9 +13829,9 @@ "license": "Unlicense" }, "node_modules/rollup": { - "version": "4.21.2", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.21.2.tgz", - "integrity": "sha512-e3TapAgYf9xjdLvKQCkQTnbTKd4a6jwlpQSJJFokHGaX2IVjoEqkIIhiQfqsi0cdwlOD+tQGuOd5AJkc5RngBw==", + "version": "4.21.3", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.21.3.tgz", + "integrity": "sha512-7sqRtBNnEbcBtMeRVc6VRsJMmpI+JU1z9VTvW8D4gXIYQFz0aLcsE6rRkyghZkLfEgUZgVvOG7A5CVz/VW5GIA==", "dev": true, "license": "MIT", "dependencies": { @@ -13786,22 +13845,22 @@ "npm": ">=8.0.0" }, "optionalDependencies": { - "@rollup/rollup-android-arm-eabi": "4.21.2", - "@rollup/rollup-android-arm64": "4.21.2", - "@rollup/rollup-darwin-arm64": "4.21.2", - "@rollup/rollup-darwin-x64": "4.21.2", - "@rollup/rollup-linux-arm-gnueabihf": "4.21.2", - "@rollup/rollup-linux-arm-musleabihf": "4.21.2", - "@rollup/rollup-linux-arm64-gnu": "4.21.2", - "@rollup/rollup-linux-arm64-musl": "4.21.2", - "@rollup/rollup-linux-powerpc64le-gnu": "4.21.2", - "@rollup/rollup-linux-riscv64-gnu": "4.21.2", - "@rollup/rollup-linux-s390x-gnu": "4.21.2", - "@rollup/rollup-linux-x64-gnu": "4.21.2", - "@rollup/rollup-linux-x64-musl": "4.21.2", - "@rollup/rollup-win32-arm64-msvc": "4.21.2", - "@rollup/rollup-win32-ia32-msvc": "4.21.2", - "@rollup/rollup-win32-x64-msvc": "4.21.2", + "@rollup/rollup-android-arm-eabi": "4.21.3", + "@rollup/rollup-android-arm64": "4.21.3", + "@rollup/rollup-darwin-arm64": "4.21.3", + "@rollup/rollup-darwin-x64": "4.21.3", + "@rollup/rollup-linux-arm-gnueabihf": "4.21.3", + "@rollup/rollup-linux-arm-musleabihf": "4.21.3", + "@rollup/rollup-linux-arm64-gnu": "4.21.3", + "@rollup/rollup-linux-arm64-musl": "4.21.3", + "@rollup/rollup-linux-powerpc64le-gnu": "4.21.3", + "@rollup/rollup-linux-riscv64-gnu": "4.21.3", + "@rollup/rollup-linux-s390x-gnu": "4.21.3", + "@rollup/rollup-linux-x64-gnu": "4.21.3", + "@rollup/rollup-linux-x64-musl": "4.21.3", + "@rollup/rollup-win32-arm64-msvc": "4.21.3", + "@rollup/rollup-win32-ia32-msvc": "4.21.3", + "@rollup/rollup-win32-x64-msvc": "4.21.3", "fsevents": "~2.3.2" } }, @@ -14176,9 +14235,9 @@ } }, "node_modules/sort-keys": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-5.0.0.tgz", - "integrity": "sha512-Pdz01AvCAottHTPQGzndktFNdbRA75BgOfeT1hH+AMnJFv8lynkPi42rfeEhpx1saTEI3YNMWxfqu0sFD1G8pw==", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-5.1.0.tgz", + "integrity": "sha512-aSbHV0DaBcr7u0PVHXzM6NbZNAtrr9sF6+Qfs9UUVG7Ll3jQ6hHi8F/xqIIcn2rvIVbr0v/2zyjSdwSV47AgLQ==", "license": "MIT", "dependencies": { "is-plain-obj": "^4.0.0" @@ -14295,9 +14354,9 @@ } }, "node_modules/source-map-js": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.0.tgz", - "integrity": "sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", + "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", "license": "BSD-3-Clause", "engines": { "node": ">=0.10.0" @@ -14533,9 +14592,9 @@ "license": "MIT" }, "node_modules/string-width/node_modules/ansi-regex": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", - "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.1.0.tgz", + "integrity": "sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==", "dev": true, "license": "MIT", "engines": { @@ -15476,6 +15535,7 @@ "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.19.1.tgz", "integrity": "sha512-0flMz1lh74BR4wOvBjuh9olbnwqCPc35OOlfyzHba0Dc+QNUeWX/Gq2YTbnwcWPO3BMd8fkzRVrHcsR+a7z7rA==", "dev": true, + "license": "MIT", "dependencies": { "esbuild": "~0.23.0", "get-tsconfig": "^4.7.5" @@ -15520,6 +15580,7 @@ "resolved": "https://registry.npmjs.org/turbo/-/turbo-2.1.2.tgz", "integrity": "sha512-Jb0rbU4iHEVQ18An/YfakdIv9rKnd3zUfSE117EngrfWXFHo3RndVH96US3GsT8VHpwTncPePDBT2t06PaFLrw==", "dev": true, + "license": "MIT", "bin": { "turbo": "bin/turbo" }, @@ -15540,6 +15601,7 @@ "x64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "darwin" @@ -15553,6 +15615,7 @@ "arm64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "darwin" @@ -15566,6 +15629,7 @@ "x64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "linux" @@ -15579,6 +15643,7 @@ "arm64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "linux" @@ -15592,6 +15657,7 @@ "x64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "win32" @@ -15605,6 +15671,7 @@ "arm64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "win32" @@ -15748,6 +15815,7 @@ "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.6.2.tgz", "integrity": "sha512-NW8ByodCSNCwZeghjN3o+JX5OFH0Ojg6sadjEKY4huZ52TqbJTJnDo5+Tw98lSy63NZvi4n+ez5m2u5d4PkZyw==", "dev": true, + "license": "Apache-2.0", "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" @@ -15789,6 +15857,7 @@ "version": "6.19.8", "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.19.8.tgz", "integrity": "sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==", + "dev": true, "license": "MIT" }, "node_modules/unified": { @@ -16508,9 +16577,9 @@ } }, "node_modules/wrap-ansi/node_modules/ansi-regex": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", - "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.1.0.tgz", + "integrity": "sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==", "dev": true, "license": "MIT", "engines": { @@ -16638,6 +16707,16 @@ "redis": ">=4.6" } }, + "packages/cache-handler/node_modules/@types/node": { + "version": "22.5.4", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.4.tgz", + "integrity": "sha512-FDuKUJQm/ju9fT/SeX/6+gBzoPzlVCzfzmGkwKvRHQVxi4BntVbyIwf6a4Xn62mrvndLiml6z/UBXIdEVjQLXg==", + "dev": true, + "license": "MIT", + "dependencies": { + "undici-types": "~6.19.2" + } + }, "packages/diffscribe": { "version": "0.2.4", "license": "MIT", @@ -16656,6 +16735,16 @@ "openai": "^4.12.3" } }, + "packages/diffscribe/node_modules/@types/node": { + "version": "22.5.4", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.4.tgz", + "integrity": "sha512-FDuKUJQm/ju9fT/SeX/6+gBzoPzlVCzfzmGkwKvRHQVxi4BntVbyIwf6a4Xn62mrvndLiml6z/UBXIdEVjQLXg==", + "dev": true, + "license": "MIT", + "dependencies": { + "undici-types": "~6.19.2" + } + }, "packages/json-replacer-reviver": { "name": "@neshca/json-replacer-reviver", "version": "1.1.3", @@ -16669,6 +16758,16 @@ "typescript": "5.6.2" } }, + "packages/json-replacer-reviver/node_modules/@types/node": { + "version": "22.5.4", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.4.tgz", + "integrity": "sha512-FDuKUJQm/ju9fT/SeX/6+gBzoPzlVCzfzmGkwKvRHQVxi4BntVbyIwf6a4Xn62mrvndLiml6z/UBXIdEVjQLXg==", + "dev": true, + "license": "MIT", + "dependencies": { + "undici-types": "~6.19.2" + } + }, "packages/server": { "name": "@neshca/server", "version": "1.1.2", @@ -16690,6 +16789,16 @@ "tsx": "4.19.1", "typescript": "5.6.2" } + }, + "packages/server/node_modules/@types/node": { + "version": "22.5.4", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.4.tgz", + "integrity": "sha512-FDuKUJQm/ju9fT/SeX/6+gBzoPzlVCzfzmGkwKvRHQVxi4BntVbyIwf6a4Xn62mrvndLiml6z/UBXIdEVjQLXg==", + "dev": true, + "license": "MIT", + "dependencies": { + "undici-types": "~6.19.2" + } } } } diff --git a/package.json b/package.json index e39db2f6..60665b43 100644 --- a/package.json +++ b/package.json @@ -38,7 +38,7 @@ }, "devDependencies": { "@actions/core": "1.10.1", - "@biomejs/biome": "1.8.3", + "@biomejs/biome": "1.9.1", "@repo/prettier-config": "*", "@repo/typescript-config": "*", "diffscribe": "*", diff --git a/packages/cache-handler/src/cache-handler.ts b/packages/cache-handler/src/cache-handler.ts index fc8f3c4b..6bc87ed0 100644 --- a/packages/cache-handler/src/cache-handler.ts +++ b/packages/cache-handler/src/cache-handler.ts @@ -19,6 +19,8 @@ import { getTagsFromHeaders } from './helpers/get-tags-from-headers'; export type { CacheHandlerValue }; +const PRERENDER_MANIFEST_VERSION = 4; + /** * Represents an internal Next.js metadata for a `get` method. * This metadata is available in the `get` method of the cache handler. @@ -579,6 +581,12 @@ export class CacheHandler implements NextCacheHandler { const prerenderManifest = JSON.parse(prerenderManifestData) as PrerenderManifest; + if (prerenderManifest.version !== PRERENDER_MANIFEST_VERSION) { + throw new Error( + `Invalid prerender manifest version. Expected version ${PRERENDER_MANIFEST_VERSION}. Please check if the Next.js version is compatible with the CacheHandler version.`, + ); + } + for (const [route, { srcRoute, dataRoute }] of Object.entries(prerenderManifest.routes)) { const isPagesRouter = dataRoute?.endsWith('.json'); @@ -586,7 +594,16 @@ export class CacheHandler implements NextCacheHandler { CacheHandler.#fallbackFalseRoutes.add(route); } } - } catch (_error) {} + } catch (_error) { + if (CacheHandler.#debug) { + console.warn( + '[CacheHandler] [%s] %s %s', + 'instrumentation.cache', + 'Failed to read prerender manifest. Pages from the Pages Router with `fallback: false` will return 404 errors.', + `Error: ${_error}`, + ); + } + } const handlersList: Handler[] = handlers.filter((handler) => !!handler); diff --git a/packages/cache-handler/src/handlers/experimental-redis-cluster.ts b/packages/cache-handler/src/handlers/experimental-redis-cluster.ts index 53cdce73..5e378c89 100644 --- a/packages/cache-handler/src/handlers/experimental-redis-cluster.ts +++ b/packages/cache-handler/src/handlers/experimental-redis-cluster.ts @@ -144,11 +144,15 @@ export default function createHandler({ : undefined; break; } + default: { + throw new Error(`Invalid keyExpirationStrategy: ${keyExpirationStrategy}`); + } } - const setTagsOperation = cacheHandlerValue.tags.length - ? cluster.hSet(options, keyPrefix + sharedTagsKey, key, JSON.stringify(cacheHandlerValue.tags)) - : undefined; + const setTagsOperation = + cacheHandlerValue.tags.length > 0 + ? cluster.hSet(options, keyPrefix + sharedTagsKey, key, JSON.stringify(cacheHandlerValue.tags)) + : undefined; await Promise.all([setOperation, expireOperation, setTagsOperation]); }, diff --git a/packages/cache-handler/src/handlers/redis-strings.ts b/packages/cache-handler/src/handlers/redis-strings.ts index 42fd11b1..889430e0 100644 --- a/packages/cache-handler/src/handlers/redis-strings.ts +++ b/packages/cache-handler/src/handlers/redis-strings.ts @@ -120,11 +120,15 @@ export default function createHandler({ : undefined; break; } + default: { + throw new Error(`Invalid keyExpirationStrategy: ${keyExpirationStrategy}`); + } } - const setTagsOperation = cacheHandlerValue.tags.length - ? client.hSet(options, keyPrefix + sharedTagsKey, key, JSON.stringify(cacheHandlerValue.tags)) - : undefined; + const setTagsOperation = + cacheHandlerValue.tags.length > 0 + ? client.hSet(options, keyPrefix + sharedTagsKey, key, JSON.stringify(cacheHandlerValue.tags)) + : undefined; await Promise.all([setOperation, expireOperation, setTagsOperation]); }, From a9eff5a27e4b90fd13f16f87ff920fc3abfc4dd3 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 17 Sep 2024 13:48:58 +0300 Subject: [PATCH 389/458] Bump the definitely-typed group across 1 directory with 2 updates (#762) Bumps the definitely-typed group with 2 updates in the / directory: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) and [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react). Updates `@types/node` from 22.5.4 to 22.5.5 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) Updates `@types/react` from 18.3.5 to 18.3.7 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react) --- updated-dependencies: - dependency-name: "@types/node" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed - dependency-name: "@types/react" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 4 +- docs/cache-handler-docs/package.json | 4 +- internal/backend/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 135 ++++---------------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 10 files changed, 36 insertions(+), 121 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 93a921f4..14c9d6df 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -30,8 +30,8 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.12", - "@types/node": "22.5.4", - "@types/react": "18.3.5", + "@types/node": "22.5.5", + "@types/react": "18.3.7", "@types/react-dom": "18.3.0", "dotenv-cli": "7.4.2", "eslint": "8.57.0", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 496a535f..2052b3df 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -22,8 +22,8 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.12", - "@types/node": "22.5.4", - "@types/react": "18.3.5", + "@types/node": "22.5.5", + "@types/react": "18.3.7", "@types/react-dom": "18.3.0", "eslint": "8.57.0", "typescript": "5.6.2" diff --git a/internal/backend/package.json b/internal/backend/package.json index 82e3b013..c7901528 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.5.4", + "@types/node": "22.5.5", "pino-pretty": "11.2.2", "rimraf": "6.0.1", "tsx": "4.19.1", diff --git a/internal/next-common/package.json b/internal/next-common/package.json index 1cde4304..599c2719 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.5.4", + "@types/node": "22.5.5", "rimraf": "6.0.1", "typescript": "5.6.2" } diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index 1f00b38d..1fe2bada 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -16,7 +16,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "22.5.4", + "@types/node": "22.5.5", "rimraf": "6.0.1", "typescript": "5.6.2" } diff --git a/package-lock.json b/package-lock.json index 78394231..bd41a236 100644 --- a/package-lock.json +++ b/package-lock.json @@ -50,8 +50,8 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.12", - "@types/node": "22.5.4", - "@types/react": "18.3.5", + "@types/node": "22.5.5", + "@types/react": "18.3.7", "@types/react-dom": "18.3.0", "dotenv-cli": "7.4.2", "eslint": "8.57.0", @@ -62,16 +62,6 @@ "typescript": "5.6.2" } }, - "apps/cache-testing/node_modules/@types/node": { - "version": "22.5.4", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.4.tgz", - "integrity": "sha512-FDuKUJQm/ju9fT/SeX/6+gBzoPzlVCzfzmGkwKvRHQVxi4BntVbyIwf6a4Xn62mrvndLiml6z/UBXIdEVjQLXg==", - "dev": true, - "license": "MIT", - "dependencies": { - "undici-types": "~6.19.2" - } - }, "docs/cache-handler-docs": { "version": "0.1.0", "dependencies": { @@ -86,23 +76,13 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.12", - "@types/node": "22.5.4", - "@types/react": "18.3.5", + "@types/node": "22.5.5", + "@types/react": "18.3.7", "@types/react-dom": "18.3.0", "eslint": "8.57.0", "typescript": "5.6.2" } }, - "docs/cache-handler-docs/node_modules/@types/node": { - "version": "22.5.4", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.4.tgz", - "integrity": "sha512-FDuKUJQm/ju9fT/SeX/6+gBzoPzlVCzfzmGkwKvRHQVxi4BntVbyIwf6a4Xn62mrvndLiml6z/UBXIdEVjQLXg==", - "dev": true, - "license": "MIT", - "dependencies": { - "undici-types": "~6.19.2" - } - }, "internal/backend": { "version": "0.0.0", "license": "MIT", @@ -112,23 +92,13 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.5.4", + "@types/node": "22.5.5", "pino-pretty": "11.2.2", "rimraf": "6.0.1", "tsx": "4.19.1", "typescript": "5.6.2" } }, - "internal/backend/node_modules/@types/node": { - "version": "22.5.4", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.4.tgz", - "integrity": "sha512-FDuKUJQm/ju9fT/SeX/6+gBzoPzlVCzfzmGkwKvRHQVxi4BntVbyIwf6a4Xn62mrvndLiml6z/UBXIdEVjQLXg==", - "dev": true, - "license": "MIT", - "dependencies": { - "undici-types": "~6.19.2" - } - }, "internal/eslint-config": { "name": "@repo/eslint-config", "version": "0.0.0", @@ -151,21 +121,11 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.5.4", + "@types/node": "22.5.5", "rimraf": "6.0.1", "typescript": "5.6.2" } }, - "internal/next-common/node_modules/@types/node": { - "version": "22.5.4", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.4.tgz", - "integrity": "sha512-FDuKUJQm/ju9fT/SeX/6+gBzoPzlVCzfzmGkwKvRHQVxi4BntVbyIwf6a4Xn62mrvndLiml6z/UBXIdEVjQLXg==", - "dev": true, - "license": "MIT", - "dependencies": { - "undici-types": "~6.19.2" - } - }, "internal/next-lru-cache": { "name": "@neshca/next-lru-cache", "version": "0.0.0", @@ -176,21 +136,11 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "22.5.4", + "@types/node": "22.5.5", "rimraf": "6.0.1", "typescript": "5.6.2" } }, - "internal/next-lru-cache/node_modules/@types/node": { - "version": "22.5.4", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.4.tgz", - "integrity": "sha512-FDuKUJQm/ju9fT/SeX/6+gBzoPzlVCzfzmGkwKvRHQVxi4BntVbyIwf6a4Xn62mrvndLiml6z/UBXIdEVjQLXg==", - "dev": true, - "license": "MIT", - "dependencies": { - "undici-types": "~6.19.2" - } - }, "internal/prettier-config": { "name": "@repo/prettier-config", "version": "0.0.0", @@ -1832,6 +1782,11 @@ "fs-extra": "^8.1.0" } }, + "node_modules/@manypkg/find-root/node_modules/@types/node": { + "version": "12.20.55", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", + "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" + }, "node_modules/@manypkg/find-root/node_modules/fs-extra": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", @@ -3332,10 +3287,12 @@ "license": "MIT" }, "node_modules/@types/node": { - "version": "12.20.55", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", - "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==", - "license": "MIT" + "version": "22.5.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.5.tgz", + "integrity": "sha512-Xjs4y5UPO/CLdzpgR6GirZJx36yScjh73+2NlLlkFRSoQN8B0DpfXPdZGnvVmLRLOsqDpOfTNv7D9trgGhmOIA==", + "dependencies": { + "undici-types": "~6.19.2" + } }, "node_modules/@types/node-fetch": { "version": "2.6.11", @@ -3369,10 +3326,9 @@ "peer": true }, "node_modules/@types/react": { - "version": "18.3.5", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.5.tgz", - "integrity": "sha512-WeqMfGJLGuLCqHGYRGHxnKrXcTitc6L/nBUWfWPcTarG3t9PsquqUMuVeXZeca+mglY4Vo5GZjCi0A3Or2lnxA==", - "license": "MIT", + "version": "18.3.7", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.7.tgz", + "integrity": "sha512-KUnDCJF5+AiZd8owLIeVHqmW9yM4sqmDVf2JRJiBMFkGvkoZ4/WyV2lL4zVsoinmRS/W3FeEdZLEWFRofnT2FQ==", "dependencies": { "@types/prop-types": "*", "csstype": "^3.0.2" @@ -15857,7 +15813,6 @@ "version": "6.19.8", "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.19.8.tgz", "integrity": "sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==", - "dev": true, "license": "MIT" }, "node_modules/unified": { @@ -16696,7 +16651,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.5.4", + "@types/node": "22.5.5", "rimraf": "6.0.1", "tsup": "8.2.4", "tsx": "4.19.1", @@ -16707,16 +16662,6 @@ "redis": ">=4.6" } }, - "packages/cache-handler/node_modules/@types/node": { - "version": "22.5.4", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.4.tgz", - "integrity": "sha512-FDuKUJQm/ju9fT/SeX/6+gBzoPzlVCzfzmGkwKvRHQVxi4BntVbyIwf6a4Xn62mrvndLiml6z/UBXIdEVjQLXg==", - "dev": true, - "license": "MIT", - "dependencies": { - "undici-types": "~6.19.2" - } - }, "packages/diffscribe": { "version": "0.2.4", "license": "MIT", @@ -16725,7 +16670,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.5.4", + "@types/node": "22.5.5", "rimraf": "6.0.1", "tsup": "8.2.4", "typescript": "5.6.2" @@ -16735,39 +16680,19 @@ "openai": "^4.12.3" } }, - "packages/diffscribe/node_modules/@types/node": { - "version": "22.5.4", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.4.tgz", - "integrity": "sha512-FDuKUJQm/ju9fT/SeX/6+gBzoPzlVCzfzmGkwKvRHQVxi4BntVbyIwf6a4Xn62mrvndLiml6z/UBXIdEVjQLXg==", - "dev": true, - "license": "MIT", - "dependencies": { - "undici-types": "~6.19.2" - } - }, "packages/json-replacer-reviver": { "name": "@neshca/json-replacer-reviver", "version": "1.1.3", "license": "MIT", "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.5.4", + "@types/node": "22.5.5", "rimraf": "6.0.1", "tsup": "8.2.4", "tsx": "4.19.1", "typescript": "5.6.2" } }, - "packages/json-replacer-reviver/node_modules/@types/node": { - "version": "22.5.4", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.4.tgz", - "integrity": "sha512-FDuKUJQm/ju9fT/SeX/6+gBzoPzlVCzfzmGkwKvRHQVxi4BntVbyIwf6a4Xn62mrvndLiml6z/UBXIdEVjQLXg==", - "dev": true, - "license": "MIT", - "dependencies": { - "undici-types": "~6.19.2" - } - }, "packages/server": { "name": "@neshca/server", "version": "1.1.2", @@ -16783,22 +16708,12 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.5.4", + "@types/node": "22.5.5", "rimraf": "6.0.1", "tsup": "8.2.4", "tsx": "4.19.1", "typescript": "5.6.2" } - }, - "packages/server/node_modules/@types/node": { - "version": "22.5.4", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.4.tgz", - "integrity": "sha512-FDuKUJQm/ju9fT/SeX/6+gBzoPzlVCzfzmGkwKvRHQVxi4BntVbyIwf6a4Xn62mrvndLiml6z/UBXIdEVjQLXg==", - "dev": true, - "license": "MIT", - "dependencies": { - "undici-types": "~6.19.2" - } } } } diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 93f6ef10..c2f96bf8 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -87,7 +87,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.5.4", + "@types/node": "22.5.5", "rimraf": "6.0.1", "tsup": "8.2.4", "tsx": "4.19.1", diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index 025842a3..f0c29aaa 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -25,7 +25,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.5.4", + "@types/node": "22.5.5", "rimraf": "6.0.1", "tsup": "8.2.4", "typescript": "5.6.2" diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 6e23c064..681c42b7 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -28,7 +28,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.5.4", + "@types/node": "22.5.5", "rimraf": "6.0.1", "tsup": "8.2.4", "tsx": "4.19.1", diff --git a/packages/server/package.json b/packages/server/package.json index 5579b388..c883f867 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -32,7 +32,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.5.4", + "@types/node": "22.5.5", "rimraf": "6.0.1", "tsup": "8.2.4", "tsx": "4.19.1", From c6f79046c77ddabce19a68446bc9660f20c33eec Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 17 Sep 2024 14:03:47 +0300 Subject: [PATCH 390/458] Bump eslint from 8.57.0 to 8.57.1 in the eslint group (#760) Bumps the eslint group with 1 update: [eslint](https://github.com/eslint/eslint). Updates `eslint` from 8.57.0 to 8.57.1 - [Release notes](https://github.com/eslint/eslint/releases) - [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md) - [Commits](https://github.com/eslint/eslint/compare/v8.57.0...v8.57.1) --- updated-dependencies: - dependency-name: eslint dependency-type: direct:development update-type: version-update:semver-patch dependency-group: eslint ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- package-lock.json | 34 ++++++++++++---------------- 3 files changed, 17 insertions(+), 21 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 14c9d6df..b7c766e9 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -34,7 +34,7 @@ "@types/react": "18.3.7", "@types/react-dom": "18.3.0", "dotenv-cli": "7.4.2", - "eslint": "8.57.0", + "eslint": "8.57.1", "fastify": "4.28.1", "pm2": "5.4.2", "rimraf": "6.0.1", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 2052b3df..7563d3fa 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -25,7 +25,7 @@ "@types/node": "22.5.5", "@types/react": "18.3.7", "@types/react-dom": "18.3.0", - "eslint": "8.57.0", + "eslint": "8.57.1", "typescript": "5.6.2" } } diff --git a/package-lock.json b/package-lock.json index bd41a236..15e881a8 100644 --- a/package-lock.json +++ b/package-lock.json @@ -54,7 +54,7 @@ "@types/react": "18.3.7", "@types/react-dom": "18.3.0", "dotenv-cli": "7.4.2", - "eslint": "8.57.0", + "eslint": "8.57.1", "fastify": "4.28.1", "pm2": "5.4.2", "rimraf": "6.0.1", @@ -79,7 +79,7 @@ "@types/node": "22.5.5", "@types/react": "18.3.7", "@types/react-dom": "18.3.0", - "eslint": "8.57.0", + "eslint": "8.57.1", "typescript": "5.6.2" } }, @@ -1533,11 +1533,10 @@ } }, "node_modules/@eslint/js": { - "version": "8.57.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.57.0.tgz", - "integrity": "sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==", + "version": "8.57.1", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.57.1.tgz", + "integrity": "sha512-d9zaMRSTIKDLhctzH12MtXvJKSSUhaHcjV+2Z+GK+EEY7XKpP5yR4x+N3TAcHTcu963nIr+TMcCb4DBCYX1z6Q==", "dev": true, - "license": "MIT", "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } @@ -1633,14 +1632,13 @@ } }, "node_modules/@humanwhocodes/config-array": { - "version": "0.11.14", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.14.tgz", - "integrity": "sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==", + "version": "0.13.0", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.13.0.tgz", + "integrity": "sha512-DZLEEqFWQFiyK6h5YIeynKx7JlvCYWL0cImfSRXZ9l4Sg2efkFGTuFf6vzXjK1cq6IYkU+Eg/JizXw+TD2vRNw==", "deprecated": "Use @eslint/config-array instead", "dev": true, - "license": "Apache-2.0", "dependencies": { - "@humanwhocodes/object-schema": "^2.0.2", + "@humanwhocodes/object-schema": "^2.0.3", "debug": "^4.3.1", "minimatch": "^3.0.5" }, @@ -1667,8 +1665,7 @@ "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.3.tgz", "integrity": "sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==", "deprecated": "Use @eslint/object-schema instead", - "dev": true, - "license": "BSD-3-Clause" + "dev": true }, "node_modules/@isaacs/cliui": { "version": "8.0.2", @@ -6059,17 +6056,16 @@ } }, "node_modules/eslint": { - "version": "8.57.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.57.0.tgz", - "integrity": "sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ==", + "version": "8.57.1", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.57.1.tgz", + "integrity": "sha512-ypowyDxpVSYpkXr9WPv2PAZCtNip1Mv5KTW0SCurXv/9iOpcrH9PaqUElksqEB6pChqHGDRCFTyrZlGhnLNGiA==", "dev": true, - "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.6.1", "@eslint/eslintrc": "^2.1.4", - "@eslint/js": "8.57.0", - "@humanwhocodes/config-array": "^0.11.14", + "@eslint/js": "8.57.1", + "@humanwhocodes/config-array": "^0.13.0", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", "@ungap/structured-clone": "^1.2.0", From 3ab95a30b03272127a55cb993732940663e19137 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 17 Sep 2024 14:11:56 +0300 Subject: [PATCH 391/458] Version Packages (#761) Co-authored-by: github-actions[bot] --- .changeset/cuddly-bottles-shake.md | 5 ----- packages/cache-handler/CHANGELOG.md | 6 ++++++ packages/cache-handler/package.json | 2 +- 3 files changed, 7 insertions(+), 6 deletions(-) delete mode 100644 .changeset/cuddly-bottles-shake.md diff --git a/.changeset/cuddly-bottles-shake.md b/.changeset/cuddly-bottles-shake.md deleted file mode 100644 index 47ded4d2..00000000 --- a/.changeset/cuddly-bottles-shake.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@neshca/cache-handler': patch ---- - -Add error handling for `keyExpirationStrategy` and `prerenderManifest` parsing. diff --git a/packages/cache-handler/CHANGELOG.md b/packages/cache-handler/CHANGELOG.md index 7d9cc68e..91bcd282 100644 --- a/packages/cache-handler/CHANGELOG.md +++ b/packages/cache-handler/CHANGELOG.md @@ -1,5 +1,11 @@ # @neshca/cache-handler +## 1.7.2 + +### Patch Changes + +- be27549: Add error handling for `keyExpirationStrategy` and `prerenderManifest` parsing. + ## 1.7.1 ### Patch Changes diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index c2f96bf8..3d13d59d 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -1,6 +1,6 @@ { "name": "@neshca/cache-handler", - "version": "1.7.1", + "version": "1.7.2", "description": "Next.js self-hosting simplified.", "keywords": [ "cache", From fc84cd1e021e3637a01c2c36c2d5d965bcfbaac2 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 18 Sep 2024 00:54:27 +0300 Subject: [PATCH 392/458] Bump tsup from 8.2.4 to 8.3.0 (#763) Bumps [tsup](https://github.com/egoist/tsup) from 8.2.4 to 8.3.0. - [Release notes](https://github.com/egoist/tsup/releases) - [Commits](https://github.com/egoist/tsup/compare/v8.2.4...v8.3.0) --- updated-dependencies: - dependency-name: tsup dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 58 +++++++++++++++++---- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 5 files changed, 52 insertions(+), 14 deletions(-) diff --git a/package-lock.json b/package-lock.json index 15e881a8..bfc38725 100644 --- a/package-lock.json +++ b/package-lock.json @@ -15059,6 +15059,45 @@ "real-require": "^0.2.0" } }, + "node_modules/tinyglobby": { + "version": "0.2.6", + "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.6.tgz", + "integrity": "sha512-NbBoFBpqfcgd1tCiO8Lkfdk+xrA7mlLR9zgvZcZWQQwU63XAfUePyd6wZBaU93Hqw347lHnwFzttAkemHzzz4g==", + "dev": true, + "dependencies": { + "fdir": "^6.3.0", + "picomatch": "^4.0.2" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/tinyglobby/node_modules/fdir": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.3.0.tgz", + "integrity": "sha512-QOnuT+BOtivR77wYvCWHfGt9s4Pz1VIMbD463vegT5MLqNXy8rYFT/lPVEqf/bhYeT6qmqrNHhsX+rWwe3rOCQ==", + "dev": true, + "peerDependencies": { + "picomatch": "^3 || ^4" + }, + "peerDependenciesMeta": { + "picomatch": { + "optional": true + } + } + }, + "node_modules/tinyglobby/node_modules/picomatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.2.tgz", + "integrity": "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, "node_modules/title": { "version": "3.5.3", "resolved": "https://registry.npmjs.org/title/-/title-3.5.3.tgz", @@ -15296,11 +15335,10 @@ "license": "0BSD" }, "node_modules/tsup": { - "version": "8.2.4", - "resolved": "https://registry.npmjs.org/tsup/-/tsup-8.2.4.tgz", - "integrity": "sha512-akpCPePnBnC/CXgRrcy72ZSntgIEUa1jN0oJbbvpALWKNOz1B7aM+UVDWGRGIO/T/PZugAESWDJUAb5FD48o8Q==", + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/tsup/-/tsup-8.3.0.tgz", + "integrity": "sha512-ALscEeyS03IomcuNdFdc0YWGVIkwH1Ws7nfTbAPuoILvEV2hpGQAY72LIOjglGo4ShWpZfpBqP/jpQVCzqYQag==", "dev": true, - "license": "MIT", "dependencies": { "bundle-require": "^5.0.0", "cac": "^6.7.14", @@ -15309,7 +15347,6 @@ "debug": "^4.3.5", "esbuild": "^0.23.0", "execa": "^5.1.1", - "globby": "^11.1.0", "joycon": "^3.1.1", "picocolors": "^1.0.1", "postcss-load-config": "^6.0.1", @@ -15317,6 +15354,7 @@ "rollup": "^4.19.0", "source-map": "0.8.0-beta.0", "sucrase": "^3.35.0", + "tinyglobby": "^0.2.1", "tree-kill": "^1.2.2" }, "bin": { @@ -16637,7 +16675,7 @@ }, "packages/cache-handler": { "name": "@neshca/cache-handler", - "version": "1.7.1", + "version": "1.7.2", "license": "MIT", "dependencies": { "cluster-key-slot": "1.1.2", @@ -16649,7 +16687,7 @@ "@repo/typescript-config": "*", "@types/node": "22.5.5", "rimraf": "6.0.1", - "tsup": "8.2.4", + "tsup": "8.3.0", "tsx": "4.19.1", "typescript": "5.6.2" }, @@ -16668,7 +16706,7 @@ "@repo/typescript-config": "*", "@types/node": "22.5.5", "rimraf": "6.0.1", - "tsup": "8.2.4", + "tsup": "8.3.0", "typescript": "5.6.2" }, "peerDependencies": { @@ -16684,7 +16722,7 @@ "@repo/typescript-config": "*", "@types/node": "22.5.5", "rimraf": "6.0.1", - "tsup": "8.2.4", + "tsup": "8.3.0", "tsx": "4.19.1", "typescript": "5.6.2" } @@ -16706,7 +16744,7 @@ "@repo/typescript-config": "*", "@types/node": "22.5.5", "rimraf": "6.0.1", - "tsup": "8.2.4", + "tsup": "8.3.0", "tsx": "4.19.1", "typescript": "5.6.2" } diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 3d13d59d..f38c1f29 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -89,7 +89,7 @@ "@repo/typescript-config": "*", "@types/node": "22.5.5", "rimraf": "6.0.1", - "tsup": "8.2.4", + "tsup": "8.3.0", "tsx": "4.19.1", "typescript": "5.6.2" }, diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index f0c29aaa..ef8d7bb7 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -27,7 +27,7 @@ "@repo/typescript-config": "*", "@types/node": "22.5.5", "rimraf": "6.0.1", - "tsup": "8.2.4", + "tsup": "8.3.0", "typescript": "5.6.2" }, "peerDependencies": { diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 681c42b7..04f109d4 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -30,7 +30,7 @@ "@repo/typescript-config": "*", "@types/node": "22.5.5", "rimraf": "6.0.1", - "tsup": "8.2.4", + "tsup": "8.3.0", "tsx": "4.19.1", "typescript": "5.6.2" } diff --git a/packages/server/package.json b/packages/server/package.json index c883f867..4bdb9b3e 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -34,7 +34,7 @@ "@repo/typescript-config": "*", "@types/node": "22.5.5", "rimraf": "6.0.1", - "tsup": "8.2.4", + "tsup": "8.3.0", "tsx": "4.19.1", "typescript": "5.6.2" }, From cf5d0a69324a70aa5c93c38c5ddeb35cea1e8367 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 18 Sep 2024 10:39:16 +0300 Subject: [PATCH 393/458] Bump fastify from 4.28.1 to 5.0.0 (#764) Bumps [fastify](https://github.com/fastify/fastify) from 4.28.1 to 5.0.0. - [Release notes](https://github.com/fastify/fastify/releases) - [Commits](https://github.com/fastify/fastify/compare/v4.28.1...v5.0.0) --- updated-dependencies: - dependency-name: fastify dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- internal/backend/package.json | 2 +- package-lock.json | 219 +++++++++++--------------------- packages/server/package.json | 2 +- 4 files changed, 80 insertions(+), 145 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index b7c766e9..1618d426 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -35,7 +35,7 @@ "@types/react-dom": "18.3.0", "dotenv-cli": "7.4.2", "eslint": "8.57.1", - "fastify": "4.28.1", + "fastify": "5.0.0", "pm2": "5.4.2", "rimraf": "6.0.1", "tsx": "4.19.1", diff --git a/internal/backend/package.json b/internal/backend/package.json index c7901528..bb6da8a3 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -10,7 +10,7 @@ "start": "tsx ./src/backend.ts" }, "dependencies": { - "fastify": "4.28.1", + "fastify": "5.0.0", "pino": "9.4.0" }, "devDependencies": { diff --git a/package-lock.json b/package-lock.json index bfc38725..3f2f36f6 100644 --- a/package-lock.json +++ b/package-lock.json @@ -55,7 +55,7 @@ "@types/react-dom": "18.3.0", "dotenv-cli": "7.4.2", "eslint": "8.57.1", - "fastify": "4.28.1", + "fastify": "5.0.0", "pm2": "5.4.2", "rimraf": "6.0.1", "tsx": "4.19.1", @@ -87,7 +87,7 @@ "version": "0.0.0", "license": "MIT", "dependencies": { - "fastify": "4.28.1", + "fastify": "5.0.0", "pino": "9.4.0" }, "devDependencies": { @@ -1542,21 +1542,19 @@ } }, "node_modules/@fastify/ajv-compiler": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/@fastify/ajv-compiler/-/ajv-compiler-3.6.0.tgz", - "integrity": "sha512-LwdXQJjmMD+GwLOkP7TVC68qa+pSSogeWWmznRJ/coyTcfe9qA05AHFSe1eZFwK6q+xVRpChnvFUkf1iYaSZsQ==", - "license": "MIT", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@fastify/ajv-compiler/-/ajv-compiler-4.0.0.tgz", + "integrity": "sha512-dt0jyLAlay14LpIn4Fg1SY7V5NJ9KH0YFDpYVQY5cgIVBvdI8908AMx5zQ0bBYPGT6Wh+bM3f2caMmOXLP3QsQ==", "dependencies": { - "ajv": "^8.11.0", - "ajv-formats": "^2.1.1", - "fast-uri": "^2.0.0" + "ajv": "^8.12.0", + "ajv-formats": "^3.0.1", + "fast-uri": "^3.0.0" } }, "node_modules/@fastify/ajv-compiler/node_modules/ajv": { "version": "8.17.1", "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.17.1.tgz", "integrity": "sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==", - "license": "MIT", "dependencies": { "fast-deep-equal": "^3.1.3", "fast-uri": "^3.0.1", @@ -1568,17 +1566,10 @@ "url": "https://github.com/sponsors/epoberezkin" } }, - "node_modules/@fastify/ajv-compiler/node_modules/ajv/node_modules/fast-uri": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.0.1.tgz", - "integrity": "sha512-MWipKbbYiYI0UC7cl8m/i/IWTqfC8YXsqjzybjddLsFjStroQzsHXkc73JutMvBiXmOvapk+axIl79ig5t55Bw==", - "license": "MIT" - }, "node_modules/@fastify/ajv-compiler/node_modules/json-schema-traverse": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "license": "MIT" + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==" }, "node_modules/@fastify/busboy": { "version": "2.1.1", @@ -1591,25 +1582,22 @@ } }, "node_modules/@fastify/error": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/@fastify/error/-/error-3.4.1.tgz", - "integrity": "sha512-wWSvph+29GR783IhmvdwWnN4bUxTD01Vm5Xad4i7i1VuAOItLvbPAb69sb0IQ2N57yprvhNIwAP5B6xfKTmjmQ==", - "license": "MIT" + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@fastify/error/-/error-4.0.0.tgz", + "integrity": "sha512-OO/SA8As24JtT1usTUTKgGH7uLvhfwZPwlptRi2Dp5P4KKmJI3gvsZ8MIHnNwDs4sLf/aai5LzTyl66xr7qMxA==" }, "node_modules/@fastify/fast-json-stringify-compiler": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/@fastify/fast-json-stringify-compiler/-/fast-json-stringify-compiler-4.3.0.tgz", - "integrity": "sha512-aZAXGYo6m22Fk1zZzEUKBvut/CIIQe/BapEORnxiD5Qr0kPHqqI69NtEMCme74h+at72sPhbkb4ZrLd1W3KRLA==", - "license": "MIT", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/@fastify/fast-json-stringify-compiler/-/fast-json-stringify-compiler-5.0.0.tgz", + "integrity": "sha512-tywfuZfXsyxLC5kEqrMubbFa9vpAxNtuPE7j9w5si1r+6p5b981pDfZ5Y8HBqmjDQl+PABT7cV5jZgXI2j+I5g==", "dependencies": { - "fast-json-stringify": "^5.7.0" + "fast-json-stringify": "^6.0.0" } }, "node_modules/@fastify/merge-json-schemas": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/@fastify/merge-json-schemas/-/merge-json-schemas-0.1.1.tgz", "integrity": "sha512-fERDVz7topgNjtXsJTTW1JKLy0rhuLRcquYqNR9rF7OcVpCa2OVW49ZPDIhaRRCaUuvVxI+N416xUoF76HNSXA==", - "license": "MIT", "dependencies": { "fast-deep-equal": "^3.1.3" } @@ -3738,10 +3726,9 @@ } }, "node_modules/ajv-formats": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz", - "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", - "license": "MIT", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-3.0.1.tgz", + "integrity": "sha512-8iUql50EUR+uUcdRQ3HDqa6EVyo3docL8g5WJ3FNcWmu62IbkGUue/pEyLBW8VGKKucTPgqeks4fIU1DA4yowQ==", "dependencies": { "ajv": "^8.0.0" }, @@ -3758,7 +3745,6 @@ "version": "8.17.1", "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.17.1.tgz", "integrity": "sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==", - "license": "MIT", "dependencies": { "fast-deep-equal": "^3.1.3", "fast-uri": "^3.0.1", @@ -3770,17 +3756,10 @@ "url": "https://github.com/sponsors/epoberezkin" } }, - "node_modules/ajv-formats/node_modules/fast-uri": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.0.1.tgz", - "integrity": "sha512-MWipKbbYiYI0UC7cl8m/i/IWTqfC8YXsqjzybjddLsFjStroQzsHXkc73JutMvBiXmOvapk+axIl79ig5t55Bw==", - "license": "MIT" - }, "node_modules/ajv-formats/node_modules/json-schema-traverse": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "license": "MIT" + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==" }, "node_modules/amp": { "version": "0.3.1", @@ -4140,12 +4119,11 @@ } }, "node_modules/avvio": { - "version": "8.4.0", - "resolved": "https://registry.npmjs.org/avvio/-/avvio-8.4.0.tgz", - "integrity": "sha512-CDSwaxINFy59iNwhYnkvALBwZiTydGkOecZyPkqBpABYR1KqGEsET0VOOYDwtleZSUIdeY36DC2bSZ24CO1igA==", - "license": "MIT", + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/avvio/-/avvio-9.0.0.tgz", + "integrity": "sha512-UbYrOXgE/I+knFG+3kJr9AgC7uNo8DG+FGGODpH9Bj1O1kL/QDjBXnTem9leD3VdQKtaHjV3O85DQ7hHh4IIHw==", "dependencies": { - "@fastify/error": "^3.3.0", + "@fastify/error": "^4.0.0", "fastq": "^1.17.1" } }, @@ -4781,7 +4759,6 @@ "version": "0.6.0", "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.6.0.tgz", "integrity": "sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==", - "license": "MIT", "engines": { "node": ">= 0.6" } @@ -7319,12 +7296,6 @@ "follow-redirects": "^1.14.0" } }, - "node_modules/fast-content-type-parse": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/fast-content-type-parse/-/fast-content-type-parse-1.1.0.tgz", - "integrity": "sha512-fBHHqSTFLVnR61C+gltJuE5GkVQMV0S2nqUO8TJ+5Z3qAKG8vAx4FKai1s5jq/inV1+sREynIWSuQ6HgoSXpDQ==", - "license": "MIT" - }, "node_modules/fast-copy": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/fast-copy/-/fast-copy-3.0.2.tgz", @@ -7335,8 +7306,7 @@ "node_modules/fast-decode-uri-component": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/fast-decode-uri-component/-/fast-decode-uri-component-1.0.1.tgz", - "integrity": "sha512-WKgKWg5eUxvRZGwW8FvfbaH7AXSh2cL+3j5fMGzUMCxWBJ3dV3a7Wz8y2f/uQ0e3B6WmodD3oS54jTQ9HVTIIg==", - "license": "MIT" + "integrity": "sha512-WKgKWg5eUxvRZGwW8FvfbaH7AXSh2cL+3j5fMGzUMCxWBJ3dV3a7Wz8y2f/uQ0e3B6WmodD3oS54jTQ9HVTIIg==" }, "node_modules/fast-deep-equal": { "version": "3.1.3", @@ -7387,16 +7357,15 @@ "license": "MIT" }, "node_modules/fast-json-stringify": { - "version": "5.16.1", - "resolved": "https://registry.npmjs.org/fast-json-stringify/-/fast-json-stringify-5.16.1.tgz", - "integrity": "sha512-KAdnLvy1yu/XrRtP+LJnxbBGrhN+xXu+gt3EUvZhYGKCr3lFHq/7UFJHHFgmJKoqlh6B40bZLEv7w46B0mqn1g==", - "license": "MIT", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/fast-json-stringify/-/fast-json-stringify-6.0.0.tgz", + "integrity": "sha512-FGMKZwniMTgZh7zQp9b6XnBVxUmKVahQLQeRQHqwYmPDqDhcEKZ3BaQsxelFFI5PY7nN71OEeiL47/zUWcYe1A==", "dependencies": { - "@fastify/merge-json-schemas": "^0.1.0", - "ajv": "^8.10.0", + "@fastify/merge-json-schemas": "^0.1.1", + "ajv": "^8.12.0", "ajv-formats": "^3.0.1", "fast-deep-equal": "^3.1.3", - "fast-uri": "^2.1.0", + "fast-uri": "^2.3.0", "json-schema-ref-resolver": "^1.0.1", "rfdc": "^1.2.0" } @@ -7405,7 +7374,6 @@ "version": "8.17.1", "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.17.1.tgz", "integrity": "sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==", - "license": "MIT", "dependencies": { "fast-deep-equal": "^3.1.3", "fast-uri": "^3.0.1", @@ -7417,34 +7385,20 @@ "url": "https://github.com/sponsors/epoberezkin" } }, - "node_modules/fast-json-stringify/node_modules/ajv-formats": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-3.0.1.tgz", - "integrity": "sha512-8iUql50EUR+uUcdRQ3HDqa6EVyo3docL8g5WJ3FNcWmu62IbkGUue/pEyLBW8VGKKucTPgqeks4fIU1DA4yowQ==", - "license": "MIT", - "dependencies": { - "ajv": "^8.0.0" - }, - "peerDependencies": { - "ajv": "^8.0.0" - }, - "peerDependenciesMeta": { - "ajv": { - "optional": true - } - } - }, "node_modules/fast-json-stringify/node_modules/ajv/node_modules/fast-uri": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.0.1.tgz", - "integrity": "sha512-MWipKbbYiYI0UC7cl8m/i/IWTqfC8YXsqjzybjddLsFjStroQzsHXkc73JutMvBiXmOvapk+axIl79ig5t55Bw==", - "license": "MIT" + "integrity": "sha512-MWipKbbYiYI0UC7cl8m/i/IWTqfC8YXsqjzybjddLsFjStroQzsHXkc73JutMvBiXmOvapk+axIl79ig5t55Bw==" + }, + "node_modules/fast-json-stringify/node_modules/fast-uri": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-2.4.0.tgz", + "integrity": "sha512-ypuAmmMKInk5q7XcepxlnUWDLWv4GFtaJqAzWKqn62IpQ3pejtr5dTVbt3vwqVaMKmkNR55sTT+CqUKIaT21BA==" }, "node_modules/fast-json-stringify/node_modules/json-schema-traverse": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "license": "MIT" + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==" }, "node_modules/fast-levenshtein": { "version": "2.0.6", @@ -7457,7 +7411,6 @@ "version": "1.1.2", "resolved": "https://registry.npmjs.org/fast-querystring/-/fast-querystring-1.1.2.tgz", "integrity": "sha512-g6KuKWmFXc0fID8WWH0jit4g0AGBoJhCkJMb1RmbsSEUNvQ+ZC8D6CUZ+GtF8nMzSPXnhiePyyqqipzNNEnHjg==", - "license": "MIT", "dependencies": { "fast-decode-uri-component": "^1.0.1" } @@ -7479,15 +7432,14 @@ "license": "MIT" }, "node_modules/fast-uri": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-2.4.0.tgz", - "integrity": "sha512-ypuAmmMKInk5q7XcepxlnUWDLWv4GFtaJqAzWKqn62IpQ3pejtr5dTVbt3vwqVaMKmkNR55sTT+CqUKIaT21BA==", - "license": "MIT" + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.0.1.tgz", + "integrity": "sha512-MWipKbbYiYI0UC7cl8m/i/IWTqfC8YXsqjzybjddLsFjStroQzsHXkc73JutMvBiXmOvapk+axIl79ig5t55Bw==" }, "node_modules/fastify": { - "version": "4.28.1", - "resolved": "https://registry.npmjs.org/fastify/-/fastify-4.28.1.tgz", - "integrity": "sha512-kFWUtpNr4i7t5vY2EJPCN2KgMVpuqfU4NjnJNCgiNB900oiDeYqaNDRcAfeBbOF5hGixixxcKnOU4KN9z6QncQ==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/fastify/-/fastify-5.0.0.tgz", + "integrity": "sha512-Qe4dU+zGOzg7vXjw4EvcuyIbNnMwTmcuOhlOrOJsgwzvjEZmsM/IeHulgJk+r46STjdJS/ZJbxO8N70ODXDMEQ==", "funding": [ { "type": "github", @@ -7498,24 +7450,22 @@ "url": "https://opencollective.com/fastify" } ], - "license": "MIT", "dependencies": { - "@fastify/ajv-compiler": "^3.5.0", - "@fastify/error": "^3.4.0", - "@fastify/fast-json-stringify-compiler": "^4.3.0", + "@fastify/ajv-compiler": "^4.0.0", + "@fastify/error": "^4.0.0", + "@fastify/fast-json-stringify-compiler": "^5.0.0", "abstract-logging": "^2.0.1", - "avvio": "^8.3.0", - "fast-content-type-parse": "^1.1.0", - "fast-json-stringify": "^5.8.0", - "find-my-way": "^8.0.0", - "light-my-request": "^5.11.0", + "avvio": "^9.0.0", + "fast-json-stringify": "^6.0.0", + "find-my-way": "^9.0.0", + "light-my-request": "^6.0.0", "pino": "^9.0.0", - "process-warning": "^3.0.0", + "process-warning": "^4.0.0", "proxy-addr": "^2.0.7", - "rfdc": "^1.3.0", + "rfdc": "^1.3.1", "secure-json-parse": "^2.7.0", - "semver": "^7.5.4", - "toad-cache": "^3.3.0" + "semver": "^7.6.0", + "toad-cache": "^3.7.0" } }, "node_modules/fastq": { @@ -7560,14 +7510,13 @@ } }, "node_modules/find-my-way": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/find-my-way/-/find-my-way-8.2.0.tgz", - "integrity": "sha512-HdWXgFYc6b1BJcOBDBwjqWuHJj1WYiqrxSh25qtU4DabpMFdj/gSunNBQb83t+8Zt67D7CXEzJWTkxaShMTMOA==", - "license": "MIT", + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/find-my-way/-/find-my-way-9.0.1.tgz", + "integrity": "sha512-/5NN/R0pFWuff16TMajeKt2JyiW+/OE8nOO8vo1DwZTxLaIURb7lcBYPIgRPh61yCNh9l8voeKwcrkUzmB00vw==", "dependencies": { "fast-deep-equal": "^3.1.3", "fast-querystring": "^1.0.0", - "safe-regex2": "^3.1.0" + "safe-regex2": "^4.0.0" }, "engines": { "node": ">=14" @@ -9648,7 +9597,6 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/json-schema-ref-resolver/-/json-schema-ref-resolver-1.0.1.tgz", "integrity": "sha512-EJAj1pgHc1hxF6vo2Z3s69fMjO1INq6eGHXZ8Z6wCQeldCuwxGK9Sxf4/cScGn3FZubCVUehfWtcDM/PLteCQw==", - "license": "MIT", "dependencies": { "fast-deep-equal": "^3.1.3" } @@ -9819,14 +9767,13 @@ } }, "node_modules/light-my-request": { - "version": "5.13.0", - "resolved": "https://registry.npmjs.org/light-my-request/-/light-my-request-5.13.0.tgz", - "integrity": "sha512-9IjUN9ZyCS9pTG+KqTDEQo68Sui2lHsYBrfMyVUTTZ3XhH8PMZq7xO94Kr+eP9dhi/kcKsx4N41p2IXEBil1pQ==", - "license": "BSD-3-Clause", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/light-my-request/-/light-my-request-6.0.0.tgz", + "integrity": "sha512-kFkFXrmKCL0EEeOmJybMH5amWFd+AFvlvMlvFTRxCUwbhfapZqDmeLMPoWihntnYY6JpoQDE9k+vOzObF1fDqg==", "dependencies": { "cookie": "^0.6.0", - "process-warning": "^3.0.0", - "set-cookie-parser": "^2.4.1" + "process-warning": "^4.0.0", + "set-cookie-parser": "^2.6.0" } }, "node_modules/lilconfig": { @@ -12581,12 +12528,6 @@ "integrity": "sha512-e906FRY0+tV27iq4juKzSYPbUj2do2X2JX4EzSca1631EB2QJQUqGbDuERal7LCtOpxl6x3+nvo9NPZcmjkiFA==", "license": "MIT" }, - "node_modules/pino/node_modules/process-warning": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/process-warning/-/process-warning-4.0.0.tgz", - "integrity": "sha512-/MyYDxttz7DfGMMHiysAsFE4qF+pQYAA8ziO/3NcRVrQ5fSk+Mns4QZA/oRPFzvcqNoVJXQNWNAsdwBXLUkQKw==", - "license": "MIT" - }, "node_modules/pirates": { "version": "4.0.6", "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz", @@ -12968,10 +12909,9 @@ } }, "node_modules/process-warning": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/process-warning/-/process-warning-3.0.0.tgz", - "integrity": "sha512-mqn0kFRl0EoqhnL0GQ0veqFHyIN1yig9RHh/InzORTUiZHFRAur+aMtRkELNwGs9aNwKS6tg/An4NYBPGwvtzQ==", - "license": "MIT" + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/process-warning/-/process-warning-4.0.0.tgz", + "integrity": "sha512-/MyYDxttz7DfGMMHiysAsFE4qF+pQYAA8ziO/3NcRVrQ5fSk+Mns4QZA/oRPFzvcqNoVJXQNWNAsdwBXLUkQKw==" }, "node_modules/promptly": { "version": "2.2.0", @@ -13672,7 +13612,6 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", - "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -13730,10 +13669,9 @@ } }, "node_modules/ret": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/ret/-/ret-0.4.3.tgz", - "integrity": "sha512-0f4Memo5QP7WQyUEAYUO3esD/XjOc3Zjjg5CPsAq1p8sIu0XPeMbHJemKA0BO7tV0X7+A0FoEpbmHXWxPyD3wQ==", - "license": "MIT", + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/ret/-/ret-0.5.0.tgz", + "integrity": "sha512-I1XxrZSQ+oErkRR4jYbAyEEu2I0avBvvMM5JN+6EBprOGRCs63ENqZ3vjavq8fBw2+62G5LF5XelKwuJpcvcxw==", "engines": { "node": ">=10" } @@ -13751,8 +13689,7 @@ "node_modules/rfdc": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.4.1.tgz", - "integrity": "sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==", - "license": "MIT" + "integrity": "sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==" }, "node_modules/rimraf": { "version": "6.0.1", @@ -13936,12 +13873,11 @@ } }, "node_modules/safe-regex2": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/safe-regex2/-/safe-regex2-3.1.0.tgz", - "integrity": "sha512-RAAZAGbap2kBfbVhvmnTFv73NWLMvDGOITFYTZBAaY8eR+Ir4ef7Up/e7amo+y1+AH+3PtLkrt9mvcTsG9LXug==", - "license": "MIT", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/safe-regex2/-/safe-regex2-4.0.0.tgz", + "integrity": "sha512-Hvjfv25jPDVr3U+4LDzBuZPPOymELG3PYcSk5hcevooo1yxxamQL/bHs/GrEPGmMoMEwRrHVGiCA1pXi97B8Ew==", "dependencies": { - "ret": "~0.4.0" + "ret": "~0.5.0" } }, "node_modules/safe-stable-stringify": { @@ -14018,8 +13954,7 @@ "node_modules/set-cookie-parser": { "version": "2.7.0", "resolved": "https://registry.npmjs.org/set-cookie-parser/-/set-cookie-parser-2.7.0.tgz", - "integrity": "sha512-lXLOiqpkUumhRdFF3k1osNXCy9akgx/dyPZ5p8qAg9seJzXr5ZrlqZuWIMuY6ejOsVLE6flJ5/h3lsn57fQ/PQ==", - "license": "MIT" + "integrity": "sha512-lXLOiqpkUumhRdFF3k1osNXCy9akgx/dyPZ5p8qAg9seJzXr5ZrlqZuWIMuY6ejOsVLE6flJ5/h3lsn57fQ/PQ==" }, "node_modules/set-function-length": { "version": "1.2.2", @@ -16732,7 +16667,7 @@ "version": "1.1.2", "license": "MIT", "dependencies": { - "fastify": "4.28.1", + "fastify": "5.0.0", "pino": "9.4.0" }, "bin": { diff --git a/packages/server/package.json b/packages/server/package.json index 4bdb9b3e..53ebb598 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -25,7 +25,7 @@ "start": "tsx ./src/server.ts" }, "dependencies": { - "fastify": "4.28.1", + "fastify": "5.0.0", "pino": "9.4.0" }, "devDependencies": { From 972ed99a6d4dc51d802d623b5c19e6c2317c58b1 Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Wed, 18 Sep 2024 15:46:34 +0300 Subject: [PATCH 394/458] Add `.npmignore` file to `@neshca/cache-handler` package (#765) --- .changeset/tall-worms-invite.md | 5 +++++ packages/cache-handler/.npmignore | 5 +++++ 2 files changed, 10 insertions(+) create mode 100644 .changeset/tall-worms-invite.md create mode 100644 packages/cache-handler/.npmignore diff --git a/.changeset/tall-worms-invite.md b/.changeset/tall-worms-invite.md new file mode 100644 index 00000000..8f61aa44 --- /dev/null +++ b/.changeset/tall-worms-invite.md @@ -0,0 +1,5 @@ +--- +'@neshca/cache-handler': patch +--- + +Add `.npmignore` file to exclude unnecessary files from the package. diff --git a/packages/cache-handler/.npmignore b/packages/cache-handler/.npmignore new file mode 100644 index 00000000..b097392b --- /dev/null +++ b/packages/cache-handler/.npmignore @@ -0,0 +1,5 @@ +!dist +.turbo +src +tsconfig.json +tsup.config.ts From 6eee622ee6c41dbdb15e29ccba49363b806b4bf9 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Wed, 18 Sep 2024 15:53:18 +0300 Subject: [PATCH 395/458] Version Packages (#766) Co-authored-by: github-actions[bot] --- .changeset/tall-worms-invite.md | 5 ----- packages/cache-handler/CHANGELOG.md | 6 ++++++ packages/cache-handler/package.json | 2 +- 3 files changed, 7 insertions(+), 6 deletions(-) delete mode 100644 .changeset/tall-worms-invite.md diff --git a/.changeset/tall-worms-invite.md b/.changeset/tall-worms-invite.md deleted file mode 100644 index 8f61aa44..00000000 --- a/.changeset/tall-worms-invite.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@neshca/cache-handler': patch ---- - -Add `.npmignore` file to exclude unnecessary files from the package. diff --git a/packages/cache-handler/CHANGELOG.md b/packages/cache-handler/CHANGELOG.md index 91bcd282..ce8d25b4 100644 --- a/packages/cache-handler/CHANGELOG.md +++ b/packages/cache-handler/CHANGELOG.md @@ -1,5 +1,11 @@ # @neshca/cache-handler +## 1.7.3 + +### Patch Changes + +- 972ed99: Add `.npmignore` file to exclude unnecessary files from the package. + ## 1.7.2 ### Patch Changes diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index f38c1f29..b2d333ea 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -1,6 +1,6 @@ { "name": "@neshca/cache-handler", - "version": "1.7.2", + "version": "1.7.3", "description": "Next.js self-hosting simplified.", "keywords": [ "cache", From bee020a768e2ecf64c128aa66302181a30e5fece Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Wed, 18 Sep 2024 16:05:13 +0300 Subject: [PATCH 396/458] Enable Turbo UI (#767) --- turbo.json | 1 + 1 file changed, 1 insertion(+) diff --git a/turbo.json b/turbo.json index 6ac024cb..b9685b7a 100644 --- a/turbo.json +++ b/turbo.json @@ -2,6 +2,7 @@ "$schema": "https://turbo.build/schema.json", "globalDependencies": ["**/.env.*local"], "globalEnv": ["CI", "NODE_ENV", "NEXT_PUBLIC_BASE_URL", "NEXT_RUNTIME"], + "ui": "tui", "tasks": { "build": { "dependsOn": ["^build"], From 0d2e26aae705d88062099ed18297e34a8efff1a6 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 19 Sep 2024 11:09:41 +0300 Subject: [PATCH 397/458] Bump the next-js group with 2 updates (#770) Bumps the next-js group with 2 updates: [next](https://github.com/vercel/next.js) and [@next/eslint-plugin-next](https://github.com/vercel/next.js/tree/HEAD/packages/eslint-plugin-next). Updates `next` from 14.2.11 to 14.2.12 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v14.2.11...v14.2.12) Updates `@next/eslint-plugin-next` from 14.2.11 to 14.2.12 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/commits/v14.2.12/packages/eslint-plugin-next) --- updated-dependencies: - dependency-name: next dependency-type: direct:production update-type: version-update:semver-patch dependency-group: next-js - dependency-name: "@next/eslint-plugin-next" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: next-js ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 4 +- docs/cache-handler-docs/package.json | 4 +- internal/next-common/package.json | 2 +- package-lock.json | 116 ++++++++++++--------------- 4 files changed, 57 insertions(+), 69 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 1618d426..3473b429 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -19,13 +19,13 @@ "dependencies": { "@neshca/cache-handler": "*", "axios": "1.7.7", - "next": "14.2.11", + "next": "14.2.12", "react": "18.3.1", "react-dom": "18.3.1", "redis": "4.7.0" }, "devDependencies": { - "@next/eslint-plugin-next": "14.2.11", + "@next/eslint-plugin-next": "14.2.12", "@playwright/test": "1.47.1", "@repo/eslint-config": "*", "@repo/typescript-config": "*", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 7563d3fa..5b8d7c36 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -11,14 +11,14 @@ "start:docs": "next start" }, "dependencies": { - "next": "14.2.11", + "next": "14.2.12", "nextra": "2.13.4", "nextra-theme-docs": "2.13.4", "react": "18.3.1", "react-dom": "18.3.1" }, "devDependencies": { - "@next/eslint-plugin-next": "14.2.11", + "@next/eslint-plugin-next": "14.2.12", "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.12", diff --git a/internal/next-common/package.json b/internal/next-common/package.json index 599c2719..4f8c263e 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -11,7 +11,7 @@ "clean": "rimraf ./.turbo ./node_modules" }, "dependencies": { - "next": "14.2.11" + "next": "14.2.12" }, "devDependencies": { "@repo/typescript-config": "*", diff --git a/package-lock.json b/package-lock.json index 3f2f36f6..5c1773ff 100644 --- a/package-lock.json +++ b/package-lock.json @@ -39,13 +39,13 @@ "dependencies": { "@neshca/cache-handler": "*", "axios": "1.7.7", - "next": "14.2.11", + "next": "14.2.12", "react": "18.3.1", "react-dom": "18.3.1", "redis": "4.7.0" }, "devDependencies": { - "@next/eslint-plugin-next": "14.2.11", + "@next/eslint-plugin-next": "14.2.12", "@playwright/test": "1.47.1", "@repo/eslint-config": "*", "@repo/typescript-config": "*", @@ -65,14 +65,14 @@ "docs/cache-handler-docs": { "version": "0.1.0", "dependencies": { - "next": "14.2.11", + "next": "14.2.12", "nextra": "2.13.4", "nextra-theme-docs": "2.13.4", "react": "18.3.1", "react-dom": "18.3.1" }, "devDependencies": { - "@next/eslint-plugin-next": "14.2.11", + "@next/eslint-plugin-next": "14.2.12", "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.12", @@ -117,7 +117,7 @@ "version": "0.0.0", "license": "MIT", "dependencies": { - "next": "14.2.11" + "next": "14.2.12" }, "devDependencies": { "@repo/typescript-config": "*", @@ -2199,17 +2199,15 @@ "link": true }, "node_modules/@next/env": { - "version": "14.2.11", - "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.11.tgz", - "integrity": "sha512-HYsQRSIXwiNqvzzYThrBwq6RhXo3E0n8j8nQnAs8i4fCEo2Zf/3eS0IiRA8XnRg9Ha0YnpkyJZIZg1qEwemrHw==", - "license": "MIT" + "version": "14.2.12", + "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.12.tgz", + "integrity": "sha512-3fP29GIetdwVIfIRyLKM7KrvJaqepv+6pVodEbx0P5CaMLYBtx+7eEg8JYO5L9sveJO87z9eCReceZLi0hxO1Q==" }, "node_modules/@next/eslint-plugin-next": { - "version": "14.2.11", - "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.2.11.tgz", - "integrity": "sha512-7mw+xW7Y03Ph4NTCcAzYe+vu4BNjEHZUfZayyF3Y1D9RX6c5NIe25m1grHEAkyUuaqjRxOYhnCNeglOkIqLkBA==", + "version": "14.2.12", + "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.2.12.tgz", + "integrity": "sha512-cPrKbXtK8NTThOOFNxRGGTw+5s02Ek8z8ri/hZqeKs6uP8LOTGqFyBy6hpCXt7TvLzzriWiiwRyD4h0XYmPEEg==", "dev": true, - "license": "MIT", "dependencies": { "glob": "10.3.10" } @@ -2300,13 +2298,12 @@ } }, "node_modules/@next/swc-darwin-arm64": { - "version": "14.2.11", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.11.tgz", - "integrity": "sha512-eiY9u7wEJZWp/Pga07Qy3ZmNEfALmmSS1HtsJF3y1QEyaExu7boENz11fWqDmZ3uvcyAxCMhTrA1jfVxITQW8g==", + "version": "14.2.12", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.12.tgz", + "integrity": "sha512-crHJ9UoinXeFbHYNok6VZqjKnd8rTd7K3Z2zpyzF1ch7vVNKmhjv/V7EHxep3ILoN8JB9AdRn/EtVVyG9AkCXw==", "cpu": [ "arm64" ], - "license": "MIT", "optional": true, "os": [ "darwin" @@ -2316,13 +2313,12 @@ } }, "node_modules/@next/swc-darwin-x64": { - "version": "14.2.11", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.11.tgz", - "integrity": "sha512-lnB0zYCld4yE0IX3ANrVMmtAbziBb7MYekcmR6iE9bujmgERl6+FK+b0MBq0pl304lYe7zO4yxJus9H/Af8jbg==", + "version": "14.2.12", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.12.tgz", + "integrity": "sha512-JbEaGbWq18BuNBO+lCtKfxl563Uw9oy2TodnN2ioX00u7V1uzrsSUcg3Ep9ce+P0Z9es+JmsvL2/rLphz+Frcw==", "cpu": [ "x64" ], - "license": "MIT", "optional": true, "os": [ "darwin" @@ -2332,13 +2328,12 @@ } }, "node_modules/@next/swc-linux-arm64-gnu": { - "version": "14.2.11", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.11.tgz", - "integrity": "sha512-Ulo9TZVocYmUAtzvZ7FfldtwUoQY0+9z3BiXZCLSUwU2bp7GqHA7/bqrfsArDlUb2xeGwn3ZuBbKtNK8TR0A8w==", + "version": "14.2.12", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.12.tgz", + "integrity": "sha512-qBy7OiXOqZrdp88QEl2H4fWalMGnSCrr1agT/AVDndlyw2YJQA89f3ttR/AkEIP9EkBXXeGl6cC72/EZT5r6rw==", "cpu": [ "arm64" ], - "license": "MIT", "optional": true, "os": [ "linux" @@ -2348,13 +2343,12 @@ } }, "node_modules/@next/swc-linux-arm64-musl": { - "version": "14.2.11", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.11.tgz", - "integrity": "sha512-fH377DnKGyUnkWlmUpFF1T90m0dADBfK11dF8sOQkiELF9M+YwDRCGe8ZyDzvQcUd20Rr5U7vpZRrAxKwd3Rzg==", + "version": "14.2.12", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.12.tgz", + "integrity": "sha512-EfD9L7o9biaQxjwP1uWXnk3vYZi64NVcKUN83hpVkKocB7ogJfyH2r7o1pPnMtir6gHZiGCeHKagJ0yrNSLNHw==", "cpu": [ "arm64" ], - "license": "MIT", "optional": true, "os": [ "linux" @@ -2364,13 +2358,12 @@ } }, "node_modules/@next/swc-linux-x64-gnu": { - "version": "14.2.11", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.11.tgz", - "integrity": "sha512-a0TH4ZZp4NS0LgXP/488kgvWelNpwfgGTUCDXVhPGH6pInb7yIYNgM4kmNWOxBFt+TIuOH6Pi9NnGG4XWFUyXQ==", + "version": "14.2.12", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.12.tgz", + "integrity": "sha512-iQ+n2pxklJew9IpE47hE/VgjmljlHqtcD5UhZVeHICTPbLyrgPehaKf2wLRNjYH75udroBNCgrSSVSVpAbNoYw==", "cpu": [ "x64" ], - "license": "MIT", "optional": true, "os": [ "linux" @@ -2380,13 +2373,12 @@ } }, "node_modules/@next/swc-linux-x64-musl": { - "version": "14.2.11", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.11.tgz", - "integrity": "sha512-DYYZcO4Uir2gZxA4D2JcOAKVs8ZxbOFYPpXSVIgeoQbREbeEHxysVsg3nY4FrQy51e5opxt5mOHl/LzIyZBoKA==", + "version": "14.2.12", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.12.tgz", + "integrity": "sha512-rFkUkNwcQ0ODn7cxvcVdpHlcOpYxMeyMfkJuzaT74xjAa5v4fxP4xDk5OoYmPi8QNLDs3UgZPMSBmpBuv9zKWA==", "cpu": [ "x64" ], - "license": "MIT", "optional": true, "os": [ "linux" @@ -2396,13 +2388,12 @@ } }, "node_modules/@next/swc-win32-arm64-msvc": { - "version": "14.2.11", - "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.11.tgz", - "integrity": "sha512-PwqHeKG3/kKfPpM6of1B9UJ+Er6ySUy59PeFu0Un0LBzJTRKKAg2V6J60Yqzp99m55mLa+YTbU6xj61ImTv9mg==", + "version": "14.2.12", + "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.12.tgz", + "integrity": "sha512-PQFYUvwtHs/u0K85SG4sAdDXYIPXpETf9mcEjWc0R4JmjgMKSDwIU/qfZdavtP6MPNiMjuKGXHCtyhR/M5zo8g==", "cpu": [ "arm64" ], - "license": "MIT", "optional": true, "os": [ "win32" @@ -2412,13 +2403,12 @@ } }, "node_modules/@next/swc-win32-ia32-msvc": { - "version": "14.2.11", - "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.11.tgz", - "integrity": "sha512-0U7PWMnOYIvM74GY6rbH6w7v+vNPDVH1gUhlwHpfInJnNe5LkmUZqhp7FNWeNa5wbVgRcRi1F1cyxp4dmeLLvA==", + "version": "14.2.12", + "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.12.tgz", + "integrity": "sha512-FAj2hMlcbeCV546eU2tEv41dcJb4NeqFlSXU/xL/0ehXywHnNpaYajOUvn3P8wru5WyQe6cTZ8fvckj/2XN4Vw==", "cpu": [ "ia32" ], - "license": "MIT", "optional": true, "os": [ "win32" @@ -2428,13 +2418,12 @@ } }, "node_modules/@next/swc-win32-x64-msvc": { - "version": "14.2.11", - "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.11.tgz", - "integrity": "sha512-gQpS7mcgovWoaTG1FbS5/ojF7CGfql1Q0ZLsMrhcsi2Sr9HEqsUZ70MPJyaYBXbk6iEAP7UXMD9HC8KY1qNwvA==", + "version": "14.2.12", + "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.12.tgz", + "integrity": "sha512-yu8QvV53sBzoIVRHsxCHqeuS8jYq6Lrmdh0briivuh+Brsp6xjg80MAozUsBTAV9KNmY08KlX0KYTWz1lbPzEg==", "cpu": [ "x64" ], - "license": "MIT", "optional": true, "os": [ "win32" @@ -11556,12 +11545,11 @@ } }, "node_modules/next": { - "version": "14.2.11", - "resolved": "https://registry.npmjs.org/next/-/next-14.2.11.tgz", - "integrity": "sha512-8MDFqHBhdmR2wdfaWc8+lW3A/hppFe1ggQ9vgIu/g2/2QEMYJrPoQP6b+VNk56gIug/bStysAmrpUKtj3XN8Bw==", - "license": "MIT", + "version": "14.2.12", + "resolved": "https://registry.npmjs.org/next/-/next-14.2.12.tgz", + "integrity": "sha512-cDOtUSIeoOvt1skKNihdExWMTybx3exnvbFbb9ecZDIxlvIbREQzt9A5Km3Zn3PfU+IFjyYGsHS+lN9VInAGKA==", "dependencies": { - "@next/env": "14.2.11", + "@next/env": "14.2.12", "@swc/helpers": "0.5.5", "busboy": "1.6.0", "caniuse-lite": "^1.0.30001579", @@ -11576,15 +11564,15 @@ "node": ">=18.17.0" }, "optionalDependencies": { - "@next/swc-darwin-arm64": "14.2.11", - "@next/swc-darwin-x64": "14.2.11", - "@next/swc-linux-arm64-gnu": "14.2.11", - "@next/swc-linux-arm64-musl": "14.2.11", - "@next/swc-linux-x64-gnu": "14.2.11", - "@next/swc-linux-x64-musl": "14.2.11", - "@next/swc-win32-arm64-msvc": "14.2.11", - "@next/swc-win32-ia32-msvc": "14.2.11", - "@next/swc-win32-x64-msvc": "14.2.11" + "@next/swc-darwin-arm64": "14.2.12", + "@next/swc-darwin-x64": "14.2.12", + "@next/swc-linux-arm64-gnu": "14.2.12", + "@next/swc-linux-arm64-musl": "14.2.12", + "@next/swc-linux-x64-gnu": "14.2.12", + "@next/swc-linux-x64-musl": "14.2.12", + "@next/swc-win32-arm64-msvc": "14.2.12", + "@next/swc-win32-ia32-msvc": "14.2.12", + "@next/swc-win32-x64-msvc": "14.2.12" }, "peerDependencies": { "@opentelemetry/api": "^1.1.0", @@ -16610,7 +16598,7 @@ }, "packages/cache-handler": { "name": "@neshca/cache-handler", - "version": "1.7.2", + "version": "1.7.3", "license": "MIT", "dependencies": { "cluster-key-slot": "1.1.2", From 75036bde0806d72f919c0db0e8550b813d53bc97 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 20 Sep 2024 01:01:27 +0300 Subject: [PATCH 398/458] Bump @types/react from 18.3.7 to 18.3.8 in the definitely-typed group (#772) Bumps the definitely-typed group with 1 update: [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react). Updates `@types/react` from 18.3.7 to 18.3.8 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react) --- updated-dependencies: - dependency-name: "@types/react" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- package-lock.json | 10 +++++----- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 3473b429..200b5661 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -31,7 +31,7 @@ "@repo/typescript-config": "*", "@types/eslint": "8.56.12", "@types/node": "22.5.5", - "@types/react": "18.3.7", + "@types/react": "18.3.8", "@types/react-dom": "18.3.0", "dotenv-cli": "7.4.2", "eslint": "8.57.1", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 5b8d7c36..58803c2f 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -23,7 +23,7 @@ "@repo/typescript-config": "*", "@types/eslint": "8.56.12", "@types/node": "22.5.5", - "@types/react": "18.3.7", + "@types/react": "18.3.8", "@types/react-dom": "18.3.0", "eslint": "8.57.1", "typescript": "5.6.2" diff --git a/package-lock.json b/package-lock.json index 5c1773ff..f1e40eb1 100644 --- a/package-lock.json +++ b/package-lock.json @@ -51,7 +51,7 @@ "@repo/typescript-config": "*", "@types/eslint": "8.56.12", "@types/node": "22.5.5", - "@types/react": "18.3.7", + "@types/react": "18.3.8", "@types/react-dom": "18.3.0", "dotenv-cli": "7.4.2", "eslint": "8.57.1", @@ -77,7 +77,7 @@ "@repo/typescript-config": "*", "@types/eslint": "8.56.12", "@types/node": "22.5.5", - "@types/react": "18.3.7", + "@types/react": "18.3.8", "@types/react-dom": "18.3.0", "eslint": "8.57.1", "typescript": "5.6.2" @@ -3300,9 +3300,9 @@ "peer": true }, "node_modules/@types/react": { - "version": "18.3.7", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.7.tgz", - "integrity": "sha512-KUnDCJF5+AiZd8owLIeVHqmW9yM4sqmDVf2JRJiBMFkGvkoZ4/WyV2lL4zVsoinmRS/W3FeEdZLEWFRofnT2FQ==", + "version": "18.3.8", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.8.tgz", + "integrity": "sha512-syBUrW3/XpnW4WJ41Pft+I+aPoDVbrBVQGEnbD7NijDGlVC+8gV/XKRY+7vMDlfPpbwYt0l1vd/Sj8bJGMbs9Q==", "dependencies": { "@types/prop-types": "*", "csstype": "^3.0.2" From d3ea276e48f418deb1b2c96737ccb3da20b67131 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 20 Sep 2024 11:39:37 +0300 Subject: [PATCH 399/458] Bump @biomejs/biome from 1.9.1 to 1.9.2 (#773) Bumps [@biomejs/biome](https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome) from 1.9.1 to 1.9.2. - [Release notes](https://github.com/biomejs/biome/releases) - [Changelog](https://github.com/biomejs/biome/blob/main/CHANGELOG.md) - [Commits](https://github.com/biomejs/biome/commits/cli/v1.9.2/packages/@biomejs/biome) --- updated-dependencies: - dependency-name: "@biomejs/biome" dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 81 +++++++++++++++++++++-------------------------- package.json | 2 +- 2 files changed, 37 insertions(+), 46 deletions(-) diff --git a/package-lock.json b/package-lock.json index f1e40eb1..2b588cff 100644 --- a/package-lock.json +++ b/package-lock.json @@ -20,7 +20,7 @@ }, "devDependencies": { "@actions/core": "1.10.1", - "@biomejs/biome": "1.9.1", + "@biomejs/biome": "1.9.2", "@repo/prettier-config": "*", "@repo/typescript-config": "*", "diffscribe": "*", @@ -627,12 +627,11 @@ } }, "node_modules/@biomejs/biome": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@biomejs/biome/-/biome-1.9.1.tgz", - "integrity": "sha512-Ps0Rg0zg3B1zpx+zQHMz5b0n0PBNCAaXttHEDTVrJD5YXR6Uj3T+abTDgeS3wsu4z5i2whqcE1lZxGyWH4bZYg==", + "version": "1.9.2", + "resolved": "https://registry.npmjs.org/@biomejs/biome/-/biome-1.9.2.tgz", + "integrity": "sha512-4j2Gfwft8Jqp1X0qLYvK4TEy4xhTo4o6rlvJPsjPeEame8gsmbGQfOPBkw7ur+7/Z/f0HZmCZKqbMvR7vTXQYQ==", "dev": true, "hasInstallScript": true, - "license": "MIT OR Apache-2.0", "bin": { "biome": "bin/biome" }, @@ -644,25 +643,24 @@ "url": "https://opencollective.com/biome" }, "optionalDependencies": { - "@biomejs/cli-darwin-arm64": "1.9.1", - "@biomejs/cli-darwin-x64": "1.9.1", - "@biomejs/cli-linux-arm64": "1.9.1", - "@biomejs/cli-linux-arm64-musl": "1.9.1", - "@biomejs/cli-linux-x64": "1.9.1", - "@biomejs/cli-linux-x64-musl": "1.9.1", - "@biomejs/cli-win32-arm64": "1.9.1", - "@biomejs/cli-win32-x64": "1.9.1" + "@biomejs/cli-darwin-arm64": "1.9.2", + "@biomejs/cli-darwin-x64": "1.9.2", + "@biomejs/cli-linux-arm64": "1.9.2", + "@biomejs/cli-linux-arm64-musl": "1.9.2", + "@biomejs/cli-linux-x64": "1.9.2", + "@biomejs/cli-linux-x64-musl": "1.9.2", + "@biomejs/cli-win32-arm64": "1.9.2", + "@biomejs/cli-win32-x64": "1.9.2" } }, "node_modules/@biomejs/cli-darwin-arm64": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-1.9.1.tgz", - "integrity": "sha512-js0brHswq/BoeKgfSEUJYOjUOlML6p65Nantti+PsoQ61u9+YVGIZ7325LK7iUpDH8KVJT+Bx7K2b/6Q//W1Pw==", + "version": "1.9.2", + "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-1.9.2.tgz", + "integrity": "sha512-rbs9uJHFmhqB3Td0Ro+1wmeZOHhAPTL3WHr8NtaVczUmDhXkRDWScaxicG9+vhSLj1iLrW47itiK6xiIJy6vaA==", "cpu": [ "arm64" ], "dev": true, - "license": "MIT OR Apache-2.0", "optional": true, "os": [ "darwin" @@ -672,14 +670,13 @@ } }, "node_modules/@biomejs/cli-darwin-x64": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-x64/-/cli-darwin-x64-1.9.1.tgz", - "integrity": "sha512-2zVyjUg5rN0k8XrytkubQWLbp2r/AS5wPhXs4vgVjvqbLnzo32EGX8p61gzroF2dH9DCUCfskdrigCGqNdEbpg==", + "version": "1.9.2", + "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-x64/-/cli-darwin-x64-1.9.2.tgz", + "integrity": "sha512-BlfULKijNaMigQ9GH9fqJVt+3JTDOSiZeWOQtG/1S1sa8Lp046JHG3wRJVOvekTPL9q/CNFW1NVG8J0JN+L1OA==", "cpu": [ "x64" ], "dev": true, - "license": "MIT OR Apache-2.0", "optional": true, "os": [ "darwin" @@ -689,14 +686,13 @@ } }, "node_modules/@biomejs/cli-linux-arm64": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64/-/cli-linux-arm64-1.9.1.tgz", - "integrity": "sha512-QgxwfnG+r2aer5RNGR67Ey91Tv7xXW8E9YckHhwuyWjdLEvKWkrSJrhVG/6ub0kVvTSNkYOuT/7/jMOFBuUbRA==", + "version": "1.9.2", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64/-/cli-linux-arm64-1.9.2.tgz", + "integrity": "sha512-T8TJuSxuBDeQCQzxZu2o3OU4eyLumTofhCxxFd3+aH2AEWVMnH7Z/c3QP1lHI5RRMBP9xIJeMORqDQ5j+gVZzw==", "cpu": [ "arm64" ], "dev": true, - "license": "MIT OR Apache-2.0", "optional": true, "os": [ "linux" @@ -706,14 +702,13 @@ } }, "node_modules/@biomejs/cli-linux-arm64-musl": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-1.9.1.tgz", - "integrity": "sha512-L/JmXKvhsZ1lTgqOr3tWkzuY/NRppdIscHeC9aaiR72WjnBgJS94mawl9BWmGB3aWBc0q6oSDWnBS7617EMMmA==", + "version": "1.9.2", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-1.9.2.tgz", + "integrity": "sha512-ZATvbUWhNxegSALUnCKWqetTZqrK72r2RsFD19OK5jXDj/7o1hzI1KzDNG78LloZxftrwr3uI9SqCLh06shSZw==", "cpu": [ "arm64" ], "dev": true, - "license": "MIT OR Apache-2.0", "optional": true, "os": [ "linux" @@ -723,14 +718,13 @@ } }, "node_modules/@biomejs/cli-linux-x64": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64/-/cli-linux-x64-1.9.1.tgz", - "integrity": "sha512-F0INygtzI2L2n2R1KtYHGr3YWDt9Up1zrUluwembM+iJ1dXN3qzlSb7deFUsSJm4FaIPriqs6Xa56ukdQW6UeQ==", + "version": "1.9.2", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64/-/cli-linux-x64-1.9.2.tgz", + "integrity": "sha512-T0cPk3C3Jr2pVlsuQVTBqk2qPjTm8cYcTD9p/wmR9MeVqui1C/xTVfOIwd3miRODFMrJaVQ8MYSXnVIhV9jTjg==", "cpu": [ "x64" ], "dev": true, - "license": "MIT OR Apache-2.0", "optional": true, "os": [ "linux" @@ -740,14 +734,13 @@ } }, "node_modules/@biomejs/cli-linux-x64-musl": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-1.9.1.tgz", - "integrity": "sha512-gY+eFLIAW45v3WicQHicvjRfA0ntMZHx7h937bXwBMFNFoKmB6rMi6+fKQ6/hiS6juhsFxZdZIz20m15s49J6A==", + "version": "1.9.2", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-1.9.2.tgz", + "integrity": "sha512-CjPM6jT1miV5pry9C7qv8YJk0FIZvZd86QRD3atvDgfgeh9WQU0k2Aoo0xUcPdTnoz0WNwRtDicHxwik63MmSg==", "cpu": [ "x64" ], "dev": true, - "license": "MIT OR Apache-2.0", "optional": true, "os": [ "linux" @@ -757,14 +750,13 @@ } }, "node_modules/@biomejs/cli-win32-arm64": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-arm64/-/cli-win32-arm64-1.9.1.tgz", - "integrity": "sha512-7Jahxar3OB+aTPOgXisMJmMKMsjcK+UmdlG3UIOQjzN/ZFEsPV+GT3bfrVjZDQaCw/zes0Cqd7VTWFjFTC/+MQ==", + "version": "1.9.2", + "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-arm64/-/cli-win32-arm64-1.9.2.tgz", + "integrity": "sha512-2x7gSty75bNIeD23ZRPXyox6Z/V0M71ObeJtvQBhi1fgrvPdtkEuw7/0wEHg6buNCubzOFuN9WYJm6FKoUHfhg==", "cpu": [ "arm64" ], "dev": true, - "license": "MIT OR Apache-2.0", "optional": true, "os": [ "win32" @@ -774,14 +766,13 @@ } }, "node_modules/@biomejs/cli-win32-x64": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-x64/-/cli-win32-x64-1.9.1.tgz", - "integrity": "sha512-liSRWjWzFhyG7s1jg/Bbv9FL+ha/CEd5tFO3+dFIJNplL4TnvAivtyfRVi/tu/pNjISbV1k9JwdBewtAKAgA0w==", + "version": "1.9.2", + "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-x64/-/cli-win32-x64-1.9.2.tgz", + "integrity": "sha512-JC3XvdYcjmu1FmAehVwVV0SebLpeNTnO2ZaMdGCSOdS7f8O9Fq14T2P1gTG1Q29Q8Dt1S03hh0IdVpIZykOL8g==", "cpu": [ "x64" ], "dev": true, - "license": "MIT OR Apache-2.0", "optional": true, "os": [ "win32" diff --git a/package.json b/package.json index 60665b43..7082f0a1 100644 --- a/package.json +++ b/package.json @@ -38,7 +38,7 @@ }, "devDependencies": { "@actions/core": "1.10.1", - "@biomejs/biome": "1.9.1", + "@biomejs/biome": "1.9.2", "@repo/prettier-config": "*", "@repo/typescript-config": "*", "diffscribe": "*", From 55fb254f1f40ecdf5d28f33a39aef3e83e18895f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 21 Sep 2024 22:56:53 +0300 Subject: [PATCH 400/458] Bump the next-js group with 2 updates (#774) Bumps the next-js group with 2 updates: [next](https://github.com/vercel/next.js) and [@next/eslint-plugin-next](https://github.com/vercel/next.js/tree/HEAD/packages/eslint-plugin-next). Updates `next` from 14.2.12 to 14.2.13 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v14.2.12...v14.2.13) Updates `@next/eslint-plugin-next` from 14.2.12 to 14.2.13 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/commits/v14.2.13/packages/eslint-plugin-next) --- updated-dependencies: - dependency-name: next dependency-type: direct:production update-type: version-update:semver-patch dependency-group: next-js - dependency-name: "@next/eslint-plugin-next" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: next-js ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 4 +- docs/cache-handler-docs/package.json | 4 +- internal/next-common/package.json | 2 +- package-lock.json | 102 +++++++++++++-------------- 4 files changed, 56 insertions(+), 56 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 200b5661..f60d4c37 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -19,13 +19,13 @@ "dependencies": { "@neshca/cache-handler": "*", "axios": "1.7.7", - "next": "14.2.12", + "next": "14.2.13", "react": "18.3.1", "react-dom": "18.3.1", "redis": "4.7.0" }, "devDependencies": { - "@next/eslint-plugin-next": "14.2.12", + "@next/eslint-plugin-next": "14.2.13", "@playwright/test": "1.47.1", "@repo/eslint-config": "*", "@repo/typescript-config": "*", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 58803c2f..6c7a3319 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -11,14 +11,14 @@ "start:docs": "next start" }, "dependencies": { - "next": "14.2.12", + "next": "14.2.13", "nextra": "2.13.4", "nextra-theme-docs": "2.13.4", "react": "18.3.1", "react-dom": "18.3.1" }, "devDependencies": { - "@next/eslint-plugin-next": "14.2.12", + "@next/eslint-plugin-next": "14.2.13", "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.12", diff --git a/internal/next-common/package.json b/internal/next-common/package.json index 4f8c263e..d851aa58 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -11,7 +11,7 @@ "clean": "rimraf ./.turbo ./node_modules" }, "dependencies": { - "next": "14.2.12" + "next": "14.2.13" }, "devDependencies": { "@repo/typescript-config": "*", diff --git a/package-lock.json b/package-lock.json index 2b588cff..0c428fa2 100644 --- a/package-lock.json +++ b/package-lock.json @@ -39,13 +39,13 @@ "dependencies": { "@neshca/cache-handler": "*", "axios": "1.7.7", - "next": "14.2.12", + "next": "14.2.13", "react": "18.3.1", "react-dom": "18.3.1", "redis": "4.7.0" }, "devDependencies": { - "@next/eslint-plugin-next": "14.2.12", + "@next/eslint-plugin-next": "14.2.13", "@playwright/test": "1.47.1", "@repo/eslint-config": "*", "@repo/typescript-config": "*", @@ -65,14 +65,14 @@ "docs/cache-handler-docs": { "version": "0.1.0", "dependencies": { - "next": "14.2.12", + "next": "14.2.13", "nextra": "2.13.4", "nextra-theme-docs": "2.13.4", "react": "18.3.1", "react-dom": "18.3.1" }, "devDependencies": { - "@next/eslint-plugin-next": "14.2.12", + "@next/eslint-plugin-next": "14.2.13", "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.12", @@ -117,7 +117,7 @@ "version": "0.0.0", "license": "MIT", "dependencies": { - "next": "14.2.12" + "next": "14.2.13" }, "devDependencies": { "@repo/typescript-config": "*", @@ -2190,14 +2190,14 @@ "link": true }, "node_modules/@next/env": { - "version": "14.2.12", - "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.12.tgz", - "integrity": "sha512-3fP29GIetdwVIfIRyLKM7KrvJaqepv+6pVodEbx0P5CaMLYBtx+7eEg8JYO5L9sveJO87z9eCReceZLi0hxO1Q==" + "version": "14.2.13", + "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.13.tgz", + "integrity": "sha512-s3lh6K8cbW1h5Nga7NNeXrbe0+2jIIYK9YaA9T7IufDWnZpozdFUp6Hf0d5rNWUKu4fEuSX2rCKlGjCrtylfDw==" }, "node_modules/@next/eslint-plugin-next": { - "version": "14.2.12", - "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.2.12.tgz", - "integrity": "sha512-cPrKbXtK8NTThOOFNxRGGTw+5s02Ek8z8ri/hZqeKs6uP8LOTGqFyBy6hpCXt7TvLzzriWiiwRyD4h0XYmPEEg==", + "version": "14.2.13", + "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.2.13.tgz", + "integrity": "sha512-z8Mk0VljxhIzsSiZUSdt3wp+t2lKd+jk5a9Jsvh3zDGkItgDMfjv/ZbET6HsxEl/fSihVoHGsXV6VLyDH0lfTQ==", "dev": true, "dependencies": { "glob": "10.3.10" @@ -2289,9 +2289,9 @@ } }, "node_modules/@next/swc-darwin-arm64": { - "version": "14.2.12", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.12.tgz", - "integrity": "sha512-crHJ9UoinXeFbHYNok6VZqjKnd8rTd7K3Z2zpyzF1ch7vVNKmhjv/V7EHxep3ILoN8JB9AdRn/EtVVyG9AkCXw==", + "version": "14.2.13", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.13.tgz", + "integrity": "sha512-IkAmQEa2Htq+wHACBxOsslt+jMoV3msvxCn0WFSfJSkv/scy+i/EukBKNad36grRxywaXUYJc9mxEGkeIs8Bzg==", "cpu": [ "arm64" ], @@ -2304,9 +2304,9 @@ } }, "node_modules/@next/swc-darwin-x64": { - "version": "14.2.12", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.12.tgz", - "integrity": "sha512-JbEaGbWq18BuNBO+lCtKfxl563Uw9oy2TodnN2ioX00u7V1uzrsSUcg3Ep9ce+P0Z9es+JmsvL2/rLphz+Frcw==", + "version": "14.2.13", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.13.tgz", + "integrity": "sha512-Dv1RBGs2TTjkwEnFMVL5XIfJEavnLqqwYSD6LXgTPdEy/u6FlSrLBSSfe1pcfqhFEXRAgVL3Wpjibe5wXJzWog==", "cpu": [ "x64" ], @@ -2319,9 +2319,9 @@ } }, "node_modules/@next/swc-linux-arm64-gnu": { - "version": "14.2.12", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.12.tgz", - "integrity": "sha512-qBy7OiXOqZrdp88QEl2H4fWalMGnSCrr1agT/AVDndlyw2YJQA89f3ttR/AkEIP9EkBXXeGl6cC72/EZT5r6rw==", + "version": "14.2.13", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.13.tgz", + "integrity": "sha512-yB1tYEFFqo4ZNWkwrJultbsw7NPAAxlPXURXioRl9SdW6aIefOLS+0TEsKrWBtbJ9moTDgU3HRILL6QBQnMevg==", "cpu": [ "arm64" ], @@ -2334,9 +2334,9 @@ } }, "node_modules/@next/swc-linux-arm64-musl": { - "version": "14.2.12", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.12.tgz", - "integrity": "sha512-EfD9L7o9biaQxjwP1uWXnk3vYZi64NVcKUN83hpVkKocB7ogJfyH2r7o1pPnMtir6gHZiGCeHKagJ0yrNSLNHw==", + "version": "14.2.13", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.13.tgz", + "integrity": "sha512-v5jZ/FV/eHGoWhMKYrsAweQ7CWb8xsWGM/8m1mwwZQ/sutJjoFaXchwK4pX8NqwImILEvQmZWyb8pPTcP7htWg==", "cpu": [ "arm64" ], @@ -2349,9 +2349,9 @@ } }, "node_modules/@next/swc-linux-x64-gnu": { - "version": "14.2.12", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.12.tgz", - "integrity": "sha512-iQ+n2pxklJew9IpE47hE/VgjmljlHqtcD5UhZVeHICTPbLyrgPehaKf2wLRNjYH75udroBNCgrSSVSVpAbNoYw==", + "version": "14.2.13", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.13.tgz", + "integrity": "sha512-aVc7m4YL7ViiRv7SOXK3RplXzOEe/qQzRA5R2vpXboHABs3w8vtFslGTz+5tKiQzWUmTmBNVW0UQdhkKRORmGA==", "cpu": [ "x64" ], @@ -2364,9 +2364,9 @@ } }, "node_modules/@next/swc-linux-x64-musl": { - "version": "14.2.12", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.12.tgz", - "integrity": "sha512-rFkUkNwcQ0ODn7cxvcVdpHlcOpYxMeyMfkJuzaT74xjAa5v4fxP4xDk5OoYmPi8QNLDs3UgZPMSBmpBuv9zKWA==", + "version": "14.2.13", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.13.tgz", + "integrity": "sha512-4wWY7/OsSaJOOKvMsu1Teylku7vKyTuocvDLTZQq0TYv9OjiYYWt63PiE1nTuZnqQ4RPvME7Xai+9enoiN0Wrg==", "cpu": [ "x64" ], @@ -2379,9 +2379,9 @@ } }, "node_modules/@next/swc-win32-arm64-msvc": { - "version": "14.2.12", - "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.12.tgz", - "integrity": "sha512-PQFYUvwtHs/u0K85SG4sAdDXYIPXpETf9mcEjWc0R4JmjgMKSDwIU/qfZdavtP6MPNiMjuKGXHCtyhR/M5zo8g==", + "version": "14.2.13", + "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.13.tgz", + "integrity": "sha512-uP1XkqCqV2NVH9+g2sC7qIw+w2tRbcMiXFEbMihkQ8B1+V6m28sshBwAB0SDmOe0u44ne1vFU66+gx/28RsBVQ==", "cpu": [ "arm64" ], @@ -2394,9 +2394,9 @@ } }, "node_modules/@next/swc-win32-ia32-msvc": { - "version": "14.2.12", - "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.12.tgz", - "integrity": "sha512-FAj2hMlcbeCV546eU2tEv41dcJb4NeqFlSXU/xL/0ehXywHnNpaYajOUvn3P8wru5WyQe6cTZ8fvckj/2XN4Vw==", + "version": "14.2.13", + "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.13.tgz", + "integrity": "sha512-V26ezyjPqQpDBV4lcWIh8B/QICQ4v+M5Bo9ykLN+sqeKKBxJVDpEc6biDVyluTXTC40f5IqCU0ttth7Es2ZuMw==", "cpu": [ "ia32" ], @@ -2409,9 +2409,9 @@ } }, "node_modules/@next/swc-win32-x64-msvc": { - "version": "14.2.12", - "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.12.tgz", - "integrity": "sha512-yu8QvV53sBzoIVRHsxCHqeuS8jYq6Lrmdh0briivuh+Brsp6xjg80MAozUsBTAV9KNmY08KlX0KYTWz1lbPzEg==", + "version": "14.2.13", + "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.13.tgz", + "integrity": "sha512-WwzOEAFBGhlDHE5Z73mNU8CO8mqMNLqaG+AO9ETmzdCQlJhVtWZnOl2+rqgVQS+YHunjOWptdFmNfbpwcUuEsw==", "cpu": [ "x64" ], @@ -11536,11 +11536,11 @@ } }, "node_modules/next": { - "version": "14.2.12", - "resolved": "https://registry.npmjs.org/next/-/next-14.2.12.tgz", - "integrity": "sha512-cDOtUSIeoOvt1skKNihdExWMTybx3exnvbFbb9ecZDIxlvIbREQzt9A5Km3Zn3PfU+IFjyYGsHS+lN9VInAGKA==", + "version": "14.2.13", + "resolved": "https://registry.npmjs.org/next/-/next-14.2.13.tgz", + "integrity": "sha512-BseY9YNw8QJSwLYD7hlZzl6QVDoSFHL/URN5K64kVEVpCsSOWeyjbIGK+dZUaRViHTaMQX8aqmnn0PHBbGZezg==", "dependencies": { - "@next/env": "14.2.12", + "@next/env": "14.2.13", "@swc/helpers": "0.5.5", "busboy": "1.6.0", "caniuse-lite": "^1.0.30001579", @@ -11555,15 +11555,15 @@ "node": ">=18.17.0" }, "optionalDependencies": { - "@next/swc-darwin-arm64": "14.2.12", - "@next/swc-darwin-x64": "14.2.12", - "@next/swc-linux-arm64-gnu": "14.2.12", - "@next/swc-linux-arm64-musl": "14.2.12", - "@next/swc-linux-x64-gnu": "14.2.12", - "@next/swc-linux-x64-musl": "14.2.12", - "@next/swc-win32-arm64-msvc": "14.2.12", - "@next/swc-win32-ia32-msvc": "14.2.12", - "@next/swc-win32-x64-msvc": "14.2.12" + "@next/swc-darwin-arm64": "14.2.13", + "@next/swc-darwin-x64": "14.2.13", + "@next/swc-linux-arm64-gnu": "14.2.13", + "@next/swc-linux-arm64-musl": "14.2.13", + "@next/swc-linux-x64-gnu": "14.2.13", + "@next/swc-linux-x64-musl": "14.2.13", + "@next/swc-win32-arm64-msvc": "14.2.13", + "@next/swc-win32-ia32-msvc": "14.2.13", + "@next/swc-win32-x64-msvc": "14.2.13" }, "peerDependencies": { "@opentelemetry/api": "^1.1.0", From 7cf667ebcded77c7fe456805067c9551e3172991 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 21 Sep 2024 23:18:27 +0300 Subject: [PATCH 401/458] Bump @playwright/test from 1.47.1 to 1.47.2 (#775) Bumps [@playwright/test](https://github.com/microsoft/playwright) from 1.47.1 to 1.47.2. - [Release notes](https://github.com/microsoft/playwright/releases) - [Commits](https://github.com/microsoft/playwright/compare/v1.47.1...v1.47.2) --- updated-dependencies: - dependency-name: "@playwright/test" dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- package-lock.json | 27 ++++++++++++--------------- 2 files changed, 13 insertions(+), 16 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index f60d4c37..5493a786 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -26,7 +26,7 @@ }, "devDependencies": { "@next/eslint-plugin-next": "14.2.13", - "@playwright/test": "1.47.1", + "@playwright/test": "1.47.2", "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.12", diff --git a/package-lock.json b/package-lock.json index 0c428fa2..5e500142 100644 --- a/package-lock.json +++ b/package-lock.json @@ -46,7 +46,7 @@ }, "devDependencies": { "@next/eslint-plugin-next": "14.2.13", - "@playwright/test": "1.47.1", + "@playwright/test": "1.47.2", "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.12", @@ -2527,13 +2527,12 @@ } }, "node_modules/@playwright/test": { - "version": "1.47.1", - "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.47.1.tgz", - "integrity": "sha512-dbWpcNQZ5nj16m+A5UNScYx7HX5trIy7g4phrcitn+Nk83S32EBX/CLU4hiF4RGKX/yRc93AAqtfaXB7JWBd4Q==", + "version": "1.47.2", + "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.47.2.tgz", + "integrity": "sha512-jTXRsoSPONAs8Za9QEQdyjFn+0ZQFjCiIztAIF6bi1HqhBzG9Ma7g1WotyiGqFSBRZjIEqMdT8RUlbk1QVhzCQ==", "devOptional": true, - "license": "Apache-2.0", "dependencies": { - "playwright": "1.47.1" + "playwright": "1.47.2" }, "bin": { "playwright": "cli.js" @@ -12518,13 +12517,12 @@ } }, "node_modules/playwright": { - "version": "1.47.1", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.47.1.tgz", - "integrity": "sha512-SUEKi6947IqYbKxRiqnbUobVZY4bF1uu+ZnZNJX9DfU1tlf2UhWfvVjLf01pQx9URsOr18bFVUKXmanYWhbfkw==", + "version": "1.47.2", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.47.2.tgz", + "integrity": "sha512-nx1cLMmQWqmA3UsnjaaokyoUpdVaaDhJhMoxX2qj3McpjnsqFHs516QAKYhqHAgOP+oCFTEOCOAaD1RgD/RQfA==", "devOptional": true, - "license": "Apache-2.0", "dependencies": { - "playwright-core": "1.47.1" + "playwright-core": "1.47.2" }, "bin": { "playwright": "cli.js" @@ -12537,11 +12535,10 @@ } }, "node_modules/playwright-core": { - "version": "1.47.1", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.47.1.tgz", - "integrity": "sha512-i1iyJdLftqtt51mEk6AhYFaAJCDx0xQ/O5NU8EKaWFgMjItPVma542Nh/Aq8aLCjIJSzjaiEQGW/nyqLkGF1OQ==", + "version": "1.47.2", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.47.2.tgz", + "integrity": "sha512-3JvMfF+9LJfe16l7AbSmU555PaTl2tPyQsVInqm3id16pdDfvZ8TTZ/pyzmkbDrZTQefyzU7AIHlZqQnxpqHVQ==", "devOptional": true, - "license": "Apache-2.0", "bin": { "playwright-core": "cli.js" }, From 6fe7b0962fb3e7f6951df68c3fb81f438ddf99da Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 8 Oct 2024 17:33:23 +0300 Subject: [PATCH 402/458] Bump @actions/core from 1.10.1 to 1.11.1 (#795) Bumps [@actions/core](https://github.com/actions/toolkit/tree/HEAD/packages/core) from 1.10.1 to 1.11.1. - [Changelog](https://github.com/actions/toolkit/blob/main/packages/core/RELEASES.md) - [Commits](https://github.com/actions/toolkit/commits/HEAD/packages/core) --- updated-dependencies: - dependency-name: "@actions/core" dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 38 +++++++++++++++++++++----------------- package.json | 2 +- 2 files changed, 22 insertions(+), 18 deletions(-) diff --git a/package-lock.json b/package-lock.json index 5e500142..7ea8e3ee 100644 --- a/package-lock.json +++ b/package-lock.json @@ -19,7 +19,7 @@ "@changesets/cli": "2.27.8" }, "devDependencies": { - "@actions/core": "1.10.1", + "@actions/core": "1.11.1", "@biomejs/biome": "1.9.2", "@repo/prettier-config": "*", "@repo/typescript-config": "*", @@ -155,14 +155,22 @@ "license": "MIT" }, "node_modules/@actions/core": { - "version": "1.10.1", - "resolved": "https://registry.npmjs.org/@actions/core/-/core-1.10.1.tgz", - "integrity": "sha512-3lBR9EDAY+iYIpTnTIXmWcNbX3T2kCkAEQGIQx4NVQ0575nk2k3GRZDTPQG+vVtS2izSLmINlxXf0uLtnrTP+g==", + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@actions/core/-/core-1.11.1.tgz", + "integrity": "sha512-hXJCSrkwfA46Vd9Z3q4cpEpHB1rL5NG04+/rbqW9d3+CSvtB1tYe8UTpAlixa1vj0m/ULglfEK2UKxMGxCxv5A==", + "dev": true, + "dependencies": { + "@actions/exec": "^1.1.1", + "@actions/http-client": "^2.0.1" + } + }, + "node_modules/@actions/exec": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@actions/exec/-/exec-1.1.1.tgz", + "integrity": "sha512-+sCcHHbVdk93a0XT19ECtO/gIXoxvdsgQLzb2fE2/5sIZmWQuluYyjPQtrtTHdU1YzTZ7bAPN4sITq2xi1679w==", "dev": true, - "license": "MIT", "dependencies": { - "@actions/http-client": "^2.0.1", - "uuid": "^8.3.2" + "@actions/io": "^1.0.1" } }, "node_modules/@actions/http-client": { @@ -176,6 +184,12 @@ "undici": "^5.25.4" } }, + "node_modules/@actions/io": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@actions/io/-/io-1.1.3.tgz", + "integrity": "sha512-wi9JjgKLYS7U/z8PPbco+PvTb/nRWjeoFlJ1Qer83k/3C5PHQi28hiVdeE2kHXmIL99mQFawx8qt/JPjZilJ8Q==", + "dev": true + }, "node_modules/@ampproject/remapping": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.3.0.tgz", @@ -16057,16 +16071,6 @@ "punycode": "^2.1.0" } }, - "node_modules/uuid": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", - "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", - "dev": true, - "license": "MIT", - "bin": { - "uuid": "dist/bin/uuid" - } - }, "node_modules/uvu": { "version": "0.5.6", "resolved": "https://registry.npmjs.org/uvu/-/uvu-0.5.6.tgz", diff --git a/package.json b/package.json index 7082f0a1..4e0c21e4 100644 --- a/package.json +++ b/package.json @@ -37,7 +37,7 @@ "@changesets/cli": "2.27.8" }, "devDependencies": { - "@actions/core": "1.10.1", + "@actions/core": "1.11.1", "@biomejs/biome": "1.9.2", "@repo/prettier-config": "*", "@repo/typescript-config": "*", From ae869262babcedf44fa20d86e13e4adcebf9bc61 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 8 Oct 2024 17:45:35 +0300 Subject: [PATCH 403/458] Bump @changesets/cli from 2.27.8 to 2.27.9 (#792) Bumps [@changesets/cli](https://github.com/changesets/changesets) from 2.27.8 to 2.27.9. - [Release notes](https://github.com/changesets/changesets/releases) - [Changelog](https://github.com/changesets/changesets/blob/main/docs/modifying-changelog-format.md) - [Commits](https://github.com/changesets/changesets/compare/@changesets/cli@2.27.8...@changesets/cli@2.27.9) --- updated-dependencies: - dependency-name: "@changesets/cli" dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 12 +++++------- package.json | 2 +- 2 files changed, 6 insertions(+), 8 deletions(-) diff --git a/package-lock.json b/package-lock.json index 7ea8e3ee..27f5db89 100644 --- a/package-lock.json +++ b/package-lock.json @@ -16,7 +16,7 @@ "internal/*" ], "dependencies": { - "@changesets/cli": "2.27.8" + "@changesets/cli": "2.27.9" }, "devDependencies": { "@actions/core": "1.11.1", @@ -861,10 +861,9 @@ } }, "node_modules/@changesets/cli": { - "version": "2.27.8", - "resolved": "https://registry.npmjs.org/@changesets/cli/-/cli-2.27.8.tgz", - "integrity": "sha512-gZNyh+LdSsI82wBSHLQ3QN5J30P4uHKJ4fXgoGwQxfXwYFTJzDdvIJasZn8rYQtmKhyQuiBj4SSnLuKlxKWq4w==", - "license": "MIT", + "version": "2.27.9", + "resolved": "https://registry.npmjs.org/@changesets/cli/-/cli-2.27.9.tgz", + "integrity": "sha512-q42a/ZbDnxPpCb5Wkm6tMVIxgeI9C/bexntzTeCFBrQEdpisQqk8kCHllYZMDjYtEc1ZzumbMJAG8H0Z4rdvjg==", "dependencies": { "@changesets/apply-release-plan": "^7.0.5", "@changesets/assemble-release-plan": "^6.0.4", @@ -881,14 +880,12 @@ "@changesets/types": "^6.0.0", "@changesets/write": "^0.3.2", "@manypkg/get-packages": "^1.1.3", - "@types/semver": "^7.5.0", "ansi-colors": "^4.1.3", "ci-info": "^3.7.0", "enquirer": "^2.3.0", "external-editor": "^3.1.0", "fs-extra": "^7.0.1", "mri": "^1.2.0", - "outdent": "^0.5.0", "p-limit": "^2.2.0", "package-manager-detector": "^0.2.0", "picocolors": "^1.1.0", @@ -3326,6 +3323,7 @@ "version": "7.5.8", "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.8.tgz", "integrity": "sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==", + "dev": true, "license": "MIT" }, "node_modules/@types/unist": { diff --git a/package.json b/package.json index 4e0c21e4..ed3db181 100644 --- a/package.json +++ b/package.json @@ -34,7 +34,7 @@ "version-packages": "changeset version && npm run codestyle:fix" }, "dependencies": { - "@changesets/cli": "2.27.8" + "@changesets/cli": "2.27.9" }, "devDependencies": { "@actions/core": "1.11.1", From d048c4575c13dc7e2aa4f65ac8a0654e1b73b279 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 8 Oct 2024 17:55:05 +0300 Subject: [PATCH 404/458] Bump @biomejs/biome from 1.9.2 to 1.9.3 (#788) Bumps [@biomejs/biome](https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome) from 1.9.2 to 1.9.3. - [Release notes](https://github.com/biomejs/biome/releases) - [Changelog](https://github.com/biomejs/biome/blob/main/CHANGELOG.md) - [Commits](https://github.com/biomejs/biome/commits/cli/v1.9.3/packages/@biomejs/biome) --- updated-dependencies: - dependency-name: "@biomejs/biome" dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 72 +++++++++++++++++++++++------------------------ package.json | 2 +- 2 files changed, 37 insertions(+), 37 deletions(-) diff --git a/package-lock.json b/package-lock.json index 27f5db89..1848b258 100644 --- a/package-lock.json +++ b/package-lock.json @@ -20,7 +20,7 @@ }, "devDependencies": { "@actions/core": "1.11.1", - "@biomejs/biome": "1.9.2", + "@biomejs/biome": "1.9.3", "@repo/prettier-config": "*", "@repo/typescript-config": "*", "diffscribe": "*", @@ -641,9 +641,9 @@ } }, "node_modules/@biomejs/biome": { - "version": "1.9.2", - "resolved": "https://registry.npmjs.org/@biomejs/biome/-/biome-1.9.2.tgz", - "integrity": "sha512-4j2Gfwft8Jqp1X0qLYvK4TEy4xhTo4o6rlvJPsjPeEame8gsmbGQfOPBkw7ur+7/Z/f0HZmCZKqbMvR7vTXQYQ==", + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/@biomejs/biome/-/biome-1.9.3.tgz", + "integrity": "sha512-POjAPz0APAmX33WOQFGQrwLvlu7WLV4CFJMlB12b6ZSg+2q6fYu9kZwLCOA+x83zXfcPd1RpuWOKJW0GbBwLIQ==", "dev": true, "hasInstallScript": true, "bin": { @@ -657,20 +657,20 @@ "url": "https://opencollective.com/biome" }, "optionalDependencies": { - "@biomejs/cli-darwin-arm64": "1.9.2", - "@biomejs/cli-darwin-x64": "1.9.2", - "@biomejs/cli-linux-arm64": "1.9.2", - "@biomejs/cli-linux-arm64-musl": "1.9.2", - "@biomejs/cli-linux-x64": "1.9.2", - "@biomejs/cli-linux-x64-musl": "1.9.2", - "@biomejs/cli-win32-arm64": "1.9.2", - "@biomejs/cli-win32-x64": "1.9.2" + "@biomejs/cli-darwin-arm64": "1.9.3", + "@biomejs/cli-darwin-x64": "1.9.3", + "@biomejs/cli-linux-arm64": "1.9.3", + "@biomejs/cli-linux-arm64-musl": "1.9.3", + "@biomejs/cli-linux-x64": "1.9.3", + "@biomejs/cli-linux-x64-musl": "1.9.3", + "@biomejs/cli-win32-arm64": "1.9.3", + "@biomejs/cli-win32-x64": "1.9.3" } }, "node_modules/@biomejs/cli-darwin-arm64": { - "version": "1.9.2", - "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-1.9.2.tgz", - "integrity": "sha512-rbs9uJHFmhqB3Td0Ro+1wmeZOHhAPTL3WHr8NtaVczUmDhXkRDWScaxicG9+vhSLj1iLrW47itiK6xiIJy6vaA==", + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-1.9.3.tgz", + "integrity": "sha512-QZzD2XrjJDUyIZK+aR2i5DDxCJfdwiYbUKu9GzkCUJpL78uSelAHAPy7m0GuPMVtF/Uo+OKv97W3P9nuWZangQ==", "cpu": [ "arm64" ], @@ -684,9 +684,9 @@ } }, "node_modules/@biomejs/cli-darwin-x64": { - "version": "1.9.2", - "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-x64/-/cli-darwin-x64-1.9.2.tgz", - "integrity": "sha512-BlfULKijNaMigQ9GH9fqJVt+3JTDOSiZeWOQtG/1S1sa8Lp046JHG3wRJVOvekTPL9q/CNFW1NVG8J0JN+L1OA==", + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-x64/-/cli-darwin-x64-1.9.3.tgz", + "integrity": "sha512-vSCoIBJE0BN3SWDFuAY/tRavpUtNoqiceJ5PrU3xDfsLcm/U6N93JSM0M9OAiC/X7mPPfejtr6Yc9vSgWlEgVw==", "cpu": [ "x64" ], @@ -700,9 +700,9 @@ } }, "node_modules/@biomejs/cli-linux-arm64": { - "version": "1.9.2", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64/-/cli-linux-arm64-1.9.2.tgz", - "integrity": "sha512-T8TJuSxuBDeQCQzxZu2o3OU4eyLumTofhCxxFd3+aH2AEWVMnH7Z/c3QP1lHI5RRMBP9xIJeMORqDQ5j+gVZzw==", + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64/-/cli-linux-arm64-1.9.3.tgz", + "integrity": "sha512-vJkAimD2+sVviNTbaWOGqEBy31cW0ZB52KtpVIbkuma7PlfII3tsLhFa+cwbRAcRBkobBBhqZ06hXoZAN8NODQ==", "cpu": [ "arm64" ], @@ -716,9 +716,9 @@ } }, "node_modules/@biomejs/cli-linux-arm64-musl": { - "version": "1.9.2", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-1.9.2.tgz", - "integrity": "sha512-ZATvbUWhNxegSALUnCKWqetTZqrK72r2RsFD19OK5jXDj/7o1hzI1KzDNG78LloZxftrwr3uI9SqCLh06shSZw==", + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-1.9.3.tgz", + "integrity": "sha512-VBzyhaqqqwP3bAkkBrhVq50i3Uj9+RWuj+pYmXrMDgjS5+SKYGE56BwNw4l8hR3SmYbLSbEo15GcV043CDSk+Q==", "cpu": [ "arm64" ], @@ -732,9 +732,9 @@ } }, "node_modules/@biomejs/cli-linux-x64": { - "version": "1.9.2", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64/-/cli-linux-x64-1.9.2.tgz", - "integrity": "sha512-T0cPk3C3Jr2pVlsuQVTBqk2qPjTm8cYcTD9p/wmR9MeVqui1C/xTVfOIwd3miRODFMrJaVQ8MYSXnVIhV9jTjg==", + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64/-/cli-linux-x64-1.9.3.tgz", + "integrity": "sha512-x220V4c+romd26Mu1ptU+EudMXVS4xmzKxPVb9mgnfYlN4Yx9vD5NZraSx/onJnd3Gh/y8iPUdU5CDZJKg9COA==", "cpu": [ "x64" ], @@ -748,9 +748,9 @@ } }, "node_modules/@biomejs/cli-linux-x64-musl": { - "version": "1.9.2", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-1.9.2.tgz", - "integrity": "sha512-CjPM6jT1miV5pry9C7qv8YJk0FIZvZd86QRD3atvDgfgeh9WQU0k2Aoo0xUcPdTnoz0WNwRtDicHxwik63MmSg==", + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-1.9.3.tgz", + "integrity": "sha512-TJmnOG2+NOGM72mlczEsNki9UT+XAsMFAOo8J0me/N47EJ/vkLXxf481evfHLlxMejTY6IN8SdRSiPVLv6AHlA==", "cpu": [ "x64" ], @@ -764,9 +764,9 @@ } }, "node_modules/@biomejs/cli-win32-arm64": { - "version": "1.9.2", - "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-arm64/-/cli-win32-arm64-1.9.2.tgz", - "integrity": "sha512-2x7gSty75bNIeD23ZRPXyox6Z/V0M71ObeJtvQBhi1fgrvPdtkEuw7/0wEHg6buNCubzOFuN9WYJm6FKoUHfhg==", + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-arm64/-/cli-win32-arm64-1.9.3.tgz", + "integrity": "sha512-lg/yZis2HdQGsycUvHWSzo9kOvnGgvtrYRgoCEwPBwwAL8/6crOp3+f47tPwI/LI1dZrhSji7PNsGKGHbwyAhw==", "cpu": [ "arm64" ], @@ -780,9 +780,9 @@ } }, "node_modules/@biomejs/cli-win32-x64": { - "version": "1.9.2", - "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-x64/-/cli-win32-x64-1.9.2.tgz", - "integrity": "sha512-JC3XvdYcjmu1FmAehVwVV0SebLpeNTnO2ZaMdGCSOdS7f8O9Fq14T2P1gTG1Q29Q8Dt1S03hh0IdVpIZykOL8g==", + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-x64/-/cli-win32-x64-1.9.3.tgz", + "integrity": "sha512-cQMy2zanBkVLpmmxXdK6YePzmZx0s5Z7KEnwmrW54rcXK3myCNbQa09SwGZ8i/8sLw0H9F3X7K4rxVNGU8/D4Q==", "cpu": [ "x64" ], diff --git a/package.json b/package.json index ed3db181..e4e7db90 100644 --- a/package.json +++ b/package.json @@ -38,7 +38,7 @@ }, "devDependencies": { "@actions/core": "1.11.1", - "@biomejs/biome": "1.9.2", + "@biomejs/biome": "1.9.3", "@repo/prettier-config": "*", "@repo/typescript-config": "*", "diffscribe": "*", From 067be5455a3be4861ffe280e3ca9c9c7e13ade19 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 8 Oct 2024 18:07:27 +0300 Subject: [PATCH 405/458] Bump the next-js group with 2 updates (#787) Bumps the next-js group with 2 updates: [next](https://github.com/vercel/next.js) and [@next/eslint-plugin-next](https://github.com/vercel/next.js/tree/HEAD/packages/eslint-plugin-next). Updates `next` from 14.2.13 to 14.2.14 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v14.2.13...v14.2.14) Updates `@next/eslint-plugin-next` from 14.2.13 to 14.2.14 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/commits/v14.2.14/packages/eslint-plugin-next) --- updated-dependencies: - dependency-name: next dependency-type: direct:production update-type: version-update:semver-patch dependency-group: next-js - dependency-name: "@next/eslint-plugin-next" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: next-js ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 4 +- docs/cache-handler-docs/package.json | 4 +- internal/next-common/package.json | 2 +- package-lock.json | 102 +++++++++++++-------------- 4 files changed, 56 insertions(+), 56 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 5493a786..5e3f9d19 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -19,13 +19,13 @@ "dependencies": { "@neshca/cache-handler": "*", "axios": "1.7.7", - "next": "14.2.13", + "next": "14.2.14", "react": "18.3.1", "react-dom": "18.3.1", "redis": "4.7.0" }, "devDependencies": { - "@next/eslint-plugin-next": "14.2.13", + "@next/eslint-plugin-next": "14.2.14", "@playwright/test": "1.47.2", "@repo/eslint-config": "*", "@repo/typescript-config": "*", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 6c7a3319..a268a891 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -11,14 +11,14 @@ "start:docs": "next start" }, "dependencies": { - "next": "14.2.13", + "next": "14.2.14", "nextra": "2.13.4", "nextra-theme-docs": "2.13.4", "react": "18.3.1", "react-dom": "18.3.1" }, "devDependencies": { - "@next/eslint-plugin-next": "14.2.13", + "@next/eslint-plugin-next": "14.2.14", "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.12", diff --git a/internal/next-common/package.json b/internal/next-common/package.json index d851aa58..397c71bc 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -11,7 +11,7 @@ "clean": "rimraf ./.turbo ./node_modules" }, "dependencies": { - "next": "14.2.13" + "next": "14.2.14" }, "devDependencies": { "@repo/typescript-config": "*", diff --git a/package-lock.json b/package-lock.json index 1848b258..980a5b5c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -39,13 +39,13 @@ "dependencies": { "@neshca/cache-handler": "*", "axios": "1.7.7", - "next": "14.2.13", + "next": "14.2.14", "react": "18.3.1", "react-dom": "18.3.1", "redis": "4.7.0" }, "devDependencies": { - "@next/eslint-plugin-next": "14.2.13", + "@next/eslint-plugin-next": "14.2.14", "@playwright/test": "1.47.2", "@repo/eslint-config": "*", "@repo/typescript-config": "*", @@ -65,14 +65,14 @@ "docs/cache-handler-docs": { "version": "0.1.0", "dependencies": { - "next": "14.2.13", + "next": "14.2.14", "nextra": "2.13.4", "nextra-theme-docs": "2.13.4", "react": "18.3.1", "react-dom": "18.3.1" }, "devDependencies": { - "@next/eslint-plugin-next": "14.2.13", + "@next/eslint-plugin-next": "14.2.14", "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.12", @@ -117,7 +117,7 @@ "version": "0.0.0", "license": "MIT", "dependencies": { - "next": "14.2.13" + "next": "14.2.14" }, "devDependencies": { "@repo/typescript-config": "*", @@ -2201,14 +2201,14 @@ "link": true }, "node_modules/@next/env": { - "version": "14.2.13", - "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.13.tgz", - "integrity": "sha512-s3lh6K8cbW1h5Nga7NNeXrbe0+2jIIYK9YaA9T7IufDWnZpozdFUp6Hf0d5rNWUKu4fEuSX2rCKlGjCrtylfDw==" + "version": "14.2.14", + "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.14.tgz", + "integrity": "sha512-/0hWQfiaD5//LvGNgc8PjvyqV50vGK0cADYzaoOOGN8fxzBn3iAiaq3S0tCRnFBldq0LVveLcxCTi41ZoYgAgg==" }, "node_modules/@next/eslint-plugin-next": { - "version": "14.2.13", - "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.2.13.tgz", - "integrity": "sha512-z8Mk0VljxhIzsSiZUSdt3wp+t2lKd+jk5a9Jsvh3zDGkItgDMfjv/ZbET6HsxEl/fSihVoHGsXV6VLyDH0lfTQ==", + "version": "14.2.14", + "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.2.14.tgz", + "integrity": "sha512-kV+OsZ56xhj0rnTn6HegyTGkoa16Mxjrpk7pjWumyB2P8JVQb8S9qtkjy/ye0GnTr4JWtWG4x/2qN40lKZ3iVQ==", "dev": true, "dependencies": { "glob": "10.3.10" @@ -2300,9 +2300,9 @@ } }, "node_modules/@next/swc-darwin-arm64": { - "version": "14.2.13", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.13.tgz", - "integrity": "sha512-IkAmQEa2Htq+wHACBxOsslt+jMoV3msvxCn0WFSfJSkv/scy+i/EukBKNad36grRxywaXUYJc9mxEGkeIs8Bzg==", + "version": "14.2.14", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.14.tgz", + "integrity": "sha512-bsxbSAUodM1cjYeA4o6y7sp9wslvwjSkWw57t8DtC8Zig8aG8V6r+Yc05/9mDzLKcybb6EN85k1rJDnMKBd9Gw==", "cpu": [ "arm64" ], @@ -2315,9 +2315,9 @@ } }, "node_modules/@next/swc-darwin-x64": { - "version": "14.2.13", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.13.tgz", - "integrity": "sha512-Dv1RBGs2TTjkwEnFMVL5XIfJEavnLqqwYSD6LXgTPdEy/u6FlSrLBSSfe1pcfqhFEXRAgVL3Wpjibe5wXJzWog==", + "version": "14.2.14", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.14.tgz", + "integrity": "sha512-cC9/I+0+SK5L1k9J8CInahduTVWGMXhQoXFeNvF0uNs3Bt1Ub0Azb8JzTU9vNCr0hnaMqiWu/Z0S1hfKc3+dww==", "cpu": [ "x64" ], @@ -2330,9 +2330,9 @@ } }, "node_modules/@next/swc-linux-arm64-gnu": { - "version": "14.2.13", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.13.tgz", - "integrity": "sha512-yB1tYEFFqo4ZNWkwrJultbsw7NPAAxlPXURXioRl9SdW6aIefOLS+0TEsKrWBtbJ9moTDgU3HRILL6QBQnMevg==", + "version": "14.2.14", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.14.tgz", + "integrity": "sha512-RMLOdA2NU4O7w1PQ3Z9ft3PxD6Htl4uB2TJpocm+4jcllHySPkFaUIFacQ3Jekcg6w+LBaFvjSPthZHiPmiAUg==", "cpu": [ "arm64" ], @@ -2345,9 +2345,9 @@ } }, "node_modules/@next/swc-linux-arm64-musl": { - "version": "14.2.13", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.13.tgz", - "integrity": "sha512-v5jZ/FV/eHGoWhMKYrsAweQ7CWb8xsWGM/8m1mwwZQ/sutJjoFaXchwK4pX8NqwImILEvQmZWyb8pPTcP7htWg==", + "version": "14.2.14", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.14.tgz", + "integrity": "sha512-WgLOA4hT9EIP7jhlkPnvz49iSOMdZgDJVvbpb8WWzJv5wBD07M2wdJXLkDYIpZmCFfo/wPqFsFR4JS4V9KkQ2A==", "cpu": [ "arm64" ], @@ -2360,9 +2360,9 @@ } }, "node_modules/@next/swc-linux-x64-gnu": { - "version": "14.2.13", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.13.tgz", - "integrity": "sha512-aVc7m4YL7ViiRv7SOXK3RplXzOEe/qQzRA5R2vpXboHABs3w8vtFslGTz+5tKiQzWUmTmBNVW0UQdhkKRORmGA==", + "version": "14.2.14", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.14.tgz", + "integrity": "sha512-lbn7svjUps1kmCettV/R9oAvEW+eUI0lo0LJNFOXoQM5NGNxloAyFRNByYeZKL3+1bF5YE0h0irIJfzXBq9Y6w==", "cpu": [ "x64" ], @@ -2375,9 +2375,9 @@ } }, "node_modules/@next/swc-linux-x64-musl": { - "version": "14.2.13", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.13.tgz", - "integrity": "sha512-4wWY7/OsSaJOOKvMsu1Teylku7vKyTuocvDLTZQq0TYv9OjiYYWt63PiE1nTuZnqQ4RPvME7Xai+9enoiN0Wrg==", + "version": "14.2.14", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.14.tgz", + "integrity": "sha512-7TcQCvLQ/hKfQRgjxMN4TZ2BRB0P7HwrGAYL+p+m3u3XcKTraUFerVbV3jkNZNwDeQDa8zdxkKkw2els/S5onQ==", "cpu": [ "x64" ], @@ -2390,9 +2390,9 @@ } }, "node_modules/@next/swc-win32-arm64-msvc": { - "version": "14.2.13", - "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.13.tgz", - "integrity": "sha512-uP1XkqCqV2NVH9+g2sC7qIw+w2tRbcMiXFEbMihkQ8B1+V6m28sshBwAB0SDmOe0u44ne1vFU66+gx/28RsBVQ==", + "version": "14.2.14", + "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.14.tgz", + "integrity": "sha512-8i0Ou5XjTLEje0oj0JiI0Xo9L/93ghFtAUYZ24jARSeTMXLUx8yFIdhS55mTExq5Tj4/dC2fJuaT4e3ySvXU1A==", "cpu": [ "arm64" ], @@ -2405,9 +2405,9 @@ } }, "node_modules/@next/swc-win32-ia32-msvc": { - "version": "14.2.13", - "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.13.tgz", - "integrity": "sha512-V26ezyjPqQpDBV4lcWIh8B/QICQ4v+M5Bo9ykLN+sqeKKBxJVDpEc6biDVyluTXTC40f5IqCU0ttth7Es2ZuMw==", + "version": "14.2.14", + "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.14.tgz", + "integrity": "sha512-2u2XcSaDEOj+96eXpyjHjtVPLhkAFw2nlaz83EPeuK4obF+HmtDJHqgR1dZB7Gb6V/d55FL26/lYVd0TwMgcOQ==", "cpu": [ "ia32" ], @@ -2420,9 +2420,9 @@ } }, "node_modules/@next/swc-win32-x64-msvc": { - "version": "14.2.13", - "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.13.tgz", - "integrity": "sha512-WwzOEAFBGhlDHE5Z73mNU8CO8mqMNLqaG+AO9ETmzdCQlJhVtWZnOl2+rqgVQS+YHunjOWptdFmNfbpwcUuEsw==", + "version": "14.2.14", + "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.14.tgz", + "integrity": "sha512-MZom+OvZ1NZxuRovKt1ApevjiUJTcU2PmdJKL66xUPaJeRywnbGGRWUlaAOwunD6dX+pm83vj979NTC8QXjGWg==", "cpu": [ "x64" ], @@ -11547,11 +11547,11 @@ } }, "node_modules/next": { - "version": "14.2.13", - "resolved": "https://registry.npmjs.org/next/-/next-14.2.13.tgz", - "integrity": "sha512-BseY9YNw8QJSwLYD7hlZzl6QVDoSFHL/URN5K64kVEVpCsSOWeyjbIGK+dZUaRViHTaMQX8aqmnn0PHBbGZezg==", + "version": "14.2.14", + "resolved": "https://registry.npmjs.org/next/-/next-14.2.14.tgz", + "integrity": "sha512-Q1coZG17MW0Ly5x76shJ4dkC23woLAhhnDnw+DfTc7EpZSGuWrlsZ3bZaO8t6u1Yu8FVfhkqJE+U8GC7E0GLPQ==", "dependencies": { - "@next/env": "14.2.13", + "@next/env": "14.2.14", "@swc/helpers": "0.5.5", "busboy": "1.6.0", "caniuse-lite": "^1.0.30001579", @@ -11566,15 +11566,15 @@ "node": ">=18.17.0" }, "optionalDependencies": { - "@next/swc-darwin-arm64": "14.2.13", - "@next/swc-darwin-x64": "14.2.13", - "@next/swc-linux-arm64-gnu": "14.2.13", - "@next/swc-linux-arm64-musl": "14.2.13", - "@next/swc-linux-x64-gnu": "14.2.13", - "@next/swc-linux-x64-musl": "14.2.13", - "@next/swc-win32-arm64-msvc": "14.2.13", - "@next/swc-win32-ia32-msvc": "14.2.13", - "@next/swc-win32-x64-msvc": "14.2.13" + "@next/swc-darwin-arm64": "14.2.14", + "@next/swc-darwin-x64": "14.2.14", + "@next/swc-linux-arm64-gnu": "14.2.14", + "@next/swc-linux-arm64-musl": "14.2.14", + "@next/swc-linux-x64-gnu": "14.2.14", + "@next/swc-linux-x64-musl": "14.2.14", + "@next/swc-win32-arm64-msvc": "14.2.14", + "@next/swc-win32-ia32-msvc": "14.2.14", + "@next/swc-win32-x64-msvc": "14.2.14" }, "peerDependencies": { "@opentelemetry/api": "^1.1.0", From f4432722b4ae9defc87206947b70d8520581011c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 8 Oct 2024 18:20:46 +0300 Subject: [PATCH 406/458] Bump the definitely-typed group across 1 directory with 2 updates (#799) Bumps the definitely-typed group with 2 updates in the / directory: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) and [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react). Updates `@types/node` from 22.5.5 to 22.7.5 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) Updates `@types/react` from 18.3.8 to 18.3.11 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react) --- updated-dependencies: - dependency-name: "@types/node" dependency-type: direct:development update-type: version-update:semver-minor dependency-group: definitely-typed - dependency-name: "@types/react" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 4 +-- docs/cache-handler-docs/package.json | 4 +-- internal/backend/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 34 ++++++++++----------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 10 files changed, 28 insertions(+), 28 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 5e3f9d19..b756f0df 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -30,8 +30,8 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.12", - "@types/node": "22.5.5", - "@types/react": "18.3.8", + "@types/node": "22.7.5", + "@types/react": "18.3.11", "@types/react-dom": "18.3.0", "dotenv-cli": "7.4.2", "eslint": "8.57.1", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index a268a891..9d22b9db 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -22,8 +22,8 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.12", - "@types/node": "22.5.5", - "@types/react": "18.3.8", + "@types/node": "22.7.5", + "@types/react": "18.3.11", "@types/react-dom": "18.3.0", "eslint": "8.57.1", "typescript": "5.6.2" diff --git a/internal/backend/package.json b/internal/backend/package.json index bb6da8a3..0f44fb2c 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.5.5", + "@types/node": "22.7.5", "pino-pretty": "11.2.2", "rimraf": "6.0.1", "tsx": "4.19.1", diff --git a/internal/next-common/package.json b/internal/next-common/package.json index 397c71bc..e11b85df 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.5.5", + "@types/node": "22.7.5", "rimraf": "6.0.1", "typescript": "5.6.2" } diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index 1fe2bada..11c472f3 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -16,7 +16,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "22.5.5", + "@types/node": "22.7.5", "rimraf": "6.0.1", "typescript": "5.6.2" } diff --git a/package-lock.json b/package-lock.json index 980a5b5c..512a24db 100644 --- a/package-lock.json +++ b/package-lock.json @@ -50,8 +50,8 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.12", - "@types/node": "22.5.5", - "@types/react": "18.3.8", + "@types/node": "22.7.5", + "@types/react": "18.3.11", "@types/react-dom": "18.3.0", "dotenv-cli": "7.4.2", "eslint": "8.57.1", @@ -76,8 +76,8 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.12", - "@types/node": "22.5.5", - "@types/react": "18.3.8", + "@types/node": "22.7.5", + "@types/react": "18.3.11", "@types/react-dom": "18.3.0", "eslint": "8.57.1", "typescript": "5.6.2" @@ -92,7 +92,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.5.5", + "@types/node": "22.7.5", "pino-pretty": "11.2.2", "rimraf": "6.0.1", "tsx": "4.19.1", @@ -121,7 +121,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.5.5", + "@types/node": "22.7.5", "rimraf": "6.0.1", "typescript": "5.6.2" } @@ -136,7 +136,7 @@ "devDependencies": { "@neshca/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "22.5.5", + "@types/node": "22.7.5", "rimraf": "6.0.1", "typescript": "5.6.2" } @@ -3262,9 +3262,9 @@ "license": "MIT" }, "node_modules/@types/node": { - "version": "22.5.5", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.5.tgz", - "integrity": "sha512-Xjs4y5UPO/CLdzpgR6GirZJx36yScjh73+2NlLlkFRSoQN8B0DpfXPdZGnvVmLRLOsqDpOfTNv7D9trgGhmOIA==", + "version": "22.7.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.7.5.tgz", + "integrity": "sha512-jML7s2NAzMWc//QSJ1a3prpk78cOPchGvXJsC3C6R6PSMoooztvRVQEz89gmBTBY1SPMaqo5teB4uNHPdetShQ==", "dependencies": { "undici-types": "~6.19.2" } @@ -3301,9 +3301,9 @@ "peer": true }, "node_modules/@types/react": { - "version": "18.3.8", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.8.tgz", - "integrity": "sha512-syBUrW3/XpnW4WJ41Pft+I+aPoDVbrBVQGEnbD7NijDGlVC+8gV/XKRY+7vMDlfPpbwYt0l1vd/Sj8bJGMbs9Q==", + "version": "18.3.11", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.11.tgz", + "integrity": "sha512-r6QZ069rFTjrEYgFdOck1gK7FLVsgJE7tTz0pQBczlBNUhBNk0MQH4UbnFSwjpQLMkLzgqvBBa+qGpLje16eTQ==", "dependencies": { "@types/prop-types": "*", "csstype": "^3.0.2" @@ -16598,7 +16598,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.5.5", + "@types/node": "22.7.5", "rimraf": "6.0.1", "tsup": "8.3.0", "tsx": "4.19.1", @@ -16617,7 +16617,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.5.5", + "@types/node": "22.7.5", "rimraf": "6.0.1", "tsup": "8.3.0", "typescript": "5.6.2" @@ -16633,7 +16633,7 @@ "license": "MIT", "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.5.5", + "@types/node": "22.7.5", "rimraf": "6.0.1", "tsup": "8.3.0", "tsx": "4.19.1", @@ -16655,7 +16655,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.5.5", + "@types/node": "22.7.5", "rimraf": "6.0.1", "tsup": "8.3.0", "tsx": "4.19.1", diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index b2d333ea..116b79ea 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -87,7 +87,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.5.5", + "@types/node": "22.7.5", "rimraf": "6.0.1", "tsup": "8.3.0", "tsx": "4.19.1", diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index ef8d7bb7..9a4cb8f8 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -25,7 +25,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.5.5", + "@types/node": "22.7.5", "rimraf": "6.0.1", "tsup": "8.3.0", "typescript": "5.6.2" diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 04f109d4..19df55c6 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -28,7 +28,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.5.5", + "@types/node": "22.7.5", "rimraf": "6.0.1", "tsup": "8.3.0", "tsx": "4.19.1", diff --git a/packages/server/package.json b/packages/server/package.json index 53ebb598..a04b5d93 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -32,7 +32,7 @@ "@neshca/next-common": "*", "@neshca/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.5.5", + "@types/node": "22.7.5", "rimraf": "6.0.1", "tsup": "8.3.0", "tsx": "4.19.1", From 8661fb4de7fc8ab366a1b72215c1cd2ecaac76bf Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 8 Oct 2024 18:33:54 +0300 Subject: [PATCH 407/458] Bump the turbo group with 2 updates (#783) Bumps the turbo group with 2 updates: [turbo](https://github.com/vercel/turborepo) and [eslint-config-turbo](https://github.com/vercel/turborepo/tree/HEAD/packages/eslint-config-turbo). Updates `turbo` from 2.1.2 to 2.1.3 - [Release notes](https://github.com/vercel/turborepo/releases) - [Changelog](https://github.com/vercel/turborepo/blob/main/release.md) - [Commits](https://github.com/vercel/turborepo/compare/v2.1.2...v2.1.3) Updates `eslint-config-turbo` from 2.1.2 to 2.1.3 - [Release notes](https://github.com/vercel/turborepo/releases) - [Changelog](https://github.com/vercel/turborepo/blob/main/release.md) - [Commits](https://github.com/vercel/turborepo/commits/v2.1.3/packages/eslint-config-turbo) --- updated-dependencies: - dependency-name: turbo dependency-type: direct:development update-type: version-update:semver-patch dependency-group: turbo - dependency-name: eslint-config-turbo dependency-type: direct:development update-type: version-update:semver-patch dependency-group: turbo ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- internal/eslint-config/package.json | 2 +- package-lock.json | 82 +++++++++++++---------------- package.json | 2 +- 3 files changed, 38 insertions(+), 48 deletions(-) diff --git a/internal/eslint-config/package.json b/internal/eslint-config/package.json index 0a137e11..3f50d6b5 100644 --- a/internal/eslint-config/package.json +++ b/internal/eslint-config/package.json @@ -10,7 +10,7 @@ "@typescript-eslint/parser": "7.18.0", "@vercel/style-guide": "6.0.0", "eslint-config-prettier": "9.1.0", - "eslint-config-turbo": "2.1.2", + "eslint-config-turbo": "2.1.3", "eslint-plugin-only-warn": "1.1.0", "typescript": "5.6.2" } diff --git a/package-lock.json b/package-lock.json index 512a24db..ebbd2b91 100644 --- a/package-lock.json +++ b/package-lock.json @@ -26,7 +26,7 @@ "diffscribe": "*", "glob": "11.0.0", "prettier": "3.3.3", - "turbo": "2.1.2" + "turbo": "2.1.3" }, "engines": { "node": ">=20.9.0", @@ -107,7 +107,7 @@ "@typescript-eslint/parser": "7.18.0", "@vercel/style-guide": "6.0.0", "eslint-config-prettier": "9.1.0", - "eslint-config-turbo": "2.1.2", + "eslint-config-turbo": "2.1.3", "eslint-plugin-only-warn": "1.1.0", "typescript": "5.6.2" } @@ -6092,13 +6092,12 @@ } }, "node_modules/eslint-config-turbo": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/eslint-config-turbo/-/eslint-config-turbo-2.1.2.tgz", - "integrity": "sha512-UCNwxBrTOx0K41h1OrwMg7vPdGvcGSAlj40ZzpuUi0S2Muac2UOs+6F2dMYQiKg7lX2HAtyHXlF0T2wlWNHjGg==", + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/eslint-config-turbo/-/eslint-config-turbo-2.1.3.tgz", + "integrity": "sha512-smdkhd01V/e/I4EjJxaZA1kxZ1vdFCHpyryolxLtRBP0bZTrHDYh1H6NAyZ3Fy1jkhsQzXw+L+6m17ygROvNFw==", "dev": true, - "license": "MIT", "dependencies": { - "eslint-plugin-turbo": "2.1.2" + "eslint-plugin-turbo": "2.1.3" }, "peerDependencies": { "eslint": ">6.6.0" @@ -6765,11 +6764,10 @@ } }, "node_modules/eslint-plugin-turbo": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-turbo/-/eslint-plugin-turbo-2.1.2.tgz", - "integrity": "sha512-q2ikGubfVLZDPEKliiuubZc3sI5oqbKIZJ6fRi6Bldv8E3cMNH3Qt7g6hXZV4+GxwQbzEEteCYSBNbOn1DBqRg==", + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/eslint-plugin-turbo/-/eslint-plugin-turbo-2.1.3.tgz", + "integrity": "sha512-I9vPArzyOSYa6bm0iMCgD07MgdExc1VK2wGuVz21g4BUdj83w7mDKyCXR2rwOtCEW+wemFwgxanJ81imQZijNg==", "dev": true, - "license": "MIT", "dependencies": { "dotenv": "16.0.3" }, @@ -6782,7 +6780,6 @@ "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.0.3.tgz", "integrity": "sha512-7GO6HghkA5fYG9TYnNxi14/7K9f5occMlp3zXAuSxn7CKCxt9xbNWG7yF8hTCSUchlfWSe3uLmlPfigevRItzQ==", "dev": true, - "license": "BSD-2-Clause", "engines": { "node": ">=12" } @@ -15489,102 +15486,95 @@ } }, "node_modules/turbo": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/turbo/-/turbo-2.1.2.tgz", - "integrity": "sha512-Jb0rbU4iHEVQ18An/YfakdIv9rKnd3zUfSE117EngrfWXFHo3RndVH96US3GsT8VHpwTncPePDBT2t06PaFLrw==", + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/turbo/-/turbo-2.1.3.tgz", + "integrity": "sha512-lY0yj2GH2a2a3NExZ3rGe+rHUVeFE2aXuRAue57n+08E7Z7N7YCmynju0kPC1grAQzERmoLpKrmzmWd+PNiADw==", "dev": true, - "license": "MIT", "bin": { "turbo": "bin/turbo" }, "optionalDependencies": { - "turbo-darwin-64": "2.1.2", - "turbo-darwin-arm64": "2.1.2", - "turbo-linux-64": "2.1.2", - "turbo-linux-arm64": "2.1.2", - "turbo-windows-64": "2.1.2", - "turbo-windows-arm64": "2.1.2" + "turbo-darwin-64": "2.1.3", + "turbo-darwin-arm64": "2.1.3", + "turbo-linux-64": "2.1.3", + "turbo-linux-arm64": "2.1.3", + "turbo-windows-64": "2.1.3", + "turbo-windows-arm64": "2.1.3" } }, "node_modules/turbo-darwin-64": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/turbo-darwin-64/-/turbo-darwin-64-2.1.2.tgz", - "integrity": "sha512-3TEBxHWh99h2yIzkuIigMEOXt/ItYQp0aPiJjPd1xN4oDcsKK5AxiFKPH9pdtfIBzYsY59kQhZiFj0ELnSP7Bw==", + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/turbo-darwin-64/-/turbo-darwin-64-2.1.3.tgz", + "integrity": "sha512-ouJOm0g0YyoBuhmikEujVCBGo3Zr0lbSOWFIsQtWUTItC88F2w2byhjtsYGPXQwMlTbXwmoBU2lOCfWNkeEwHQ==", "cpu": [ "x64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "darwin" ] }, "node_modules/turbo-darwin-arm64": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/turbo-darwin-arm64/-/turbo-darwin-arm64-2.1.2.tgz", - "integrity": "sha512-he0miWNq2WxJzsH82jS2Z4MXpnkzn9SH8a79iPXiJkq25QREImucscM4RPasXm8wARp91pyysJMq6aasD45CeA==", + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/turbo-darwin-arm64/-/turbo-darwin-arm64-2.1.3.tgz", + "integrity": "sha512-j2FOJsK4LAOtHQlb3Oom0yWB/Vi0nF1ljInr311mVzHoFAJRZtfW2fRvdZRb/lBUwjSp8be58qWHzANIcrA0OA==", "cpu": [ "arm64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "darwin" ] }, "node_modules/turbo-linux-64": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/turbo-linux-64/-/turbo-linux-64-2.1.2.tgz", - "integrity": "sha512-fKUBcc0rK8Vdqv5a/E3CSpMBLG1bzwv+Q0Q83F8fG2ZfNCNKGbcEYABdonNZkkx141Rj03cZQFCgxu3MVEGU+A==", + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/turbo-linux-64/-/turbo-linux-64-2.1.3.tgz", + "integrity": "sha512-ubRHkI1gSel7H7wsmxKK8C9UlLWqg/2dkCC88LFupaK6TKgvBKqDqA0Z1M9C/escK0Jsle2k0H8bybV9OYIl4Q==", "cpu": [ "x64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "linux" ] }, "node_modules/turbo-linux-arm64": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/turbo-linux-arm64/-/turbo-linux-arm64-2.1.2.tgz", - "integrity": "sha512-sV8Bpmm0WiuxgbhxymcC7wSsuxfBBieI98GegSwbr/bs1ANAgzCg93urIrdKdQ3/b31zZxQwcaP4FBF1wx1Qdg==", + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/turbo-linux-arm64/-/turbo-linux-arm64-2.1.3.tgz", + "integrity": "sha512-LffUL+e5wv7BtD6DgnM2kKOlDkMo2eRjhbAjVnrCD3wi2ug0tl6NDzajnHHjtaMyOnIf4AvzSKdLWsBxafGBQA==", "cpu": [ "arm64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "linux" ] }, "node_modules/turbo-windows-64": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/turbo-windows-64/-/turbo-windows-64-2.1.2.tgz", - "integrity": "sha512-wcmIJZI9ORT9ykHGliFE6kWRQrlH930QGSjSgWC8uFChFFuOyUlvC7ttcxuSvU9VqC7NF4C+GVAcFJQ8lTjN7g==", + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/turbo-windows-64/-/turbo-windows-64-2.1.3.tgz", + "integrity": "sha512-S9SvcZZoaq5jKr6kA6eF7/xgQhVn8Vh7PVy5lono9zybvhyL4eY++y2PaLToIgL8G9IcbLmgOC73ExNjFBg9XQ==", "cpu": [ "x64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "win32" ] }, "node_modules/turbo-windows-arm64": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/turbo-windows-arm64/-/turbo-windows-arm64-2.1.2.tgz", - "integrity": "sha512-zdnXjrhk7YO6CP+Q5wPueEvOCLH4lDa6C4rrwiakcWcPgcQGbVozJlo4uaQ6awo8HLWQEvOwu84RkWTdLAc/Hw==", + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/turbo-windows-arm64/-/turbo-windows-arm64-2.1.3.tgz", + "integrity": "sha512-twlEo8lRrGbrR6T/ZklUIquW3IlFCEtywklgVA81aIrSBm56+GEVpSrHhIlsx1hiYeSNrs+GpDwZGe+V7fvEVQ==", "cpu": [ "arm64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "win32" diff --git a/package.json b/package.json index e4e7db90..928a343d 100644 --- a/package.json +++ b/package.json @@ -44,7 +44,7 @@ "diffscribe": "*", "glob": "11.0.0", "prettier": "3.3.3", - "turbo": "2.1.2" + "turbo": "2.1.3" }, "packageManager": "npm@10.7.0", "engines": { From 7f25f238b2b0c251ade0e003927ac9794c45fae4 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 9 Oct 2024 01:00:20 +0300 Subject: [PATCH 408/458] Bump the nextra group across 1 directory with 2 updates (#798) * Bump the nextra group across 1 directory with 2 updates Bumps the nextra group with 2 updates in the / directory: [nextra](https://github.com/shuding/nextra) and [nextra-theme-docs](https://github.com/shuding/nextra). Updates `nextra` from 2.13.4 to 3.0.7 - [Release notes](https://github.com/shuding/nextra/releases) - [Commits](https://github.com/shuding/nextra/compare/nextra@2.13.4...nextra@3.0.7) Updates `nextra-theme-docs` from 2.13.4 to 3.0.7 - [Release notes](https://github.com/shuding/nextra/releases) - [Commits](https://github.com/shuding/nextra/compare/nextra-theme-docs@2.13.4...nextra-theme-docs@3.0.7) --- updated-dependencies: - dependency-name: nextra dependency-type: direct:production update-type: version-update:semver-major dependency-group: nextra - dependency-name: nextra-theme-docs dependency-type: direct:production update-type: version-update:semver-major dependency-group: nextra ... Signed-off-by: dependabot[bot] * Migrate to Nextra 3 --------- Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Arseny <132773930+better-salmon@users.noreply.github.com> --- .../{.eslintrc.js => .eslintrc.cjs} | 0 docs/cache-handler-docs/next.config.js | 20 +- docs/cache-handler-docs/package.json | 5 +- docs/cache-handler-docs/src/pages/_meta.json | 50 - docs/cache-handler-docs/src/pages/_meta.ts | 50 + .../src/pages/api-reference/_meta.json | 8 - .../src/pages/api-reference/_meta.ts | 8 + .../src/pages/functions/_meta.json | 3 - .../src/pages/functions/_meta.ts | 3 + .../src/pages/handlers/_meta.json | 6 - .../src/pages/handlers/_meta.ts | 6 + .../src/pages/usage/_meta.json | 8 - .../src/pages/usage/_meta.ts | 8 + docs/cache-handler-docs/theme.config.jsx | 22 +- package-lock.json | 3500 ++++++++--------- 15 files changed, 1820 insertions(+), 1877 deletions(-) rename docs/cache-handler-docs/{.eslintrc.js => .eslintrc.cjs} (100%) delete mode 100644 docs/cache-handler-docs/src/pages/_meta.json create mode 100644 docs/cache-handler-docs/src/pages/_meta.ts delete mode 100644 docs/cache-handler-docs/src/pages/api-reference/_meta.json create mode 100644 docs/cache-handler-docs/src/pages/api-reference/_meta.ts delete mode 100644 docs/cache-handler-docs/src/pages/functions/_meta.json create mode 100644 docs/cache-handler-docs/src/pages/functions/_meta.ts delete mode 100644 docs/cache-handler-docs/src/pages/handlers/_meta.json create mode 100644 docs/cache-handler-docs/src/pages/handlers/_meta.ts delete mode 100644 docs/cache-handler-docs/src/pages/usage/_meta.json create mode 100644 docs/cache-handler-docs/src/pages/usage/_meta.ts diff --git a/docs/cache-handler-docs/.eslintrc.js b/docs/cache-handler-docs/.eslintrc.cjs similarity index 100% rename from docs/cache-handler-docs/.eslintrc.js rename to docs/cache-handler-docs/.eslintrc.cjs diff --git a/docs/cache-handler-docs/next.config.js b/docs/cache-handler-docs/next.config.js index c899f5df..297181a4 100644 --- a/docs/cache-handler-docs/next.config.js +++ b/docs/cache-handler-docs/next.config.js @@ -1,22 +1,18 @@ -/** @type {import('nextra').NextraConfig} */ -const nextraConfig = { +import nextra from 'nextra'; + +const basePath = process.env.NODE_ENV === 'development' ? undefined : '/next-shared-cache'; + +const withNextra = nextra({ theme: 'nextra-theme-docs', themeConfig: './theme.config.jsx', staticImage: true, -}; - -const withNextra = require('nextra')(nextraConfig); +}); -const basePath = process.env.NODE_ENV === 'development' ? undefined : '/next-shared-cache'; - -/** @type {import('next').NextConfig} */ -const nextConfig = { +export default withNextra({ output: 'export', basePath, images: { unoptimized: true }, env: { NEXT_PUBLIC_BASE_URL: basePath ?? '', }, -}; - -module.exports = withNextra(nextConfig); +}); diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 9d22b9db..006a2ad3 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -2,6 +2,7 @@ "name": "cache-handler-docs", "version": "0.1.0", "private": true, + "type": "module", "scripts": { "build:docs": "next build", "clean": "rimraf ./.next ./.turbo ./node_modules ./out", @@ -12,8 +13,8 @@ }, "dependencies": { "next": "14.2.14", - "nextra": "2.13.4", - "nextra-theme-docs": "2.13.4", + "nextra": "3.0.7", + "nextra-theme-docs": "3.0.7", "react": "18.3.1", "react-dom": "18.3.1" }, diff --git a/docs/cache-handler-docs/src/pages/_meta.json b/docs/cache-handler-docs/src/pages/_meta.json deleted file mode 100644 index e753a03e..00000000 --- a/docs/cache-handler-docs/src/pages/_meta.json +++ /dev/null @@ -1,50 +0,0 @@ -{ - "-- Getting Started": { - "type": "separator", - "title": "Getting Started" - }, - "index": "Introduction", - "installation": "Installation and the First Steps", - "usage": "Usage guides", - "-- Examples": { - "type": "separator", - "title": "Examples" - }, - "redis": "Built-in Redis Handler", - "cluster-example": { - "title": "Redis Cluster example ↗", - "href": "https://github.com/mauroaccornero/cache-handler-redis-cluster-example", - "newWindow": true - }, - "k8s-example": { - "title": "Kubernetes example ↗", - "href": "https://github.com/ezeparziale/nextjs-k8s", - "newWindow": true - }, - "-- API Reference": { - "type": "separator", - "title": "API Reference" - }, - "api-reference": "Handlers API", - "handlers": "Built-in Handlers", - "functions": "Functions", - "-- Troubleshooting": { - "type": "separator", - "title": "Troubleshooting" - }, - "troubleshooting": "", - "-- More": { - "type": "separator", - "title": "More" - }, - "official-example": { - "title": "Official Next.js template ↗", - "href": "https://github.com/vercel/next.js/tree/canary/examples/cache-handler-redis", - "newWindow": true - }, - "next.js-link": { - "title": "Next.js Configuring caching Docs ↗", - "href": "https://nextjs.org/docs/app/building-your-application/deploying#configuring-caching", - "newWindow": true - } -} diff --git a/docs/cache-handler-docs/src/pages/_meta.ts b/docs/cache-handler-docs/src/pages/_meta.ts new file mode 100644 index 00000000..175cbd95 --- /dev/null +++ b/docs/cache-handler-docs/src/pages/_meta.ts @@ -0,0 +1,50 @@ +export default { + '-- Getting Started': { + type: 'separator', + title: 'Getting Started', + }, + index: 'Introduction', + installation: 'Installation and the First Steps', + usage: 'Usage guides', + '-- Examples': { + type: 'separator', + title: 'Examples', + }, + redis: 'Built-in Redis Handler', + 'cluster-example': { + title: 'Redis Cluster example ↗', + href: 'https://github.com/mauroaccornero/cache-handler-redis-cluster-example', + newWindow: true, + }, + 'k8s-example': { + title: 'Kubernetes example ↗', + href: 'https://github.com/ezeparziale/nextjs-k8s', + newWindow: true, + }, + '-- API Reference': { + type: 'separator', + title: 'API Reference', + }, + 'api-reference': 'Handlers API', + handlers: 'Built-in Handlers', + functions: 'Functions', + '-- Troubleshooting': { + type: 'separator', + title: 'Troubleshooting', + }, + troubleshooting: '', + '-- More': { + type: 'separator', + title: 'More', + }, + 'official-example': { + title: 'Official Next.js template ↗', + href: 'https://github.com/vercel/next.js/tree/canary/examples/cache-handler-redis', + newWindow: true, + }, + 'next.js-link': { + title: 'Next.js Configuring caching Docs ↗', + href: 'https://nextjs.org/docs/app/building-your-application/deploying#configuring-caching', + newWindow: true, + }, +}; diff --git a/docs/cache-handler-docs/src/pages/api-reference/_meta.json b/docs/cache-handler-docs/src/pages/api-reference/_meta.json deleted file mode 100644 index d4340645..00000000 --- a/docs/cache-handler-docs/src/pages/api-reference/_meta.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "on-creation": "onCreation", - "cache-handler-config": "CacheHandlerConfig", - "cache-handler-value": "CacheHandlerValue", - "handler": "Handler", - "lifespan-parameters": "LifespanParameters", - "ttl-parameters": "TTLParameters" -} diff --git a/docs/cache-handler-docs/src/pages/api-reference/_meta.ts b/docs/cache-handler-docs/src/pages/api-reference/_meta.ts new file mode 100644 index 00000000..d09bf74a --- /dev/null +++ b/docs/cache-handler-docs/src/pages/api-reference/_meta.ts @@ -0,0 +1,8 @@ +export default { + 'on-creation': 'onCreation', + 'cache-handler-config': 'CacheHandlerConfig', + 'cache-handler-value': 'CacheHandlerValue', + handler: 'Handler', + 'lifespan-parameters': 'LifespanParameters', + 'ttl-parameters': 'TTLParameters', +}; diff --git a/docs/cache-handler-docs/src/pages/functions/_meta.json b/docs/cache-handler-docs/src/pages/functions/_meta.json deleted file mode 100644 index 22765203..00000000 --- a/docs/cache-handler-docs/src/pages/functions/_meta.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "nesh-cache": "neshCache" -} diff --git a/docs/cache-handler-docs/src/pages/functions/_meta.ts b/docs/cache-handler-docs/src/pages/functions/_meta.ts new file mode 100644 index 00000000..34ada859 --- /dev/null +++ b/docs/cache-handler-docs/src/pages/functions/_meta.ts @@ -0,0 +1,3 @@ +export default { + 'nesh-cache': 'neshCache', +}; diff --git a/docs/cache-handler-docs/src/pages/handlers/_meta.json b/docs/cache-handler-docs/src/pages/handlers/_meta.json deleted file mode 100644 index 136959c3..00000000 --- a/docs/cache-handler-docs/src/pages/handlers/_meta.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "redis-stack": "redis-stack", - "redis-strings": "redis-strings", - "local-lru": "local-lru", - "experimental-redis-cluster": "experimental-redis-cluster" -} diff --git a/docs/cache-handler-docs/src/pages/handlers/_meta.ts b/docs/cache-handler-docs/src/pages/handlers/_meta.ts new file mode 100644 index 00000000..449c155d --- /dev/null +++ b/docs/cache-handler-docs/src/pages/handlers/_meta.ts @@ -0,0 +1,6 @@ +export default { + 'redis-stack': 'redis-stack', + 'redis-strings': 'redis-strings', + 'local-lru': 'local-lru', + 'experimental-redis-cluster': 'experimental-redis-cluster', +}; diff --git a/docs/cache-handler-docs/src/pages/usage/_meta.json b/docs/cache-handler-docs/src/pages/usage/_meta.json deleted file mode 100644 index c2fc6ee2..00000000 --- a/docs/cache-handler-docs/src/pages/usage/_meta.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "creating-a-custom-handler": "Creating a Custom Handler", - "on-demand-revalidation": "On-demand revalidation", - "opt-out-cache-on-build": "Opt out the cache on Build", - "development-environment": "", - "build-id-as-prefix-key": "Build Id as a Prefix Key", - "populating-cache-on-start": "Populating the Cache with Pre-rendered Pages" -} diff --git a/docs/cache-handler-docs/src/pages/usage/_meta.ts b/docs/cache-handler-docs/src/pages/usage/_meta.ts new file mode 100644 index 00000000..e2132fbf --- /dev/null +++ b/docs/cache-handler-docs/src/pages/usage/_meta.ts @@ -0,0 +1,8 @@ +export default { + 'creating-a-custom-handler': 'Creating a Custom Handler', + 'on-demand-revalidation': 'On-demand revalidation', + 'opt-out-cache-on-build': 'Opt out the cache on Build', + 'development-environment': '', + 'build-id-as-prefix-key': 'Build Id as a Prefix Key', + 'populating-cache-on-start': 'Populating the Cache with Pre-rendered Pages', +}; diff --git a/docs/cache-handler-docs/theme.config.jsx b/docs/cache-handler-docs/theme.config.jsx index 228eb5d5..8ca0ab79 100644 --- a/docs/cache-handler-docs/theme.config.jsx +++ b/docs/cache-handler-docs/theme.config.jsx @@ -3,9 +3,11 @@ import { useConfig } from 'nextra-theme-docs'; function Head() { const { asPath } = useRouter(); - const { frontMatter } = useConfig(); + const { frontMatter, title } = useConfig(); const url = `https://caching-tools.github.io/next-shared-cache${asPath}`; + const currentTitle = asPath === '/' ? '@neshca/cache-handler' : `${title} — @neshca/cache-handler`; + return ( <> @@ -17,6 +19,7 @@ function Head() { + {currentTitle} ); } @@ -27,22 +30,9 @@ export default { link: 'https://github.com/caching-tools/next-shared-cache', }, docsRepositoryBase: 'https://github.com/caching-tools/next-shared-cache/tree/canary/docs/cache-handler-docs', - useNextSeoProps() { - const { asPath } = useRouter(); - - if (asPath !== '/') { - return { - titleTemplate: '%s — @neshca/cache-handler', - }; - } - - return { - titleTemplate: '@neshca/cache-handler', - }; - }, head: Head, footer: { - text: ( + content: ( MIT {new Date().getFullYear()} ©{' '} @@ -54,7 +44,7 @@ export default { }, banner: { key: 'version-1.7.0', - text: ( + content: (
🎉 Version 1.7.0 is out! It has{' '} =6.0.0" } }, + "node_modules/@antfu/install-pkg": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/@antfu/install-pkg/-/install-pkg-0.4.1.tgz", + "integrity": "sha512-T7yB5QNG29afhWVkVq7XeIMBa5U/vs9mX69YqayXypPRmYzUmzwnYltplHmPtZ4HPCn+sQKeXW8I47wCbuBOjw==", + "dependencies": { + "package-manager-detector": "^0.2.0", + "tinyexec": "^0.3.0" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@antfu/utils": { + "version": "0.7.10", + "resolved": "https://registry.npmjs.org/@antfu/utils/-/utils-0.7.10.tgz", + "integrity": "sha512-+562v9k4aI80m1+VuMHehNJWLOFjBnXn3tdOitzD0il5b7smkSBal4+a3oKiQTbrwMmN/TBUMDvbdoWDehgOww==", + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, "node_modules/@babel/code-frame": { "version": "7.24.7", "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.7.tgz", @@ -796,10 +816,9 @@ } }, "node_modules/@braintree/sanitize-url": { - "version": "6.0.4", - "resolved": "https://registry.npmjs.org/@braintree/sanitize-url/-/sanitize-url-6.0.4.tgz", - "integrity": "sha512-s3jaWicZd0pkP0jf5ysyHUI/RE7MHos6qlToFcGWXVp+ykHOy77OUMrfbgJ9it2C5bow7OIQwYYaHjk9XlBQ2A==", - "license": "MIT" + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/@braintree/sanitize-url/-/sanitize-url-7.1.0.tgz", + "integrity": "sha512-o+UlMLt49RvtCASlOMW0AkHnabN9wR9rwCCherxO0yG4Npy34GkvrAqdXQvrhNs+jh+gkK8gB8Lf05qL/O7KWg==" }, "node_modules/@changesets/apply-release-plan": { "version": "7.0.5", @@ -1056,6 +1075,40 @@ "url": "https://github.com/prettier/prettier?sponsor=1" } }, + "node_modules/@chevrotain/cst-dts-gen": { + "version": "11.0.3", + "resolved": "https://registry.npmjs.org/@chevrotain/cst-dts-gen/-/cst-dts-gen-11.0.3.tgz", + "integrity": "sha512-BvIKpRLeS/8UbfxXxgC33xOumsacaeCKAjAeLyOn7Pcp95HiRbrpl14S+9vaZLolnbssPIUuiUd8IvgkRyt6NQ==", + "dependencies": { + "@chevrotain/gast": "11.0.3", + "@chevrotain/types": "11.0.3", + "lodash-es": "4.17.21" + } + }, + "node_modules/@chevrotain/gast": { + "version": "11.0.3", + "resolved": "https://registry.npmjs.org/@chevrotain/gast/-/gast-11.0.3.tgz", + "integrity": "sha512-+qNfcoNk70PyS/uxmj3li5NiECO+2YKZZQMbmjTqRI3Qchu8Hig/Q9vgkHpI3alNjr7M+a2St5pw5w5F6NL5/Q==", + "dependencies": { + "@chevrotain/types": "11.0.3", + "lodash-es": "4.17.21" + } + }, + "node_modules/@chevrotain/regexp-to-ast": { + "version": "11.0.3", + "resolved": "https://registry.npmjs.org/@chevrotain/regexp-to-ast/-/regexp-to-ast-11.0.3.tgz", + "integrity": "sha512-1fMHaBZxLFvWI067AVbGJav1eRY7N8DDvYCTwGBiE/ytKBgP8azTdgyrKyWZ9Mfh09eHWb5PgTSO8wi7U824RA==" + }, + "node_modules/@chevrotain/types": { + "version": "11.0.3", + "resolved": "https://registry.npmjs.org/@chevrotain/types/-/types-11.0.3.tgz", + "integrity": "sha512-gsiM3G8b58kZC2HaWR50gu6Y1440cHiJ+i3JUvcp/35JchYejb2+5MVeJK0iKThYpAa/P2PYFV4hoi44HD+aHQ==" + }, + "node_modules/@chevrotain/utils": { + "version": "11.0.3", + "resolved": "https://registry.npmjs.org/@chevrotain/utils/-/utils-11.0.3.tgz", + "integrity": "sha512-YslZMgtJUyuMbZ+aKvfF3x1f5liK4mWNxghFRv7jqRR9C3R3fAOGTTKvxXDa2Y1s9zSbcpuO0cAxDYsc9SrXoQ==" + }, "node_modules/@esbuild/aix-ppc64": { "version": "0.23.1", "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.23.1.tgz", @@ -1604,21 +1657,70 @@ "fast-deep-equal": "^3.1.3" } }, + "node_modules/@floating-ui/core": { + "version": "1.6.8", + "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.6.8.tgz", + "integrity": "sha512-7XJ9cPU+yI2QeLS+FCSlqNFZJq8arvswefkZrYI1yQBbftw6FyrZOxYSh+9S7z7TpeWlRt9zJ5IhM1WIL334jA==", + "dependencies": { + "@floating-ui/utils": "^0.2.8" + } + }, + "node_modules/@floating-ui/dom": { + "version": "1.6.11", + "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.6.11.tgz", + "integrity": "sha512-qkMCxSR24v2vGkhYDo/UzxfJN3D4syqSjyuTFz6C7XcpU1pASPRieNI0Kj5VP3/503mOfYiGY891ugBX1GlABQ==", + "dependencies": { + "@floating-ui/core": "^1.6.0", + "@floating-ui/utils": "^0.2.8" + } + }, + "node_modules/@floating-ui/react": { + "version": "0.26.24", + "resolved": "https://registry.npmjs.org/@floating-ui/react/-/react-0.26.24.tgz", + "integrity": "sha512-2ly0pCkZIGEQUq5H8bBK0XJmc1xIK/RM3tvVzY3GBER7IOD1UgmC2Y2tjj4AuS+TC+vTE1KJv2053290jua0Sw==", + "dependencies": { + "@floating-ui/react-dom": "^2.1.2", + "@floating-ui/utils": "^0.2.8", + "tabbable": "^6.0.0" + }, + "peerDependencies": { + "react": ">=16.8.0", + "react-dom": ">=16.8.0" + } + }, + "node_modules/@floating-ui/react-dom": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@floating-ui/react-dom/-/react-dom-2.1.2.tgz", + "integrity": "sha512-06okr5cgPzMNBy+Ycse2A6udMi4bqwW/zgBF/rwjcNqWkyr82Mcg8b0vjX8OJpZFy/FKjJmw6wV7t44kK6kW7A==", + "dependencies": { + "@floating-ui/dom": "^1.0.0" + }, + "peerDependencies": { + "react": ">=16.8.0", + "react-dom": ">=16.8.0" + } + }, + "node_modules/@floating-ui/utils": { + "version": "0.2.8", + "resolved": "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.2.8.tgz", + "integrity": "sha512-kym7SodPp8/wloecOpcmSnWJsK7M0E5Wg8UcFA+uO4B9s5d0ywXOEro/8HM9x0rW+TljRzul/14UYz3TleT3ig==" + }, "node_modules/@headlessui/react": { - "version": "1.7.19", - "resolved": "https://registry.npmjs.org/@headlessui/react/-/react-1.7.19.tgz", - "integrity": "sha512-Ll+8q3OlMJfJbAKM/+/Y2q6PPYbryqNTXDbryx7SXLIDamkF6iQFbriYHga0dY44PvDhvvBWCx1Xj4U5+G4hOw==", - "license": "MIT", + "version": "2.1.9", + "resolved": "https://registry.npmjs.org/@headlessui/react/-/react-2.1.9.tgz", + "integrity": "sha512-ckWw7vlKtnoa1fL2X0fx1a3t/Li9MIKDVXn3SgG65YlxvDAsNrY39PPCxVM7sQRA7go2fJsuHSSauKFNaJHH7A==", "dependencies": { - "@tanstack/react-virtual": "^3.0.0-beta.60", - "client-only": "^0.0.1" + "@floating-ui/react": "^0.26.16", + "@react-aria/focus": "^3.17.1", + "@react-aria/interactions": "^3.21.3", + "@tanstack/react-virtual": "^3.8.1" }, "engines": { "node": ">=10" }, "peerDependencies": { - "react": "^16 || ^17 || ^18", - "react-dom": "^16 || ^17 || ^18" + "react": "^18", + "react-dom": "^18" } }, "node_modules/@humanwhocodes/config-array": { @@ -1657,6 +1759,25 @@ "deprecated": "Use @eslint/object-schema instead", "dev": true }, + "node_modules/@iconify/types": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@iconify/types/-/types-2.0.0.tgz", + "integrity": "sha512-+wluvCrRhXrhyOmRDJ3q8mux9JkKy5SJ/v8ol2tu4FVjyYvtEzkc/3pK15ET6RKg4b4w4BmTk1+gsCUhf21Ykg==" + }, + "node_modules/@iconify/utils": { + "version": "2.1.33", + "resolved": "https://registry.npmjs.org/@iconify/utils/-/utils-2.1.33.tgz", + "integrity": "sha512-jP9h6v/g0BIZx0p7XGJJVtkVnydtbgTgt9mVNcGDYwaa7UhdHdI9dvoq+gKj9sijMSJKxUPEG2JyjsgXjxL7Kw==", + "dependencies": { + "@antfu/install-pkg": "^0.4.0", + "@antfu/utils": "^0.7.10", + "@iconify/types": "^2.0.0", + "debug": "^4.3.6", + "kolorist": "^1.8.0", + "local-pkg": "^0.5.0", + "mlly": "^1.7.1" + } + }, "node_modules/@isaacs/cliui": { "version": "8.0.2", "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", @@ -1823,80 +1944,72 @@ } }, "node_modules/@mdx-js/mdx": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@mdx-js/mdx/-/mdx-2.3.0.tgz", - "integrity": "sha512-jLuwRlz8DQfQNiUCJR50Y09CGPq3fLtmtUQfVrj79E0JWu3dvsVcxVIcfhR5h0iXu+/z++zDrYeiJqifRynJkA==", - "license": "MIT", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@mdx-js/mdx/-/mdx-3.0.1.tgz", + "integrity": "sha512-eIQ4QTrOWyL3LWEe/bu6Taqzq2HQvHcyTMaOrI95P2/LmJE7AsfPfgJGuFLPVqBUE1BC1rik3VIhU+s9u72arA==", "dependencies": { + "@types/estree": "^1.0.0", "@types/estree-jsx": "^1.0.0", + "@types/hast": "^3.0.0", "@types/mdx": "^2.0.0", - "estree-util-build-jsx": "^2.0.0", - "estree-util-is-identifier-name": "^2.0.0", - "estree-util-to-js": "^1.1.0", + "collapse-white-space": "^2.0.0", + "devlop": "^1.0.0", + "estree-util-build-jsx": "^3.0.0", + "estree-util-is-identifier-name": "^3.0.0", + "estree-util-to-js": "^2.0.0", "estree-walker": "^3.0.0", - "hast-util-to-estree": "^2.0.0", - "markdown-extensions": "^1.0.0", + "hast-util-to-estree": "^3.0.0", + "hast-util-to-jsx-runtime": "^2.0.0", + "markdown-extensions": "^2.0.0", "periscopic": "^3.0.0", - "remark-mdx": "^2.0.0", - "remark-parse": "^10.0.0", - "remark-rehype": "^10.0.0", - "unified": "^10.0.0", - "unist-util-position-from-estree": "^1.0.0", - "unist-util-stringify-position": "^3.0.0", - "unist-util-visit": "^4.0.0", - "vfile": "^5.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@mdx-js/mdx/node_modules/unist-util-visit": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-4.1.2.tgz", - "integrity": "sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg==", - "license": "MIT", - "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-is": "^5.0.0", - "unist-util-visit-parents": "^5.1.1" + "remark-mdx": "^3.0.0", + "remark-parse": "^11.0.0", + "remark-rehype": "^11.0.0", + "source-map": "^0.7.0", + "unified": "^11.0.0", + "unist-util-position-from-estree": "^2.0.0", + "unist-util-stringify-position": "^4.0.0", + "unist-util-visit": "^5.0.0", + "vfile": "^6.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, - "node_modules/@mdx-js/mdx/node_modules/unist-util-visit-parents": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-5.1.3.tgz", - "integrity": "sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==", - "license": "MIT", - "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-is": "^5.0.0" - }, + "node_modules/@mdx-js/mdx/node_modules/estree-util-is-identifier-name": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/estree-util-is-identifier-name/-/estree-util-is-identifier-name-3.0.0.tgz", + "integrity": "sha512-hFtqIDZTIUZ9BXLb8y4pYGyk6+wekIivNVTcmvk8NoOh+VeRn5y6cEHzbURrWbfp1fIqdVipilzj+lfaadNZmg==", "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, "node_modules/@mdx-js/react": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@mdx-js/react/-/react-2.3.0.tgz", - "integrity": "sha512-zQH//gdOmuu7nt2oJR29vFhDv88oGPmVw6BggmrHeMI+xgEkp1B2dX9/bMBSYtK0dyLX/aOmesKS09g222K1/g==", - "license": "MIT", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@mdx-js/react/-/react-3.0.1.tgz", + "integrity": "sha512-9ZrPIU4MGf6et1m1ov3zKf+q9+deetI51zprKB1D/z3NOb+rUxxtEl3mCjW5wTGh6VhRdwPueh1oRzi6ezkA8A==", "dependencies": { - "@types/mdx": "^2.0.0", - "@types/react": ">=16" + "@types/mdx": "^2.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" }, "peerDependencies": { + "@types/react": ">=16", "react": ">=16" } }, + "node_modules/@mermaid-js/parser": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/@mermaid-js/parser/-/parser-0.3.0.tgz", + "integrity": "sha512-HsvL6zgE5sUPGgkIDlmAWR1HTNHz2Iy11BAWPTa4Jjabkpguy4Ze2gzfLrg6pdRuBvFwgUYyxiaNqZwrEEXepA==", + "dependencies": { + "langium": "3.0.0" + } + }, "node_modules/@microsoft/tsdoc": { "version": "0.14.2", "resolved": "https://registry.npmjs.org/@microsoft/tsdoc/-/tsdoc-0.14.2.tgz", @@ -2748,14 +2861,81 @@ "debug": "^4.3.1" } }, - "node_modules/@popperjs/core": { - "version": "2.11.8", - "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.8.tgz", - "integrity": "sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==", - "license": "MIT", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/popperjs" + "node_modules/@react-aria/focus": { + "version": "3.18.3", + "resolved": "https://registry.npmjs.org/@react-aria/focus/-/focus-3.18.3.tgz", + "integrity": "sha512-WKUElg+5zS0D3xlVn8MntNnkzJql2J6MuzAMP8Sv5WTgFDse/XGR842dsxPTIyKKdrWVCRegCuwa4m3n/GzgJw==", + "dependencies": { + "@react-aria/interactions": "^3.22.3", + "@react-aria/utils": "^3.25.3", + "@react-types/shared": "^3.25.0", + "@swc/helpers": "^0.5.0", + "clsx": "^2.0.0" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0" + } + }, + "node_modules/@react-aria/interactions": { + "version": "3.22.3", + "resolved": "https://registry.npmjs.org/@react-aria/interactions/-/interactions-3.22.3.tgz", + "integrity": "sha512-RRUb/aG+P0IKTIWikY/SylB6bIbLZeztnZY2vbe7RAG5MgVaCgn5HQ45SI15GlTmhsFG8CnF6slJsUFJiNHpbQ==", + "dependencies": { + "@react-aria/ssr": "^3.9.6", + "@react-aria/utils": "^3.25.3", + "@react-types/shared": "^3.25.0", + "@swc/helpers": "^0.5.0" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0" + } + }, + "node_modules/@react-aria/ssr": { + "version": "3.9.6", + "resolved": "https://registry.npmjs.org/@react-aria/ssr/-/ssr-3.9.6.tgz", + "integrity": "sha512-iLo82l82ilMiVGy342SELjshuWottlb5+VefO3jOQqQRNYnJBFpUSadswDPbRimSgJUZuFwIEYs6AabkP038fA==", + "dependencies": { + "@swc/helpers": "^0.5.0" + }, + "engines": { + "node": ">= 12" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0" + } + }, + "node_modules/@react-aria/utils": { + "version": "3.25.3", + "resolved": "https://registry.npmjs.org/@react-aria/utils/-/utils-3.25.3.tgz", + "integrity": "sha512-PR5H/2vaD8fSq0H/UB9inNbc8KDcVmW6fYAfSWkkn+OAdhTTMVKqXXrZuZBWyFfSD5Ze7VN6acr4hrOQm2bmrA==", + "dependencies": { + "@react-aria/ssr": "^3.9.6", + "@react-stately/utils": "^3.10.4", + "@react-types/shared": "^3.25.0", + "@swc/helpers": "^0.5.0", + "clsx": "^2.0.0" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0" + } + }, + "node_modules/@react-stately/utils": { + "version": "3.10.4", + "resolved": "https://registry.npmjs.org/@react-stately/utils/-/utils-3.10.4.tgz", + "integrity": "sha512-gBEQEIMRh5f60KCm7QKQ2WfvhB2gLUr9b72sqUdIZ2EG+xuPgaIlCBeSicvjmjBvYZwOjoOEnmIkcx2GHp/HWw==", + "dependencies": { + "@swc/helpers": "^0.5.0" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0" + } + }, + "node_modules/@react-types/shared": { + "version": "3.25.0", + "resolved": "https://registry.npmjs.org/@react-types/shared/-/shared-3.25.0.tgz", + "integrity": "sha512-OZSyhzU6vTdW3eV/mz5i6hQwQUhkRs7xwY2d1aqPvTdMe0+2cY7Fwp45PAiwYLEj73i9ro2FxF9qC4DvHGSCgQ==", + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0" } }, "node_modules/@redis/bloom": { @@ -3067,6 +3247,62 @@ "dev": true, "license": "MIT" }, + "node_modules/@shikijs/core": { + "version": "1.22.0", + "resolved": "https://registry.npmjs.org/@shikijs/core/-/core-1.22.0.tgz", + "integrity": "sha512-S8sMe4q71TJAW+qG93s5VaiihujRK6rqDFqBnxqvga/3LvqHEnxqBIOPkt//IdXVtHkQWKu4nOQNk0uBGicU7Q==", + "dependencies": { + "@shikijs/engine-javascript": "1.22.0", + "@shikijs/engine-oniguruma": "1.22.0", + "@shikijs/types": "1.22.0", + "@shikijs/vscode-textmate": "^9.3.0", + "@types/hast": "^3.0.4", + "hast-util-to-html": "^9.0.3" + } + }, + "node_modules/@shikijs/engine-javascript": { + "version": "1.22.0", + "resolved": "https://registry.npmjs.org/@shikijs/engine-javascript/-/engine-javascript-1.22.0.tgz", + "integrity": "sha512-AeEtF4Gcck2dwBqCFUKYfsCq0s+eEbCEbkUuFou53NZ0sTGnJnJ/05KHQFZxpii5HMXbocV9URYVowOP2wH5kw==", + "dependencies": { + "@shikijs/types": "1.22.0", + "@shikijs/vscode-textmate": "^9.3.0", + "oniguruma-to-js": "0.4.3" + } + }, + "node_modules/@shikijs/engine-oniguruma": { + "version": "1.22.0", + "resolved": "https://registry.npmjs.org/@shikijs/engine-oniguruma/-/engine-oniguruma-1.22.0.tgz", + "integrity": "sha512-5iBVjhu/DYs1HB0BKsRRFipRrD7rqjxlWTj4F2Pf+nQSPqc3kcyqFFeZXnBMzDf0HdqaFVvhDRAGiYNvyLP+Mw==", + "dependencies": { + "@shikijs/types": "1.22.0", + "@shikijs/vscode-textmate": "^9.3.0" + } + }, + "node_modules/@shikijs/twoslash": { + "version": "1.22.0", + "resolved": "https://registry.npmjs.org/@shikijs/twoslash/-/twoslash-1.22.0.tgz", + "integrity": "sha512-r5F/x4GTh18XzhAREehgT9lCDFZlISBSIsOFZQQaqjiOLG81PIqJN1I1D6XY58UN9OJt+3mffuKq19K4FOJKJA==", + "dependencies": { + "@shikijs/core": "1.22.0", + "@shikijs/types": "1.22.0", + "twoslash": "^0.2.12" + } + }, + "node_modules/@shikijs/types": { + "version": "1.22.0", + "resolved": "https://registry.npmjs.org/@shikijs/types/-/types-1.22.0.tgz", + "integrity": "sha512-Fw/Nr7FGFhlQqHfxzZY8Cwtwk5E9nKDUgeLjZgt3UuhcM3yJR9xj3ZGNravZZok8XmEZMiYkSMTPlPkULB8nww==", + "dependencies": { + "@shikijs/vscode-textmate": "^9.3.0", + "@types/hast": "^3.0.4" + } + }, + "node_modules/@shikijs/vscode-textmate": { + "version": "9.3.0", + "resolved": "https://registry.npmjs.org/@shikijs/vscode-textmate/-/vscode-textmate-9.3.0.tgz", + "integrity": "sha512-jn7/7ky30idSkd/O5yDBfAnVt+JJpepofP/POZ1iMOxK59cOfqIgg/Dj0eFsjOTMw+4ycJN0uhZH/Eb0bs/EUA==" + }, "node_modules/@swc/counter": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/@swc/counter/-/counter-0.1.3.tgz", @@ -3111,12 +3347,11 @@ } }, "node_modules/@theguild/remark-mermaid": { - "version": "0.0.5", - "resolved": "https://registry.npmjs.org/@theguild/remark-mermaid/-/remark-mermaid-0.0.5.tgz", - "integrity": "sha512-e+ZIyJkEv9jabI4m7q29wZtZv+2iwPGsXJ2d46Zi7e+QcFudiyuqhLhHG/3gX3ZEB+hxTch+fpItyMS8jwbIcw==", - "license": "MIT", + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@theguild/remark-mermaid/-/remark-mermaid-0.1.3.tgz", + "integrity": "sha512-2FjVlaaKXK7Zj7UJAgOVTyaahn/3/EAfqYhyXg0BfDBVUl+lXcoIWRaxzqfnDr2rv8ax6GsC5mNh6hAaT86PDw==", "dependencies": { - "mermaid": "^10.2.2", + "mermaid": "^11.0.0", "unist-util-visit": "^5.0.0" }, "peerDependencies": { @@ -3124,12 +3359,11 @@ } }, "node_modules/@theguild/remark-npm2yarn": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/@theguild/remark-npm2yarn/-/remark-npm2yarn-0.2.1.tgz", - "integrity": "sha512-jUTFWwDxtLEFtGZh/TW/w30ySaDJ8atKWH8dq2/IiQF61dPrGfETpl0WxD0VdBfuLOeU14/kop466oBSRO/5CA==", - "license": "MIT", + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@theguild/remark-npm2yarn/-/remark-npm2yarn-0.3.2.tgz", + "integrity": "sha512-H9T/GOuS/+4H7AY1cfD5DJIIIcGIIw1zMCB8OeTgXk7azJULsnuOurZ/CR54rvuTD+Krx0MVQccaUCvCWfP+vw==", "dependencies": { - "npm-to-yarn": "^2.1.0", + "npm-to-yarn": "^3.0.0", "unist-util-visit": "^5.0.0" } }, @@ -3144,37 +3378,14 @@ "version": "4.0.6", "resolved": "https://registry.npmjs.org/@types/acorn/-/acorn-4.0.6.tgz", "integrity": "sha512-veQTnWP+1D/xbxVrPC3zHnCZRjSrKfhbMUlEA43iMZLu7EsnTtkJklIuwrCPbOi8YkvDQAiW05VQQFvvz9oieQ==", - "license": "MIT", "dependencies": { "@types/estree": "*" } }, - "node_modules/@types/d3-scale": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/@types/d3-scale/-/d3-scale-4.0.8.tgz", - "integrity": "sha512-gkK1VVTr5iNiYJ7vWDI+yUFFlszhNMtVeneJ6lUTKPjprsvLLI9/tgEGiXJOnlINJA8FyA88gfnQsHbybVZrYQ==", - "license": "MIT", - "dependencies": { - "@types/d3-time": "*" - } - }, - "node_modules/@types/d3-scale-chromatic": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/d3-scale-chromatic/-/d3-scale-chromatic-3.0.3.tgz", - "integrity": "sha512-laXM4+1o5ImZv3RpFAsTRn3TEkzqkytiOY0Dz0sq5cnd1dtNlk6sHLon4OvqaiJb28T0S/TdsBI3Sjsy+keJrw==", - "license": "MIT" - }, - "node_modules/@types/d3-time": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/d3-time/-/d3-time-3.0.3.tgz", - "integrity": "sha512-2p6olUZ4w3s+07q3Tm2dbiMZy5pCDfYwtLXXHUnVzXgQlZ/OyPtUz6OL382BkOuGlLXqfT+wqv8Fw2v8/0geBw==", - "license": "MIT" - }, "node_modules/@types/debug": { "version": "4.1.12", "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.12.tgz", "integrity": "sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==", - "license": "MIT", "dependencies": { "@types/ms": "*" } @@ -3200,26 +3411,18 @@ "version": "1.0.5", "resolved": "https://registry.npmjs.org/@types/estree-jsx/-/estree-jsx-1.0.5.tgz", "integrity": "sha512-52CcUVNFyfb1A2ALocQw/Dd1BQFNmSdkuC3BkZ6iqhdMfQz7JWOFRuJFloOzjk+6WijU56m9oKXFAXc7o3Towg==", - "license": "MIT", "dependencies": { "@types/estree": "*" } }, "node_modules/@types/hast": { - "version": "2.3.10", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-2.3.10.tgz", - "integrity": "sha512-McWspRw8xx8J9HurkVBfYj0xKoE25tOFlHGdx4MJ5xORQrMGZNqJhVQWaIbm6Oyla5kYOXtDiopzKRJzEOkwJw==", - "license": "MIT", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", + "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==", "dependencies": { - "@types/unist": "^2" + "@types/unist": "*" } }, - "node_modules/@types/js-yaml": { - "version": "4.0.9", - "resolved": "https://registry.npmjs.org/@types/js-yaml/-/js-yaml-4.0.9.tgz", - "integrity": "sha512-k4MGaQl5TGo/iipqb2UDG2UwjXziSWkh0uysQelTlJpX1qGlpUZYm8PnO4DxG1qBomtJUdYJ6qR6xdIah10JLg==", - "license": "MIT" - }, "node_modules/@types/json-schema": { "version": "7.0.15", "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", @@ -3241,25 +3444,30 @@ "license": "MIT" }, "node_modules/@types/mdast": { - "version": "3.0.15", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.15.tgz", - "integrity": "sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==", - "license": "MIT", + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-4.0.4.tgz", + "integrity": "sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==", "dependencies": { - "@types/unist": "^2" + "@types/unist": "*" } }, "node_modules/@types/mdx": { "version": "2.0.13", "resolved": "https://registry.npmjs.org/@types/mdx/-/mdx-2.0.13.tgz", - "integrity": "sha512-+OWZQfAYyio6YkJb3HLxDrvnx6SWWDbC0zVPfBRzUk0/nqoDyf6dNxQi3eArPe8rJ473nobTMQ/8Zk+LxJ+Yuw==", - "license": "MIT" + "integrity": "sha512-+OWZQfAYyio6YkJb3HLxDrvnx6SWWDbC0zVPfBRzUk0/nqoDyf6dNxQi3eArPe8rJ473nobTMQ/8Zk+LxJ+Yuw==" }, "node_modules/@types/ms": { "version": "0.7.34", "resolved": "https://registry.npmjs.org/@types/ms/-/ms-0.7.34.tgz", - "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==", - "license": "MIT" + "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" + }, + "node_modules/@types/nlcst": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@types/nlcst/-/nlcst-2.0.3.tgz", + "integrity": "sha512-vSYNSDe6Ix3q+6Z7ri9lyWqgGhJTmzRjZRqyq15N0Z/1/UnVsno9G/N40NBijoYx2seFDIl0+B2mgAb9mezUCA==", + "dependencies": { + "@types/unist": "*" + } }, "node_modules/@types/node": { "version": "22.7.5", @@ -3551,6 +3759,17 @@ "url": "https://opencollective.com/typescript-eslint" } }, + "node_modules/@typescript/vfs": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@typescript/vfs/-/vfs-1.6.0.tgz", + "integrity": "sha512-hvJUjNVeBMp77qPINuUvYXj4FyWeeMMKZkxEATEU3hqBAQ7qdTBCUFT7Sp0Zu0faeEtFf+ldXxMEDr/bk73ISg==", + "dependencies": { + "debug": "^4.1.1" + }, + "peerDependencies": { + "typescript": "*" + } + }, "node_modules/@ungap/structured-clone": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz", @@ -3787,12 +4006,6 @@ "node": ">=8" } }, - "node_modules/ansi-sequence-parser": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ansi-sequence-parser/-/ansi-sequence-parser-1.1.1.tgz", - "integrity": "sha512-vJXt3yiaUL4UU546s3rPXlsry/RnM730G1+HkpKE012AN0sx1eOrxSu95oKDIonskeLTijMgqWZ3uDEe3NFvyg==", - "license": "MIT" - }, "node_modules/ansi-styles": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", @@ -3913,6 +4126,15 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/array-iterate": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/array-iterate/-/array-iterate-2.0.1.tgz", + "integrity": "sha512-I1jXZMjAgCMmxT4qxXfPXa6SthSoE8h6gkSI9BGGNv8mP8G/v0blc+qFnZu6K42vTOiuME596QaLO0TP3Lk0xg==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, "node_modules/array-union": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", @@ -4066,7 +4288,6 @@ "version": "1.9.0", "resolved": "https://registry.npmjs.org/astring/-/astring-1.9.0.tgz", "integrity": "sha512-LElXdjswlqjWrPpJFg1Fx4wpkOCxj1TDHlSV4PlaRxHGWko024xICaa97ZkMfs6DRKlCguiAI+rbXv5GWwXIkg==", - "license": "MIT", "bin": { "astring": "bin/astring" } @@ -4157,7 +4378,6 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/bail/-/bail-2.0.2.tgz", "integrity": "sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw==", - "license": "MIT", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" @@ -4212,6 +4432,17 @@ "node": ">=4" } }, + "node_modules/better-react-mathjax": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/better-react-mathjax/-/better-react-mathjax-2.0.3.tgz", + "integrity": "sha512-wfifT8GFOKb1TWm2+E50I6DJpLZ5kLbch283Lu043EJtwSv0XvZDjr4YfR4d2MjAhqP6SH4VjjrKgbX8R00oCQ==", + "dependencies": { + "mathjax-full": "^3.2.2" + }, + "peerDependencies": { + "react": ">=16.8" + } + }, "node_modules/binary-extensions": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", @@ -4443,7 +4674,6 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/ccount/-/ccount-2.0.1.tgz", "integrity": "sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==", - "license": "MIT", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" @@ -4470,7 +4700,6 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/character-entities/-/character-entities-2.0.2.tgz", "integrity": "sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ==", - "license": "MIT", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" @@ -4480,7 +4709,6 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/character-entities-html4/-/character-entities-html4-2.1.0.tgz", "integrity": "sha512-1v7fgQRj6hnSwFpq1Eu0ynr/CDEw0rXo2B61qXrLNdHZmPKgb7fqS1a2JwF0rISo9q77jDI8VMEHoApn8qDoZA==", - "license": "MIT", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" @@ -4490,7 +4718,6 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-3.0.0.tgz", "integrity": "sha512-RpPp0asT/6ufRm//AJVwpViZbGM/MkjQFxJccQRHmISF/22NBtsHqAWmL+/pmkPWoIUJdWyeVleTl1wydHATVQ==", - "license": "MIT", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" @@ -4500,7 +4727,6 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/character-reference-invalid/-/character-reference-invalid-2.0.1.tgz", "integrity": "sha512-iBZ4F4wRbyORVsu0jPV7gXkOsGYjGHPmAyv+HiHG8gi5PtC9KI2j1+v8/tlibRvjoWX027ypmG/n0HtO5t7unw==", - "license": "MIT", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" @@ -4519,6 +4745,30 @@ "dev": true, "license": "MIT/X11" }, + "node_modules/chevrotain": { + "version": "11.0.3", + "resolved": "https://registry.npmjs.org/chevrotain/-/chevrotain-11.0.3.tgz", + "integrity": "sha512-ci2iJH6LeIkvP9eJW6gpueU8cnZhv85ELY8w8WiFtNjMHA5ad6pQLaJo9mEly/9qUyCpvqX8/POVUTf18/HFdw==", + "dependencies": { + "@chevrotain/cst-dts-gen": "11.0.3", + "@chevrotain/gast": "11.0.3", + "@chevrotain/regexp-to-ast": "11.0.3", + "@chevrotain/types": "11.0.3", + "@chevrotain/utils": "11.0.3", + "lodash-es": "4.17.21" + } + }, + "node_modules/chevrotain-allstar": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/chevrotain-allstar/-/chevrotain-allstar-0.3.1.tgz", + "integrity": "sha512-b7g+y9A0v4mxCW1qUhf3BSVPg+/NvGErk/dOkrDaHA0nQIQGAtrOjlX//9OQtRlSCy+x9rfB5N8yC71lH1nvMw==", + "dependencies": { + "lodash-es": "^4.17.21" + }, + "peerDependencies": { + "chevrotain": "^11.0.0" + } + }, "node_modules/chokidar": { "version": "3.6.0", "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", @@ -4658,6 +4908,15 @@ "node": ">=0.10.0" } }, + "node_modules/collapse-white-space": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/collapse-white-space/-/collapse-white-space-2.1.0.tgz", + "integrity": "sha512-loKTxY1zCOuG4j9f6EPnuyyYkf58RnhhWTvRoZEokgB+WbdXehfjFviyOVYkqzEWz1Q5kRiZdBYS5SwxbQYwzw==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, "node_modules/color-convert": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", @@ -4729,6 +4988,11 @@ "dev": true, "license": "MIT" }, + "node_modules/confbox": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/confbox/-/confbox-0.1.8.tgz", + "integrity": "sha512-RMtmw0iFkeR4YV+fUOSucriAQNb9g8zFR52MWCtl+cCZOFRNL6zeB395vPzFhEjjn4fMxXudmELnl/KF/WrK6w==" + }, "node_modules/consola": { "version": "3.2.3", "resolved": "https://registry.npmjs.org/consola/-/consola-3.2.3.tgz", @@ -4772,7 +5036,6 @@ "version": "1.0.3", "resolved": "https://registry.npmjs.org/cose-base/-/cose-base-1.0.3.tgz", "integrity": "sha512-s9whTXInMSgAp/NVXVNuVxVKzGH2qck3aQlVHxDCdAEPgtMKwc4Wq6/QKhgdEdgbLSi9rBTAcPoRa6JpiG4ksg==", - "license": "MIT", "dependencies": { "layout-base": "^1.0.0" } @@ -4816,7 +5079,6 @@ "version": "3.30.2", "resolved": "https://registry.npmjs.org/cytoscape/-/cytoscape-3.30.2.tgz", "integrity": "sha512-oICxQsjW8uSaRmn4UK/jkczKOqTrVqt5/1WL0POiJUT2EKNc9STM4hYFHv917yu55aTBMFNRzymlJhVAiWPCxw==", - "license": "MIT", "engines": { "node": ">=0.10" } @@ -4825,7 +5087,6 @@ "version": "4.1.0", "resolved": "https://registry.npmjs.org/cytoscape-cose-bilkent/-/cytoscape-cose-bilkent-4.1.0.tgz", "integrity": "sha512-wgQlVIUJF13Quxiv5e1gstZ08rnZj2XaLHGoFMYXz7SkNfCDOOteKBE6SYRfA9WxxI/iBc3ajfDoc6hb/MRAHQ==", - "license": "MIT", "dependencies": { "cose-base": "^1.0.0" }, @@ -4833,11 +5094,34 @@ "cytoscape": "^3.2.0" } }, + "node_modules/cytoscape-fcose": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/cytoscape-fcose/-/cytoscape-fcose-2.2.0.tgz", + "integrity": "sha512-ki1/VuRIHFCzxWNrsshHYPs6L7TvLu3DL+TyIGEsRcvVERmxokbf5Gdk7mFxZnTdiGtnA4cfSmjZJMviqSuZrQ==", + "dependencies": { + "cose-base": "^2.2.0" + }, + "peerDependencies": { + "cytoscape": "^3.2.0" + } + }, + "node_modules/cytoscape-fcose/node_modules/cose-base": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/cose-base/-/cose-base-2.2.0.tgz", + "integrity": "sha512-AzlgcsCbUMymkADOJtQm3wO9S3ltPfYOFD5033keQn9NJzIbtnZj+UdBJe7DYml/8TdbtHJW3j58SOnKhWY/5g==", + "dependencies": { + "layout-base": "^2.0.0" + } + }, + "node_modules/cytoscape-fcose/node_modules/layout-base": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/layout-base/-/layout-base-2.0.1.tgz", + "integrity": "sha512-dp3s92+uNI1hWIpPGH3jK2kxE2lMjdXdr+DH8ynZHpd6PUlH6x6cbuXnoMmiNumznqaNO31xu9e79F0uuZ0JFg==" + }, "node_modules/d3": { "version": "7.9.0", "resolved": "https://registry.npmjs.org/d3/-/d3-7.9.0.tgz", "integrity": "sha512-e1U46jVP+w7Iut8Jt8ri1YsPOvFpg46k+K8TpCb0P+zjCkjkPnV7WzfDJzMHy1LnA+wj5pLT1wjO901gLXeEhA==", - "license": "ISC", "dependencies": { "d3-array": "3", "d3-axis": "3", @@ -4878,7 +5162,6 @@ "version": "3.2.4", "resolved": "https://registry.npmjs.org/d3-array/-/d3-array-3.2.4.tgz", "integrity": "sha512-tdQAmyA18i4J7wprpYq8ClcxZy3SC31QMeByyCFyRt7BVHdREQZ5lpzoe5mFEYZUWe+oq8HBvk9JjpibyEV4Jg==", - "license": "ISC", "dependencies": { "internmap": "1 - 2" }, @@ -4890,7 +5173,6 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/d3-axis/-/d3-axis-3.0.0.tgz", "integrity": "sha512-IH5tgjV4jE/GhHkRV0HiVYPDtvfjHQlQfJHs0usq7M30XcSBvOotpmH1IgkcXsO/5gEQZD43B//fc7SRT5S+xw==", - "license": "ISC", "engines": { "node": ">=12" } @@ -4899,7 +5181,6 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/d3-brush/-/d3-brush-3.0.0.tgz", "integrity": "sha512-ALnjWlVYkXsVIGlOsuWH1+3udkYFI48Ljihfnh8FZPF2QS9o+PzGLBslO0PjzVoHLZ2KCVgAM8NVkXPJB2aNnQ==", - "license": "ISC", "dependencies": { "d3-dispatch": "1 - 3", "d3-drag": "2 - 3", @@ -4915,7 +5196,6 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/d3-chord/-/d3-chord-3.0.1.tgz", "integrity": "sha512-VE5S6TNa+j8msksl7HwjxMHDM2yNK3XCkusIlpX5kwauBfXuyLAtNg9jCp/iHH61tgI4sb6R/EIMWCqEIdjT/g==", - "license": "ISC", "dependencies": { "d3-path": "1 - 3" }, @@ -4927,7 +5207,6 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/d3-color/-/d3-color-3.1.0.tgz", "integrity": "sha512-zg/chbXyeBtMQ1LbD/WSoW2DpC3I0mpmPdW+ynRTj/x2DAWYrIY7qeZIHidozwV24m4iavr15lNwIwLxRmOxhA==", - "license": "ISC", "engines": { "node": ">=12" } @@ -4936,7 +5215,6 @@ "version": "4.0.2", "resolved": "https://registry.npmjs.org/d3-contour/-/d3-contour-4.0.2.tgz", "integrity": "sha512-4EzFTRIikzs47RGmdxbeUvLWtGedDUNkTcmzoeyg4sP/dvCexO47AaQL7VKy/gul85TOxw+IBgA8US2xwbToNA==", - "license": "ISC", "dependencies": { "d3-array": "^3.2.0" }, @@ -4948,7 +5226,6 @@ "version": "6.0.4", "resolved": "https://registry.npmjs.org/d3-delaunay/-/d3-delaunay-6.0.4.tgz", "integrity": "sha512-mdjtIZ1XLAM8bm/hx3WwjfHt6Sggek7qH043O8KEjDXN40xi3vx/6pYSVTwLjEgiXQTbvaouWKynLBiUZ6SK6A==", - "license": "ISC", "dependencies": { "delaunator": "5" }, @@ -4960,7 +5237,6 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/d3-dispatch/-/d3-dispatch-3.0.1.tgz", "integrity": "sha512-rzUyPU/S7rwUflMyLc1ETDeBj0NRuHKKAcvukozwhshr6g6c5d8zh4c2gQjY2bZ0dXeGLWc1PF174P2tVvKhfg==", - "license": "ISC", "engines": { "node": ">=12" } @@ -4969,7 +5245,6 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/d3-drag/-/d3-drag-3.0.0.tgz", "integrity": "sha512-pWbUJLdETVA8lQNJecMxoXfH6x+mO2UQo8rSmZ+QqxcbyA3hfeprFgIT//HW2nlHChWeIIMwS2Fq+gEARkhTkg==", - "license": "ISC", "dependencies": { "d3-dispatch": "1 - 3", "d3-selection": "3" @@ -4982,7 +5257,6 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/d3-dsv/-/d3-dsv-3.0.1.tgz", "integrity": "sha512-UG6OvdI5afDIFP9w4G0mNq50dSOsXHJaRE8arAS5o9ApWnIElp8GZw1Dun8vP8OyHOZ/QJUKUJwxiiCCnUwm+Q==", - "license": "ISC", "dependencies": { "commander": "7", "iconv-lite": "0.6", @@ -5007,7 +5281,6 @@ "version": "7.2.0", "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz", "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==", - "license": "MIT", "engines": { "node": ">= 10" } @@ -5016,7 +5289,6 @@ "version": "0.6.3", "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", - "license": "MIT", "dependencies": { "safer-buffer": ">= 2.1.2 < 3.0.0" }, @@ -5028,7 +5300,6 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/d3-ease/-/d3-ease-3.0.1.tgz", "integrity": "sha512-wR/XK3D3XcLIZwpbvQwQ5fK+8Ykds1ip7A2Txe0yxncXSdq1L9skcG7blcedkOX+ZcgxGAmLX1FrRGbADwzi0w==", - "license": "BSD-3-Clause", "engines": { "node": ">=12" } @@ -5037,7 +5308,6 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/d3-fetch/-/d3-fetch-3.0.1.tgz", "integrity": "sha512-kpkQIM20n3oLVBKGg6oHrUchHM3xODkTzjMoj7aWQFq5QEM+R6E4WkzT5+tojDY7yjez8KgCBRoj4aEr99Fdqw==", - "license": "ISC", "dependencies": { "d3-dsv": "1 - 3" }, @@ -5049,7 +5319,6 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/d3-force/-/d3-force-3.0.0.tgz", "integrity": "sha512-zxV/SsA+U4yte8051P4ECydjD/S+qeYtnaIyAs9tgHCqfguma/aAQDjo85A9Z6EKhBirHRJHXIgJUlffT4wdLg==", - "license": "ISC", "dependencies": { "d3-dispatch": "1 - 3", "d3-quadtree": "1 - 3", @@ -5063,7 +5332,6 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/d3-format/-/d3-format-3.1.0.tgz", "integrity": "sha512-YyUI6AEuY/Wpt8KWLgZHsIU86atmikuoOmCfommt0LYHiQSPjvX2AcFc38PX0CBpr2RCyZhjex+NS/LPOv6YqA==", - "license": "ISC", "engines": { "node": ">=12" } @@ -5072,7 +5340,6 @@ "version": "3.1.1", "resolved": "https://registry.npmjs.org/d3-geo/-/d3-geo-3.1.1.tgz", "integrity": "sha512-637ln3gXKXOwhalDzinUgY83KzNWZRKbYubaG+fGVuc/dxO64RRljtCTnf5ecMyE1RIdtqpkVcq0IbtU2S8j2Q==", - "license": "ISC", "dependencies": { "d3-array": "2.5.0 - 3" }, @@ -5084,7 +5351,6 @@ "version": "3.1.2", "resolved": "https://registry.npmjs.org/d3-hierarchy/-/d3-hierarchy-3.1.2.tgz", "integrity": "sha512-FX/9frcub54beBdugHjDCdikxThEqjnR93Qt7PvQTOHxyiNCAlvMrHhclk3cD5VeAaq9fxmfRp+CnWw9rEMBuA==", - "license": "ISC", "engines": { "node": ">=12" } @@ -5093,7 +5359,6 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/d3-interpolate/-/d3-interpolate-3.0.1.tgz", "integrity": "sha512-3bYs1rOD33uo8aqJfKP3JWPAibgw8Zm2+L9vBKEHJ2Rg+viTR7o5Mmv5mZcieN+FRYaAOWX5SJATX6k1PWz72g==", - "license": "ISC", "dependencies": { "d3-color": "1 - 3" }, @@ -5105,7 +5370,6 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/d3-path/-/d3-path-3.1.0.tgz", "integrity": "sha512-p3KP5HCf/bvjBSSKuXid6Zqijx7wIfNW+J/maPs+iwR35at5JCbLUT0LzF1cnjbCHWhqzQTIN2Jpe8pRebIEFQ==", - "license": "ISC", "engines": { "node": ">=12" } @@ -5114,7 +5378,6 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/d3-polygon/-/d3-polygon-3.0.1.tgz", "integrity": "sha512-3vbA7vXYwfe1SYhED++fPUQlWSYTTGmFmQiany/gdbiWgU/iEyQzyymwL9SkJjFFuCS4902BSzewVGsHHmHtXg==", - "license": "ISC", "engines": { "node": ">=12" } @@ -5123,7 +5386,6 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/d3-quadtree/-/d3-quadtree-3.0.1.tgz", "integrity": "sha512-04xDrxQTDTCFwP5H6hRhsRcb9xxv2RzkcsygFzmkSIOJy3PeRJP7sNk3VRIbKXcog561P9oU0/rVH6vDROAgUw==", - "license": "ISC", "engines": { "node": ">=12" } @@ -5132,7 +5394,6 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/d3-random/-/d3-random-3.0.1.tgz", "integrity": "sha512-FXMe9GfxTxqd5D6jFsQ+DJ8BJS4E/fT5mqqdjovykEB2oFbTMDVdg1MGFxfQW+FBOGoB++k8swBrgwSHT1cUXQ==", - "license": "ISC", "engines": { "node": ">=12" } @@ -5141,7 +5402,6 @@ "version": "0.12.3", "resolved": "https://registry.npmjs.org/d3-sankey/-/d3-sankey-0.12.3.tgz", "integrity": "sha512-nQhsBRmM19Ax5xEIPLMY9ZmJ/cDvd1BG3UVvt5h3WRxKg5zGRbvnteTyWAbzeSvlh3tW7ZEmq4VwR5mB3tutmQ==", - "license": "BSD-3-Clause", "dependencies": { "d3-array": "1 - 2", "d3-shape": "^1.2.0" @@ -5151,7 +5411,6 @@ "version": "2.12.1", "resolved": "https://registry.npmjs.org/d3-array/-/d3-array-2.12.1.tgz", "integrity": "sha512-B0ErZK/66mHtEsR1TkPEEkwdy+WDesimkM5gpZr5Dsg54BiTA5RXtYW5qTLIAcekaS9xfZrzBLF/OAkB3Qn1YQ==", - "license": "BSD-3-Clause", "dependencies": { "internmap": "^1.0.0" } @@ -5159,14 +5418,12 @@ "node_modules/d3-sankey/node_modules/d3-path": { "version": "1.0.9", "resolved": "https://registry.npmjs.org/d3-path/-/d3-path-1.0.9.tgz", - "integrity": "sha512-VLaYcn81dtHVTjEHd8B+pbe9yHWpXKZUC87PzoFmsFrJqgFwDe/qxfp5MlfsfM1V5E/iVt0MmEbWQ7FVIXh/bg==", - "license": "BSD-3-Clause" + "integrity": "sha512-VLaYcn81dtHVTjEHd8B+pbe9yHWpXKZUC87PzoFmsFrJqgFwDe/qxfp5MlfsfM1V5E/iVt0MmEbWQ7FVIXh/bg==" }, "node_modules/d3-sankey/node_modules/d3-shape": { "version": "1.3.7", "resolved": "https://registry.npmjs.org/d3-shape/-/d3-shape-1.3.7.tgz", "integrity": "sha512-EUkvKjqPFUAZyOlhY5gzCxCeI0Aep04LwIRpsZ/mLFelJiUfnK56jo5JMDSE7yyP2kLSb6LtF+S5chMk7uqPqw==", - "license": "BSD-3-Clause", "dependencies": { "d3-path": "1" } @@ -5174,14 +5431,12 @@ "node_modules/d3-sankey/node_modules/internmap": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/internmap/-/internmap-1.0.1.tgz", - "integrity": "sha512-lDB5YccMydFBtasVtxnZ3MRBHuaoE8GKsppq+EchKL2U4nK/DmEpPHNH8MZe5HkMtpSiTSOZwfN0tzYjO/lJEw==", - "license": "ISC" + "integrity": "sha512-lDB5YccMydFBtasVtxnZ3MRBHuaoE8GKsppq+EchKL2U4nK/DmEpPHNH8MZe5HkMtpSiTSOZwfN0tzYjO/lJEw==" }, "node_modules/d3-scale": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/d3-scale/-/d3-scale-4.0.2.tgz", "integrity": "sha512-GZW464g1SH7ag3Y7hXjf8RoUuAFIqklOAq3MRl4OaWabTFJY9PN/E1YklhXLh+OQ3fM9yS2nOkCoS+WLZ6kvxQ==", - "license": "ISC", "dependencies": { "d3-array": "2.10.0 - 3", "d3-format": "1 - 3", @@ -5197,7 +5452,6 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/d3-scale-chromatic/-/d3-scale-chromatic-3.1.0.tgz", "integrity": "sha512-A3s5PWiZ9YCXFye1o246KoscMWqf8BsD9eRiJ3He7C9OBaxKhAd5TFCdEx/7VbKtxxTsu//1mMJFrEt572cEyQ==", - "license": "ISC", "dependencies": { "d3-color": "1 - 3", "d3-interpolate": "1 - 3" @@ -5210,7 +5464,6 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/d3-selection/-/d3-selection-3.0.0.tgz", "integrity": "sha512-fmTRWbNMmsmWq6xJV8D19U/gw/bwrHfNXxrIN+HfZgnzqTHp9jOmKMhsTUjXOJnZOdZY9Q28y4yebKzqDKlxlQ==", - "license": "ISC", "engines": { "node": ">=12" } @@ -5219,7 +5472,6 @@ "version": "3.2.0", "resolved": "https://registry.npmjs.org/d3-shape/-/d3-shape-3.2.0.tgz", "integrity": "sha512-SaLBuwGm3MOViRq2ABk3eLoxwZELpH6zhl3FbAoJ7Vm1gofKx6El1Ib5z23NUEhF9AsGl7y+dzLe5Cw2AArGTA==", - "license": "ISC", "dependencies": { "d3-path": "^3.1.0" }, @@ -5231,7 +5483,6 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/d3-time/-/d3-time-3.1.0.tgz", "integrity": "sha512-VqKjzBLejbSMT4IgbmVgDjpkYrNWUYJnbCGo874u7MMKIWsILRX+OpX/gTk8MqjpT1A/c6HY2dCA77ZN0lkQ2Q==", - "license": "ISC", "dependencies": { "d3-array": "2 - 3" }, @@ -5243,7 +5494,6 @@ "version": "4.1.0", "resolved": "https://registry.npmjs.org/d3-time-format/-/d3-time-format-4.1.0.tgz", "integrity": "sha512-dJxPBlzC7NugB2PDLwo9Q8JiTR3M3e4/XANkreKSUxF8vvXKqm1Yfq4Q5dl8budlunRVlUUaDUgFt7eA8D6NLg==", - "license": "ISC", "dependencies": { "d3-time": "1 - 3" }, @@ -5255,7 +5505,6 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/d3-timer/-/d3-timer-3.0.1.tgz", "integrity": "sha512-ndfJ/JxxMd3nw31uyKoY2naivF+r29V+Lc0svZxe1JvvIRmi8hUsrMvdOwgS1o6uBHmiz91geQ0ylPP0aj1VUA==", - "license": "ISC", "engines": { "node": ">=12" } @@ -5264,7 +5513,6 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/d3-transition/-/d3-transition-3.0.1.tgz", "integrity": "sha512-ApKvfjsSR6tg06xrL434C0WydLr7JewBB3V+/39RMHsaXTOG0zmt/OAXeng5M5LBm0ojmxJrpomQVZ1aPvBL4w==", - "license": "ISC", "dependencies": { "d3-color": "1 - 3", "d3-dispatch": "1 - 3", @@ -5283,7 +5531,6 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/d3-zoom/-/d3-zoom-3.0.0.tgz", "integrity": "sha512-b8AmV3kfQaqWAuacbPuNbL6vahnOJflOhexLzMMNLga62+/nh0JzvJ0aO/5a5MVgUFGS7Hu1P9P03o3fJkDCyw==", - "license": "ISC", "dependencies": { "d3-dispatch": "1 - 3", "d3-drag": "2 - 3", @@ -5299,7 +5546,6 @@ "version": "7.0.10", "resolved": "https://registry.npmjs.org/dagre-d3-es/-/dagre-d3-es-7.0.10.tgz", "integrity": "sha512-qTCQmEhcynucuaZgY5/+ti3X/rnszKZhEQH/ZdWdtP1tA/y3VoHJzcVrO9pjjJCNpigfscAtoUB5ONcd2wNn0A==", - "license": "MIT", "dependencies": { "d3": "^7.8.2", "lodash-es": "^4.17.21" @@ -5413,7 +5659,6 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/decode-named-character-reference/-/decode-named-character-reference-1.0.2.tgz", "integrity": "sha512-O8x12RzrUF8xyVcY0KJowWsmaJxQbmy0/EtnNtHRpsOcT7dFk5W598coHqBVpmWo1oQQfsCqfCmkZN5DJrZVdg==", - "license": "MIT", "dependencies": { "character-entities": "^2.0.0" }, @@ -5516,7 +5761,6 @@ "version": "5.0.1", "resolved": "https://registry.npmjs.org/delaunator/-/delaunator-5.0.1.tgz", "integrity": "sha512-8nvh+XBe96aCESrGOqMp/84b13H9cdKbG5P2ejQCh4d4sK9RL4371qou9drQjMhvnPmhWl5hnmqbEE0fXr9Xnw==", - "license": "ISC", "dependencies": { "robust-predicates": "^3.0.2" } @@ -5574,15 +5818,6 @@ "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/diff": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-5.2.0.tgz", - "integrity": "sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==", - "license": "BSD-3-Clause", - "engines": { - "node": ">=0.3.1" - } - }, "node_modules/diffscribe": { "resolved": "packages/diffscribe", "link": true @@ -5615,8 +5850,7 @@ "node_modules/dompurify": { "version": "3.1.6", "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-3.1.6.tgz", - "integrity": "sha512-cTOAhc36AalkjtBpfG6O8JimdTMWNXjiePT2xQH/ppBGi/4uIpmj8eKyIkMJErXWARyINV/sB38yf8JCLF5pbQ==", - "license": "(MPL-2.0 OR Apache-2.0)" + "integrity": "sha512-cTOAhc36AalkjtBpfG6O8JimdTMWNXjiePT2xQH/ppBGi/4uIpmj8eKyIkMJErXWARyINV/sB38yf8JCLF5pbQ==" }, "node_modules/dotenv": { "version": "16.4.5", @@ -5670,12 +5904,6 @@ "dev": true, "license": "ISC" }, - "node_modules/elkjs": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/elkjs/-/elkjs-0.9.3.tgz", - "integrity": "sha512-f/ZeWvW/BCXbhGEf1Ujp29EASo/lk1FDnETgNKwJrsVvGZhUWCZyg3xLJjAsxfOmt8KjswHmI5EwCQcPMpOYhQ==", - "license": "EPL-2.0" - }, "node_modules/emoji-regex": { "version": "9.2.2", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", @@ -6962,6 +7190,14 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/esm": { + "version": "3.2.25", + "resolved": "https://registry.npmjs.org/esm/-/esm-3.2.25.tgz", + "integrity": "sha512-U1suiZ2oDVWv4zPO56S0NcR5QriEahGtdN2OR6FiOG4WJvcjBVFB0qI4+eKoWFH483PKGuLuu6V8Z4T5g63UVA==", + "engines": { + "node": ">=6" + } + }, "node_modules/espree": { "version": "9.6.1", "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", @@ -7030,10 +7266,9 @@ } }, "node_modules/estree-util-attach-comments": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/estree-util-attach-comments/-/estree-util-attach-comments-2.1.1.tgz", - "integrity": "sha512-+5Ba/xGGS6mnwFbXIuQiDPTbuTxuMCooq3arVv7gPZtYpjp+VXH/NkHAP35OOefPhNG/UGqU3vt/LTABwcHX0w==", - "license": "MIT", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/estree-util-attach-comments/-/estree-util-attach-comments-3.0.0.tgz", + "integrity": "sha512-cKUwm/HUcTDsYh/9FgnuFqpfquUbwIqwKM26BVCGDPVgvaCl/nDCCjUfiLlx6lsEZ3Z4RFxNbOQ60pkaEwFxGw==", "dependencies": { "@types/estree": "^1.0.0" }, @@ -7043,13 +7278,13 @@ } }, "node_modules/estree-util-build-jsx": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/estree-util-build-jsx/-/estree-util-build-jsx-2.2.2.tgz", - "integrity": "sha512-m56vOXcOBuaF+Igpb9OPAy7f9w9OIkb5yhjsZuaPm7HoGi4oTOQi0h2+yZ+AtKklYFZ+rPC4n0wYCJCEU1ONqg==", - "license": "MIT", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/estree-util-build-jsx/-/estree-util-build-jsx-3.0.1.tgz", + "integrity": "sha512-8U5eiL6BTrPxp/CHbs2yMgP8ftMhR5ww1eIKoWRMlqvltHF8fZn5LRDvTKuxD3DUn+shRbLGqXemcP51oFCsGQ==", "dependencies": { "@types/estree-jsx": "^1.0.0", - "estree-util-is-identifier-name": "^2.0.0", + "devlop": "^1.0.0", + "estree-util-is-identifier-name": "^3.0.0", "estree-walker": "^3.0.0" }, "funding": { @@ -7057,6 +7292,15 @@ "url": "https://opencollective.com/unified" } }, + "node_modules/estree-util-build-jsx/node_modules/estree-util-is-identifier-name": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/estree-util-is-identifier-name/-/estree-util-is-identifier-name-3.0.0.tgz", + "integrity": "sha512-hFtqIDZTIUZ9BXLb8y4pYGyk6+wekIivNVTcmvk8NoOh+VeRn5y6cEHzbURrWbfp1fIqdVipilzj+lfaadNZmg==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, "node_modules/estree-util-is-identifier-name": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/estree-util-is-identifier-name/-/estree-util-is-identifier-name-2.1.0.tgz", @@ -7068,10 +7312,9 @@ } }, "node_modules/estree-util-to-js": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/estree-util-to-js/-/estree-util-to-js-1.2.0.tgz", - "integrity": "sha512-IzU74r1PK5IMMGZXUVZbmiu4A1uhiPgW5hm1GjcOfr4ZzHaMPpLNJjR7HjXiIOzi25nZDrgFTobHTkV5Q6ITjA==", - "license": "MIT", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/estree-util-to-js/-/estree-util-to-js-2.0.0.tgz", + "integrity": "sha512-WDF+xj5rRWmD5tj6bIqRi6CkLIXbbNQUcxQHzGysQzvHmdYG2G7p/Tf0J0gpxGgkeMZNTIjT/AoSvC9Xehcgdg==", "dependencies": { "@types/estree-jsx": "^1.0.0", "astring": "^1.8.0", @@ -7095,24 +7338,27 @@ } }, "node_modules/estree-util-visit": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/estree-util-visit/-/estree-util-visit-1.2.1.tgz", - "integrity": "sha512-xbgqcrkIVbIG+lI/gzbvd9SGTJL4zqJKBFttUl5pP27KhAjtMKbX/mQXJ7qgyXpMgVy/zvpm0xoQQaGL8OloOw==", - "license": "MIT", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/estree-util-visit/-/estree-util-visit-2.0.0.tgz", + "integrity": "sha512-m5KgiH85xAhhW8Wta0vShLcUvOsh3LLPI2YVwcbio1l7E09NTLL1EyMZFM1OyWowoH0skScNbhOPl4kcBgzTww==", "dependencies": { "@types/estree-jsx": "^1.0.0", - "@types/unist": "^2.0.0" + "@types/unist": "^3.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, + "node_modules/estree-util-visit/node_modules/@types/unist": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", + "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==" + }, "node_modules/estree-walker": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-3.0.3.tgz", "integrity": "sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==", - "license": "MIT", "dependencies": { "@types/estree": "^1.0.0" } @@ -7239,8 +7485,7 @@ "node_modules/extend": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", - "license": "MIT" + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" }, "node_modules/extend-shallow": { "version": "2.0.1", @@ -7465,6 +7710,18 @@ "reusify": "^1.0.4" } }, + "node_modules/fault": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fault/-/fault-2.0.1.tgz", + "integrity": "sha512-WtySTkS4OKev5JtpHXnib4Gxiurzh5NCGvWrFaZ34m6JehfTUhKZvn9njTfw48t6JumVQOmrKqpmGcdwxnhqBQ==", + "dependencies": { + "format": "^0.2.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, "node_modules/fclone": { "version": "1.0.11", "resolved": "https://registry.npmjs.org/fclone/-/fclone-1.0.11.tgz", @@ -7590,12 +7847,6 @@ "integrity": "sha512-c5o/+Um8aqCSOXGcZoqZOm+NqtVwNsvVpWv6lfmSclU954O3wvQKxxK8zj74fPaSJbXpSLTs4PRhh+wnoCXnKg==", "license": "Apache-2.0" }, - "node_modules/focus-visible": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/focus-visible/-/focus-visible-5.2.1.tgz", - "integrity": "sha512-8Bx950VD1bWTQJEH/AM6SpEk+SU55aVnp4Ujhuuxy3eMEBCRwBnTBnVXr9YAPvZL3/CNjCa8u4IWfNmEO53whA==", - "license": "W3C" - }, "node_modules/follow-redirects": { "version": "1.15.9", "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.9.tgz", @@ -7664,6 +7915,14 @@ "license": "MIT", "peer": true }, + "node_modules/format": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/format/-/format-0.2.2.tgz", + "integrity": "sha512-wzsgA6WOq+09wrU1tsJ09udeR/YZRaeArL9e1wPbFg3GG2yDnC2ldKpxs4xunpFF9DgqCqOIra3bc1HWrJ37Ww==", + "engines": { + "node": ">=0.4.x" + } + }, "node_modules/formdata-node": { "version": "4.4.1", "resolved": "https://registry.npmjs.org/formdata-node/-/formdata-node-4.4.1.tgz", @@ -7929,25 +8188,6 @@ "dev": true, "license": "MIT" }, - "node_modules/git-up": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/git-up/-/git-up-7.0.0.tgz", - "integrity": "sha512-ONdIrbBCFusq1Oy0sC71F5azx8bVkvtZtMJAsv+a6lz5YAmbNnLD6HAB4gptHZVLPR8S2/kVN6Gab7lryq5+lQ==", - "license": "MIT", - "dependencies": { - "is-ssh": "^1.4.0", - "parse-url": "^8.1.0" - } - }, - "node_modules/git-url-parse": { - "version": "13.1.1", - "resolved": "https://registry.npmjs.org/git-url-parse/-/git-url-parse-13.1.1.tgz", - "integrity": "sha512-PCFJyeSSdtnbfhSNRw9Wk96dDCNx+sogTe4YNXeXSJxt7xz5hvXekuRn9JX7m+Mf4OscCu8h+mtAl3+h5Fo8lQ==", - "license": "MIT", - "dependencies": { - "git-up": "^7.0.0" - } - }, "node_modules/github-slugger": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/github-slugger/-/github-slugger-2.0.0.tgz", @@ -8110,6 +8350,11 @@ "node": ">=6.0" } }, + "node_modules/hachure-fill": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/hachure-fill/-/hachure-fill-0.5.2.tgz", + "integrity": "sha512-3GKBOn+m2LX9iq+JC1064cSFprJY4jL1jCXTcpnfER5HYE2l/4EfWSGzkPa/ZDBmYI0ZOEj5VHV/eKnPGkHuOg==" + }, "node_modules/has-bigints": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", @@ -8182,35 +8427,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/hash-obj": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/hash-obj/-/hash-obj-4.0.0.tgz", - "integrity": "sha512-FwO1BUVWkyHasWDW4S8o0ssQXjvyghLV2rfVhnN36b2bbcj45eGiuzdn9XOvOpjV3TKQD7Gm2BWNXdE9V4KKYg==", - "license": "MIT", - "dependencies": { - "is-obj": "^3.0.0", - "sort-keys": "^5.0.0", - "type-fest": "^1.0.2" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/hash-obj/node_modules/type-fest": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz", - "integrity": "sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==", - "license": "(MIT OR CC0-1.0)", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/hasown": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", @@ -8238,15 +8454,6 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/hast-util-from-dom/node_modules/@types/hast": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", - "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==", - "license": "MIT", - "dependencies": { - "@types/unist": "*" - } - }, "node_modules/hast-util-from-html": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/hast-util-from-html/-/hast-util-from-html-2.0.2.tgz", @@ -8281,44 +8488,6 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/hast-util-from-html-isomorphic/node_modules/@types/hast": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", - "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==", - "license": "MIT", - "dependencies": { - "@types/unist": "*" - } - }, - "node_modules/hast-util-from-html/node_modules/@types/hast": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", - "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==", - "license": "MIT", - "dependencies": { - "@types/unist": "*" - } - }, - "node_modules/hast-util-from-html/node_modules/@types/unist": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", - "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==", - "license": "MIT" - }, - "node_modules/hast-util-from-html/node_modules/vfile": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.3.tgz", - "integrity": "sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==", - "license": "MIT", - "dependencies": { - "@types/unist": "^3.0.0", - "vfile-message": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, "node_modules/hast-util-from-parse5": { "version": "8.0.1", "resolved": "https://registry.npmjs.org/hast-util-from-parse5/-/hast-util-from-parse5-8.0.1.tgz", @@ -8339,35 +8508,12 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/hast-util-from-parse5/node_modules/@types/hast": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", - "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==", - "license": "MIT", - "dependencies": { - "@types/unist": "*" - } - }, "node_modules/hast-util-from-parse5/node_modules/@types/unist": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==", "license": "MIT" }, - "node_modules/hast-util-from-parse5/node_modules/vfile": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.3.tgz", - "integrity": "sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==", - "license": "MIT", - "dependencies": { - "@types/unist": "^3.0.0", - "vfile-message": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, "node_modules/hast-util-is-element": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/hast-util-is-element/-/hast-util-is-element-3.0.0.tgz", @@ -8381,15 +8527,6 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/hast-util-is-element/node_modules/@types/hast": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", - "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==", - "license": "MIT", - "dependencies": { - "@types/unist": "*" - } - }, "node_modules/hast-util-parse-selector": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/hast-util-parse-selector/-/hast-util-parse-selector-4.0.0.tgz", @@ -8403,15 +8540,6 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/hast-util-parse-selector/node_modules/@types/hast": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", - "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==", - "license": "MIT", - "dependencies": { - "@types/unist": "*" - } - }, "node_modules/hast-util-raw": { "version": "9.0.4", "resolved": "https://registry.npmjs.org/hast-util-raw/-/hast-util-raw-9.0.4.tgz", @@ -8437,75 +8565,128 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/hast-util-raw/node_modules/@types/hast": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", - "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==", - "license": "MIT", - "dependencies": { - "@types/unist": "*" - } - }, "node_modules/hast-util-raw/node_modules/@types/unist": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==", "license": "MIT" }, - "node_modules/hast-util-raw/node_modules/unist-util-position": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/unist-util-position/-/unist-util-position-5.0.0.tgz", - "integrity": "sha512-fucsC7HjXvkB5R3kTCO7kUjRdrS0BJt3M/FPxmHMBOm8JQi2BsHAHFsy27E0EolP8rp0NzXsJ+jNPyDWvOJZPA==", - "license": "MIT", + "node_modules/hast-util-to-estree": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/hast-util-to-estree/-/hast-util-to-estree-3.1.0.tgz", + "integrity": "sha512-lfX5g6hqVh9kjS/B9E2gSkvHH4SZNiQFiqWS0x9fENzEl+8W12RqdRxX6d/Cwxi30tPQs3bIO+aolQJNp1bIyw==", "dependencies": { - "@types/unist": "^3.0.0" + "@types/estree": "^1.0.0", + "@types/estree-jsx": "^1.0.0", + "@types/hast": "^3.0.0", + "comma-separated-tokens": "^2.0.0", + "devlop": "^1.0.0", + "estree-util-attach-comments": "^3.0.0", + "estree-util-is-identifier-name": "^3.0.0", + "hast-util-whitespace": "^3.0.0", + "mdast-util-mdx-expression": "^2.0.0", + "mdast-util-mdx-jsx": "^3.0.0", + "mdast-util-mdxjs-esm": "^2.0.0", + "property-information": "^6.0.0", + "space-separated-tokens": "^2.0.0", + "style-to-object": "^0.4.0", + "unist-util-position": "^5.0.0", + "zwitch": "^2.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, - "node_modules/hast-util-raw/node_modules/vfile": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.3.tgz", - "integrity": "sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==", - "license": "MIT", + "node_modules/hast-util-to-estree/node_modules/estree-util-is-identifier-name": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/estree-util-is-identifier-name/-/estree-util-is-identifier-name-3.0.0.tgz", + "integrity": "sha512-hFtqIDZTIUZ9BXLb8y4pYGyk6+wekIivNVTcmvk8NoOh+VeRn5y6cEHzbURrWbfp1fIqdVipilzj+lfaadNZmg==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-to-html": { + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/hast-util-to-html/-/hast-util-to-html-9.0.3.tgz", + "integrity": "sha512-M17uBDzMJ9RPCqLMO92gNNUDuBSq10a25SDBI08iCCxmorf4Yy6sYHK57n9WAbRAAaU+DuR4W6GN9K4DFZesYg==", "dependencies": { + "@types/hast": "^3.0.0", "@types/unist": "^3.0.0", - "vfile-message": "^4.0.0" + "ccount": "^2.0.0", + "comma-separated-tokens": "^2.0.0", + "hast-util-whitespace": "^3.0.0", + "html-void-elements": "^3.0.0", + "mdast-util-to-hast": "^13.0.0", + "property-information": "^6.0.0", + "space-separated-tokens": "^2.0.0", + "stringify-entities": "^4.0.0", + "zwitch": "^2.0.4" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, - "node_modules/hast-util-to-estree": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/hast-util-to-estree/-/hast-util-to-estree-2.3.3.tgz", - "integrity": "sha512-ihhPIUPxN0v0w6M5+IiAZZrn0LH2uZomeWwhn7uP7avZC6TE7lIiEh2yBMPr5+zi1aUCXq6VoYRgs2Bw9xmycQ==", - "license": "MIT", + "node_modules/hast-util-to-html/node_modules/@types/unist": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", + "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==" + }, + "node_modules/hast-util-to-jsx-runtime": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/hast-util-to-jsx-runtime/-/hast-util-to-jsx-runtime-2.3.0.tgz", + "integrity": "sha512-H/y0+IWPdsLLS738P8tDnrQ8Z+dj12zQQ6WC11TIM21C8WFVoIxcqWXf2H3hiTVZjF1AWqoimGwrTWecWrnmRQ==", "dependencies": { "@types/estree": "^1.0.0", - "@types/estree-jsx": "^1.0.0", - "@types/hast": "^2.0.0", - "@types/unist": "^2.0.0", + "@types/hast": "^3.0.0", + "@types/unist": "^3.0.0", "comma-separated-tokens": "^2.0.0", - "estree-util-attach-comments": "^2.0.0", - "estree-util-is-identifier-name": "^2.0.0", - "hast-util-whitespace": "^2.0.0", - "mdast-util-mdx-expression": "^1.0.0", - "mdast-util-mdxjs-esm": "^1.0.0", + "devlop": "^1.0.0", + "estree-util-is-identifier-name": "^3.0.0", + "hast-util-whitespace": "^3.0.0", + "mdast-util-mdx-expression": "^2.0.0", + "mdast-util-mdx-jsx": "^3.0.0", + "mdast-util-mdxjs-esm": "^2.0.0", "property-information": "^6.0.0", "space-separated-tokens": "^2.0.0", - "style-to-object": "^0.4.1", - "unist-util-position": "^4.0.0", - "zwitch": "^2.0.0" + "style-to-object": "^1.0.0", + "unist-util-position": "^5.0.0", + "vfile-message": "^4.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, + "node_modules/hast-util-to-jsx-runtime/node_modules/@types/unist": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", + "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==" + }, + "node_modules/hast-util-to-jsx-runtime/node_modules/estree-util-is-identifier-name": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/estree-util-is-identifier-name/-/estree-util-is-identifier-name-3.0.0.tgz", + "integrity": "sha512-hFtqIDZTIUZ9BXLb8y4pYGyk6+wekIivNVTcmvk8NoOh+VeRn5y6cEHzbURrWbfp1fIqdVipilzj+lfaadNZmg==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-to-jsx-runtime/node_modules/inline-style-parser": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/inline-style-parser/-/inline-style-parser-0.2.4.tgz", + "integrity": "sha512-0aO8FkhNZlj/ZIbNi7Lxxr12obT7cL1moPfE4tg1LkX7LlLfC6DeX4l2ZEud1ukP9jNQyNnfzQVqwbwmAATY4Q==" + }, + "node_modules/hast-util-to-jsx-runtime/node_modules/style-to-object": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/style-to-object/-/style-to-object-1.0.8.tgz", + "integrity": "sha512-xT47I/Eo0rwJmaXC4oilDGDWLohVhR6o/xAQcPQN8q6QBuZVL8qMYL85kLmST5cPjAorwvqIA4qXTRQoYHaL6g==", + "dependencies": { + "inline-style-parser": "0.2.4" + } + }, "node_modules/hast-util-to-parse5": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/hast-util-to-parse5/-/hast-util-to-parse5-8.0.0.tgz", @@ -8525,13 +8706,16 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/hast-util-to-parse5/node_modules/@types/hast": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", - "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==", - "license": "MIT", + "node_modules/hast-util-to-string": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/hast-util-to-string/-/hast-util-to-string-3.0.1.tgz", + "integrity": "sha512-XelQVTDWvqcl3axRfI0xSeoVKzyIFPwsAGSLIsKdJKQMXDYJS4WYrBNF/8J7RdhIcFI2BOHgAifggsvsxp/3+A==", "dependencies": { - "@types/unist": "*" + "@types/hast": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, "node_modules/hast-util-to-text": { @@ -8550,15 +8734,6 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/hast-util-to-text/node_modules/@types/hast": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", - "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==", - "license": "MIT", - "dependencies": { - "@types/unist": "*" - } - }, "node_modules/hast-util-to-text/node_modules/@types/unist": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", @@ -8566,10 +8741,12 @@ "license": "MIT" }, "node_modules/hast-util-whitespace": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/hast-util-whitespace/-/hast-util-whitespace-2.0.1.tgz", - "integrity": "sha512-nAxA0v8+vXSBDt3AnRUNjyRIQ0rD+ntpbAp4LnPkumc5M9yUbSMa4XDU9Q6etY4f1Wp4bNgvc1yjiZtsTTrSng==", - "license": "MIT", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/hast-util-whitespace/-/hast-util-whitespace-3.0.0.tgz", + "integrity": "sha512-88JUN06ipLwsnv+dVn+OIYOvAuvBMy/Qoi6O7mQHxdPXpjy+Cd6xRkWwux7DKO+4sYILtLBRIKgsdpS2gQc7qw==", + "dependencies": { + "@types/hast": "^3.0.0" + }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" @@ -8592,15 +8769,6 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/hastscript/node_modules/@types/hast": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", - "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==", - "license": "MIT", - "dependencies": { - "@types/unist": "*" - } - }, "node_modules/help-me": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/help-me/-/help-me-5.0.0.tgz", @@ -8796,8 +8964,7 @@ "node_modules/inline-style-parser": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/inline-style-parser/-/inline-style-parser-0.1.1.tgz", - "integrity": "sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q==", - "license": "MIT" + "integrity": "sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q==" }, "node_modules/internal-slot": { "version": "1.0.7", @@ -8818,17 +8985,10 @@ "version": "2.0.3", "resolved": "https://registry.npmjs.org/internmap/-/internmap-2.0.3.tgz", "integrity": "sha512-5Hh7Y1wQbvY5ooGgPbDaL5iYLAPzMTUrjMulskHLH6wnv/A+1q5rgEaiuqEjB+oxGXIVZs1FF+R/KPN3ZSQYYg==", - "license": "ISC", "engines": { "node": ">=12" } }, - "node_modules/intersection-observer": { - "version": "0.12.2", - "resolved": "https://registry.npmjs.org/intersection-observer/-/intersection-observer-0.12.2.tgz", - "integrity": "sha512-7m1vEcPCxXYI8HqnL8CKI6siDyD+eIWSwgB3DZA+ZTogxk9I4CDnj4wilt9x/+/QbHI4YG5YZNmC6458/e9Ktg==", - "license": "Apache-2.0" - }, "node_modules/ip-address": { "version": "9.0.5", "resolved": "https://registry.npmjs.org/ip-address/-/ip-address-9.0.5.tgz", @@ -8863,7 +9023,6 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/is-alphabetical/-/is-alphabetical-2.0.1.tgz", "integrity": "sha512-FWyyY60MeTNyeSRpkM2Iry0G9hpr7/9kD40mD/cGQEuilcZYS4okz8SN2Q6rLCJ8gbCt6fN+rC+6tMGS99LaxQ==", - "license": "MIT", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" @@ -8873,7 +9032,6 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/is-alphanumerical/-/is-alphanumerical-2.0.1.tgz", "integrity": "sha512-hmbYhX/9MUMF5uh7tOXyK/n0ZvWpad5caBA17GsC6vyuCqaWliRG5K1qS9inmUhEMaOBIW7/whAnSwveW/LtZw==", - "license": "MIT", "dependencies": { "is-alphabetical": "^2.0.0", "is-decimal": "^2.0.0" @@ -8983,29 +9141,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-buffer": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz", - "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT", - "engines": { - "node": ">=4" - } - }, "node_modules/is-builtin-module": { "version": "3.2.1", "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-3.2.1.tgz", @@ -9097,7 +9232,6 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/is-decimal/-/is-decimal-2.0.1.tgz", "integrity": "sha512-AAB9hiomQs5DXWcRB1rqsxGUstbRroFOPPVAomNk/3XHR5JyEZChOyTWe2oayKnsSsr/kcGqF+z6yuH6HHpN0A==", - "license": "MIT", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" @@ -9176,7 +9310,6 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/is-hexadecimal/-/is-hexadecimal-2.0.1.tgz", "integrity": "sha512-DgZQp241c8oO6cA1SbTEWiXeoxV42vlcJxgH+B3hi1AiqqKruZR3ZGF8In3fj4+/y/7rHvlOZLZtgJ/4ttYGZg==", - "license": "MIT", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" @@ -9233,18 +9366,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-obj": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-3.0.0.tgz", - "integrity": "sha512-IlsXEHOjtKhpN8r/tRFj2nDyTmHvcfNeu/nrRIcXE17ROeatXchkojffa1SpdqW4cr/Fj6QkEf/Gn4zf6KKvEQ==", - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/is-path-inside": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", @@ -9271,7 +9392,6 @@ "version": "3.0.2", "resolved": "https://registry.npmjs.org/is-reference/-/is-reference-3.0.2.tgz", "integrity": "sha512-v3rht/LgVcsdZa3O2Nqs+NMowLOxeOm7Ay9+/ARQ2F+qEoANRcqrjAZKGN0v8ymUetZGgkp26LTnGT7H0Qo9Pg==", - "license": "MIT", "dependencies": { "@types/estree": "*" } @@ -9322,15 +9442,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-ssh": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/is-ssh/-/is-ssh-1.4.0.tgz", - "integrity": "sha512-x7+VxdxOdlV3CYpjvRLBv5Lo9OJerlYanjwFrPR9fuGPjCiNiCzFgAWpiLAohSbsnH4ZAys3SBh+hq5rJosxUQ==", - "license": "MIT", - "dependencies": { - "protocols": "^2.0.1" - } - }, "node_modules/is-stream": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", @@ -9624,12 +9735,6 @@ "node": ">=6" } }, - "node_modules/jsonc-parser": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.3.1.tgz", - "integrity": "sha512-HUgH65KyejrUFPvHFPbqOY0rsFip3Bo5wb4ngvdi1EpCYWUQDC5V+Y7mZws+DLkr4M//zQJoanu1SP+87Dv1oQ==", - "license": "MIT" - }, "node_modules/jsonfile": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", @@ -9695,13 +9800,24 @@ "node": ">=0.10.0" } }, - "node_modules/kleur": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/kleur/-/kleur-4.1.5.tgz", - "integrity": "sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==", - "license": "MIT", + "node_modules/kolorist": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/kolorist/-/kolorist-1.8.0.tgz", + "integrity": "sha512-Y+60/zizpJ3HRH8DCss+q95yr6145JXZo46OTpFvDZWLfRCE4qChOyk1b26nMaNpfHHgxagk9dXT5OP0Tfe+dQ==" + }, + "node_modules/langium": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/langium/-/langium-3.0.0.tgz", + "integrity": "sha512-+Ez9EoiByeoTu/2BXmEaZ06iPNXM6thWJp02KfBO/raSMyCJ4jw7AkWWa+zBCTm0+Tw1Fj9FOxdqSskyN5nAwg==", + "dependencies": { + "chevrotain": "~11.0.3", + "chevrotain-allstar": "~0.3.0", + "vscode-languageserver": "~9.0.1", + "vscode-languageserver-textdocument": "~1.0.11", + "vscode-uri": "~3.0.8" + }, "engines": { - "node": ">=6" + "node": ">=16.0.0" } }, "node_modules/language-subtag-registry": { @@ -9727,8 +9843,7 @@ "node_modules/layout-base": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/layout-base/-/layout-base-1.0.2.tgz", - "integrity": "sha512-8h2oVEZNktL4BH2JCOI90iD1yXwL6iNW7KcCKT2QZgQJR2vbqDsldCTPRU9NifTCqHZci57XvQQ15YTu+sTYPg==", - "license": "MIT" + "integrity": "sha512-8h2oVEZNktL4BH2JCOI90iD1yXwL6iNW7KcCKT2QZgQJR2vbqDsldCTPRU9NifTCqHZci57XvQQ15YTu+sTYPg==" }, "node_modules/lazy": { "version": "1.0.11", @@ -9794,6 +9909,21 @@ "node": "^12.20.0 || ^14.13.1 || >=16.0.0" } }, + "node_modules/local-pkg": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/local-pkg/-/local-pkg-0.5.0.tgz", + "integrity": "sha512-ok6z3qlYyCDS4ZEU27HaU6x/xZa9Whf8jD4ptH5UZTQYZVYeb9bnZ3ojVhiJNLiXK1Hfc0GNbLXcmZ5plLDDBg==", + "dependencies": { + "mlly": "^1.4.2", + "pkg-types": "^1.0.3" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, "node_modules/locate-path": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", @@ -9816,14 +9946,7 @@ "node_modules/lodash-es": { "version": "4.17.21", "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.21.tgz", - "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==", - "license": "MIT" - }, - "node_modules/lodash.get": { - "version": "4.4.2", - "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", - "integrity": "sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==", - "license": "MIT" + "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==" }, "node_modules/lodash.merge": { "version": "4.6.2", @@ -9849,7 +9972,6 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/longest-streak/-/longest-streak-3.1.0.tgz", "integrity": "sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g==", - "license": "MIT", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" @@ -9874,99 +9996,71 @@ "license": "ISC" }, "node_modules/markdown-extensions": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/markdown-extensions/-/markdown-extensions-1.1.1.tgz", - "integrity": "sha512-WWC0ZuMzCyDHYCasEGs4IPvLyTGftYwh6wIEOULOF0HXcqZlhwRzrK0w2VUlxWA98xnvb/jszw4ZSkJ6ADpM6Q==", - "license": "MIT", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/markdown-extensions/-/markdown-extensions-2.0.0.tgz", + "integrity": "sha512-o5vL7aDWatOTX8LzaS1WMoaoxIiLRQJuIKKe2wAw6IeULDHaqbiqiggmx+pKvZDb1Sj+pE46Sn1T7lCqfFtg1Q==", "engines": { - "node": ">=0.10.0" + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/markdown-table": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/markdown-table/-/markdown-table-3.0.3.tgz", "integrity": "sha512-Z1NL3Tb1M9wH4XESsCDEksWoKTdlUafKc4pt0GRwjUyXaCFZ+dc3g2erqB6zm3szA2IUSi7VnPI+o/9jnxh9hw==", - "license": "MIT", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/match-sorter": { - "version": "6.3.4", - "resolved": "https://registry.npmjs.org/match-sorter/-/match-sorter-6.3.4.tgz", - "integrity": "sha512-jfZW7cWS5y/1xswZo8VBOdudUiSd9nifYRWphc9M5D/ee4w4AoXLgBEdRbgVaxbMuagBPeUC5y2Hi8DO6o9aDg==", - "license": "MIT", - "dependencies": { - "@babel/runtime": "^7.23.8", - "remove-accents": "0.5.0" - } - }, - "node_modules/mdast-util-definitions": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/mdast-util-definitions/-/mdast-util-definitions-5.1.2.tgz", - "integrity": "sha512-8SVPMuHqlPME/z3gqVwWY4zVXn8lqKv/pAhC57FuJ40ImXyBpmO5ukh98zB2v7Blql2FiHjHv9LVztSIqjY+MA==", - "license": "MIT", - "dependencies": { - "@types/mdast": "^3.0.0", - "@types/unist": "^2.0.0", - "unist-util-visit": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-definitions/node_modules/unist-util-visit": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-4.1.2.tgz", - "integrity": "sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg==", - "license": "MIT", - "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-is": "^5.0.0", - "unist-util-visit-parents": "^5.1.1" + "node_modules/marked": { + "version": "13.0.3", + "resolved": "https://registry.npmjs.org/marked/-/marked-13.0.3.tgz", + "integrity": "sha512-rqRix3/TWzE9rIoFGIn8JmsVfhiuC8VIQ8IdX5TfzmeBucdY05/0UlzKaw0eVtpcN/OdVFpBk7CjKGo9iHJ/zA==", + "bin": { + "marked": "bin/marked.js" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "engines": { + "node": ">= 18" } }, - "node_modules/mdast-util-definitions/node_modules/unist-util-visit-parents": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-5.1.3.tgz", - "integrity": "sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==", - "license": "MIT", + "node_modules/mathjax-full": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/mathjax-full/-/mathjax-full-3.2.2.tgz", + "integrity": "sha512-+LfG9Fik+OuI8SLwsiR02IVdjcnRCy5MufYLi0C3TdMT56L/pjB0alMVGgoWJF8pN9Rc7FESycZB9BMNWIid5w==", "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-is": "^5.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "esm": "^3.2.25", + "mhchemparser": "^4.1.0", + "mj-context-menu": "^0.6.1", + "speech-rule-engine": "^4.0.6" } }, "node_modules/mdast-util-find-and-replace": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/mdast-util-find-and-replace/-/mdast-util-find-and-replace-2.2.2.tgz", - "integrity": "sha512-MTtdFRz/eMDHXzeK6W3dO7mXUlF82Gom4y0oOgvHhh/HXZAGvIQDUvQ0SuUx+j2tv44b8xTHOm8K/9OoRFnXKw==", - "license": "MIT", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/mdast-util-find-and-replace/-/mdast-util-find-and-replace-3.0.1.tgz", + "integrity": "sha512-SG21kZHGC3XRTSUhtofZkBzZTJNM5ecCi0SK2IMKmSXR8vO3peL+kb1O0z7Zl83jKtutG4k5Wv/W7V3/YHvzPA==", "dependencies": { - "@types/mdast": "^3.0.0", + "@types/mdast": "^4.0.0", "escape-string-regexp": "^5.0.0", - "unist-util-is": "^5.0.0", - "unist-util-visit-parents": "^5.0.0" + "unist-util-is": "^6.0.0", + "unist-util-visit-parents": "^6.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, + "node_modules/mdast-util-find-and-replace/node_modules/@types/unist": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", + "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==" + }, "node_modules/mdast-util-find-and-replace/node_modules/escape-string-regexp": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", - "license": "MIT", "engines": { "node": ">=12" }, @@ -9974,14 +10068,12 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/mdast-util-find-and-replace/node_modules/unist-util-visit-parents": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-5.1.3.tgz", - "integrity": "sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==", - "license": "MIT", + "node_modules/mdast-util-find-and-replace/node_modules/unist-util-is": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-6.0.0.tgz", + "integrity": "sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==", "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-is": "^5.0.0" + "@types/unist": "^3.0.0" }, "funding": { "type": "opencollective", @@ -9989,42 +10081,73 @@ } }, "node_modules/mdast-util-from-markdown": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-1.3.1.tgz", - "integrity": "sha512-4xTO/M8c82qBcnQc1tgpNtubGUW/Y1tBQ1B0i5CtSoelOLKFYlElIr3bvgREYYO5iRqbMY1YuqZng0GVOI8Qww==", - "license": "MIT", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-2.0.1.tgz", + "integrity": "sha512-aJEUyzZ6TzlsX2s5B4Of7lN7EQtAxvtradMMglCQDyaTFgse6CmtmdJ15ElnVRlCg1vpNyVtbem0PWzlNieZsA==", "dependencies": { - "@types/mdast": "^3.0.0", - "@types/unist": "^2.0.0", + "@types/mdast": "^4.0.0", + "@types/unist": "^3.0.0", "decode-named-character-reference": "^1.0.0", - "mdast-util-to-string": "^3.1.0", - "micromark": "^3.0.0", - "micromark-util-decode-numeric-character-reference": "^1.0.0", - "micromark-util-decode-string": "^1.0.0", - "micromark-util-normalize-identifier": "^1.0.0", - "micromark-util-symbol": "^1.0.0", - "micromark-util-types": "^1.0.0", - "unist-util-stringify-position": "^3.0.0", - "uvu": "^0.5.0" + "devlop": "^1.0.0", + "mdast-util-to-string": "^4.0.0", + "micromark": "^4.0.0", + "micromark-util-decode-numeric-character-reference": "^2.0.0", + "micromark-util-decode-string": "^2.0.0", + "micromark-util-normalize-identifier": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0", + "unist-util-stringify-position": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-from-markdown/node_modules/@types/unist": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", + "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==" + }, + "node_modules/mdast-util-frontmatter": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/mdast-util-frontmatter/-/mdast-util-frontmatter-2.0.1.tgz", + "integrity": "sha512-LRqI9+wdgC25P0URIJY9vwocIzCcksduHQ9OF2joxQoyTNVduwLAFUzjoopuRJbJAReaKrNQKAZKL3uCMugWJA==", + "dependencies": { + "@types/mdast": "^4.0.0", + "devlop": "^1.0.0", + "escape-string-regexp": "^5.0.0", + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0", + "micromark-extension-frontmatter": "^2.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, + "node_modules/mdast-util-frontmatter/node_modules/escape-string-regexp": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", + "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/mdast-util-gfm": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/mdast-util-gfm/-/mdast-util-gfm-2.0.2.tgz", - "integrity": "sha512-qvZ608nBppZ4icQlhQQIAdc6S3Ffj9RGmzwUKUWuEICFnd1LVkN3EktF7ZHAgfcEdvZB5owU9tQgt99e2TlLjg==", - "license": "MIT", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-gfm/-/mdast-util-gfm-3.0.0.tgz", + "integrity": "sha512-dgQEX5Amaq+DuUqf26jJqSK9qgixgd6rYDHAv4aTBuA92cTknZlKpPfa86Z/s8Dj8xsAQpFfBmPUHWJBWqS4Bw==", "dependencies": { - "mdast-util-from-markdown": "^1.0.0", - "mdast-util-gfm-autolink-literal": "^1.0.0", - "mdast-util-gfm-footnote": "^1.0.0", - "mdast-util-gfm-strikethrough": "^1.0.0", - "mdast-util-gfm-table": "^1.0.0", - "mdast-util-gfm-task-list-item": "^1.0.0", - "mdast-util-to-markdown": "^1.0.0" + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-gfm-autolink-literal": "^2.0.0", + "mdast-util-gfm-footnote": "^2.0.0", + "mdast-util-gfm-strikethrough": "^2.0.0", + "mdast-util-gfm-table": "^2.0.0", + "mdast-util-gfm-task-list-item": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0" }, "funding": { "type": "opencollective", @@ -10032,15 +10155,15 @@ } }, "node_modules/mdast-util-gfm-autolink-literal": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/mdast-util-gfm-autolink-literal/-/mdast-util-gfm-autolink-literal-1.0.3.tgz", - "integrity": "sha512-My8KJ57FYEy2W2LyNom4n3E7hKTuQk/0SES0u16tjA9Z3oFkF4RrC/hPAPgjlSpezsOvI8ObcXcElo92wn5IGA==", - "license": "MIT", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/mdast-util-gfm-autolink-literal/-/mdast-util-gfm-autolink-literal-2.0.1.tgz", + "integrity": "sha512-5HVP2MKaP6L+G6YaxPNjuL0BPrq9orG3TsrZ9YXbA3vDw/ACI4MEsnoDpn6ZNm7GnZgtAcONJyPhOP8tNJQavQ==", "dependencies": { - "@types/mdast": "^3.0.0", + "@types/mdast": "^4.0.0", "ccount": "^2.0.0", - "mdast-util-find-and-replace": "^2.0.0", - "micromark-util-character": "^1.0.0" + "devlop": "^1.0.0", + "mdast-util-find-and-replace": "^3.0.0", + "micromark-util-character": "^2.0.0" }, "funding": { "type": "opencollective", @@ -10048,14 +10171,15 @@ } }, "node_modules/mdast-util-gfm-footnote": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/mdast-util-gfm-footnote/-/mdast-util-gfm-footnote-1.0.2.tgz", - "integrity": "sha512-56D19KOGbE00uKVj3sgIykpwKL179QsVFwx/DCW0u/0+URsryacI4MAdNJl0dh+u2PSsD9FtxPFbHCzJ78qJFQ==", - "license": "MIT", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-gfm-footnote/-/mdast-util-gfm-footnote-2.0.0.tgz", + "integrity": "sha512-5jOT2boTSVkMnQ7LTrd6n/18kqwjmuYqo7JUPe+tRCY6O7dAuTFMtTPauYYrMPpox9hlN0uOx/FL8XvEfG9/mQ==", "dependencies": { - "@types/mdast": "^3.0.0", - "mdast-util-to-markdown": "^1.3.0", - "micromark-util-normalize-identifier": "^1.0.0" + "@types/mdast": "^4.0.0", + "devlop": "^1.1.0", + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0", + "micromark-util-normalize-identifier": "^2.0.0" }, "funding": { "type": "opencollective", @@ -10063,13 +10187,13 @@ } }, "node_modules/mdast-util-gfm-strikethrough": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/mdast-util-gfm-strikethrough/-/mdast-util-gfm-strikethrough-1.0.3.tgz", - "integrity": "sha512-DAPhYzTYrRcXdMjUtUjKvW9z/FNAMTdU0ORyMcbmkwYNbKocDpdk+PX1L1dQgOID/+vVs1uBQ7ElrBQfZ0cuiQ==", - "license": "MIT", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-gfm-strikethrough/-/mdast-util-gfm-strikethrough-2.0.0.tgz", + "integrity": "sha512-mKKb915TF+OC5ptj5bJ7WFRPdYtuHv0yTRxK2tJvi+BDqbkiG7h7u/9SI89nRAYcmap2xHQL9D+QG/6wSrTtXg==", "dependencies": { - "@types/mdast": "^3.0.0", - "mdast-util-to-markdown": "^1.3.0" + "@types/mdast": "^4.0.0", + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0" }, "funding": { "type": "opencollective", @@ -10077,15 +10201,15 @@ } }, "node_modules/mdast-util-gfm-table": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/mdast-util-gfm-table/-/mdast-util-gfm-table-1.0.7.tgz", - "integrity": "sha512-jjcpmNnQvrmN5Vx7y7lEc2iIOEytYv7rTvu+MeyAsSHTASGCCRA79Igg2uKssgOs1i1po8s3plW0sTu1wkkLGg==", - "license": "MIT", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-gfm-table/-/mdast-util-gfm-table-2.0.0.tgz", + "integrity": "sha512-78UEvebzz/rJIxLvE7ZtDd/vIQ0RHv+3Mh5DR96p7cS7HsBhYIICDBCu8csTNWNO6tBWfqXPWekRuj2FNOGOZg==", "dependencies": { - "@types/mdast": "^3.0.0", + "@types/mdast": "^4.0.0", + "devlop": "^1.0.0", "markdown-table": "^3.0.0", - "mdast-util-from-markdown": "^1.0.0", - "mdast-util-to-markdown": "^1.3.0" + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0" }, "funding": { "type": "opencollective", @@ -10093,13 +10217,14 @@ } }, "node_modules/mdast-util-gfm-task-list-item": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/mdast-util-gfm-task-list-item/-/mdast-util-gfm-task-list-item-1.0.2.tgz", - "integrity": "sha512-PFTA1gzfp1B1UaiJVyhJZA1rm0+Tzn690frc/L8vNX1Jop4STZgOE6bxUhnzdVSB+vm2GU1tIsuQcA9bxTQpMQ==", - "license": "MIT", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-gfm-task-list-item/-/mdast-util-gfm-task-list-item-2.0.0.tgz", + "integrity": "sha512-IrtvNvjxC1o06taBAVJznEnkiHxLFTzgonUdy8hzFVeDun0uTjxxrRGVaNFqkU1wJR3RBPEfsxmU6jDWPofrTQ==", "dependencies": { - "@types/mdast": "^3.0.0", - "mdast-util-to-markdown": "^1.3.0" + "@types/mdast": "^4.0.0", + "devlop": "^1.0.0", + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0" }, "funding": { "type": "opencollective", @@ -10107,14 +10232,17 @@ } }, "node_modules/mdast-util-math": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/mdast-util-math/-/mdast-util-math-2.0.2.tgz", - "integrity": "sha512-8gmkKVp9v6+Tgjtq6SYx9kGPpTf6FVYRa53/DLh479aldR9AyP48qeVOgNZ5X7QUK7nOy4yw7vg6mbiGcs9jWQ==", - "license": "MIT", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-math/-/mdast-util-math-3.0.0.tgz", + "integrity": "sha512-Tl9GBNeG/AhJnQM221bJR2HPvLOSnLE/T9cJI9tlc6zwQk2nPk/4f0cHkOdEixQPC/j8UtKDdITswvLAy1OZ1w==", "dependencies": { - "@types/mdast": "^3.0.0", + "@types/hast": "^3.0.0", + "@types/mdast": "^4.0.0", + "devlop": "^1.0.0", "longest-streak": "^3.0.0", - "mdast-util-to-markdown": "^1.3.0" + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.1.0", + "unist-util-remove-position": "^5.0.0" }, "funding": { "type": "opencollective", @@ -10122,16 +10250,15 @@ } }, "node_modules/mdast-util-mdx": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/mdast-util-mdx/-/mdast-util-mdx-2.0.1.tgz", - "integrity": "sha512-38w5y+r8nyKlGvNjSEqWrhG0w5PmnRA+wnBvm+ulYCct7nsGYhFVb0lljS9bQav4psDAS1eGkP2LMVcZBi/aqw==", - "license": "MIT", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-mdx/-/mdast-util-mdx-3.0.0.tgz", + "integrity": "sha512-JfbYLAW7XnYTTbUsmpu0kdBUVe+yKVJZBItEjwyYJiDJuZ9w4eeaqks4HQO+R7objWgS2ymV60GYpI14Ug554w==", "dependencies": { - "mdast-util-from-markdown": "^1.0.0", - "mdast-util-mdx-expression": "^1.0.0", - "mdast-util-mdx-jsx": "^2.0.0", - "mdast-util-mdxjs-esm": "^1.0.0", - "mdast-util-to-markdown": "^1.0.0" + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-mdx-expression": "^2.0.0", + "mdast-util-mdx-jsx": "^3.0.0", + "mdast-util-mdxjs-esm": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0" }, "funding": { "type": "opencollective", @@ -10139,16 +10266,16 @@ } }, "node_modules/mdast-util-mdx-expression": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/mdast-util-mdx-expression/-/mdast-util-mdx-expression-1.3.2.tgz", - "integrity": "sha512-xIPmR5ReJDu/DHH1OoIT1HkuybIfRGYRywC+gJtI7qHjCJp/M9jrmBEJW22O8lskDWm562BX2W8TiAwRTb0rKA==", - "license": "MIT", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/mdast-util-mdx-expression/-/mdast-util-mdx-expression-2.0.1.tgz", + "integrity": "sha512-J6f+9hUp+ldTZqKRSg7Vw5V6MqjATc+3E4gf3CFNcuZNWD8XdyI6zQ8GqH7f8169MM6P7hMBRDVGnn7oHB9kXQ==", "dependencies": { "@types/estree-jsx": "^1.0.0", - "@types/hast": "^2.0.0", - "@types/mdast": "^3.0.0", - "mdast-util-from-markdown": "^1.0.0", - "mdast-util-to-markdown": "^1.0.0" + "@types/hast": "^3.0.0", + "@types/mdast": "^4.0.0", + "devlop": "^1.0.0", + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0" }, "funding": { "type": "opencollective", @@ -10156,111 +10283,74 @@ } }, "node_modules/mdast-util-mdx-jsx": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/mdast-util-mdx-jsx/-/mdast-util-mdx-jsx-2.1.4.tgz", - "integrity": "sha512-DtMn9CmVhVzZx3f+optVDF8yFgQVt7FghCRNdlIaS3X5Bnym3hZwPbg/XW86vdpKjlc1PVj26SpnLGeJBXD3JA==", - "license": "MIT", + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/mdast-util-mdx-jsx/-/mdast-util-mdx-jsx-3.1.3.tgz", + "integrity": "sha512-bfOjvNt+1AcbPLTFMFWY149nJz0OjmewJs3LQQ5pIyVGxP4CdOqNVJL6kTaM5c68p8q82Xv3nCyFfUnuEcH3UQ==", "dependencies": { "@types/estree-jsx": "^1.0.0", - "@types/hast": "^2.0.0", - "@types/mdast": "^3.0.0", - "@types/unist": "^2.0.0", + "@types/hast": "^3.0.0", + "@types/mdast": "^4.0.0", + "@types/unist": "^3.0.0", "ccount": "^2.0.0", - "mdast-util-from-markdown": "^1.1.0", - "mdast-util-to-markdown": "^1.3.0", + "devlop": "^1.1.0", + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0", "parse-entities": "^4.0.0", "stringify-entities": "^4.0.0", - "unist-util-remove-position": "^4.0.0", - "unist-util-stringify-position": "^3.0.0", - "vfile-message": "^3.0.0" + "unist-util-stringify-position": "^4.0.0", + "vfile-message": "^4.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, - "node_modules/mdast-util-mdx-jsx/node_modules/unist-util-remove-position": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/unist-util-remove-position/-/unist-util-remove-position-4.0.2.tgz", - "integrity": "sha512-TkBb0HABNmxzAcfLf4qsIbFbaPDvMO6wa3b3j4VcEzFVaw1LBKwnW4/sRJ/atSLSzoIg41JWEdnE7N6DIhGDGQ==", - "license": "MIT", + "node_modules/mdast-util-mdx-jsx/node_modules/@types/unist": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", + "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==" + }, + "node_modules/mdast-util-mdxjs-esm": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/mdast-util-mdxjs-esm/-/mdast-util-mdxjs-esm-2.0.1.tgz", + "integrity": "sha512-EcmOpxsZ96CvlP03NghtH1EsLtr0n9Tm4lPUJUBccV9RwUOneqSycg19n5HGzCf+10LozMRSObtVr3ee1WoHtg==", "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-visit": "^4.0.0" + "@types/estree-jsx": "^1.0.0", + "@types/hast": "^3.0.0", + "@types/mdast": "^4.0.0", + "devlop": "^1.0.0", + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, - "node_modules/mdast-util-mdx-jsx/node_modules/unist-util-visit": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-4.1.2.tgz", - "integrity": "sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg==", - "license": "MIT", + "node_modules/mdast-util-phrasing": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/mdast-util-phrasing/-/mdast-util-phrasing-4.1.0.tgz", + "integrity": "sha512-TqICwyvJJpBwvGAMZjj4J2n0X8QWp21b9l0o7eXyVJ25YNWYbJDVIyD1bZXE6WtV6RmKJVYmQAKWa0zWOABz2w==", "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-is": "^5.0.0", - "unist-util-visit-parents": "^5.1.1" + "@types/mdast": "^4.0.0", + "unist-util-is": "^6.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, - "node_modules/mdast-util-mdx-jsx/node_modules/unist-util-visit-parents": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-5.1.3.tgz", - "integrity": "sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==", - "license": "MIT", - "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-is": "^5.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-mdx-jsx/node_modules/vfile-message": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-3.1.4.tgz", - "integrity": "sha512-fa0Z6P8HUrQN4BZaX05SIVXic+7kE3b05PWAtPuYP9QLHsLKYR7/AlLW3NtOrpXRLeawpDLMsVkmk5DG0NXgWw==", - "license": "MIT", - "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-stringify-position": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-mdxjs-esm": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/mdast-util-mdxjs-esm/-/mdast-util-mdxjs-esm-1.3.1.tgz", - "integrity": "sha512-SXqglS0HrEvSdUEfoXFtcg7DRl7S2cwOXc7jkuusG472Mmjag34DUDeOJUZtl+BVnyeO1frIgVpHlNRWc2gk/w==", - "license": "MIT", - "dependencies": { - "@types/estree-jsx": "^1.0.0", - "@types/hast": "^2.0.0", - "@types/mdast": "^3.0.0", - "mdast-util-from-markdown": "^1.0.0", - "mdast-util-to-markdown": "^1.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } + "node_modules/mdast-util-phrasing/node_modules/@types/unist": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", + "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==" }, - "node_modules/mdast-util-phrasing": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/mdast-util-phrasing/-/mdast-util-phrasing-3.0.1.tgz", - "integrity": "sha512-WmI1gTXUBJo4/ZmSk79Wcb2HcjPJBzM1nlI/OUWA8yk2X9ik3ffNbBGsU+09BFmXaL1IBb9fiuvq6/KMiNycSg==", - "license": "MIT", + "node_modules/mdast-util-phrasing/node_modules/unist-util-is": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-6.0.0.tgz", + "integrity": "sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==", "dependencies": { - "@types/mdast": "^3.0.0", - "unist-util-is": "^5.0.0" + "@types/unist": "^3.0.0" }, "funding": { "type": "opencollective", @@ -10288,159 +10378,18 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/mdast-util-to-hast/node_modules/@types/hast": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", - "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==", - "license": "MIT", - "dependencies": { - "@types/unist": "*" - } - }, - "node_modules/mdast-util-to-hast/node_modules/@types/mdast": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-4.0.4.tgz", - "integrity": "sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==", - "license": "MIT", - "dependencies": { - "@types/unist": "*" - } - }, - "node_modules/mdast-util-to-hast/node_modules/@types/unist": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", - "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==", - "license": "MIT" - }, - "node_modules/mdast-util-to-hast/node_modules/micromark-util-character": { + "node_modules/mdast-util-to-markdown": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-2.1.0.tgz", - "integrity": "sha512-KvOVV+X1yLBfs9dCBSopq/+G1PcgT3lAK07mC4BzXi5E7ahzMAF8oIupDDJ6mievI6F+lAATkbQQlQixJfT3aQ==", - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT", - "dependencies": { - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" - } - }, - "node_modules/mdast-util-to-hast/node_modules/micromark-util-encode": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-encode/-/micromark-util-encode-2.0.0.tgz", - "integrity": "sha512-pS+ROfCXAGLWCOc8egcBvT0kf27GoWMqtdarNfDcjb6YLuV5cM3ioG45Ys2qOVqeqSbjaKg72vU+Wby3eddPsA==", - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT" - }, - "node_modules/mdast-util-to-hast/node_modules/micromark-util-sanitize-uri": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-2.0.0.tgz", - "integrity": "sha512-WhYv5UEcZrbAtlsnPuChHUAsu/iBPOVaEVsntLBIdpibO0ddy8OzavZz3iL2xVvBZOpolujSliP65Kq0/7KIYw==", - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT", - "dependencies": { - "micromark-util-character": "^2.0.0", - "micromark-util-encode": "^2.0.0", - "micromark-util-symbol": "^2.0.0" - } - }, - "node_modules/mdast-util-to-hast/node_modules/micromark-util-symbol": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-2.0.0.tgz", - "integrity": "sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw==", - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT" - }, - "node_modules/mdast-util-to-hast/node_modules/micromark-util-types": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-2.0.0.tgz", - "integrity": "sha512-oNh6S2WMHWRZrmutsRmDDfkzKtxF+bc2VxLC9dvtrDIRFln627VsFP6fLMgTryGDljgLPjkrzQSDcPrjPyDJ5w==", - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT" - }, - "node_modules/mdast-util-to-hast/node_modules/unist-util-position": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/unist-util-position/-/unist-util-position-5.0.0.tgz", - "integrity": "sha512-fucsC7HjXvkB5R3kTCO7kUjRdrS0BJt3M/FPxmHMBOm8JQi2BsHAHFsy27E0EolP8rp0NzXsJ+jNPyDWvOJZPA==", - "license": "MIT", - "dependencies": { - "@types/unist": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-to-hast/node_modules/vfile": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.3.tgz", - "integrity": "sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==", - "license": "MIT", + "resolved": "https://registry.npmjs.org/mdast-util-to-markdown/-/mdast-util-to-markdown-2.1.0.tgz", + "integrity": "sha512-SR2VnIEdVNCJbP6y7kVTJgPLifdr8WEU440fQec7qHoHOUz/oJ2jmNRqdDQ3rbiStOXb2mCDGTuwsK5OPUgYlQ==", "dependencies": { + "@types/mdast": "^4.0.0", "@types/unist": "^3.0.0", - "vfile-message": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-to-markdown": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/mdast-util-to-markdown/-/mdast-util-to-markdown-1.5.0.tgz", - "integrity": "sha512-bbv7TPv/WC49thZPg3jXuqzuvI45IL2EVAr/KxF0BSdHsU0ceFHOmwQn6evxAh1GaoK/6GQ1wp4R4oW2+LFL/A==", - "license": "MIT", - "dependencies": { - "@types/mdast": "^3.0.0", - "@types/unist": "^2.0.0", "longest-streak": "^3.0.0", - "mdast-util-phrasing": "^3.0.0", - "mdast-util-to-string": "^3.0.0", - "micromark-util-decode-string": "^1.0.0", - "unist-util-visit": "^4.0.0", + "mdast-util-phrasing": "^4.0.0", + "mdast-util-to-string": "^4.0.0", + "micromark-util-decode-string": "^2.0.0", + "unist-util-visit": "^5.0.0", "zwitch": "^2.0.0" }, "funding": { @@ -10448,42 +10397,17 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/mdast-util-to-markdown/node_modules/unist-util-visit": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-4.1.2.tgz", - "integrity": "sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg==", - "license": "MIT", - "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-is": "^5.0.0", - "unist-util-visit-parents": "^5.1.1" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-to-markdown/node_modules/unist-util-visit-parents": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-5.1.3.tgz", - "integrity": "sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==", - "license": "MIT", - "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-is": "^5.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } + "node_modules/mdast-util-to-markdown/node_modules/@types/unist": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", + "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==" }, "node_modules/mdast-util-to-string": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-3.2.0.tgz", - "integrity": "sha512-V4Zn/ncyN1QNSqSBxTrMOLpjr+IKdHl2v3KVLoWmDPscP4r9GcCi71gjgvUV1SFSKh92AjAG4peFuBl2/YgCJg==", - "license": "MIT", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-4.0.0.tgz", + "integrity": "sha512-0H44vDimn51F0YwvxSJSm0eCDOJTRlmN0R1yBh4HLj9wiV1Dn0QoXGbvFAWj2hSItVTlCmBF1hqKlIyUBVFLPg==", "dependencies": { - "@types/mdast": "^3.0.0" + "@types/mdast": "^4.0.0" }, "funding": { "type": "opencollective", @@ -10507,50 +10431,40 @@ } }, "node_modules/mermaid": { - "version": "10.9.1", - "resolved": "https://registry.npmjs.org/mermaid/-/mermaid-10.9.1.tgz", - "integrity": "sha512-Mx45Obds5W1UkW1nv/7dHRsbfMM1aOKA2+Pxs/IGHNonygDHwmng8xTHyS9z4KWVi0rbko8gjiBmuwwXQ7tiNA==", - "license": "MIT", - "dependencies": { - "@braintree/sanitize-url": "^6.0.1", - "@types/d3-scale": "^4.0.3", - "@types/d3-scale-chromatic": "^3.0.0", - "cytoscape": "^3.28.1", + "version": "11.3.0", + "resolved": "https://registry.npmjs.org/mermaid/-/mermaid-11.3.0.tgz", + "integrity": "sha512-fFmf2gRXLtlGzug4wpIGN+rQdZ30M8IZEB1D3eZkXNqC7puhqeURBcD/9tbwXsqBO+A6Nzzo3MSSepmnw5xSeg==", + "dependencies": { + "@braintree/sanitize-url": "^7.0.1", + "@iconify/utils": "^2.1.32", + "@mermaid-js/parser": "^0.3.0", + "cytoscape": "^3.29.2", "cytoscape-cose-bilkent": "^4.1.0", - "d3": "^7.4.0", + "cytoscape-fcose": "^2.2.0", + "d3": "^7.9.0", "d3-sankey": "^0.12.3", "dagre-d3-es": "7.0.10", - "dayjs": "^1.11.7", - "dompurify": "^3.0.5", - "elkjs": "^0.9.0", + "dayjs": "^1.11.10", + "dompurify": "^3.0.11 <3.1.7", "katex": "^0.16.9", - "khroma": "^2.0.0", + "khroma": "^2.1.0", "lodash-es": "^4.17.21", - "mdast-util-from-markdown": "^1.3.0", - "non-layered-tidy-tree-layout": "^2.0.2", - "stylis": "^4.1.3", + "marked": "^13.0.2", + "roughjs": "^4.6.6", + "stylis": "^4.3.1", "ts-dedent": "^2.2.0", - "uuid": "^9.0.0", - "web-worker": "^1.2.0" + "uuid": "^9.0.1" } }, - "node_modules/mermaid/node_modules/uuid": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz", - "integrity": "sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==", - "funding": [ - "https://github.com/sponsors/broofa", - "https://github.com/sponsors/ctavan" - ], - "license": "MIT", - "bin": { - "uuid": "dist/bin/uuid" - } + "node_modules/mhchemparser": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/mhchemparser/-/mhchemparser-4.2.1.tgz", + "integrity": "sha512-kYmyrCirqJf3zZ9t/0wGgRZ4/ZJw//VwaRVGA75C4nhE60vtnIzhl9J9ndkX/h6hxSN7pjg/cE0VxbnNM+bnDQ==" }, "node_modules/micromark": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/micromark/-/micromark-3.2.0.tgz", - "integrity": "sha512-uD66tJj54JLYq0De10AhWycZWGQNUvDI55xPgk2sQM5kn1JYlhbCMTtEeT27+vAhW2FBQxLlOmS3pmA7/2z4aA==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/micromark/-/micromark-4.0.0.tgz", + "integrity": "sha512-o/sd0nMof8kYff+TqcDx3VSrgBTcZpSvYcAHIfHhv5VAuNmisCxjhx6YmxS8PFEpb9z5WKWKPdzf0jM23ro3RQ==", "funding": [ { "type": "GitHub Sponsors", @@ -10561,31 +10475,30 @@ "url": "https://opencollective.com/unified" } ], - "license": "MIT", "dependencies": { "@types/debug": "^4.0.0", "debug": "^4.0.0", "decode-named-character-reference": "^1.0.0", - "micromark-core-commonmark": "^1.0.1", - "micromark-factory-space": "^1.0.0", - "micromark-util-character": "^1.0.0", - "micromark-util-chunked": "^1.0.0", - "micromark-util-combine-extensions": "^1.0.0", - "micromark-util-decode-numeric-character-reference": "^1.0.0", - "micromark-util-encode": "^1.0.0", - "micromark-util-normalize-identifier": "^1.0.0", - "micromark-util-resolve-all": "^1.0.0", - "micromark-util-sanitize-uri": "^1.0.0", - "micromark-util-subtokenize": "^1.0.0", - "micromark-util-symbol": "^1.0.0", - "micromark-util-types": "^1.0.1", - "uvu": "^0.5.0" + "devlop": "^1.0.0", + "micromark-core-commonmark": "^2.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-chunked": "^2.0.0", + "micromark-util-combine-extensions": "^2.0.0", + "micromark-util-decode-numeric-character-reference": "^2.0.0", + "micromark-util-encode": "^2.0.0", + "micromark-util-normalize-identifier": "^2.0.0", + "micromark-util-resolve-all": "^2.0.0", + "micromark-util-sanitize-uri": "^2.0.0", + "micromark-util-subtokenize": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" } }, "node_modules/micromark-core-commonmark": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/micromark-core-commonmark/-/micromark-core-commonmark-1.1.0.tgz", - "integrity": "sha512-BgHO1aRbolh2hcrzL2d1La37V0Aoz73ymF8rAcKnohLy93titmv62E0gP8Hrx9PKcKrqCZ1BbLGbP3bEhoXYlw==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-core-commonmark/-/micromark-core-commonmark-2.0.1.tgz", + "integrity": "sha512-CUQyKr1e///ZODyD1U3xit6zXwy1a8q2a1S1HKtIlmgvurrEpaw/Y9y6KSIbF8P59cn/NjzHyO+Q2fAyYLQrAA==", "funding": [ { "type": "GitHub Sponsors", @@ -10596,40 +10509,53 @@ "url": "https://opencollective.com/unified" } ], - "license": "MIT", "dependencies": { "decode-named-character-reference": "^1.0.0", - "micromark-factory-destination": "^1.0.0", - "micromark-factory-label": "^1.0.0", - "micromark-factory-space": "^1.0.0", - "micromark-factory-title": "^1.0.0", - "micromark-factory-whitespace": "^1.0.0", - "micromark-util-character": "^1.0.0", - "micromark-util-chunked": "^1.0.0", - "micromark-util-classify-character": "^1.0.0", - "micromark-util-html-tag-name": "^1.0.0", - "micromark-util-normalize-identifier": "^1.0.0", - "micromark-util-resolve-all": "^1.0.0", - "micromark-util-subtokenize": "^1.0.0", - "micromark-util-symbol": "^1.0.0", - "micromark-util-types": "^1.0.1", - "uvu": "^0.5.0" + "devlop": "^1.0.0", + "micromark-factory-destination": "^2.0.0", + "micromark-factory-label": "^2.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-factory-title": "^2.0.0", + "micromark-factory-whitespace": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-chunked": "^2.0.0", + "micromark-util-classify-character": "^2.0.0", + "micromark-util-html-tag-name": "^2.0.0", + "micromark-util-normalize-identifier": "^2.0.0", + "micromark-util-resolve-all": "^2.0.0", + "micromark-util-subtokenize": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" } }, - "node_modules/micromark-extension-gfm": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm/-/micromark-extension-gfm-2.0.3.tgz", - "integrity": "sha512-vb9OoHqrhCmbRidQv/2+Bc6pkP0FrtlhurxZofvOEy5o8RtuuvTq+RQ1Vw5ZDNrVraQZu3HixESqbG+0iKk/MQ==", - "license": "MIT", + "node_modules/micromark-extension-frontmatter": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-extension-frontmatter/-/micromark-extension-frontmatter-2.0.0.tgz", + "integrity": "sha512-C4AkuM3dA58cgZha7zVnuVxBhDsbttIMiytjgsM2XbHAB2faRVaHRle40558FBN+DJcrLNCoqG5mlrpdU4cRtg==", "dependencies": { - "micromark-extension-gfm-autolink-literal": "^1.0.0", - "micromark-extension-gfm-footnote": "^1.0.0", - "micromark-extension-gfm-strikethrough": "^1.0.0", - "micromark-extension-gfm-table": "^1.0.0", - "micromark-extension-gfm-tagfilter": "^1.0.0", - "micromark-extension-gfm-task-list-item": "^1.0.0", - "micromark-util-combine-extensions": "^1.0.0", - "micromark-util-types": "^1.0.0" + "fault": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-gfm": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm/-/micromark-extension-gfm-3.0.0.tgz", + "integrity": "sha512-vsKArQsicm7t0z2GugkCKtZehqUm31oeGBV/KVSorWSy8ZlNAv7ytjFhvaryUiCUJYqs+NoE6AFhpQvBTM6Q4w==", + "dependencies": { + "micromark-extension-gfm-autolink-literal": "^2.0.0", + "micromark-extension-gfm-footnote": "^2.0.0", + "micromark-extension-gfm-strikethrough": "^2.0.0", + "micromark-extension-gfm-table": "^2.0.0", + "micromark-extension-gfm-tagfilter": "^2.0.0", + "micromark-extension-gfm-task-list-item": "^2.0.0", + "micromark-util-combine-extensions": "^2.0.0", + "micromark-util-types": "^2.0.0" }, "funding": { "type": "opencollective", @@ -10637,15 +10563,14 @@ } }, "node_modules/micromark-extension-gfm-autolink-literal": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-autolink-literal/-/micromark-extension-gfm-autolink-literal-1.0.5.tgz", - "integrity": "sha512-z3wJSLrDf8kRDOh2qBtoTRD53vJ+CWIyo7uyZuxf/JAbNJjiHsOpG1y5wxk8drtv3ETAHutCu6N3thkOOgueWg==", - "license": "MIT", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-autolink-literal/-/micromark-extension-gfm-autolink-literal-2.1.0.tgz", + "integrity": "sha512-oOg7knzhicgQ3t4QCjCWgTmfNhvQbDDnJeVu9v81r7NltNCVmhPy1fJRX27pISafdjL+SVc4d3l48Gb6pbRypw==", "dependencies": { - "micromark-util-character": "^1.0.0", - "micromark-util-sanitize-uri": "^1.0.0", - "micromark-util-symbol": "^1.0.0", - "micromark-util-types": "^1.0.0" + "micromark-util-character": "^2.0.0", + "micromark-util-sanitize-uri": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" }, "funding": { "type": "opencollective", @@ -10653,19 +10578,18 @@ } }, "node_modules/micromark-extension-gfm-footnote": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-footnote/-/micromark-extension-gfm-footnote-1.1.2.tgz", - "integrity": "sha512-Yxn7z7SxgyGWRNa4wzf8AhYYWNrwl5q1Z8ii+CSTTIqVkmGZF1CElX2JI8g5yGoM3GAman9/PVCUFUSJ0kB/8Q==", - "license": "MIT", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-footnote/-/micromark-extension-gfm-footnote-2.1.0.tgz", + "integrity": "sha512-/yPhxI1ntnDNsiHtzLKYnE3vf9JZ6cAisqVDauhp4CEHxlb4uoOTxOCJ+9s51bIB8U1N1FJ1RXOKTIlD5B/gqw==", "dependencies": { - "micromark-core-commonmark": "^1.0.0", - "micromark-factory-space": "^1.0.0", - "micromark-util-character": "^1.0.0", - "micromark-util-normalize-identifier": "^1.0.0", - "micromark-util-sanitize-uri": "^1.0.0", - "micromark-util-symbol": "^1.0.0", - "micromark-util-types": "^1.0.0", - "uvu": "^0.5.0" + "devlop": "^1.0.0", + "micromark-core-commonmark": "^2.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-normalize-identifier": "^2.0.0", + "micromark-util-sanitize-uri": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" }, "funding": { "type": "opencollective", @@ -10673,17 +10597,16 @@ } }, "node_modules/micromark-extension-gfm-strikethrough": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-strikethrough/-/micromark-extension-gfm-strikethrough-1.0.7.tgz", - "integrity": "sha512-sX0FawVE1o3abGk3vRjOH50L5TTLr3b5XMqnP9YDRb34M0v5OoZhG+OHFz1OffZ9dlwgpTBKaT4XW/AsUVnSDw==", - "license": "MIT", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-strikethrough/-/micromark-extension-gfm-strikethrough-2.1.0.tgz", + "integrity": "sha512-ADVjpOOkjz1hhkZLlBiYA9cR2Anf8F4HqZUO6e5eDcPQd0Txw5fxLzzxnEkSkfnD0wziSGiv7sYhk/ktvbf1uw==", "dependencies": { - "micromark-util-chunked": "^1.0.0", - "micromark-util-classify-character": "^1.0.0", - "micromark-util-resolve-all": "^1.0.0", - "micromark-util-symbol": "^1.0.0", - "micromark-util-types": "^1.0.0", - "uvu": "^0.5.0" + "devlop": "^1.0.0", + "micromark-util-chunked": "^2.0.0", + "micromark-util-classify-character": "^2.0.0", + "micromark-util-resolve-all": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" }, "funding": { "type": "opencollective", @@ -10691,16 +10614,15 @@ } }, "node_modules/micromark-extension-gfm-table": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-table/-/micromark-extension-gfm-table-1.0.7.tgz", - "integrity": "sha512-3ZORTHtcSnMQEKtAOsBQ9/oHp9096pI/UvdPtN7ehKvrmZZ2+bbWhi0ln+I9drmwXMt5boocn6OlwQzNXeVeqw==", - "license": "MIT", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-table/-/micromark-extension-gfm-table-2.1.0.tgz", + "integrity": "sha512-Ub2ncQv+fwD70/l4ou27b4YzfNaCJOvyX4HxXU15m7mpYY+rjuWzsLIPZHJL253Z643RpbcP1oeIJlQ/SKW67g==", "dependencies": { - "micromark-factory-space": "^1.0.0", - "micromark-util-character": "^1.0.0", - "micromark-util-symbol": "^1.0.0", - "micromark-util-types": "^1.0.0", - "uvu": "^0.5.0" + "devlop": "^1.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" }, "funding": { "type": "opencollective", @@ -10708,12 +10630,11 @@ } }, "node_modules/micromark-extension-gfm-tagfilter": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-tagfilter/-/micromark-extension-gfm-tagfilter-1.0.2.tgz", - "integrity": "sha512-5XWB9GbAUSHTn8VPU8/1DBXMuKYT5uOgEjJb8gN3mW0PNW5OPHpSdojoqf+iq1xo7vWzw/P8bAHY0n6ijpXF7g==", - "license": "MIT", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-tagfilter/-/micromark-extension-gfm-tagfilter-2.0.0.tgz", + "integrity": "sha512-xHlTOmuCSotIA8TW1mDIM6X2O1SiX5P9IuDtqGonFhEK0qgRI4yeC6vMxEV2dgyr2TiD+2PQ10o+cOhdVAcwfg==", "dependencies": { - "micromark-util-types": "^1.0.0" + "micromark-util-types": "^2.0.0" }, "funding": { "type": "opencollective", @@ -10721,16 +10642,15 @@ } }, "node_modules/micromark-extension-gfm-task-list-item": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-task-list-item/-/micromark-extension-gfm-task-list-item-1.0.5.tgz", - "integrity": "sha512-RMFXl2uQ0pNQy6Lun2YBYT9g9INXtWJULgbt01D/x8/6yJ2qpKyzdZD3pi6UIkzF++Da49xAelVKUeUMqd5eIQ==", - "license": "MIT", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-task-list-item/-/micromark-extension-gfm-task-list-item-2.1.0.tgz", + "integrity": "sha512-qIBZhqxqI6fjLDYFTBIa4eivDMnP+OZqsNwmQ3xNLE4Cxwc+zfQEfbs6tzAo2Hjq+bh6q5F+Z8/cksrLFYWQQw==", "dependencies": { - "micromark-factory-space": "^1.0.0", - "micromark-util-character": "^1.0.0", - "micromark-util-symbol": "^1.0.0", - "micromark-util-types": "^1.0.0", - "uvu": "^0.5.0" + "devlop": "^1.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" }, "funding": { "type": "opencollective", @@ -10738,18 +10658,17 @@ } }, "node_modules/micromark-extension-math": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/micromark-extension-math/-/micromark-extension-math-2.1.2.tgz", - "integrity": "sha512-es0CcOV89VNS9wFmyn+wyFTKweXGW4CEvdaAca6SWRWPyYCbBisnjaHLjWO4Nszuiud84jCpkHsqAJoa768Pvg==", - "license": "MIT", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/micromark-extension-math/-/micromark-extension-math-3.1.0.tgz", + "integrity": "sha512-lvEqd+fHjATVs+2v/8kg9i5Q0AP2k85H0WUOwpIVvUML8BapsMvh1XAogmQjOCsLpoKRCVQqEkQBB3NhVBcsOg==", "dependencies": { "@types/katex": "^0.16.0", + "devlop": "^1.0.0", "katex": "^0.16.0", - "micromark-factory-space": "^1.0.0", - "micromark-util-character": "^1.0.0", - "micromark-util-symbol": "^1.0.0", - "micromark-util-types": "^1.0.0", - "uvu": "^0.5.0" + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" }, "funding": { "type": "opencollective", @@ -10757,9 +10676,9 @@ } }, "node_modules/micromark-extension-mdx-expression": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/micromark-extension-mdx-expression/-/micromark-extension-mdx-expression-1.0.8.tgz", - "integrity": "sha512-zZpeQtc5wfWKdzDsHRBY003H2Smg+PUi2REhqgIhdzAa5xonhP03FcXxqFSerFiNUr5AWmHpaNPQTBVOS4lrXw==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/micromark-extension-mdx-expression/-/micromark-extension-mdx-expression-3.0.0.tgz", + "integrity": "sha512-sI0nwhUDz97xyzqJAbHQhp5TfaxEvZZZ2JDqUo+7NvyIYG6BZ5CPPqj2ogUoPJlmXHBnyZUzISg9+oUmU6tUjQ==", "funding": [ { "type": "GitHub Sponsors", @@ -10770,61 +10689,54 @@ "url": "https://opencollective.com/unified" } ], - "license": "MIT", "dependencies": { "@types/estree": "^1.0.0", - "micromark-factory-mdx-expression": "^1.0.0", - "micromark-factory-space": "^1.0.0", - "micromark-util-character": "^1.0.0", - "micromark-util-events-to-acorn": "^1.0.0", - "micromark-util-symbol": "^1.0.0", - "micromark-util-types": "^1.0.0", - "uvu": "^0.5.0" + "devlop": "^1.0.0", + "micromark-factory-mdx-expression": "^2.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-events-to-acorn": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" } }, "node_modules/micromark-extension-mdx-jsx": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/micromark-extension-mdx-jsx/-/micromark-extension-mdx-jsx-1.0.5.tgz", - "integrity": "sha512-gPH+9ZdmDflbu19Xkb8+gheqEDqkSpdCEubQyxuz/Hn8DOXiXvrXeikOoBA71+e8Pfi0/UYmU3wW3H58kr7akA==", - "license": "MIT", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/micromark-extension-mdx-jsx/-/micromark-extension-mdx-jsx-3.0.1.tgz", + "integrity": "sha512-vNuFb9czP8QCtAQcEJn0UJQJZA8Dk6DXKBqx+bg/w0WGuSxDxNr7hErW89tHUY31dUW4NqEOWwmEUNhjTFmHkg==", "dependencies": { "@types/acorn": "^4.0.0", "@types/estree": "^1.0.0", - "estree-util-is-identifier-name": "^2.0.0", - "micromark-factory-mdx-expression": "^1.0.0", - "micromark-factory-space": "^1.0.0", - "micromark-util-character": "^1.0.0", - "micromark-util-symbol": "^1.0.0", - "micromark-util-types": "^1.0.0", - "uvu": "^0.5.0", - "vfile-message": "^3.0.0" + "devlop": "^1.0.0", + "estree-util-is-identifier-name": "^3.0.0", + "micromark-factory-mdx-expression": "^2.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-events-to-acorn": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0", + "vfile-message": "^4.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, - "node_modules/micromark-extension-mdx-jsx/node_modules/vfile-message": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-3.1.4.tgz", - "integrity": "sha512-fa0Z6P8HUrQN4BZaX05SIVXic+7kE3b05PWAtPuYP9QLHsLKYR7/AlLW3NtOrpXRLeawpDLMsVkmk5DG0NXgWw==", - "license": "MIT", - "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-stringify-position": "^3.0.0" - }, + "node_modules/micromark-extension-mdx-jsx/node_modules/estree-util-is-identifier-name": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/estree-util-is-identifier-name/-/estree-util-is-identifier-name-3.0.0.tgz", + "integrity": "sha512-hFtqIDZTIUZ9BXLb8y4pYGyk6+wekIivNVTcmvk8NoOh+VeRn5y6cEHzbURrWbfp1fIqdVipilzj+lfaadNZmg==", "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, "node_modules/micromark-extension-mdx-md": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/micromark-extension-mdx-md/-/micromark-extension-mdx-md-1.0.1.tgz", - "integrity": "sha512-7MSuj2S7xjOQXAjjkbjBsHkMtb+mDGVW6uI2dBL9snOBCbZmoNgDAeZ0nSn9j3T42UE/g2xVNMn18PJxZvkBEA==", - "license": "MIT", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-extension-mdx-md/-/micromark-extension-mdx-md-2.0.0.tgz", + "integrity": "sha512-EpAiszsB3blw4Rpba7xTOUptcFeBFi+6PY8VnJ2hhimH+vCQDirWgsMpz7w1XcZE7LVrSAUGb9VJpG9ghlYvYQ==", "dependencies": { - "micromark-util-types": "^1.0.0" + "micromark-util-types": "^2.0.0" }, "funding": { "type": "opencollective", @@ -10832,19 +10744,18 @@ } }, "node_modules/micromark-extension-mdxjs": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/micromark-extension-mdxjs/-/micromark-extension-mdxjs-1.0.1.tgz", - "integrity": "sha512-7YA7hF6i5eKOfFUzZ+0z6avRG52GpWR8DL+kN47y3f2KhxbBZMhmxe7auOeaTBrW2DenbbZTf1ea9tA2hDpC2Q==", - "license": "MIT", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/micromark-extension-mdxjs/-/micromark-extension-mdxjs-3.0.0.tgz", + "integrity": "sha512-A873fJfhnJ2siZyUrJ31l34Uqwy4xIFmvPY1oj+Ean5PHcPBYzEsvqvWGaWcfEIr11O5Dlw3p2y0tZWpKHDejQ==", "dependencies": { "acorn": "^8.0.0", "acorn-jsx": "^5.0.0", - "micromark-extension-mdx-expression": "^1.0.0", - "micromark-extension-mdx-jsx": "^1.0.0", - "micromark-extension-mdx-md": "^1.0.0", - "micromark-extension-mdxjs-esm": "^1.0.0", - "micromark-util-combine-extensions": "^1.0.0", - "micromark-util-types": "^1.0.0" + "micromark-extension-mdx-expression": "^3.0.0", + "micromark-extension-mdx-jsx": "^3.0.0", + "micromark-extension-mdx-md": "^2.0.0", + "micromark-extension-mdxjs-esm": "^3.0.0", + "micromark-util-combine-extensions": "^2.0.0", + "micromark-util-types": "^2.0.0" }, "funding": { "type": "opencollective", @@ -10852,34 +10763,19 @@ } }, "node_modules/micromark-extension-mdxjs-esm": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/micromark-extension-mdxjs-esm/-/micromark-extension-mdxjs-esm-1.0.5.tgz", - "integrity": "sha512-xNRBw4aoURcyz/S69B19WnZAkWJMxHMT5hE36GtDAyhoyn/8TuAeqjFJQlwk+MKQsUD7b3l7kFX+vlfVWgcX1w==", - "license": "MIT", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/micromark-extension-mdxjs-esm/-/micromark-extension-mdxjs-esm-3.0.0.tgz", + "integrity": "sha512-DJFl4ZqkErRpq/dAPyeWp15tGrcrrJho1hKK5uBS70BCtfrIFg81sqcTVu3Ta+KD1Tk5vAtBNElWxtAa+m8K9A==", "dependencies": { "@types/estree": "^1.0.0", - "micromark-core-commonmark": "^1.0.0", - "micromark-util-character": "^1.0.0", - "micromark-util-events-to-acorn": "^1.0.0", - "micromark-util-symbol": "^1.0.0", - "micromark-util-types": "^1.0.0", - "unist-util-position-from-estree": "^1.1.0", - "uvu": "^0.5.0", - "vfile-message": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/micromark-extension-mdxjs-esm/node_modules/vfile-message": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-3.1.4.tgz", - "integrity": "sha512-fa0Z6P8HUrQN4BZaX05SIVXic+7kE3b05PWAtPuYP9QLHsLKYR7/AlLW3NtOrpXRLeawpDLMsVkmk5DG0NXgWw==", - "license": "MIT", - "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-stringify-position": "^3.0.0" + "devlop": "^1.0.0", + "micromark-core-commonmark": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-events-to-acorn": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0", + "unist-util-position-from-estree": "^2.0.0", + "vfile-message": "^4.0.0" }, "funding": { "type": "opencollective", @@ -10887,9 +10783,9 @@ } }, "node_modules/micromark-factory-destination": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/micromark-factory-destination/-/micromark-factory-destination-1.1.0.tgz", - "integrity": "sha512-XaNDROBgx9SgSChd69pjiGKbV+nfHGDPVYFs5dOoDd7ZnMAE+Cuu91BCpsY8RT2NP9vo/B8pds2VQNCLiu0zhg==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-factory-destination/-/micromark-factory-destination-2.0.0.tgz", + "integrity": "sha512-j9DGrQLm/Uhl2tCzcbLhy5kXsgkHUrjJHg4fFAeoMRwJmJerT9aw4FEhIbZStWN8A3qMwOp1uzHr4UL8AInxtA==", "funding": [ { "type": "GitHub Sponsors", @@ -10900,17 +10796,16 @@ "url": "https://opencollective.com/unified" } ], - "license": "MIT", "dependencies": { - "micromark-util-character": "^1.0.0", - "micromark-util-symbol": "^1.0.0", - "micromark-util-types": "^1.0.0" + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" } }, "node_modules/micromark-factory-label": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/micromark-factory-label/-/micromark-factory-label-1.1.0.tgz", - "integrity": "sha512-OLtyez4vZo/1NjxGhcpDSbHQ+m0IIGnT8BoPamh+7jVlzLJBH98zzuCoUeMxvM6WsNeh8wx8cKvqLiPHEACn0w==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-factory-label/-/micromark-factory-label-2.0.0.tgz", + "integrity": "sha512-RR3i96ohZGde//4WSe/dJsxOX6vxIg9TimLAS3i4EhBAFx8Sm5SmqVfR8E87DPSR31nEAjZfbt91OMZWcNgdZw==", "funding": [ { "type": "GitHub Sponsors", @@ -10921,18 +10816,17 @@ "url": "https://opencollective.com/unified" } ], - "license": "MIT", "dependencies": { - "micromark-util-character": "^1.0.0", - "micromark-util-symbol": "^1.0.0", - "micromark-util-types": "^1.0.0", - "uvu": "^0.5.0" + "devlop": "^1.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" } }, "node_modules/micromark-factory-mdx-expression": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/micromark-factory-mdx-expression/-/micromark-factory-mdx-expression-1.0.9.tgz", - "integrity": "sha512-jGIWzSmNfdnkJq05c7b0+Wv0Kfz3NJ3N4cBjnbO4zjXIlxJr+f8lk+5ZmwFvqdAbUy2q6B5rCY//g0QAAaXDWA==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/micromark-factory-mdx-expression/-/micromark-factory-mdx-expression-2.0.2.tgz", + "integrity": "sha512-5E5I2pFzJyg2CtemqAbcyCktpHXuJbABnsb32wX2U8IQKhhVFBqkcZR5LRm1WVoFqa4kTueZK4abep7wdo9nrw==", "funding": [ { "type": "GitHub Sponsors", @@ -10943,36 +10837,22 @@ "url": "https://opencollective.com/unified" } ], - "license": "MIT", "dependencies": { "@types/estree": "^1.0.0", - "micromark-util-character": "^1.0.0", - "micromark-util-events-to-acorn": "^1.0.0", - "micromark-util-symbol": "^1.0.0", - "micromark-util-types": "^1.0.0", - "unist-util-position-from-estree": "^1.0.0", - "uvu": "^0.5.0", - "vfile-message": "^3.0.0" - } - }, - "node_modules/micromark-factory-mdx-expression/node_modules/vfile-message": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-3.1.4.tgz", - "integrity": "sha512-fa0Z6P8HUrQN4BZaX05SIVXic+7kE3b05PWAtPuYP9QLHsLKYR7/AlLW3NtOrpXRLeawpDLMsVkmk5DG0NXgWw==", - "license": "MIT", - "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-stringify-position": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "devlop": "^1.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-events-to-acorn": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0", + "unist-util-position-from-estree": "^2.0.0", + "vfile-message": "^4.0.0" } }, "node_modules/micromark-factory-space": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/micromark-factory-space/-/micromark-factory-space-1.1.0.tgz", - "integrity": "sha512-cRzEj7c0OL4Mw2v6nwzttyOZe8XY/Z8G0rzmWQZTBi/jjwyw/U4uqKtUORXQrR5bAZZnbTI/feRV/R7hc4jQYQ==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-factory-space/-/micromark-factory-space-2.0.0.tgz", + "integrity": "sha512-TKr+LIDX2pkBJXFLzpyPyljzYK3MtmllMUMODTQJIUfDGncESaqB90db9IAUcz4AZAJFdd8U9zOp9ty1458rxg==", "funding": [ { "type": "GitHub Sponsors", @@ -10983,16 +10863,15 @@ "url": "https://opencollective.com/unified" } ], - "license": "MIT", "dependencies": { - "micromark-util-character": "^1.0.0", - "micromark-util-types": "^1.0.0" + "micromark-util-character": "^2.0.0", + "micromark-util-types": "^2.0.0" } }, "node_modules/micromark-factory-title": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/micromark-factory-title/-/micromark-factory-title-1.1.0.tgz", - "integrity": "sha512-J7n9R3vMmgjDOCY8NPw55jiyaQnH5kBdV2/UXCtZIpnHH3P6nHUKaH7XXEYuWwx/xUJcawa8plLBEjMPU24HzQ==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-factory-title/-/micromark-factory-title-2.0.0.tgz", + "integrity": "sha512-jY8CSxmpWLOxS+t8W+FG3Xigc0RDQA9bKMY/EwILvsesiRniiVMejYTE4wumNc2f4UbAa4WsHqe3J1QS1sli+A==", "funding": [ { "type": "GitHub Sponsors", @@ -11003,18 +10882,17 @@ "url": "https://opencollective.com/unified" } ], - "license": "MIT", "dependencies": { - "micromark-factory-space": "^1.0.0", - "micromark-util-character": "^1.0.0", - "micromark-util-symbol": "^1.0.0", - "micromark-util-types": "^1.0.0" + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" } }, "node_modules/micromark-factory-whitespace": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/micromark-factory-whitespace/-/micromark-factory-whitespace-1.1.0.tgz", - "integrity": "sha512-v2WlmiymVSp5oMg+1Q0N1Lxmt6pMhIHD457whWM7/GUlEks1hI9xj5w3zbc4uuMKXGisksZk8DzP2UyGbGqNsQ==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-factory-whitespace/-/micromark-factory-whitespace-2.0.0.tgz", + "integrity": "sha512-28kbwaBjc5yAI1XadbdPYHX/eDnqaUFVikLwrO7FDnKG7lpgxnvk/XGRhX/PN0mOZ+dBSZ+LgunHS+6tYQAzhA==", "funding": [ { "type": "GitHub Sponsors", @@ -11025,18 +10903,17 @@ "url": "https://opencollective.com/unified" } ], - "license": "MIT", "dependencies": { - "micromark-factory-space": "^1.0.0", - "micromark-util-character": "^1.0.0", - "micromark-util-symbol": "^1.0.0", - "micromark-util-types": "^1.0.0" + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" } }, "node_modules/micromark-util-character": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-1.2.0.tgz", - "integrity": "sha512-lXraTwcX3yH/vMDaFWCQJP1uIszLVebzUa3ZHdrgxr7KEU/9mL4mVgCpGbyhvNLNlauROiNUq7WN5u7ndbY6xg==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-2.1.0.tgz", + "integrity": "sha512-KvOVV+X1yLBfs9dCBSopq/+G1PcgT3lAK07mC4BzXi5E7ahzMAF8oIupDDJ6mievI6F+lAATkbQQlQixJfT3aQ==", "funding": [ { "type": "GitHub Sponsors", @@ -11047,16 +10924,15 @@ "url": "https://opencollective.com/unified" } ], - "license": "MIT", "dependencies": { - "micromark-util-symbol": "^1.0.0", - "micromark-util-types": "^1.0.0" + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" } }, "node_modules/micromark-util-chunked": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/micromark-util-chunked/-/micromark-util-chunked-1.1.0.tgz", - "integrity": "sha512-Ye01HXpkZPNcV6FiyoW2fGZDUw4Yc7vT0E9Sad83+bEDiCJ1uXu0S3mr8WLpsz3HaG3x2q0HM6CTuPdcZcluFQ==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-chunked/-/micromark-util-chunked-2.0.0.tgz", + "integrity": "sha512-anK8SWmNphkXdaKgz5hJvGa7l00qmcaUQoMYsBwDlSKFKjc6gjGXPDw3FNL3Nbwq5L8gE+RCbGqTw49FK5Qyvg==", "funding": [ { "type": "GitHub Sponsors", @@ -11067,15 +10943,14 @@ "url": "https://opencollective.com/unified" } ], - "license": "MIT", "dependencies": { - "micromark-util-symbol": "^1.0.0" + "micromark-util-symbol": "^2.0.0" } }, "node_modules/micromark-util-classify-character": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/micromark-util-classify-character/-/micromark-util-classify-character-1.1.0.tgz", - "integrity": "sha512-SL0wLxtKSnklKSUplok1WQFoGhUdWYKggKUiqhX+Swala+BtptGCu5iPRc+xvzJ4PXE/hwM3FNXsfEVgoZsWbw==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-classify-character/-/micromark-util-classify-character-2.0.0.tgz", + "integrity": "sha512-S0ze2R9GH+fu41FA7pbSqNWObo/kzwf8rN/+IGlW/4tC6oACOs8B++bh+i9bVyNnwCcuksbFwsBme5OCKXCwIw==", "funding": [ { "type": "GitHub Sponsors", @@ -11086,17 +10961,16 @@ "url": "https://opencollective.com/unified" } ], - "license": "MIT", "dependencies": { - "micromark-util-character": "^1.0.0", - "micromark-util-symbol": "^1.0.0", - "micromark-util-types": "^1.0.0" + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" } }, "node_modules/micromark-util-combine-extensions": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/micromark-util-combine-extensions/-/micromark-util-combine-extensions-1.1.0.tgz", - "integrity": "sha512-Q20sp4mfNf9yEqDL50WwuWZHUrCO4fEyeDCnMGmG5Pr0Cz15Uo7KBs6jq+dq0EgX4DPwwrh9m0X+zPV1ypFvUA==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-combine-extensions/-/micromark-util-combine-extensions-2.0.0.tgz", + "integrity": "sha512-vZZio48k7ON0fVS3CUgFatWHoKbbLTK/rT7pzpJ4Bjp5JjkZeasRfrS9wsBdDJK2cJLHMckXZdzPSSr1B8a4oQ==", "funding": [ { "type": "GitHub Sponsors", @@ -11107,16 +10981,15 @@ "url": "https://opencollective.com/unified" } ], - "license": "MIT", "dependencies": { - "micromark-util-chunked": "^1.0.0", - "micromark-util-types": "^1.0.0" + "micromark-util-chunked": "^2.0.0", + "micromark-util-types": "^2.0.0" } }, "node_modules/micromark-util-decode-numeric-character-reference": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/micromark-util-decode-numeric-character-reference/-/micromark-util-decode-numeric-character-reference-1.1.0.tgz", - "integrity": "sha512-m9V0ExGv0jB1OT21mrWcuf4QhP46pH1KkfWy9ZEezqHKAxkj4mPCy3nIH1rkbdMlChLHX531eOrymlwyZIf2iw==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-util-decode-numeric-character-reference/-/micromark-util-decode-numeric-character-reference-2.0.1.tgz", + "integrity": "sha512-bmkNc7z8Wn6kgjZmVHOX3SowGmVdhYS7yBpMnuMnPzDq/6xwVA604DuOXMZTO1lvq01g+Adfa0pE2UKGlxL1XQ==", "funding": [ { "type": "GitHub Sponsors", @@ -11127,15 +11000,14 @@ "url": "https://opencollective.com/unified" } ], - "license": "MIT", "dependencies": { - "micromark-util-symbol": "^1.0.0" + "micromark-util-symbol": "^2.0.0" } }, "node_modules/micromark-util-decode-string": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/micromark-util-decode-string/-/micromark-util-decode-string-1.1.0.tgz", - "integrity": "sha512-YphLGCK8gM1tG1bd54azwyrQRjCFcmgj2S2GoJDNnh4vYtnL38JS8M4gpxzOPNyHdNEpheyWXCTnnTDY3N+NVQ==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-decode-string/-/micromark-util-decode-string-2.0.0.tgz", + "integrity": "sha512-r4Sc6leeUTn3P6gk20aFMj2ntPwn6qpDZqWvYmAG6NgvFTIlj4WtrAudLi65qYoaGdXYViXYw2pkmn7QnIFasA==", "funding": [ { "type": "GitHub Sponsors", @@ -11146,18 +11018,17 @@ "url": "https://opencollective.com/unified" } ], - "license": "MIT", "dependencies": { "decode-named-character-reference": "^1.0.0", - "micromark-util-character": "^1.0.0", - "micromark-util-decode-numeric-character-reference": "^1.0.0", - "micromark-util-symbol": "^1.0.0" + "micromark-util-character": "^2.0.0", + "micromark-util-decode-numeric-character-reference": "^2.0.0", + "micromark-util-symbol": "^2.0.0" } }, "node_modules/micromark-util-encode": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/micromark-util-encode/-/micromark-util-encode-1.1.0.tgz", - "integrity": "sha512-EuEzTWSTAj9PA5GOAs992GzNh2dGQO52UvAbtSOMvXTxv3Criqb6IOzJUBCmEqrrXSblJIJBbFFv6zPxpreiJw==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-encode/-/micromark-util-encode-2.0.0.tgz", + "integrity": "sha512-pS+ROfCXAGLWCOc8egcBvT0kf27GoWMqtdarNfDcjb6YLuV5cM3ioG45Ys2qOVqeqSbjaKg72vU+Wby3eddPsA==", "funding": [ { "type": "GitHub Sponsors", @@ -11167,13 +11038,12 @@ "type": "OpenCollective", "url": "https://opencollective.com/unified" } - ], - "license": "MIT" + ] }, "node_modules/micromark-util-events-to-acorn": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/micromark-util-events-to-acorn/-/micromark-util-events-to-acorn-1.2.3.tgz", - "integrity": "sha512-ij4X7Wuc4fED6UoLWkmo0xJQhsktfNh1J0m8g4PbIMPlx+ek/4YdW5mvbye8z/aZvAPUoxgXHrwVlXAPKMRp1w==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/micromark-util-events-to-acorn/-/micromark-util-events-to-acorn-2.0.2.tgz", + "integrity": "sha512-Fk+xmBrOv9QZnEDguL9OI9/NQQp6Hz4FuQ4YmCb/5V7+9eAh1s6AYSvL20kHkD67YIg7EpE54TiSlcsf3vyZgA==", "funding": [ { "type": "GitHub Sponsors", @@ -11184,36 +11054,26 @@ "url": "https://opencollective.com/unified" } ], - "license": "MIT", "dependencies": { "@types/acorn": "^4.0.0", "@types/estree": "^1.0.0", - "@types/unist": "^2.0.0", - "estree-util-visit": "^1.0.0", - "micromark-util-symbol": "^1.0.0", - "micromark-util-types": "^1.0.0", - "uvu": "^0.5.0", - "vfile-message": "^3.0.0" + "@types/unist": "^3.0.0", + "devlop": "^1.0.0", + "estree-util-visit": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0", + "vfile-message": "^4.0.0" } }, - "node_modules/micromark-util-events-to-acorn/node_modules/vfile-message": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-3.1.4.tgz", - "integrity": "sha512-fa0Z6P8HUrQN4BZaX05SIVXic+7kE3b05PWAtPuYP9QLHsLKYR7/AlLW3NtOrpXRLeawpDLMsVkmk5DG0NXgWw==", - "license": "MIT", - "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-stringify-position": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } + "node_modules/micromark-util-events-to-acorn/node_modules/@types/unist": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", + "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==" }, "node_modules/micromark-util-html-tag-name": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/micromark-util-html-tag-name/-/micromark-util-html-tag-name-1.2.0.tgz", - "integrity": "sha512-VTQzcuQgFUD7yYztuQFKXT49KghjtETQ+Wv/zUjGSGBioZnkA4P1XXZPT1FHeJA6RwRXSF47yvJ1tsJdoxwO+Q==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-html-tag-name/-/micromark-util-html-tag-name-2.0.0.tgz", + "integrity": "sha512-xNn4Pqkj2puRhKdKTm8t1YHC/BAjx6CEwRFXntTaRf/x16aqka6ouVoutm+QdkISTlT7e2zU7U4ZdlDLJd2Mcw==", "funding": [ { "type": "GitHub Sponsors", @@ -11223,13 +11083,12 @@ "type": "OpenCollective", "url": "https://opencollective.com/unified" } - ], - "license": "MIT" + ] }, "node_modules/micromark-util-normalize-identifier": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/micromark-util-normalize-identifier/-/micromark-util-normalize-identifier-1.1.0.tgz", - "integrity": "sha512-N+w5vhqrBihhjdpM8+5Xsxy71QWqGn7HYNUvch71iV2PM7+E3uWGox1Qp90loa1ephtCxG2ftRV/Conitc6P2Q==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-normalize-identifier/-/micromark-util-normalize-identifier-2.0.0.tgz", + "integrity": "sha512-2xhYT0sfo85FMrUPtHcPo2rrp1lwbDEEzpx7jiH2xXJLqBuy4H0GgXk5ToU8IEwoROtXuL8ND0ttVa4rNqYK3w==", "funding": [ { "type": "GitHub Sponsors", @@ -11240,15 +11099,14 @@ "url": "https://opencollective.com/unified" } ], - "license": "MIT", "dependencies": { - "micromark-util-symbol": "^1.0.0" + "micromark-util-symbol": "^2.0.0" } }, "node_modules/micromark-util-resolve-all": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/micromark-util-resolve-all/-/micromark-util-resolve-all-1.1.0.tgz", - "integrity": "sha512-b/G6BTMSg+bX+xVCshPTPyAu2tmA0E4X98NSR7eIbeC6ycCqCeE7wjfDIgzEbkzdEVJXRtOG4FbEm/uGbCRouA==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-resolve-all/-/micromark-util-resolve-all-2.0.0.tgz", + "integrity": "sha512-6KU6qO7DZ7GJkaCgwBNtplXCvGkJToU86ybBAUdavvgsCiG8lSSvYxr9MhwmQ+udpzywHsl4RpGJsYWG1pDOcA==", "funding": [ { "type": "GitHub Sponsors", @@ -11259,15 +11117,14 @@ "url": "https://opencollective.com/unified" } ], - "license": "MIT", "dependencies": { - "micromark-util-types": "^1.0.0" + "micromark-util-types": "^2.0.0" } }, "node_modules/micromark-util-sanitize-uri": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-1.2.0.tgz", - "integrity": "sha512-QO4GXv0XZfWey4pYFndLUKEAktKkG5kZTdUNaTAkzbuJxn2tNBOr+QtxR2XpWaMhbImT2dPzyLrPXLlPhph34A==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-2.0.0.tgz", + "integrity": "sha512-WhYv5UEcZrbAtlsnPuChHUAsu/iBPOVaEVsntLBIdpibO0ddy8OzavZz3iL2xVvBZOpolujSliP65Kq0/7KIYw==", "funding": [ { "type": "GitHub Sponsors", @@ -11278,17 +11135,16 @@ "url": "https://opencollective.com/unified" } ], - "license": "MIT", "dependencies": { - "micromark-util-character": "^1.0.0", - "micromark-util-encode": "^1.0.0", - "micromark-util-symbol": "^1.0.0" + "micromark-util-character": "^2.0.0", + "micromark-util-encode": "^2.0.0", + "micromark-util-symbol": "^2.0.0" } }, "node_modules/micromark-util-subtokenize": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/micromark-util-subtokenize/-/micromark-util-subtokenize-1.1.0.tgz", - "integrity": "sha512-kUQHyzRoxvZO2PuLzMt2P/dwVsTiivCK8icYTeR+3WgbuPqfHgPPy7nFKbeqRivBvn/3N3GBiNC+JRTMSxEC7A==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-util-subtokenize/-/micromark-util-subtokenize-2.0.1.tgz", + "integrity": "sha512-jZNtiFl/1aY73yS3UGQkutD0UbhTt68qnRpw2Pifmz5wV9h8gOVsN70v+Lq/f1rKaU/W8pxRe8y8Q9FX1AOe1Q==", "funding": [ { "type": "GitHub Sponsors", @@ -11299,18 +11155,17 @@ "url": "https://opencollective.com/unified" } ], - "license": "MIT", "dependencies": { - "micromark-util-chunked": "^1.0.0", - "micromark-util-symbol": "^1.0.0", - "micromark-util-types": "^1.0.0", - "uvu": "^0.5.0" + "devlop": "^1.0.0", + "micromark-util-chunked": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" } }, "node_modules/micromark-util-symbol": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-1.1.0.tgz", - "integrity": "sha512-uEjpEYY6KMs1g7QfJ2eX1SQEV+ZT4rUD3UcF6l57acZvLNK7PBZL+ty82Z1qhK1/yXIY4bdx04FKMgR0g4IAag==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-2.0.0.tgz", + "integrity": "sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw==", "funding": [ { "type": "GitHub Sponsors", @@ -11320,13 +11175,12 @@ "type": "OpenCollective", "url": "https://opencollective.com/unified" } - ], - "license": "MIT" + ] }, "node_modules/micromark-util-types": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-1.1.0.tgz", - "integrity": "sha512-ukRBgie8TIAcacscVHSiddHjO4k/q3pnedmzMQ4iwDcK0FtFCohKOlFbaOL/mPgfnPsL3C1ZyxJa4sbWrBl3jg==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-2.0.0.tgz", + "integrity": "sha512-oNh6S2WMHWRZrmutsRmDDfkzKtxF+bc2VxLC9dvtrDIRFln627VsFP6fLMgTryGDljgLPjkrzQSDcPrjPyDJ5w==", "funding": [ { "type": "GitHub Sponsors", @@ -11336,8 +11190,7 @@ "type": "OpenCollective", "url": "https://opencollective.com/unified" } - ], - "license": "MIT" + ] }, "node_modules/micromatch": { "version": "4.0.8", @@ -11426,6 +11279,11 @@ "node": ">=16 || 14 >=14.17" } }, + "node_modules/mj-context-menu": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/mj-context-menu/-/mj-context-menu-0.6.1.tgz", + "integrity": "sha512-7NO5s6n10TIV96d4g2uDpG7ZDpIhMh0QNfGdJw/W47JswFcosz457wqz/b5sAKvl12sxINGFCn80NZHKwxQEXA==" + }, "node_modules/mkdirp": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", @@ -11439,6 +11297,17 @@ "node": ">=10" } }, + "node_modules/mlly": { + "version": "1.7.2", + "resolved": "https://registry.npmjs.org/mlly/-/mlly-1.7.2.tgz", + "integrity": "sha512-tN3dvVHYVz4DhSXinXIk7u9syPYaJvio118uomkovAtWBT+RdbP6Lfh/5Lvo519YMmwBafwlh20IPTXIStscpA==", + "dependencies": { + "acorn": "^8.12.1", + "pathe": "^1.1.2", + "pkg-types": "^1.2.0", + "ufo": "^1.5.4" + } + }, "node_modules/module-details-from-path": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/module-details-from-path/-/module-details-from-path-1.0.3.tgz", @@ -11592,115 +11461,81 @@ } } }, - "node_modules/next-mdx-remote": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/next-mdx-remote/-/next-mdx-remote-4.4.1.tgz", - "integrity": "sha512-1BvyXaIou6xy3XoNF4yaMZUCb6vD2GTAa5ciOa6WoO+gAUTYsb1K4rI/HSC2ogAWLrb/7VSV52skz07vOzmqIQ==", - "license": "MPL-2.0", - "dependencies": { - "@mdx-js/mdx": "^2.2.1", - "@mdx-js/react": "^2.2.1", - "vfile": "^5.3.0", - "vfile-matter": "^3.0.1" - }, - "engines": { - "node": ">=14", - "npm": ">=7" - }, - "peerDependencies": { - "react": ">=16.x <=18.x", - "react-dom": ">=16.x <=18.x" - } - }, - "node_modules/next-seo": { - "version": "6.6.0", - "resolved": "https://registry.npmjs.org/next-seo/-/next-seo-6.6.0.tgz", - "integrity": "sha512-0VSted/W6XNtgAtH3D+BZrMLLudqfm0D5DYNJRXHcDgan/1ZF1tDFIsWrmvQlYngALyphPfZ3ZdOqlKpKdvG6w==", - "license": "MIT", - "peerDependencies": { - "next": "^8.1.1-canary.54 || >=9.0.0", - "react": ">=16.0.0", - "react-dom": ">=16.0.0" - } - }, "node_modules/next-themes": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/next-themes/-/next-themes-0.2.1.tgz", - "integrity": "sha512-B+AKNfYNIzh0vqQQKqQItTS8evEouKD7H5Hj3kmuPERwddR2TxvDSFZuTj6T7Jfn1oyeUyJMydPl1Bkxkh0W7A==", - "license": "MIT", + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/next-themes/-/next-themes-0.3.0.tgz", + "integrity": "sha512-/QHIrsYpd6Kfk7xakK4svpDI5mmXP0gfvCoJdGpZQ2TOrQZmsW0QxjaiLn8wbIKjtm4BTSqLoix4lxYYOnLJ/w==", "peerDependencies": { - "next": "*", - "react": "*", - "react-dom": "*" + "react": "^16.8 || ^17 || ^18", + "react-dom": "^16.8 || ^17 || ^18" } }, "node_modules/nextra": { - "version": "2.13.4", - "resolved": "https://registry.npmjs.org/nextra/-/nextra-2.13.4.tgz", - "integrity": "sha512-7of2rSBxuUa3+lbMmZwG9cqgftcoNOVQLTT6Rxf3EhBR9t1EI7b43dted8YoqSNaigdE3j1CoyNkX8N/ZzlEpw==", - "license": "MIT", + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/nextra/-/nextra-3.0.7.tgz", + "integrity": "sha512-DzDS+hin8Jaqf6a4W/f4+qRNr1wdnzpbdc5szIIcck7g0BC4PX3ritwiH11YeAVGU1TFITnuSlMmu3DhC4aLlQ==", "dependencies": { - "@headlessui/react": "^1.7.17", - "@mdx-js/mdx": "^2.3.0", - "@mdx-js/react": "^2.3.0", + "@headlessui/react": "^2.1.2", + "@mdx-js/mdx": "^3.0.0", + "@mdx-js/react": "^3.0.0", "@napi-rs/simple-git": "^0.1.9", - "@theguild/remark-mermaid": "^0.0.5", - "@theguild/remark-npm2yarn": "^0.2.0", + "@shikijs/twoslash": "^1.0.0", + "@theguild/remark-mermaid": "^0.1.2", + "@theguild/remark-npm2yarn": "^0.3.2", + "better-react-mathjax": "^2.0.3", "clsx": "^2.0.0", + "estree-util-to-js": "^2.0.0", + "estree-util-value-to-estree": "^3.0.1", "github-slugger": "^2.0.0", "graceful-fs": "^4.2.11", "gray-matter": "^4.0.3", + "hast-util-to-estree": "^3.1.0", "katex": "^0.16.9", - "lodash.get": "^4.4.2", - "next-mdx-remote": "^4.2.1", - "p-limit": "^3.1.0", + "p-limit": "^6.0.0", "rehype-katex": "^7.0.0", - "rehype-pretty-code": "0.9.11", + "rehype-pretty-code": "0.14.0", "rehype-raw": "^7.0.0", - "remark-gfm": "^3.0.1", - "remark-math": "^5.1.1", + "remark-frontmatter": "^5.0.0", + "remark-gfm": "^4.0.0", + "remark-math": "^6.0.0", "remark-reading-time": "^2.0.1", - "shiki": "^0.14.3", - "slash": "^3.0.0", + "remark-smartypants": "^3.0.0", + "shiki": "^1.0.0", + "slash": "^5.1.0", "title": "^3.5.3", "unist-util-remove": "^4.0.0", "unist-util-visit": "^5.0.0", - "zod": "^3.22.3" + "yaml": "^2.3.2", + "zod": "^3.22.3", + "zod-validation-error": "^3.0.0" }, "engines": { - "node": ">=16" + "node": ">=18" }, "peerDependencies": { - "next": ">=9.5.3", - "react": ">=16.13.1", - "react-dom": ">=16.13.1" + "next": ">=13", + "react": ">=18", + "react-dom": ">=18" } }, "node_modules/nextra-theme-docs": { - "version": "2.13.4", - "resolved": "https://registry.npmjs.org/nextra-theme-docs/-/nextra-theme-docs-2.13.4.tgz", - "integrity": "sha512-2XOoMfwBCTYBt8ds4ZHftt9Wyf2XsykiNo02eir/XEYB+sGeUoE77kzqfidjEOKCSzOHYbK9BDMcg2+B/2vYRw==", - "license": "MIT", + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/nextra-theme-docs/-/nextra-theme-docs-3.0.7.tgz", + "integrity": "sha512-qh3Df6EHbJUK7Z7KBwtXs949Tz+heyAfC+Vu/jxw/guRHW0gTEFSdl3+9eCwaWmjJq9KGly9QOjgi8fcgOy0UA==", "dependencies": { - "@headlessui/react": "^1.7.17", - "@popperjs/core": "^2.11.8", + "@headlessui/react": "^2.1.2", "clsx": "^2.0.0", "escape-string-regexp": "^5.0.0", - "flexsearch": "^0.7.31", - "focus-visible": "^5.2.0", - "git-url-parse": "^13.1.0", - "intersection-observer": "^0.12.2", - "match-sorter": "^6.3.1", - "next-seo": "^6.0.0", - "next-themes": "^0.2.1", + "flexsearch": "^0.7.43", + "next-themes": "^0.3.0", "scroll-into-view-if-needed": "^3.1.0", "zod": "^3.22.3" }, "peerDependencies": { - "next": ">=9.5.3", - "nextra": "2.13.4", - "react": ">=16.13.1", - "react-dom": ">=16.13.1" + "next": ">=13", + "nextra": "3.0.7", + "react": ">=18", + "react-dom": ">=18" } }, "node_modules/nextra-theme-docs/node_modules/escape-string-regexp": { @@ -11715,21 +11550,65 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/nextra/node_modules/estree-util-value-to-estree": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/estree-util-value-to-estree/-/estree-util-value-to-estree-3.1.2.tgz", + "integrity": "sha512-S0gW2+XZkmsx00tU2uJ4L9hUT7IFabbml9pHh2WQqFmAbxit++YGZne0sKJbNwkj9Wvg9E4uqWl4nCIFQMmfag==", + "dependencies": { + "@types/estree": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/remcohaszing" + } + }, "node_modules/nextra/node_modules/p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "license": "MIT", + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-6.1.0.tgz", + "integrity": "sha512-H0jc0q1vOzlEk0TqAKXKZxdl7kX3OFUzCnNVUnq5Pc3DGo0kpeaMuPqxQn235HibwBEb0/pm9dgKTjXy66fBkg==", "dependencies": { - "yocto-queue": "^0.1.0" + "yocto-queue": "^1.1.1" }, "engines": { - "node": ">=10" + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/nextra/node_modules/slash": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-5.1.0.tgz", + "integrity": "sha512-ZA6oR3T/pEyuqwMgAKT0/hAv8oAXckzbkmR0UkUosQ+Mc4RxGoJkRmwHgHufaenlyAgE1Mxgpdcrf75y6XcnDg==", + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/nextra/node_modules/yocto-queue": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.1.1.tgz", + "integrity": "sha512-b4JR1PFR10y1mKjhHY9LaGo6tmrgjit7hxVIeAmyMw3jegXR4dhYqLaQF5zMXZxY7tLpMyJeLjr1C4rLmkVe8g==", + "engines": { + "node": ">=12.20" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/nlcst-to-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/nlcst-to-string/-/nlcst-to-string-4.0.0.tgz", + "integrity": "sha512-YKLBCcUYKAg0FNlOBT6aI91qFmSiFKiluk655WzPF+DDMA02qIyy8uiRqI8QXtcFpEvll12LpL5MXqEmAZ+dcA==", + "dependencies": { + "@types/nlcst": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, "node_modules/node-domexception": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/node-domexception/-/node-domexception-1.0.0.tgz", @@ -11778,12 +11657,6 @@ "dev": true, "license": "MIT" }, - "node_modules/non-layered-tidy-tree-layout": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/non-layered-tidy-tree-layout/-/non-layered-tidy-tree-layout-2.0.2.tgz", - "integrity": "sha512-gkXMxRzUH+PB0ax9dUN0yYF0S25BqeAYqhgMaLUFmpXLEk7Fcu8f4emJuOAY0V8kjDICxROIKsTAKsV/v355xw==", - "license": "MIT" - }, "node_modules/normalize-package-data": { "version": "2.5.0", "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", @@ -11839,10 +11712,9 @@ } }, "node_modules/npm-to-yarn": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/npm-to-yarn/-/npm-to-yarn-2.2.1.tgz", - "integrity": "sha512-O/j/ROyX0KGLG7O6Ieut/seQ0oiTpHF2tXAcFbpdTLQFiaNtkyTXXocM1fwpaa60dg1qpWj0nHlbNhx6qwuENQ==", - "license": "MIT", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/npm-to-yarn/-/npm-to-yarn-3.0.0.tgz", + "integrity": "sha512-76YnmsbfrYp0tMsWxM0RNX0Vs+x8JxpJGu6B/jDn4lW8+laiTcKmKi9MeMh4UikO4RkJ1oqURoDy9bXJmMXS6A==", "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, @@ -12041,6 +11913,17 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/oniguruma-to-js": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/oniguruma-to-js/-/oniguruma-to-js-0.4.3.tgz", + "integrity": "sha512-X0jWUcAlxORhOqqBREgPMgnshB7ZGYszBNspP+tS9hPD3l13CdaXcHbgImoHUHlrvGx/7AvFEkTRhAGYh+jzjQ==", + "dependencies": { + "regex": "^4.3.2" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, "node_modules/openai": { "version": "4.61.1", "resolved": "https://registry.npmjs.org/openai/-/openai-4.61.1.tgz", @@ -12257,7 +12140,6 @@ "version": "4.0.1", "resolved": "https://registry.npmjs.org/parse-entities/-/parse-entities-4.0.1.tgz", "integrity": "sha512-SWzvYcSJh4d/SGLIOQfZ/CoNv6BTlI6YEQ7Nj82oDVnRpwe/Z/F1EMx42x3JAOwGBlCjeCH0BRJQbQ/opHL17w==", - "license": "MIT", "dependencies": { "@types/unist": "^2.0.0", "character-entities": "^2.0.0", @@ -12292,29 +12174,32 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/parse-numeric-range": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/parse-numeric-range/-/parse-numeric-range-1.3.0.tgz", - "integrity": "sha512-twN+njEipszzlMJd4ONUYgSfZPDxgHhT9Ahed5uTigpQn90FggW4SA/AIPq/6a149fTbE9qBEcSwE3FAEp6wQQ==", - "license": "ISC" - }, - "node_modules/parse-path": { + "node_modules/parse-latin": { "version": "7.0.0", - "resolved": "https://registry.npmjs.org/parse-path/-/parse-path-7.0.0.tgz", - "integrity": "sha512-Euf9GG8WT9CdqwuWJGdf3RkUcTBArppHABkO7Lm8IzRQp0e2r/kkFnmhu4TSK30Wcu5rVAZLmfPKSBBi9tWFog==", - "license": "MIT", + "resolved": "https://registry.npmjs.org/parse-latin/-/parse-latin-7.0.0.tgz", + "integrity": "sha512-mhHgobPPua5kZ98EF4HWiH167JWBfl4pvAIXXdbaVohtK7a6YBOy56kvhCqduqyo/f3yrHFWmqmiMg/BkBkYYQ==", "dependencies": { - "protocols": "^2.0.0" + "@types/nlcst": "^2.0.0", + "@types/unist": "^3.0.0", + "nlcst-to-string": "^4.0.0", + "unist-util-modify-children": "^4.0.0", + "unist-util-visit-children": "^3.0.0", + "vfile": "^6.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/parse-url": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/parse-url/-/parse-url-8.1.0.tgz", - "integrity": "sha512-xDvOoLU5XRrcOZvnI6b8zA6n9O9ejNk/GExuz1yBuWUGn9KA97GI6HTs6u02wKara1CeVmZhH+0TZFdWScR89w==", - "license": "MIT", - "dependencies": { - "parse-path": "^7.0.0" - } + "node_modules/parse-latin/node_modules/@types/unist": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", + "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==" + }, + "node_modules/parse-numeric-range": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/parse-numeric-range/-/parse-numeric-range-1.3.0.tgz", + "integrity": "sha512-twN+njEipszzlMJd4ONUYgSfZPDxgHhT9Ahed5uTigpQn90FggW4SA/AIPq/6a149fTbE9qBEcSwE3FAEp6wQQ==" }, "node_modules/parse5": { "version": "7.1.2", @@ -12328,6 +12213,11 @@ "url": "https://github.com/inikulin/parse5?sponsor=1" } }, + "node_modules/path-data-parser": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/path-data-parser/-/path-data-parser-0.1.0.tgz", + "integrity": "sha512-NOnmBpt5Y2RWbuv0LMzsayp3lVylAHLPUTut412ZA3l+C4uw4ZVkQbjShYCQ8TCpUMdPapr4YjUqLYD6v68j+w==" + }, "node_modules/path-exists": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", @@ -12400,11 +12290,15 @@ "node": ">=8" } }, + "node_modules/pathe": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.2.tgz", + "integrity": "sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==" + }, "node_modules/periscopic": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/periscopic/-/periscopic-3.1.0.tgz", "integrity": "sha512-vKiQ8RRtkl9P+r/+oefh25C3fhybptkHKCZSPlcXiJux2tJF55GnEj3BVn4A5gKfq9NWWXXrxkHBwVPUfH0opw==", - "license": "MIT", "dependencies": { "@types/estree": "^1.0.0", "estree-walker": "^3.0.0", @@ -12525,6 +12419,16 @@ "node": ">= 6" } }, + "node_modules/pkg-types": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/pkg-types/-/pkg-types-1.2.1.tgz", + "integrity": "sha512-sQoqa8alT3nHjGuTjuKgOnvjo4cljkufdtLMnO2LBP/wRwuDlo1tkaEdMxCRhyGRPacv/ztlZgDPm2b7FAmEvw==", + "dependencies": { + "confbox": "^0.1.8", + "mlly": "^1.7.2", + "pathe": "^1.1.2" + } + }, "node_modules/playwright": { "version": "1.47.2", "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.47.2.tgz", @@ -12758,6 +12662,20 @@ "dev": true, "license": "BSD-3-Clause" }, + "node_modules/points-on-curve": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/points-on-curve/-/points-on-curve-0.2.0.tgz", + "integrity": "sha512-0mYKnYYe9ZcqMCWhUjItv/oHjvgEsfKvnUTg8sAtnHr3GVy7rGkXCb6d5cSyqrWqL4k81b9CPg3urd+T7aop3A==" + }, + "node_modules/points-on-path": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/points-on-path/-/points-on-path-0.2.1.tgz", + "integrity": "sha512-25ClnWWuw7JbWZcgqY/gJ4FQWadKxGWk+3kR/7kD0tCaDtPPMj7oHu2ToLaVhfpnHrZzYby2w6tUA0eOIuUg8g==", + "dependencies": { + "path-data-parser": "0.1.0", + "points-on-curve": "0.2.0" + } + }, "node_modules/possible-typed-array-names": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.0.0.tgz", @@ -12930,12 +12848,6 @@ "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/protocols": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/protocols/-/protocols-2.0.1.tgz", - "integrity": "sha512-/XJ368cyBJ7fzLMwLKv1e4vLxOju2MNAIokcr7meSaNcVbWz/CPcW22cP04mwxOErdA5mwjA8Q6w/cdAQxVn7Q==", - "license": "MIT" - }, "node_modules/proxy-addr": { "version": "2.0.7", "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", @@ -13257,6 +13169,11 @@ "integrity": "sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==", "license": "MIT" }, + "node_modules/regex": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/regex/-/regex-4.3.3.tgz", + "integrity": "sha512-r/AadFO7owAq1QJVeZ/nq9jNS1vyZt+6t1p/E59B56Rn2GCya+gr1KSyOzNL/er+r+B7phv5jG2xU2Nz1YkmJg==" + }, "node_modules/regexp-tree": { "version": "0.1.27", "resolved": "https://registry.npmjs.org/regexp-tree/-/regexp-tree-0.1.27.tgz", @@ -13327,29 +13244,14 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/rehype-katex/node_modules/@types/hast": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", - "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==", - "license": "MIT", - "dependencies": { - "@types/unist": "*" - } - }, - "node_modules/rehype-katex/node_modules/@types/unist": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", - "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==", - "license": "MIT" - }, - "node_modules/rehype-katex/node_modules/vfile": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.3.tgz", - "integrity": "sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==", - "license": "MIT", + "node_modules/rehype-parse": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/rehype-parse/-/rehype-parse-9.0.1.tgz", + "integrity": "sha512-ksCzCD0Fgfh7trPDxr2rSylbwq9iYDkSn8TCDmEJ49ljEUBxDVCzCHv7QNzZOfODanX4+bWQ4WZqLCRWYLfhag==", "dependencies": { - "@types/unist": "^3.0.0", - "vfile-message": "^4.0.0" + "@types/hast": "^3.0.0", + "hast-util-from-html": "^2.0.0", + "unified": "^11.0.0" }, "funding": { "type": "opencollective", @@ -13357,23 +13259,22 @@ } }, "node_modules/rehype-pretty-code": { - "version": "0.9.11", - "resolved": "https://registry.npmjs.org/rehype-pretty-code/-/rehype-pretty-code-0.9.11.tgz", - "integrity": "sha512-Eq90eCYXQJISktfRZ8PPtwc5SUyH6fJcxS8XOMnHPUQZBtC6RYo67gGlley9X2nR8vlniPj0/7oCDEYHKQa/oA==", - "license": "MIT", - "workspaces": [ - "./word-highlighter-playground" - ], - "dependencies": { - "@types/hast": "^2.0.0", - "hash-obj": "^4.0.0", - "parse-numeric-range": "^1.3.0" + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/rehype-pretty-code/-/rehype-pretty-code-0.14.0.tgz", + "integrity": "sha512-hBeKF/Wkkf3zyUS8lal9RCUuhypDWLQc+h9UrP9Pav25FUm/AQAVh4m5gdvJxh4Oz+U+xKvdsV01p1LdvsZTiQ==", + "dependencies": { + "@types/hast": "^3.0.4", + "hast-util-to-string": "^3.0.0", + "parse-numeric-range": "^1.3.0", + "rehype-parse": "^9.0.0", + "unified": "^11.0.5", + "unist-util-visit": "^5.0.0" }, "engines": { - "node": ">=16" + "node": ">=18" }, "peerDependencies": { - "shiki": "*" + "shiki": "^1.3.0" } }, "node_modules/rehype-raw": { @@ -13391,29 +13292,15 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/rehype-raw/node_modules/@types/hast": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", - "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==", - "license": "MIT", - "dependencies": { - "@types/unist": "*" - } - }, - "node_modules/rehype-raw/node_modules/@types/unist": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", - "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==", - "license": "MIT" - }, - "node_modules/rehype-raw/node_modules/vfile": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.3.tgz", - "integrity": "sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==", - "license": "MIT", + "node_modules/remark-frontmatter": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/remark-frontmatter/-/remark-frontmatter-5.0.0.tgz", + "integrity": "sha512-XTFYvNASMe5iPN0719nPrdItC9aU0ssC4v14mH1BCi1u0n1gAocqcujWUrByftZTbLhRtiKRyjYTSIOcr69UVQ==", "dependencies": { - "@types/unist": "^3.0.0", - "vfile-message": "^4.0.0" + "@types/mdast": "^4.0.0", + "mdast-util-frontmatter": "^2.0.0", + "micromark-extension-frontmatter": "^2.0.0", + "unified": "^11.0.0" }, "funding": { "type": "opencollective", @@ -13421,15 +13308,16 @@ } }, "node_modules/remark-gfm": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/remark-gfm/-/remark-gfm-3.0.1.tgz", - "integrity": "sha512-lEFDoi2PICJyNrACFOfDD3JlLkuSbOa5Wd8EPt06HUdptv8Gn0bxYTdbU/XXQ3swAPkEaGxxPN9cbnMHvVu1Ig==", - "license": "MIT", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/remark-gfm/-/remark-gfm-4.0.0.tgz", + "integrity": "sha512-U92vJgBPkbw4Zfu/IiW2oTZLSL3Zpv+uI7My2eq8JxKgqraFdU8YUGicEJCEgSbeaG+QDFqIcwwfMTOEelPxuA==", "dependencies": { - "@types/mdast": "^3.0.0", - "mdast-util-gfm": "^2.0.0", - "micromark-extension-gfm": "^2.0.0", - "unified": "^10.0.0" + "@types/mdast": "^4.0.0", + "mdast-util-gfm": "^3.0.0", + "micromark-extension-gfm": "^3.0.0", + "remark-parse": "^11.0.0", + "remark-stringify": "^11.0.0", + "unified": "^11.0.0" }, "funding": { "type": "opencollective", @@ -13437,15 +13325,14 @@ } }, "node_modules/remark-math": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/remark-math/-/remark-math-5.1.1.tgz", - "integrity": "sha512-cE5T2R/xLVtfFI4cCePtiRn+e6jKMtFDR3P8V3qpv8wpKjwvHoBA4eJzvX+nVrnlNy0911bdGmuspCSwetfYHw==", - "license": "MIT", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/remark-math/-/remark-math-6.0.0.tgz", + "integrity": "sha512-MMqgnP74Igy+S3WwnhQ7kqGlEerTETXMvJhrUzDikVZ2/uogJCb+WHUg97hK9/jcfc0dkD73s3LN8zU49cTEtA==", "dependencies": { - "@types/mdast": "^3.0.0", - "mdast-util-math": "^2.0.0", - "micromark-extension-math": "^2.0.0", - "unified": "^10.0.0" + "@types/mdast": "^4.0.0", + "mdast-util-math": "^3.0.0", + "micromark-extension-math": "^3.0.0", + "unified": "^11.0.0" }, "funding": { "type": "opencollective", @@ -13453,13 +13340,12 @@ } }, "node_modules/remark-mdx": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/remark-mdx/-/remark-mdx-2.3.0.tgz", - "integrity": "sha512-g53hMkpM0I98MU266IzDFMrTD980gNF3BJnkyFcmN+dD873mQeD5rdMO3Y2X+x8umQfbSE0PcoEDl7ledSA+2g==", - "license": "MIT", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/remark-mdx/-/remark-mdx-3.0.1.tgz", + "integrity": "sha512-3Pz3yPQ5Rht2pM5R+0J2MrGoBSrzf+tJG94N+t/ilfdh8YLyyKYtidAYwTveB20BoHAcwIopOUqhcmh2F7hGYA==", "dependencies": { - "mdast-util-mdx": "^2.0.0", - "micromark-extension-mdxjs": "^1.0.0" + "mdast-util-mdx": "^3.0.0", + "micromark-extension-mdxjs": "^3.0.0" }, "funding": { "type": "opencollective", @@ -13467,14 +13353,14 @@ } }, "node_modules/remark-parse": { - "version": "10.0.2", - "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-10.0.2.tgz", - "integrity": "sha512-3ydxgHa/ZQzG8LvC7jTXccARYDcRld3VfcgIIFs7bI6vbRSxJJmzgLEIIoYKyrfhaY+ujuWaf/PJiMZXoiCXgw==", - "license": "MIT", + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-11.0.0.tgz", + "integrity": "sha512-FCxlKLNGknS5ba/1lmpYijMUzX2esxW5xQqjWxw2eHFfS2MSdaHVINFmhjo+qN1WhZhNimq0dZATN9pH0IDrpA==", "dependencies": { - "@types/mdast": "^3.0.0", - "mdast-util-from-markdown": "^1.0.0", - "unified": "^10.0.0" + "@types/mdast": "^4.0.0", + "mdast-util-from-markdown": "^2.0.0", + "micromark-util-types": "^2.0.0", + "unified": "^11.0.0" }, "funding": { "type": "opencollective", @@ -13523,76 +13409,49 @@ } }, "node_modules/remark-rehype": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/remark-rehype/-/remark-rehype-10.1.0.tgz", - "integrity": "sha512-EFmR5zppdBp0WQeDVZ/b66CWJipB2q2VLNFMabzDSGR66Z2fQii83G5gTBbgGEnEEA0QRussvrFHxk1HWGJskw==", - "license": "MIT", - "dependencies": { - "@types/hast": "^2.0.0", - "@types/mdast": "^3.0.0", - "mdast-util-to-hast": "^12.1.0", - "unified": "^10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/remark-rehype/node_modules/mdast-util-to-hast": { - "version": "12.3.0", - "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-12.3.0.tgz", - "integrity": "sha512-pits93r8PhnIoU4Vy9bjW39M2jJ6/tdHyja9rrot9uujkN7UTU9SDnE6WNJz/IGyQk3XHX6yNNtrBH6cQzm8Hw==", - "license": "MIT", + "version": "11.1.1", + "resolved": "https://registry.npmjs.org/remark-rehype/-/remark-rehype-11.1.1.tgz", + "integrity": "sha512-g/osARvjkBXb6Wo0XvAeXQohVta8i84ACbenPpoSsxTOQH/Ae0/RGP4WZgnMH5pMLpsj4FG7OHmcIcXxpza8eQ==", "dependencies": { - "@types/hast": "^2.0.0", - "@types/mdast": "^3.0.0", - "mdast-util-definitions": "^5.0.0", - "micromark-util-sanitize-uri": "^1.1.0", - "trim-lines": "^3.0.0", - "unist-util-generated": "^2.0.0", - "unist-util-position": "^4.0.0", - "unist-util-visit": "^4.0.0" + "@types/hast": "^3.0.0", + "@types/mdast": "^4.0.0", + "mdast-util-to-hast": "^13.0.0", + "unified": "^11.0.0", + "vfile": "^6.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, - "node_modules/remark-rehype/node_modules/unist-util-visit": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-4.1.2.tgz", - "integrity": "sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg==", - "license": "MIT", + "node_modules/remark-smartypants": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/remark-smartypants/-/remark-smartypants-3.0.2.tgz", + "integrity": "sha512-ILTWeOriIluwEvPjv67v7Blgrcx+LZOkAUVtKI3putuhlZm84FnqDORNXPPm+HY3NdZOMhyDwZ1E+eZB/Df5dA==", "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-is": "^5.0.0", - "unist-util-visit-parents": "^5.1.1" + "retext": "^9.0.0", + "retext-smartypants": "^6.0.0", + "unified": "^11.0.4", + "unist-util-visit": "^5.0.0" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "engines": { + "node": ">=16.0.0" } }, - "node_modules/remark-rehype/node_modules/unist-util-visit-parents": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-5.1.3.tgz", - "integrity": "sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==", - "license": "MIT", + "node_modules/remark-stringify": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/remark-stringify/-/remark-stringify-11.0.0.tgz", + "integrity": "sha512-1OSmLd3awB/t8qdoEOMazZkNsfVTeY4fTsgzcQFdXNq8ToTN4ZGwrMnlda4K6smTFKD+GRV6O48i6Z4iKgPPpw==", "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-is": "^5.0.0" + "@types/mdast": "^4.0.0", + "mdast-util-to-markdown": "^2.0.0", + "unified": "^11.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, - "node_modules/remove-accents": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/remove-accents/-/remove-accents-0.5.0.tgz", - "integrity": "sha512-8g3/Otx1eJaVD12e31UbJj1YzdtVvzH85HV7t+9MJYk/u3XmkOUJ5Ys9wQrf9PCPK8+xn4ymzqYCiZl6QWKn+A==", - "license": "MIT" - }, "node_modules/require-from-string": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", @@ -13650,15 +13509,72 @@ "dev": true, "license": "MIT", "funding": { - "url": "https://github.com/privatenumber/resolve-pkg-maps?sponsor=1" - } - }, - "node_modules/ret": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/ret/-/ret-0.5.0.tgz", - "integrity": "sha512-I1XxrZSQ+oErkRR4jYbAyEEu2I0avBvvMM5JN+6EBprOGRCs63ENqZ3vjavq8fBw2+62G5LF5XelKwuJpcvcxw==", - "engines": { - "node": ">=10" + "url": "https://github.com/privatenumber/resolve-pkg-maps?sponsor=1" + } + }, + "node_modules/ret": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/ret/-/ret-0.5.0.tgz", + "integrity": "sha512-I1XxrZSQ+oErkRR4jYbAyEEu2I0avBvvMM5JN+6EBprOGRCs63ENqZ3vjavq8fBw2+62G5LF5XelKwuJpcvcxw==", + "engines": { + "node": ">=10" + } + }, + "node_modules/retext": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/retext/-/retext-9.0.0.tgz", + "integrity": "sha512-sbMDcpHCNjvlheSgMfEcVrZko3cDzdbe1x/e7G66dFp0Ff7Mldvi2uv6JkJQzdRcvLYE8CA8Oe8siQx8ZOgTcA==", + "dependencies": { + "@types/nlcst": "^2.0.0", + "retext-latin": "^4.0.0", + "retext-stringify": "^4.0.0", + "unified": "^11.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/retext-latin": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/retext-latin/-/retext-latin-4.0.0.tgz", + "integrity": "sha512-hv9woG7Fy0M9IlRQloq/N6atV82NxLGveq+3H2WOi79dtIYWN8OaxogDm77f8YnVXJL2VD3bbqowu5E3EMhBYA==", + "dependencies": { + "@types/nlcst": "^2.0.0", + "parse-latin": "^7.0.0", + "unified": "^11.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/retext-smartypants": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/retext-smartypants/-/retext-smartypants-6.1.1.tgz", + "integrity": "sha512-onsHf34i/GzgElJgtT1K2V+31yEhWs7NJboKNxXJcmVMMPxLpgxZ9iADoMdydd6j/bHic5F/aNq0CGqElEtu2g==", + "dependencies": { + "@types/nlcst": "^2.0.0", + "nlcst-to-string": "^4.0.0", + "unist-util-visit": "^5.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/retext-stringify": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/retext-stringify/-/retext-stringify-4.0.0.tgz", + "integrity": "sha512-rtfN/0o8kL1e+78+uxPTqu1Klt0yPzKuQ2BfWwwfgIUSayyzxpM1PJzkKt4V8803uB9qSy32MvI7Xep9khTpiA==", + "dependencies": { + "@types/nlcst": "^2.0.0", + "nlcst-to-string": "^4.0.0", + "unified": "^11.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, "node_modules/reusify": { @@ -13699,8 +13615,7 @@ "node_modules/robust-predicates": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/robust-predicates/-/robust-predicates-3.0.2.tgz", - "integrity": "sha512-IXgzBWvWQwE6PrDI05OvmXUIruQTcoMDzRsOd5CDvHCVLcLHMTSYvOK5Cm46kWqlV3yAbuSpBZdJ5oP5OUoStg==", - "license": "Unlicense" + "integrity": "sha512-IXgzBWvWQwE6PrDI05OvmXUIruQTcoMDzRsOd5CDvHCVLcLHMTSYvOK5Cm46kWqlV3yAbuSpBZdJ5oP5OUoStg==" }, "node_modules/rollup": { "version": "4.21.3", @@ -13738,6 +13653,17 @@ "fsevents": "~2.3.2" } }, + "node_modules/roughjs": { + "version": "4.6.6", + "resolved": "https://registry.npmjs.org/roughjs/-/roughjs-4.6.6.tgz", + "integrity": "sha512-ZUz/69+SYpFN/g/lUlo2FXcIjRkSu3nDarreVdGGndHEBJ6cXPdKguS8JGxwj5HA5xIbVKSmLgr5b3AWxtRfvQ==", + "dependencies": { + "hachure-fill": "^0.5.2", + "path-data-parser": "^0.1.0", + "points-on-curve": "^0.2.0", + "points-on-path": "^0.2.1" + } + }, "node_modules/run-parallel": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", @@ -13785,20 +13711,7 @@ "node_modules/rw": { "version": "1.3.3", "resolved": "https://registry.npmjs.org/rw/-/rw-1.3.3.tgz", - "integrity": "sha512-PdhdWy89SiZogBLaw42zdeqtRJ//zFd2PgQavcICDUgJT5oW10QCRKbJ6bg4r0/UY2M6BWd5tkxuGFRvCkgfHQ==", - "license": "BSD-3-Clause" - }, - "node_modules/sade": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/sade/-/sade-1.8.1.tgz", - "integrity": "sha512-xal3CZX1Xlo/k4ApwCFrHVACi9fBqJ7V+mwhBsuf/1IOKbBy098Fex+Wa/5QMubw09pSZ/u8EY8PWgevJsXp1A==", - "license": "MIT", - "dependencies": { - "mri": "^1.1.0" - }, - "engines": { - "node": ">=6" - } + "integrity": "sha512-PdhdWy89SiZogBLaw42zdeqtRJ//zFd2PgQavcICDUgJT5oW10QCRKbJ6bg4r0/UY2M6BWd5tkxuGFRvCkgfHQ==" }, "node_modules/safe-array-concat": { "version": "1.1.2", @@ -13998,15 +13911,16 @@ } }, "node_modules/shiki": { - "version": "0.14.7", - "resolved": "https://registry.npmjs.org/shiki/-/shiki-0.14.7.tgz", - "integrity": "sha512-dNPAPrxSc87ua2sKJ3H5dQ/6ZaY8RNnaAqK+t0eG7p0Soi2ydiqbGOTaZCqaYvA/uZYfS1LJnemt3Q+mSfcPCg==", - "license": "MIT", + "version": "1.22.0", + "resolved": "https://registry.npmjs.org/shiki/-/shiki-1.22.0.tgz", + "integrity": "sha512-/t5LlhNs+UOKQCYBtl5ZsH/Vclz73GIqT2yQsCBygr8L/ppTdmpL4w3kPLoZJbMKVWtoG77Ue1feOjZfDxvMkw==", "dependencies": { - "ansi-sequence-parser": "^1.1.0", - "jsonc-parser": "^3.2.0", - "vscode-oniguruma": "^1.7.0", - "vscode-textmate": "^8.0.0" + "@shikijs/core": "1.22.0", + "@shikijs/engine-javascript": "1.22.0", + "@shikijs/engine-oniguruma": "1.22.0", + "@shikijs/types": "1.22.0", + "@shikijs/vscode-textmate": "^9.3.0", + "@types/hast": "^3.0.4" } }, "node_modules/shimmer": { @@ -14106,33 +14020,6 @@ "atomic-sleep": "^1.0.0" } }, - "node_modules/sort-keys": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-5.1.0.tgz", - "integrity": "sha512-aSbHV0DaBcr7u0PVHXzM6NbZNAtrr9sF6+Qfs9UUVG7Ll3jQ6hHi8F/xqIIcn2rvIVbr0v/2zyjSdwSV47AgLQ==", - "license": "MIT", - "dependencies": { - "is-plain-obj": "^4.0.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/sort-keys/node_modules/is-plain-obj": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz", - "integrity": "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==", - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/sort-object-keys": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/sort-object-keys/-/sort-object-keys-1.1.3.tgz", @@ -14220,7 +14107,6 @@ "version": "0.7.4", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", - "license": "BSD-3-Clause", "engines": { "node": ">= 8" } @@ -14377,6 +14263,27 @@ "dev": true, "license": "CC0-1.0" }, + "node_modules/speech-rule-engine": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/speech-rule-engine/-/speech-rule-engine-4.0.7.tgz", + "integrity": "sha512-sJrL3/wHzNwJRLBdf6CjJWIlxC04iYKkyXvYSVsWVOiC2DSkHmxsqOhEeMsBA9XK+CHuNcsdkbFDnoUfAsmp9g==", + "dependencies": { + "commander": "9.2.0", + "wicked-good-xpath": "1.3.0", + "xmldom-sre": "0.1.31" + }, + "bin": { + "sre": "bin/sre" + } + }, + "node_modules/speech-rule-engine/node_modules/commander": { + "version": "9.2.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-9.2.0.tgz", + "integrity": "sha512-e2i4wANQiSXgnrBlIatyHtP1odfUp0BbV5Y5nEGbxtIrStkEOAAzCUirvLBNXHLr7kwLvJl6V+4V3XV9x7Wd9w==", + "engines": { + "node": "^12.20.0 || >=14" + } + }, "node_modules/split2": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/split2/-/split2-4.2.0.tgz", @@ -14597,7 +14504,6 @@ "version": "4.0.4", "resolved": "https://registry.npmjs.org/stringify-entities/-/stringify-entities-4.0.4.tgz", "integrity": "sha512-IwfBptatlO+QCJUo19AqvrPNqlVMpW9YEL2LIVY+Rpv2qsjCGxaDLNRgeGsQWJhfItebuJhsGSLjaBbNSQ+ieg==", - "license": "MIT", "dependencies": { "character-entities-html4": "^2.0.0", "character-entities-legacy": "^3.0.0" @@ -14700,7 +14606,6 @@ "version": "0.4.4", "resolved": "https://registry.npmjs.org/style-to-object/-/style-to-object-0.4.4.tgz", "integrity": "sha512-HYNoHZa2GorYNyqiCaBgsxvcJIn7OHq6inEga+E6Ke3m5JkoqpQbnFssk4jwe+K7AhGa2fcha4wSOf1Kn01dMg==", - "license": "MIT", "dependencies": { "inline-style-parser": "0.1.1" } @@ -14731,8 +14636,7 @@ "node_modules/stylis": { "version": "4.3.4", "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.3.4.tgz", - "integrity": "sha512-osIBl6BGUmSfDkyH2mB7EFvCJntXDrLhKjHTRj/rK6xLH0yuPrHULDRQzKokSOD4VoorhtKpfcfW1GAntu8now==", - "license": "MIT" + "integrity": "sha512-osIBl6BGUmSfDkyH2mB7EFvCJntXDrLhKjHTRj/rK6xLH0yuPrHULDRQzKokSOD4VoorhtKpfcfW1GAntu8now==" }, "node_modules/sucrase": { "version": "3.35.0", @@ -14918,6 +14822,11 @@ "url": "https://www.buymeacoffee.com/systeminfo" } }, + "node_modules/tabbable": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/tabbable/-/tabbable-6.2.0.tgz", + "integrity": "sha512-Cat63mxsVJlzYvN51JmVXIgNoUokrIaT2zLclCXjRd8boZ0004U4KCs/sToJ75C6sdlByWxpYnb5Boif1VSFew==" + }, "node_modules/tapable": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", @@ -14979,6 +14888,11 @@ "real-require": "^0.2.0" } }, + "node_modules/tinyexec": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/tinyexec/-/tinyexec-0.3.0.tgz", + "integrity": "sha512-tVGE0mVJPGb0chKhqmsoosjsS+qUnJVGJpZgsHYQcGoPlG3B51R3PouqTgEGH2Dc9jjFyOqOpix6ZHNMXp1FZg==" + }, "node_modules/tinyglobby": { "version": "0.2.6", "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.6.tgz", @@ -15187,7 +15101,6 @@ "version": "2.2.0", "resolved": "https://registry.npmjs.org/trough/-/trough-2.2.0.tgz", "integrity": "sha512-tmMpK00BjZiUyVyvrBK7knerNgmgvcV/KLVyuma/SC+TQN167GrMRciANTz09+k3zW8L8t60jWO1GpfkZdjTaw==", - "license": "MIT", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" @@ -15210,7 +15123,6 @@ "version": "2.2.0", "resolved": "https://registry.npmjs.org/ts-dedent/-/ts-dedent-2.2.0.tgz", "integrity": "sha512-q5W7tVM71e2xjHZTlgfTDoPF/SmqKG5hddq9SzR49CH2hayqRKJtQ4mtRlSxKaJlR/+9rEM+mnBHf7I2/BQcpQ==", - "license": "MIT", "engines": { "node": ">=6.10" } @@ -15599,6 +15511,23 @@ "node": ">= 0.8.0" } }, + "node_modules/twoslash": { + "version": "0.2.12", + "resolved": "https://registry.npmjs.org/twoslash/-/twoslash-0.2.12.tgz", + "integrity": "sha512-tEHPASMqi7kqwfJbkk7hc/4EhlrKCSLcur+TcvYki3vhIfaRMXnXjaYFgXpoZRbT6GdprD4tGuVBEmTpUgLBsw==", + "dependencies": { + "@typescript/vfs": "^1.6.0", + "twoslash-protocol": "0.2.12" + }, + "peerDependencies": { + "typescript": "*" + } + }, + "node_modules/twoslash-protocol": { + "version": "0.2.12", + "resolved": "https://registry.npmjs.org/twoslash-protocol/-/twoslash-protocol-0.2.12.tgz", + "integrity": "sha512-5qZLXVYfZ9ABdjqbvPc4RWMr7PrpPaaDSeaYY55vl/w1j6H6kzsWK/urAEIXlzYlyrFmyz1UbwIt+AA0ck+wbg==" + }, "node_modules/tx2": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/tx2/-/tx2-1.0.5.tgz", @@ -15717,7 +15646,6 @@ "version": "5.6.2", "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.6.2.tgz", "integrity": "sha512-NW8ByodCSNCwZeghjN3o+JX5OFH0Ojg6sadjEKY4huZ52TqbJTJnDo5+Tw98lSy63NZvi4n+ez5m2u5d4PkZyw==", - "dev": true, "license": "Apache-2.0", "bin": { "tsc": "bin/tsc", @@ -15727,6 +15655,11 @@ "node": ">=14.17" } }, + "node_modules/ufo": { + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/ufo/-/ufo-1.5.4.tgz", + "integrity": "sha512-UsUk3byDzKd04EyoZ7U4DOlxQaD14JUKQl6/P7wiX4FNvUfm3XL246n9W5AmqwW5RSFJ27NAuM0iLscAOYUiGQ==" + }, "node_modules/unbox-primitive": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", @@ -15763,29 +15696,32 @@ "license": "MIT" }, "node_modules/unified": { - "version": "10.1.2", - "resolved": "https://registry.npmjs.org/unified/-/unified-10.1.2.tgz", - "integrity": "sha512-pUSWAi/RAnVy1Pif2kAoeWNBa3JVrx0MId2LASj8G+7AiHWoKZNTomq6LG326T68U7/e263X6fTdcXIy7XnF7Q==", - "license": "MIT", + "version": "11.0.5", + "resolved": "https://registry.npmjs.org/unified/-/unified-11.0.5.tgz", + "integrity": "sha512-xKvGhPWw3k84Qjh8bI3ZeJjqnyadK+GEFtazSfZv/rKeTkTjOJho6mFqh2SM96iIcZokxiOpg78GazTSg8+KHA==", "dependencies": { - "@types/unist": "^2.0.0", + "@types/unist": "^3.0.0", "bail": "^2.0.0", + "devlop": "^1.0.0", "extend": "^3.0.0", - "is-buffer": "^2.0.0", "is-plain-obj": "^4.0.0", "trough": "^2.0.0", - "vfile": "^5.0.0" + "vfile": "^6.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, + "node_modules/unified/node_modules/@types/unist": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", + "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==" + }, "node_modules/unified/node_modules/is-plain-obj": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz", "integrity": "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==", - "license": "MIT", "engines": { "node": ">=12" }, @@ -15826,16 +15762,6 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/unist-util-generated": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/unist-util-generated/-/unist-util-generated-2.0.1.tgz", - "integrity": "sha512-qF72kLmPxAw0oN2fwpWIqbXAVyEqUzDHMsbtPvOudIlUzXYFIeQIuxXQCRCFh22B7cixvU0MG7m3MW8FTq/S+A==", - "license": "MIT", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, "node_modules/unist-util-is": { "version": "5.2.1", "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-5.2.1.tgz", @@ -15849,13 +15775,30 @@ "url": "https://opencollective.com/unified" } }, + "node_modules/unist-util-modify-children": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/unist-util-modify-children/-/unist-util-modify-children-4.0.0.tgz", + "integrity": "sha512-+tdN5fGNddvsQdIzUF3Xx82CU9sMM+fA0dLgR9vOmT0oPT2jH+P1nd5lSqfCfXAw+93NhcXNY2qqvTUtE4cQkw==", + "dependencies": { + "@types/unist": "^3.0.0", + "array-iterate": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-modify-children/node_modules/@types/unist": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", + "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==" + }, "node_modules/unist-util-position": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/unist-util-position/-/unist-util-position-4.0.4.tgz", - "integrity": "sha512-kUBE91efOWfIVBo8xzh/uZQ7p9ffYRtUbMRZBNFYwf0RK8koUMx6dGUfwylLOKmaT2cs4wSW96QoYUSXAyEtpg==", - "license": "MIT", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/unist-util-position/-/unist-util-position-5.0.0.tgz", + "integrity": "sha512-fucsC7HjXvkB5R3kTCO7kUjRdrS0BJt3M/FPxmHMBOm8JQi2BsHAHFsy27E0EolP8rp0NzXsJ+jNPyDWvOJZPA==", "dependencies": { - "@types/unist": "^2.0.0" + "@types/unist": "^3.0.0" }, "funding": { "type": "opencollective", @@ -15863,18 +15806,27 @@ } }, "node_modules/unist-util-position-from-estree": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/unist-util-position-from-estree/-/unist-util-position-from-estree-1.1.2.tgz", - "integrity": "sha512-poZa0eXpS+/XpoQwGwl79UUdea4ol2ZuCYguVaJS4qzIOMDzbqz8a3erUCOmubSZkaOuGamb3tX790iwOIROww==", - "license": "MIT", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unist-util-position-from-estree/-/unist-util-position-from-estree-2.0.0.tgz", + "integrity": "sha512-KaFVRjoqLyF6YXCbVLNad/eS4+OfPQQn2yOd7zF/h5T/CSL2v8NpN6a5TPvtbXthAGw5nG+PuTtq+DdIZr+cRQ==", "dependencies": { - "@types/unist": "^2.0.0" + "@types/unist": "^3.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, + "node_modules/unist-util-position-from-estree/node_modules/@types/unist": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", + "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==" + }, + "node_modules/unist-util-position/node_modules/@types/unist": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", + "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==" + }, "node_modules/unist-util-remove": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/unist-util-remove/-/unist-util-remove-4.0.0.tgz", @@ -15930,18 +15882,22 @@ } }, "node_modules/unist-util-stringify-position": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-3.0.3.tgz", - "integrity": "sha512-k5GzIBZ/QatR8N5X2y+drfpWG8IDBzdnVj6OInRNWm1oXrzydiaAT2OQiA8DPRRZyAKb9b6I2a6PxYklZD0gKg==", - "license": "MIT", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-4.0.0.tgz", + "integrity": "sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==", "dependencies": { - "@types/unist": "^2.0.0" + "@types/unist": "^3.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, + "node_modules/unist-util-stringify-position/node_modules/@types/unist": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", + "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==" + }, "node_modules/unist-util-visit": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-5.0.0.tgz", @@ -15957,6 +15913,23 @@ "url": "https://opencollective.com/unified" } }, + "node_modules/unist-util-visit-children": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/unist-util-visit-children/-/unist-util-visit-children-3.0.0.tgz", + "integrity": "sha512-RgmdTfSBOg04sdPcpTSD1jzoNBjt9a80/ZCzp5cI9n1qPzLZWF9YdvWGN2zmTumP1HWhXKdUWexjy/Wy/lJ7tA==", + "dependencies": { + "@types/unist": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-visit-children/node_modules/@types/unist": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", + "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==" + }, "node_modules/unist-util-visit-parents": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-6.0.1.tgz", @@ -16059,22 +16032,16 @@ "punycode": "^2.1.0" } }, - "node_modules/uvu": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/uvu/-/uvu-0.5.6.tgz", - "integrity": "sha512-+g8ENReyr8YsOc6fv/NVJs2vFdHBnBNdfE49rshrTzDWOlUx4Gq7KOS2GD8eqhy2j+Ejq29+SbKH8yjkAqXqoA==", - "license": "MIT", - "dependencies": { - "dequal": "^2.0.0", - "diff": "^5.0.0", - "kleur": "^4.0.3", - "sade": "^1.7.3" - }, + "node_modules/uuid": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz", + "integrity": "sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==", + "funding": [ + "https://github.com/sponsors/broofa", + "https://github.com/sponsors/ctavan" + ], "bin": { - "uvu": "bin.js" - }, - "engines": { - "node": ">=8" + "uuid": "dist/bin/uuid" } }, "node_modules/validate-npm-package-license": { @@ -16089,15 +16056,12 @@ } }, "node_modules/vfile": { - "version": "5.3.7", - "resolved": "https://registry.npmjs.org/vfile/-/vfile-5.3.7.tgz", - "integrity": "sha512-r7qlzkgErKjobAmyNIkkSpizsFPYiUPuJb5pNW1RB4JcYVZhs4lIbVqk8XPk033CV/1z8ss5pkax8SuhGpcG8g==", - "license": "MIT", + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.3.tgz", + "integrity": "sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==", "dependencies": { - "@types/unist": "^2.0.0", - "is-buffer": "^2.0.0", - "unist-util-stringify-position": "^3.0.0", - "vfile-message": "^3.0.0" + "@types/unist": "^3.0.0", + "vfile-message": "^4.0.0" }, "funding": { "type": "opencollective", @@ -16124,53 +16088,6 @@ "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==", "license": "MIT" }, - "node_modules/vfile-location/node_modules/vfile": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.3.tgz", - "integrity": "sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==", - "license": "MIT", - "dependencies": { - "@types/unist": "^3.0.0", - "vfile-message": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/vfile-matter": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/vfile-matter/-/vfile-matter-3.0.1.tgz", - "integrity": "sha512-CAAIDwnh6ZdtrqAuxdElUqQRQDQgbbIrYtDYI8gCjXS1qQ+1XdLoK8FIZWxJwn0/I+BkSSZpar3SOgjemQz4fg==", - "license": "MIT", - "dependencies": { - "@types/js-yaml": "^4.0.0", - "is-buffer": "^2.0.0", - "js-yaml": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/vfile-matter/node_modules/argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", - "license": "Python-2.0" - }, - "node_modules/vfile-matter/node_modules/js-yaml": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", - "license": "MIT", - "dependencies": { - "argparse": "^2.0.1" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, "node_modules/vfile-message": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-4.0.2.tgz", @@ -16191,32 +16108,10 @@ "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==", "license": "MIT" }, - "node_modules/vfile-message/node_modules/unist-util-stringify-position": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-4.0.0.tgz", - "integrity": "sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==", - "license": "MIT", - "dependencies": { - "@types/unist": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/vfile/node_modules/vfile-message": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-3.1.4.tgz", - "integrity": "sha512-fa0Z6P8HUrQN4BZaX05SIVXic+7kE3b05PWAtPuYP9QLHsLKYR7/AlLW3NtOrpXRLeawpDLMsVkmk5DG0NXgWw==", - "license": "MIT", - "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-stringify-position": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } + "node_modules/vfile/node_modules/@types/unist": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", + "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==" }, "node_modules/vizion": { "version": "2.2.1", @@ -16244,17 +16139,48 @@ "lodash": "^4.17.14" } }, - "node_modules/vscode-oniguruma": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/vscode-oniguruma/-/vscode-oniguruma-1.7.0.tgz", - "integrity": "sha512-L9WMGRfrjOhgHSdOYgCt/yRMsXzLDJSL7BPrOZt73gU0iWO4mpqzqQzOz5srxqTvMBaR0XZTSrVWo4j55Rc6cA==", - "license": "MIT" + "node_modules/vscode-jsonrpc": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/vscode-jsonrpc/-/vscode-jsonrpc-8.2.0.tgz", + "integrity": "sha512-C+r0eKJUIfiDIfwJhria30+TYWPtuHJXHtI7J0YlOmKAo7ogxP20T0zxB7HZQIFhIyvoBPwWskjxrvAtfjyZfA==", + "engines": { + "node": ">=14.0.0" + } }, - "node_modules/vscode-textmate": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/vscode-textmate/-/vscode-textmate-8.0.0.tgz", - "integrity": "sha512-AFbieoL7a5LMqcnOF04ji+rpXadgOXnZsxQr//r83kLPr7biP7am3g9zbaZIaBGwBRWeSvoMD4mgPdX3e4NWBg==", - "license": "MIT" + "node_modules/vscode-languageserver": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/vscode-languageserver/-/vscode-languageserver-9.0.1.tgz", + "integrity": "sha512-woByF3PDpkHFUreUa7Hos7+pUWdeWMXRd26+ZX2A8cFx6v/JPTtd4/uN0/jB6XQHYaOlHbio03NTHCqrgG5n7g==", + "dependencies": { + "vscode-languageserver-protocol": "3.17.5" + }, + "bin": { + "installServerIntoExtension": "bin/installServerIntoExtension" + } + }, + "node_modules/vscode-languageserver-protocol": { + "version": "3.17.5", + "resolved": "https://registry.npmjs.org/vscode-languageserver-protocol/-/vscode-languageserver-protocol-3.17.5.tgz", + "integrity": "sha512-mb1bvRJN8SVznADSGWM9u/b07H7Ecg0I3OgXDuLdn307rl/J3A9YD6/eYOssqhecL27hK1IPZAsaqh00i/Jljg==", + "dependencies": { + "vscode-jsonrpc": "8.2.0", + "vscode-languageserver-types": "3.17.5" + } + }, + "node_modules/vscode-languageserver-textdocument": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/vscode-languageserver-textdocument/-/vscode-languageserver-textdocument-1.0.12.tgz", + "integrity": "sha512-cxWNPesCnQCcMPeenjKKsOCKQZ/L6Tv19DTRIGuLWe32lyzWhihGVJ/rcckZXJxfdKCFvRLS3fpBIsV/ZGX4zA==" + }, + "node_modules/vscode-languageserver-types": { + "version": "3.17.5", + "resolved": "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.17.5.tgz", + "integrity": "sha512-Ld1VelNuX9pdF39h2Hgaeb5hEZM2Z3jUrrMgWQAu82jMtZp7p3vJT3BzToKtZI7NgQssZje5o0zryOrhQvzQAg==" + }, + "node_modules/vscode-uri": { + "version": "3.0.8", + "resolved": "https://registry.npmjs.org/vscode-uri/-/vscode-uri-3.0.8.tgz", + "integrity": "sha512-AyFQ0EVmsOZOlAnxoFOGOq1SQDWAB7C6aqMGS23svWAllfOaxbuFvcT8D1i8z3Gyn8fraVeZNNmN6e9bxxXkKw==" }, "node_modules/web-namespaces": { "version": "2.0.1", @@ -16276,12 +16202,6 @@ "node": ">= 14" } }, - "node_modules/web-worker": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/web-worker/-/web-worker-1.3.0.tgz", - "integrity": "sha512-BSR9wyRsy/KOValMgd5kMyr3JzpdeoR9KVId8u5GVlTTAtNChlsE4yTxeY7zMdNSyOmoKBv8NH2qeRY9Tg+IaA==", - "license": "Apache-2.0" - }, "node_modules/webidl-conversions": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", @@ -16399,6 +16319,11 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/wicked-good-xpath": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/wicked-good-xpath/-/wicked-good-xpath-1.3.0.tgz", + "integrity": "sha512-Gd9+TUn5nXdwj/hFsPVx5cuHHiF5Bwuc30jZ4+ronF1qHK5O7HD0sgmXWSEgwKquT3ClLoKPVbO6qGwVwLzvAw==" + }, "node_modules/word-wrap": { "version": "1.2.5", "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", @@ -16539,16 +16464,36 @@ } } }, + "node_modules/xmldom-sre": { + "version": "0.1.31", + "resolved": "https://registry.npmjs.org/xmldom-sre/-/xmldom-sre-0.1.31.tgz", + "integrity": "sha512-f9s+fUkX04BxQf+7mMWAp5zk61pciie+fFLC9hX9UVvCeJQfNHRHXpeo5MPcR0EUf57PYLdt+ZO4f3Ipk2oZUw==", + "engines": { + "node": ">=0.1" + } + }, "node_modules/yallist": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", "license": "ISC" }, + "node_modules/yaml": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.5.1.tgz", + "integrity": "sha512-bLQOjaX/ADgQ20isPJRvF0iRUHIxVhYvr53Of7wGcWlO2jvtUlH5m87DsmulFVxRpNLOnI4tB6p/oh8D7kpn9Q==", + "bin": { + "yaml": "bin.mjs" + }, + "engines": { + "node": ">= 14" + } + }, "node_modules/yocto-queue": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "dev": true, "license": "MIT", "engines": { "node": ">=10" @@ -16566,6 +16511,17 @@ "url": "https://github.com/sponsors/colinhacks" } }, + "node_modules/zod-validation-error": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/zod-validation-error/-/zod-validation-error-3.4.0.tgz", + "integrity": "sha512-ZOPR9SVY6Pb2qqO5XHt+MkkTRxGXb4EVtnjc9JpXUOtUB1T9Ru7mZOT361AN3MsetVe7R0a1KZshJDZdgp9miQ==", + "engines": { + "node": ">=18.0.0" + }, + "peerDependencies": { + "zod": "^3.18.0" + } + }, "node_modules/zwitch": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/zwitch/-/zwitch-2.0.4.tgz", From 3c240812008e2389546083a90d41c3e4ba1fce23 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 9 Oct 2024 01:11:16 +0300 Subject: [PATCH 409/458] Bump @playwright/test from 1.47.2 to 1.48.0 (#800) Bumps [@playwright/test](https://github.com/microsoft/playwright) from 1.47.2 to 1.48.0. - [Release notes](https://github.com/microsoft/playwright/releases) - [Commits](https://github.com/microsoft/playwright/compare/v1.47.2...v1.48.0) --- updated-dependencies: - dependency-name: "@playwright/test" dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- package-lock.json | 24 ++++++++++++------------ 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index b756f0df..61e66a03 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -26,7 +26,7 @@ }, "devDependencies": { "@next/eslint-plugin-next": "14.2.14", - "@playwright/test": "1.47.2", + "@playwright/test": "1.48.0", "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.12", diff --git a/package-lock.json b/package-lock.json index cb0aa11c..cec05a3e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -46,7 +46,7 @@ }, "devDependencies": { "@next/eslint-plugin-next": "14.2.14", - "@playwright/test": "1.47.2", + "@playwright/test": "1.48.0", "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.12", @@ -2651,12 +2651,12 @@ } }, "node_modules/@playwright/test": { - "version": "1.47.2", - "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.47.2.tgz", - "integrity": "sha512-jTXRsoSPONAs8Za9QEQdyjFn+0ZQFjCiIztAIF6bi1HqhBzG9Ma7g1WotyiGqFSBRZjIEqMdT8RUlbk1QVhzCQ==", + "version": "1.48.0", + "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.48.0.tgz", + "integrity": "sha512-W5lhqPUVPqhtc/ySvZI5Q8X2ztBOUgZ8LbAFy0JQgrXZs2xaILrUcNO3rQjwbLPfGK13+rZsDa1FpG+tqYkT5w==", "devOptional": true, "dependencies": { - "playwright": "1.47.2" + "playwright": "1.48.0" }, "bin": { "playwright": "cli.js" @@ -12430,12 +12430,12 @@ } }, "node_modules/playwright": { - "version": "1.47.2", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.47.2.tgz", - "integrity": "sha512-nx1cLMmQWqmA3UsnjaaokyoUpdVaaDhJhMoxX2qj3McpjnsqFHs516QAKYhqHAgOP+oCFTEOCOAaD1RgD/RQfA==", + "version": "1.48.0", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.48.0.tgz", + "integrity": "sha512-qPqFaMEHuY/ug8o0uteYJSRfMGFikhUysk8ZvAtfKmUK3kc/6oNl/y3EczF8OFGYIi/Ex2HspMfzYArk6+XQSA==", "devOptional": true, "dependencies": { - "playwright-core": "1.47.2" + "playwright-core": "1.48.0" }, "bin": { "playwright": "cli.js" @@ -12448,9 +12448,9 @@ } }, "node_modules/playwright-core": { - "version": "1.47.2", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.47.2.tgz", - "integrity": "sha512-3JvMfF+9LJfe16l7AbSmU555PaTl2tPyQsVInqm3id16pdDfvZ8TTZ/pyzmkbDrZTQefyzU7AIHlZqQnxpqHVQ==", + "version": "1.48.0", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.48.0.tgz", + "integrity": "sha512-RBvzjM9rdpP7UUFrQzRwR8L/xR4HyC1QXMzGYTbf1vjw25/ya9NRAVnXi/0fvFopjebvyPzsmoK58xxeEOaVvA==", "devOptional": true, "bin": { "playwright-core": "cli.js" From 996cf38354596f96a0bf4b48b81ad073a9e0893b Mon Sep 17 00:00:00 2001 From: Jelte Homminga <35220102+jeltehomminga@users.noreply.github.com> Date: Wed, 9 Oct 2024 15:16:08 +0800 Subject: [PATCH 410/458] Update nesh-cache.mdx (#794) Found out this should be seconds, not milliseconds. It also influence the expireAge. So we saw with what we thought were 10 minutes in milliseconds become expire age of a week. changing 600000 to 600 to use 10 minutes fixed this issue. --- docs/cache-handler-docs/src/pages/functions/nesh-cache.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/cache-handler-docs/src/pages/functions/nesh-cache.mdx b/docs/cache-handler-docs/src/pages/functions/nesh-cache.mdx index c3ad8492..826e1cd9 100644 --- a/docs/cache-handler-docs/src/pages/functions/nesh-cache.mdx +++ b/docs/cache-handler-docs/src/pages/functions/nesh-cache.mdx @@ -16,7 +16,7 @@ This is an object that controls how the cache behaves. It can contain the follow - `tags` - An array of tags to associate with the cached result. Tags are used to revalidate the cache using the `revalidateTag` and `revalidatePath` functions. -- `revalidate` - The revalidation interval in milliseconds. Must be a positive integer or `false` to disable revalidation. Defaults to `export const revalidate = time;` in the current route. +- `revalidate` - The revalidation interval in seconds. Must be a positive integer or `false` to disable revalidation. Defaults to `export const revalidate = time;` in the current route. - `argumentsSerializer` - A function that serializes the arguments passed to the callback function. Use it to create a cache key. Defaults to `JSON.stringify(args)`. From 3cd218c07511e97e7a48a41dbec9dca76abe7c98 Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Wed, 9 Oct 2024 10:31:32 +0300 Subject: [PATCH 411/458] Fix neshCache JSDoc (#801) --- .changeset/ninety-beers-obey.md | 5 +++++ packages/cache-handler/src/functions/nesh-cache.ts | 4 ++-- 2 files changed, 7 insertions(+), 2 deletions(-) create mode 100644 .changeset/ninety-beers-obey.md diff --git a/.changeset/ninety-beers-obey.md b/.changeset/ninety-beers-obey.md new file mode 100644 index 00000000..2ed4b791 --- /dev/null +++ b/.changeset/ninety-beers-obey.md @@ -0,0 +1,5 @@ +--- +'@neshca/cache-handler': patch +--- + +Fix `neshCache` JSDocs time interval description. It was incorrectly stated in milliseconds. Now it is stated in seconds. diff --git a/packages/cache-handler/src/functions/nesh-cache.ts b/packages/cache-handler/src/functions/nesh-cache.ts index 47819ea5..5fa28afb 100644 --- a/packages/cache-handler/src/functions/nesh-cache.ts +++ b/packages/cache-handler/src/functions/nesh-cache.ts @@ -114,7 +114,7 @@ type NeshCacheOptions = { */ tags?: string[]; /** - * The revalidation interval in milliseconds. + * The revalidation interval in seconds. * Must be a positive integer or `false` to disable revalidation. * * @default revalidate // of the current route @@ -175,7 +175,7 @@ type CommonNeshCacheOptions = Omit< * @param options.tags - An array of tags to associate with the cached result. * Tags are used to revalidate the cache using the `revalidateTag` function. * - * @param options.revalidate - The revalidation interval in milliseconds. + * @param options.revalidate - The revalidation interval in seconds. * Must be a positive integer or `false` to disable revalidation. * Defaults to `export const revalidate = time;` in the current route. * From dbdc4c85a6368b0c407b3fe257097cda7ff9225a Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Wed, 9 Oct 2024 10:39:49 +0300 Subject: [PATCH 412/458] Version Packages (#802) Co-authored-by: github-actions[bot] --- .changeset/ninety-beers-obey.md | 5 ----- packages/cache-handler/CHANGELOG.md | 6 ++++++ packages/cache-handler/package.json | 2 +- 3 files changed, 7 insertions(+), 6 deletions(-) delete mode 100644 .changeset/ninety-beers-obey.md diff --git a/.changeset/ninety-beers-obey.md b/.changeset/ninety-beers-obey.md deleted file mode 100644 index 2ed4b791..00000000 --- a/.changeset/ninety-beers-obey.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@neshca/cache-handler': patch ---- - -Fix `neshCache` JSDocs time interval description. It was incorrectly stated in milliseconds. Now it is stated in seconds. diff --git a/packages/cache-handler/CHANGELOG.md b/packages/cache-handler/CHANGELOG.md index ce8d25b4..2fbf1d3a 100644 --- a/packages/cache-handler/CHANGELOG.md +++ b/packages/cache-handler/CHANGELOG.md @@ -1,5 +1,11 @@ # @neshca/cache-handler +## 1.7.4 + +### Patch Changes + +- 3cd218c: Fix `neshCache` JSDocs time interval description. It was incorrectly stated in milliseconds. Now it is stated in seconds. + ## 1.7.3 ### Patch Changes diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 116b79ea..6a29a8ea 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -1,6 +1,6 @@ { "name": "@neshca/cache-handler", - "version": "1.7.3", + "version": "1.7.4", "description": "Next.js self-hosting simplified.", "keywords": [ "cache", From 50173e01fa45c27091c57812855248d1a03c16b7 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 10 Oct 2024 09:14:28 +0300 Subject: [PATCH 413/458] Bump the next-js group with 2 updates (#803) Bumps the next-js group with 2 updates: [next](https://github.com/vercel/next.js) and [@next/eslint-plugin-next](https://github.com/vercel/next.js/tree/HEAD/packages/eslint-plugin-next). Updates `next` from 14.2.14 to 14.2.15 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v14.2.14...v14.2.15) Updates `@next/eslint-plugin-next` from 14.2.14 to 14.2.15 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/commits/v14.2.15/packages/eslint-plugin-next) --- updated-dependencies: - dependency-name: next dependency-type: direct:production update-type: version-update:semver-patch dependency-group: next-js - dependency-name: "@next/eslint-plugin-next" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: next-js ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 4 +- docs/cache-handler-docs/package.json | 4 +- internal/next-common/package.json | 2 +- package-lock.json | 104 +++++++++++++-------------- 4 files changed, 57 insertions(+), 57 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 61e66a03..dae630d8 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -19,13 +19,13 @@ "dependencies": { "@neshca/cache-handler": "*", "axios": "1.7.7", - "next": "14.2.14", + "next": "14.2.15", "react": "18.3.1", "react-dom": "18.3.1", "redis": "4.7.0" }, "devDependencies": { - "@next/eslint-plugin-next": "14.2.14", + "@next/eslint-plugin-next": "14.2.15", "@playwright/test": "1.48.0", "@repo/eslint-config": "*", "@repo/typescript-config": "*", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 006a2ad3..1f529873 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -12,14 +12,14 @@ "start:docs": "next start" }, "dependencies": { - "next": "14.2.14", + "next": "14.2.15", "nextra": "3.0.7", "nextra-theme-docs": "3.0.7", "react": "18.3.1", "react-dom": "18.3.1" }, "devDependencies": { - "@next/eslint-plugin-next": "14.2.14", + "@next/eslint-plugin-next": "14.2.15", "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.12", diff --git a/internal/next-common/package.json b/internal/next-common/package.json index e11b85df..37f874ae 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -11,7 +11,7 @@ "clean": "rimraf ./.turbo ./node_modules" }, "dependencies": { - "next": "14.2.14" + "next": "14.2.15" }, "devDependencies": { "@repo/typescript-config": "*", diff --git a/package-lock.json b/package-lock.json index cec05a3e..9dc1f459 100644 --- a/package-lock.json +++ b/package-lock.json @@ -39,13 +39,13 @@ "dependencies": { "@neshca/cache-handler": "*", "axios": "1.7.7", - "next": "14.2.14", + "next": "14.2.15", "react": "18.3.1", "react-dom": "18.3.1", "redis": "4.7.0" }, "devDependencies": { - "@next/eslint-plugin-next": "14.2.14", + "@next/eslint-plugin-next": "14.2.15", "@playwright/test": "1.48.0", "@repo/eslint-config": "*", "@repo/typescript-config": "*", @@ -65,14 +65,14 @@ "docs/cache-handler-docs": { "version": "0.1.0", "dependencies": { - "next": "14.2.14", + "next": "14.2.15", "nextra": "3.0.7", "nextra-theme-docs": "3.0.7", "react": "18.3.1", "react-dom": "18.3.1" }, "devDependencies": { - "@next/eslint-plugin-next": "14.2.14", + "@next/eslint-plugin-next": "14.2.15", "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.12", @@ -117,7 +117,7 @@ "version": "0.0.0", "license": "MIT", "dependencies": { - "next": "14.2.14" + "next": "14.2.15" }, "devDependencies": { "@repo/typescript-config": "*", @@ -2314,14 +2314,14 @@ "link": true }, "node_modules/@next/env": { - "version": "14.2.14", - "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.14.tgz", - "integrity": "sha512-/0hWQfiaD5//LvGNgc8PjvyqV50vGK0cADYzaoOOGN8fxzBn3iAiaq3S0tCRnFBldq0LVveLcxCTi41ZoYgAgg==" + "version": "14.2.15", + "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.15.tgz", + "integrity": "sha512-S1qaj25Wru2dUpcIZMjxeMVSwkt8BK4dmWHHiBuRstcIyOsMapqT4A4jSB6onvqeygkSSmOkyny9VVx8JIGamQ==" }, "node_modules/@next/eslint-plugin-next": { - "version": "14.2.14", - "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.2.14.tgz", - "integrity": "sha512-kV+OsZ56xhj0rnTn6HegyTGkoa16Mxjrpk7pjWumyB2P8JVQb8S9qtkjy/ye0GnTr4JWtWG4x/2qN40lKZ3iVQ==", + "version": "14.2.15", + "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.2.15.tgz", + "integrity": "sha512-pKU0iqKRBlFB/ocOI1Ip2CkKePZpYpnw5bEItEkuZ/Nr9FQP1+p7VDWr4VfOdff4i9bFmrOaeaU1bFEyAcxiMQ==", "dev": true, "dependencies": { "glob": "10.3.10" @@ -2413,9 +2413,9 @@ } }, "node_modules/@next/swc-darwin-arm64": { - "version": "14.2.14", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.14.tgz", - "integrity": "sha512-bsxbSAUodM1cjYeA4o6y7sp9wslvwjSkWw57t8DtC8Zig8aG8V6r+Yc05/9mDzLKcybb6EN85k1rJDnMKBd9Gw==", + "version": "14.2.15", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.15.tgz", + "integrity": "sha512-Rvh7KU9hOUBnZ9TJ28n2Oa7dD9cvDBKua9IKx7cfQQ0GoYUwg9ig31O2oMwH3wm+pE3IkAQ67ZobPfEgurPZIA==", "cpu": [ "arm64" ], @@ -2428,9 +2428,9 @@ } }, "node_modules/@next/swc-darwin-x64": { - "version": "14.2.14", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.14.tgz", - "integrity": "sha512-cC9/I+0+SK5L1k9J8CInahduTVWGMXhQoXFeNvF0uNs3Bt1Ub0Azb8JzTU9vNCr0hnaMqiWu/Z0S1hfKc3+dww==", + "version": "14.2.15", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.15.tgz", + "integrity": "sha512-5TGyjFcf8ampZP3e+FyCax5zFVHi+Oe7sZyaKOngsqyaNEpOgkKB3sqmymkZfowy3ufGA/tUgDPPxpQx931lHg==", "cpu": [ "x64" ], @@ -2443,9 +2443,9 @@ } }, "node_modules/@next/swc-linux-arm64-gnu": { - "version": "14.2.14", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.14.tgz", - "integrity": "sha512-RMLOdA2NU4O7w1PQ3Z9ft3PxD6Htl4uB2TJpocm+4jcllHySPkFaUIFacQ3Jekcg6w+LBaFvjSPthZHiPmiAUg==", + "version": "14.2.15", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.15.tgz", + "integrity": "sha512-3Bwv4oc08ONiQ3FiOLKT72Q+ndEMyLNsc/D3qnLMbtUYTQAmkx9E/JRu0DBpHxNddBmNT5hxz1mYBphJ3mfrrw==", "cpu": [ "arm64" ], @@ -2458,9 +2458,9 @@ } }, "node_modules/@next/swc-linux-arm64-musl": { - "version": "14.2.14", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.14.tgz", - "integrity": "sha512-WgLOA4hT9EIP7jhlkPnvz49iSOMdZgDJVvbpb8WWzJv5wBD07M2wdJXLkDYIpZmCFfo/wPqFsFR4JS4V9KkQ2A==", + "version": "14.2.15", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.15.tgz", + "integrity": "sha512-k5xf/tg1FBv/M4CMd8S+JL3uV9BnnRmoe7F+GWC3DxkTCD9aewFRH1s5rJ1zkzDa+Do4zyN8qD0N8c84Hu96FQ==", "cpu": [ "arm64" ], @@ -2473,9 +2473,9 @@ } }, "node_modules/@next/swc-linux-x64-gnu": { - "version": "14.2.14", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.14.tgz", - "integrity": "sha512-lbn7svjUps1kmCettV/R9oAvEW+eUI0lo0LJNFOXoQM5NGNxloAyFRNByYeZKL3+1bF5YE0h0irIJfzXBq9Y6w==", + "version": "14.2.15", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.15.tgz", + "integrity": "sha512-kE6q38hbrRbKEkkVn62reLXhThLRh6/TvgSP56GkFNhU22TbIrQDEMrO7j0IcQHcew2wfykq8lZyHFabz0oBrA==", "cpu": [ "x64" ], @@ -2488,9 +2488,9 @@ } }, "node_modules/@next/swc-linux-x64-musl": { - "version": "14.2.14", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.14.tgz", - "integrity": "sha512-7TcQCvLQ/hKfQRgjxMN4TZ2BRB0P7HwrGAYL+p+m3u3XcKTraUFerVbV3jkNZNwDeQDa8zdxkKkw2els/S5onQ==", + "version": "14.2.15", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.15.tgz", + "integrity": "sha512-PZ5YE9ouy/IdO7QVJeIcyLn/Rc4ml9M2G4y3kCM9MNf1YKvFY4heg3pVa/jQbMro+tP6yc4G2o9LjAz1zxD7tQ==", "cpu": [ "x64" ], @@ -2503,9 +2503,9 @@ } }, "node_modules/@next/swc-win32-arm64-msvc": { - "version": "14.2.14", - "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.14.tgz", - "integrity": "sha512-8i0Ou5XjTLEje0oj0JiI0Xo9L/93ghFtAUYZ24jARSeTMXLUx8yFIdhS55mTExq5Tj4/dC2fJuaT4e3ySvXU1A==", + "version": "14.2.15", + "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.15.tgz", + "integrity": "sha512-2raR16703kBvYEQD9HNLyb0/394yfqzmIeyp2nDzcPV4yPjqNUG3ohX6jX00WryXz6s1FXpVhsCo3i+g4RUX+g==", "cpu": [ "arm64" ], @@ -2518,9 +2518,9 @@ } }, "node_modules/@next/swc-win32-ia32-msvc": { - "version": "14.2.14", - "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.14.tgz", - "integrity": "sha512-2u2XcSaDEOj+96eXpyjHjtVPLhkAFw2nlaz83EPeuK4obF+HmtDJHqgR1dZB7Gb6V/d55FL26/lYVd0TwMgcOQ==", + "version": "14.2.15", + "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.15.tgz", + "integrity": "sha512-fyTE8cklgkyR1p03kJa5zXEaZ9El+kDNM5A+66+8evQS5e/6v0Gk28LqA0Jet8gKSOyP+OTm/tJHzMlGdQerdQ==", "cpu": [ "ia32" ], @@ -2533,9 +2533,9 @@ } }, "node_modules/@next/swc-win32-x64-msvc": { - "version": "14.2.14", - "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.14.tgz", - "integrity": "sha512-MZom+OvZ1NZxuRovKt1ApevjiUJTcU2PmdJKL66xUPaJeRywnbGGRWUlaAOwunD6dX+pm83vj979NTC8QXjGWg==", + "version": "14.2.15", + "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.15.tgz", + "integrity": "sha512-SzqGbsLsP9OwKNUG9nekShTwhj6JSB9ZLMWQ8g1gG6hdE5gQLncbnbymrwy2yVmH9nikSLYRYxYMFu78Ggp7/g==", "cpu": [ "x64" ], @@ -11413,11 +11413,11 @@ } }, "node_modules/next": { - "version": "14.2.14", - "resolved": "https://registry.npmjs.org/next/-/next-14.2.14.tgz", - "integrity": "sha512-Q1coZG17MW0Ly5x76shJ4dkC23woLAhhnDnw+DfTc7EpZSGuWrlsZ3bZaO8t6u1Yu8FVfhkqJE+U8GC7E0GLPQ==", + "version": "14.2.15", + "resolved": "https://registry.npmjs.org/next/-/next-14.2.15.tgz", + "integrity": "sha512-h9ctmOokpoDphRvMGnwOJAedT6zKhwqyZML9mDtspgf4Rh3Pn7UTYKqePNoDvhsWBAO5GoPNYshnAUGIazVGmw==", "dependencies": { - "@next/env": "14.2.14", + "@next/env": "14.2.15", "@swc/helpers": "0.5.5", "busboy": "1.6.0", "caniuse-lite": "^1.0.30001579", @@ -11432,15 +11432,15 @@ "node": ">=18.17.0" }, "optionalDependencies": { - "@next/swc-darwin-arm64": "14.2.14", - "@next/swc-darwin-x64": "14.2.14", - "@next/swc-linux-arm64-gnu": "14.2.14", - "@next/swc-linux-arm64-musl": "14.2.14", - "@next/swc-linux-x64-gnu": "14.2.14", - "@next/swc-linux-x64-musl": "14.2.14", - "@next/swc-win32-arm64-msvc": "14.2.14", - "@next/swc-win32-ia32-msvc": "14.2.14", - "@next/swc-win32-x64-msvc": "14.2.14" + "@next/swc-darwin-arm64": "14.2.15", + "@next/swc-darwin-x64": "14.2.15", + "@next/swc-linux-arm64-gnu": "14.2.15", + "@next/swc-linux-arm64-musl": "14.2.15", + "@next/swc-linux-x64-gnu": "14.2.15", + "@next/swc-linux-x64-musl": "14.2.15", + "@next/swc-win32-arm64-msvc": "14.2.15", + "@next/swc-win32-ia32-msvc": "14.2.15", + "@next/swc-win32-x64-msvc": "14.2.15" }, "peerDependencies": { "@opentelemetry/api": "^1.1.0", @@ -16534,7 +16534,7 @@ }, "packages/cache-handler": { "name": "@neshca/cache-handler", - "version": "1.7.3", + "version": "1.7.4", "license": "MIT", "dependencies": { "cluster-key-slot": "1.1.2", From c4dc2439f75e812e4b9d950c9c9f9deb764a278c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 10 Oct 2024 09:23:19 +0300 Subject: [PATCH 414/458] Bump the nextra group with 2 updates (#804) Bumps the nextra group with 2 updates: [nextra](https://github.com/shuding/nextra) and [nextra-theme-docs](https://github.com/shuding/nextra). Updates `nextra` from 3.0.7 to 3.0.8 - [Release notes](https://github.com/shuding/nextra/releases) - [Commits](https://github.com/shuding/nextra/compare/nextra@3.0.7...nextra@3.0.8) Updates `nextra-theme-docs` from 3.0.7 to 3.0.8 - [Release notes](https://github.com/shuding/nextra/releases) - [Commits](https://github.com/shuding/nextra/compare/nextra-theme-docs@3.0.7...nextra-theme-docs@3.0.8) --- updated-dependencies: - dependency-name: nextra dependency-type: direct:production update-type: version-update:semver-patch dependency-group: nextra - dependency-name: nextra-theme-docs dependency-type: direct:production update-type: version-update:semver-patch dependency-group: nextra ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- docs/cache-handler-docs/package.json | 4 ++-- package-lock.json | 18 +++++++++--------- 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 1f529873..a5b7c51e 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -13,8 +13,8 @@ }, "dependencies": { "next": "14.2.15", - "nextra": "3.0.7", - "nextra-theme-docs": "3.0.7", + "nextra": "3.0.8", + "nextra-theme-docs": "3.0.8", "react": "18.3.1", "react-dom": "18.3.1" }, diff --git a/package-lock.json b/package-lock.json index 9dc1f459..3c1f1961 100644 --- a/package-lock.json +++ b/package-lock.json @@ -66,8 +66,8 @@ "version": "0.1.0", "dependencies": { "next": "14.2.15", - "nextra": "3.0.7", - "nextra-theme-docs": "3.0.7", + "nextra": "3.0.8", + "nextra-theme-docs": "3.0.8", "react": "18.3.1", "react-dom": "18.3.1" }, @@ -11471,9 +11471,9 @@ } }, "node_modules/nextra": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/nextra/-/nextra-3.0.7.tgz", - "integrity": "sha512-DzDS+hin8Jaqf6a4W/f4+qRNr1wdnzpbdc5szIIcck7g0BC4PX3ritwiH11YeAVGU1TFITnuSlMmu3DhC4aLlQ==", + "version": "3.0.8", + "resolved": "https://registry.npmjs.org/nextra/-/nextra-3.0.8.tgz", + "integrity": "sha512-7YceCGQOPnEMtqIoDRuNg+BvUc4GpUTPJeZsuKEeJ9AwVgCFRPhCJZoDuGNkIEw3pKAqHUaWFm9JXFytHeBRUQ==", "dependencies": { "@headlessui/react": "^2.1.2", "@mdx-js/mdx": "^3.0.0", @@ -11519,9 +11519,9 @@ } }, "node_modules/nextra-theme-docs": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/nextra-theme-docs/-/nextra-theme-docs-3.0.7.tgz", - "integrity": "sha512-qh3Df6EHbJUK7Z7KBwtXs949Tz+heyAfC+Vu/jxw/guRHW0gTEFSdl3+9eCwaWmjJq9KGly9QOjgi8fcgOy0UA==", + "version": "3.0.8", + "resolved": "https://registry.npmjs.org/nextra-theme-docs/-/nextra-theme-docs-3.0.8.tgz", + "integrity": "sha512-3kCc+01KPDolaUaxQD665a1bdy9ZN1HnC/42/7yL4GspAP7BSprKBvkU4rRz9xCFYIYbxDjq6NYV6FWuOnO94g==", "dependencies": { "@headlessui/react": "^2.1.2", "clsx": "^2.0.0", @@ -11533,7 +11533,7 @@ }, "peerDependencies": { "next": ">=13", - "nextra": "3.0.7", + "nextra": "3.0.8", "react": ">=18", "react-dom": ">=18" } From e54293f244dd087b6ec69524f24bbd6d81ae9743 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 10 Oct 2024 09:33:01 +0300 Subject: [PATCH 415/458] Bump typescript from 5.6.2 to 5.6.3 (#805) Bumps [typescript](https://github.com/microsoft/TypeScript) from 5.6.2 to 5.6.3. - [Release notes](https://github.com/microsoft/TypeScript/releases) - [Changelog](https://github.com/microsoft/TypeScript/blob/main/azure-pipelines.release.yml) - [Commits](https://github.com/microsoft/TypeScript/compare/v5.6.2...v5.6.3) --- updated-dependencies: - dependency-name: typescript dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- internal/backend/package.json | 2 +- internal/eslint-config/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 27 ++++++++++----------- packages/cache-handler/package.json | 2 +- packages/diffscribe/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 11 files changed, 23 insertions(+), 24 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index dae630d8..fd5f4439 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -39,6 +39,6 @@ "pm2": "5.4.2", "rimraf": "6.0.1", "tsx": "4.19.1", - "typescript": "5.6.2" + "typescript": "5.6.3" } } diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index a5b7c51e..ac6bb2bb 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -27,6 +27,6 @@ "@types/react": "18.3.11", "@types/react-dom": "18.3.0", "eslint": "8.57.1", - "typescript": "5.6.2" + "typescript": "5.6.3" } } diff --git a/internal/backend/package.json b/internal/backend/package.json index 0f44fb2c..1298465b 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -19,6 +19,6 @@ "pino-pretty": "11.2.2", "rimraf": "6.0.1", "tsx": "4.19.1", - "typescript": "5.6.2" + "typescript": "5.6.3" } } diff --git a/internal/eslint-config/package.json b/internal/eslint-config/package.json index 3f50d6b5..c26cf00c 100644 --- a/internal/eslint-config/package.json +++ b/internal/eslint-config/package.json @@ -12,6 +12,6 @@ "eslint-config-prettier": "9.1.0", "eslint-config-turbo": "2.1.3", "eslint-plugin-only-warn": "1.1.0", - "typescript": "5.6.2" + "typescript": "5.6.3" } } diff --git a/internal/next-common/package.json b/internal/next-common/package.json index 37f874ae..2da23be4 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -17,6 +17,6 @@ "@repo/typescript-config": "*", "@types/node": "22.7.5", "rimraf": "6.0.1", - "typescript": "5.6.2" + "typescript": "5.6.3" } } diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index 11c472f3..d2d7d367 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -18,6 +18,6 @@ "@repo/typescript-config": "*", "@types/node": "22.7.5", "rimraf": "6.0.1", - "typescript": "5.6.2" + "typescript": "5.6.3" } } diff --git a/package-lock.json b/package-lock.json index 3c1f1961..ccbb9b52 100644 --- a/package-lock.json +++ b/package-lock.json @@ -59,7 +59,7 @@ "pm2": "5.4.2", "rimraf": "6.0.1", "tsx": "4.19.1", - "typescript": "5.6.2" + "typescript": "5.6.3" } }, "docs/cache-handler-docs": { @@ -80,7 +80,7 @@ "@types/react": "18.3.11", "@types/react-dom": "18.3.0", "eslint": "8.57.1", - "typescript": "5.6.2" + "typescript": "5.6.3" } }, "internal/backend": { @@ -96,7 +96,7 @@ "pino-pretty": "11.2.2", "rimraf": "6.0.1", "tsx": "4.19.1", - "typescript": "5.6.2" + "typescript": "5.6.3" } }, "internal/eslint-config": { @@ -109,7 +109,7 @@ "eslint-config-prettier": "9.1.0", "eslint-config-turbo": "2.1.3", "eslint-plugin-only-warn": "1.1.0", - "typescript": "5.6.2" + "typescript": "5.6.3" } }, "internal/next-common": { @@ -123,7 +123,7 @@ "@repo/typescript-config": "*", "@types/node": "22.7.5", "rimraf": "6.0.1", - "typescript": "5.6.2" + "typescript": "5.6.3" } }, "internal/next-lru-cache": { @@ -138,7 +138,7 @@ "@repo/typescript-config": "*", "@types/node": "22.7.5", "rimraf": "6.0.1", - "typescript": "5.6.2" + "typescript": "5.6.3" } }, "internal/prettier-config": { @@ -15643,10 +15643,9 @@ } }, "node_modules/typescript": { - "version": "5.6.2", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.6.2.tgz", - "integrity": "sha512-NW8ByodCSNCwZeghjN3o+JX5OFH0Ojg6sadjEKY4huZ52TqbJTJnDo5+Tw98lSy63NZvi4n+ez5m2u5d4PkZyw==", - "license": "Apache-2.0", + "version": "5.6.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.6.3.tgz", + "integrity": "sha512-hjcS1mhfuyi4WW8IWtjP7brDrG2cuDZukyrYrSauoXGNgx0S7zceP07adYkJycEr56BOUTNPzbInooiN3fn1qw==", "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" @@ -16548,7 +16547,7 @@ "rimraf": "6.0.1", "tsup": "8.3.0", "tsx": "4.19.1", - "typescript": "5.6.2" + "typescript": "5.6.3" }, "peerDependencies": { "next": ">=13.5.1", @@ -16566,7 +16565,7 @@ "@types/node": "22.7.5", "rimraf": "6.0.1", "tsup": "8.3.0", - "typescript": "5.6.2" + "typescript": "5.6.3" }, "peerDependencies": { "dotenv": "^16.3.1", @@ -16583,7 +16582,7 @@ "rimraf": "6.0.1", "tsup": "8.3.0", "tsx": "4.19.1", - "typescript": "5.6.2" + "typescript": "5.6.3" } }, "packages/server": { @@ -16605,7 +16604,7 @@ "rimraf": "6.0.1", "tsup": "8.3.0", "tsx": "4.19.1", - "typescript": "5.6.2" + "typescript": "5.6.3" } } } diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 6a29a8ea..f1a1d45b 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -91,7 +91,7 @@ "rimraf": "6.0.1", "tsup": "8.3.0", "tsx": "4.19.1", - "typescript": "5.6.2" + "typescript": "5.6.3" }, "peerDependencies": { "next": ">=13.5.1", diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json index 9a4cb8f8..4b580793 100644 --- a/packages/diffscribe/package.json +++ b/packages/diffscribe/package.json @@ -28,7 +28,7 @@ "@types/node": "22.7.5", "rimraf": "6.0.1", "tsup": "8.3.0", - "typescript": "5.6.2" + "typescript": "5.6.3" }, "peerDependencies": { "dotenv": "^16.3.1", diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 19df55c6..0f8e75c4 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -32,6 +32,6 @@ "rimraf": "6.0.1", "tsup": "8.3.0", "tsx": "4.19.1", - "typescript": "5.6.2" + "typescript": "5.6.3" } } diff --git a/packages/server/package.json b/packages/server/package.json index a04b5d93..4ac47a68 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -36,7 +36,7 @@ "rimraf": "6.0.1", "tsup": "8.3.0", "tsx": "4.19.1", - "typescript": "5.6.2" + "typescript": "5.6.3" }, "distTags": [ "next13.5", From 1119b14e2008d7636586f1939a8577d47376bde2 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 14 Oct 2024 15:00:53 +0300 Subject: [PATCH 416/458] Bump the nextra group with 2 updates (#807) Bumps the nextra group with 2 updates: [nextra](https://github.com/shuding/nextra) and [nextra-theme-docs](https://github.com/shuding/nextra). Updates `nextra` from 3.0.8 to 3.0.9 - [Release notes](https://github.com/shuding/nextra/releases) - [Commits](https://github.com/shuding/nextra/compare/nextra@3.0.8...nextra@3.0.9) Updates `nextra-theme-docs` from 3.0.8 to 3.0.9 - [Release notes](https://github.com/shuding/nextra/releases) - [Commits](https://github.com/shuding/nextra/compare/nextra-theme-docs@3.0.8...nextra-theme-docs@3.0.9) --- updated-dependencies: - dependency-name: nextra dependency-type: direct:production update-type: version-update:semver-patch dependency-group: nextra - dependency-name: nextra-theme-docs dependency-type: direct:production update-type: version-update:semver-patch dependency-group: nextra ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- docs/cache-handler-docs/package.json | 4 ++-- package-lock.json | 18 +++++++++--------- 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index ac6bb2bb..e662b0b2 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -13,8 +13,8 @@ }, "dependencies": { "next": "14.2.15", - "nextra": "3.0.8", - "nextra-theme-docs": "3.0.8", + "nextra": "3.0.9", + "nextra-theme-docs": "3.0.9", "react": "18.3.1", "react-dom": "18.3.1" }, diff --git a/package-lock.json b/package-lock.json index ccbb9b52..32e893c5 100644 --- a/package-lock.json +++ b/package-lock.json @@ -66,8 +66,8 @@ "version": "0.1.0", "dependencies": { "next": "14.2.15", - "nextra": "3.0.8", - "nextra-theme-docs": "3.0.8", + "nextra": "3.0.9", + "nextra-theme-docs": "3.0.9", "react": "18.3.1", "react-dom": "18.3.1" }, @@ -11471,9 +11471,9 @@ } }, "node_modules/nextra": { - "version": "3.0.8", - "resolved": "https://registry.npmjs.org/nextra/-/nextra-3.0.8.tgz", - "integrity": "sha512-7YceCGQOPnEMtqIoDRuNg+BvUc4GpUTPJeZsuKEeJ9AwVgCFRPhCJZoDuGNkIEw3pKAqHUaWFm9JXFytHeBRUQ==", + "version": "3.0.9", + "resolved": "https://registry.npmjs.org/nextra/-/nextra-3.0.9.tgz", + "integrity": "sha512-RmCUg2GsBXjOSCdHj2AJPMB1zYWCqSipnOcyF6veM5JQsDw+wCiEUMpaoqsY7PqEkCXRtCLti6q3qiPWVe+kUQ==", "dependencies": { "@headlessui/react": "^2.1.2", "@mdx-js/mdx": "^3.0.0", @@ -11519,9 +11519,9 @@ } }, "node_modules/nextra-theme-docs": { - "version": "3.0.8", - "resolved": "https://registry.npmjs.org/nextra-theme-docs/-/nextra-theme-docs-3.0.8.tgz", - "integrity": "sha512-3kCc+01KPDolaUaxQD665a1bdy9ZN1HnC/42/7yL4GspAP7BSprKBvkU4rRz9xCFYIYbxDjq6NYV6FWuOnO94g==", + "version": "3.0.9", + "resolved": "https://registry.npmjs.org/nextra-theme-docs/-/nextra-theme-docs-3.0.9.tgz", + "integrity": "sha512-cN0sXsh/flBJd22eOn8X1cmyA8dsL2M8aRMmuQM4y3UelNA7YfHRUx+y59enbT/cIe7od42NYfZQcJkZINNsZA==", "dependencies": { "@headlessui/react": "^2.1.2", "clsx": "^2.0.0", @@ -11533,7 +11533,7 @@ }, "peerDependencies": { "next": ">=13", - "nextra": "3.0.8", + "nextra": "3.0.9", "react": ">=18", "react-dom": ">=18" } From 4de06add842004afb41824b3ac566e689663f8da Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 14 Oct 2024 15:10:07 +0300 Subject: [PATCH 417/458] Bump @types/react-dom in the definitely-typed group (#806) Bumps the definitely-typed group with 1 update: [@types/react-dom](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react-dom). Updates `@types/react-dom` from 18.3.0 to 18.3.1 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react-dom) --- updated-dependencies: - dependency-name: "@types/react-dom" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- package-lock.json | 11 +++++------ 3 files changed, 7 insertions(+), 8 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index fd5f4439..484ca26e 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -32,7 +32,7 @@ "@types/eslint": "8.56.12", "@types/node": "22.7.5", "@types/react": "18.3.11", - "@types/react-dom": "18.3.0", + "@types/react-dom": "18.3.1", "dotenv-cli": "7.4.2", "eslint": "8.57.1", "fastify": "5.0.0", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index e662b0b2..d99466c9 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -25,7 +25,7 @@ "@types/eslint": "8.56.12", "@types/node": "22.7.5", "@types/react": "18.3.11", - "@types/react-dom": "18.3.0", + "@types/react-dom": "18.3.1", "eslint": "8.57.1", "typescript": "5.6.3" } diff --git a/package-lock.json b/package-lock.json index 32e893c5..f8d27048 100644 --- a/package-lock.json +++ b/package-lock.json @@ -52,7 +52,7 @@ "@types/eslint": "8.56.12", "@types/node": "22.7.5", "@types/react": "18.3.11", - "@types/react-dom": "18.3.0", + "@types/react-dom": "18.3.1", "dotenv-cli": "7.4.2", "eslint": "8.57.1", "fastify": "5.0.0", @@ -78,7 +78,7 @@ "@types/eslint": "8.56.12", "@types/node": "22.7.5", "@types/react": "18.3.11", - "@types/react-dom": "18.3.0", + "@types/react-dom": "18.3.1", "eslint": "8.57.1", "typescript": "5.6.3" } @@ -3518,11 +3518,10 @@ } }, "node_modules/@types/react-dom": { - "version": "18.3.0", - "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.3.0.tgz", - "integrity": "sha512-EhwApuTmMBmXuFOikhQLIBUn6uFg81SwLMOAUgodJF14SOBOCMdU04gDoYi0WOJJHD144TL32z4yDqCW3dnkQg==", + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.3.1.tgz", + "integrity": "sha512-qW1Mfv8taImTthu4KoXgDfLuk4bydU6Q/TkADnDWWHwi4NX4BR+LWfTp2sVmTqRrsHvyDDTelgelxJ+SsejKKQ==", "dev": true, - "license": "MIT", "dependencies": { "@types/react": "*" } From 26df906eb427ac92072ab9baf5764342735c2b15 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 16 Oct 2024 14:30:26 +0300 Subject: [PATCH 418/458] Bump the pino group with 2 updates (#812) Bumps the pino group with 2 updates: [pino](https://github.com/pinojs/pino) and [pino-pretty](https://github.com/pinojs/pino-pretty). Updates `pino` from 9.4.0 to 9.5.0 - [Release notes](https://github.com/pinojs/pino/releases) - [Commits](https://github.com/pinojs/pino/compare/v9.4.0...v9.5.0) Updates `pino-pretty` from 11.2.2 to 11.3.0 - [Release notes](https://github.com/pinojs/pino-pretty/releases) - [Commits](https://github.com/pinojs/pino-pretty/compare/v11.2.2...v11.3.0) --- updated-dependencies: - dependency-name: pino dependency-type: direct:production update-type: version-update:semver-minor dependency-group: pino - dependency-name: pino-pretty dependency-type: direct:development update-type: version-update:semver-minor dependency-group: pino ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- internal/backend/package.json | 4 +-- package-lock.json | 51 +++++++++++++++++------------------ packages/server/package.json | 2 +- 3 files changed, 27 insertions(+), 30 deletions(-) diff --git a/internal/backend/package.json b/internal/backend/package.json index 1298465b..2d0f9c8e 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -11,12 +11,12 @@ }, "dependencies": { "fastify": "5.0.0", - "pino": "9.4.0" + "pino": "9.5.0" }, "devDependencies": { "@repo/typescript-config": "*", "@types/node": "22.7.5", - "pino-pretty": "11.2.2", + "pino-pretty": "11.3.0", "rimraf": "6.0.1", "tsx": "4.19.1", "typescript": "5.6.3" diff --git a/package-lock.json b/package-lock.json index f8d27048..00757879 100644 --- a/package-lock.json +++ b/package-lock.json @@ -88,12 +88,12 @@ "license": "MIT", "dependencies": { "fastify": "5.0.0", - "pino": "9.4.0" + "pino": "9.5.0" }, "devDependencies": { "@repo/typescript-config": "*", "@types/node": "22.7.5", - "pino-pretty": "11.2.2", + "pino-pretty": "11.3.0", "rimraf": "6.0.1", "tsx": "4.19.1", "typescript": "5.6.3" @@ -4393,6 +4393,7 @@ "version": "1.5.1", "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "dev": true, "funding": [ { "type": "github", @@ -4406,8 +4407,7 @@ "type": "consulting", "url": "https://feross.org/support" } - ], - "license": "MIT" + ] }, "node_modules/basic-ftp": { "version": "5.0.5", @@ -4535,6 +4535,7 @@ "version": "6.0.3", "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", + "dev": true, "funding": [ { "type": "github", @@ -4549,7 +4550,6 @@ "url": "https://feross.org/support" } ], - "license": "MIT", "dependencies": { "base64-js": "^1.3.1", "ieee754": "^1.2.1" @@ -7392,7 +7392,7 @@ "version": "3.3.0", "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", - "license": "MIT", + "dev": true, "engines": { "node": ">=0.8.x" } @@ -8862,6 +8862,7 @@ "version": "1.2.1", "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "dev": true, "funding": [ { "type": "github", @@ -8875,8 +8876,7 @@ "type": "consulting", "url": "https://feross.org/support" } - ], - "license": "BSD-3-Clause" + ] }, "node_modules/ignore": { "version": "5.3.2", @@ -12345,15 +12345,14 @@ } }, "node_modules/pino": { - "version": "9.4.0", - "resolved": "https://registry.npmjs.org/pino/-/pino-9.4.0.tgz", - "integrity": "sha512-nbkQb5+9YPhQRz/BeQmrWpEknAaqjpAqRK8NwJpmrX/JHu7JuZC5G1CeAwJDJfGes4h+YihC6in3Q2nGb+Y09w==", - "license": "MIT", + "version": "9.5.0", + "resolved": "https://registry.npmjs.org/pino/-/pino-9.5.0.tgz", + "integrity": "sha512-xSEmD4pLnV54t0NOUN16yCl7RIB1c5UUOse5HSyEXtBp+FgFQyPeDutc+Q2ZO7/22vImV7VfEjH/1zV2QuqvYw==", "dependencies": { "atomic-sleep": "^1.0.0", "fast-redact": "^3.1.1", "on-exit-leak-free": "^2.1.0", - "pino-abstract-transport": "^1.2.0", + "pino-abstract-transport": "^2.0.0", "pino-std-serializers": "^7.0.0", "process-warning": "^4.0.0", "quick-format-unescaped": "^4.0.3", @@ -12367,21 +12366,18 @@ } }, "node_modules/pino-abstract-transport": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/pino-abstract-transport/-/pino-abstract-transport-1.2.0.tgz", - "integrity": "sha512-Guhh8EZfPCfH+PMXAb6rKOjGQEoy0xlAIn+irODG5kgfYV+BQ0rGYYWTIel3P5mmyXqkYkPmdIkywsn6QKUR1Q==", - "license": "MIT", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/pino-abstract-transport/-/pino-abstract-transport-2.0.0.tgz", + "integrity": "sha512-F63x5tizV6WCh4R6RHyi2Ml+M70DNRXt/+HANowMflpgGFMAym/VKm6G7ZOQRjqN7XbGxK1Lg9t6ZrtzOaivMw==", "dependencies": { - "readable-stream": "^4.0.0", "split2": "^4.0.0" } }, "node_modules/pino-pretty": { - "version": "11.2.2", - "resolved": "https://registry.npmjs.org/pino-pretty/-/pino-pretty-11.2.2.tgz", - "integrity": "sha512-2FnyGir8nAJAqD3srROdrF1J5BIcMT4nwj7hHSc60El6Uxlym00UbCCd8pYIterstVBFlMyF1yFV8XdGIPbj4A==", + "version": "11.3.0", + "resolved": "https://registry.npmjs.org/pino-pretty/-/pino-pretty-11.3.0.tgz", + "integrity": "sha512-oXwn7ICywaZPHmu3epHGU2oJX4nPmKvHvB/bwrJHlGcbEWaVcotkpyVHMKLKmiVryWYByNp0jpgAcXpFJDXJzA==", "dev": true, - "license": "MIT", "dependencies": { "colorette": "^2.0.7", "dateformat": "^4.6.3", @@ -12391,7 +12387,7 @@ "joycon": "^3.1.1", "minimist": "^1.2.6", "on-exit-leak-free": "^2.1.0", - "pino-abstract-transport": "^1.0.0", + "pino-abstract-transport": "^2.0.0", "pump": "^3.0.0", "readable-stream": "^4.0.0", "secure-json-parse": "^2.4.0", @@ -12805,7 +12801,7 @@ "version": "0.11.10", "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==", - "license": "MIT", + "dev": true, "engines": { "node": ">= 0.6.0" } @@ -13083,7 +13079,7 @@ "version": "4.5.2", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.5.2.tgz", "integrity": "sha512-yjavECdqeZ3GLXNgRXgeQEdz9fvDDkNKyHnbHRFtOr7/LcfgBcmct7t/ET+HaCTqfh06OzoAxrkN/IfjJBVe+g==", - "license": "MIT", + "dev": true, "dependencies": { "abort-controller": "^3.0.0", "buffer": "^6.0.3", @@ -13735,6 +13731,7 @@ "version": "5.2.1", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "dev": true, "funding": [ { "type": "github", @@ -14323,7 +14320,7 @@ "version": "1.3.0", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "license": "MIT", + "dev": true, "dependencies": { "safe-buffer": "~5.2.0" } @@ -16590,7 +16587,7 @@ "license": "MIT", "dependencies": { "fastify": "5.0.0", - "pino": "9.4.0" + "pino": "9.5.0" }, "bin": { "next-cache-server": "dist/server.js" diff --git a/packages/server/package.json b/packages/server/package.json index 4ac47a68..c8099f7f 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -26,7 +26,7 @@ }, "dependencies": { "fastify": "5.0.0", - "pino": "9.4.0" + "pino": "9.5.0" }, "devDependencies": { "@neshca/next-common": "*", From b7d9145024e9d2ee27c1ce62f16d3ba4ea63ab1d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 16 Oct 2024 14:33:53 +0300 Subject: [PATCH 419/458] Bump the nextra group across 1 directory with 2 updates (#813) Bumps the nextra group with 2 updates in the / directory: [nextra](https://github.com/shuding/nextra) and [nextra-theme-docs](https://github.com/shuding/nextra). Updates `nextra` from 3.0.9 to 3.0.13 - [Release notes](https://github.com/shuding/nextra/releases) - [Commits](https://github.com/shuding/nextra/compare/nextra@3.0.9...nextra@3.0.13) Updates `nextra-theme-docs` from 3.0.9 to 3.0.13 - [Release notes](https://github.com/shuding/nextra/releases) - [Commits](https://github.com/shuding/nextra/compare/nextra-theme-docs@3.0.9...nextra-theme-docs@3.0.13) --- updated-dependencies: - dependency-name: nextra dependency-type: direct:production update-type: version-update:semver-patch dependency-group: nextra - dependency-name: nextra-theme-docs dependency-type: direct:production update-type: version-update:semver-patch dependency-group: nextra ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- docs/cache-handler-docs/package.json | 4 ++-- package-lock.json | 36 +++++++++++++++++++++------- 2 files changed, 29 insertions(+), 11 deletions(-) diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index d99466c9..ed3e55d7 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -13,8 +13,8 @@ }, "dependencies": { "next": "14.2.15", - "nextra": "3.0.9", - "nextra-theme-docs": "3.0.9", + "nextra": "3.0.13", + "nextra-theme-docs": "3.0.13", "react": "18.3.1", "react-dom": "18.3.1" }, diff --git a/package-lock.json b/package-lock.json index 00757879..2b0df62f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -66,8 +66,8 @@ "version": "0.1.0", "dependencies": { "next": "14.2.15", - "nextra": "3.0.9", - "nextra-theme-docs": "3.0.9", + "nextra": "3.0.13", + "nextra-theme-docs": "3.0.13", "react": "18.3.1", "react-dom": "18.3.1" }, @@ -1705,6 +1705,14 @@ "resolved": "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.2.8.tgz", "integrity": "sha512-kym7SodPp8/wloecOpcmSnWJsK7M0E5Wg8UcFA+uO4B9s5d0ywXOEro/8HM9x0rW+TljRzul/14UYz3TleT3ig==" }, + "node_modules/@formatjs/intl-localematcher": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/@formatjs/intl-localematcher/-/intl-localematcher-0.5.5.tgz", + "integrity": "sha512-t5tOGMgZ/i5+ALl2/offNqAQq/lfUnKLEw0mXQI4N4bqpedhrSE+fyKLpwnd22sK0dif6AV+ufQcTsKShB9J1g==", + "dependencies": { + "tslib": "^2.7.0" + } + }, "node_modules/@headlessui/react": { "version": "2.1.9", "resolved": "https://registry.npmjs.org/@headlessui/react/-/react-2.1.9.tgz", @@ -11401,6 +11409,14 @@ "ms": "^2.1.1" } }, + "node_modules/negotiator": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", + "engines": { + "node": ">= 0.6" + } + }, "node_modules/netmask": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/netmask/-/netmask-2.0.2.tgz", @@ -11470,10 +11486,11 @@ } }, "node_modules/nextra": { - "version": "3.0.9", - "resolved": "https://registry.npmjs.org/nextra/-/nextra-3.0.9.tgz", - "integrity": "sha512-RmCUg2GsBXjOSCdHj2AJPMB1zYWCqSipnOcyF6veM5JQsDw+wCiEUMpaoqsY7PqEkCXRtCLti6q3qiPWVe+kUQ==", + "version": "3.0.13", + "resolved": "https://registry.npmjs.org/nextra/-/nextra-3.0.13.tgz", + "integrity": "sha512-aK5ZEnKGE2lWhJvFfpj7T35JeA4ytvo2zUiXJ5JApIpFrwkzy8IYTa+irGHB0l9sxGiRlss4p+nAM8Kunvmlug==", "dependencies": { + "@formatjs/intl-localematcher": "^0.5.4", "@headlessui/react": "^2.1.2", "@mdx-js/mdx": "^3.0.0", "@mdx-js/react": "^3.0.0", @@ -11490,6 +11507,7 @@ "gray-matter": "^4.0.3", "hast-util-to-estree": "^3.1.0", "katex": "^0.16.9", + "negotiator": "^0.6.3", "p-limit": "^6.0.0", "rehype-katex": "^7.0.0", "rehype-pretty-code": "0.14.0", @@ -11518,9 +11536,9 @@ } }, "node_modules/nextra-theme-docs": { - "version": "3.0.9", - "resolved": "https://registry.npmjs.org/nextra-theme-docs/-/nextra-theme-docs-3.0.9.tgz", - "integrity": "sha512-cN0sXsh/flBJd22eOn8X1cmyA8dsL2M8aRMmuQM4y3UelNA7YfHRUx+y59enbT/cIe7od42NYfZQcJkZINNsZA==", + "version": "3.0.13", + "resolved": "https://registry.npmjs.org/nextra-theme-docs/-/nextra-theme-docs-3.0.13.tgz", + "integrity": "sha512-1NEo4NJxXRsNPE2PXlYdVlW7N8ZWe5XssePFKUq0comQaxDNc6SaxfBNw0VoQlwB3T5ifTp9f5wb9xfIjPa6OA==", "dependencies": { "@headlessui/react": "^2.1.2", "clsx": "^2.0.0", @@ -11532,7 +11550,7 @@ }, "peerDependencies": { "next": ">=13", - "nextra": "3.0.9", + "nextra": "3.0.13", "react": ">=18", "react-dom": ">=18" } From b91f7593a089c6071fd5be64c8651c6921f2fe70 Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Wed, 16 Oct 2024 20:01:39 +0300 Subject: [PATCH 420/458] Add `neshClassicCache` and related documentation (#808) --- .changeset/large-rats-bake.md | 5 + .github/workflows/tests.yml | 7 +- README.md | 3 +- apps/cache-testing/.env.example | 1 - apps/cache-testing/next.config.mjs | 2 +- .../src/pages/api/pages-cached-api.ts | 54 +++ .../pages/no-paths/ssr-with-cache/200.tsx | 10 + ...-pages-get-get-server-side-props-cached.ts | 50 +++ apps/cache-testing/tests/pages.spec.ts | 177 ++++++++++ apps/cache-testing/tests/test-helpers.ts | 25 ++ .../src/pages/functions/_meta.ts | 1 + .../src/pages/functions/nesh-cache.mdx | 2 +- .../pages/functions/nesh-classic-cache.mdx | 80 +++++ docs/cache-handler-docs/src/pages/index.mdx | 2 + docs/cache-handler-docs/theme.config.jsx | 12 +- internal/next-common/src/next-common.ts | 25 +- packages/cache-handler/README.md | 5 +- .../cache-handler/src/functions/functions.ts | 1 + .../src/functions/nesh-classic-cache.ts | 316 ++++++++++++++++++ .../src/instrumentation/instrumentation.ts | 2 +- ...ion.cache.ts => register-initial-cache.ts} | 28 +- turbo.json | 9 +- 22 files changed, 767 insertions(+), 50 deletions(-) create mode 100644 .changeset/large-rats-bake.md create mode 100644 apps/cache-testing/src/pages/api/pages-cached-api.ts create mode 100644 apps/cache-testing/src/pages/pages/no-paths/ssr-with-cache/200.tsx create mode 100644 apps/cache-testing/src/utils/create-pages-get-get-server-side-props-cached.ts create mode 100644 docs/cache-handler-docs/src/pages/functions/nesh-classic-cache.mdx create mode 100644 packages/cache-handler/src/functions/nesh-classic-cache.ts rename packages/cache-handler/src/instrumentation/{instrumentation.cache.ts => register-initial-cache.ts} (94%) diff --git a/.changeset/large-rats-bake.md b/.changeset/large-rats-bake.md new file mode 100644 index 00000000..b26a0617 --- /dev/null +++ b/.changeset/large-rats-bake.md @@ -0,0 +1,5 @@ +--- +'@neshca/cache-handler': minor +--- + +Add the new `neshClassicCache` function to the `@neshca/cache-handler/functions` module allowing to cache the result of expensive operations in the `getServerSideProps` and a Next.js Pages API routes. diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index a540d56b..5ee72e63 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -40,7 +40,6 @@ jobs: timeout-minutes: 10 runs-on: ubuntu-latest env: - HANDLER_PATH: ./cache-handler-${{ matrix.handler }}.mjs REDIS_URL: redis://localhost:6379 services: redis: @@ -59,6 +58,12 @@ jobs: node-version-file: '.nvmrc' check-latest: true cache: 'npm' + - name: Replace Path with Sed + run: | + if [ "${{ matrix.handler }}" == "redis-strings" ]; then + sed -i 's/cache-handler-redis-stack/cache-handler-redis-strings/g' apps/cache-testing/next.config.mjs + sed -i 's/cache-handler-redis-stack/cache-handler-redis-strings/g' apps/cache-testing/src/instrumentation.ts + fi - name: Install dependencies run: npm ci - name: Install Playwright Browsers diff --git a/README.md b/README.md index f1b760e3..d9831e2f 100644 --- a/README.md +++ b/README.md @@ -4,7 +4,7 @@ [![Dependencies](https://img.shields.io/npm/dm/@neshca/cache-handler)](https://www.npmjs.com/package/@neshca/cache-handler) [![License](https://img.shields.io/npm/l/express.svg)](https://github.com/caching-tools/next-shared-cache/blob/canary/packages/cache-handler/LICENSE) -Welcome to [`@neshca/cache-handler`](./packages/cache-handler/README.md) (pronounced /ˈnæʃkʌ/), a specialized ISR/Data cache API crafted for Next.js applications. This library simplifies configuring shared cache strategies in distributed environments, such as multiple, independent application instances. It offers a flexible and easy-to-integrate solution for custom cache strategies, especially for Redis. +Welcome to [`@neshca/cache-handler`](./packages/cache-handler/README.md) (pronounced `/ˈnæʃkʌ/`), a specialized ISR/Data cache API crafted for Next.js applications. This library simplifies configuring shared cache strategies in distributed environments, such as multiple, independent application instances. It offers a flexible and easy-to-integrate solution for custom cache strategies, especially for Redis. ### Features @@ -14,6 +14,7 @@ Welcome to [`@neshca/cache-handler`](./packages/cache-handler/README.md) (pronou - **TTL Management**: Automatic cache cleanup to keep storage space efficient. - **Support for Next.js Routers**: Full support and one setup for the Pages and the App Router. - **`neshCache` Function**: Utilize the [`neshCache` ↗](https://caching-tools.github.io/next-shared-cache/functions/nesh-cache) function to replace `unstable_cache` for more control over caching. +- **`neshClassicCache` Function**: Use the CacheHandler in the Pages Router to cache the result of expensive operations in the `getServerSideProps` and API routes. - **Pre-populate the Cache with Initial Data**: Automatically pre-populate the cache with the initial data when the application starts using the [instrumentation hook ↗](https://caching-tools.github.io/next-shared-cache/usage/populating-cache-on-start). ## Getting Started diff --git a/apps/cache-testing/.env.example b/apps/cache-testing/.env.example index 8f0bc9d3..4cebeb6c 100644 --- a/apps/cache-testing/.env.example +++ b/apps/cache-testing/.env.example @@ -3,4 +3,3 @@ REMOTE_CACHE_SERVER_BASE_URL=http://localhost:8080 HOSTNAME=localhost PPR_ENABLED=false NEXT_PRIVATE_DEBUG_CACHE=1 -HANDLER_PATH=./cache-handler-redis-stack.mjs diff --git a/apps/cache-testing/next.config.mjs b/apps/cache-testing/next.config.mjs index ab6f57d8..3f4f3106 100644 --- a/apps/cache-testing/next.config.mjs +++ b/apps/cache-testing/next.config.mjs @@ -2,7 +2,7 @@ import path from 'node:path'; -const cacheHandler = path.resolve(process.env.HANDLER_PATH ?? './cache-handler-redis-stack.mjs'); +const cacheHandler = path.resolve('./cache-handler-redis-stack.mjs'); /** @type {import('next').NextConfig} */ const nextConfig = { diff --git a/apps/cache-testing/src/pages/api/pages-cached-api.ts b/apps/cache-testing/src/pages/api/pages-cached-api.ts new file mode 100644 index 00000000..a737e674 --- /dev/null +++ b/apps/cache-testing/src/pages/api/pages-cached-api.ts @@ -0,0 +1,54 @@ +import { formatTime } from 'cache-testing/utils/format-time'; +import type { CountBackendApiResponseJson } from 'cache-testing/utils/types'; +import type { NextApiRequest, NextApiResponse } from 'next'; + +import { neshClassicCache } from '@neshca/cache-handler/functions'; + +export const config = { + runtime: 'nodejs', +}; + +const fetchWithCache = neshClassicCache(async (url: URL | string) => { + const result = await fetch(url); + + if (!result.ok) { + throw new Error('Failed to fetch'); + } + + const json = (await result.json()) as CountBackendApiResponseJson; + + return json; +}); + +export default async function handler(request: NextApiRequest, response: NextApiResponse): Promise { + if (request.method !== 'GET') { + return response.status(405).send(null); + } + + const path = request.url; + + const pathAndTag = '/count/pages/api/api/200'; + + const revalidate = 5; + + const url = new URL(pathAndTag, 'http://localhost:8081'); + + const result = await fetchWithCache({ revalidate, tags: [String(path)], responseContext: response }, url); + + if (!result) { + return response.status(404).send(null); + } + + const parsedResult = result; + + response.json({ + props: { + count: parsedResult.count, + time: formatTime(parsedResult.unixTimeMs), + revalidateAfter: formatTime(parsedResult.unixTimeMs + revalidate * 1000), + timeMs: parsedResult.unixTimeMs, + revalidateAfterMs: parsedResult.unixTimeMs + revalidate * 1000, + path, + }, + }); +} diff --git a/apps/cache-testing/src/pages/pages/no-paths/ssr-with-cache/200.tsx b/apps/cache-testing/src/pages/pages/no-paths/ssr-with-cache/200.tsx new file mode 100644 index 00000000..31065555 --- /dev/null +++ b/apps/cache-testing/src/pages/pages/no-paths/ssr-with-cache/200.tsx @@ -0,0 +1,10 @@ +import { CommonPagesPage } from 'cache-testing/utils/common-pages-page'; +import { createPagesGetServerSideProps } from 'cache-testing/utils/create-pages-get-get-server-side-props-cached'; + +export const config = { + runtime: 'nodejs', +}; + +export const getServerSideProps = createPagesGetServerSideProps('pages/no-paths/ssr-with-cache/200'); + +export default CommonPagesPage; diff --git a/apps/cache-testing/src/utils/create-pages-get-get-server-side-props-cached.ts b/apps/cache-testing/src/utils/create-pages-get-get-server-side-props-cached.ts new file mode 100644 index 00000000..97bf73b5 --- /dev/null +++ b/apps/cache-testing/src/utils/create-pages-get-get-server-side-props-cached.ts @@ -0,0 +1,50 @@ +import type { GetServerSideProps, GetServerSidePropsResult } from 'next'; + +import { neshClassicCache } from '@neshca/cache-handler/functions'; +import type { CountBackendApiResponseJson, PageProps } from './types'; + +const fetchWithCache = neshClassicCache(async (url: URL | string) => { + const result = await fetch(url); + + if (!result.ok) { + throw new Error('Failed to fetch'); + } + + const json = (await result.json()) as CountBackendApiResponseJson; + + return json; +}); + +export function createPagesGetServerSideProps(path: string): GetServerSideProps { + return async function getServerSideProps({ res }): Promise> { + const pathAndTag = `/count/${path}`; + + const revalidate = 5; + + const url = new URL(pathAndTag, 'http://localhost:8081'); + + const result = await fetchWithCache( + { + revalidate, + tags: [`/${path}`], + responseContext: res, + }, + url, + ); + + if (!result) { + return { notFound: true }; + } + + const parsedResult = result; + + return { + props: { + count: parsedResult.count, + time: parsedResult.unixTimeMs, + revalidateAfter: revalidate * 1000, + path, + }, + }; + }; +} diff --git a/apps/cache-testing/tests/pages.spec.ts b/apps/cache-testing/tests/pages.spec.ts index ff41ebfc..85ee3268 100644 --- a/apps/cache-testing/tests/pages.spec.ts +++ b/apps/cache-testing/tests/pages.spec.ts @@ -1,5 +1,6 @@ import Timers from 'node:timers/promises'; import { expect, test } from '@playwright/test'; +import { revalidateByApi } from './test-helpers'; const paths = [ '/pages/with-paths/fallback-blocking/200', @@ -328,3 +329,179 @@ test.describe('SSR', () => { expect(valueFromPageAfterReload - valueFromPage === 1).toBe(true); }); }); + +test.describe('SSR neshClassicCache', () => { + const path = '/pages/no-paths/ssr-with-cache/200'; + + test('If revalidate is called, then page should be fresh after reload', async ({ page, baseURL }) => { + const url = new URL(path, `${baseURL}:3000`); + + await page.goto(url.href); + + const response = await revalidateByApi(path, `${baseURL}:3000`); + + expect(response.revalidated).toBe(true); + + await page.reload(); + + await expect(page.getByTestId('cache-state')).toContainText('fresh'); + }); + + test('If revalidate is called on page A, then page B should be fresh on load and value must be updated', async ({ + context, + baseURL, + }) => { + const appAUrl = new URL(path, `${baseURL}:3000`); + + await revalidateByApi(path, `${baseURL}:3000`); + + const appA = await context.newPage(); + + await appA.goto(appAUrl.href); + + await expect(appA.getByTestId('cache-state')).toContainText('fresh'); + + const valueFromPageA = Number.parseInt((await appA.getByTestId('data').innerText()).valueOf(), 10); + + await revalidateByApi(path, `${baseURL}:3000`); + + const appBUrl = new URL(path, `${baseURL}:3001`); + + const appB = await context.newPage(); + + await appB.goto(appBUrl.href); + + await expect(appA.getByTestId('cache-state')).toContainText('fresh'); + + const valueFromPageB = Number.parseInt((await appB.getByTestId('data').innerText()).valueOf(), 10); + + expect(valueFromPageB - valueFromPageA === 1).toBe(true); + }); + + test('Page should be fresh after becoming stale and reloaded twice', async ({ page, baseURL }) => { + const url = new URL(path, `${baseURL}:3000`); + + await revalidateByApi(path, `${baseURL}:3000`); + + await page.goto(url.href); + + await expect(page.getByTestId('cache-state')).toContainText('fresh'); + + await expect(page.getByTestId('cache-state')).toContainText('stale', { timeout: 7500 }); + + await page.reload(); + + await expect(page.getByTestId('cache-state')).toContainText('stale'); + + await page.reload(); + + await expect(page.getByTestId('cache-state')).toContainText('fresh'); + }); +}); + +test.describe('API route neshClassicCache', () => { + const path = '/api/pages-cached-api'; + + test('If revalidate is called, then page should be fresh after reload', async ({ baseURL }) => { + const url = new URL(path, `${baseURL}:3000`); + + const revalidateByApiResponse = await revalidateByApi(path, `${baseURL}:3000`); + + expect(revalidateByApiResponse.revalidated).toBe(true); + + const response = await fetch(url.href); + + if (!response.ok) { + throw new Error('Failed to fetch'); + } + + const json = (await response.json()) as { props: { count: number; timeMs: string; revalidateAfterMs: string } }; + + const time = Number.parseInt(json.props.timeMs, 10); + + const revalidateAfter = Number.parseInt(json.props.revalidateAfterMs, 10); + + expect(time < revalidateAfter).toBe(true); + }); + + test('If revalidate is called on page A, then page B should be fresh on load and value must be updated', async ({ + baseURL, + }) => { + const appAUrl = new URL(path, `${baseURL}:3000`); + + const appBUrl = new URL(path, `${baseURL}:3001`); + + await revalidateByApi(path, `${baseURL}:3000`); + + const appAResponse = await fetch(appAUrl.href); + + if (!appAResponse.ok) { + throw new Error('Failed to fetch'); + } + + const appAJson = (await appAResponse.json()) as { + props: { count: number; timeMs: string; revalidateAfterMs: string }; + }; + + const time = Number.parseInt(appAJson.props.timeMs, 10); + + const revalidateAfter = Number.parseInt(appAJson.props.revalidateAfterMs, 10); + + expect(time < revalidateAfter).toBe(true); + + const appACount = appAJson.props.count; + + await revalidateByApi(path, `${baseURL}:3000`); + + const appBResponse = await fetch(appBUrl.href); + + if (!appBResponse.ok) { + throw new Error('Failed to fetch'); + } + + const appBJson = (await appBResponse.json()) as { + props: { count: number; timeMs: string; revalidateAfterMs: string }; + }; + + const appBCount = appBJson.props.count; + + expect(appBCount - appACount === 1).toBe(true); + }); + + test('Page should be fresh after becoming stale and reloaded twice', async ({ baseURL }) => { + const url = new URL(path, `${baseURL}:3000`); + + await revalidateByApi(path, `${baseURL}:3000`); + + const response1 = await fetch(url.href); + + if (!response1.ok) { + throw new Error('Failed to fetch'); + } + + const json1 = (await response1.json()) as { + props: { count: number; timeMs: string; revalidateAfterMs: string }; + }; + + const time = Number.parseInt(json1.props.timeMs, 10); + + const revalidateAfter = Number.parseInt(json1.props.revalidateAfterMs, 10); + + expect(time < revalidateAfter).toBe(true); + + await Timers.setTimeout(revalidateAfter - Date.now()); + + await fetch(url.href); + const response2 = await fetch(url.href); + + if (!response2.ok) { + throw new Error('Failed to fetch'); + } + + const json2 = (await response2.json()) as { + props: { count: number; timeMs: string; revalidateAfterMs: string }; + }; + + expect(json2.props.count - json1.props.count === 1).toBe(true); + }); +}); diff --git a/apps/cache-testing/tests/test-helpers.ts b/apps/cache-testing/tests/test-helpers.ts index 496cc237..079475d6 100644 --- a/apps/cache-testing/tests/test-helpers.ts +++ b/apps/cache-testing/tests/test-helpers.ts @@ -29,3 +29,28 @@ export async function refreshPageCache(page: Page, by: 'tag' | 'path') { await page.reload(); } + +export async function revalidateByApi( + path: string, + base: string, + router: 'app' | 'pages' = 'app', + by: 'path' | 'tag' = 'tag', +): Promise<{ revalidated: boolean; now: string }> { + const url = new URL(`/api/revalidate-${router}`, base); + + url.searchParams.append(by, path); + + const response = await fetch(url); + + if (!response.ok) { + throw new Error('Failed to revalidate'); + } + + const json = (await response.json()) as { revalidated: boolean; now: string }; + + if (!json.revalidated) { + throw new Error('Failed to revalidate'); + } + + return json; +} diff --git a/docs/cache-handler-docs/src/pages/functions/_meta.ts b/docs/cache-handler-docs/src/pages/functions/_meta.ts index 34ada859..dfb9db56 100644 --- a/docs/cache-handler-docs/src/pages/functions/_meta.ts +++ b/docs/cache-handler-docs/src/pages/functions/_meta.ts @@ -1,3 +1,4 @@ export default { 'nesh-cache': 'neshCache', + 'nesh-classic-cache': 'neshClassicCache', }; diff --git a/docs/cache-handler-docs/src/pages/functions/nesh-cache.mdx b/docs/cache-handler-docs/src/pages/functions/nesh-cache.mdx index 826e1cd9..a5fe77c4 100644 --- a/docs/cache-handler-docs/src/pages/functions/nesh-cache.mdx +++ b/docs/cache-handler-docs/src/pages/functions/nesh-cache.mdx @@ -30,7 +30,7 @@ This is an object that controls how the cache behaves. It can contain the follow ## Example -```jsx filename="./src/app/page.js" copy +```jsx filename="src/app/page.js" copy import { neshCache } from '@neshca/cache-handler/functions'; import axios from 'axios'; diff --git a/docs/cache-handler-docs/src/pages/functions/nesh-classic-cache.mdx b/docs/cache-handler-docs/src/pages/functions/nesh-classic-cache.mdx new file mode 100644 index 00000000..f601055f --- /dev/null +++ b/docs/cache-handler-docs/src/pages/functions/nesh-classic-cache.mdx @@ -0,0 +1,80 @@ +import { Callout } from 'nextra/components'; + +# neshClassicCache + +`neshClassicCache` allows you to cache the results of expensive operations, like database queries, and reuse them across multiple requests. Unlike the [`neshCache`](/functions/nesh-cache) or [`unstable_cache` ↗](https://nextjs.org/docs/app/api-reference/functions/unstable_cache) function, `neshClassicCache` must be used in a Next.js Pages Router allowing users to cache data in the `getServerSideProps` and API routes. + +This function is experimental, the API may change in the future. Use with caution. + + + Cache entries created with `neshClassicCache` can be revalidated only by the [`revalidateTag` + ↗](https://nextjs.org/docs/app/api-reference/functions/revalidateTag) method. + + +## Parameters + +### `fetchData` + +This is an asynchronous function that fetches the data you want to cache. It must be a function that returns a `Promise`. + +### `commonOptions` + +This is an object that controls how the cache behaves. It can contain the following properties: + +- `tags` - An array of tags to associate with the cached result. Tags are used to revalidate the cache using the `revalidateTag` and `revalidatePath` functions. + +- `revalidate` - The revalidation interval in seconds. Must be a positive integer or `false` to disable revalidation. Defaults to `export const revalidate = time;` in the current route. + +- `argumentsSerializer` - A function that serializes the arguments passed to the callback function. Use it to create a cache key. Defaults to `JSON.stringify(args)`. + +- `resultSerializer` - A function that serializes the result of the callback function.Defaults to `Buffer.from(JSON.stringify(data)).toString('base64')`. + +- `resultDeserializer` - A function that deserializes the string representation of the result of the callback function. Defaults to `JSON.parse(Buffer.from(data, 'base64').toString('utf-8'))`. + +- `responseContext` - The response context object. If provided, it is used to set the cache headers acoording to the `revalidate` option. Defaults to `undefined`. + +## Returns + +`neshClassicCache` returns a function that when invoked, returns a `Promise` that resolves to the cached data. If the data is not in the cache, the provided function will be invoked, and its result will be cached and returned. The first argument is the `options` which can be used to override the common [`options`](/functions/nesh-classic-cache#commonoptions). In addition, there is a `cacheKey` option that can be used to provide a custom cache key. + +## Example + +```jsx filename="src/pages/api/api-example.js" copy +import { neshClassicCache } from '@neshca/cache-handler/functions'; +import axios from 'axios'; + +export const config = { + runtime: 'nodejs', +}; + +async function getViaAxios(url) { + try { + return (await axios.get(url.href)).data; + } catch (_error) { + return null; + } +} + +const cachedAxios = neshClassicCache(getViaAxios); + +export default async function handler(request, response) { + if (request.method !== 'GET') { + return response.status(405).send(null); + } + + const revalidate = 5; + + const url = new URL('https://api.example.com/data.json'); + + // Add tags to be able to revalidate the cache + const data = await cachedAxios({ revalidate, tags: [url.pathname], responseContext: response }, url); + + if (!data) { + response.status(404).send('Not found'); + + return; + } + + response.json(data); +} +``` diff --git a/docs/cache-handler-docs/src/pages/index.mdx b/docs/cache-handler-docs/src/pages/index.mdx index b39bede2..82ca3d62 100644 --- a/docs/cache-handler-docs/src/pages/index.mdx +++ b/docs/cache-handler-docs/src/pages/index.mdx @@ -12,6 +12,8 @@ Next.js applications are often deployed in a self-hosted distributed environment - **TTL Management**: Automatic cache cleanup to keep storage space efficient. - **Support for Next.js Routers**: Full support and one setup for the Pages and the App Router. - **`neshCache` Function**: Utilize the [`neshCache`](/functions/nesh-cache) function to replace `unstable_cache` for more control over caching. +- **`neshClassicCache` Function**: Use the CacheHandler in the Pages Router to cache the result of expensive operations in the `getServerSideProps` and API routes. +- **Pre-populate the Cache with Initial Data**: Automatically pre-populate the cache with the initial data when the application starts using the [instrumentation hook ↗](/usage/populating-cache-on-start). ## Getting Started diff --git a/docs/cache-handler-docs/theme.config.jsx b/docs/cache-handler-docs/theme.config.jsx index 8ca0ab79..43d633fa 100644 --- a/docs/cache-handler-docs/theme.config.jsx +++ b/docs/cache-handler-docs/theme.config.jsx @@ -43,19 +43,19 @@ export default { ), }, banner: { - key: 'version-1.7.0', + key: 'version-1.8.0', content: ( ), }, diff --git a/internal/next-common/src/next-common.ts b/internal/next-common/src/next-common.ts index 70b5330a..41dc4788 100644 --- a/internal/next-common/src/next-common.ts +++ b/internal/next-common/src/next-common.ts @@ -1,13 +1,10 @@ // biome-ignore lint/style/useNodejsImportProtocol: RollupError: "OutgoingHttpHeaders" is not exported by "node:http" import type { OutgoingHttpHeaders } from 'http'; - -import type { RouteMetadata as NextRouteMetadata } from 'next/dist/export/routes/types'; import type { CacheHandler, CacheHandlerValue as NextCacheHandlerValue } from 'next/dist/server/lib/incremental-cache'; import type FileSystemCache from 'next/dist/server/lib/incremental-cache/file-system-cache'; -import type { Revalidate } from 'next/dist/server/lib/revalidate'; +import type { IncrementalCacheValue } from 'next/dist/server/response-cache/types'; export type { PrerenderManifest } from 'next/dist/build'; -export type { Revalidate } from 'next/dist/server/lib/revalidate'; export type { CacheHandler, CacheHandlerContext } from 'next/dist/server/lib/incremental-cache'; export type { CachedRedirectValue, @@ -16,9 +13,16 @@ export type { CachedFetchValue, IncrementalCacheValue, IncrementalCacheEntry, - IncrementalCacheKindHint, } from 'next/dist/server/response-cache/types'; +export type NextRouteMetadata = { + status: number | undefined; + headers: OutgoingHttpHeaders | undefined; + postponed: string | undefined; +}; + +export type Revalidate = false | number; + /** * A set of time periods and timestamps for controlling cache behavior. */ @@ -97,14 +101,9 @@ export type UnwrappedCacheHandler = { revalidateTag(...args: CacheHandlerParametersRevalidateTag): Awaited; }; -export type IncrementalCachedPageValue = { - kind: 'PAGE'; - html: string; - pageData: object; - postponed: string | undefined; - headers: OutgoingHttpHeaders | undefined; - status: number | undefined; -}; +type ExtractIncrementalCacheKind = T extends { kind: Kind } ? T : never; + +export type IncrementalCachedPageValue = ExtractIncrementalCacheKind; export type TagsManifest = { version: 1; diff --git a/packages/cache-handler/README.md b/packages/cache-handler/README.md index d4e287d9..7a4315b6 100644 --- a/packages/cache-handler/README.md +++ b/packages/cache-handler/README.md @@ -8,9 +8,9 @@ ## Latest Release -🎉 **Version 1.7.0** has been released! It now includes the [`registerInitialCache` instrumentation hook ↗](https://caching-tools.github.io/next-shared-cache/usage/populating-cache-on-start), which allows the cache to be pre-populated with the initial data when the application starts. +🎉 **Version 1.8.0** has been released! It now includes the [`neshClassicCache` function ↗](https://caching-tools.github.io/next-shared-cache/functions/nesh-classic-cache), that allows you to cache the results of expensive operations in the `getServerSideProps` and API routes. -Do not forget the [`experimental-redis-cluster`](https://caching-tools.github.io/next-shared-cache/handlers/experimental-redis-cluster) Handler for Redis Cluster support from a previous release. +Do not forget the [`registerInitialCache` instrumentation hook ↗](https://caching-tools.github.io/next-shared-cache/usage/populating-cache-on-start), that allows the cache to be pre-populated with the initial data when the application starts. Check out the [changelog](https://github.com/caching-tools/next-shared-cache/blob/canary/packages/cache-handler/CHANGELOG.md) for more details. @@ -37,6 +37,7 @@ Welcome to `@neshca/cache-handler` (pronounced /ˈnæʃkʌ/), a specialized ISR/ - **TTL Management**: Automatic cache cleanup to keep storage space efficient. - **Support for Next.js Routers**: Full support and one setup for the Pages and the App Router. - **`neshCache` Function**: Utilize the [`neshCache` ↗](https://caching-tools.github.io/next-shared-cache/functions/nesh-cache) function to replace `unstable_cache` for more control over caching. +- **`neshClassicCache` Function**: Use the CacheHandler in the Pages Router to cache the result of expensive operations in the `getServerSideProps` and API routes. - **Pre-populate the Cache with Initial Data**: Automatically pre-populate the cache with the initial data when the application starts using the [instrumentation hook ↗](https://caching-tools.github.io/next-shared-cache/usage/populating-cache-on-start). ## Getting Started diff --git a/packages/cache-handler/src/functions/functions.ts b/packages/cache-handler/src/functions/functions.ts index c120ccb1..14804052 100644 --- a/packages/cache-handler/src/functions/functions.ts +++ b/packages/cache-handler/src/functions/functions.ts @@ -1 +1,2 @@ export { neshCache } from './nesh-cache'; +export { neshClassicCache } from './nesh-classic-cache'; diff --git a/packages/cache-handler/src/functions/nesh-classic-cache.ts b/packages/cache-handler/src/functions/nesh-classic-cache.ts new file mode 100644 index 00000000..2c755973 --- /dev/null +++ b/packages/cache-handler/src/functions/nesh-classic-cache.ts @@ -0,0 +1,316 @@ +import assert from 'node:assert/strict'; +import { createHash } from 'node:crypto'; +import type { Revalidate } from '@neshca/next-common'; +import { staticGenerationAsyncStorage } from 'next/dist/client/components/static-generation-async-storage.external.js'; +import type { IncrementalCache } from 'next/dist/server/lib/incremental-cache'; +import type { CacheHandler } from '../cache-handler'; +import { TIME_ONE_YEAR } from '../constants'; + +declare global { + var __incrementalCache: IncrementalCache | undefined; +} + +function hashCacheKey(url: string): string { + // this should be bumped anytime a fix is made to cache entries + // that should bust the cache + const MAIN_KEY_PREFIX = 'nesh-pages-cache-v1'; + + const cacheString = JSON.stringify([MAIN_KEY_PREFIX, url]); + + return createHash('sha256').update(cacheString).digest('hex'); +} + +/** + * Serializes the given arguments into a string representation. + * + * @param object - The arguments to be serialized. + * + * @returns The serialized string representation of the arguments. + */ +function serializeArguments(object: object): string { + return JSON.stringify(object); +} + +/** + * Serializes the given object into a string representation. + * + * @param object - The object to be serialized. + * + * @returns The serialized string representation of the object. + */ +function serializeResult(object: object): string { + return Buffer.from(JSON.stringify(object), 'utf-8').toString('base64'); +} + +/** + * Deserializes a string representation of an object into its original form. + * + * @param string - The string representation of the object. + * + * @returns The deserialized object. + */ +function deserializeResult(string: string): T { + return JSON.parse(Buffer.from(string, 'base64').toString('utf-8')); +} + +/** + * @template Arguments - The type of the arguments passed to the callback function. + * + * @template Result - The type of the value returned by the callback function. + */ +type Callback = (...args: Arguments) => Result; + +/** + * An object containing options for the cache. + */ +type NeshClassicCacheOptions = { + /** + * The response context object. + * It is used to set the cache headers. + */ + responseContext?: object & { + setHeader(name: string, value: number | string | readonly string[]): unknown; + }; + /** + * An array of tags to associate with the cached result. + * Tags are used to revalidate the cache using the `revalidateTag` function. + */ + tags?: string[]; + /** + * The revalidation interval in seconds. + * Must be a positive integer or `false` to disable revalidation. + * + * @default revalidate // of the current route + */ + revalidate?: Revalidate; + /** + * A custom cache key to be used instead of creating one from the arguments. + */ + cacheKey?: string; + /** + * A function that serializes the arguments passed to the callback function. + * Use it to create a cache key. + * + * @default (args) => JSON.stringify(args) + * + * @param callbackArguments - The arguments passed to the callback function. + */ + argumentsSerializer?(callbackArguments: Arguments): string; + /** + * + * A function that serializes the result of the callback function. + * + * @default (result) => Buffer.from(JSON.stringify(result)).toString('base64') + * + * @param result - The result of the callback function. + */ + resultSerializer?(result: Result): string; + /** + * A function that deserializes the string representation of the result of the callback function. + * + * @default (string) => JSON.parse(Buffer.from(string, 'base64').toString('utf-8')) + * + * @param string - The string representation of the result of the callback function. + */ + resultDeserializer?(string: string): Result; +}; + +/** + * An object containing common options for the cache. + */ +type CommonNeshClassicCacheOptions = Omit< + NeshClassicCacheOptions, + 'cacheKey' | 'responseContext' +>; + +/** + * Experimental implementation of the "`unstable_cache`" for classic Next.js Pages Router. + * It allows to cache data in the `getServerSideProps` and API routes. + * + * The API may change in the future. Use with caution. + * + * Caches the result of a callback function and returns a cached version if available. + * If not available, it executes the callback function, caches the result, and returns it. + * + * @param callback - The callback function to be cached. + * + * @param options - An object containing options for the cache. + * + * @param options.responseContext - The response context object. + * It is used to set the cache headers. + * + * @param options.tags - An array of tags to associate with the cached result. + * Tags are used to revalidate the cache using the `revalidateTag` function. + * + * @param options.revalidate - The revalidation interval in seconds. + * Must be a positive integer or `false` to disable revalidation. + * Defaults to `export const revalidate = time;` in the current route. + * + * @param options.argumentsSerializer - A function that serializes the arguments passed to the callback function. + * Use it to create a cache key. Defaults to `JSON.stringify(args)`. + * + * @param options.resultSerializer - A function that serializes the result of the callback function. + * Defaults to `Buffer.from(JSON.stringify(data)).toString('base64')`. + * + * @param options.resultDeserializer - A function that deserializes the string representation of the result of the callback function. + * Defaults to `JSON.parse(Buffer.from(data, 'base64').toString('utf-8'))`. + * + * @returns The callback wrapped in a caching function. + * First argument is the cache options which can be used to override the common options. + * In addition, there is a `cacheKey` option that can be used to provide a custom cache key. + * + * @throws If the `neshClassicCache` function is not used in a Next.js Pages directory or if the `revalidate` option is invalid. + * + * @example file: `src/pages/api/api-example.js` + * + * ```js + * import { neshClassicCache } from '@neshca/cache-handler/functions'; + * import axios from 'axios'; + * + * export const config = { + * runtime: 'nodejs', + * }; + * + * async function getViaAxios(url) { + * try { + * return (await axios.get(url.href)).data; + * } catch (_error) { + * return null; + * } + * } + * + * const cachedAxios = neshClassicCache(getViaAxios); + * + * export default async function handler(request, response) { + * if (request.method !== 'GET') { + * return response.status(405).send(null); + * } + * + * const revalidate = 5; + * + * const url = new URL('https://api.example.com/data.json'); + * + * // Add tags to be able to revalidate the cache + * const data = await cachedAxios({ revalidate, tags: [url.pathname], responseContext: response }, url); + * + * if (!data) { + * response.status(404).send('Not found'); + * + * return; + * } + * + * response.json(data); + * } + * ``` + * + * @remarks + * - This function is intended to be used in a Next.js Pages directory. + * + * @since 1.8.0 + */ +export function neshClassicCache>( + callback: Callback, + commonOptions?: CommonNeshClassicCacheOptions, +) { + if (commonOptions?.resultSerializer && !commonOptions?.resultDeserializer) { + throw new Error('neshClassicCache: if you provide a resultSerializer, you must provide a resultDeserializer.'); + } + + if (commonOptions?.resultDeserializer && !commonOptions?.resultSerializer) { + throw new Error('neshClassicCache: if you provide a resultDeserializer, you must provide a resultSerializer.'); + } + + const commonRevalidate = commonOptions?.revalidate ?? false; + const commonArgumentsSerializer = commonOptions?.argumentsSerializer ?? serializeArguments; + const commonResultSerializer = commonOptions?.resultSerializer ?? serializeResult; + const commonResultDeserializer = commonOptions?.resultDeserializer ?? deserializeResult; + + async function cachedCallback( + options: NeshClassicCacheOptions, + ...args: Arguments + ): Promise { + const store = staticGenerationAsyncStorage.getStore(); + + assert(!store?.incrementalCache, 'neshClassicCache must be used in a Next.js Pages directory.'); + + const cacheHandler = globalThis?.__incrementalCache?.cacheHandler as + | InstanceType + | undefined; + + assert(cacheHandler, 'neshClassicCache must be used in a Next.js Pages directory.'); + + const { + responseContext, + tags = [], + revalidate = commonRevalidate, + cacheKey, + argumentsSerializer = commonArgumentsSerializer, + resultDeserializer = commonResultDeserializer, + resultSerializer = commonResultSerializer, + } = options ?? {}; + + assert( + revalidate === false || (revalidate > 0 && Number.isInteger(revalidate)), + 'neshClassicCache: revalidate must be a positive integer or false.', + ); + + responseContext?.setHeader('Cache-Control', `public, s-maxage=${revalidate}, stale-while-revalidate`); + + const uniqueTags = new Set(); + + for (const tag of tags) { + if (typeof tag === 'string') { + uniqueTags.add(tag); + } else { + console.warn(`neshClassicCache: Invalid tag: ${tag}. Skipping it. Expected a string.`); + } + } + + const allTags = Array.from(uniqueTags); + + const key = hashCacheKey(`nesh-classic-cache-${cacheKey ?? argumentsSerializer(args)}`); + + const cacheData = await cacheHandler.get(key, { + revalidate, + tags: allTags, + kindHint: 'fetch', + fetchUrl: 'neshClassicCache', + }); + + if ( + cacheData?.value?.kind === 'FETCH' && + cacheData.lifespan && + cacheData.lifespan.staleAt > Date.now() / 1000 + ) { + return resultDeserializer(cacheData.value.data.body); + } + + const data: Result = await callback(...args); + + cacheHandler.set( + key, + { + kind: 'FETCH', + data: { + body: resultSerializer(data), + headers: {}, + url: 'neshClassicCache', + }, + revalidate: revalidate || TIME_ONE_YEAR, + }, + { revalidate, tags, fetchCache: true, fetchUrl: 'neshClassicCache' }, + ); + + if ( + cacheData?.value?.kind === 'FETCH' && + cacheData?.lifespan && + cacheData.lifespan.expireAt > Date.now() / 1000 + ) { + return resultDeserializer(cacheData.value.data.body); + } + + return data; + } + + return cachedCallback; +} diff --git a/packages/cache-handler/src/instrumentation/instrumentation.ts b/packages/cache-handler/src/instrumentation/instrumentation.ts index 79c27163..ae364500 100644 --- a/packages/cache-handler/src/instrumentation/instrumentation.ts +++ b/packages/cache-handler/src/instrumentation/instrumentation.ts @@ -1 +1 @@ -export { registerInitialCache, type RegisterInitialCacheOptions } from './instrumentation.cache'; +export { registerInitialCache, type RegisterInitialCacheOptions } from './register-initial-cache'; diff --git a/packages/cache-handler/src/instrumentation/instrumentation.cache.ts b/packages/cache-handler/src/instrumentation/register-initial-cache.ts similarity index 94% rename from packages/cache-handler/src/instrumentation/instrumentation.cache.ts rename to packages/cache-handler/src/instrumentation/register-initial-cache.ts index b265d9b2..26fe3e01 100644 --- a/packages/cache-handler/src/instrumentation/instrumentation.cache.ts +++ b/packages/cache-handler/src/instrumentation/register-initial-cache.ts @@ -1,11 +1,9 @@ import { promises as fsPromises } from 'node:fs'; import path from 'node:path'; -import type { CachedFetchValue } from '@neshca/next-common'; +import type { CachedFetchValue, Revalidate, RouteMetadata } from '@neshca/next-common'; import { PRERENDER_MANIFEST, SERVER_DIRECTORY } from 'next/constants'; import type { PrerenderManifest } from 'next/dist/build'; -import type { RouteMetadata } from 'next/dist/export/routes/types'; import { CACHE_ONE_YEAR } from 'next/dist/lib/constants'; -import type { Revalidate } from 'next/dist/server/lib/revalidate'; import { getTagsFromHeaders } from '../helpers/get-tags-from-headers'; type CacheHandlerType = typeof import('../cache-handler').CacheHandler; @@ -107,7 +105,7 @@ export async function registerInitialCache(CacheHandler: CacheHandlerType, optio if (debug) { console.warn( '[CacheHandler] [%s] %s %s', - 'instrumentation.cache', + 'registerInitialCache', 'Failed to read prerender manifest', `Error: ${error}`, ); @@ -129,7 +127,7 @@ export async function registerInitialCache(CacheHandler: CacheHandlerType, optio if (debug) { console.warn( '[CacheHandler] [%s] %s %s', - 'instrumentation.cache', + 'registerInitialCache', 'Failed to create CacheHandler instance', `Error: ${error}`, ); @@ -150,7 +148,7 @@ export async function registerInitialCache(CacheHandler: CacheHandlerType, optio if (debug) { console.warn( '[CacheHandler] [%s] %s %s', - 'instrumentation.cache', + 'registerInitialCache', 'Failed to read route body file', `Error: ${error}`, ); @@ -177,7 +175,7 @@ export async function registerInitialCache(CacheHandler: CacheHandlerType, optio if (debug) { console.warn( '[CacheHandler] [%s] %s %s', - 'instrumentation.cache', + 'registerInitialCache', 'Failed to read route body or metadata file, or parse metadata', `Error: ${error}`, ); @@ -201,7 +199,7 @@ export async function registerInitialCache(CacheHandler: CacheHandlerType, optio if (debug) { console.warn( '[CacheHandler] [%s] %s %s', - 'instrumentation.cache', + 'registerInitialCache', 'Failed to set route cache. Please check if the CacheHandler is configured correctly', `Error: ${error}`, ); @@ -225,7 +223,7 @@ export async function registerInitialCache(CacheHandler: CacheHandlerType, optio if (debug) { console.warn( '[CacheHandler] [%s] %s %s', - 'instrumentation.cache', + 'registerInitialCache', 'Failed to read page html file', `Error: ${error}`, ); @@ -253,7 +251,7 @@ export async function registerInitialCache(CacheHandler: CacheHandlerType, optio if (debug) { console.warn( '[CacheHandler] [%s] %s %s', - 'instrumentation.cache', + 'registerInitialCache', 'Failed to read page html, page data, or metadata file, or parse metadata', `Error: ${error}`, ); @@ -279,7 +277,7 @@ export async function registerInitialCache(CacheHandler: CacheHandlerType, optio if (debug) { console.warn( '[CacheHandler] [%s] %s %s', - 'instrumentation.cache', + 'registerInitialCache', 'Failed to set page cache. Please check if the CacheHandler is configured correctly', `Error: ${error}`, ); @@ -311,7 +309,7 @@ export async function registerInitialCache(CacheHandler: CacheHandlerType, optio if (debug) { console.warn( '[CacheHandler] [%s] %s %s', - 'instrumentation.cache', + 'registerInitialCache', 'Failed to read cache/fetch-cache directory', `Error: ${error}`, ); @@ -332,7 +330,7 @@ export async function registerInitialCache(CacheHandler: CacheHandlerType, optio if (debug) { console.warn( '[CacheHandler] [%s] %s %s', - 'instrumentation.cache', + 'registerInitialCache', 'Failed to read fetch cache file', `Error: ${error}`, ); @@ -349,7 +347,7 @@ export async function registerInitialCache(CacheHandler: CacheHandlerType, optio if (debug) { console.warn( '[CacheHandler] [%s] %s %s', - 'instrumentation.cache', + 'registerInitialCache', 'Failed to parse fetch cache file', `Error: ${error}`, ); @@ -371,7 +369,7 @@ export async function registerInitialCache(CacheHandler: CacheHandlerType, optio if (debug) { console.warn( '[CacheHandler] [%s] %s %s', - 'instrumentation.cache', + 'registerInitialCache', 'Failed to set fetch cache. Please check if the CacheHandler is configured correctly', `Error: ${error}`, ); diff --git a/turbo.json b/turbo.json index b9685b7a..7f11e68f 100644 --- a/turbo.json +++ b/turbo.json @@ -6,14 +6,7 @@ "tasks": { "build": { "dependsOn": ["^build"], - "env": [ - "REDIS_URL", - "REMOTE_CACHE_SERVER_BASE_URL", - "SERVER_STARTED", - "PORT", - "PPR_ENABLED", - "HANDLER_PATH" - ], + "env": ["REDIS_URL", "REMOTE_CACHE_SERVER_BASE_URL", "SERVER_STARTED", "PORT", "PPR_ENABLED"], "outputs": [".next/**", "!.next/cache/**", "dist/**", "out/**"] }, "build:docs": { From a5fb12ee416cf9930ad76bf39d3c1372fa6dc695 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Thu, 17 Oct 2024 10:31:29 +0300 Subject: [PATCH 421/458] Version Packages (#814) Co-authored-by: github-actions[bot] --- .changeset/large-rats-bake.md | 5 ----- packages/cache-handler/CHANGELOG.md | 6 ++++++ packages/cache-handler/package.json | 2 +- 3 files changed, 7 insertions(+), 6 deletions(-) delete mode 100644 .changeset/large-rats-bake.md diff --git a/.changeset/large-rats-bake.md b/.changeset/large-rats-bake.md deleted file mode 100644 index b26a0617..00000000 --- a/.changeset/large-rats-bake.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@neshca/cache-handler': minor ---- - -Add the new `neshClassicCache` function to the `@neshca/cache-handler/functions` module allowing to cache the result of expensive operations in the `getServerSideProps` and a Next.js Pages API routes. diff --git a/packages/cache-handler/CHANGELOG.md b/packages/cache-handler/CHANGELOG.md index 2fbf1d3a..c253e0ca 100644 --- a/packages/cache-handler/CHANGELOG.md +++ b/packages/cache-handler/CHANGELOG.md @@ -1,5 +1,11 @@ # @neshca/cache-handler +## 1.8.0 + +### Minor Changes + +- b91f759: Add the new `neshClassicCache` function to the `@neshca/cache-handler/functions` module allowing to cache the result of expensive operations in the `getServerSideProps` and a Next.js Pages API routes. + ## 1.7.4 ### Patch Changes diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index f1a1d45b..e4364033 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -1,6 +1,6 @@ { "name": "@neshca/cache-handler", - "version": "1.7.4", + "version": "1.8.0", "description": "Next.js self-hosting simplified.", "keywords": [ "cache", From d1da9a53b376c98d8758f94c49e2caf45e1a73bb Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 17 Oct 2024 10:42:29 +0300 Subject: [PATCH 422/458] Bump @playwright/test from 1.48.0 to 1.48.1 (#815) Bumps [@playwright/test](https://github.com/microsoft/playwright) from 1.48.0 to 1.48.1. - [Release notes](https://github.com/microsoft/playwright/releases) - [Commits](https://github.com/microsoft/playwright/compare/v1.48.0...v1.48.1) --- updated-dependencies: - dependency-name: "@playwright/test" dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- package-lock.json | 26 +++++++++++++------------- 2 files changed, 14 insertions(+), 14 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 484ca26e..a5b2f4f3 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -26,7 +26,7 @@ }, "devDependencies": { "@next/eslint-plugin-next": "14.2.15", - "@playwright/test": "1.48.0", + "@playwright/test": "1.48.1", "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.12", diff --git a/package-lock.json b/package-lock.json index 2b0df62f..ef9770dd 100644 --- a/package-lock.json +++ b/package-lock.json @@ -46,7 +46,7 @@ }, "devDependencies": { "@next/eslint-plugin-next": "14.2.15", - "@playwright/test": "1.48.0", + "@playwright/test": "1.48.1", "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.12", @@ -2659,12 +2659,12 @@ } }, "node_modules/@playwright/test": { - "version": "1.48.0", - "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.48.0.tgz", - "integrity": "sha512-W5lhqPUVPqhtc/ySvZI5Q8X2ztBOUgZ8LbAFy0JQgrXZs2xaILrUcNO3rQjwbLPfGK13+rZsDa1FpG+tqYkT5w==", + "version": "1.48.1", + "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.48.1.tgz", + "integrity": "sha512-s9RtWoxkOLmRJdw3oFvhFbs9OJS0BzrLUc8Hf6l2UdCNd1rqeEyD4BhCJkvzeEoD1FsK4mirsWwGerhVmYKtZg==", "devOptional": true, "dependencies": { - "playwright": "1.48.0" + "playwright": "1.48.1" }, "bin": { "playwright": "cli.js" @@ -12443,12 +12443,12 @@ } }, "node_modules/playwright": { - "version": "1.48.0", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.48.0.tgz", - "integrity": "sha512-qPqFaMEHuY/ug8o0uteYJSRfMGFikhUysk8ZvAtfKmUK3kc/6oNl/y3EczF8OFGYIi/Ex2HspMfzYArk6+XQSA==", + "version": "1.48.1", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.48.1.tgz", + "integrity": "sha512-j8CiHW/V6HxmbntOfyB4+T/uk08tBy6ph0MpBXwuoofkSnLmlfdYNNkFTYD6ofzzlSqLA1fwH4vwvVFvJgLN0w==", "devOptional": true, "dependencies": { - "playwright-core": "1.48.0" + "playwright-core": "1.48.1" }, "bin": { "playwright": "cli.js" @@ -12461,9 +12461,9 @@ } }, "node_modules/playwright-core": { - "version": "1.48.0", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.48.0.tgz", - "integrity": "sha512-RBvzjM9rdpP7UUFrQzRwR8L/xR4HyC1QXMzGYTbf1vjw25/ya9NRAVnXi/0fvFopjebvyPzsmoK58xxeEOaVvA==", + "version": "1.48.1", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.48.1.tgz", + "integrity": "sha512-Yw/t4VAFX/bBr1OzwCuOMZkY1Cnb4z/doAFSwf4huqAGWmf9eMNjmK7NiOljCdLmxeRYcGPPmcDgU0zOlzP0YA==", "devOptional": true, "bin": { "playwright-core": "cli.js" @@ -16547,7 +16547,7 @@ }, "packages/cache-handler": { "name": "@neshca/cache-handler", - "version": "1.7.4", + "version": "1.8.0", "license": "MIT", "dependencies": { "cluster-key-slot": "1.1.2", From 3a91160b54bd930d467edc8da35151066945e9cf Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Thu, 17 Oct 2024 23:37:48 +0300 Subject: [PATCH 423/458] Refactor monorepo setup and release workflow (#816) No functional changes --- .changeset/config.json | 6 +- .changeset/tricky-terms-attend.md | 5 + .github/workflows/deploy-docs.yml | 3 +- .github/workflows/release.yml | 18 +- .github/workflows/test-docs.yml | 2 + .github/workflows/tests.yml | 12 +- .npmrc | 2 - apps/cache-testing/package.json | 5 +- apps/cache-testing/run-app-instances.ts | 2 +- docs/cache-handler-docs/next.config.js | 4 +- docs/cache-handler-docs/package.json | 8 +- docs/contributing/cache-handler.md | 15 +- docs/contributing/diffscribe.md | 32 - docs/contributing/monorepo.md | 26 +- internal/backend/package.json | 4 +- internal/backend/src/backend.ts | 2 +- internal/next-common/package.json | 6 +- internal/next-lru-cache/package.json | 8 +- .../cache-types/next-cache-handler-value.ts | 2 +- package-lock.json | 2576 ++++++++++------- package.json | 27 +- packages/cache-handler/package.json | 10 +- packages/cache-handler/src/cache-handler.ts | 2 +- .../cache-handler/src/functions/nesh-cache.ts | 2 +- .../src/functions/nesh-classic-cache.ts | 2 +- .../cache-handler/src/handlers/local-lru.ts | 6 +- .../src/helpers/is-implicit-tag.ts | 2 +- .../src/helpers/is-tags-manifest.ts | 2 +- .../instrumentation/register-initial-cache.ts | 2 +- packages/cache-handler/tsconfig.json | 4 +- packages/diffscribe/CHANGELOG.md | 31 - packages/diffscribe/LICENSE | 21 - packages/diffscribe/README.md | 89 - packages/diffscribe/package.json | 37 - packages/diffscribe/src/diffscribe.ts | 205 -- packages/diffscribe/tsconfig.json | 5 - packages/diffscribe/tsup.config.ts | 11 - packages/json-replacer-reviver/package.json | 2 - packages/server/package.json | 6 +- packages/server/src/server.ts | 4 +- packages/server/tsconfig.json | 2 +- packages/server/tsup.config.ts | 2 +- turbo.json | 11 +- 43 files changed, 1668 insertions(+), 1555 deletions(-) create mode 100644 .changeset/tricky-terms-attend.md delete mode 100644 docs/contributing/diffscribe.md delete mode 100644 packages/diffscribe/CHANGELOG.md delete mode 100644 packages/diffscribe/LICENSE delete mode 100644 packages/diffscribe/README.md delete mode 100644 packages/diffscribe/package.json delete mode 100644 packages/diffscribe/src/diffscribe.ts delete mode 100644 packages/diffscribe/tsconfig.json delete mode 100644 packages/diffscribe/tsup.config.ts diff --git a/.changeset/config.json b/.changeset/config.json index ea188a01..60b0c62e 100644 --- a/.changeset/config.json +++ b/.changeset/config.json @@ -9,9 +9,9 @@ "updateInternalDependencies": "patch", "ignore": [ "@neshca/server", - "backend", - "cache-handler-docs", - "cache-testing", + "@repo/backend", + "@repo/cache-handler-docs", + "@repo/cache-testing", "@repo/eslint-config", "@repo/prettier-config" ] diff --git a/.changeset/tricky-terms-attend.md b/.changeset/tricky-terms-attend.md new file mode 100644 index 00000000..1ab9bc92 --- /dev/null +++ b/.changeset/tricky-terms-attend.md @@ -0,0 +1,5 @@ +--- +'@neshca/cache-handler': patch +--- + +Refactor monorepo setup and release workflow. No functional changes. diff --git a/.github/workflows/deploy-docs.yml b/.github/workflows/deploy-docs.yml index 688dcaad..0188b36e 100644 --- a/.github/workflows/deploy-docs.yml +++ b/.github/workflows/deploy-docs.yml @@ -1,5 +1,6 @@ name: Deploy docs to Pages - +env: + CI: true on: push: branches: ['canary'] diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index f574a782..aa1e8f13 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -1,5 +1,6 @@ name: Release - +env: + CI: true on: push: branches: @@ -27,12 +28,23 @@ jobs: cache: 'npm' - name: Install Dependencies run: npm ci + - name: Build packages + run: npm run build:packages + - name: Check code style + run: npm run codestyle:check + - name: Creating .npmrc + run: | + cat << EOF > "$HOME/.npmrc" + //registry.npmjs.org/:_authToken=$NPM_TOKEN + EOF + env: + NPM_TOKEN: ${{ secrets.NPM_TOKEN }} - name: Create Release Pull Request or Publish to npm id: changesets uses: changesets/action@v1 with: - publish: npm run release - version: npm run version-packages + publish: npm run ci:publish + version: npm run ci:version env: NPM_TOKEN: ${{ secrets.NPM_TOKEN }} GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/.github/workflows/test-docs.yml b/.github/workflows/test-docs.yml index b2c33d2c..043efe2b 100644 --- a/.github/workflows/test-docs.yml +++ b/.github/workflows/test-docs.yml @@ -1,4 +1,6 @@ name: Check Docs Build +env: + CI: true on: pull_request: branches: [canary] diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 5ee72e63..d90991de 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -1,4 +1,6 @@ name: Tests +env: + CI: true on: push: branches: [canary] @@ -67,17 +69,17 @@ jobs: - name: Install dependencies run: npm ci - name: Install Playwright Browsers - run: npm run playwright:install -w apps/cache-testing - - name: Build - run: npm run build + run: npm run playwright:install -w @repo/cache-testing + - name: Build packages + run: npm run build:packages - name: Check code style run: npm run codestyle:check - name: Run unit tests run: npm test - name: Run e2e tests run: | - npm run start -w backend & - npm run build:app + npm run start:backend & + npm run build:test-app npm run e2e - uses: actions/upload-artifact@v4 if: always() diff --git a/.npmrc b/.npmrc index dd081e3b..1dab4ed4 100644 --- a/.npmrc +++ b/.npmrc @@ -1,3 +1 @@ -//registry.npmjs.org/:_authToken=${NPM_TOKEN} -auto-install-peers = true save-exact = true diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index a5b2f4f3..db62ad48 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -1,14 +1,12 @@ { - "name": "cache-testing", + "name": "@repo/cache-testing", "version": "0.0.0", "private": true, "license": "MIT", "scripts": { "build": "next build && ./create-instances.sh", - "clean": "rimraf ./.next ./dist ./.turbo ./node_modules ./playwright-report ./test-results", "cluster:start": "pm2 start cluster.config.js --env production", "cluster:stop": "pm2 kill", - "dev:app": "next dev", "e2e": "playwright test --config=./playwright.config.ts", "e2e:ui": "playwright test --ui --config=./playwright.config.ts", "eslint:check": "next lint", @@ -37,7 +35,6 @@ "eslint": "8.57.1", "fastify": "5.0.0", "pm2": "5.4.2", - "rimraf": "6.0.1", "tsx": "4.19.1", "typescript": "5.6.3" } diff --git a/apps/cache-testing/run-app-instances.ts b/apps/cache-testing/run-app-instances.ts index 5aef554b..67c6c22d 100644 --- a/apps/cache-testing/run-app-instances.ts +++ b/apps/cache-testing/run-app-instances.ts @@ -21,7 +21,7 @@ const args = process.argv.slice(2).reduce>((acc, arg) => const { hostname = 'localhost', ports = '3000' } = args; function getNameByPort(port: string): string { - return `@neshca/cache-testing-${port}`; + return `@repo/cache-testing-${port}`; } pm2.connect(true, (connectError?: Error) => { diff --git a/docs/cache-handler-docs/next.config.js b/docs/cache-handler-docs/next.config.js index 297181a4..e9daf49c 100644 --- a/docs/cache-handler-docs/next.config.js +++ b/docs/cache-handler-docs/next.config.js @@ -1,6 +1,6 @@ import nextra from 'nextra'; -const basePath = process.env.NODE_ENV === 'development' ? undefined : '/next-shared-cache'; +const basePath = process.env.CI ? '/next-shared-cache' : ''; const withNextra = nextra({ theme: 'nextra-theme-docs', @@ -13,6 +13,6 @@ export default withNextra({ basePath, images: { unoptimized: true }, env: { - NEXT_PUBLIC_BASE_URL: basePath ?? '', + NEXT_PUBLIC_BASE_URL: basePath, }, }); diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index ed3e55d7..3a82d8f6 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -1,15 +1,14 @@ { - "name": "cache-handler-docs", - "version": "0.1.0", + "name": "@repo/cache-handler-docs", + "version": "0.0.0", "private": true, "type": "module", "scripts": { "build:docs": "next build", - "clean": "rimraf ./.next ./.turbo ./node_modules ./out", "dev:docs": "next dev", "eslint:check": "next lint", "eslint:fix": "next lint --fix", - "start:docs": "next start" + "start:docs": "serve out" }, "dependencies": { "next": "14.2.15", @@ -27,6 +26,7 @@ "@types/react": "18.3.11", "@types/react-dom": "18.3.1", "eslint": "8.57.1", + "serve": "14.2.4", "typescript": "5.6.3" } } diff --git a/docs/contributing/cache-handler.md b/docs/contributing/cache-handler.md index 7bb191c1..0d42c558 100644 --- a/docs/contributing/cache-handler.md +++ b/docs/contributing/cache-handler.md @@ -24,27 +24,28 @@ To integrate Redis as a cache store: 3. **Starting Development Servers**: - To test changes in `@neshca/cache-handler`, utilize the `@neshca/cache-testing` app. Due to this app's implementation of SSG and ISR, initiate the local backend first: + To test changes in `@neshca/cache-handler`, utilize the `@repo/cache-testing` app. Due to this app's implementation of SSG and ISR, initiate the local backend first: ```bash - npm run dev:with-redis + npm run dev:packages ``` - Subsequently, in a distinct terminal, compile and launch the `@neshca/cache-testing` app: + Subsequently, in a distinct terminal, compile and launch the `@repo/cache-testing` app: ```bash - npm run build:app - npm run start:app + npm run build:test-app + npm run start:test-app ``` - **Note**: Always rebuild `@neshca/cache-testing` after every rebuild of `@neshca/cache-handler`. + **Note**: Always rebuild `@repo/cache-testing` after every rebuild of `@neshca/cache-handler`. ### Running Tests Locally Initiate local tests with: ```bash -npm run e2e:ui -w @neshca/cache-testing +npm run playwright:install -w @repo/cache-testing +npm run e2e:ui -w @repo/cache-testing ``` **Important**: Clear the Redis DB before executing tests: diff --git a/docs/contributing/diffscribe.md b/docs/contributing/diffscribe.md deleted file mode 100644 index 1f4c6dab..00000000 --- a/docs/contributing/diffscribe.md +++ /dev/null @@ -1,32 +0,0 @@ -## Developing - -Before diving into development, setting up the monorepo environment is essential. Please follow the instructions in the [monorepo setup guide](./monorepo.md) to ensure you start on the right foot. - -### Running `diffscribe` locally - -Once the monorepo is correctly set up, you can develop `diffscribe`. To run `diffscribe` locally and see your changes in real time, use the following command: - -```bash -npm run dev -w diffscribe -``` - -Create a `.env` file in the root of the monorepo and add the following: - -```bash -OPENAI_API_KEY=your_openai_api_key -``` - -Remember to replace `your_openai_api_key` with your actual OpenAI API key. - -### Obtaining an OpenAI API Key - -If you don't have an OpenAI API key, follow these steps to obtain one: - -1. Visit [OpenAI API section](https://platform.openai.com/account/api-keys/). -2. Register for an account or sign in if you already have one. -3. Follow the prompts to create a new API key. -4. Once you have your API key, copy and paste it into the `.env` file where it says `your_openai_api_key`. - -**Important**: Treat your API key as confidential. Please do not share it or commit it directly to the repository. - -Thank you for contributing, and happy coding! diff --git a/docs/contributing/monorepo.md b/docs/contributing/monorepo.md index fb5fb567..e25309b6 100644 --- a/docs/contributing/monorepo.md +++ b/docs/contributing/monorepo.md @@ -15,7 +15,7 @@ npm ci After the dependencies are installed, compile internal dependencies with: ```bash -npm run build +npm run build:packages ``` ### 3. Installing Local Dependencies @@ -23,34 +23,14 @@ npm run build After building the project, you'll need to install the local dependencies to enable their usage from the command line: ```bash -npm run i +npm i ``` **Note**: Don't be alarmed if you notice updates in the `package-lock.json` file after this step. These changes are expected and can be safely committed to your version control. ### 4. Running Tests locally -Install `act` globally using the official [installation instructions](https://github.com/nektos/act?tab=readme-ov-file#installation-through-package-managers). - -Create a `.actrc` file in the root of the project with the following contents: - -```bash --e .act.json -``` - -Then, create `.act.json` file near the `.actrc` file with the following contents: - -```json -{ - "act": true -} -``` - -Finally, run the tests locally with: - -```bash -act pull_request -``` +Refer to the [`@neshca/cache-handler` contribution guidelines](./cache-handler.md) ## Contribution Guidelines diff --git a/internal/backend/package.json b/internal/backend/package.json index 2d0f9c8e..0ed8a9d8 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -1,11 +1,10 @@ { - "name": "backend", + "name": "@repo/backend", "version": "0.0.0", "private": true, "license": "MIT", "type": "module", "scripts": { - "clean": "rimraf ./.turbo ./node_modules", "dev": "tsx --watch ./src/backend.ts", "start": "tsx ./src/backend.ts" }, @@ -17,7 +16,6 @@ "@repo/typescript-config": "*", "@types/node": "22.7.5", "pino-pretty": "11.3.0", - "rimraf": "6.0.1", "tsx": "4.19.1", "typescript": "5.6.3" } diff --git a/internal/backend/src/backend.ts b/internal/backend/src/backend.ts index c723b246..05fc053b 100644 --- a/internal/backend/src/backend.ts +++ b/internal/backend/src/backend.ts @@ -97,7 +97,7 @@ server.get('/time', async (_request, reply): Promise => { server .listen({ port, host }) .then((address) => { - logger.info('backend listening on %s', address); + logger.info('@repo/backend listening on %s', address); }) .catch((err) => { logger.error(err); diff --git a/internal/next-common/package.json b/internal/next-common/package.json index 2da23be4..211df1e1 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -1,5 +1,5 @@ { - "name": "@neshca/next-common", + "name": "@repo/next-common", "version": "0.0.0", "private": true, "license": "MIT", @@ -7,16 +7,12 @@ "exports": { "types": "./src/next-common.ts" }, - "scripts": { - "clean": "rimraf ./.turbo ./node_modules" - }, "dependencies": { "next": "14.2.15" }, "devDependencies": { "@repo/typescript-config": "*", "@types/node": "22.7.5", - "rimraf": "6.0.1", "typescript": "5.6.3" } } diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index d2d7d367..3e5d2df4 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -1,5 +1,5 @@ { - "name": "@neshca/next-lru-cache", + "name": "@repo/next-lru-cache", "version": "0.0.0", "private": true, "license": "MIT", @@ -7,17 +7,13 @@ "exports": { "./*": "./src/cache-types/*.ts" }, - "scripts": { - "clean": "rimraf ./.turbo ./node_modules" - }, "dependencies": { "lru-cache": "10.4.3" }, "devDependencies": { - "@neshca/next-common": "*", + "@repo/next-common": "*", "@repo/typescript-config": "*", "@types/node": "22.7.5", - "rimraf": "6.0.1", "typescript": "5.6.3" } } diff --git a/internal/next-lru-cache/src/cache-types/next-cache-handler-value.ts b/internal/next-lru-cache/src/cache-types/next-cache-handler-value.ts index ce96486a..3088d0e0 100644 --- a/internal/next-lru-cache/src/cache-types/next-cache-handler-value.ts +++ b/internal/next-lru-cache/src/cache-types/next-cache-handler-value.ts @@ -1,4 +1,4 @@ -import type { CacheHandlerValue } from '@neshca/next-common'; +import type { CacheHandlerValue } from '@repo/next-common'; import type { LRUCache } from 'lru-cache'; import type { LruCacheOptions } from '../create-configured-cache'; diff --git a/package-lock.json b/package-lock.json index ef9770dd..2de03f27 100644 --- a/package-lock.json +++ b/package-lock.json @@ -7,7 +7,6 @@ "": { "name": "neshca", "version": "0.0.0", - "hasInstallScript": true, "license": "MIT", "workspaces": [ "apps/*", @@ -23,9 +22,9 @@ "@biomejs/biome": "1.9.3", "@repo/prettier-config": "*", "@repo/typescript-config": "*", - "diffscribe": "*", "glob": "11.0.0", "prettier": "3.3.3", + "rimraf": "6.0.1", "turbo": "2.1.3" }, "engines": { @@ -34,6 +33,7 @@ } }, "apps/cache-testing": { + "name": "@repo/cache-testing", "version": "0.0.0", "license": "MIT", "dependencies": { @@ -57,13 +57,23 @@ "eslint": "8.57.1", "fastify": "5.0.0", "pm2": "5.4.2", - "rimraf": "6.0.1", "tsx": "4.19.1", "typescript": "5.6.3" } }, + "apps/cache-testing/node_modules/@types/node": { + "version": "22.7.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.7.5.tgz", + "integrity": "sha512-jML7s2NAzMWc//QSJ1a3prpk78cOPchGvXJsC3C6R6PSMoooztvRVQEz89gmBTBY1SPMaqo5teB4uNHPdetShQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "undici-types": "~6.19.2" + } + }, "docs/cache-handler-docs": { - "version": "0.1.0", + "name": "@repo/cache-handler-docs", + "version": "0.0.0", "dependencies": { "next": "14.2.15", "nextra": "3.0.13", @@ -80,10 +90,22 @@ "@types/react": "18.3.11", "@types/react-dom": "18.3.1", "eslint": "8.57.1", + "serve": "14.2.4", "typescript": "5.6.3" } }, + "docs/cache-handler-docs/node_modules/@types/node": { + "version": "22.7.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.7.5.tgz", + "integrity": "sha512-jML7s2NAzMWc//QSJ1a3prpk78cOPchGvXJsC3C6R6PSMoooztvRVQEz89gmBTBY1SPMaqo5teB4uNHPdetShQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "undici-types": "~6.19.2" + } + }, "internal/backend": { + "name": "@repo/backend", "version": "0.0.0", "license": "MIT", "dependencies": { @@ -94,11 +116,20 @@ "@repo/typescript-config": "*", "@types/node": "22.7.5", "pino-pretty": "11.3.0", - "rimraf": "6.0.1", "tsx": "4.19.1", "typescript": "5.6.3" } }, + "internal/backend/node_modules/@types/node": { + "version": "22.7.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.7.5.tgz", + "integrity": "sha512-jML7s2NAzMWc//QSJ1a3prpk78cOPchGvXJsC3C6R6PSMoooztvRVQEz89gmBTBY1SPMaqo5teB4uNHPdetShQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "undici-types": "~6.19.2" + } + }, "internal/eslint-config": { "name": "@repo/eslint-config", "version": "0.0.0", @@ -113,7 +144,7 @@ } }, "internal/next-common": { - "name": "@neshca/next-common", + "name": "@repo/next-common", "version": "0.0.0", "license": "MIT", "dependencies": { @@ -122,25 +153,43 @@ "devDependencies": { "@repo/typescript-config": "*", "@types/node": "22.7.5", - "rimraf": "6.0.1", "typescript": "5.6.3" } }, + "internal/next-common/node_modules/@types/node": { + "version": "22.7.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.7.5.tgz", + "integrity": "sha512-jML7s2NAzMWc//QSJ1a3prpk78cOPchGvXJsC3C6R6PSMoooztvRVQEz89gmBTBY1SPMaqo5teB4uNHPdetShQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "undici-types": "~6.19.2" + } + }, "internal/next-lru-cache": { - "name": "@neshca/next-lru-cache", + "name": "@repo/next-lru-cache", "version": "0.0.0", "license": "MIT", "dependencies": { "lru-cache": "10.4.3" }, "devDependencies": { - "@neshca/next-common": "*", + "@repo/next-common": "*", "@repo/typescript-config": "*", "@types/node": "22.7.5", - "rimraf": "6.0.1", "typescript": "5.6.3" } }, + "internal/next-lru-cache/node_modules/@types/node": { + "version": "22.7.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.7.5.tgz", + "integrity": "sha512-jML7s2NAzMWc//QSJ1a3prpk78cOPchGvXJsC3C6R6PSMoooztvRVQEz89gmBTBY1SPMaqo5teB4uNHPdetShQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "undici-types": "~6.19.2" + } + }, "internal/prettier-config": { "name": "@repo/prettier-config", "version": "0.0.0", @@ -159,6 +208,7 @@ "resolved": "https://registry.npmjs.org/@actions/core/-/core-1.11.1.tgz", "integrity": "sha512-hXJCSrkwfA46Vd9Z3q4cpEpHB1rL5NG04+/rbqW9d3+CSvtB1tYe8UTpAlixa1vj0m/ULglfEK2UKxMGxCxv5A==", "dev": true, + "license": "MIT", "dependencies": { "@actions/exec": "^1.1.1", "@actions/http-client": "^2.0.1" @@ -169,6 +219,7 @@ "resolved": "https://registry.npmjs.org/@actions/exec/-/exec-1.1.1.tgz", "integrity": "sha512-+sCcHHbVdk93a0XT19ECtO/gIXoxvdsgQLzb2fE2/5sIZmWQuluYyjPQtrtTHdU1YzTZ7bAPN4sITq2xi1679w==", "dev": true, + "license": "MIT", "dependencies": { "@actions/io": "^1.0.1" } @@ -188,7 +239,8 @@ "version": "1.1.3", "resolved": "https://registry.npmjs.org/@actions/io/-/io-1.1.3.tgz", "integrity": "sha512-wi9JjgKLYS7U/z8PPbco+PvTb/nRWjeoFlJ1Qer83k/3C5PHQi28hiVdeE2kHXmIL99mQFawx8qt/JPjZilJ8Q==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/@ampproject/remapping": { "version": "2.3.0", @@ -208,6 +260,7 @@ "version": "0.4.1", "resolved": "https://registry.npmjs.org/@antfu/install-pkg/-/install-pkg-0.4.1.tgz", "integrity": "sha512-T7yB5QNG29afhWVkVq7XeIMBa5U/vs9mX69YqayXypPRmYzUmzwnYltplHmPtZ4HPCn+sQKeXW8I47wCbuBOjw==", + "license": "MIT", "dependencies": { "package-manager-detector": "^0.2.0", "tinyexec": "^0.3.0" @@ -220,18 +273,19 @@ "version": "0.7.10", "resolved": "https://registry.npmjs.org/@antfu/utils/-/utils-0.7.10.tgz", "integrity": "sha512-+562v9k4aI80m1+VuMHehNJWLOFjBnXn3tdOitzD0il5b7smkSBal4+a3oKiQTbrwMmN/TBUMDvbdoWDehgOww==", + "license": "MIT", "funding": { "url": "https://github.com/sponsors/antfu" } }, "node_modules/@babel/code-frame": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.7.tgz", - "integrity": "sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.25.7.tgz", + "integrity": "sha512-0xZJFNE5XMpENsgfHYTw8FbX4kv53mFLn2i3XPoq69LyhYSCBJtitaHx9QnsVTrsogI4Z3+HtEfZ2/GFPOtf5g==", "dev": true, "license": "MIT", "dependencies": { - "@babel/highlight": "^7.24.7", + "@babel/highlight": "^7.25.7", "picocolors": "^1.0.0" }, "engines": { @@ -239,9 +293,9 @@ } }, "node_modules/@babel/compat-data": { - "version": "7.25.4", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.25.4.tgz", - "integrity": "sha512-+LGRog6RAsCJrrrg/IO6LGmpphNe5DiK30dGjCoxxeGv49B10/3XYGxPsAwrDlMFcFEvdAUavDT8r9k/hSyQqQ==", + "version": "7.25.8", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.25.8.tgz", + "integrity": "sha512-ZsysZyXY4Tlx+Q53XdnOFmqwfB9QDTHYxaZYajWRoBLuLEAwI2UIbtxOjWh/cFaa9IKUlcB+DDuoskLuKu56JA==", "dev": true, "license": "MIT", "engines": { @@ -249,22 +303,22 @@ } }, "node_modules/@babel/core": { - "version": "7.25.2", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.25.2.tgz", - "integrity": "sha512-BBt3opiCOxUr9euZ5/ro/Xv8/V7yJ5bjYMqG/C1YAo8MIKAnumZalCN+msbci3Pigy4lIQfPUpfMM27HMGaYEA==", + "version": "7.25.8", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.25.8.tgz", + "integrity": "sha512-Oixnb+DzmRT30qu9d3tJSQkxuygWm32DFykT4bRoORPa9hZ/L4KhVB/XiRm6KG+roIEM7DBQlmg27kw2HZkdZg==", "dev": true, "license": "MIT", "dependencies": { "@ampproject/remapping": "^2.2.0", - "@babel/code-frame": "^7.24.7", - "@babel/generator": "^7.25.0", - "@babel/helper-compilation-targets": "^7.25.2", - "@babel/helper-module-transforms": "^7.25.2", - "@babel/helpers": "^7.25.0", - "@babel/parser": "^7.25.0", - "@babel/template": "^7.25.0", - "@babel/traverse": "^7.25.2", - "@babel/types": "^7.25.2", + "@babel/code-frame": "^7.25.7", + "@babel/generator": "^7.25.7", + "@babel/helper-compilation-targets": "^7.25.7", + "@babel/helper-module-transforms": "^7.25.7", + "@babel/helpers": "^7.25.7", + "@babel/parser": "^7.25.8", + "@babel/template": "^7.25.7", + "@babel/traverse": "^7.25.7", + "@babel/types": "^7.25.8", "convert-source-map": "^2.0.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -290,9 +344,9 @@ } }, "node_modules/@babel/eslint-parser": { - "version": "7.25.1", - "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.25.1.tgz", - "integrity": "sha512-Y956ghgTT4j7rKesabkh5WeqgSFZVFwaPR0IWFm7KFHFmmJ4afbG49SmfW4S+GyRPx0Dy5jxEWA5t0rpxfElWg==", + "version": "7.25.8", + "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.25.8.tgz", + "integrity": "sha512-Po3VLMN7fJtv0nsOjBDSbO1J71UhzShE9MuOSkWEV9IZQXzhZklYtzKZ8ZD/Ij3a0JBv1AG3Ny2L3jvAHQVOGg==", "dev": true, "license": "MIT", "dependencies": { @@ -329,31 +383,31 @@ } }, "node_modules/@babel/generator": { - "version": "7.25.6", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.25.6.tgz", - "integrity": "sha512-VPC82gr1seXOpkjAAKoLhP50vx4vGNlF4msF64dSFq1P8RfB+QAuJWGHPXXPc8QyfVWwwB/TNNU4+ayZmHNbZw==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.25.7.tgz", + "integrity": "sha512-5Dqpl5fyV9pIAD62yK9P7fcA768uVPUyrQmqpqstHWgMma4feF1x/oFysBCVZLY5wJ2GkMUCdsNDnGZrPoR6rA==", "dev": true, "license": "MIT", "dependencies": { - "@babel/types": "^7.25.6", + "@babel/types": "^7.25.7", "@jridgewell/gen-mapping": "^0.3.5", "@jridgewell/trace-mapping": "^0.3.25", - "jsesc": "^2.5.1" + "jsesc": "^3.0.2" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-compilation-targets": { - "version": "7.25.2", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.25.2.tgz", - "integrity": "sha512-U2U5LsSaZ7TAt3cfaymQ8WHh0pxvdHoEk6HVpaexxixjyEquMh0L0YNJNM6CTGKMXV1iksi0iZkGw4AcFkPaaw==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.25.7.tgz", + "integrity": "sha512-DniTEax0sv6isaw6qSQSfV4gVRNtw2rte8HHM45t9ZR0xILaufBRNkpMifCRiAPyvL4ACD6v0gfCwCmtOQaV4A==", "dev": true, "license": "MIT", "dependencies": { - "@babel/compat-data": "^7.25.2", - "@babel/helper-validator-option": "^7.24.8", - "browserslist": "^4.23.1", + "@babel/compat-data": "^7.25.7", + "@babel/helper-validator-option": "^7.25.7", + "browserslist": "^4.24.0", "lru-cache": "^5.1.1", "semver": "^6.3.1" }, @@ -389,30 +443,30 @@ "license": "ISC" }, "node_modules/@babel/helper-module-imports": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.24.7.tgz", - "integrity": "sha512-8AyH3C+74cgCVVXow/myrynrAGv+nTVg5vKu2nZph9x7RcRwzmh0VFallJuFTZ9mx6u4eSdXZfcOzSqTUm0HCA==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.25.7.tgz", + "integrity": "sha512-o0xCgpNmRohmnoWKQ0Ij8IdddjyBFE4T2kagL/x6M3+4zUgc+4qTOUBoNe4XxDskt1HPKO007ZPiMgLDq2s7Kw==", "dev": true, "license": "MIT", "dependencies": { - "@babel/traverse": "^7.24.7", - "@babel/types": "^7.24.7" + "@babel/traverse": "^7.25.7", + "@babel/types": "^7.25.7" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-module-transforms": { - "version": "7.25.2", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.25.2.tgz", - "integrity": "sha512-BjyRAbix6j/wv83ftcVJmBt72QtHI56C7JXZoG2xATiLpmoC7dpd8WnkikExHDVPpi/3qCmO6WY1EaXOluiecQ==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.25.7.tgz", + "integrity": "sha512-k/6f8dKG3yDz/qCwSM+RKovjMix563SLxQFo0UhRNo239SP6n9u5/eLtKD6EAjwta2JHJ49CsD8pms2HdNiMMQ==", "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-module-imports": "^7.24.7", - "@babel/helper-simple-access": "^7.24.7", - "@babel/helper-validator-identifier": "^7.24.7", - "@babel/traverse": "^7.25.2" + "@babel/helper-module-imports": "^7.25.7", + "@babel/helper-simple-access": "^7.25.7", + "@babel/helper-validator-identifier": "^7.25.7", + "@babel/traverse": "^7.25.7" }, "engines": { "node": ">=6.9.0" @@ -422,23 +476,23 @@ } }, "node_modules/@babel/helper-simple-access": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.24.7.tgz", - "integrity": "sha512-zBAIvbCMh5Ts+b86r/CjU+4XGYIs+R1j951gxI3KmmxBMhCg4oQMsv6ZXQ64XOm/cvzfU1FmoCyt6+owc5QMYg==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.25.7.tgz", + "integrity": "sha512-FPGAkJmyoChQeM+ruBGIDyrT2tKfZJO8NcxdC+CWNJi7N8/rZpSxK7yvBJ5O/nF1gfu5KzN7VKG3YVSLFfRSxQ==", "dev": true, "license": "MIT", "dependencies": { - "@babel/traverse": "^7.24.7", - "@babel/types": "^7.24.7" + "@babel/traverse": "^7.25.7", + "@babel/types": "^7.25.7" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-string-parser": { - "version": "7.24.8", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.8.tgz", - "integrity": "sha512-pO9KhhRcuUyGnJWwyEgnRJTSIZHiT+vMD0kPeD+so0l7mxkMT19g3pjY9GTnHySck/hDzq+dtW/4VgnMkippsQ==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.25.7.tgz", + "integrity": "sha512-CbkjYdsJNHFk8uqpEkpCvRs3YRp9tY6FmFY7wLMSYuGYkrdUi7r2lc4/wqsvlHoMznX3WJ9IP8giGPq68T/Y6g==", "dev": true, "license": "MIT", "engines": { @@ -446,9 +500,9 @@ } }, "node_modules/@babel/helper-validator-identifier": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.7.tgz", - "integrity": "sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.7.tgz", + "integrity": "sha512-AM6TzwYqGChO45oiuPqwL2t20/HdMC1rTPAesnBCgPCSF1x3oN9MVUwQV2iyz4xqWrctwK5RNC8LV22kaQCNYg==", "dev": true, "license": "MIT", "engines": { @@ -456,9 +510,9 @@ } }, "node_modules/@babel/helper-validator-option": { - "version": "7.24.8", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.24.8.tgz", - "integrity": "sha512-xb8t9tD1MHLungh/AIoWYN+gVHaB9kwlu8gffXGSt3FFEIT7RjS+xWbc2vUD1UTZdIpKj/ab3rdqJ7ufngyi2Q==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.25.7.tgz", + "integrity": "sha512-ytbPLsm+GjArDYXJ8Ydr1c/KJuutjF2besPNbIZnZ6MKUxi/uTA22t2ymmA4WFjZFpjiAMO0xuuJPqK2nvDVfQ==", "dev": true, "license": "MIT", "engines": { @@ -466,27 +520,27 @@ } }, "node_modules/@babel/helpers": { - "version": "7.25.6", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.25.6.tgz", - "integrity": "sha512-Xg0tn4HcfTijTwfDwYlvVCl43V6h4KyVVX2aEm4qdO/PC6L2YvzLHFdmxhoeSA3eslcE6+ZVXHgWwopXYLNq4Q==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.25.7.tgz", + "integrity": "sha512-Sv6pASx7Esm38KQpF/U/OXLwPPrdGHNKoeblRxgZRLXnAtnkEe4ptJPDtAZM7fBLadbc1Q07kQpSiGQ0Jg6tRA==", "dev": true, "license": "MIT", "dependencies": { - "@babel/template": "^7.25.0", - "@babel/types": "^7.25.6" + "@babel/template": "^7.25.7", + "@babel/types": "^7.25.7" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/highlight": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.7.tgz", - "integrity": "sha512-EStJpq4OuY8xYfhGVXngigBJRWxftKX9ksiGDnmlY3o7B/V7KIAc9X4oiK87uPJSc/vs5L869bem5fhZa8caZw==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.25.7.tgz", + "integrity": "sha512-iYyACpW3iW8Fw+ZybQK+drQre+ns/tKpXbNESfrhNnPLIklLbXr7MYJ6gPEd0iETGLOK+SxMjVvKb/ffmk+FEw==", "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-validator-identifier": "^7.24.7", + "@babel/helper-validator-identifier": "^7.25.7", "chalk": "^2.4.2", "js-tokens": "^4.0.0", "picocolors": "^1.0.0" @@ -574,13 +628,13 @@ } }, "node_modules/@babel/parser": { - "version": "7.25.6", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.25.6.tgz", - "integrity": "sha512-trGdfBdbD0l1ZPmcJ83eNxB9rbEax4ALFTF7fN386TMYbeCQbyme5cOEXQhbGXKebwGaB/J52w1mrklMcbgy6Q==", + "version": "7.25.8", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.25.8.tgz", + "integrity": "sha512-HcttkxzdPucv3nNFmfOOMfFf64KgdJVqm1KaCm25dPGMLElo9nsLvXeJECQg8UzPuBGLyTSA0ZzqCtDSzKTEoQ==", "dev": true, "license": "MIT", "dependencies": { - "@babel/types": "^7.25.6" + "@babel/types": "^7.25.8" }, "bin": { "parser": "bin/babel-parser.js" @@ -590,9 +644,9 @@ } }, "node_modules/@babel/runtime": { - "version": "7.25.6", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.25.6.tgz", - "integrity": "sha512-VBj9MYyDb9tuLq7yzqjgzt6Q+IBQLrGZfdjOekyEirZPHxXWoTSGUTMrpsfi58Up73d13NfYLv8HT9vmznjzhQ==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.25.7.tgz", + "integrity": "sha512-FjoyLe754PMiYsFaN5C94ttGiOmBNYTf6pLr4xXHAT5uctHb092PBszndLDR5XA/jghQvn4n7JMHl7dmTgbm9w==", "license": "MIT", "dependencies": { "regenerator-runtime": "^0.14.0" @@ -602,32 +656,32 @@ } }, "node_modules/@babel/template": { - "version": "7.25.0", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.25.0.tgz", - "integrity": "sha512-aOOgh1/5XzKvg1jvVz7AVrx2piJ2XBi227DHmbY6y+bM9H2FlN+IfecYu4Xl0cNiiVejlsCri89LUsbj8vJD9Q==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.25.7.tgz", + "integrity": "sha512-wRwtAgI3bAS+JGU2upWNL9lSlDcRCqD05BZ1n3X2ONLH1WilFP6O1otQjeMK/1g0pvYcXC7b/qVUB1keofjtZA==", "dev": true, "license": "MIT", "dependencies": { - "@babel/code-frame": "^7.24.7", - "@babel/parser": "^7.25.0", - "@babel/types": "^7.25.0" + "@babel/code-frame": "^7.25.7", + "@babel/parser": "^7.25.7", + "@babel/types": "^7.25.7" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/traverse": { - "version": "7.25.6", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.25.6.tgz", - "integrity": "sha512-9Vrcx5ZW6UwK5tvqsj0nGpp/XzqthkT0dqIc9g1AdtygFToNtTF67XzYS//dm+SAK9cp3B9R4ZO/46p63SCjlQ==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.25.7.tgz", + "integrity": "sha512-jatJPT1Zjqvh/1FyJs6qAHL+Dzb7sTb+xr7Q+gM1b+1oBsMsQQ4FkVKb6dFlJvLlVssqkRzV05Jzervt9yhnzg==", "dev": true, "license": "MIT", "dependencies": { - "@babel/code-frame": "^7.24.7", - "@babel/generator": "^7.25.6", - "@babel/parser": "^7.25.6", - "@babel/template": "^7.25.0", - "@babel/types": "^7.25.6", + "@babel/code-frame": "^7.25.7", + "@babel/generator": "^7.25.7", + "@babel/parser": "^7.25.7", + "@babel/template": "^7.25.7", + "@babel/types": "^7.25.7", "debug": "^4.3.1", "globals": "^11.1.0" }, @@ -646,14 +700,14 @@ } }, "node_modules/@babel/types": { - "version": "7.25.6", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.25.6.tgz", - "integrity": "sha512-/l42B1qxpG6RdfYf343Uw1vmDjeNhneUXtzhojE7pDgfpEypmRhI6j1kr17XCVv4Cgl9HdAiQY2x0GwKm7rWCw==", + "version": "7.25.8", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.25.8.tgz", + "integrity": "sha512-JWtuCu8VQsMladxVz/P4HzHUGCAwpuqacmowgXFs5XjxIgKuNjnLokQzuVjlTvIzODaDmpjT3oxcC48vyk9EWg==", "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-string-parser": "^7.24.8", - "@babel/helper-validator-identifier": "^7.24.7", + "@babel/helper-string-parser": "^7.25.7", + "@babel/helper-validator-identifier": "^7.25.7", "to-fast-properties": "^2.0.0" }, "engines": { @@ -666,6 +720,7 @@ "integrity": "sha512-POjAPz0APAmX33WOQFGQrwLvlu7WLV4CFJMlB12b6ZSg+2q6fYu9kZwLCOA+x83zXfcPd1RpuWOKJW0GbBwLIQ==", "dev": true, "hasInstallScript": true, + "license": "MIT OR Apache-2.0", "bin": { "biome": "bin/biome" }, @@ -695,6 +750,7 @@ "arm64" ], "dev": true, + "license": "MIT OR Apache-2.0", "optional": true, "os": [ "darwin" @@ -711,6 +767,7 @@ "x64" ], "dev": true, + "license": "MIT OR Apache-2.0", "optional": true, "os": [ "darwin" @@ -727,6 +784,7 @@ "arm64" ], "dev": true, + "license": "MIT OR Apache-2.0", "optional": true, "os": [ "linux" @@ -743,6 +801,7 @@ "arm64" ], "dev": true, + "license": "MIT OR Apache-2.0", "optional": true, "os": [ "linux" @@ -759,6 +818,7 @@ "x64" ], "dev": true, + "license": "MIT OR Apache-2.0", "optional": true, "os": [ "linux" @@ -775,6 +835,7 @@ "x64" ], "dev": true, + "license": "MIT OR Apache-2.0", "optional": true, "os": [ "linux" @@ -791,6 +852,7 @@ "arm64" ], "dev": true, + "license": "MIT OR Apache-2.0", "optional": true, "os": [ "win32" @@ -807,6 +869,7 @@ "x64" ], "dev": true, + "license": "MIT OR Apache-2.0", "optional": true, "os": [ "win32" @@ -818,7 +881,8 @@ "node_modules/@braintree/sanitize-url": { "version": "7.1.0", "resolved": "https://registry.npmjs.org/@braintree/sanitize-url/-/sanitize-url-7.1.0.tgz", - "integrity": "sha512-o+UlMLt49RvtCASlOMW0AkHnabN9wR9rwCCherxO0yG4Npy34GkvrAqdXQvrhNs+jh+gkK8gB8Lf05qL/O7KWg==" + "integrity": "sha512-o+UlMLt49RvtCASlOMW0AkHnabN9wR9rwCCherxO0yG4Npy34GkvrAqdXQvrhNs+jh+gkK8gB8Lf05qL/O7KWg==", + "license": "MIT" }, "node_modules/@changesets/apply-release-plan": { "version": "7.0.5", @@ -883,6 +947,7 @@ "version": "2.27.9", "resolved": "https://registry.npmjs.org/@changesets/cli/-/cli-2.27.9.tgz", "integrity": "sha512-q42a/ZbDnxPpCb5Wkm6tMVIxgeI9C/bexntzTeCFBrQEdpisQqk8kCHllYZMDjYtEc1ZzumbMJAG8H0Z4rdvjg==", + "license": "MIT", "dependencies": { "@changesets/apply-release-plan": "^7.0.5", "@changesets/assemble-release-plan": "^6.0.4", @@ -1079,6 +1144,7 @@ "version": "11.0.3", "resolved": "https://registry.npmjs.org/@chevrotain/cst-dts-gen/-/cst-dts-gen-11.0.3.tgz", "integrity": "sha512-BvIKpRLeS/8UbfxXxgC33xOumsacaeCKAjAeLyOn7Pcp95HiRbrpl14S+9vaZLolnbssPIUuiUd8IvgkRyt6NQ==", + "license": "Apache-2.0", "dependencies": { "@chevrotain/gast": "11.0.3", "@chevrotain/types": "11.0.3", @@ -1089,6 +1155,7 @@ "version": "11.0.3", "resolved": "https://registry.npmjs.org/@chevrotain/gast/-/gast-11.0.3.tgz", "integrity": "sha512-+qNfcoNk70PyS/uxmj3li5NiECO+2YKZZQMbmjTqRI3Qchu8Hig/Q9vgkHpI3alNjr7M+a2St5pw5w5F6NL5/Q==", + "license": "Apache-2.0", "dependencies": { "@chevrotain/types": "11.0.3", "lodash-es": "4.17.21" @@ -1097,17 +1164,20 @@ "node_modules/@chevrotain/regexp-to-ast": { "version": "11.0.3", "resolved": "https://registry.npmjs.org/@chevrotain/regexp-to-ast/-/regexp-to-ast-11.0.3.tgz", - "integrity": "sha512-1fMHaBZxLFvWI067AVbGJav1eRY7N8DDvYCTwGBiE/ytKBgP8azTdgyrKyWZ9Mfh09eHWb5PgTSO8wi7U824RA==" + "integrity": "sha512-1fMHaBZxLFvWI067AVbGJav1eRY7N8DDvYCTwGBiE/ytKBgP8azTdgyrKyWZ9Mfh09eHWb5PgTSO8wi7U824RA==", + "license": "Apache-2.0" }, "node_modules/@chevrotain/types": { "version": "11.0.3", "resolved": "https://registry.npmjs.org/@chevrotain/types/-/types-11.0.3.tgz", - "integrity": "sha512-gsiM3G8b58kZC2HaWR50gu6Y1440cHiJ+i3JUvcp/35JchYejb2+5MVeJK0iKThYpAa/P2PYFV4hoi44HD+aHQ==" + "integrity": "sha512-gsiM3G8b58kZC2HaWR50gu6Y1440cHiJ+i3JUvcp/35JchYejb2+5MVeJK0iKThYpAa/P2PYFV4hoi44HD+aHQ==", + "license": "Apache-2.0" }, "node_modules/@chevrotain/utils": { "version": "11.0.3", "resolved": "https://registry.npmjs.org/@chevrotain/utils/-/utils-11.0.3.tgz", - "integrity": "sha512-YslZMgtJUyuMbZ+aKvfF3x1f5liK4mWNxghFRv7jqRR9C3R3fAOGTTKvxXDa2Y1s9zSbcpuO0cAxDYsc9SrXoQ==" + "integrity": "sha512-YslZMgtJUyuMbZ+aKvfF3x1f5liK4mWNxghFRv7jqRR9C3R3fAOGTTKvxXDa2Y1s9zSbcpuO0cAxDYsc9SrXoQ==", + "license": "Apache-2.0" }, "node_modules/@esbuild/aix-ppc64": { "version": "0.23.1", @@ -1592,14 +1662,16 @@ "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.57.1.tgz", "integrity": "sha512-d9zaMRSTIKDLhctzH12MtXvJKSSUhaHcjV+2Z+GK+EEY7XKpP5yR4x+N3TAcHTcu963nIr+TMcCb4DBCYX1z6Q==", "dev": true, + "license": "MIT", "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, "node_modules/@fastify/ajv-compiler": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@fastify/ajv-compiler/-/ajv-compiler-4.0.0.tgz", - "integrity": "sha512-dt0jyLAlay14LpIn4Fg1SY7V5NJ9KH0YFDpYVQY5cgIVBvdI8908AMx5zQ0bBYPGT6Wh+bM3f2caMmOXLP3QsQ==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@fastify/ajv-compiler/-/ajv-compiler-4.0.1.tgz", + "integrity": "sha512-DxrBdgsjNLP0YM6W5Hd6/Fmj43S8zMKiFJYgi+Ri3htTGAowPVG/tG1wpnWLMjufEnehRivUCKZ1pLDIoZdTuw==", + "license": "MIT", "dependencies": { "ajv": "^8.12.0", "ajv-formats": "^3.0.1", @@ -1610,6 +1682,7 @@ "version": "8.17.1", "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.17.1.tgz", "integrity": "sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==", + "license": "MIT", "dependencies": { "fast-deep-equal": "^3.1.3", "fast-uri": "^3.0.1", @@ -1624,7 +1697,8 @@ "node_modules/@fastify/ajv-compiler/node_modules/json-schema-traverse": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==" + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "license": "MIT" }, "node_modules/@fastify/busboy": { "version": "2.1.1", @@ -1639,12 +1713,14 @@ "node_modules/@fastify/error": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/@fastify/error/-/error-4.0.0.tgz", - "integrity": "sha512-OO/SA8As24JtT1usTUTKgGH7uLvhfwZPwlptRi2Dp5P4KKmJI3gvsZ8MIHnNwDs4sLf/aai5LzTyl66xr7qMxA==" + "integrity": "sha512-OO/SA8As24JtT1usTUTKgGH7uLvhfwZPwlptRi2Dp5P4KKmJI3gvsZ8MIHnNwDs4sLf/aai5LzTyl66xr7qMxA==", + "license": "MIT" }, "node_modules/@fastify/fast-json-stringify-compiler": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/@fastify/fast-json-stringify-compiler/-/fast-json-stringify-compiler-5.0.0.tgz", - "integrity": "sha512-tywfuZfXsyxLC5kEqrMubbFa9vpAxNtuPE7j9w5si1r+6p5b981pDfZ5Y8HBqmjDQl+PABT7cV5jZgXI2j+I5g==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/@fastify/fast-json-stringify-compiler/-/fast-json-stringify-compiler-5.0.1.tgz", + "integrity": "sha512-f2d3JExJgFE3UbdFcpPwqNUEoHWmt8pAKf8f+9YuLESdefA0WgqxeT6DrGL4Yrf/9ihXNSKOqpjEmurV405meA==", + "license": "MIT", "dependencies": { "fast-json-stringify": "^6.0.0" } @@ -1653,6 +1729,7 @@ "version": "0.1.1", "resolved": "https://registry.npmjs.org/@fastify/merge-json-schemas/-/merge-json-schemas-0.1.1.tgz", "integrity": "sha512-fERDVz7topgNjtXsJTTW1JKLy0rhuLRcquYqNR9rF7OcVpCa2OVW49ZPDIhaRRCaUuvVxI+N416xUoF76HNSXA==", + "license": "MIT", "dependencies": { "fast-deep-equal": "^3.1.3" } @@ -1661,6 +1738,7 @@ "version": "1.6.8", "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.6.8.tgz", "integrity": "sha512-7XJ9cPU+yI2QeLS+FCSlqNFZJq8arvswefkZrYI1yQBbftw6FyrZOxYSh+9S7z7TpeWlRt9zJ5IhM1WIL334jA==", + "license": "MIT", "dependencies": { "@floating-ui/utils": "^0.2.8" } @@ -1669,15 +1747,17 @@ "version": "1.6.11", "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.6.11.tgz", "integrity": "sha512-qkMCxSR24v2vGkhYDo/UzxfJN3D4syqSjyuTFz6C7XcpU1pASPRieNI0Kj5VP3/503mOfYiGY891ugBX1GlABQ==", + "license": "MIT", "dependencies": { "@floating-ui/core": "^1.6.0", "@floating-ui/utils": "^0.2.8" } }, "node_modules/@floating-ui/react": { - "version": "0.26.24", - "resolved": "https://registry.npmjs.org/@floating-ui/react/-/react-0.26.24.tgz", - "integrity": "sha512-2ly0pCkZIGEQUq5H8bBK0XJmc1xIK/RM3tvVzY3GBER7IOD1UgmC2Y2tjj4AuS+TC+vTE1KJv2053290jua0Sw==", + "version": "0.26.25", + "resolved": "https://registry.npmjs.org/@floating-ui/react/-/react-0.26.25.tgz", + "integrity": "sha512-hZOmgN0NTOzOuZxI1oIrDu3Gcl8WViIkvPMpB4xdd4QD6xAMtwgwr3VPoiyH/bLtRcS1cDnhxLSD1NsMJmwh/A==", + "license": "MIT", "dependencies": { "@floating-ui/react-dom": "^2.1.2", "@floating-ui/utils": "^0.2.8", @@ -1692,6 +1772,7 @@ "version": "2.1.2", "resolved": "https://registry.npmjs.org/@floating-ui/react-dom/-/react-dom-2.1.2.tgz", "integrity": "sha512-06okr5cgPzMNBy+Ycse2A6udMi4bqwW/zgBF/rwjcNqWkyr82Mcg8b0vjX8OJpZFy/FKjJmw6wV7t44kK6kW7A==", + "license": "MIT", "dependencies": { "@floating-ui/dom": "^1.0.0" }, @@ -1703,20 +1784,23 @@ "node_modules/@floating-ui/utils": { "version": "0.2.8", "resolved": "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.2.8.tgz", - "integrity": "sha512-kym7SodPp8/wloecOpcmSnWJsK7M0E5Wg8UcFA+uO4B9s5d0ywXOEro/8HM9x0rW+TljRzul/14UYz3TleT3ig==" + "integrity": "sha512-kym7SodPp8/wloecOpcmSnWJsK7M0E5Wg8UcFA+uO4B9s5d0ywXOEro/8HM9x0rW+TljRzul/14UYz3TleT3ig==", + "license": "MIT" }, "node_modules/@formatjs/intl-localematcher": { "version": "0.5.5", "resolved": "https://registry.npmjs.org/@formatjs/intl-localematcher/-/intl-localematcher-0.5.5.tgz", "integrity": "sha512-t5tOGMgZ/i5+ALl2/offNqAQq/lfUnKLEw0mXQI4N4bqpedhrSE+fyKLpwnd22sK0dif6AV+ufQcTsKShB9J1g==", + "license": "MIT", "dependencies": { "tslib": "^2.7.0" } }, "node_modules/@headlessui/react": { - "version": "2.1.9", - "resolved": "https://registry.npmjs.org/@headlessui/react/-/react-2.1.9.tgz", - "integrity": "sha512-ckWw7vlKtnoa1fL2X0fx1a3t/Li9MIKDVXn3SgG65YlxvDAsNrY39PPCxVM7sQRA7go2fJsuHSSauKFNaJHH7A==", + "version": "2.1.10", + "resolved": "https://registry.npmjs.org/@headlessui/react/-/react-2.1.10.tgz", + "integrity": "sha512-6mLa2fjMDAFQi+/R10B+zU3edsUk/MDtENB2zHho0lqKU1uzhAfJLUduWds4nCo8wbl3vULtC5rJfZAQ1yqIng==", + "license": "MIT", "dependencies": { "@floating-ui/react": "^0.26.16", "@react-aria/focus": "^3.17.1", @@ -1737,6 +1821,7 @@ "integrity": "sha512-DZLEEqFWQFiyK6h5YIeynKx7JlvCYWL0cImfSRXZ9l4Sg2efkFGTuFf6vzXjK1cq6IYkU+Eg/JizXw+TD2vRNw==", "deprecated": "Use @eslint/config-array instead", "dev": true, + "license": "Apache-2.0", "dependencies": { "@humanwhocodes/object-schema": "^2.0.3", "debug": "^4.3.1", @@ -1765,17 +1850,20 @@ "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.3.tgz", "integrity": "sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==", "deprecated": "Use @eslint/object-schema instead", - "dev": true + "dev": true, + "license": "BSD-3-Clause" }, "node_modules/@iconify/types": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/@iconify/types/-/types-2.0.0.tgz", - "integrity": "sha512-+wluvCrRhXrhyOmRDJ3q8mux9JkKy5SJ/v8ol2tu4FVjyYvtEzkc/3pK15ET6RKg4b4w4BmTk1+gsCUhf21Ykg==" + "integrity": "sha512-+wluvCrRhXrhyOmRDJ3q8mux9JkKy5SJ/v8ol2tu4FVjyYvtEzkc/3pK15ET6RKg4b4w4BmTk1+gsCUhf21Ykg==", + "license": "MIT" }, "node_modules/@iconify/utils": { "version": "2.1.33", "resolved": "https://registry.npmjs.org/@iconify/utils/-/utils-2.1.33.tgz", "integrity": "sha512-jP9h6v/g0BIZx0p7XGJJVtkVnydtbgTgt9mVNcGDYwaa7UhdHdI9dvoq+gKj9sijMSJKxUPEG2JyjsgXjxL7Kw==", + "license": "MIT", "dependencies": { "@antfu/install-pkg": "^0.4.0", "@antfu/utils": "^0.7.10", @@ -1898,11 +1986,6 @@ "fs-extra": "^8.1.0" } }, - "node_modules/@manypkg/find-root/node_modules/@types/node": { - "version": "12.20.55", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", - "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" - }, "node_modules/@manypkg/find-root/node_modules/fs-extra": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", @@ -1955,6 +2038,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/@mdx-js/mdx/-/mdx-3.0.1.tgz", "integrity": "sha512-eIQ4QTrOWyL3LWEe/bu6Taqzq2HQvHcyTMaOrI95P2/LmJE7AsfPfgJGuFLPVqBUE1BC1rik3VIhU+s9u72arA==", + "license": "MIT", "dependencies": { "@types/estree": "^1.0.0", "@types/estree-jsx": "^1.0.0", @@ -1985,19 +2069,11 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/@mdx-js/mdx/node_modules/estree-util-is-identifier-name": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/estree-util-is-identifier-name/-/estree-util-is-identifier-name-3.0.0.tgz", - "integrity": "sha512-hFtqIDZTIUZ9BXLb8y4pYGyk6+wekIivNVTcmvk8NoOh+VeRn5y6cEHzbURrWbfp1fIqdVipilzj+lfaadNZmg==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, "node_modules/@mdx-js/react": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/@mdx-js/react/-/react-3.0.1.tgz", "integrity": "sha512-9ZrPIU4MGf6et1m1ov3zKf+q9+deetI51zprKB1D/z3NOb+rUxxtEl3mCjW5wTGh6VhRdwPueh1oRzi6ezkA8A==", + "license": "MIT", "dependencies": { "@types/mdx": "^2.0.0" }, @@ -2014,6 +2090,7 @@ "version": "0.3.0", "resolved": "https://registry.npmjs.org/@mermaid-js/parser/-/parser-0.3.0.tgz", "integrity": "sha512-HsvL6zgE5sUPGgkIDlmAWR1HTNHz2Iy11BAWPTa4Jjabkpguy4Ze2gzfLrg6pdRuBvFwgUYyxiaNqZwrEEXepA==", + "license": "MIT", "dependencies": { "langium": "3.0.0" } @@ -2309,14 +2386,6 @@ "resolved": "packages/json-replacer-reviver", "link": true }, - "node_modules/@neshca/next-common": { - "resolved": "internal/next-common", - "link": true - }, - "node_modules/@neshca/next-lru-cache": { - "resolved": "internal/next-lru-cache", - "link": true - }, "node_modules/@neshca/server": { "resolved": "packages/server", "link": true @@ -2324,13 +2393,15 @@ "node_modules/@next/env": { "version": "14.2.15", "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.15.tgz", - "integrity": "sha512-S1qaj25Wru2dUpcIZMjxeMVSwkt8BK4dmWHHiBuRstcIyOsMapqT4A4jSB6onvqeygkSSmOkyny9VVx8JIGamQ==" + "integrity": "sha512-S1qaj25Wru2dUpcIZMjxeMVSwkt8BK4dmWHHiBuRstcIyOsMapqT4A4jSB6onvqeygkSSmOkyny9VVx8JIGamQ==", + "license": "MIT" }, "node_modules/@next/eslint-plugin-next": { "version": "14.2.15", "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.2.15.tgz", "integrity": "sha512-pKU0iqKRBlFB/ocOI1Ip2CkKePZpYpnw5bEItEkuZ/Nr9FQP1+p7VDWr4VfOdff4i9bFmrOaeaU1bFEyAcxiMQ==", "dev": true, + "license": "MIT", "dependencies": { "glob": "10.3.10" } @@ -2427,6 +2498,7 @@ "cpu": [ "arm64" ], + "license": "MIT", "optional": true, "os": [ "darwin" @@ -2442,6 +2514,7 @@ "cpu": [ "x64" ], + "license": "MIT", "optional": true, "os": [ "darwin" @@ -2457,6 +2530,7 @@ "cpu": [ "arm64" ], + "license": "MIT", "optional": true, "os": [ "linux" @@ -2472,6 +2546,7 @@ "cpu": [ "arm64" ], + "license": "MIT", "optional": true, "os": [ "linux" @@ -2487,6 +2562,7 @@ "cpu": [ "x64" ], + "license": "MIT", "optional": true, "os": [ "linux" @@ -2502,6 +2578,7 @@ "cpu": [ "x64" ], + "license": "MIT", "optional": true, "os": [ "linux" @@ -2517,6 +2594,7 @@ "cpu": [ "arm64" ], + "license": "MIT", "optional": true, "os": [ "win32" @@ -2532,6 +2610,7 @@ "cpu": [ "ia32" ], + "license": "MIT", "optional": true, "os": [ "win32" @@ -2547,6 +2626,7 @@ "cpu": [ "x64" ], + "license": "MIT", "optional": true, "os": [ "win32" @@ -2663,6 +2743,7 @@ "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.48.1.tgz", "integrity": "sha512-s9RtWoxkOLmRJdw3oFvhFbs9OJS0BzrLUc8Hf6l2UdCNd1rqeEyD4BhCJkvzeEoD1FsK4mirsWwGerhVmYKtZg==", "devOptional": true, + "license": "Apache-2.0", "dependencies": { "playwright": "1.48.1" }, @@ -2870,11 +2951,12 @@ } }, "node_modules/@react-aria/focus": { - "version": "3.18.3", - "resolved": "https://registry.npmjs.org/@react-aria/focus/-/focus-3.18.3.tgz", - "integrity": "sha512-WKUElg+5zS0D3xlVn8MntNnkzJql2J6MuzAMP8Sv5WTgFDse/XGR842dsxPTIyKKdrWVCRegCuwa4m3n/GzgJw==", + "version": "3.18.4", + "resolved": "https://registry.npmjs.org/@react-aria/focus/-/focus-3.18.4.tgz", + "integrity": "sha512-91J35077w9UNaMK1cpMUEFRkNNz0uZjnSwiyBCFuRdaVuivO53wNC9XtWSDNDdcO5cGy87vfJRVAiyoCn/mjqA==", + "license": "Apache-2.0", "dependencies": { - "@react-aria/interactions": "^3.22.3", + "@react-aria/interactions": "^3.22.4", "@react-aria/utils": "^3.25.3", "@react-types/shared": "^3.25.0", "@swc/helpers": "^0.5.0", @@ -2885,9 +2967,10 @@ } }, "node_modules/@react-aria/interactions": { - "version": "3.22.3", - "resolved": "https://registry.npmjs.org/@react-aria/interactions/-/interactions-3.22.3.tgz", - "integrity": "sha512-RRUb/aG+P0IKTIWikY/SylB6bIbLZeztnZY2vbe7RAG5MgVaCgn5HQ45SI15GlTmhsFG8CnF6slJsUFJiNHpbQ==", + "version": "3.22.4", + "resolved": "https://registry.npmjs.org/@react-aria/interactions/-/interactions-3.22.4.tgz", + "integrity": "sha512-E0vsgtpItmknq/MJELqYJwib+YN18Qag8nroqwjk1qOnBa9ROIkUhWJerLi1qs5diXq9LHKehZDXRlwPvdEFww==", + "license": "Apache-2.0", "dependencies": { "@react-aria/ssr": "^3.9.6", "@react-aria/utils": "^3.25.3", @@ -2902,6 +2985,7 @@ "version": "3.9.6", "resolved": "https://registry.npmjs.org/@react-aria/ssr/-/ssr-3.9.6.tgz", "integrity": "sha512-iLo82l82ilMiVGy342SELjshuWottlb5+VefO3jOQqQRNYnJBFpUSadswDPbRimSgJUZuFwIEYs6AabkP038fA==", + "license": "Apache-2.0", "dependencies": { "@swc/helpers": "^0.5.0" }, @@ -2916,6 +3000,7 @@ "version": "3.25.3", "resolved": "https://registry.npmjs.org/@react-aria/utils/-/utils-3.25.3.tgz", "integrity": "sha512-PR5H/2vaD8fSq0H/UB9inNbc8KDcVmW6fYAfSWkkn+OAdhTTMVKqXXrZuZBWyFfSD5Ze7VN6acr4hrOQm2bmrA==", + "license": "Apache-2.0", "dependencies": { "@react-aria/ssr": "^3.9.6", "@react-stately/utils": "^3.10.4", @@ -2931,6 +3016,7 @@ "version": "3.10.4", "resolved": "https://registry.npmjs.org/@react-stately/utils/-/utils-3.10.4.tgz", "integrity": "sha512-gBEQEIMRh5f60KCm7QKQ2WfvhB2gLUr9b72sqUdIZ2EG+xuPgaIlCBeSicvjmjBvYZwOjoOEnmIkcx2GHp/HWw==", + "license": "Apache-2.0", "dependencies": { "@swc/helpers": "^0.5.0" }, @@ -2942,6 +3028,7 @@ "version": "3.25.0", "resolved": "https://registry.npmjs.org/@react-types/shared/-/shared-3.25.0.tgz", "integrity": "sha512-OZSyhzU6vTdW3eV/mz5i6hQwQUhkRs7xwY2d1aqPvTdMe0+2cY7Fwp45PAiwYLEj73i9ro2FxF9qC4DvHGSCgQ==", + "license": "Apache-2.0", "peerDependencies": { "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0" } @@ -3005,10 +3092,30 @@ "@redis/client": "^1.0.0" } }, + "node_modules/@repo/backend": { + "resolved": "internal/backend", + "link": true + }, + "node_modules/@repo/cache-handler-docs": { + "resolved": "docs/cache-handler-docs", + "link": true + }, + "node_modules/@repo/cache-testing": { + "resolved": "apps/cache-testing", + "link": true + }, "node_modules/@repo/eslint-config": { "resolved": "internal/eslint-config", "link": true }, + "node_modules/@repo/next-common": { + "resolved": "internal/next-common", + "link": true + }, + "node_modules/@repo/next-lru-cache": { + "resolved": "internal/next-lru-cache", + "link": true + }, "node_modules/@repo/prettier-config": { "resolved": "internal/prettier-config", "link": true @@ -3018,9 +3125,9 @@ "link": true }, "node_modules/@rollup/rollup-android-arm-eabi": { - "version": "4.21.3", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.21.3.tgz", - "integrity": "sha512-MmKSfaB9GX+zXl6E8z4koOr/xU63AMVleLEa64v7R0QF/ZloMs5vcD1sHgM64GXXS1csaJutG+ddtzcueI/BLg==", + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.24.0.tgz", + "integrity": "sha512-Q6HJd7Y6xdB48x8ZNVDOqsbh2uByBhgK8PiQgPhwkIw/HC/YX5Ghq2mQY5sRMZWHb3VsFkWooUVOZHKr7DmDIA==", "cpu": [ "arm" ], @@ -3032,9 +3139,9 @@ ] }, "node_modules/@rollup/rollup-android-arm64": { - "version": "4.21.3", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.21.3.tgz", - "integrity": "sha512-zrt8ecH07PE3sB4jPOggweBjJMzI1JG5xI2DIsUbkA+7K+Gkjys6eV7i9pOenNSDJH3eOr/jLb/PzqtmdwDq5g==", + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.24.0.tgz", + "integrity": "sha512-ijLnS1qFId8xhKjT81uBHuuJp2lU4x2yxa4ctFPtG+MqEE6+C5f/+X/bStmxapgmwLwiL3ih122xv8kVARNAZA==", "cpu": [ "arm64" ], @@ -3046,9 +3153,9 @@ ] }, "node_modules/@rollup/rollup-darwin-arm64": { - "version": "4.21.3", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.21.3.tgz", - "integrity": "sha512-P0UxIOrKNBFTQaXTxOH4RxuEBVCgEA5UTNV6Yz7z9QHnUJ7eLX9reOd/NYMO3+XZO2cco19mXTxDMXxit4R/eQ==", + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.24.0.tgz", + "integrity": "sha512-bIv+X9xeSs1XCk6DVvkO+S/z8/2AMt/2lMqdQbMrmVpgFvXlmde9mLcbQpztXm1tajC3raFDqegsH18HQPMYtA==", "cpu": [ "arm64" ], @@ -3060,9 +3167,9 @@ ] }, "node_modules/@rollup/rollup-darwin-x64": { - "version": "4.21.3", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.21.3.tgz", - "integrity": "sha512-L1M0vKGO5ASKntqtsFEjTq/fD91vAqnzeaF6sfNAy55aD+Hi2pBI5DKwCO+UNDQHWsDViJLqshxOahXyLSh3EA==", + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.24.0.tgz", + "integrity": "sha512-X6/nOwoFN7RT2svEQWUsW/5C/fYMBe4fnLK9DQk4SX4mgVBiTA9h64kjUYPvGQ0F/9xwJ5U5UfTbl6BEjaQdBQ==", "cpu": [ "x64" ], @@ -3074,9 +3181,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm-gnueabihf": { - "version": "4.21.3", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.21.3.tgz", - "integrity": "sha512-btVgIsCjuYFKUjopPoWiDqmoUXQDiW2A4C3Mtmp5vACm7/GnyuprqIDPNczeyR5W8rTXEbkmrJux7cJmD99D2g==", + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.24.0.tgz", + "integrity": "sha512-0KXvIJQMOImLCVCz9uvvdPgfyWo93aHHp8ui3FrtOP57svqrF/roSSR5pjqL2hcMp0ljeGlU4q9o/rQaAQ3AYA==", "cpu": [ "arm" ], @@ -3088,9 +3195,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm-musleabihf": { - "version": "4.21.3", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.21.3.tgz", - "integrity": "sha512-zmjbSphplZlau6ZTkxd3+NMtE4UKVy7U4aVFMmHcgO5CUbw17ZP6QCgyxhzGaU/wFFdTfiojjbLG3/0p9HhAqA==", + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.24.0.tgz", + "integrity": "sha512-it2BW6kKFVh8xk/BnHfakEeoLPv8STIISekpoF+nBgWM4d55CZKc7T4Dx1pEbTnYm/xEKMgy1MNtYuoA8RFIWw==", "cpu": [ "arm" ], @@ -3102,9 +3209,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-gnu": { - "version": "4.21.3", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.21.3.tgz", - "integrity": "sha512-nSZfcZtAnQPRZmUkUQwZq2OjQciR6tEoJaZVFvLHsj0MF6QhNMg0fQ6mUOsiCUpTqxTx0/O6gX0V/nYc7LrgPw==", + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.24.0.tgz", + "integrity": "sha512-i0xTLXjqap2eRfulFVlSnM5dEbTVque/3Pi4g2y7cxrs7+a9De42z4XxKLYJ7+OhE3IgxvfQM7vQc43bwTgPwA==", "cpu": [ "arm64" ], @@ -3116,9 +3223,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-musl": { - "version": "4.21.3", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.21.3.tgz", - "integrity": "sha512-MnvSPGO8KJXIMGlQDYfvYS3IosFN2rKsvxRpPO2l2cum+Z3exiExLwVU+GExL96pn8IP+GdH8Tz70EpBhO0sIQ==", + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.24.0.tgz", + "integrity": "sha512-9E6MKUJhDuDh604Qco5yP/3qn3y7SLXYuiC0Rpr89aMScS2UAmK1wHP2b7KAa1nSjWJc/f/Lc0Wl1L47qjiyQw==", "cpu": [ "arm64" ], @@ -3130,9 +3237,9 @@ ] }, "node_modules/@rollup/rollup-linux-powerpc64le-gnu": { - "version": "4.21.3", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.21.3.tgz", - "integrity": "sha512-+W+p/9QNDr2vE2AXU0qIy0qQE75E8RTwTwgqS2G5CRQ11vzq0tbnfBd6brWhS9bCRjAjepJe2fvvkvS3dno+iw==", + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.24.0.tgz", + "integrity": "sha512-2XFFPJ2XMEiF5Zi2EBf4h73oR1V/lycirxZxHZNc93SqDN/IWhYYSYj8I9381ikUFXZrz2v7r2tOVk2NBwxrWw==", "cpu": [ "ppc64" ], @@ -3144,9 +3251,9 @@ ] }, "node_modules/@rollup/rollup-linux-riscv64-gnu": { - "version": "4.21.3", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.21.3.tgz", - "integrity": "sha512-yXH6K6KfqGXaxHrtr+Uoy+JpNlUlI46BKVyonGiaD74ravdnF9BUNC+vV+SIuB96hUMGShhKV693rF9QDfO6nQ==", + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.24.0.tgz", + "integrity": "sha512-M3Dg4hlwuntUCdzU7KjYqbbd+BLq3JMAOhCKdBE3TcMGMZbKkDdJ5ivNdehOssMCIokNHFOsv7DO4rlEOfyKpg==", "cpu": [ "riscv64" ], @@ -3158,9 +3265,9 @@ ] }, "node_modules/@rollup/rollup-linux-s390x-gnu": { - "version": "4.21.3", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.21.3.tgz", - "integrity": "sha512-R8cwY9wcnApN/KDYWTH4gV/ypvy9yZUHlbJvfaiXSB48JO3KpwSpjOGqO4jnGkLDSk1hgjYkTbTt6Q7uvPf8eg==", + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.24.0.tgz", + "integrity": "sha512-mjBaoo4ocxJppTorZVKWFpy1bfFj9FeCMJqzlMQGjpNPY9JwQi7OuS1axzNIk0nMX6jSgy6ZURDZ2w0QW6D56g==", "cpu": [ "s390x" ], @@ -3172,9 +3279,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-gnu": { - "version": "4.21.3", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.21.3.tgz", - "integrity": "sha512-kZPbX/NOPh0vhS5sI+dR8L1bU2cSO9FgxwM8r7wHzGydzfSjLRCFAT87GR5U9scj2rhzN3JPYVC7NoBbl4FZ0g==", + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.24.0.tgz", + "integrity": "sha512-ZXFk7M72R0YYFN5q13niV0B7G8/5dcQ9JDp8keJSfr3GoZeXEoMHP/HlvqROA3OMbMdfr19IjCeNAnPUG93b6A==", "cpu": [ "x64" ], @@ -3186,9 +3293,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-musl": { - "version": "4.21.3", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.21.3.tgz", - "integrity": "sha512-S0Yq+xA1VEH66uiMNhijsWAafffydd2X5b77eLHfRmfLsRSpbiAWiRHV6DEpz6aOToPsgid7TI9rGd6zB1rhbg==", + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.24.0.tgz", + "integrity": "sha512-w1i+L7kAXZNdYl+vFvzSZy8Y1arS7vMgIy8wusXJzRrPyof5LAb02KGr1PD2EkRcl73kHulIID0M501lN+vobQ==", "cpu": [ "x64" ], @@ -3200,9 +3307,9 @@ ] }, "node_modules/@rollup/rollup-win32-arm64-msvc": { - "version": "4.21.3", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.21.3.tgz", - "integrity": "sha512-9isNzeL34yquCPyerog+IMCNxKR8XYmGd0tHSV+OVx0TmE0aJOo9uw4fZfUuk2qxobP5sug6vNdZR6u7Mw7Q+Q==", + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.24.0.tgz", + "integrity": "sha512-VXBrnPWgBpVDCVY6XF3LEW0pOU51KbaHhccHw6AS6vBWIC60eqsH19DAeeObl+g8nKAz04QFdl/Cefta0xQtUQ==", "cpu": [ "arm64" ], @@ -3214,9 +3321,9 @@ ] }, "node_modules/@rollup/rollup-win32-ia32-msvc": { - "version": "4.21.3", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.21.3.tgz", - "integrity": "sha512-nMIdKnfZfzn1Vsk+RuOvl43ONTZXoAPUUxgcU0tXooqg4YrAqzfKzVenqqk2g5efWh46/D28cKFrOzDSW28gTA==", + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.24.0.tgz", + "integrity": "sha512-xrNcGDU0OxVcPTH/8n/ShH4UevZxKIO6HJFK0e15XItZP2UcaiLFd5kiX7hJnqCbSztUF8Qot+JWBC/QXRPYWQ==", "cpu": [ "ia32" ], @@ -3228,9 +3335,9 @@ ] }, "node_modules/@rollup/rollup-win32-x64-msvc": { - "version": "4.21.3", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.21.3.tgz", - "integrity": "sha512-fOvu7PCQjAj4eWDEuD8Xz5gpzFqXzGlxHZozHP4b9Jxv9APtdxL6STqztDzMLuRXEc4UpXGGhx029Xgm91QBeA==", + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.24.0.tgz", + "integrity": "sha512-fbMkAF7fufku0N2dE5TBXcNlg0pt0cJue4xBRE2Qc5Vqikxr4VCgKj/ht6SMdFcOacVA9rqF70APJ8RN/4vMJw==", "cpu": [ "x64" ], @@ -3259,6 +3366,7 @@ "version": "1.22.0", "resolved": "https://registry.npmjs.org/@shikijs/core/-/core-1.22.0.tgz", "integrity": "sha512-S8sMe4q71TJAW+qG93s5VaiihujRK6rqDFqBnxqvga/3LvqHEnxqBIOPkt//IdXVtHkQWKu4nOQNk0uBGicU7Q==", + "license": "MIT", "dependencies": { "@shikijs/engine-javascript": "1.22.0", "@shikijs/engine-oniguruma": "1.22.0", @@ -3272,6 +3380,7 @@ "version": "1.22.0", "resolved": "https://registry.npmjs.org/@shikijs/engine-javascript/-/engine-javascript-1.22.0.tgz", "integrity": "sha512-AeEtF4Gcck2dwBqCFUKYfsCq0s+eEbCEbkUuFou53NZ0sTGnJnJ/05KHQFZxpii5HMXbocV9URYVowOP2wH5kw==", + "license": "MIT", "dependencies": { "@shikijs/types": "1.22.0", "@shikijs/vscode-textmate": "^9.3.0", @@ -3282,6 +3391,7 @@ "version": "1.22.0", "resolved": "https://registry.npmjs.org/@shikijs/engine-oniguruma/-/engine-oniguruma-1.22.0.tgz", "integrity": "sha512-5iBVjhu/DYs1HB0BKsRRFipRrD7rqjxlWTj4F2Pf+nQSPqc3kcyqFFeZXnBMzDf0HdqaFVvhDRAGiYNvyLP+Mw==", + "license": "MIT", "dependencies": { "@shikijs/types": "1.22.0", "@shikijs/vscode-textmate": "^9.3.0" @@ -3291,6 +3401,7 @@ "version": "1.22.0", "resolved": "https://registry.npmjs.org/@shikijs/twoslash/-/twoslash-1.22.0.tgz", "integrity": "sha512-r5F/x4GTh18XzhAREehgT9lCDFZlISBSIsOFZQQaqjiOLG81PIqJN1I1D6XY58UN9OJt+3mffuKq19K4FOJKJA==", + "license": "MIT", "dependencies": { "@shikijs/core": "1.22.0", "@shikijs/types": "1.22.0", @@ -3301,6 +3412,7 @@ "version": "1.22.0", "resolved": "https://registry.npmjs.org/@shikijs/types/-/types-1.22.0.tgz", "integrity": "sha512-Fw/Nr7FGFhlQqHfxzZY8Cwtwk5E9nKDUgeLjZgt3UuhcM3yJR9xj3ZGNravZZok8XmEZMiYkSMTPlPkULB8nww==", + "license": "MIT", "dependencies": { "@shikijs/vscode-textmate": "^9.3.0", "@types/hast": "^3.0.4" @@ -3309,7 +3421,8 @@ "node_modules/@shikijs/vscode-textmate": { "version": "9.3.0", "resolved": "https://registry.npmjs.org/@shikijs/vscode-textmate/-/vscode-textmate-9.3.0.tgz", - "integrity": "sha512-jn7/7ky30idSkd/O5yDBfAnVt+JJpepofP/POZ1iMOxK59cOfqIgg/Dj0eFsjOTMw+4ycJN0uhZH/Eb0bs/EUA==" + "integrity": "sha512-jn7/7ky30idSkd/O5yDBfAnVt+JJpepofP/POZ1iMOxK59cOfqIgg/Dj0eFsjOTMw+4ycJN0uhZH/Eb0bs/EUA==", + "license": "MIT" }, "node_modules/@swc/counter": { "version": "0.1.3", @@ -3358,6 +3471,7 @@ "version": "0.1.3", "resolved": "https://registry.npmjs.org/@theguild/remark-mermaid/-/remark-mermaid-0.1.3.tgz", "integrity": "sha512-2FjVlaaKXK7Zj7UJAgOVTyaahn/3/EAfqYhyXg0BfDBVUl+lXcoIWRaxzqfnDr2rv8ax6GsC5mNh6hAaT86PDw==", + "license": "MIT", "dependencies": { "mermaid": "^11.0.0", "unist-util-visit": "^5.0.0" @@ -3370,6 +3484,7 @@ "version": "0.3.2", "resolved": "https://registry.npmjs.org/@theguild/remark-npm2yarn/-/remark-npm2yarn-0.3.2.tgz", "integrity": "sha512-H9T/GOuS/+4H7AY1cfD5DJIIIcGIIw1zMCB8OeTgXk7azJULsnuOurZ/CR54rvuTD+Krx0MVQccaUCvCWfP+vw==", + "license": "MIT", "dependencies": { "npm-to-yarn": "^3.0.0", "unist-util-visit": "^5.0.0" @@ -3386,6 +3501,7 @@ "version": "4.0.6", "resolved": "https://registry.npmjs.org/@types/acorn/-/acorn-4.0.6.tgz", "integrity": "sha512-veQTnWP+1D/xbxVrPC3zHnCZRjSrKfhbMUlEA43iMZLu7EsnTtkJklIuwrCPbOi8YkvDQAiW05VQQFvvz9oieQ==", + "license": "MIT", "dependencies": { "@types/estree": "*" } @@ -3394,6 +3510,7 @@ "version": "4.1.12", "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.12.tgz", "integrity": "sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==", + "license": "MIT", "dependencies": { "@types/ms": "*" } @@ -3410,15 +3527,16 @@ } }, "node_modules/@types/estree": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz", - "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==", + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.6.tgz", + "integrity": "sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==", "license": "MIT" }, "node_modules/@types/estree-jsx": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/@types/estree-jsx/-/estree-jsx-1.0.5.tgz", "integrity": "sha512-52CcUVNFyfb1A2ALocQw/Dd1BQFNmSdkuC3BkZ6iqhdMfQz7JWOFRuJFloOzjk+6WijU56m9oKXFAXc7o3Towg==", + "license": "MIT", "dependencies": { "@types/estree": "*" } @@ -3427,6 +3545,7 @@ "version": "3.0.4", "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==", + "license": "MIT", "dependencies": { "@types/unist": "*" } @@ -3455,6 +3574,7 @@ "version": "4.0.4", "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-4.0.4.tgz", "integrity": "sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==", + "license": "MIT", "dependencies": { "@types/unist": "*" } @@ -3462,39 +3582,29 @@ "node_modules/@types/mdx": { "version": "2.0.13", "resolved": "https://registry.npmjs.org/@types/mdx/-/mdx-2.0.13.tgz", - "integrity": "sha512-+OWZQfAYyio6YkJb3HLxDrvnx6SWWDbC0zVPfBRzUk0/nqoDyf6dNxQi3eArPe8rJ473nobTMQ/8Zk+LxJ+Yuw==" + "integrity": "sha512-+OWZQfAYyio6YkJb3HLxDrvnx6SWWDbC0zVPfBRzUk0/nqoDyf6dNxQi3eArPe8rJ473nobTMQ/8Zk+LxJ+Yuw==", + "license": "MIT" }, "node_modules/@types/ms": { "version": "0.7.34", "resolved": "https://registry.npmjs.org/@types/ms/-/ms-0.7.34.tgz", - "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" + "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==", + "license": "MIT" }, "node_modules/@types/nlcst": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/@types/nlcst/-/nlcst-2.0.3.tgz", "integrity": "sha512-vSYNSDe6Ix3q+6Z7ri9lyWqgGhJTmzRjZRqyq15N0Z/1/UnVsno9G/N40NBijoYx2seFDIl0+B2mgAb9mezUCA==", + "license": "MIT", "dependencies": { "@types/unist": "*" } }, "node_modules/@types/node": { - "version": "22.7.5", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.7.5.tgz", - "integrity": "sha512-jML7s2NAzMWc//QSJ1a3prpk78cOPchGvXJsC3C6R6PSMoooztvRVQEz89gmBTBY1SPMaqo5teB4uNHPdetShQ==", - "dependencies": { - "undici-types": "~6.19.2" - } - }, - "node_modules/@types/node-fetch": { - "version": "2.6.11", - "resolved": "https://registry.npmjs.org/@types/node-fetch/-/node-fetch-2.6.11.tgz", - "integrity": "sha512-24xFj9R5+rfQJLRyM56qh+wnVSYhyXC2tkoBndtY0U+vubqNsYXGjufB2nn8Q6gt0LrARwL6UBtMCSVCwl4B1g==", - "license": "MIT", - "peer": true, - "dependencies": { - "@types/node": "*", - "form-data": "^4.0.0" - } + "version": "12.20.55", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", + "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==", + "license": "MIT" }, "node_modules/@types/normalize-package-data": { "version": "2.4.4", @@ -3509,17 +3619,11 @@ "integrity": "sha512-hCZTSvwbzWGvhqxp/RqVqwU999pBf2vp7hzIjiYOsl8wqOmUxkQ6ddw1cV3l8811+kdUFus/q4d1Y3E3SyEifA==", "license": "MIT" }, - "node_modules/@types/qs": { - "version": "6.9.16", - "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.16.tgz", - "integrity": "sha512-7i+zxXdPD0T4cKDuxCUXJ4wHcsJLwENa6Z3dCu8cfCK743OGy5Nu1RmAGqDPsoTDINVEcdXKRvR/zre+P2Ku1A==", - "license": "MIT", - "peer": true - }, "node_modules/@types/react": { "version": "18.3.11", "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.11.tgz", "integrity": "sha512-r6QZ069rFTjrEYgFdOck1gK7FLVsgJE7tTz0pQBczlBNUhBNk0MQH4UbnFSwjpQLMkLzgqvBBa+qGpLje16eTQ==", + "license": "MIT", "dependencies": { "@types/prop-types": "*", "csstype": "^3.0.2" @@ -3530,6 +3634,7 @@ "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.3.1.tgz", "integrity": "sha512-qW1Mfv8taImTthu4KoXgDfLuk4bydU6Q/TkADnDWWHwi4NX4BR+LWfTp2sVmTqRrsHvyDDTelgelxJ+SsejKKQ==", "dev": true, + "license": "MIT", "dependencies": { "@types/react": "*" } @@ -3542,9 +3647,9 @@ "license": "MIT" }, "node_modules/@types/unist": { - "version": "2.0.11", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.11.tgz", - "integrity": "sha512-CmBKiL6NNo/OqgmMn95Fk9Whlp2mtvIv+KNpQKN2F4SjvrEesubTRWGYSg+BnWZOnlCaSTU1sMpsBOzgbYhnsA==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", + "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==", "license": "MIT" }, "node_modules/@typescript-eslint/eslint-plugin": { @@ -3770,6 +3875,7 @@ "version": "1.6.0", "resolved": "https://registry.npmjs.org/@typescript/vfs/-/vfs-1.6.0.tgz", "integrity": "sha512-hvJUjNVeBMp77qPINuUvYXj4FyWeeMMKZkxEATEU3hqBAQ7qdTBCUFT7Sp0Zu0faeEtFf+ldXxMEDr/bk73ISg==", + "license": "MIT", "dependencies": { "debug": "^4.1.1" }, @@ -3860,10 +3966,18 @@ } } }, + "node_modules/@zeit/schemas": { + "version": "2.36.0", + "resolved": "https://registry.npmjs.org/@zeit/schemas/-/schemas-2.36.0.tgz", + "integrity": "sha512-7kjMwcChYEzMKjeex9ZFXkt1AyNov9R5HZtjBKVsmVpw7pa7ZtlCGvCBC2vnnXctaYN+aRI61HjIqeetZW5ROg==", + "dev": true, + "license": "MIT" + }, "node_modules/abort-controller": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz", "integrity": "sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==", + "dev": true, "license": "MIT", "dependencies": { "event-target-shim": "^5.0.0" @@ -3878,10 +3992,24 @@ "integrity": "sha512-2BjRTZxTPvheOvGbBslFSYOUkr+SjPtOnrLP33f+VIWLzezQpZcqVg7ja3L4dBXmzzgwT+a029jRx5PCi3JuiA==", "license": "MIT" }, + "node_modules/accepts": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", + "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", + "dev": true, + "license": "MIT", + "dependencies": { + "mime-types": "~2.1.34", + "negotiator": "0.6.3" + }, + "engines": { + "node": ">= 0.6" + } + }, "node_modules/acorn": { - "version": "8.12.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.12.1.tgz", - "integrity": "sha512-tcpGyI9zbizT9JbV6oYE477V6mTlXvvi0T0G3SNIYE2apm/G5huBa1+K89VGeovbg+jycCrfhl3ADxErOuO6Jg==", + "version": "8.13.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.13.0.tgz", + "integrity": "sha512-8zSiw54Oxrdym50NlZ9sUusyO1Z1ZchgRLWRaK6c86XJFClyCgFKetdowBg5bKxyp/u+CDBJG4Mpp0m3HLZl9w==", "license": "MIT", "bin": { "acorn": "bin/acorn" @@ -3912,19 +4040,6 @@ "node": ">= 14" } }, - "node_modules/agentkeepalive": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.5.0.tgz", - "integrity": "sha512-5GG/5IbQQpC9FpkRGsSvZI5QYeSCzlJHdpBQntCsuTOxhKD8lqKhrleg2Yi7yvMIf82Ycmmqln9U8V9qwEiJew==", - "license": "MIT", - "peer": true, - "dependencies": { - "humanize-ms": "^1.2.1" - }, - "engines": { - "node": ">= 8.0.0" - } - }, "node_modules/ajv": { "version": "6.12.6", "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", @@ -3946,6 +4061,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-3.0.1.tgz", "integrity": "sha512-8iUql50EUR+uUcdRQ3HDqa6EVyo3docL8g5WJ3FNcWmu62IbkGUue/pEyLBW8VGKKucTPgqeks4fIU1DA4yowQ==", + "license": "MIT", "dependencies": { "ajv": "^8.0.0" }, @@ -3962,6 +4078,7 @@ "version": "8.17.1", "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.17.1.tgz", "integrity": "sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==", + "license": "MIT", "dependencies": { "fast-deep-equal": "^3.1.3", "fast-uri": "^3.0.1", @@ -3976,7 +4093,8 @@ "node_modules/ajv-formats/node_modules/json-schema-traverse": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==" + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "license": "MIT" }, "node_modules/amp": { "version": "0.3.1", @@ -3995,6 +4113,38 @@ "amp": "0.3.1" } }, + "node_modules/ansi-align": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.1.tgz", + "integrity": "sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==", + "dev": true, + "license": "ISC", + "dependencies": { + "string-width": "^4.1.0" + } + }, + "node_modules/ansi-align/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true, + "license": "MIT" + }, + "node_modules/ansi-align/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "license": "MIT", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/ansi-colors": { "version": "4.1.3", "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", @@ -4137,6 +4287,7 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/array-iterate/-/array-iterate-2.0.1.tgz", "integrity": "sha512-I1jXZMjAgCMmxT4qxXfPXa6SthSoE8h6gkSI9BGGNv8mP8G/v0blc+qFnZu6K42vTOiuME596QaLO0TP3Lk0xg==", + "license": "MIT", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" @@ -4295,6 +4446,7 @@ "version": "1.9.0", "resolved": "https://registry.npmjs.org/astring/-/astring-1.9.0.tgz", "integrity": "sha512-LElXdjswlqjWrPpJFg1Fx4wpkOCxj1TDHlSV4PlaRxHGWko024xICaa97ZkMfs6DRKlCguiAI+rbXv5GWwXIkg==", + "license": "MIT", "bin": { "astring": "bin/astring" } @@ -4338,18 +4490,19 @@ } }, "node_modules/avvio": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/avvio/-/avvio-9.0.0.tgz", - "integrity": "sha512-UbYrOXgE/I+knFG+3kJr9AgC7uNo8DG+FGGODpH9Bj1O1kL/QDjBXnTem9leD3VdQKtaHjV3O85DQ7hHh4IIHw==", + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/avvio/-/avvio-9.1.0.tgz", + "integrity": "sha512-fYASnYi600CsH/j9EQov7lECAniYiBFiiAtBNuZYLA2leLe9qOvZzqYHFjtIj6gD2VMoMLP14834LFWvr4IfDw==", + "license": "MIT", "dependencies": { "@fastify/error": "^4.0.0", "fastq": "^1.17.1" } }, "node_modules/axe-core": { - "version": "4.10.0", - "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.10.0.tgz", - "integrity": "sha512-Mr2ZakwQ7XUAjp7pAwQWRhhK8mQQ6JAaNWSjmjxil0R8BPioMtQsTLOolGYkji1rcL++3dCqZA3zWqpT+9Ew6g==", + "version": "4.10.1", + "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.10.1.tgz", + "integrity": "sha512-qPC9o+kD8Tir0lzNGLeghbOrWMr3ZJpaRlCIb6Uobt/7N4FiEDvqUMnxzCHRHmg8vOg14kr5gVNyScRmbMaJ9g==", "dev": true, "license": "MPL-2.0", "engines": { @@ -4377,14 +4530,11 @@ "node": ">= 0.4" } }, - "node_modules/backend": { - "resolved": "internal/backend", - "link": true - }, "node_modules/bail": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/bail/-/bail-2.0.2.tgz", "integrity": "sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw==", + "license": "MIT", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" @@ -4415,7 +4565,8 @@ "type": "consulting", "url": "https://feross.org/support" } - ] + ], + "license": "MIT" }, "node_modules/basic-ftp": { "version": "5.0.5", @@ -4443,6 +4594,7 @@ "version": "2.0.3", "resolved": "https://registry.npmjs.org/better-react-mathjax/-/better-react-mathjax-2.0.3.tgz", "integrity": "sha512-wfifT8GFOKb1TWm2+E50I6DJpLZ5kLbch283Lu043EJtwSv0XvZDjr4YfR4d2MjAhqP6SH4VjjrKgbX8R00oCQ==", + "license": "MIT", "dependencies": { "mathjax-full": "^3.2.2" }, @@ -4483,18 +4635,67 @@ "dev": true, "license": "MIT" }, - "node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "node_modules/boxen": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/boxen/-/boxen-7.0.0.tgz", + "integrity": "sha512-j//dBVuyacJbvW+tvZ9HuH03fZ46QcaKvvhZickZqtB271DxJ7SNRSNxrV/dZX0085m7hISRZWbzWlJvx/rHSg==", "dev": true, "license": "MIT", "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/braces": { + "ansi-align": "^3.0.1", + "camelcase": "^7.0.0", + "chalk": "^5.0.1", + "cli-boxes": "^3.0.0", + "string-width": "^5.1.2", + "type-fest": "^2.13.0", + "widest-line": "^4.0.1", + "wrap-ansi": "^8.0.1" + }, + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/boxen/node_modules/chalk": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.3.0.tgz", + "integrity": "sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^12.17.0 || ^14.13 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/boxen/node_modules/type-fest": { + "version": "2.19.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz", + "integrity": "sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==", + "dev": true, + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=12.20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", @@ -4507,9 +4708,9 @@ } }, "node_modules/browserslist": { - "version": "4.23.3", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.3.tgz", - "integrity": "sha512-btwCFJVjI4YWDNfau8RhZ+B1Q/VLoUITrm3RlP6y1tYGWIOa+InuYiRGXUBXo8nA1qKmHMyLB/iVQg5TT4eFoA==", + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.0.tgz", + "integrity": "sha512-Rmb62sR1Zpjql25eSanFGEhAxcFwfA1K0GuQcLoaJBAcENegrQut3hYdhXFF1obQfiDyqIW/cLM5HSJ/9k884A==", "dev": true, "funding": [ { @@ -4527,8 +4728,8 @@ ], "license": "MIT", "dependencies": { - "caniuse-lite": "^1.0.30001646", - "electron-to-chromium": "^1.5.4", + "caniuse-lite": "^1.0.30001663", + "electron-to-chromium": "^1.5.28", "node-releases": "^2.0.18", "update-browserslist-db": "^1.1.0" }, @@ -4558,6 +4759,7 @@ "url": "https://feross.org/support" } ], + "license": "MIT", "dependencies": { "base64-js": "^1.3.1", "ieee754": "^1.2.1" @@ -4610,6 +4812,16 @@ "node": ">=10.16.0" } }, + "node_modules/bytes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", + "integrity": "sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, "node_modules/cac": { "version": "6.7.14", "resolved": "https://registry.npmjs.org/cac/-/cac-6.7.14.tgz", @@ -4620,18 +4832,11 @@ "node": ">=8" } }, - "node_modules/cache-handler-docs": { - "resolved": "docs/cache-handler-docs", - "link": true - }, - "node_modules/cache-testing": { - "resolved": "apps/cache-testing", - "link": true - }, "node_modules/call-bind": { "version": "1.0.7", "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.7.tgz", "integrity": "sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==", + "dev": true, "license": "MIT", "dependencies": { "es-define-property": "^1.0.0", @@ -4657,10 +4862,23 @@ "node": ">=6" } }, + "node_modules/camelcase": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-7.0.1.tgz", + "integrity": "sha512-xlx1yCK2Oc1APsPXDL2LdlNP6+uu8OCDdhOBSVT279M/S+y75O30C2VuD8T2ogdePBBl7PfPF4504tnLgX3zfw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/caniuse-lite": { - "version": "1.0.30001660", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001660.tgz", - "integrity": "sha512-GacvNTTuATm26qC74pt+ad1fW15mlQ/zuTzzY1ZoIzECTP8HURDfF43kNxPgf7H1jmelCBQTTbBNxdSXOA7Bqg==", + "version": "1.0.30001669", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001669.tgz", + "integrity": "sha512-DlWzFDJqstqtIVx1zeSpIMLjunf5SmwOw0N2Ck/QSQdS8PLS4+9HrLaYei4w8BIAL7IB/UEDu889d8vhCTPA0w==", "funding": [ { "type": "opencollective", @@ -4681,6 +4899,7 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/ccount/-/ccount-2.0.1.tgz", "integrity": "sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==", + "license": "MIT", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" @@ -4703,10 +4922,27 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, + "node_modules/chalk-template": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/chalk-template/-/chalk-template-0.4.0.tgz", + "integrity": "sha512-/ghrgmhfY8RaSdeo43hNXxpoHAtxdbskUHjPpfqUWGttFgycUhYPGx3YZBCnUCvOa7Doivn1IZec3DEGFoMgLg==", + "dev": true, + "license": "MIT", + "dependencies": { + "chalk": "^4.1.2" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/chalk-template?sponsor=1" + } + }, "node_modules/character-entities": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/character-entities/-/character-entities-2.0.2.tgz", "integrity": "sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ==", + "license": "MIT", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" @@ -4716,6 +4952,7 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/character-entities-html4/-/character-entities-html4-2.1.0.tgz", "integrity": "sha512-1v7fgQRj6hnSwFpq1Eu0ynr/CDEw0rXo2B61qXrLNdHZmPKgb7fqS1a2JwF0rISo9q77jDI8VMEHoApn8qDoZA==", + "license": "MIT", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" @@ -4725,6 +4962,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-3.0.0.tgz", "integrity": "sha512-RpPp0asT/6ufRm//AJVwpViZbGM/MkjQFxJccQRHmISF/22NBtsHqAWmL+/pmkPWoIUJdWyeVleTl1wydHATVQ==", + "license": "MIT", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" @@ -4734,6 +4972,7 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/character-reference-invalid/-/character-reference-invalid-2.0.1.tgz", "integrity": "sha512-iBZ4F4wRbyORVsu0jPV7gXkOsGYjGHPmAyv+HiHG8gi5PtC9KI2j1+v8/tlibRvjoWX027ypmG/n0HtO5t7unw==", + "license": "MIT", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" @@ -4756,6 +4995,7 @@ "version": "11.0.3", "resolved": "https://registry.npmjs.org/chevrotain/-/chevrotain-11.0.3.tgz", "integrity": "sha512-ci2iJH6LeIkvP9eJW6gpueU8cnZhv85ELY8w8WiFtNjMHA5ad6pQLaJo9mEly/9qUyCpvqX8/POVUTf18/HFdw==", + "license": "Apache-2.0", "dependencies": { "@chevrotain/cst-dts-gen": "11.0.3", "@chevrotain/gast": "11.0.3", @@ -4769,6 +5009,7 @@ "version": "0.3.1", "resolved": "https://registry.npmjs.org/chevrotain-allstar/-/chevrotain-allstar-0.3.1.tgz", "integrity": "sha512-b7g+y9A0v4mxCW1qUhf3BSVPg+/NvGErk/dOkrDaHA0nQIQGAtrOjlX//9OQtRlSCy+x9rfB5N8yC71lH1nvMw==", + "license": "MIT", "dependencies": { "lodash-es": "^4.17.21" }, @@ -4852,6 +5093,19 @@ "node": ">=0.8.0" } }, + "node_modules/cli-boxes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-3.0.0.tgz", + "integrity": "sha512-/lzGpEWL/8PfI0BmBOPRwp0c/wFNX1RdUML3jK/RcSBA9T8mZDdQpqYBKtCFTOfQbwPqWEOpjqW+Fnayc0969g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/cli-tableau": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/cli-tableau/-/cli-tableau-2.0.1.tgz", @@ -4919,6 +5173,7 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/collapse-white-space/-/collapse-white-space-2.1.0.tgz", "integrity": "sha512-loKTxY1zCOuG4j9f6EPnuyyYkf58RnhhWTvRoZEokgB+WbdXehfjFviyOVYkqzEWz1Q5kRiZdBYS5SwxbQYwzw==", + "license": "MIT", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" @@ -4982,6 +5237,62 @@ "node": ">= 12" } }, + "node_modules/compressible": { + "version": "2.0.18", + "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", + "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", + "dev": true, + "license": "MIT", + "dependencies": { + "mime-db": ">= 1.43.0 < 2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/compression": { + "version": "1.7.4", + "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz", + "integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "accepts": "~1.3.5", + "bytes": "3.0.0", + "compressible": "~2.0.16", + "debug": "2.6.9", + "on-headers": "~1.0.2", + "safe-buffer": "5.1.2", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/compression/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/compression/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true, + "license": "MIT" + }, + "node_modules/compression/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true, + "license": "MIT" + }, "node_modules/compute-scroll-into-view": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/compute-scroll-into-view/-/compute-scroll-into-view-3.1.0.tgz", @@ -4998,7 +5309,8 @@ "node_modules/confbox": { "version": "0.1.8", "resolved": "https://registry.npmjs.org/confbox/-/confbox-0.1.8.tgz", - "integrity": "sha512-RMtmw0iFkeR4YV+fUOSucriAQNb9g8zFR52MWCtl+cCZOFRNL6zeB395vPzFhEjjn4fMxXudmELnl/KF/WrK6w==" + "integrity": "sha512-RMtmw0iFkeR4YV+fUOSucriAQNb9g8zFR52MWCtl+cCZOFRNL6zeB395vPzFhEjjn4fMxXudmELnl/KF/WrK6w==", + "license": "MIT" }, "node_modules/consola": { "version": "3.2.3", @@ -5010,6 +5322,16 @@ "node": "^14.18.0 || >=16.10.0" } }, + "node_modules/content-disposition": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.2.tgz", + "integrity": "sha512-kRGRZw3bLlFISDBgwTSA1TMBFN6J6GWDeubmDE3AF+3+yXL8hTWv8r5rkLbqYXY4RjPk/EzHnClI3zQf1cFmHA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, "node_modules/convert-source-map": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", @@ -5018,9 +5340,10 @@ "license": "MIT" }, "node_modules/cookie": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.6.0.tgz", - "integrity": "sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==", + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.2.tgz", + "integrity": "sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w==", + "license": "MIT", "engines": { "node": ">= 0.6" } @@ -5043,6 +5366,7 @@ "version": "1.0.3", "resolved": "https://registry.npmjs.org/cose-base/-/cose-base-1.0.3.tgz", "integrity": "sha512-s9whTXInMSgAp/NVXVNuVxVKzGH2qck3aQlVHxDCdAEPgtMKwc4Wq6/QKhgdEdgbLSi9rBTAcPoRa6JpiG4ksg==", + "license": "MIT", "dependencies": { "layout-base": "^1.0.0" } @@ -5086,6 +5410,7 @@ "version": "3.30.2", "resolved": "https://registry.npmjs.org/cytoscape/-/cytoscape-3.30.2.tgz", "integrity": "sha512-oICxQsjW8uSaRmn4UK/jkczKOqTrVqt5/1WL0POiJUT2EKNc9STM4hYFHv917yu55aTBMFNRzymlJhVAiWPCxw==", + "license": "MIT", "engines": { "node": ">=0.10" } @@ -5094,6 +5419,7 @@ "version": "4.1.0", "resolved": "https://registry.npmjs.org/cytoscape-cose-bilkent/-/cytoscape-cose-bilkent-4.1.0.tgz", "integrity": "sha512-wgQlVIUJF13Quxiv5e1gstZ08rnZj2XaLHGoFMYXz7SkNfCDOOteKBE6SYRfA9WxxI/iBc3ajfDoc6hb/MRAHQ==", + "license": "MIT", "dependencies": { "cose-base": "^1.0.0" }, @@ -5105,6 +5431,7 @@ "version": "2.2.0", "resolved": "https://registry.npmjs.org/cytoscape-fcose/-/cytoscape-fcose-2.2.0.tgz", "integrity": "sha512-ki1/VuRIHFCzxWNrsshHYPs6L7TvLu3DL+TyIGEsRcvVERmxokbf5Gdk7mFxZnTdiGtnA4cfSmjZJMviqSuZrQ==", + "license": "MIT", "dependencies": { "cose-base": "^2.2.0" }, @@ -5116,6 +5443,7 @@ "version": "2.2.0", "resolved": "https://registry.npmjs.org/cose-base/-/cose-base-2.2.0.tgz", "integrity": "sha512-AzlgcsCbUMymkADOJtQm3wO9S3ltPfYOFD5033keQn9NJzIbtnZj+UdBJe7DYml/8TdbtHJW3j58SOnKhWY/5g==", + "license": "MIT", "dependencies": { "layout-base": "^2.0.0" } @@ -5123,12 +5451,14 @@ "node_modules/cytoscape-fcose/node_modules/layout-base": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/layout-base/-/layout-base-2.0.1.tgz", - "integrity": "sha512-dp3s92+uNI1hWIpPGH3jK2kxE2lMjdXdr+DH8ynZHpd6PUlH6x6cbuXnoMmiNumznqaNO31xu9e79F0uuZ0JFg==" + "integrity": "sha512-dp3s92+uNI1hWIpPGH3jK2kxE2lMjdXdr+DH8ynZHpd6PUlH6x6cbuXnoMmiNumznqaNO31xu9e79F0uuZ0JFg==", + "license": "MIT" }, "node_modules/d3": { "version": "7.9.0", "resolved": "https://registry.npmjs.org/d3/-/d3-7.9.0.tgz", "integrity": "sha512-e1U46jVP+w7Iut8Jt8ri1YsPOvFpg46k+K8TpCb0P+zjCkjkPnV7WzfDJzMHy1LnA+wj5pLT1wjO901gLXeEhA==", + "license": "ISC", "dependencies": { "d3-array": "3", "d3-axis": "3", @@ -5169,6 +5499,7 @@ "version": "3.2.4", "resolved": "https://registry.npmjs.org/d3-array/-/d3-array-3.2.4.tgz", "integrity": "sha512-tdQAmyA18i4J7wprpYq8ClcxZy3SC31QMeByyCFyRt7BVHdREQZ5lpzoe5mFEYZUWe+oq8HBvk9JjpibyEV4Jg==", + "license": "ISC", "dependencies": { "internmap": "1 - 2" }, @@ -5180,6 +5511,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/d3-axis/-/d3-axis-3.0.0.tgz", "integrity": "sha512-IH5tgjV4jE/GhHkRV0HiVYPDtvfjHQlQfJHs0usq7M30XcSBvOotpmH1IgkcXsO/5gEQZD43B//fc7SRT5S+xw==", + "license": "ISC", "engines": { "node": ">=12" } @@ -5188,6 +5520,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/d3-brush/-/d3-brush-3.0.0.tgz", "integrity": "sha512-ALnjWlVYkXsVIGlOsuWH1+3udkYFI48Ljihfnh8FZPF2QS9o+PzGLBslO0PjzVoHLZ2KCVgAM8NVkXPJB2aNnQ==", + "license": "ISC", "dependencies": { "d3-dispatch": "1 - 3", "d3-drag": "2 - 3", @@ -5203,6 +5536,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/d3-chord/-/d3-chord-3.0.1.tgz", "integrity": "sha512-VE5S6TNa+j8msksl7HwjxMHDM2yNK3XCkusIlpX5kwauBfXuyLAtNg9jCp/iHH61tgI4sb6R/EIMWCqEIdjT/g==", + "license": "ISC", "dependencies": { "d3-path": "1 - 3" }, @@ -5214,6 +5548,7 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/d3-color/-/d3-color-3.1.0.tgz", "integrity": "sha512-zg/chbXyeBtMQ1LbD/WSoW2DpC3I0mpmPdW+ynRTj/x2DAWYrIY7qeZIHidozwV24m4iavr15lNwIwLxRmOxhA==", + "license": "ISC", "engines": { "node": ">=12" } @@ -5222,6 +5557,7 @@ "version": "4.0.2", "resolved": "https://registry.npmjs.org/d3-contour/-/d3-contour-4.0.2.tgz", "integrity": "sha512-4EzFTRIikzs47RGmdxbeUvLWtGedDUNkTcmzoeyg4sP/dvCexO47AaQL7VKy/gul85TOxw+IBgA8US2xwbToNA==", + "license": "ISC", "dependencies": { "d3-array": "^3.2.0" }, @@ -5233,6 +5569,7 @@ "version": "6.0.4", "resolved": "https://registry.npmjs.org/d3-delaunay/-/d3-delaunay-6.0.4.tgz", "integrity": "sha512-mdjtIZ1XLAM8bm/hx3WwjfHt6Sggek7qH043O8KEjDXN40xi3vx/6pYSVTwLjEgiXQTbvaouWKynLBiUZ6SK6A==", + "license": "ISC", "dependencies": { "delaunator": "5" }, @@ -5244,6 +5581,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/d3-dispatch/-/d3-dispatch-3.0.1.tgz", "integrity": "sha512-rzUyPU/S7rwUflMyLc1ETDeBj0NRuHKKAcvukozwhshr6g6c5d8zh4c2gQjY2bZ0dXeGLWc1PF174P2tVvKhfg==", + "license": "ISC", "engines": { "node": ">=12" } @@ -5252,6 +5590,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/d3-drag/-/d3-drag-3.0.0.tgz", "integrity": "sha512-pWbUJLdETVA8lQNJecMxoXfH6x+mO2UQo8rSmZ+QqxcbyA3hfeprFgIT//HW2nlHChWeIIMwS2Fq+gEARkhTkg==", + "license": "ISC", "dependencies": { "d3-dispatch": "1 - 3", "d3-selection": "3" @@ -5264,6 +5603,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/d3-dsv/-/d3-dsv-3.0.1.tgz", "integrity": "sha512-UG6OvdI5afDIFP9w4G0mNq50dSOsXHJaRE8arAS5o9ApWnIElp8GZw1Dun8vP8OyHOZ/QJUKUJwxiiCCnUwm+Q==", + "license": "ISC", "dependencies": { "commander": "7", "iconv-lite": "0.6", @@ -5288,6 +5628,7 @@ "version": "7.2.0", "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz", "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==", + "license": "MIT", "engines": { "node": ">= 10" } @@ -5296,6 +5637,7 @@ "version": "0.6.3", "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "license": "MIT", "dependencies": { "safer-buffer": ">= 2.1.2 < 3.0.0" }, @@ -5307,6 +5649,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/d3-ease/-/d3-ease-3.0.1.tgz", "integrity": "sha512-wR/XK3D3XcLIZwpbvQwQ5fK+8Ykds1ip7A2Txe0yxncXSdq1L9skcG7blcedkOX+ZcgxGAmLX1FrRGbADwzi0w==", + "license": "BSD-3-Clause", "engines": { "node": ">=12" } @@ -5315,6 +5658,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/d3-fetch/-/d3-fetch-3.0.1.tgz", "integrity": "sha512-kpkQIM20n3oLVBKGg6oHrUchHM3xODkTzjMoj7aWQFq5QEM+R6E4WkzT5+tojDY7yjez8KgCBRoj4aEr99Fdqw==", + "license": "ISC", "dependencies": { "d3-dsv": "1 - 3" }, @@ -5326,6 +5670,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/d3-force/-/d3-force-3.0.0.tgz", "integrity": "sha512-zxV/SsA+U4yte8051P4ECydjD/S+qeYtnaIyAs9tgHCqfguma/aAQDjo85A9Z6EKhBirHRJHXIgJUlffT4wdLg==", + "license": "ISC", "dependencies": { "d3-dispatch": "1 - 3", "d3-quadtree": "1 - 3", @@ -5339,6 +5684,7 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/d3-format/-/d3-format-3.1.0.tgz", "integrity": "sha512-YyUI6AEuY/Wpt8KWLgZHsIU86atmikuoOmCfommt0LYHiQSPjvX2AcFc38PX0CBpr2RCyZhjex+NS/LPOv6YqA==", + "license": "ISC", "engines": { "node": ">=12" } @@ -5347,6 +5693,7 @@ "version": "3.1.1", "resolved": "https://registry.npmjs.org/d3-geo/-/d3-geo-3.1.1.tgz", "integrity": "sha512-637ln3gXKXOwhalDzinUgY83KzNWZRKbYubaG+fGVuc/dxO64RRljtCTnf5ecMyE1RIdtqpkVcq0IbtU2S8j2Q==", + "license": "ISC", "dependencies": { "d3-array": "2.5.0 - 3" }, @@ -5358,6 +5705,7 @@ "version": "3.1.2", "resolved": "https://registry.npmjs.org/d3-hierarchy/-/d3-hierarchy-3.1.2.tgz", "integrity": "sha512-FX/9frcub54beBdugHjDCdikxThEqjnR93Qt7PvQTOHxyiNCAlvMrHhclk3cD5VeAaq9fxmfRp+CnWw9rEMBuA==", + "license": "ISC", "engines": { "node": ">=12" } @@ -5366,6 +5714,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/d3-interpolate/-/d3-interpolate-3.0.1.tgz", "integrity": "sha512-3bYs1rOD33uo8aqJfKP3JWPAibgw8Zm2+L9vBKEHJ2Rg+viTR7o5Mmv5mZcieN+FRYaAOWX5SJATX6k1PWz72g==", + "license": "ISC", "dependencies": { "d3-color": "1 - 3" }, @@ -5377,6 +5726,7 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/d3-path/-/d3-path-3.1.0.tgz", "integrity": "sha512-p3KP5HCf/bvjBSSKuXid6Zqijx7wIfNW+J/maPs+iwR35at5JCbLUT0LzF1cnjbCHWhqzQTIN2Jpe8pRebIEFQ==", + "license": "ISC", "engines": { "node": ">=12" } @@ -5385,6 +5735,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/d3-polygon/-/d3-polygon-3.0.1.tgz", "integrity": "sha512-3vbA7vXYwfe1SYhED++fPUQlWSYTTGmFmQiany/gdbiWgU/iEyQzyymwL9SkJjFFuCS4902BSzewVGsHHmHtXg==", + "license": "ISC", "engines": { "node": ">=12" } @@ -5393,6 +5744,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/d3-quadtree/-/d3-quadtree-3.0.1.tgz", "integrity": "sha512-04xDrxQTDTCFwP5H6hRhsRcb9xxv2RzkcsygFzmkSIOJy3PeRJP7sNk3VRIbKXcog561P9oU0/rVH6vDROAgUw==", + "license": "ISC", "engines": { "node": ">=12" } @@ -5401,6 +5753,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/d3-random/-/d3-random-3.0.1.tgz", "integrity": "sha512-FXMe9GfxTxqd5D6jFsQ+DJ8BJS4E/fT5mqqdjovykEB2oFbTMDVdg1MGFxfQW+FBOGoB++k8swBrgwSHT1cUXQ==", + "license": "ISC", "engines": { "node": ">=12" } @@ -5409,6 +5762,7 @@ "version": "0.12.3", "resolved": "https://registry.npmjs.org/d3-sankey/-/d3-sankey-0.12.3.tgz", "integrity": "sha512-nQhsBRmM19Ax5xEIPLMY9ZmJ/cDvd1BG3UVvt5h3WRxKg5zGRbvnteTyWAbzeSvlh3tW7ZEmq4VwR5mB3tutmQ==", + "license": "BSD-3-Clause", "dependencies": { "d3-array": "1 - 2", "d3-shape": "^1.2.0" @@ -5418,6 +5772,7 @@ "version": "2.12.1", "resolved": "https://registry.npmjs.org/d3-array/-/d3-array-2.12.1.tgz", "integrity": "sha512-B0ErZK/66mHtEsR1TkPEEkwdy+WDesimkM5gpZr5Dsg54BiTA5RXtYW5qTLIAcekaS9xfZrzBLF/OAkB3Qn1YQ==", + "license": "BSD-3-Clause", "dependencies": { "internmap": "^1.0.0" } @@ -5425,12 +5780,14 @@ "node_modules/d3-sankey/node_modules/d3-path": { "version": "1.0.9", "resolved": "https://registry.npmjs.org/d3-path/-/d3-path-1.0.9.tgz", - "integrity": "sha512-VLaYcn81dtHVTjEHd8B+pbe9yHWpXKZUC87PzoFmsFrJqgFwDe/qxfp5MlfsfM1V5E/iVt0MmEbWQ7FVIXh/bg==" + "integrity": "sha512-VLaYcn81dtHVTjEHd8B+pbe9yHWpXKZUC87PzoFmsFrJqgFwDe/qxfp5MlfsfM1V5E/iVt0MmEbWQ7FVIXh/bg==", + "license": "BSD-3-Clause" }, "node_modules/d3-sankey/node_modules/d3-shape": { "version": "1.3.7", "resolved": "https://registry.npmjs.org/d3-shape/-/d3-shape-1.3.7.tgz", "integrity": "sha512-EUkvKjqPFUAZyOlhY5gzCxCeI0Aep04LwIRpsZ/mLFelJiUfnK56jo5JMDSE7yyP2kLSb6LtF+S5chMk7uqPqw==", + "license": "BSD-3-Clause", "dependencies": { "d3-path": "1" } @@ -5438,12 +5795,14 @@ "node_modules/d3-sankey/node_modules/internmap": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/internmap/-/internmap-1.0.1.tgz", - "integrity": "sha512-lDB5YccMydFBtasVtxnZ3MRBHuaoE8GKsppq+EchKL2U4nK/DmEpPHNH8MZe5HkMtpSiTSOZwfN0tzYjO/lJEw==" + "integrity": "sha512-lDB5YccMydFBtasVtxnZ3MRBHuaoE8GKsppq+EchKL2U4nK/DmEpPHNH8MZe5HkMtpSiTSOZwfN0tzYjO/lJEw==", + "license": "ISC" }, "node_modules/d3-scale": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/d3-scale/-/d3-scale-4.0.2.tgz", "integrity": "sha512-GZW464g1SH7ag3Y7hXjf8RoUuAFIqklOAq3MRl4OaWabTFJY9PN/E1YklhXLh+OQ3fM9yS2nOkCoS+WLZ6kvxQ==", + "license": "ISC", "dependencies": { "d3-array": "2.10.0 - 3", "d3-format": "1 - 3", @@ -5459,6 +5818,7 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/d3-scale-chromatic/-/d3-scale-chromatic-3.1.0.tgz", "integrity": "sha512-A3s5PWiZ9YCXFye1o246KoscMWqf8BsD9eRiJ3He7C9OBaxKhAd5TFCdEx/7VbKtxxTsu//1mMJFrEt572cEyQ==", + "license": "ISC", "dependencies": { "d3-color": "1 - 3", "d3-interpolate": "1 - 3" @@ -5471,6 +5831,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/d3-selection/-/d3-selection-3.0.0.tgz", "integrity": "sha512-fmTRWbNMmsmWq6xJV8D19U/gw/bwrHfNXxrIN+HfZgnzqTHp9jOmKMhsTUjXOJnZOdZY9Q28y4yebKzqDKlxlQ==", + "license": "ISC", "engines": { "node": ">=12" } @@ -5479,6 +5840,7 @@ "version": "3.2.0", "resolved": "https://registry.npmjs.org/d3-shape/-/d3-shape-3.2.0.tgz", "integrity": "sha512-SaLBuwGm3MOViRq2ABk3eLoxwZELpH6zhl3FbAoJ7Vm1gofKx6El1Ib5z23NUEhF9AsGl7y+dzLe5Cw2AArGTA==", + "license": "ISC", "dependencies": { "d3-path": "^3.1.0" }, @@ -5490,6 +5852,7 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/d3-time/-/d3-time-3.1.0.tgz", "integrity": "sha512-VqKjzBLejbSMT4IgbmVgDjpkYrNWUYJnbCGo874u7MMKIWsILRX+OpX/gTk8MqjpT1A/c6HY2dCA77ZN0lkQ2Q==", + "license": "ISC", "dependencies": { "d3-array": "2 - 3" }, @@ -5501,6 +5864,7 @@ "version": "4.1.0", "resolved": "https://registry.npmjs.org/d3-time-format/-/d3-time-format-4.1.0.tgz", "integrity": "sha512-dJxPBlzC7NugB2PDLwo9Q8JiTR3M3e4/XANkreKSUxF8vvXKqm1Yfq4Q5dl8budlunRVlUUaDUgFt7eA8D6NLg==", + "license": "ISC", "dependencies": { "d3-time": "1 - 3" }, @@ -5512,6 +5876,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/d3-timer/-/d3-timer-3.0.1.tgz", "integrity": "sha512-ndfJ/JxxMd3nw31uyKoY2naivF+r29V+Lc0svZxe1JvvIRmi8hUsrMvdOwgS1o6uBHmiz91geQ0ylPP0aj1VUA==", + "license": "ISC", "engines": { "node": ">=12" } @@ -5520,6 +5885,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/d3-transition/-/d3-transition-3.0.1.tgz", "integrity": "sha512-ApKvfjsSR6tg06xrL434C0WydLr7JewBB3V+/39RMHsaXTOG0zmt/OAXeng5M5LBm0ojmxJrpomQVZ1aPvBL4w==", + "license": "ISC", "dependencies": { "d3-color": "1 - 3", "d3-dispatch": "1 - 3", @@ -5538,6 +5904,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/d3-zoom/-/d3-zoom-3.0.0.tgz", "integrity": "sha512-b8AmV3kfQaqWAuacbPuNbL6vahnOJflOhexLzMMNLga62+/nh0JzvJ0aO/5a5MVgUFGS7Hu1P9P03o3fJkDCyw==", + "license": "ISC", "dependencies": { "d3-dispatch": "1 - 3", "d3-drag": "2 - 3", @@ -5553,6 +5920,7 @@ "version": "7.0.10", "resolved": "https://registry.npmjs.org/dagre-d3-es/-/dagre-d3-es-7.0.10.tgz", "integrity": "sha512-qTCQmEhcynucuaZgY5/+ti3X/rnszKZhEQH/ZdWdtP1tA/y3VoHJzcVrO9pjjJCNpigfscAtoUB5ONcd2wNn0A==", + "license": "MIT", "dependencies": { "d3": "^7.8.2", "lodash-es": "^4.17.21" @@ -5666,6 +6034,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/decode-named-character-reference/-/decode-named-character-reference-1.0.2.tgz", "integrity": "sha512-O8x12RzrUF8xyVcY0KJowWsmaJxQbmy0/EtnNtHRpsOcT7dFk5W598coHqBVpmWo1oQQfsCqfCmkZN5DJrZVdg==", + "license": "MIT", "dependencies": { "character-entities": "^2.0.0" }, @@ -5707,6 +6076,16 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/deep-extend": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", + "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4.0.0" + } + }, "node_modules/deep-is": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", @@ -5718,6 +6097,7 @@ "version": "1.1.4", "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", + "dev": true, "license": "MIT", "dependencies": { "es-define-property": "^1.0.0", @@ -5768,6 +6148,7 @@ "version": "5.0.1", "resolved": "https://registry.npmjs.org/delaunator/-/delaunator-5.0.1.tgz", "integrity": "sha512-8nvh+XBe96aCESrGOqMp/84b13H9cdKbG5P2ejQCh4d4sK9RL4371qou9drQjMhvnPmhWl5hnmqbEE0fXr9Xnw==", + "license": "ISC", "dependencies": { "robust-predicates": "^3.0.2" } @@ -5825,10 +6206,6 @@ "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/diffscribe": { - "resolved": "packages/diffscribe", - "link": true - }, "node_modules/dir-glob": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", @@ -5857,12 +6234,14 @@ "node_modules/dompurify": { "version": "3.1.6", "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-3.1.6.tgz", - "integrity": "sha512-cTOAhc36AalkjtBpfG6O8JimdTMWNXjiePT2xQH/ppBGi/4uIpmj8eKyIkMJErXWARyINV/sB38yf8JCLF5pbQ==" + "integrity": "sha512-cTOAhc36AalkjtBpfG6O8JimdTMWNXjiePT2xQH/ppBGi/4uIpmj8eKyIkMJErXWARyINV/sB38yf8JCLF5pbQ==", + "license": "(MPL-2.0 OR Apache-2.0)" }, "node_modules/dotenv": { "version": "16.4.5", "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.4.5.tgz", "integrity": "sha512-ZmdL2rui+eB2YwhsWzjInR8LldtZHGDoQ1ugH85ppHKwpUHL7j7rN0Ti9NCnGiQbhaZ11FpR+7ao1dNsmduNUg==", + "dev": true, "license": "BSD-2-Clause", "engines": { "node": ">=12" @@ -5905,9 +6284,9 @@ "license": "MIT" }, "node_modules/electron-to-chromium": { - "version": "1.5.24", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.24.tgz", - "integrity": "sha512-0x0wLCmpdKFCi9ulhvYZebgcPmHTkFVUfU2wzDykadkslKwT4oAmDTHEKLnlrDsMGZe4B+ksn8quZfZjYsBetA==", + "version": "1.5.41", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.41.tgz", + "integrity": "sha512-dfdv/2xNjX0P8Vzme4cfzHqnPm5xsZXwsolTYr0eyW18IUmNyG08vL+fttvinTfhKfIKdRoqkDIC9e9iWQCNYQ==", "dev": true, "license": "ISC" }, @@ -6042,6 +6421,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.0.tgz", "integrity": "sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==", + "dev": true, "license": "MIT", "dependencies": { "get-intrinsic": "^1.2.4" @@ -6054,6 +6434,7 @@ "version": "1.3.0", "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", + "dev": true, "license": "MIT", "engines": { "node": ">= 0.4" @@ -6081,9 +6462,9 @@ } }, "node_modules/es-iterator-helpers": { - "version": "1.0.19", - "resolved": "https://registry.npmjs.org/es-iterator-helpers/-/es-iterator-helpers-1.0.19.tgz", - "integrity": "sha512-zoMwbCcH5hwUkKJkT8kDIBZSz9I6mVG//+lDCinLCGov4+r7NIy0ld8o03M0cJxl2spVf6ESYVS6/gpIfq1FFw==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/es-iterator-helpers/-/es-iterator-helpers-1.1.0.tgz", + "integrity": "sha512-/SurEfycdyssORP/E+bj4sEu1CWw4EmLDsHynHwSXQ7utgbrMRWW195pTrCjFgFCddf/UkYm3oqKPRq5i8bJbw==", "dev": true, "license": "MIT", "dependencies": { @@ -6094,12 +6475,12 @@ "es-set-tostringtag": "^2.0.3", "function-bind": "^1.1.2", "get-intrinsic": "^1.2.4", - "globalthis": "^1.0.3", + "globalthis": "^1.0.4", "has-property-descriptors": "^1.0.2", "has-proto": "^1.0.3", "has-symbols": "^1.0.3", "internal-slot": "^1.0.7", - "iterator.prototype": "^1.1.2", + "iterator.prototype": "^1.1.3", "safe-array-concat": "^1.1.2" }, "engines": { @@ -6262,7 +6643,9 @@ "version": "8.57.1", "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.57.1.tgz", "integrity": "sha512-ypowyDxpVSYpkXr9WPv2PAZCtNip1Mv5KTW0SCurXv/9iOpcrH9PaqUElksqEB6pChqHGDRCFTyrZlGhnLNGiA==", + "deprecated": "This version is no longer supported. Please see https://eslint.org/version-support for other options.", "dev": true, + "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.6.1", @@ -6331,6 +6714,7 @@ "resolved": "https://registry.npmjs.org/eslint-config-turbo/-/eslint-config-turbo-2.1.3.tgz", "integrity": "sha512-smdkhd01V/e/I4EjJxaZA1kxZ1vdFCHpyryolxLtRBP0bZTrHDYh1H6NAyZ3Fy1jkhsQzXw+L+6m17ygROvNFw==", "dev": true, + "license": "MIT", "dependencies": { "eslint-plugin-turbo": "2.1.3" }, @@ -6410,9 +6794,9 @@ } }, "node_modules/eslint-module-utils": { - "version": "2.11.0", - "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.11.0.tgz", - "integrity": "sha512-gbBE5Hitek/oG6MUVj6sFuzEjA/ClzNflVrLovHi/JgLdC7fiN5gLAY1WIPW1a0V5I999MnsrvVrCOGmmVqDBQ==", + "version": "2.12.0", + "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.12.0.tgz", + "integrity": "sha512-wALZ0HFoytlyh/1+4wuZ9FJCD/leWHQzzrxJ8+rebyReSLk7LApMyd3WJaLVoN+D5+WIdJyDK1c6JnE65V4Zyg==", "dev": true, "license": "MIT", "dependencies": { @@ -6468,9 +6852,9 @@ } }, "node_modules/eslint-plugin-import": { - "version": "2.30.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.30.0.tgz", - "integrity": "sha512-/mHNE9jINJfiD2EKkg1BKyPyUk4zdnT54YgbOgfjSakWT5oyX/qQLVNTkehyfpcMxZXMy1zyonZ2v7hZTX43Yw==", + "version": "2.31.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.31.0.tgz", + "integrity": "sha512-ixmkI62Rbc2/w8Vfxyh1jQRTdRTF52VxwRVHl/ykPAmqG+Nb7/kNn+byLP0LxPgI7zWA16Jt82SybJInmMia3A==", "dev": true, "license": "MIT", "dependencies": { @@ -6482,7 +6866,7 @@ "debug": "^3.2.7", "doctrine": "^2.1.0", "eslint-import-resolver-node": "^0.3.9", - "eslint-module-utils": "^2.9.0", + "eslint-module-utils": "^2.12.0", "hasown": "^2.0.2", "is-core-module": "^2.15.1", "is-glob": "^4.0.3", @@ -6491,13 +6875,14 @@ "object.groupby": "^1.0.3", "object.values": "^1.2.0", "semver": "^6.3.1", + "string.prototype.trimend": "^1.0.8", "tsconfig-paths": "^3.15.0" }, "engines": { "node": ">=4" }, "peerDependencies": { - "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8" + "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 || ^9" } }, "node_modules/eslint-plugin-import/node_modules/debug": { @@ -6730,9 +7115,9 @@ } }, "node_modules/eslint-plugin-playwright": { - "version": "1.6.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-playwright/-/eslint-plugin-playwright-1.6.2.tgz", - "integrity": "sha512-mraN4Em3b5jLt01q7qWPyLg0Q5v3KAWfJSlEWwldyUXoa7DSPrBR4k6B6LROLqipsG8ndkwWMdjl1Ffdh15tag==", + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-playwright/-/eslint-plugin-playwright-1.7.0.tgz", + "integrity": "sha512-pDp2jFeWbBmlwDfZ39Ypdlz1+IafmRKvFTnnonX0TbS7hAByy4oh7Y6ioZRKvLGE+djd/e2VbqOo9sxgZSY2ow==", "dev": true, "license": "MIT", "workspaces": [ @@ -6755,9 +7140,9 @@ } }, "node_modules/eslint-plugin-react": { - "version": "7.36.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.36.1.tgz", - "integrity": "sha512-/qwbqNXZoq+VP30s1d4Nc1C5GTxjJQjk4Jzs4Wq2qzxFM7dSmuG2UkIjg2USMLh3A/aVcUNrK7v0J5U1XEGGwA==", + "version": "7.37.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.37.1.tgz", + "integrity": "sha512-xwTnwDqzbDRA8uJ7BMxPs/EXRB3i8ZfnOIp8BsxEQkT0nHPp+WWceqGgo6rKb9ctNi8GJLDT4Go5HAWELa/WMg==", "dev": true, "license": "MIT", "dependencies": { @@ -6842,9 +7227,9 @@ } }, "node_modules/eslint-plugin-testing-library": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-testing-library/-/eslint-plugin-testing-library-6.3.0.tgz", - "integrity": "sha512-GYcEErTt6EGwE0bPDY+4aehfEBpB2gDBFKohir8jlATSUvzStEyzCx8QWB/14xeKc/AwyXkzScSzMHnFojkWrA==", + "version": "6.3.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-testing-library/-/eslint-plugin-testing-library-6.3.2.tgz", + "integrity": "sha512-Z+6gPhoxXoypKSX+GC3UNfxQtqE5VhBTymU8WmLqpfWCPZIEu+2UZcNYJbwuuGclWQtt6LzN95yEq79o5u4URA==", "dev": true, "license": "MIT", "dependencies": { @@ -7003,6 +7388,7 @@ "resolved": "https://registry.npmjs.org/eslint-plugin-turbo/-/eslint-plugin-turbo-2.1.3.tgz", "integrity": "sha512-I9vPArzyOSYa6bm0iMCgD07MgdExc1VK2wGuVz21g4BUdj83w7mDKyCXR2rwOtCEW+wemFwgxanJ81imQZijNg==", "dev": true, + "license": "MIT", "dependencies": { "dotenv": "16.0.3" }, @@ -7015,6 +7401,7 @@ "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.0.3.tgz", "integrity": "sha512-7GO6HghkA5fYG9TYnNxi14/7K9f5occMlp3zXAuSxn7CKCxt9xbNWG7yF8hTCSUchlfWSe3uLmlPfigevRItzQ==", "dev": true, + "license": "BSD-2-Clause", "engines": { "node": ">=12" } @@ -7069,19 +7456,6 @@ "node": ">=8" } }, - "node_modules/eslint-plugin-unicorn/node_modules/jsesc": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.0.2.tgz", - "integrity": "sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==", - "dev": true, - "license": "MIT", - "bin": { - "jsesc": "bin/jsesc" - }, - "engines": { - "node": ">=6" - } - }, "node_modules/eslint-scope": { "version": "7.2.2", "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", @@ -7201,6 +7575,7 @@ "version": "3.2.25", "resolved": "https://registry.npmjs.org/esm/-/esm-3.2.25.tgz", "integrity": "sha512-U1suiZ2oDVWv4zPO56S0NcR5QriEahGtdN2OR6FiOG4WJvcjBVFB0qI4+eKoWFH483PKGuLuu6V8Z4T5g63UVA==", + "license": "MIT", "engines": { "node": ">=6" } @@ -7276,6 +7651,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/estree-util-attach-comments/-/estree-util-attach-comments-3.0.0.tgz", "integrity": "sha512-cKUwm/HUcTDsYh/9FgnuFqpfquUbwIqwKM26BVCGDPVgvaCl/nDCCjUfiLlx6lsEZ3Z4RFxNbOQ60pkaEwFxGw==", + "license": "MIT", "dependencies": { "@types/estree": "^1.0.0" }, @@ -7288,6 +7664,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/estree-util-build-jsx/-/estree-util-build-jsx-3.0.1.tgz", "integrity": "sha512-8U5eiL6BTrPxp/CHbs2yMgP8ftMhR5ww1eIKoWRMlqvltHF8fZn5LRDvTKuxD3DUn+shRbLGqXemcP51oFCsGQ==", + "license": "MIT", "dependencies": { "@types/estree-jsx": "^1.0.0", "devlop": "^1.0.0", @@ -7299,19 +7676,10 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/estree-util-build-jsx/node_modules/estree-util-is-identifier-name": { + "node_modules/estree-util-is-identifier-name": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/estree-util-is-identifier-name/-/estree-util-is-identifier-name-3.0.0.tgz", "integrity": "sha512-hFtqIDZTIUZ9BXLb8y4pYGyk6+wekIivNVTcmvk8NoOh+VeRn5y6cEHzbURrWbfp1fIqdVipilzj+lfaadNZmg==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/estree-util-is-identifier-name": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/estree-util-is-identifier-name/-/estree-util-is-identifier-name-2.1.0.tgz", - "integrity": "sha512-bEN9VHRyXAUOjkKVQVvArFym08BTWB0aJPppZZr0UNyAqWsLaVfAqP7hbaTJjzHifmB5ebnR8Wm7r7yGN/HonQ==", "license": "MIT", "funding": { "type": "opencollective", @@ -7322,6 +7690,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/estree-util-to-js/-/estree-util-to-js-2.0.0.tgz", "integrity": "sha512-WDF+xj5rRWmD5tj6bIqRi6CkLIXbbNQUcxQHzGysQzvHmdYG2G7p/Tf0J0gpxGgkeMZNTIjT/AoSvC9Xehcgdg==", + "license": "MIT", "dependencies": { "@types/estree-jsx": "^1.0.0", "astring": "^1.8.0", @@ -7333,21 +7702,22 @@ } }, "node_modules/estree-util-value-to-estree": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/estree-util-value-to-estree/-/estree-util-value-to-estree-1.3.0.tgz", - "integrity": "sha512-Y+ughcF9jSUJvncXwqRageavjrNPAI+1M/L3BI3PyLp1nmgYTGUXU6t5z1Y7OWuThoDdhPME07bQU+d5LxdJqw==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/estree-util-value-to-estree/-/estree-util-value-to-estree-3.1.2.tgz", + "integrity": "sha512-S0gW2+XZkmsx00tU2uJ4L9hUT7IFabbml9pHh2WQqFmAbxit++YGZne0sKJbNwkj9Wvg9E4uqWl4nCIFQMmfag==", "license": "MIT", "dependencies": { - "is-plain-obj": "^3.0.0" + "@types/estree": "^1.0.0" }, - "engines": { - "node": ">=12.0.0" + "funding": { + "url": "https://github.com/sponsors/remcohaszing" } }, "node_modules/estree-util-visit": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/estree-util-visit/-/estree-util-visit-2.0.0.tgz", "integrity": "sha512-m5KgiH85xAhhW8Wta0vShLcUvOsh3LLPI2YVwcbio1l7E09NTLL1EyMZFM1OyWowoH0skScNbhOPl4kcBgzTww==", + "license": "MIT", "dependencies": { "@types/estree-jsx": "^1.0.0", "@types/unist": "^3.0.0" @@ -7357,15 +7727,11 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/estree-util-visit/node_modules/@types/unist": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", - "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==" - }, "node_modules/estree-walker": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-3.0.3.tgz", "integrity": "sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==", + "license": "MIT", "dependencies": { "@types/estree": "^1.0.0" } @@ -7384,6 +7750,7 @@ "version": "5.0.1", "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz", "integrity": "sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==", + "dev": true, "license": "MIT", "engines": { "node": ">=6" @@ -7401,6 +7768,7 @@ "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.8.x" } @@ -7492,7 +7860,8 @@ "node_modules/extend": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", + "license": "MIT" }, "node_modules/extend-shallow": { "version": "2.0.1", @@ -7546,7 +7915,8 @@ "node_modules/fast-decode-uri-component": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/fast-decode-uri-component/-/fast-decode-uri-component-1.0.1.tgz", - "integrity": "sha512-WKgKWg5eUxvRZGwW8FvfbaH7AXSh2cL+3j5fMGzUMCxWBJ3dV3a7Wz8y2f/uQ0e3B6WmodD3oS54jTQ9HVTIIg==" + "integrity": "sha512-WKgKWg5eUxvRZGwW8FvfbaH7AXSh2cL+3j5fMGzUMCxWBJ3dV3a7Wz8y2f/uQ0e3B6WmodD3oS54jTQ9HVTIIg==", + "license": "MIT" }, "node_modules/fast-deep-equal": { "version": "3.1.3", @@ -7600,6 +7970,7 @@ "version": "6.0.0", "resolved": "https://registry.npmjs.org/fast-json-stringify/-/fast-json-stringify-6.0.0.tgz", "integrity": "sha512-FGMKZwniMTgZh7zQp9b6XnBVxUmKVahQLQeRQHqwYmPDqDhcEKZ3BaQsxelFFI5PY7nN71OEeiL47/zUWcYe1A==", + "license": "MIT", "dependencies": { "@fastify/merge-json-schemas": "^0.1.1", "ajv": "^8.12.0", @@ -7614,6 +7985,7 @@ "version": "8.17.1", "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.17.1.tgz", "integrity": "sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==", + "license": "MIT", "dependencies": { "fast-deep-equal": "^3.1.3", "fast-uri": "^3.0.1", @@ -7626,19 +7998,22 @@ } }, "node_modules/fast-json-stringify/node_modules/ajv/node_modules/fast-uri": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.0.1.tgz", - "integrity": "sha512-MWipKbbYiYI0UC7cl8m/i/IWTqfC8YXsqjzybjddLsFjStroQzsHXkc73JutMvBiXmOvapk+axIl79ig5t55Bw==" + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.0.3.tgz", + "integrity": "sha512-aLrHthzCjH5He4Z2H9YZ+v6Ujb9ocRuW6ZzkJQOrTxleEijANq4v1TsaPaVG1PZcuurEzrLcWRyYBYXD5cEiaw==", + "license": "BSD-3-Clause" }, "node_modules/fast-json-stringify/node_modules/fast-uri": { "version": "2.4.0", "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-2.4.0.tgz", - "integrity": "sha512-ypuAmmMKInk5q7XcepxlnUWDLWv4GFtaJqAzWKqn62IpQ3pejtr5dTVbt3vwqVaMKmkNR55sTT+CqUKIaT21BA==" + "integrity": "sha512-ypuAmmMKInk5q7XcepxlnUWDLWv4GFtaJqAzWKqn62IpQ3pejtr5dTVbt3vwqVaMKmkNR55sTT+CqUKIaT21BA==", + "license": "MIT" }, "node_modules/fast-json-stringify/node_modules/json-schema-traverse": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==" + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "license": "MIT" }, "node_modules/fast-levenshtein": { "version": "2.0.6", @@ -7651,6 +8026,7 @@ "version": "1.1.2", "resolved": "https://registry.npmjs.org/fast-querystring/-/fast-querystring-1.1.2.tgz", "integrity": "sha512-g6KuKWmFXc0fID8WWH0jit4g0AGBoJhCkJMb1RmbsSEUNvQ+ZC8D6CUZ+GtF8nMzSPXnhiePyyqqipzNNEnHjg==", + "license": "MIT", "dependencies": { "fast-decode-uri-component": "^1.0.1" } @@ -7672,9 +8048,10 @@ "license": "MIT" }, "node_modules/fast-uri": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.0.1.tgz", - "integrity": "sha512-MWipKbbYiYI0UC7cl8m/i/IWTqfC8YXsqjzybjddLsFjStroQzsHXkc73JutMvBiXmOvapk+axIl79ig5t55Bw==" + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.0.3.tgz", + "integrity": "sha512-aLrHthzCjH5He4Z2H9YZ+v6Ujb9ocRuW6ZzkJQOrTxleEijANq4v1TsaPaVG1PZcuurEzrLcWRyYBYXD5cEiaw==", + "license": "BSD-3-Clause" }, "node_modules/fastify": { "version": "5.0.0", @@ -7690,6 +8067,7 @@ "url": "https://opencollective.com/fastify" } ], + "license": "MIT", "dependencies": { "@fastify/ajv-compiler": "^4.0.0", "@fastify/error": "^4.0.0", @@ -7721,6 +8099,7 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/fault/-/fault-2.0.1.tgz", "integrity": "sha512-WtySTkS4OKev5JtpHXnib4Gxiurzh5NCGvWrFaZ34m6JehfTUhKZvn9njTfw48t6JumVQOmrKqpmGcdwxnhqBQ==", + "license": "MIT", "dependencies": { "format": "^0.2.0" }, @@ -7762,9 +8141,10 @@ } }, "node_modules/find-my-way": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/find-my-way/-/find-my-way-9.0.1.tgz", - "integrity": "sha512-/5NN/R0pFWuff16TMajeKt2JyiW+/OE8nOO8vo1DwZTxLaIURb7lcBYPIgRPh61yCNh9l8voeKwcrkUzmB00vw==", + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/find-my-way/-/find-my-way-9.1.0.tgz", + "integrity": "sha512-Y5jIsuYR4BwWDYYQ2A/RWWE6gD8a0FMgtU+HOq1WKku+Cwdz8M1v8wcAmRXXM1/iqtoqg06v+LjAxMYbCjViMw==", + "license": "MIT", "dependencies": { "fast-deep-equal": "^3.1.3", "fast-querystring": "^1.0.0", @@ -7902,9 +8282,9 @@ } }, "node_modules/form-data": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", - "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.1.tgz", + "integrity": "sha512-tzN8e4TX8+kkxGPK8D5u0FNmjPUjw3lwC9lSLxxoB/+GtsJG91CO8bSWy73APlgAZzZbXEYZJuxjkHH2w+Ezhw==", "license": "MIT", "dependencies": { "asynckit": "^0.4.0", @@ -7915,13 +8295,6 @@ "node": ">= 6" } }, - "node_modules/form-data-encoder": { - "version": "1.7.2", - "resolved": "https://registry.npmjs.org/form-data-encoder/-/form-data-encoder-1.7.2.tgz", - "integrity": "sha512-qfqtYan3rxrnCk1VYaA4H+Ms9xdpPqvLZa6xmMgFvhO32x7/3J/ExcTd6qpxM0vH2GdMI+poehyBZvqfMTto8A==", - "license": "MIT", - "peer": true - }, "node_modules/format": { "version": "0.2.2", "resolved": "https://registry.npmjs.org/format/-/format-0.2.2.tgz", @@ -7930,20 +8303,6 @@ "node": ">=0.4.x" } }, - "node_modules/formdata-node": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/formdata-node/-/formdata-node-4.4.1.tgz", - "integrity": "sha512-0iirZp3uVDjVGt9p49aTaqjk84TrglENEDuqfdlZQ1roC9CWlPk6Avf8EEnZNcAqPonwkG35x4n3ww/1THYAeQ==", - "license": "MIT", - "peer": true, - "dependencies": { - "node-domexception": "1.0.0", - "web-streams-polyfill": "4.0.0-beta.3" - }, - "engines": { - "node": ">= 12.20" - } - }, "node_modules/forwarded": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", @@ -7992,6 +8351,7 @@ "version": "1.1.2", "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "dev": true, "license": "MIT", "funding": { "url": "https://github.com/sponsors/ljharb" @@ -8049,6 +8409,7 @@ "version": "1.2.4", "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz", "integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==", + "dev": true, "license": "MIT", "dependencies": { "es-errors": "^1.3.0", @@ -8321,6 +8682,7 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", + "dev": true, "license": "MIT", "dependencies": { "get-intrinsic": "^1.1.3" @@ -8360,7 +8722,8 @@ "node_modules/hachure-fill": { "version": "0.5.2", "resolved": "https://registry.npmjs.org/hachure-fill/-/hachure-fill-0.5.2.tgz", - "integrity": "sha512-3GKBOn+m2LX9iq+JC1064cSFprJY4jL1jCXTcpnfER5HYE2l/4EfWSGzkPa/ZDBmYI0ZOEj5VHV/eKnPGkHuOg==" + "integrity": "sha512-3GKBOn+m2LX9iq+JC1064cSFprJY4jL1jCXTcpnfER5HYE2l/4EfWSGzkPa/ZDBmYI0ZOEj5VHV/eKnPGkHuOg==", + "license": "MIT" }, "node_modules/has-bigints": { "version": "1.0.2", @@ -8386,6 +8749,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", + "dev": true, "license": "MIT", "dependencies": { "es-define-property": "^1.0.0" @@ -8398,6 +8762,7 @@ "version": "1.0.3", "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.3.tgz", "integrity": "sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==", + "dev": true, "license": "MIT", "engines": { "node": ">= 0.4" @@ -8410,6 +8775,7 @@ "version": "1.0.3", "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "dev": true, "license": "MIT", "engines": { "node": ">= 0.4" @@ -8438,6 +8804,7 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "dev": true, "license": "MIT", "dependencies": { "function-bind": "^1.1.2" @@ -8462,9 +8829,9 @@ } }, "node_modules/hast-util-from-html": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/hast-util-from-html/-/hast-util-from-html-2.0.2.tgz", - "integrity": "sha512-HwOHwxdt2zC5KQ/CNoybBntRook2zJvfZE/u5/Ap7aLPe22bDqen7KwGkOqOyzL5zIqKwiYX/OTtE0FWgr6XXA==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/hast-util-from-html/-/hast-util-from-html-2.0.3.tgz", + "integrity": "sha512-CUSRHXyKjzHov8yKsQjGOElXy/3EKpyX56ELnkHH34vDVw1N1XSQ1ZcAvTyAPtGqLTuKP/uxM+aLkSPqF/EtMw==", "license": "MIT", "dependencies": { "@types/hast": "^3.0.0", @@ -8515,12 +8882,6 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/hast-util-from-parse5/node_modules/@types/unist": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", - "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==", - "license": "MIT" - }, "node_modules/hast-util-is-element": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/hast-util-is-element/-/hast-util-is-element-3.0.0.tgz", @@ -8572,16 +8933,11 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/hast-util-raw/node_modules/@types/unist": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", - "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==", - "license": "MIT" - }, "node_modules/hast-util-to-estree": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/hast-util-to-estree/-/hast-util-to-estree-3.1.0.tgz", "integrity": "sha512-lfX5g6hqVh9kjS/B9E2gSkvHH4SZNiQFiqWS0x9fENzEl+8W12RqdRxX6d/Cwxi30tPQs3bIO+aolQJNp1bIyw==", + "license": "MIT", "dependencies": { "@types/estree": "^1.0.0", "@types/estree-jsx": "^1.0.0", @@ -8605,19 +8961,11 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/hast-util-to-estree/node_modules/estree-util-is-identifier-name": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/estree-util-is-identifier-name/-/estree-util-is-identifier-name-3.0.0.tgz", - "integrity": "sha512-hFtqIDZTIUZ9BXLb8y4pYGyk6+wekIivNVTcmvk8NoOh+VeRn5y6cEHzbURrWbfp1fIqdVipilzj+lfaadNZmg==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, "node_modules/hast-util-to-html": { "version": "9.0.3", "resolved": "https://registry.npmjs.org/hast-util-to-html/-/hast-util-to-html-9.0.3.tgz", "integrity": "sha512-M17uBDzMJ9RPCqLMO92gNNUDuBSq10a25SDBI08iCCxmorf4Yy6sYHK57n9WAbRAAaU+DuR4W6GN9K4DFZesYg==", + "license": "MIT", "dependencies": { "@types/hast": "^3.0.0", "@types/unist": "^3.0.0", @@ -8636,15 +8984,11 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/hast-util-to-html/node_modules/@types/unist": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", - "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==" - }, "node_modules/hast-util-to-jsx-runtime": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/hast-util-to-jsx-runtime/-/hast-util-to-jsx-runtime-2.3.0.tgz", - "integrity": "sha512-H/y0+IWPdsLLS738P8tDnrQ8Z+dj12zQQ6WC11TIM21C8WFVoIxcqWXf2H3hiTVZjF1AWqoimGwrTWecWrnmRQ==", + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/hast-util-to-jsx-runtime/-/hast-util-to-jsx-runtime-2.3.2.tgz", + "integrity": "sha512-1ngXYb+V9UT5h+PxNRa1O1FYguZK/XL+gkeqvp7EdHlB9oHUG0eYRo/vY5inBdcqo3RkPMC58/H94HvkbfGdyg==", + "license": "MIT", "dependencies": { "@types/estree": "^1.0.0", "@types/hast": "^3.0.0", @@ -8667,29 +9011,17 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/hast-util-to-jsx-runtime/node_modules/@types/unist": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", - "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==" - }, - "node_modules/hast-util-to-jsx-runtime/node_modules/estree-util-is-identifier-name": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/estree-util-is-identifier-name/-/estree-util-is-identifier-name-3.0.0.tgz", - "integrity": "sha512-hFtqIDZTIUZ9BXLb8y4pYGyk6+wekIivNVTcmvk8NoOh+VeRn5y6cEHzbURrWbfp1fIqdVipilzj+lfaadNZmg==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, "node_modules/hast-util-to-jsx-runtime/node_modules/inline-style-parser": { "version": "0.2.4", "resolved": "https://registry.npmjs.org/inline-style-parser/-/inline-style-parser-0.2.4.tgz", - "integrity": "sha512-0aO8FkhNZlj/ZIbNi7Lxxr12obT7cL1moPfE4tg1LkX7LlLfC6DeX4l2ZEud1ukP9jNQyNnfzQVqwbwmAATY4Q==" + "integrity": "sha512-0aO8FkhNZlj/ZIbNi7Lxxr12obT7cL1moPfE4tg1LkX7LlLfC6DeX4l2ZEud1ukP9jNQyNnfzQVqwbwmAATY4Q==", + "license": "MIT" }, "node_modules/hast-util-to-jsx-runtime/node_modules/style-to-object": { "version": "1.0.8", "resolved": "https://registry.npmjs.org/style-to-object/-/style-to-object-1.0.8.tgz", "integrity": "sha512-xT47I/Eo0rwJmaXC4oilDGDWLohVhR6o/xAQcPQN8q6QBuZVL8qMYL85kLmST5cPjAorwvqIA4qXTRQoYHaL6g==", + "license": "MIT", "dependencies": { "inline-style-parser": "0.2.4" } @@ -8717,6 +9049,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/hast-util-to-string/-/hast-util-to-string-3.0.1.tgz", "integrity": "sha512-XelQVTDWvqcl3axRfI0xSeoVKzyIFPwsAGSLIsKdJKQMXDYJS4WYrBNF/8J7RdhIcFI2BOHgAifggsvsxp/3+A==", + "license": "MIT", "dependencies": { "@types/hast": "^3.0.0" }, @@ -8741,16 +9074,11 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/hast-util-to-text/node_modules/@types/unist": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", - "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==", - "license": "MIT" - }, "node_modules/hast-util-whitespace": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/hast-util-whitespace/-/hast-util-whitespace-3.0.0.tgz", "integrity": "sha512-88JUN06ipLwsnv+dVn+OIYOvAuvBMy/Qoi6O7mQHxdPXpjy+Cd6xRkWwux7DKO+4sYILtLBRIKgsdpS2gQc7qw==", + "license": "MIT", "dependencies": { "@types/hast": "^3.0.0" }, @@ -8844,16 +9172,6 @@ "node": ">=10.17.0" } }, - "node_modules/humanize-ms": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/humanize-ms/-/humanize-ms-1.2.1.tgz", - "integrity": "sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==", - "license": "MIT", - "peer": true, - "dependencies": { - "ms": "^2.0.0" - } - }, "node_modules/iconv-lite": { "version": "0.4.24", "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", @@ -8884,7 +9202,8 @@ "type": "consulting", "url": "https://feross.org/support" } - ] + ], + "license": "BSD-3-Clause" }, "node_modules/ignore": { "version": "5.3.2", @@ -8971,7 +9290,8 @@ "node_modules/inline-style-parser": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/inline-style-parser/-/inline-style-parser-0.1.1.tgz", - "integrity": "sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q==" + "integrity": "sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q==", + "license": "MIT" }, "node_modules/internal-slot": { "version": "1.0.7", @@ -8992,6 +9312,7 @@ "version": "2.0.3", "resolved": "https://registry.npmjs.org/internmap/-/internmap-2.0.3.tgz", "integrity": "sha512-5Hh7Y1wQbvY5ooGgPbDaL5iYLAPzMTUrjMulskHLH6wnv/A+1q5rgEaiuqEjB+oxGXIVZs1FF+R/KPN3ZSQYYg==", + "license": "ISC", "engines": { "node": ">=12" } @@ -9030,6 +9351,7 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/is-alphabetical/-/is-alphabetical-2.0.1.tgz", "integrity": "sha512-FWyyY60MeTNyeSRpkM2Iry0G9hpr7/9kD40mD/cGQEuilcZYS4okz8SN2Q6rLCJ8gbCt6fN+rC+6tMGS99LaxQ==", + "license": "MIT", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" @@ -9039,6 +9361,7 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/is-alphanumerical/-/is-alphanumerical-2.0.1.tgz", "integrity": "sha512-hmbYhX/9MUMF5uh7tOXyK/n0ZvWpad5caBA17GsC6vyuCqaWliRG5K1qS9inmUhEMaOBIW7/whAnSwveW/LtZw==", + "license": "MIT", "dependencies": { "is-alphabetical": "^2.0.0", "is-decimal": "^2.0.0" @@ -9239,11 +9562,28 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/is-decimal/-/is-decimal-2.0.1.tgz", "integrity": "sha512-AAB9hiomQs5DXWcRB1rqsxGUstbRroFOPPVAomNk/3XHR5JyEZChOyTWe2oayKnsSsr/kcGqF+z6yuH6HHpN0A==", + "license": "MIT", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" } }, + "node_modules/is-docker": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", + "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", + "dev": true, + "license": "MIT", + "bin": { + "is-docker": "cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/is-extendable": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", @@ -9317,6 +9657,7 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/is-hexadecimal/-/is-hexadecimal-2.0.1.tgz", "integrity": "sha512-DgZQp241c8oO6cA1SbTEWiXeoxV42vlcJxgH+B3hi1AiqqKruZR3ZGF8In3fj4+/y/7rHvlOZLZtgJ/4ttYGZg==", + "license": "MIT", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" @@ -9384,12 +9725,25 @@ } }, "node_modules/is-plain-obj": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-3.0.0.tgz", - "integrity": "sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz", + "integrity": "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==", "license": "MIT", "engines": { - "node": ">=10" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-port-reachable": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-port-reachable/-/is-port-reachable-4.0.0.tgz", + "integrity": "sha512-9UoipoxYmSk6Xy7QFgRv2HDyaysmgSG75TFQs6S+3pDM7ZhKTF/bskZV+0UlABHzKjNVhPjYCLfeZUEg1wXxig==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -9399,6 +9753,7 @@ "version": "3.0.2", "resolved": "https://registry.npmjs.org/is-reference/-/is-reference-3.0.2.tgz", "integrity": "sha512-v3rht/LgVcsdZa3O2Nqs+NMowLOxeOm7Ay9+/ARQ2F+qEoANRcqrjAZKGN0v8ymUetZGgkp26LTnGT7H0Qo9Pg==", + "license": "MIT", "dependencies": { "@types/estree": "*" } @@ -9570,6 +9925,19 @@ "node": ">=0.10.0" } }, + "node_modules/is-wsl": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", + "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-docker": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/isarray": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", @@ -9584,9 +9952,9 @@ "license": "ISC" }, "node_modules/iterator.prototype": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/iterator.prototype/-/iterator.prototype-1.1.2.tgz", - "integrity": "sha512-DR33HMMr8EzwuRL8Y9D3u2BMj8+RqSE850jfGu59kS7tbmPLzGkZmVSfyCFSDxuZiEY6Rzt3T2NA/qU+NwVj1w==", + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/iterator.prototype/-/iterator.prototype-1.1.3.tgz", + "integrity": "sha512-FW5iMbeQ6rBGm/oKgzq2aW4KvAGpxPzYES8N4g4xNXUKpL1mclMvOe+76AcLDTvD+Ze+sOpVhgdAQEKF4L9iGQ==", "dev": true, "license": "MIT", "dependencies": { @@ -9595,12 +9963,15 @@ "has-symbols": "^1.0.3", "reflect.getprototypeof": "^1.0.4", "set-function-name": "^2.0.1" + }, + "engines": { + "node": ">= 0.4" } }, "node_modules/jackspeak": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-4.0.1.tgz", - "integrity": "sha512-cub8rahkh0Q/bw1+GxP7aeSe29hHHn2V4m29nnDlvCdlgU+3UGxkZp7Z53jLUdpX3jdTO0nJZUDl3xvbWc2Xog==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-4.0.2.tgz", + "integrity": "sha512-bZsjR/iRjl1Nk1UkjGpAzLNfQtzuijhn2g+pbZb98HQ1Gk8vM9hfbxeMBP+M2/UUdwj0RqGG3mlvk2MsAqwvEw==", "dev": true, "license": "BlueOak-1.0.0", "dependencies": { @@ -9611,9 +9982,6 @@ }, "funding": { "url": "https://github.com/sponsors/isaacs" - }, - "optionalDependencies": { - "@pkgjs/parseargs": "^0.11.0" } }, "node_modules/jju": { @@ -9673,16 +10041,16 @@ "license": "MIT" }, "node_modules/jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.0.2.tgz", + "integrity": "sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==", "dev": true, "license": "MIT", "bin": { "jsesc": "bin/jsesc" }, "engines": { - "node": ">=4" + "node": ">=6" } }, "node_modules/json-buffer": { @@ -9703,6 +10071,7 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/json-schema-ref-resolver/-/json-schema-ref-resolver-1.0.1.tgz", "integrity": "sha512-EJAj1pgHc1hxF6vo2Z3s69fMjO1INq6eGHXZ8Z6wCQeldCuwxGK9Sxf4/cScGn3FZubCVUehfWtcDM/PLteCQw==", + "license": "MIT", "dependencies": { "fast-deep-equal": "^3.1.3" } @@ -9810,12 +10179,14 @@ "node_modules/kolorist": { "version": "1.8.0", "resolved": "https://registry.npmjs.org/kolorist/-/kolorist-1.8.0.tgz", - "integrity": "sha512-Y+60/zizpJ3HRH8DCss+q95yr6145JXZo46OTpFvDZWLfRCE4qChOyk1b26nMaNpfHHgxagk9dXT5OP0Tfe+dQ==" + "integrity": "sha512-Y+60/zizpJ3HRH8DCss+q95yr6145JXZo46OTpFvDZWLfRCE4qChOyk1b26nMaNpfHHgxagk9dXT5OP0Tfe+dQ==", + "license": "MIT" }, "node_modules/langium": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/langium/-/langium-3.0.0.tgz", "integrity": "sha512-+Ez9EoiByeoTu/2BXmEaZ06iPNXM6thWJp02KfBO/raSMyCJ4jw7AkWWa+zBCTm0+Tw1Fj9FOxdqSskyN5nAwg==", + "license": "MIT", "dependencies": { "chevrotain": "~11.0.3", "chevrotain-allstar": "~0.3.0", @@ -9850,7 +10221,8 @@ "node_modules/layout-base": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/layout-base/-/layout-base-1.0.2.tgz", - "integrity": "sha512-8h2oVEZNktL4BH2JCOI90iD1yXwL6iNW7KcCKT2QZgQJR2vbqDsldCTPRU9NifTCqHZci57XvQQ15YTu+sTYPg==" + "integrity": "sha512-8h2oVEZNktL4BH2JCOI90iD1yXwL6iNW7KcCKT2QZgQJR2vbqDsldCTPRU9NifTCqHZci57XvQQ15YTu+sTYPg==", + "license": "MIT" }, "node_modules/lazy": { "version": "1.0.11", @@ -9877,11 +10249,12 @@ } }, "node_modules/light-my-request": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/light-my-request/-/light-my-request-6.0.0.tgz", - "integrity": "sha512-kFkFXrmKCL0EEeOmJybMH5amWFd+AFvlvMlvFTRxCUwbhfapZqDmeLMPoWihntnYY6JpoQDE9k+vOzObF1fDqg==", + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/light-my-request/-/light-my-request-6.1.0.tgz", + "integrity": "sha512-+NFuhlOGoEwxeQfJ/pobkVFxcnKyDtiX847hLjuB/IzBxIl3q4VJeFI8uRCgb3AlTWL1lgOr+u5+8QdUcr33ng==", + "license": "BSD-3-Clause", "dependencies": { - "cookie": "^0.6.0", + "cookie": "^0.7.0", "process-warning": "^4.0.0", "set-cookie-parser": "^2.6.0" } @@ -9920,6 +10293,7 @@ "version": "0.5.0", "resolved": "https://registry.npmjs.org/local-pkg/-/local-pkg-0.5.0.tgz", "integrity": "sha512-ok6z3qlYyCDS4ZEU27HaU6x/xZa9Whf8jD4ptH5UZTQYZVYeb9bnZ3ojVhiJNLiXK1Hfc0GNbLXcmZ5plLDDBg==", + "license": "MIT", "dependencies": { "mlly": "^1.4.2", "pkg-types": "^1.0.3" @@ -9953,7 +10327,8 @@ "node_modules/lodash-es": { "version": "4.17.21", "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.21.tgz", - "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==" + "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==", + "license": "MIT" }, "node_modules/lodash.merge": { "version": "4.6.2", @@ -9979,6 +10354,7 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/longest-streak/-/longest-streak-3.1.0.tgz", "integrity": "sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g==", + "license": "MIT", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" @@ -10006,6 +10382,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/markdown-extensions/-/markdown-extensions-2.0.0.tgz", "integrity": "sha512-o5vL7aDWatOTX8LzaS1WMoaoxIiLRQJuIKKe2wAw6IeULDHaqbiqiggmx+pKvZDb1Sj+pE46Sn1T7lCqfFtg1Q==", + "license": "MIT", "engines": { "node": ">=16" }, @@ -10017,6 +10394,7 @@ "version": "3.0.3", "resolved": "https://registry.npmjs.org/markdown-table/-/markdown-table-3.0.3.tgz", "integrity": "sha512-Z1NL3Tb1M9wH4XESsCDEksWoKTdlUafKc4pt0GRwjUyXaCFZ+dc3g2erqB6zm3szA2IUSi7VnPI+o/9jnxh9hw==", + "license": "MIT", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" @@ -10026,6 +10404,7 @@ "version": "13.0.3", "resolved": "https://registry.npmjs.org/marked/-/marked-13.0.3.tgz", "integrity": "sha512-rqRix3/TWzE9rIoFGIn8JmsVfhiuC8VIQ8IdX5TfzmeBucdY05/0UlzKaw0eVtpcN/OdVFpBk7CjKGo9iHJ/zA==", + "license": "MIT", "bin": { "marked": "bin/marked.js" }, @@ -10037,6 +10416,7 @@ "version": "3.2.2", "resolved": "https://registry.npmjs.org/mathjax-full/-/mathjax-full-3.2.2.tgz", "integrity": "sha512-+LfG9Fik+OuI8SLwsiR02IVdjcnRCy5MufYLi0C3TdMT56L/pjB0alMVGgoWJF8pN9Rc7FESycZB9BMNWIid5w==", + "license": "Apache-2.0", "dependencies": { "esm": "^3.2.25", "mhchemparser": "^4.1.0", @@ -10048,6 +10428,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/mdast-util-find-and-replace/-/mdast-util-find-and-replace-3.0.1.tgz", "integrity": "sha512-SG21kZHGC3XRTSUhtofZkBzZTJNM5ecCi0SK2IMKmSXR8vO3peL+kb1O0z7Zl83jKtutG4k5Wv/W7V3/YHvzPA==", + "license": "MIT", "dependencies": { "@types/mdast": "^4.0.0", "escape-string-regexp": "^5.0.0", @@ -10059,15 +10440,11 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/mdast-util-find-and-replace/node_modules/@types/unist": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", - "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==" - }, "node_modules/mdast-util-find-and-replace/node_modules/escape-string-regexp": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", + "license": "MIT", "engines": { "node": ">=12" }, @@ -10075,22 +10452,11 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/mdast-util-find-and-replace/node_modules/unist-util-is": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-6.0.0.tgz", - "integrity": "sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==", - "dependencies": { - "@types/unist": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, "node_modules/mdast-util-from-markdown": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-2.0.1.tgz", "integrity": "sha512-aJEUyzZ6TzlsX2s5B4Of7lN7EQtAxvtradMMglCQDyaTFgse6CmtmdJ15ElnVRlCg1vpNyVtbem0PWzlNieZsA==", + "license": "MIT", "dependencies": { "@types/mdast": "^4.0.0", "@types/unist": "^3.0.0", @@ -10110,15 +10476,11 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/mdast-util-from-markdown/node_modules/@types/unist": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", - "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==" - }, "node_modules/mdast-util-frontmatter": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/mdast-util-frontmatter/-/mdast-util-frontmatter-2.0.1.tgz", "integrity": "sha512-LRqI9+wdgC25P0URIJY9vwocIzCcksduHQ9OF2joxQoyTNVduwLAFUzjoopuRJbJAReaKrNQKAZKL3uCMugWJA==", + "license": "MIT", "dependencies": { "@types/mdast": "^4.0.0", "devlop": "^1.0.0", @@ -10136,6 +10498,7 @@ "version": "5.0.0", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", + "license": "MIT", "engines": { "node": ">=12" }, @@ -10147,6 +10510,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/mdast-util-gfm/-/mdast-util-gfm-3.0.0.tgz", "integrity": "sha512-dgQEX5Amaq+DuUqf26jJqSK9qgixgd6rYDHAv4aTBuA92cTknZlKpPfa86Z/s8Dj8xsAQpFfBmPUHWJBWqS4Bw==", + "license": "MIT", "dependencies": { "mdast-util-from-markdown": "^2.0.0", "mdast-util-gfm-autolink-literal": "^2.0.0", @@ -10165,6 +10529,7 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/mdast-util-gfm-autolink-literal/-/mdast-util-gfm-autolink-literal-2.0.1.tgz", "integrity": "sha512-5HVP2MKaP6L+G6YaxPNjuL0BPrq9orG3TsrZ9YXbA3vDw/ACI4MEsnoDpn6ZNm7GnZgtAcONJyPhOP8tNJQavQ==", + "license": "MIT", "dependencies": { "@types/mdast": "^4.0.0", "ccount": "^2.0.0", @@ -10181,6 +10546,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/mdast-util-gfm-footnote/-/mdast-util-gfm-footnote-2.0.0.tgz", "integrity": "sha512-5jOT2boTSVkMnQ7LTrd6n/18kqwjmuYqo7JUPe+tRCY6O7dAuTFMtTPauYYrMPpox9hlN0uOx/FL8XvEfG9/mQ==", + "license": "MIT", "dependencies": { "@types/mdast": "^4.0.0", "devlop": "^1.1.0", @@ -10197,6 +10563,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/mdast-util-gfm-strikethrough/-/mdast-util-gfm-strikethrough-2.0.0.tgz", "integrity": "sha512-mKKb915TF+OC5ptj5bJ7WFRPdYtuHv0yTRxK2tJvi+BDqbkiG7h7u/9SI89nRAYcmap2xHQL9D+QG/6wSrTtXg==", + "license": "MIT", "dependencies": { "@types/mdast": "^4.0.0", "mdast-util-from-markdown": "^2.0.0", @@ -10211,6 +10578,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/mdast-util-gfm-table/-/mdast-util-gfm-table-2.0.0.tgz", "integrity": "sha512-78UEvebzz/rJIxLvE7ZtDd/vIQ0RHv+3Mh5DR96p7cS7HsBhYIICDBCu8csTNWNO6tBWfqXPWekRuj2FNOGOZg==", + "license": "MIT", "dependencies": { "@types/mdast": "^4.0.0", "devlop": "^1.0.0", @@ -10227,6 +10595,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/mdast-util-gfm-task-list-item/-/mdast-util-gfm-task-list-item-2.0.0.tgz", "integrity": "sha512-IrtvNvjxC1o06taBAVJznEnkiHxLFTzgonUdy8hzFVeDun0uTjxxrRGVaNFqkU1wJR3RBPEfsxmU6jDWPofrTQ==", + "license": "MIT", "dependencies": { "@types/mdast": "^4.0.0", "devlop": "^1.0.0", @@ -10242,6 +10611,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/mdast-util-math/-/mdast-util-math-3.0.0.tgz", "integrity": "sha512-Tl9GBNeG/AhJnQM221bJR2HPvLOSnLE/T9cJI9tlc6zwQk2nPk/4f0cHkOdEixQPC/j8UtKDdITswvLAy1OZ1w==", + "license": "MIT", "dependencies": { "@types/hast": "^3.0.0", "@types/mdast": "^4.0.0", @@ -10260,6 +10630,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/mdast-util-mdx/-/mdast-util-mdx-3.0.0.tgz", "integrity": "sha512-JfbYLAW7XnYTTbUsmpu0kdBUVe+yKVJZBItEjwyYJiDJuZ9w4eeaqks4HQO+R7objWgS2ymV60GYpI14Ug554w==", + "license": "MIT", "dependencies": { "mdast-util-from-markdown": "^2.0.0", "mdast-util-mdx-expression": "^2.0.0", @@ -10276,6 +10647,7 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/mdast-util-mdx-expression/-/mdast-util-mdx-expression-2.0.1.tgz", "integrity": "sha512-J6f+9hUp+ldTZqKRSg7Vw5V6MqjATc+3E4gf3CFNcuZNWD8XdyI6zQ8GqH7f8169MM6P7hMBRDVGnn7oHB9kXQ==", + "license": "MIT", "dependencies": { "@types/estree-jsx": "^1.0.0", "@types/hast": "^3.0.0", @@ -10293,6 +10665,7 @@ "version": "3.1.3", "resolved": "https://registry.npmjs.org/mdast-util-mdx-jsx/-/mdast-util-mdx-jsx-3.1.3.tgz", "integrity": "sha512-bfOjvNt+1AcbPLTFMFWY149nJz0OjmewJs3LQQ5pIyVGxP4CdOqNVJL6kTaM5c68p8q82Xv3nCyFfUnuEcH3UQ==", + "license": "MIT", "dependencies": { "@types/estree-jsx": "^1.0.0", "@types/hast": "^3.0.0", @@ -10312,15 +10685,11 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/mdast-util-mdx-jsx/node_modules/@types/unist": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", - "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==" - }, "node_modules/mdast-util-mdxjs-esm": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/mdast-util-mdxjs-esm/-/mdast-util-mdxjs-esm-2.0.1.tgz", "integrity": "sha512-EcmOpxsZ96CvlP03NghtH1EsLtr0n9Tm4lPUJUBccV9RwUOneqSycg19n5HGzCf+10LozMRSObtVr3ee1WoHtg==", + "license": "MIT", "dependencies": { "@types/estree-jsx": "^1.0.0", "@types/hast": "^3.0.0", @@ -10338,6 +10707,7 @@ "version": "4.1.0", "resolved": "https://registry.npmjs.org/mdast-util-phrasing/-/mdast-util-phrasing-4.1.0.tgz", "integrity": "sha512-TqICwyvJJpBwvGAMZjj4J2n0X8QWp21b9l0o7eXyVJ25YNWYbJDVIyD1bZXE6WtV6RmKJVYmQAKWa0zWOABz2w==", + "license": "MIT", "dependencies": { "@types/mdast": "^4.0.0", "unist-util-is": "^6.0.0" @@ -10347,23 +10717,6 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/mdast-util-phrasing/node_modules/@types/unist": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", - "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==" - }, - "node_modules/mdast-util-phrasing/node_modules/unist-util-is": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-6.0.0.tgz", - "integrity": "sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==", - "dependencies": { - "@types/unist": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, "node_modules/mdast-util-to-hast": { "version": "13.2.0", "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-13.2.0.tgz", @@ -10389,6 +10742,7 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/mdast-util-to-markdown/-/mdast-util-to-markdown-2.1.0.tgz", "integrity": "sha512-SR2VnIEdVNCJbP6y7kVTJgPLifdr8WEU440fQec7qHoHOUz/oJ2jmNRqdDQ3rbiStOXb2mCDGTuwsK5OPUgYlQ==", + "license": "MIT", "dependencies": { "@types/mdast": "^4.0.0", "@types/unist": "^3.0.0", @@ -10404,15 +10758,11 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/mdast-util-to-markdown/node_modules/@types/unist": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", - "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==" - }, "node_modules/mdast-util-to-string": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-4.0.0.tgz", "integrity": "sha512-0H44vDimn51F0YwvxSJSm0eCDOJTRlmN0R1yBh4HLj9wiV1Dn0QoXGbvFAWj2hSItVTlCmBF1hqKlIyUBVFLPg==", + "license": "MIT", "dependencies": { "@types/mdast": "^4.0.0" }, @@ -10441,6 +10791,7 @@ "version": "11.3.0", "resolved": "https://registry.npmjs.org/mermaid/-/mermaid-11.3.0.tgz", "integrity": "sha512-fFmf2gRXLtlGzug4wpIGN+rQdZ30M8IZEB1D3eZkXNqC7puhqeURBcD/9tbwXsqBO+A6Nzzo3MSSepmnw5xSeg==", + "license": "MIT", "dependencies": { "@braintree/sanitize-url": "^7.0.1", "@iconify/utils": "^2.1.32", @@ -10466,7 +10817,8 @@ "node_modules/mhchemparser": { "version": "4.2.1", "resolved": "https://registry.npmjs.org/mhchemparser/-/mhchemparser-4.2.1.tgz", - "integrity": "sha512-kYmyrCirqJf3zZ9t/0wGgRZ4/ZJw//VwaRVGA75C4nhE60vtnIzhl9J9ndkX/h6hxSN7pjg/cE0VxbnNM+bnDQ==" + "integrity": "sha512-kYmyrCirqJf3zZ9t/0wGgRZ4/ZJw//VwaRVGA75C4nhE60vtnIzhl9J9ndkX/h6hxSN7pjg/cE0VxbnNM+bnDQ==", + "license": "Apache-2.0" }, "node_modules/micromark": { "version": "4.0.0", @@ -10482,6 +10834,7 @@ "url": "https://opencollective.com/unified" } ], + "license": "MIT", "dependencies": { "@types/debug": "^4.0.0", "debug": "^4.0.0", @@ -10516,6 +10869,7 @@ "url": "https://opencollective.com/unified" } ], + "license": "MIT", "dependencies": { "decode-named-character-reference": "^1.0.0", "devlop": "^1.0.0", @@ -10539,6 +10893,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/micromark-extension-frontmatter/-/micromark-extension-frontmatter-2.0.0.tgz", "integrity": "sha512-C4AkuM3dA58cgZha7zVnuVxBhDsbttIMiytjgsM2XbHAB2faRVaHRle40558FBN+DJcrLNCoqG5mlrpdU4cRtg==", + "license": "MIT", "dependencies": { "fault": "^2.0.0", "micromark-util-character": "^2.0.0", @@ -10554,6 +10909,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/micromark-extension-gfm/-/micromark-extension-gfm-3.0.0.tgz", "integrity": "sha512-vsKArQsicm7t0z2GugkCKtZehqUm31oeGBV/KVSorWSy8ZlNAv7ytjFhvaryUiCUJYqs+NoE6AFhpQvBTM6Q4w==", + "license": "MIT", "dependencies": { "micromark-extension-gfm-autolink-literal": "^2.0.0", "micromark-extension-gfm-footnote": "^2.0.0", @@ -10573,6 +10929,7 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/micromark-extension-gfm-autolink-literal/-/micromark-extension-gfm-autolink-literal-2.1.0.tgz", "integrity": "sha512-oOg7knzhicgQ3t4QCjCWgTmfNhvQbDDnJeVu9v81r7NltNCVmhPy1fJRX27pISafdjL+SVc4d3l48Gb6pbRypw==", + "license": "MIT", "dependencies": { "micromark-util-character": "^2.0.0", "micromark-util-sanitize-uri": "^2.0.0", @@ -10588,6 +10945,7 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/micromark-extension-gfm-footnote/-/micromark-extension-gfm-footnote-2.1.0.tgz", "integrity": "sha512-/yPhxI1ntnDNsiHtzLKYnE3vf9JZ6cAisqVDauhp4CEHxlb4uoOTxOCJ+9s51bIB8U1N1FJ1RXOKTIlD5B/gqw==", + "license": "MIT", "dependencies": { "devlop": "^1.0.0", "micromark-core-commonmark": "^2.0.0", @@ -10607,6 +10965,7 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/micromark-extension-gfm-strikethrough/-/micromark-extension-gfm-strikethrough-2.1.0.tgz", "integrity": "sha512-ADVjpOOkjz1hhkZLlBiYA9cR2Anf8F4HqZUO6e5eDcPQd0Txw5fxLzzxnEkSkfnD0wziSGiv7sYhk/ktvbf1uw==", + "license": "MIT", "dependencies": { "devlop": "^1.0.0", "micromark-util-chunked": "^2.0.0", @@ -10624,6 +10983,7 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/micromark-extension-gfm-table/-/micromark-extension-gfm-table-2.1.0.tgz", "integrity": "sha512-Ub2ncQv+fwD70/l4ou27b4YzfNaCJOvyX4HxXU15m7mpYY+rjuWzsLIPZHJL253Z643RpbcP1oeIJlQ/SKW67g==", + "license": "MIT", "dependencies": { "devlop": "^1.0.0", "micromark-factory-space": "^2.0.0", @@ -10640,6 +11000,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/micromark-extension-gfm-tagfilter/-/micromark-extension-gfm-tagfilter-2.0.0.tgz", "integrity": "sha512-xHlTOmuCSotIA8TW1mDIM6X2O1SiX5P9IuDtqGonFhEK0qgRI4yeC6vMxEV2dgyr2TiD+2PQ10o+cOhdVAcwfg==", + "license": "MIT", "dependencies": { "micromark-util-types": "^2.0.0" }, @@ -10652,6 +11013,7 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/micromark-extension-gfm-task-list-item/-/micromark-extension-gfm-task-list-item-2.1.0.tgz", "integrity": "sha512-qIBZhqxqI6fjLDYFTBIa4eivDMnP+OZqsNwmQ3xNLE4Cxwc+zfQEfbs6tzAo2Hjq+bh6q5F+Z8/cksrLFYWQQw==", + "license": "MIT", "dependencies": { "devlop": "^1.0.0", "micromark-factory-space": "^2.0.0", @@ -10668,6 +11030,7 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/micromark-extension-math/-/micromark-extension-math-3.1.0.tgz", "integrity": "sha512-lvEqd+fHjATVs+2v/8kg9i5Q0AP2k85H0WUOwpIVvUML8BapsMvh1XAogmQjOCsLpoKRCVQqEkQBB3NhVBcsOg==", + "license": "MIT", "dependencies": { "@types/katex": "^0.16.0", "devlop": "^1.0.0", @@ -10696,6 +11059,7 @@ "url": "https://opencollective.com/unified" } ], + "license": "MIT", "dependencies": { "@types/estree": "^1.0.0", "devlop": "^1.0.0", @@ -10711,6 +11075,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/micromark-extension-mdx-jsx/-/micromark-extension-mdx-jsx-3.0.1.tgz", "integrity": "sha512-vNuFb9czP8QCtAQcEJn0UJQJZA8Dk6DXKBqx+bg/w0WGuSxDxNr7hErW89tHUY31dUW4NqEOWwmEUNhjTFmHkg==", + "license": "MIT", "dependencies": { "@types/acorn": "^4.0.0", "@types/estree": "^1.0.0", @@ -10729,19 +11094,11 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/micromark-extension-mdx-jsx/node_modules/estree-util-is-identifier-name": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/estree-util-is-identifier-name/-/estree-util-is-identifier-name-3.0.0.tgz", - "integrity": "sha512-hFtqIDZTIUZ9BXLb8y4pYGyk6+wekIivNVTcmvk8NoOh+VeRn5y6cEHzbURrWbfp1fIqdVipilzj+lfaadNZmg==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, "node_modules/micromark-extension-mdx-md": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/micromark-extension-mdx-md/-/micromark-extension-mdx-md-2.0.0.tgz", "integrity": "sha512-EpAiszsB3blw4Rpba7xTOUptcFeBFi+6PY8VnJ2hhimH+vCQDirWgsMpz7w1XcZE7LVrSAUGb9VJpG9ghlYvYQ==", + "license": "MIT", "dependencies": { "micromark-util-types": "^2.0.0" }, @@ -10754,6 +11111,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/micromark-extension-mdxjs/-/micromark-extension-mdxjs-3.0.0.tgz", "integrity": "sha512-A873fJfhnJ2siZyUrJ31l34Uqwy4xIFmvPY1oj+Ean5PHcPBYzEsvqvWGaWcfEIr11O5Dlw3p2y0tZWpKHDejQ==", + "license": "MIT", "dependencies": { "acorn": "^8.0.0", "acorn-jsx": "^5.0.0", @@ -10773,6 +11131,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/micromark-extension-mdxjs-esm/-/micromark-extension-mdxjs-esm-3.0.0.tgz", "integrity": "sha512-DJFl4ZqkErRpq/dAPyeWp15tGrcrrJho1hKK5uBS70BCtfrIFg81sqcTVu3Ta+KD1Tk5vAtBNElWxtAa+m8K9A==", + "license": "MIT", "dependencies": { "@types/estree": "^1.0.0", "devlop": "^1.0.0", @@ -10803,6 +11162,7 @@ "url": "https://opencollective.com/unified" } ], + "license": "MIT", "dependencies": { "micromark-util-character": "^2.0.0", "micromark-util-symbol": "^2.0.0", @@ -10823,6 +11183,7 @@ "url": "https://opencollective.com/unified" } ], + "license": "MIT", "dependencies": { "devlop": "^1.0.0", "micromark-util-character": "^2.0.0", @@ -10844,6 +11205,7 @@ "url": "https://opencollective.com/unified" } ], + "license": "MIT", "dependencies": { "@types/estree": "^1.0.0", "devlop": "^1.0.0", @@ -10870,6 +11232,7 @@ "url": "https://opencollective.com/unified" } ], + "license": "MIT", "dependencies": { "micromark-util-character": "^2.0.0", "micromark-util-types": "^2.0.0" @@ -10889,6 +11252,7 @@ "url": "https://opencollective.com/unified" } ], + "license": "MIT", "dependencies": { "micromark-factory-space": "^2.0.0", "micromark-util-character": "^2.0.0", @@ -10910,6 +11274,7 @@ "url": "https://opencollective.com/unified" } ], + "license": "MIT", "dependencies": { "micromark-factory-space": "^2.0.0", "micromark-util-character": "^2.0.0", @@ -10931,6 +11296,7 @@ "url": "https://opencollective.com/unified" } ], + "license": "MIT", "dependencies": { "micromark-util-symbol": "^2.0.0", "micromark-util-types": "^2.0.0" @@ -10950,6 +11316,7 @@ "url": "https://opencollective.com/unified" } ], + "license": "MIT", "dependencies": { "micromark-util-symbol": "^2.0.0" } @@ -10968,6 +11335,7 @@ "url": "https://opencollective.com/unified" } ], + "license": "MIT", "dependencies": { "micromark-util-character": "^2.0.0", "micromark-util-symbol": "^2.0.0", @@ -10988,6 +11356,7 @@ "url": "https://opencollective.com/unified" } ], + "license": "MIT", "dependencies": { "micromark-util-chunked": "^2.0.0", "micromark-util-types": "^2.0.0" @@ -11007,6 +11376,7 @@ "url": "https://opencollective.com/unified" } ], + "license": "MIT", "dependencies": { "micromark-util-symbol": "^2.0.0" } @@ -11025,6 +11395,7 @@ "url": "https://opencollective.com/unified" } ], + "license": "MIT", "dependencies": { "decode-named-character-reference": "^1.0.0", "micromark-util-character": "^2.0.0", @@ -11045,7 +11416,8 @@ "type": "OpenCollective", "url": "https://opencollective.com/unified" } - ] + ], + "license": "MIT" }, "node_modules/micromark-util-events-to-acorn": { "version": "2.0.2", @@ -11061,6 +11433,7 @@ "url": "https://opencollective.com/unified" } ], + "license": "MIT", "dependencies": { "@types/acorn": "^4.0.0", "@types/estree": "^1.0.0", @@ -11072,11 +11445,6 @@ "vfile-message": "^4.0.0" } }, - "node_modules/micromark-util-events-to-acorn/node_modules/@types/unist": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", - "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==" - }, "node_modules/micromark-util-html-tag-name": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/micromark-util-html-tag-name/-/micromark-util-html-tag-name-2.0.0.tgz", @@ -11090,7 +11458,8 @@ "type": "OpenCollective", "url": "https://opencollective.com/unified" } - ] + ], + "license": "MIT" }, "node_modules/micromark-util-normalize-identifier": { "version": "2.0.0", @@ -11106,6 +11475,7 @@ "url": "https://opencollective.com/unified" } ], + "license": "MIT", "dependencies": { "micromark-util-symbol": "^2.0.0" } @@ -11124,6 +11494,7 @@ "url": "https://opencollective.com/unified" } ], + "license": "MIT", "dependencies": { "micromark-util-types": "^2.0.0" } @@ -11142,6 +11513,7 @@ "url": "https://opencollective.com/unified" } ], + "license": "MIT", "dependencies": { "micromark-util-character": "^2.0.0", "micromark-util-encode": "^2.0.0", @@ -11162,6 +11534,7 @@ "url": "https://opencollective.com/unified" } ], + "license": "MIT", "dependencies": { "devlop": "^1.0.0", "micromark-util-chunked": "^2.0.0", @@ -11182,7 +11555,8 @@ "type": "OpenCollective", "url": "https://opencollective.com/unified" } - ] + ], + "license": "MIT" }, "node_modules/micromark-util-types": { "version": "2.0.0", @@ -11197,7 +11571,8 @@ "type": "OpenCollective", "url": "https://opencollective.com/unified" } - ] + ], + "license": "MIT" }, "node_modules/micromatch": { "version": "4.0.8", @@ -11289,7 +11664,8 @@ "node_modules/mj-context-menu": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/mj-context-menu/-/mj-context-menu-0.6.1.tgz", - "integrity": "sha512-7NO5s6n10TIV96d4g2uDpG7ZDpIhMh0QNfGdJw/W47JswFcosz457wqz/b5sAKvl12sxINGFCn80NZHKwxQEXA==" + "integrity": "sha512-7NO5s6n10TIV96d4g2uDpG7ZDpIhMh0QNfGdJw/W47JswFcosz457wqz/b5sAKvl12sxINGFCn80NZHKwxQEXA==", + "license": "Apache-2.0" }, "node_modules/mkdirp": { "version": "1.0.4", @@ -11308,6 +11684,7 @@ "version": "1.7.2", "resolved": "https://registry.npmjs.org/mlly/-/mlly-1.7.2.tgz", "integrity": "sha512-tN3dvVHYVz4DhSXinXIk7u9syPYaJvio118uomkovAtWBT+RdbP6Lfh/5Lvo519YMmwBafwlh20IPTXIStscpA==", + "license": "MIT", "dependencies": { "acorn": "^8.12.1", "pathe": "^1.1.2", @@ -11413,6 +11790,7 @@ "version": "0.6.3", "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", + "license": "MIT", "engines": { "node": ">= 0.6" } @@ -11431,6 +11809,7 @@ "version": "14.2.15", "resolved": "https://registry.npmjs.org/next/-/next-14.2.15.tgz", "integrity": "sha512-h9ctmOokpoDphRvMGnwOJAedT6zKhwqyZML9mDtspgf4Rh3Pn7UTYKqePNoDvhsWBAO5GoPNYshnAUGIazVGmw==", + "license": "MIT", "dependencies": { "@next/env": "14.2.15", "@swc/helpers": "0.5.5", @@ -11480,6 +11859,7 @@ "version": "0.3.0", "resolved": "https://registry.npmjs.org/next-themes/-/next-themes-0.3.0.tgz", "integrity": "sha512-/QHIrsYpd6Kfk7xakK4svpDI5mmXP0gfvCoJdGpZQ2TOrQZmsW0QxjaiLn8wbIKjtm4BTSqLoix4lxYYOnLJ/w==", + "license": "MIT", "peerDependencies": { "react": "^16.8 || ^17 || ^18", "react-dom": "^16.8 || ^17 || ^18" @@ -11489,6 +11869,7 @@ "version": "3.0.13", "resolved": "https://registry.npmjs.org/nextra/-/nextra-3.0.13.tgz", "integrity": "sha512-aK5ZEnKGE2lWhJvFfpj7T35JeA4ytvo2zUiXJ5JApIpFrwkzy8IYTa+irGHB0l9sxGiRlss4p+nAM8Kunvmlug==", + "license": "MIT", "dependencies": { "@formatjs/intl-localematcher": "^0.5.4", "@headlessui/react": "^2.1.2", @@ -11539,6 +11920,7 @@ "version": "3.0.13", "resolved": "https://registry.npmjs.org/nextra-theme-docs/-/nextra-theme-docs-3.0.13.tgz", "integrity": "sha512-1NEo4NJxXRsNPE2PXlYdVlW7N8ZWe5XssePFKUq0comQaxDNc6SaxfBNw0VoQlwB3T5ifTp9f5wb9xfIjPa6OA==", + "license": "MIT", "dependencies": { "@headlessui/react": "^2.1.2", "clsx": "^2.0.0", @@ -11567,21 +11949,11 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/nextra/node_modules/estree-util-value-to-estree": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/estree-util-value-to-estree/-/estree-util-value-to-estree-3.1.2.tgz", - "integrity": "sha512-S0gW2+XZkmsx00tU2uJ4L9hUT7IFabbml9pHh2WQqFmAbxit++YGZne0sKJbNwkj9Wvg9E4uqWl4nCIFQMmfag==", - "dependencies": { - "@types/estree": "^1.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/remcohaszing" - } - }, "node_modules/nextra/node_modules/p-limit": { "version": "6.1.0", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-6.1.0.tgz", "integrity": "sha512-H0jc0q1vOzlEk0TqAKXKZxdl7kX3OFUzCnNVUnq5Pc3DGo0kpeaMuPqxQn235HibwBEb0/pm9dgKTjXy66fBkg==", + "license": "MIT", "dependencies": { "yocto-queue": "^1.1.1" }, @@ -11596,6 +11968,7 @@ "version": "5.1.0", "resolved": "https://registry.npmjs.org/slash/-/slash-5.1.0.tgz", "integrity": "sha512-ZA6oR3T/pEyuqwMgAKT0/hAv8oAXckzbkmR0UkUosQ+Mc4RxGoJkRmwHgHufaenlyAgE1Mxgpdcrf75y6XcnDg==", + "license": "MIT", "engines": { "node": ">=14.16" }, @@ -11607,6 +11980,7 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.1.1.tgz", "integrity": "sha512-b4JR1PFR10y1mKjhHY9LaGo6tmrgjit7hxVIeAmyMw3jegXR4dhYqLaQF5zMXZxY7tLpMyJeLjr1C4rLmkVe8g==", + "license": "MIT", "engines": { "node": ">=12.20" }, @@ -11618,6 +11992,7 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/nlcst-to-string/-/nlcst-to-string-4.0.0.tgz", "integrity": "sha512-YKLBCcUYKAg0FNlOBT6aI91qFmSiFKiluk655WzPF+DDMA02qIyy8uiRqI8QXtcFpEvll12LpL5MXqEmAZ+dcA==", + "license": "MIT", "dependencies": { "@types/nlcst": "^2.0.0" }, @@ -11626,47 +12001,6 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/node-domexception": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/node-domexception/-/node-domexception-1.0.0.tgz", - "integrity": "sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/jimmywarting" - }, - { - "type": "github", - "url": "https://paypal.me/jimmywarting" - } - ], - "license": "MIT", - "peer": true, - "engines": { - "node": ">=10.5.0" - } - }, - "node_modules/node-fetch": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", - "integrity": "sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==", - "license": "MIT", - "peer": true, - "dependencies": { - "whatwg-url": "^5.0.0" - }, - "engines": { - "node": "4.x || >=6.0.0" - }, - "peerDependencies": { - "encoding": "^0.1.0" - }, - "peerDependenciesMeta": { - "encoding": { - "optional": true - } - } - }, "node_modules/node-releases": { "version": "2.0.18", "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.18.tgz", @@ -11732,6 +12066,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/npm-to-yarn/-/npm-to-yarn-3.0.0.tgz", "integrity": "sha512-76YnmsbfrYp0tMsWxM0RNX0Vs+x8JxpJGu6B/jDn4lW8+laiTcKmKi9MeMh4UikO4RkJ1oqURoDy9bXJmMXS6A==", + "license": "MIT", "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, @@ -11774,6 +12109,7 @@ "version": "1.13.2", "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.2.tgz", "integrity": "sha512-IRZSRuzJiynemAXPYtPe5BoI/RESNYR7TYm50MC5Mqbd3Jmw5y790sErYw3V6SryFJD64b74qQQs9wn5Bg/k3g==", + "dev": true, "license": "MIT", "engines": { "node": ">= 0.4" @@ -11904,6 +12240,16 @@ "node": ">=14.0.0" } }, + "node_modules/on-headers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", + "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, "node_modules/once": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", @@ -11934,6 +12280,7 @@ "version": "0.4.3", "resolved": "https://registry.npmjs.org/oniguruma-to-js/-/oniguruma-to-js-0.4.3.tgz", "integrity": "sha512-X0jWUcAlxORhOqqBREgPMgnshB7ZGYszBNspP+tS9hPD3l13CdaXcHbgImoHUHlrvGx/7AvFEkTRhAGYh+jzjQ==", + "license": "MIT", "dependencies": { "regex": "^4.3.2" }, @@ -11941,52 +12288,6 @@ "url": "https://github.com/sponsors/antfu" } }, - "node_modules/openai": { - "version": "4.61.1", - "resolved": "https://registry.npmjs.org/openai/-/openai-4.61.1.tgz", - "integrity": "sha512-jZ2WRn+f4QWZkYnrUS+xzEUIBllsGN75dUCaXmMIHcv2W9yn7O8amaReTbGHCNEYkL43vuDOcxPUWfNPUmoD3Q==", - "license": "Apache-2.0", - "peer": true, - "dependencies": { - "@types/node": "^18.11.18", - "@types/node-fetch": "^2.6.4", - "@types/qs": "^6.9.15", - "abort-controller": "^3.0.0", - "agentkeepalive": "^4.2.1", - "form-data-encoder": "1.7.2", - "formdata-node": "^4.3.2", - "node-fetch": "^2.6.7", - "qs": "^6.10.3" - }, - "bin": { - "openai": "bin/cli" - }, - "peerDependencies": { - "zod": "^3.23.8" - }, - "peerDependenciesMeta": { - "zod": { - "optional": true - } - } - }, - "node_modules/openai/node_modules/@types/node": { - "version": "18.19.50", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.50.tgz", - "integrity": "sha512-xonK+NRrMBRtkL1hVCc3G+uXtjh1Al4opBLjqVmipe5ZAaBYWW6cNAiBVZ1BvmkBhep698rP3UM3aRAdSALuhg==", - "license": "MIT", - "peer": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, - "node_modules/openai/node_modules/undici-types": { - "version": "5.26.5", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", - "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==", - "license": "MIT", - "peer": true - }, "node_modules/optionator": { "version": "0.9.4", "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz", @@ -12121,16 +12422,16 @@ } }, "node_modules/package-json-from-dist": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.0.tgz", - "integrity": "sha512-dATvCeZN/8wQsGywez1mzHtTlP22H8OEfPrVMLNr4/eGa+ijtLn/6M5f0dY8UKNrC2O9UCU6SSoG3qRKnt7STw==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz", + "integrity": "sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==", "dev": true, "license": "BlueOak-1.0.0" }, "node_modules/package-manager-detector": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/package-manager-detector/-/package-manager-detector-0.2.0.tgz", - "integrity": "sha512-E385OSk9qDcXhcM9LNSe4sdhx8a9mAPrZ4sMLW+tmxl5ZuGtPUcdFu+MPP2jbgiWAZ6Pfe5soGFMd+0Db5Vrog==", + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/package-manager-detector/-/package-manager-detector-0.2.2.tgz", + "integrity": "sha512-VgXbyrSNsml4eHWIvxxG/nTL4wgybMTXCV2Un/+yEc3aDKKU6nQBZjbeP3Pl3qm9Qg92X/1ng4ffvCeD/zwHgg==", "license": "MIT" }, "node_modules/pako": { @@ -12157,6 +12458,7 @@ "version": "4.0.1", "resolved": "https://registry.npmjs.org/parse-entities/-/parse-entities-4.0.1.tgz", "integrity": "sha512-SWzvYcSJh4d/SGLIOQfZ/CoNv6BTlI6YEQ7Nj82oDVnRpwe/Z/F1EMx42x3JAOwGBlCjeCH0BRJQbQ/opHL17w==", + "license": "MIT", "dependencies": { "@types/unist": "^2.0.0", "character-entities": "^2.0.0", @@ -12172,6 +12474,12 @@ "url": "https://github.com/sponsors/wooorm" } }, + "node_modules/parse-entities/node_modules/@types/unist": { + "version": "2.0.11", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.11.tgz", + "integrity": "sha512-CmBKiL6NNo/OqgmMn95Fk9Whlp2mtvIv+KNpQKN2F4SjvrEesubTRWGYSg+BnWZOnlCaSTU1sMpsBOzgbYhnsA==", + "license": "MIT" + }, "node_modules/parse-json": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", @@ -12195,6 +12503,7 @@ "version": "7.0.0", "resolved": "https://registry.npmjs.org/parse-latin/-/parse-latin-7.0.0.tgz", "integrity": "sha512-mhHgobPPua5kZ98EF4HWiH167JWBfl4pvAIXXdbaVohtK7a6YBOy56kvhCqduqyo/f3yrHFWmqmiMg/BkBkYYQ==", + "license": "MIT", "dependencies": { "@types/nlcst": "^2.0.0", "@types/unist": "^3.0.0", @@ -12208,23 +12517,19 @@ "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/parse-latin/node_modules/@types/unist": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", - "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==" - }, "node_modules/parse-numeric-range": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/parse-numeric-range/-/parse-numeric-range-1.3.0.tgz", - "integrity": "sha512-twN+njEipszzlMJd4ONUYgSfZPDxgHhT9Ahed5uTigpQn90FggW4SA/AIPq/6a149fTbE9qBEcSwE3FAEp6wQQ==" + "integrity": "sha512-twN+njEipszzlMJd4ONUYgSfZPDxgHhT9Ahed5uTigpQn90FggW4SA/AIPq/6a149fTbE9qBEcSwE3FAEp6wQQ==", + "license": "ISC" }, "node_modules/parse5": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.1.2.tgz", - "integrity": "sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.2.0.tgz", + "integrity": "sha512-ZkDsAOcxsUMZ4Lz5fVciOehNcJ+Gb8gTzcA4yl3wnc273BAybYWrQ+Ks/OjCjSEpjvQkDSeZbybK9qj2VHHdGA==", "license": "MIT", "dependencies": { - "entities": "^4.4.0" + "entities": "^4.5.0" }, "funding": { "url": "https://github.com/inikulin/parse5?sponsor=1" @@ -12233,7 +12538,8 @@ "node_modules/path-data-parser": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/path-data-parser/-/path-data-parser-0.1.0.tgz", - "integrity": "sha512-NOnmBpt5Y2RWbuv0LMzsayp3lVylAHLPUTut412ZA3l+C4uw4ZVkQbjShYCQ8TCpUMdPapr4YjUqLYD6v68j+w==" + "integrity": "sha512-NOnmBpt5Y2RWbuv0LMzsayp3lVylAHLPUTut412ZA3l+C4uw4ZVkQbjShYCQ8TCpUMdPapr4YjUqLYD6v68j+w==", + "license": "MIT" }, "node_modules/path-exists": { "version": "4.0.0", @@ -12254,6 +12560,13 @@ "node": ">=0.10.0" } }, + "node_modules/path-is-inside": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", + "integrity": "sha512-DUWJr3+ULp4zXmol/SZkFf3JGsS9/SIv+Y3Rt93/UjPpDpklB5f1er4O3POIbUuUJ3FXgqte2Q7SrU6zAqwk8w==", + "dev": true, + "license": "(WTFPL OR MIT)" + }, "node_modules/path-key": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", @@ -12298,6 +12611,13 @@ "node": "20 || >=22" } }, + "node_modules/path-to-regexp": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-3.3.0.tgz", + "integrity": "sha512-qyCH421YQPS2WFDxDjftfc1ZR5WKQzVzqsp4n9M2kQhVOo/ByahFoUNJfl58kOcEGfQ//7weFTDhm+ss8Ecxgw==", + "dev": true, + "license": "MIT" + }, "node_modules/path-type": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", @@ -12310,12 +12630,14 @@ "node_modules/pathe": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.2.tgz", - "integrity": "sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==" + "integrity": "sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==", + "license": "MIT" }, "node_modules/periscopic": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/periscopic/-/periscopic-3.1.0.tgz", "integrity": "sha512-vKiQ8RRtkl9P+r/+oefh25C3fhybptkHKCZSPlcXiJux2tJF55GnEj3BVn4A5gKfq9NWWXXrxkHBwVPUfH0opw==", + "license": "MIT", "dependencies": { "@types/estree": "^1.0.0", "estree-walker": "^3.0.0", @@ -12323,9 +12645,9 @@ } }, "node_modules/picocolors": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.0.tgz", - "integrity": "sha512-TQ92mBOW0l3LeMeyLV6mzy/kWr8lkd/hp3mTg7wYK7zJhuBStmGMBG0BdeDZS/dZx1IukaX6Bk11zcln25o1Aw==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", "license": "ISC" }, "node_modules/picomatch": { @@ -12366,6 +12688,7 @@ "version": "9.5.0", "resolved": "https://registry.npmjs.org/pino/-/pino-9.5.0.tgz", "integrity": "sha512-xSEmD4pLnV54t0NOUN16yCl7RIB1c5UUOse5HSyEXtBp+FgFQyPeDutc+Q2ZO7/22vImV7VfEjH/1zV2QuqvYw==", + "license": "MIT", "dependencies": { "atomic-sleep": "^1.0.0", "fast-redact": "^3.1.1", @@ -12387,6 +12710,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/pino-abstract-transport/-/pino-abstract-transport-2.0.0.tgz", "integrity": "sha512-F63x5tizV6WCh4R6RHyi2Ml+M70DNRXt/+HANowMflpgGFMAym/VKm6G7ZOQRjqN7XbGxK1Lg9t6ZrtzOaivMw==", + "license": "MIT", "dependencies": { "split2": "^4.0.0" } @@ -12396,6 +12720,7 @@ "resolved": "https://registry.npmjs.org/pino-pretty/-/pino-pretty-11.3.0.tgz", "integrity": "sha512-oXwn7ICywaZPHmu3epHGU2oJX4nPmKvHvB/bwrJHlGcbEWaVcotkpyVHMKLKmiVryWYByNp0jpgAcXpFJDXJzA==", "dev": true, + "license": "MIT", "dependencies": { "colorette": "^2.0.7", "dateformat": "^4.6.3", @@ -12436,6 +12761,7 @@ "version": "1.2.1", "resolved": "https://registry.npmjs.org/pkg-types/-/pkg-types-1.2.1.tgz", "integrity": "sha512-sQoqa8alT3nHjGuTjuKgOnvjo4cljkufdtLMnO2LBP/wRwuDlo1tkaEdMxCRhyGRPacv/ztlZgDPm2b7FAmEvw==", + "license": "MIT", "dependencies": { "confbox": "^0.1.8", "mlly": "^1.7.2", @@ -12447,6 +12773,7 @@ "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.48.1.tgz", "integrity": "sha512-j8CiHW/V6HxmbntOfyB4+T/uk08tBy6ph0MpBXwuoofkSnLmlfdYNNkFTYD6ofzzlSqLA1fwH4vwvVFvJgLN0w==", "devOptional": true, + "license": "Apache-2.0", "dependencies": { "playwright-core": "1.48.1" }, @@ -12465,6 +12792,7 @@ "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.48.1.tgz", "integrity": "sha512-Yw/t4VAFX/bBr1OzwCuOMZkY1Cnb4z/doAFSwf4huqAGWmf9eMNjmK7NiOljCdLmxeRYcGPPmcDgU0zOlzP0YA==", "devOptional": true, + "license": "Apache-2.0", "bin": { "playwright-core": "cli.js" }, @@ -12678,12 +13006,14 @@ "node_modules/points-on-curve": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/points-on-curve/-/points-on-curve-0.2.0.tgz", - "integrity": "sha512-0mYKnYYe9ZcqMCWhUjItv/oHjvgEsfKvnUTg8sAtnHr3GVy7rGkXCb6d5cSyqrWqL4k81b9CPg3urd+T7aop3A==" + "integrity": "sha512-0mYKnYYe9ZcqMCWhUjItv/oHjvgEsfKvnUTg8sAtnHr3GVy7rGkXCb6d5cSyqrWqL4k81b9CPg3urd+T7aop3A==", + "license": "MIT" }, "node_modules/points-on-path": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/points-on-path/-/points-on-path-0.2.1.tgz", "integrity": "sha512-25ClnWWuw7JbWZcgqY/gJ4FQWadKxGWk+3kR/7kD0tCaDtPPMj7oHu2ToLaVhfpnHrZzYby2w6tUA0eOIuUg8g==", + "license": "MIT", "dependencies": { "path-data-parser": "0.1.0", "points-on-curve": "0.2.0" @@ -12797,14 +13127,14 @@ } }, "node_modules/prettier-plugin-packagejson": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/prettier-plugin-packagejson/-/prettier-plugin-packagejson-2.5.2.tgz", - "integrity": "sha512-w+TmoLv2pIa+siplW1cCj2ujEXQQS6z7wmWLOiLQK/2QVl7Wy6xh/ZUpqQw8tbKMXDodmSW4GONxlA33xpdNOg==", + "version": "2.5.3", + "resolved": "https://registry.npmjs.org/prettier-plugin-packagejson/-/prettier-plugin-packagejson-2.5.3.tgz", + "integrity": "sha512-ATMEEXr+ywls1kgrZEWl4SBPEm0uDdyDAjyNzUC0/Z8WZTD3RqbJcQDR+Dau+wYkW9KHK6zqQIsFyfn+9aduWg==", "dev": true, "license": "MIT", "dependencies": { "sort-package-json": "2.10.1", - "synckit": "0.9.1" + "synckit": "0.9.2" }, "peerDependencies": { "prettier": ">= 1.16.0" @@ -12820,6 +13150,7 @@ "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==", "dev": true, + "license": "MIT", "engines": { "node": ">= 0.6.0" } @@ -12827,7 +13158,8 @@ "node_modules/process-warning": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/process-warning/-/process-warning-4.0.0.tgz", - "integrity": "sha512-/MyYDxttz7DfGMMHiysAsFE4qF+pQYAA8ziO/3NcRVrQ5fSk+Mns4QZA/oRPFzvcqNoVJXQNWNAsdwBXLUkQKw==" + "integrity": "sha512-/MyYDxttz7DfGMMHiysAsFE4qF+pQYAA8ziO/3NcRVrQ5fSk+Mns4QZA/oRPFzvcqNoVJXQNWNAsdwBXLUkQKw==", + "license": "MIT" }, "node_modules/promptly": { "version": "2.2.0", @@ -12937,22 +13269,6 @@ "node": ">=6" } }, - "node_modules/qs": { - "version": "6.13.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz", - "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==", - "license": "BSD-3-Clause", - "peer": true, - "dependencies": { - "side-channel": "^1.0.6" - }, - "engines": { - "node": ">=0.6" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/queue-microtask": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", @@ -12979,6 +13295,42 @@ "integrity": "sha512-tYC1Q1hgyRuHgloV/YXs2w15unPVh8qfu/qCTfhTYamaw7fyhumKa2yGpdSo87vY32rIclj+4fWYQXUMs9EHvg==", "license": "MIT" }, + "node_modules/range-parser": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz", + "integrity": "sha512-kA5WQoNVo4t9lNx2kQNFCxKeBl5IbbSNBl1M/tLkw9WCn+hxNBAW5Qh8gdhs63CJnhjJ2zQWFoqPJP2sK1AV5A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/rc": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", + "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", + "dev": true, + "license": "(BSD-2-Clause OR MIT OR Apache-2.0)", + "dependencies": { + "deep-extend": "^0.6.0", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" + }, + "bin": { + "rc": "cli.js" + } + }, + "node_modules/rc/node_modules/strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/react": { "version": "18.3.1", "resolved": "https://registry.npmjs.org/react/-/react-18.3.1.tgz", @@ -13098,6 +13450,7 @@ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.5.2.tgz", "integrity": "sha512-yjavECdqeZ3GLXNgRXgeQEdz9fvDDkNKyHnbHRFtOr7/LcfgBcmct7t/ET+HaCTqfh06OzoAxrkN/IfjJBVe+g==", "dev": true, + "license": "MIT", "dependencies": { "abort-controller": "^3.0.0", "buffer": "^6.0.3", @@ -13185,7 +13538,8 @@ "node_modules/regex": { "version": "4.3.3", "resolved": "https://registry.npmjs.org/regex/-/regex-4.3.3.tgz", - "integrity": "sha512-r/AadFO7owAq1QJVeZ/nq9jNS1vyZt+6t1p/E59B56Rn2GCya+gr1KSyOzNL/er+r+B7phv5jG2xU2Nz1YkmJg==" + "integrity": "sha512-r/AadFO7owAq1QJVeZ/nq9jNS1vyZt+6t1p/E59B56Rn2GCya+gr1KSyOzNL/er+r+B7phv5jG2xU2Nz1YkmJg==", + "license": "MIT" }, "node_modules/regexp-tree": { "version": "0.1.27", @@ -13198,16 +13552,16 @@ } }, "node_modules/regexp.prototype.flags": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.2.tgz", - "integrity": "sha512-NcDiDkTLuPR+++OCKB0nWafEmhg/Da8aUPLPMQbK+bxKKCm1/S5he+AqYa4PlMCVBalb4/yxIRub6qkEx5yJbw==", + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.3.tgz", + "integrity": "sha512-vqlC04+RQoFalODCbCumG2xIOvapzVMHwsyIGM/SIE8fRhFFsXeH8/QQ+s0T0kDAhKc4k30s73/0ydkHQz6HlQ==", "dev": true, "license": "MIT", "dependencies": { - "call-bind": "^1.0.6", + "call-bind": "^1.0.7", "define-properties": "^1.2.1", "es-errors": "^1.3.0", - "set-function-name": "^2.0.1" + "set-function-name": "^2.0.2" }, "engines": { "node": ">= 0.4" @@ -13216,6 +13570,30 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/registry-auth-token": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-3.3.2.tgz", + "integrity": "sha512-JL39c60XlzCVgNrO+qq68FoNb56w/m7JYvGR2jT5iR1xBrUA3Mfx5Twk5rqTThPmQKMWydGmq8oFtDlxfrmxnQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "rc": "^1.1.6", + "safe-buffer": "^5.0.1" + } + }, + "node_modules/registry-url": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-3.1.0.tgz", + "integrity": "sha512-ZbgR5aZEdf4UKZVBPYIgaglBmSF2Hi94s2PcIHhRGFjKYu+chjJdYfHn4rt3hB6eCKLJ8giVIIfgMa1ehDfZKA==", + "dev": true, + "license": "MIT", + "dependencies": { + "rc": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/regjsparser": { "version": "0.10.0", "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.10.0.tgz", @@ -13261,6 +13639,7 @@ "version": "9.0.1", "resolved": "https://registry.npmjs.org/rehype-parse/-/rehype-parse-9.0.1.tgz", "integrity": "sha512-ksCzCD0Fgfh7trPDxr2rSylbwq9iYDkSn8TCDmEJ49ljEUBxDVCzCHv7QNzZOfODanX4+bWQ4WZqLCRWYLfhag==", + "license": "MIT", "dependencies": { "@types/hast": "^3.0.0", "hast-util-from-html": "^2.0.0", @@ -13275,6 +13654,7 @@ "version": "0.14.0", "resolved": "https://registry.npmjs.org/rehype-pretty-code/-/rehype-pretty-code-0.14.0.tgz", "integrity": "sha512-hBeKF/Wkkf3zyUS8lal9RCUuhypDWLQc+h9UrP9Pav25FUm/AQAVh4m5gdvJxh4Oz+U+xKvdsV01p1LdvsZTiQ==", + "license": "MIT", "dependencies": { "@types/hast": "^3.0.4", "hast-util-to-string": "^3.0.0", @@ -13309,6 +13689,7 @@ "version": "5.0.0", "resolved": "https://registry.npmjs.org/remark-frontmatter/-/remark-frontmatter-5.0.0.tgz", "integrity": "sha512-XTFYvNASMe5iPN0719nPrdItC9aU0ssC4v14mH1BCi1u0n1gAocqcujWUrByftZTbLhRtiKRyjYTSIOcr69UVQ==", + "license": "MIT", "dependencies": { "@types/mdast": "^4.0.0", "mdast-util-frontmatter": "^2.0.0", @@ -13324,6 +13705,7 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/remark-gfm/-/remark-gfm-4.0.0.tgz", "integrity": "sha512-U92vJgBPkbw4Zfu/IiW2oTZLSL3Zpv+uI7My2eq8JxKgqraFdU8YUGicEJCEgSbeaG+QDFqIcwwfMTOEelPxuA==", + "license": "MIT", "dependencies": { "@types/mdast": "^4.0.0", "mdast-util-gfm": "^3.0.0", @@ -13341,6 +13723,7 @@ "version": "6.0.0", "resolved": "https://registry.npmjs.org/remark-math/-/remark-math-6.0.0.tgz", "integrity": "sha512-MMqgnP74Igy+S3WwnhQ7kqGlEerTETXMvJhrUzDikVZ2/uogJCb+WHUg97hK9/jcfc0dkD73s3LN8zU49cTEtA==", + "license": "MIT", "dependencies": { "@types/mdast": "^4.0.0", "mdast-util-math": "^3.0.0", @@ -13356,6 +13739,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/remark-mdx/-/remark-mdx-3.0.1.tgz", "integrity": "sha512-3Pz3yPQ5Rht2pM5R+0J2MrGoBSrzf+tJG94N+t/ilfdh8YLyyKYtidAYwTveB20BoHAcwIopOUqhcmh2F7hGYA==", + "license": "MIT", "dependencies": { "mdast-util-mdx": "^3.0.0", "micromark-extension-mdxjs": "^3.0.0" @@ -13369,6 +13753,7 @@ "version": "11.0.0", "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-11.0.0.tgz", "integrity": "sha512-FCxlKLNGknS5ba/1lmpYijMUzX2esxW5xQqjWxw2eHFfS2MSdaHVINFmhjo+qN1WhZhNimq0dZATN9pH0IDrpA==", + "license": "MIT", "dependencies": { "@types/mdast": "^4.0.0", "mdast-util-from-markdown": "^2.0.0", @@ -13392,6 +13777,59 @@ "unist-util-visit": "^3.1.0" } }, + "node_modules/remark-reading-time/node_modules/@types/unist": { + "version": "2.0.11", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.11.tgz", + "integrity": "sha512-CmBKiL6NNo/OqgmMn95Fk9Whlp2mtvIv+KNpQKN2F4SjvrEesubTRWGYSg+BnWZOnlCaSTU1sMpsBOzgbYhnsA==", + "license": "MIT" + }, + "node_modules/remark-reading-time/node_modules/estree-util-is-identifier-name": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/estree-util-is-identifier-name/-/estree-util-is-identifier-name-2.1.0.tgz", + "integrity": "sha512-bEN9VHRyXAUOjkKVQVvArFym08BTWB0aJPppZZr0UNyAqWsLaVfAqP7hbaTJjzHifmB5ebnR8Wm7r7yGN/HonQ==", + "license": "MIT", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-reading-time/node_modules/estree-util-value-to-estree": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/estree-util-value-to-estree/-/estree-util-value-to-estree-1.3.0.tgz", + "integrity": "sha512-Y+ughcF9jSUJvncXwqRageavjrNPAI+1M/L3BI3PyLp1nmgYTGUXU6t5z1Y7OWuThoDdhPME07bQU+d5LxdJqw==", + "license": "MIT", + "dependencies": { + "is-plain-obj": "^3.0.0" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/remark-reading-time/node_modules/is-plain-obj": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-3.0.0.tgz", + "integrity": "sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==", + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/remark-reading-time/node_modules/unist-util-is": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-5.2.1.tgz", + "integrity": "sha512-u9njyyfEh43npf1M+yGKDGVPbY/JWEemg5nH05ncKPfi+kBbKBJoTdsogMu33uhytuLlv9y0O7GH7fEdwLdLQw==", + "license": "MIT", + "dependencies": { + "@types/unist": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, "node_modules/remark-reading-time/node_modules/unist-util-visit": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-3.1.0.tgz", @@ -13425,6 +13863,7 @@ "version": "11.1.1", "resolved": "https://registry.npmjs.org/remark-rehype/-/remark-rehype-11.1.1.tgz", "integrity": "sha512-g/osARvjkBXb6Wo0XvAeXQohVta8i84ACbenPpoSsxTOQH/Ae0/RGP4WZgnMH5pMLpsj4FG7OHmcIcXxpza8eQ==", + "license": "MIT", "dependencies": { "@types/hast": "^3.0.0", "@types/mdast": "^4.0.0", @@ -13441,6 +13880,7 @@ "version": "3.0.2", "resolved": "https://registry.npmjs.org/remark-smartypants/-/remark-smartypants-3.0.2.tgz", "integrity": "sha512-ILTWeOriIluwEvPjv67v7Blgrcx+LZOkAUVtKI3putuhlZm84FnqDORNXPPm+HY3NdZOMhyDwZ1E+eZB/Df5dA==", + "license": "MIT", "dependencies": { "retext": "^9.0.0", "retext-smartypants": "^6.0.0", @@ -13455,6 +13895,7 @@ "version": "11.0.0", "resolved": "https://registry.npmjs.org/remark-stringify/-/remark-stringify-11.0.0.tgz", "integrity": "sha512-1OSmLd3awB/t8qdoEOMazZkNsfVTeY4fTsgzcQFdXNq8ToTN4ZGwrMnlda4K6smTFKD+GRV6O48i6Z4iKgPPpw==", + "license": "MIT", "dependencies": { "@types/mdast": "^4.0.0", "mdast-util-to-markdown": "^2.0.0", @@ -13469,6 +13910,7 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -13529,6 +13971,7 @@ "version": "0.5.0", "resolved": "https://registry.npmjs.org/ret/-/ret-0.5.0.tgz", "integrity": "sha512-I1XxrZSQ+oErkRR4jYbAyEEu2I0avBvvMM5JN+6EBprOGRCs63ENqZ3vjavq8fBw2+62G5LF5XelKwuJpcvcxw==", + "license": "MIT", "engines": { "node": ">=10" } @@ -13537,6 +13980,7 @@ "version": "9.0.0", "resolved": "https://registry.npmjs.org/retext/-/retext-9.0.0.tgz", "integrity": "sha512-sbMDcpHCNjvlheSgMfEcVrZko3cDzdbe1x/e7G66dFp0Ff7Mldvi2uv6JkJQzdRcvLYE8CA8Oe8siQx8ZOgTcA==", + "license": "MIT", "dependencies": { "@types/nlcst": "^2.0.0", "retext-latin": "^4.0.0", @@ -13552,6 +13996,7 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/retext-latin/-/retext-latin-4.0.0.tgz", "integrity": "sha512-hv9woG7Fy0M9IlRQloq/N6atV82NxLGveq+3H2WOi79dtIYWN8OaxogDm77f8YnVXJL2VD3bbqowu5E3EMhBYA==", + "license": "MIT", "dependencies": { "@types/nlcst": "^2.0.0", "parse-latin": "^7.0.0", @@ -13563,9 +14008,10 @@ } }, "node_modules/retext-smartypants": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/retext-smartypants/-/retext-smartypants-6.1.1.tgz", - "integrity": "sha512-onsHf34i/GzgElJgtT1K2V+31yEhWs7NJboKNxXJcmVMMPxLpgxZ9iADoMdydd6j/bHic5F/aNq0CGqElEtu2g==", + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/retext-smartypants/-/retext-smartypants-6.2.0.tgz", + "integrity": "sha512-kk0jOU7+zGv//kfjXEBjdIryL1Acl4i9XNkHxtM7Tm5lFiCog576fjNC9hjoR7LTKQ0DsPWy09JummSsH1uqfQ==", + "license": "MIT", "dependencies": { "@types/nlcst": "^2.0.0", "nlcst-to-string": "^4.0.0", @@ -13580,6 +14026,7 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/retext-stringify/-/retext-stringify-4.0.0.tgz", "integrity": "sha512-rtfN/0o8kL1e+78+uxPTqu1Klt0yPzKuQ2BfWwwfgIUSayyzxpM1PJzkKt4V8803uB9qSy32MvI7Xep9khTpiA==", + "license": "MIT", "dependencies": { "@types/nlcst": "^2.0.0", "nlcst-to-string": "^4.0.0", @@ -13603,7 +14050,8 @@ "node_modules/rfdc": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.4.1.tgz", - "integrity": "sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==" + "integrity": "sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==", + "license": "MIT" }, "node_modules/rimraf": { "version": "6.0.1", @@ -13628,16 +14076,17 @@ "node_modules/robust-predicates": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/robust-predicates/-/robust-predicates-3.0.2.tgz", - "integrity": "sha512-IXgzBWvWQwE6PrDI05OvmXUIruQTcoMDzRsOd5CDvHCVLcLHMTSYvOK5Cm46kWqlV3yAbuSpBZdJ5oP5OUoStg==" + "integrity": "sha512-IXgzBWvWQwE6PrDI05OvmXUIruQTcoMDzRsOd5CDvHCVLcLHMTSYvOK5Cm46kWqlV3yAbuSpBZdJ5oP5OUoStg==", + "license": "Unlicense" }, "node_modules/rollup": { - "version": "4.21.3", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.21.3.tgz", - "integrity": "sha512-7sqRtBNnEbcBtMeRVc6VRsJMmpI+JU1z9VTvW8D4gXIYQFz0aLcsE6rRkyghZkLfEgUZgVvOG7A5CVz/VW5GIA==", + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.24.0.tgz", + "integrity": "sha512-DOmrlGSXNk1DM0ljiQA+i+o0rSLhtii1je5wgk60j49d1jHT5YYttBv1iWOnYSTG+fZZESUOSNiAl89SIet+Cg==", "dev": true, "license": "MIT", "dependencies": { - "@types/estree": "1.0.5" + "@types/estree": "1.0.6" }, "bin": { "rollup": "dist/bin/rollup" @@ -13647,22 +14096,22 @@ "npm": ">=8.0.0" }, "optionalDependencies": { - "@rollup/rollup-android-arm-eabi": "4.21.3", - "@rollup/rollup-android-arm64": "4.21.3", - "@rollup/rollup-darwin-arm64": "4.21.3", - "@rollup/rollup-darwin-x64": "4.21.3", - "@rollup/rollup-linux-arm-gnueabihf": "4.21.3", - "@rollup/rollup-linux-arm-musleabihf": "4.21.3", - "@rollup/rollup-linux-arm64-gnu": "4.21.3", - "@rollup/rollup-linux-arm64-musl": "4.21.3", - "@rollup/rollup-linux-powerpc64le-gnu": "4.21.3", - "@rollup/rollup-linux-riscv64-gnu": "4.21.3", - "@rollup/rollup-linux-s390x-gnu": "4.21.3", - "@rollup/rollup-linux-x64-gnu": "4.21.3", - "@rollup/rollup-linux-x64-musl": "4.21.3", - "@rollup/rollup-win32-arm64-msvc": "4.21.3", - "@rollup/rollup-win32-ia32-msvc": "4.21.3", - "@rollup/rollup-win32-x64-msvc": "4.21.3", + "@rollup/rollup-android-arm-eabi": "4.24.0", + "@rollup/rollup-android-arm64": "4.24.0", + "@rollup/rollup-darwin-arm64": "4.24.0", + "@rollup/rollup-darwin-x64": "4.24.0", + "@rollup/rollup-linux-arm-gnueabihf": "4.24.0", + "@rollup/rollup-linux-arm-musleabihf": "4.24.0", + "@rollup/rollup-linux-arm64-gnu": "4.24.0", + "@rollup/rollup-linux-arm64-musl": "4.24.0", + "@rollup/rollup-linux-powerpc64le-gnu": "4.24.0", + "@rollup/rollup-linux-riscv64-gnu": "4.24.0", + "@rollup/rollup-linux-s390x-gnu": "4.24.0", + "@rollup/rollup-linux-x64-gnu": "4.24.0", + "@rollup/rollup-linux-x64-musl": "4.24.0", + "@rollup/rollup-win32-arm64-msvc": "4.24.0", + "@rollup/rollup-win32-ia32-msvc": "4.24.0", + "@rollup/rollup-win32-x64-msvc": "4.24.0", "fsevents": "~2.3.2" } }, @@ -13670,6 +14119,7 @@ "version": "4.6.6", "resolved": "https://registry.npmjs.org/roughjs/-/roughjs-4.6.6.tgz", "integrity": "sha512-ZUz/69+SYpFN/g/lUlo2FXcIjRkSu3nDarreVdGGndHEBJ6cXPdKguS8JGxwj5HA5xIbVKSmLgr5b3AWxtRfvQ==", + "license": "MIT", "dependencies": { "hachure-fill": "^0.5.2", "path-data-parser": "^0.1.0", @@ -13724,7 +14174,8 @@ "node_modules/rw": { "version": "1.3.3", "resolved": "https://registry.npmjs.org/rw/-/rw-1.3.3.tgz", - "integrity": "sha512-PdhdWy89SiZogBLaw42zdeqtRJ//zFd2PgQavcICDUgJT5oW10QCRKbJ6bg4r0/UY2M6BWd5tkxuGFRvCkgfHQ==" + "integrity": "sha512-PdhdWy89SiZogBLaw42zdeqtRJ//zFd2PgQavcICDUgJT5oW10QCRKbJ6bg4r0/UY2M6BWd5tkxuGFRvCkgfHQ==", + "license": "BSD-3-Clause" }, "node_modules/safe-array-concat": { "version": "1.1.2", @@ -13788,6 +14239,7 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/safe-regex2/-/safe-regex2-4.0.0.tgz", "integrity": "sha512-Hvjfv25jPDVr3U+4LDzBuZPPOymELG3PYcSk5hcevooo1yxxamQL/bHs/GrEPGmMoMEwRrHVGiCA1pXi97B8Ew==", + "license": "MIT", "dependencies": { "ret": "~0.5.0" } @@ -13863,15 +14315,214 @@ "node": ">=10" } }, - "node_modules/set-cookie-parser": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/set-cookie-parser/-/set-cookie-parser-2.7.0.tgz", - "integrity": "sha512-lXLOiqpkUumhRdFF3k1osNXCy9akgx/dyPZ5p8qAg9seJzXr5ZrlqZuWIMuY6ejOsVLE6flJ5/h3lsn57fQ/PQ==" - }, - "node_modules/set-function-length": { + "node_modules/serve": { + "version": "14.2.4", + "resolved": "https://registry.npmjs.org/serve/-/serve-14.2.4.tgz", + "integrity": "sha512-qy1S34PJ/fcY8gjVGszDB3EXiPSk5FKhUa7tQe0UPRddxRidc2V6cNHPNewbE1D7MAkgLuWEt3Vw56vYy73tzQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@zeit/schemas": "2.36.0", + "ajv": "8.12.0", + "arg": "5.0.2", + "boxen": "7.0.0", + "chalk": "5.0.1", + "chalk-template": "0.4.0", + "clipboardy": "3.0.0", + "compression": "1.7.4", + "is-port-reachable": "4.0.0", + "serve-handler": "6.1.6", + "update-check": "1.5.4" + }, + "bin": { + "serve": "build/main.js" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/serve-handler": { + "version": "6.1.6", + "resolved": "https://registry.npmjs.org/serve-handler/-/serve-handler-6.1.6.tgz", + "integrity": "sha512-x5RL9Y2p5+Sh3D38Fh9i/iQ5ZK+e4xuXRd/pGbM4D13tgo/MGwbttUk8emytcr1YYzBYs+apnUngBDFYfpjPuQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "bytes": "3.0.0", + "content-disposition": "0.5.2", + "mime-types": "2.1.18", + "minimatch": "3.1.2", + "path-is-inside": "1.0.2", + "path-to-regexp": "3.3.0", + "range-parser": "1.2.0" + } + }, + "node_modules/serve-handler/node_modules/mime-db": { + "version": "1.33.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.33.0.tgz", + "integrity": "sha512-BHJ/EKruNIqJf/QahvxwQZXKygOQ256myeN/Ew+THcAa5q+PjyTTMMeNQC4DZw5AwfvelsUrA6B67NKMqXDbzQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/serve-handler/node_modules/mime-types": { + "version": "2.1.18", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.18.tgz", + "integrity": "sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "mime-db": "~1.33.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/serve/node_modules/ajv": { + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "dev": true, + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/serve/node_modules/arg": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz", + "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==", + "dev": true, + "license": "MIT" + }, + "node_modules/serve/node_modules/chalk": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.0.1.tgz", + "integrity": "sha512-Fo07WOYGqMfCWHOzSXOt2CxDbC6skS/jO9ynEcmpANMoPrD+W1r1K6Vx7iNm+AQmETU1Xr2t+n8nzkV9t6xh3w==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^12.17.0 || ^14.13 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/serve/node_modules/clipboardy": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/clipboardy/-/clipboardy-3.0.0.tgz", + "integrity": "sha512-Su+uU5sr1jkUy1sGRpLKjKrvEOVXgSgiSInwa/qeID6aJ07yh+5NWc3h2QfjHjBnfX4LhtFcuAWKUsJ3r+fjbg==", + "dev": true, + "license": "MIT", + "dependencies": { + "arch": "^2.2.0", + "execa": "^5.1.1", + "is-wsl": "^2.2.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/serve/node_modules/execa": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", + "dev": true, + "license": "MIT", + "dependencies": { + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.0", + "human-signals": "^2.1.0", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.1", + "onetime": "^5.1.2", + "signal-exit": "^3.0.3", + "strip-final-newline": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/serve/node_modules/get-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/serve/node_modules/is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/serve/node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "dev": true, + "license": "MIT" + }, + "node_modules/serve/node_modules/npm-run-path": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", + "dev": true, + "license": "MIT", + "dependencies": { + "path-key": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/serve/node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/set-cookie-parser": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/set-cookie-parser/-/set-cookie-parser-2.7.0.tgz", + "integrity": "sha512-lXLOiqpkUumhRdFF3k1osNXCy9akgx/dyPZ5p8qAg9seJzXr5ZrlqZuWIMuY6ejOsVLE6flJ5/h3lsn57fQ/PQ==", + "license": "MIT" + }, + "node_modules/set-function-length": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", + "dev": true, "license": "MIT", "dependencies": { "define-data-property": "^1.1.4", @@ -13928,6 +14579,7 @@ "version": "1.22.0", "resolved": "https://registry.npmjs.org/shiki/-/shiki-1.22.0.tgz", "integrity": "sha512-/t5LlhNs+UOKQCYBtl5ZsH/Vclz73GIqT2yQsCBygr8L/ppTdmpL4w3kPLoZJbMKVWtoG77Ue1feOjZfDxvMkw==", + "license": "MIT", "dependencies": { "@shikijs/core": "1.22.0", "@shikijs/engine-javascript": "1.22.0", @@ -13948,6 +14600,7 @@ "version": "1.0.6", "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.6.tgz", "integrity": "sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==", + "dev": true, "license": "MIT", "dependencies": { "call-bind": "^1.0.7", @@ -14026,9 +14679,9 @@ } }, "node_modules/sonic-boom": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/sonic-boom/-/sonic-boom-4.1.0.tgz", - "integrity": "sha512-NGipjjRicyJJ03rPiZCJYjwlsuP2d1/5QUviozRXC7S3WdVWNK5e3Ojieb9CCyfhq2UC+3+SRd9nG3I2lPRvUw==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/sonic-boom/-/sonic-boom-4.2.0.tgz", + "integrity": "sha512-INb7TM37/mAcsGmc9hyyI6+QR3rR1zVRu36B0NeGXKnOOLiZOfER5SA+N7X7k3yUYRzLWafduTDvJAfDswwEww==", "license": "MIT", "dependencies": { "atomic-sleep": "^1.0.0" @@ -14091,19 +14744,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/sort-package-json/node_modules/is-plain-obj": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz", - "integrity": "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/sort-package-json/node_modules/slash": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", @@ -14121,6 +14761,7 @@ "version": "0.7.4", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", + "license": "BSD-3-Clause", "engines": { "node": ">= 8" } @@ -14281,6 +14922,7 @@ "version": "4.0.7", "resolved": "https://registry.npmjs.org/speech-rule-engine/-/speech-rule-engine-4.0.7.tgz", "integrity": "sha512-sJrL3/wHzNwJRLBdf6CjJWIlxC04iYKkyXvYSVsWVOiC2DSkHmxsqOhEeMsBA9XK+CHuNcsdkbFDnoUfAsmp9g==", + "license": "Apache-2.0", "dependencies": { "commander": "9.2.0", "wicked-good-xpath": "1.3.0", @@ -14294,6 +14936,7 @@ "version": "9.2.0", "resolved": "https://registry.npmjs.org/commander/-/commander-9.2.0.tgz", "integrity": "sha512-e2i4wANQiSXgnrBlIatyHtP1odfUp0BbV5Y5nEGbxtIrStkEOAAzCUirvLBNXHLr7kwLvJl6V+4V3XV9x7Wd9w==", + "license": "MIT", "engines": { "node": "^12.20.0 || >=14" } @@ -14339,6 +14982,7 @@ "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", "dev": true, + "license": "MIT", "dependencies": { "safe-buffer": "~5.2.0" } @@ -14414,14 +15058,18 @@ } }, "node_modules/string.prototype.includes": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/string.prototype.includes/-/string.prototype.includes-2.0.0.tgz", - "integrity": "sha512-E34CkBgyeqNDcrbU76cDjL5JLcVrtSdYq0MEh/B10r17pRP4ciHLwTgnuLV8Ay6cgEMLkcBkFCKyFZ43YldYzg==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/string.prototype.includes/-/string.prototype.includes-2.0.1.tgz", + "integrity": "sha512-o7+c9bW6zpAdJHTtujeePODAhkuicdAryFsfVKwA+wGw89wJ4GTY484WTucM9hLtDEOpOvI+aHnzqnC5lHp4Rg==", "dev": true, "license": "MIT", "dependencies": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.5" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.3" + }, + "engines": { + "node": ">= 0.4" } }, "node_modules/string.prototype.matchall": { @@ -14518,6 +15166,7 @@ "version": "4.0.4", "resolved": "https://registry.npmjs.org/stringify-entities/-/stringify-entities-4.0.4.tgz", "integrity": "sha512-IwfBptatlO+QCJUo19AqvrPNqlVMpW9YEL2LIVY+Rpv2qsjCGxaDLNRgeGsQWJhfItebuJhsGSLjaBbNSQ+ieg==", + "license": "MIT", "dependencies": { "character-entities-html4": "^2.0.0", "character-entities-legacy": "^3.0.0" @@ -14620,6 +15269,7 @@ "version": "0.4.4", "resolved": "https://registry.npmjs.org/style-to-object/-/style-to-object-0.4.4.tgz", "integrity": "sha512-HYNoHZa2GorYNyqiCaBgsxvcJIn7OHq6inEga+E6Ke3m5JkoqpQbnFssk4jwe+K7AhGa2fcha4wSOf1Kn01dMg==", + "license": "MIT", "dependencies": { "inline-style-parser": "0.1.1" } @@ -14650,7 +15300,8 @@ "node_modules/stylis": { "version": "4.3.4", "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.3.4.tgz", - "integrity": "sha512-osIBl6BGUmSfDkyH2mB7EFvCJntXDrLhKjHTRj/rK6xLH0yuPrHULDRQzKokSOD4VoorhtKpfcfW1GAntu8now==" + "integrity": "sha512-osIBl6BGUmSfDkyH2mB7EFvCJntXDrLhKjHTRj/rK6xLH0yuPrHULDRQzKokSOD4VoorhtKpfcfW1GAntu8now==", + "license": "MIT" }, "node_modules/sucrase": { "version": "3.35.0", @@ -14792,9 +15443,9 @@ } }, "node_modules/synckit": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.9.1.tgz", - "integrity": "sha512-7gr8p9TQP6RAHusBOSLs46F4564ZrjV8xFmw5zCmgmhGUcw2hxsShhJ6CEiHQMgPDwAQ1fWHPM0ypc4RMAig4A==", + "version": "0.9.2", + "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.9.2.tgz", + "integrity": "sha512-vrozgXDQwYO72vHjUb/HnFbQx1exDjoKzqx23aXEg2a9VIg2TSFZ8FmeZpTjUCFMYw7mpX4BE2SFu8wI7asYsw==", "dev": true, "license": "MIT", "dependencies": { @@ -14839,7 +15490,8 @@ "node_modules/tabbable": { "version": "6.2.0", "resolved": "https://registry.npmjs.org/tabbable/-/tabbable-6.2.0.tgz", - "integrity": "sha512-Cat63mxsVJlzYvN51JmVXIgNoUokrIaT2zLclCXjRd8boZ0004U4KCs/sToJ75C6sdlByWxpYnb5Boif1VSFew==" + "integrity": "sha512-Cat63mxsVJlzYvN51JmVXIgNoUokrIaT2zLclCXjRd8boZ0004U4KCs/sToJ75C6sdlByWxpYnb5Boif1VSFew==", + "license": "MIT" }, "node_modules/tapable": { "version": "2.2.1", @@ -14903,17 +15555,19 @@ } }, "node_modules/tinyexec": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/tinyexec/-/tinyexec-0.3.0.tgz", - "integrity": "sha512-tVGE0mVJPGb0chKhqmsoosjsS+qUnJVGJpZgsHYQcGoPlG3B51R3PouqTgEGH2Dc9jjFyOqOpix6ZHNMXp1FZg==" + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/tinyexec/-/tinyexec-0.3.1.tgz", + "integrity": "sha512-WiCJLEECkO18gwqIp6+hJg0//p23HXp4S+gGtAKu3mI2F2/sXC4FvHvXvB0zJVVaTPhx1/tOwdbRsa1sOBIKqQ==", + "license": "MIT" }, "node_modules/tinyglobby": { - "version": "0.2.6", - "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.6.tgz", - "integrity": "sha512-NbBoFBpqfcgd1tCiO8Lkfdk+xrA7mlLR9zgvZcZWQQwU63XAfUePyd6wZBaU93Hqw347lHnwFzttAkemHzzz4g==", + "version": "0.2.9", + "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.9.tgz", + "integrity": "sha512-8or1+BGEdk1Zkkw2ii16qSS7uVrQJPre5A9o/XkWPATkk23FZh/15BKFxPnlTy6vkljZxLqYCzzBMj30ZrSvjw==", "dev": true, + "license": "MIT", "dependencies": { - "fdir": "^6.3.0", + "fdir": "^6.4.0", "picomatch": "^4.0.2" }, "engines": { @@ -14921,10 +15575,11 @@ } }, "node_modules/tinyglobby/node_modules/fdir": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.3.0.tgz", - "integrity": "sha512-QOnuT+BOtivR77wYvCWHfGt9s4Pz1VIMbD463vegT5MLqNXy8rYFT/lPVEqf/bhYeT6qmqrNHhsX+rWwe3rOCQ==", + "version": "6.4.2", + "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.4.2.tgz", + "integrity": "sha512-KnhMXsKSPZlAhp7+IjUkRZKPb4fUyccpDrdFXbi4QL1qkmFh9kVY09Yox+n4MaOb3lHZ1Tv829C3oaaXoMYPDQ==", "dev": true, + "license": "MIT", "peerDependencies": { "picomatch": "^3 || ^4" }, @@ -14939,6 +15594,7 @@ "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.2.tgz", "integrity": "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==", "dev": true, + "license": "MIT", "engines": { "node": ">=12" }, @@ -15085,11 +15741,14 @@ } }, "node_modules/tr46": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", - "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-1.0.1.tgz", + "integrity": "sha512-dTpowEjclQ7Kgx5SdBkqRzVhERQXov8/l9Ft9dVM9fmg0W0KQSVaXX9T4i6twCPNtYiZM53lpSSUAwJbFPOHxA==", + "dev": true, "license": "MIT", - "peer": true + "dependencies": { + "punycode": "^2.1.0" + } }, "node_modules/tree-kill": { "version": "1.2.2", @@ -15115,6 +15774,7 @@ "version": "2.2.0", "resolved": "https://registry.npmjs.org/trough/-/trough-2.2.0.tgz", "integrity": "sha512-tmMpK00BjZiUyVyvrBK7knerNgmgvcV/KLVyuma/SC+TQN167GrMRciANTz09+k3zW8L8t60jWO1GpfkZdjTaw==", + "license": "MIT", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" @@ -15137,6 +15797,7 @@ "version": "2.2.0", "resolved": "https://registry.npmjs.org/ts-dedent/-/ts-dedent-2.2.0.tgz", "integrity": "sha512-q5W7tVM71e2xjHZTlgfTDoPF/SmqKG5hddq9SzR49CH2hayqRKJtQ4mtRlSxKaJlR/+9rEM+mnBHf7I2/BQcpQ==", + "license": "MIT", "engines": { "node": ">=6.10" } @@ -15175,9 +15836,9 @@ } }, "node_modules/tslib": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.7.0.tgz", - "integrity": "sha512-gLXCKdN1/j47AiHiOkJN69hJmcbGTHI0ImLmbYLHykhgeN0jVGola9yVjFgzCUklsZQMW55o+dW7IXv3RCXDzA==", + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.0.tgz", + "integrity": "sha512-jWVzBLplnCmoaTr13V9dYbiQ99wvZRd0vNWaDRg+aVYRcjDF3nDksxFDE/+fkXnKhpnUUkmx5pK/v8mCtLVqZA==", "license": "0BSD" }, "node_modules/tsup": { @@ -15185,6 +15846,7 @@ "resolved": "https://registry.npmjs.org/tsup/-/tsup-8.3.0.tgz", "integrity": "sha512-ALscEeyS03IomcuNdFdc0YWGVIkwH1Ws7nfTbAPuoILvEV2hpGQAY72LIOjglGo4ShWpZfpBqP/jpQVCzqYQag==", "dev": true, + "license": "MIT", "dependencies": { "bundle-require": "^5.0.0", "cac": "^6.7.14", @@ -15314,35 +15976,6 @@ "node": ">= 8" } }, - "node_modules/tsup/node_modules/tr46": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-1.0.1.tgz", - "integrity": "sha512-dTpowEjclQ7Kgx5SdBkqRzVhERQXov8/l9Ft9dVM9fmg0W0KQSVaXX9T4i6twCPNtYiZM53lpSSUAwJbFPOHxA==", - "dev": true, - "license": "MIT", - "dependencies": { - "punycode": "^2.1.0" - } - }, - "node_modules/tsup/node_modules/webidl-conversions": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz", - "integrity": "sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==", - "dev": true, - "license": "BSD-2-Clause" - }, - "node_modules/tsup/node_modules/whatwg-url": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-7.1.0.tgz", - "integrity": "sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg==", - "dev": true, - "license": "MIT", - "dependencies": { - "lodash.sortby": "^4.7.0", - "tr46": "^1.0.1", - "webidl-conversions": "^4.0.2" - } - }, "node_modules/tsutils": { "version": "3.21.0", "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", @@ -15416,6 +16049,7 @@ "resolved": "https://registry.npmjs.org/turbo/-/turbo-2.1.3.tgz", "integrity": "sha512-lY0yj2GH2a2a3NExZ3rGe+rHUVeFE2aXuRAue57n+08E7Z7N7YCmynju0kPC1grAQzERmoLpKrmzmWd+PNiADw==", "dev": true, + "license": "MIT", "bin": { "turbo": "bin/turbo" }, @@ -15436,6 +16070,7 @@ "x64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "darwin" @@ -15449,6 +16084,7 @@ "arm64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "darwin" @@ -15462,6 +16098,7 @@ "x64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "linux" @@ -15475,6 +16112,7 @@ "arm64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "linux" @@ -15488,6 +16126,7 @@ "x64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "win32" @@ -15501,6 +16140,7 @@ "arm64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "win32" @@ -15529,6 +16169,7 @@ "version": "0.2.12", "resolved": "https://registry.npmjs.org/twoslash/-/twoslash-0.2.12.tgz", "integrity": "sha512-tEHPASMqi7kqwfJbkk7hc/4EhlrKCSLcur+TcvYki3vhIfaRMXnXjaYFgXpoZRbT6GdprD4tGuVBEmTpUgLBsw==", + "license": "MIT", "dependencies": { "@typescript/vfs": "^1.6.0", "twoslash-protocol": "0.2.12" @@ -15540,7 +16181,8 @@ "node_modules/twoslash-protocol": { "version": "0.2.12", "resolved": "https://registry.npmjs.org/twoslash-protocol/-/twoslash-protocol-0.2.12.tgz", - "integrity": "sha512-5qZLXVYfZ9ABdjqbvPc4RWMr7PrpPaaDSeaYY55vl/w1j6H6kzsWK/urAEIXlzYlyrFmyz1UbwIt+AA0ck+wbg==" + "integrity": "sha512-5qZLXVYfZ9ABdjqbvPc4RWMr7PrpPaaDSeaYY55vl/w1j6H6kzsWK/urAEIXlzYlyrFmyz1UbwIt+AA0ck+wbg==", + "license": "MIT" }, "node_modules/tx2": { "version": "1.0.5", @@ -15660,6 +16302,7 @@ "version": "5.6.3", "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.6.3.tgz", "integrity": "sha512-hjcS1mhfuyi4WW8IWtjP7brDrG2cuDZukyrYrSauoXGNgx0S7zceP07adYkJycEr56BOUTNPzbInooiN3fn1qw==", + "license": "Apache-2.0", "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" @@ -15671,7 +16314,8 @@ "node_modules/ufo": { "version": "1.5.4", "resolved": "https://registry.npmjs.org/ufo/-/ufo-1.5.4.tgz", - "integrity": "sha512-UsUk3byDzKd04EyoZ7U4DOlxQaD14JUKQl6/P7wiX4FNvUfm3XL246n9W5AmqwW5RSFJ27NAuM0iLscAOYUiGQ==" + "integrity": "sha512-UsUk3byDzKd04EyoZ7U4DOlxQaD14JUKQl6/P7wiX4FNvUfm3XL246n9W5AmqwW5RSFJ27NAuM0iLscAOYUiGQ==", + "license": "MIT" }, "node_modules/unbox-primitive": { "version": "1.0.2", @@ -15706,12 +16350,14 @@ "version": "6.19.8", "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.19.8.tgz", "integrity": "sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==", + "dev": true, "license": "MIT" }, "node_modules/unified": { "version": "11.0.5", "resolved": "https://registry.npmjs.org/unified/-/unified-11.0.5.tgz", "integrity": "sha512-xKvGhPWw3k84Qjh8bI3ZeJjqnyadK+GEFtazSfZv/rKeTkTjOJho6mFqh2SM96iIcZokxiOpg78GazTSg8+KHA==", + "license": "MIT", "dependencies": { "@types/unist": "^3.0.0", "bail": "^2.0.0", @@ -15726,22 +16372,6 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/unified/node_modules/@types/unist": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", - "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==" - }, - "node_modules/unified/node_modules/is-plain-obj": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz", - "integrity": "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/unist-util-find-after": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/unist-util-find-after/-/unist-util-find-after-5.0.0.tgz", @@ -15756,13 +16386,7 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/unist-util-find-after/node_modules/@types/unist": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", - "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==", - "license": "MIT" - }, - "node_modules/unist-util-find-after/node_modules/unist-util-is": { + "node_modules/unist-util-is": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-6.0.0.tgz", "integrity": "sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==", @@ -15775,23 +16399,11 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/unist-util-is": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-5.2.1.tgz", - "integrity": "sha512-u9njyyfEh43npf1M+yGKDGVPbY/JWEemg5nH05ncKPfi+kBbKBJoTdsogMu33uhytuLlv9y0O7GH7fEdwLdLQw==", - "license": "MIT", - "dependencies": { - "@types/unist": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, "node_modules/unist-util-modify-children": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/unist-util-modify-children/-/unist-util-modify-children-4.0.0.tgz", "integrity": "sha512-+tdN5fGNddvsQdIzUF3Xx82CU9sMM+fA0dLgR9vOmT0oPT2jH+P1nd5lSqfCfXAw+93NhcXNY2qqvTUtE4cQkw==", + "license": "MIT", "dependencies": { "@types/unist": "^3.0.0", "array-iterate": "^2.0.0" @@ -15801,15 +16413,11 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/unist-util-modify-children/node_modules/@types/unist": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", - "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==" - }, "node_modules/unist-util-position": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/unist-util-position/-/unist-util-position-5.0.0.tgz", "integrity": "sha512-fucsC7HjXvkB5R3kTCO7kUjRdrS0BJt3M/FPxmHMBOm8JQi2BsHAHFsy27E0EolP8rp0NzXsJ+jNPyDWvOJZPA==", + "license": "MIT", "dependencies": { "@types/unist": "^3.0.0" }, @@ -15822,6 +16430,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/unist-util-position-from-estree/-/unist-util-position-from-estree-2.0.0.tgz", "integrity": "sha512-KaFVRjoqLyF6YXCbVLNad/eS4+OfPQQn2yOd7zF/h5T/CSL2v8NpN6a5TPvtbXthAGw5nG+PuTtq+DdIZr+cRQ==", + "license": "MIT", "dependencies": { "@types/unist": "^3.0.0" }, @@ -15830,16 +16439,6 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/unist-util-position-from-estree/node_modules/@types/unist": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", - "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==" - }, - "node_modules/unist-util-position/node_modules/@types/unist": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", - "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==" - }, "node_modules/unist-util-remove": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/unist-util-remove/-/unist-util-remove-4.0.0.tgz", @@ -15869,35 +16468,11 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/unist-util-remove-position/node_modules/@types/unist": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", - "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==", - "license": "MIT" - }, - "node_modules/unist-util-remove/node_modules/@types/unist": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", - "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==", - "license": "MIT" - }, - "node_modules/unist-util-remove/node_modules/unist-util-is": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-6.0.0.tgz", - "integrity": "sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==", - "license": "MIT", - "dependencies": { - "@types/unist": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, "node_modules/unist-util-stringify-position": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-4.0.0.tgz", "integrity": "sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==", + "license": "MIT", "dependencies": { "@types/unist": "^3.0.0" }, @@ -15906,11 +16481,6 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/unist-util-stringify-position/node_modules/@types/unist": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", - "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==" - }, "node_modules/unist-util-visit": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-5.0.0.tgz", @@ -15930,6 +16500,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/unist-util-visit-children/-/unist-util-visit-children-3.0.0.tgz", "integrity": "sha512-RgmdTfSBOg04sdPcpTSD1jzoNBjt9a80/ZCzp5cI9n1qPzLZWF9YdvWGN2zmTumP1HWhXKdUWexjy/Wy/lJ7tA==", + "license": "MIT", "dependencies": { "@types/unist": "^3.0.0" }, @@ -15938,11 +16509,6 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/unist-util-visit-children/node_modules/@types/unist": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", - "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==" - }, "node_modules/unist-util-visit-parents": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-6.0.1.tgz", @@ -15957,44 +16523,6 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/unist-util-visit-parents/node_modules/@types/unist": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", - "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==", - "license": "MIT" - }, - "node_modules/unist-util-visit-parents/node_modules/unist-util-is": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-6.0.0.tgz", - "integrity": "sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==", - "license": "MIT", - "dependencies": { - "@types/unist": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unist-util-visit/node_modules/@types/unist": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", - "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==", - "license": "MIT" - }, - "node_modules/unist-util-visit/node_modules/unist-util-is": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-6.0.0.tgz", - "integrity": "sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==", - "license": "MIT", - "dependencies": { - "@types/unist": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, "node_modules/universalify": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", @@ -16005,9 +16533,9 @@ } }, "node_modules/update-browserslist-db": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.0.tgz", - "integrity": "sha512-EdRAaAyk2cUE1wOf2DkEhzxqOQvFOoRJFNS6NeyJ01Gp2beMRpBAINjM2iDXE3KCuKhwnvHIQCJm6ThL2Z+HzQ==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.1.tgz", + "integrity": "sha512-R8UzCaa9Az+38REPiJ1tXlImTJXlVfgHZsglwBD/k6nj76ctsH1E3q4doGrukiLQd3sGQYu56r5+lo5r94l29A==", "dev": true, "funding": [ { @@ -16025,8 +16553,8 @@ ], "license": "MIT", "dependencies": { - "escalade": "^3.1.2", - "picocolors": "^1.0.1" + "escalade": "^3.2.0", + "picocolors": "^1.1.0" }, "bin": { "update-browserslist-db": "cli.js" @@ -16035,6 +16563,17 @@ "browserslist": ">= 4.21.0" } }, + "node_modules/update-check": { + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/update-check/-/update-check-1.5.4.tgz", + "integrity": "sha512-5YHsflzHP4t1G+8WGPlvKbJEbAJGCgw+Em+dGR1KmBUbr1J36SJBqlHLjR7oob7sco5hWHGQVcr9B2poIVDDTQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "registry-auth-token": "3.3.2", + "registry-url": "3.1.0" + } + }, "node_modules/uri-js": { "version": "4.4.1", "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", @@ -16053,6 +16592,7 @@ "https://github.com/sponsors/broofa", "https://github.com/sponsors/ctavan" ], + "license": "MIT", "bin": { "uuid": "dist/bin/uuid" } @@ -16068,10 +16608,21 @@ "spdx-expression-parse": "^3.0.0" } }, + "node_modules/vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, "node_modules/vfile": { "version": "6.0.3", "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.3.tgz", "integrity": "sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==", + "license": "MIT", "dependencies": { "@types/unist": "^3.0.0", "vfile-message": "^4.0.0" @@ -16095,12 +16646,6 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/vfile-location/node_modules/@types/unist": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", - "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==", - "license": "MIT" - }, "node_modules/vfile-message": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-4.0.2.tgz", @@ -16115,17 +16660,6 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/vfile-message/node_modules/@types/unist": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", - "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==", - "license": "MIT" - }, - "node_modules/vfile/node_modules/@types/unist": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", - "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==" - }, "node_modules/vizion": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/vizion/-/vizion-2.2.1.tgz", @@ -16156,6 +16690,7 @@ "version": "8.2.0", "resolved": "https://registry.npmjs.org/vscode-jsonrpc/-/vscode-jsonrpc-8.2.0.tgz", "integrity": "sha512-C+r0eKJUIfiDIfwJhria30+TYWPtuHJXHtI7J0YlOmKAo7ogxP20T0zxB7HZQIFhIyvoBPwWskjxrvAtfjyZfA==", + "license": "MIT", "engines": { "node": ">=14.0.0" } @@ -16164,6 +16699,7 @@ "version": "9.0.1", "resolved": "https://registry.npmjs.org/vscode-languageserver/-/vscode-languageserver-9.0.1.tgz", "integrity": "sha512-woByF3PDpkHFUreUa7Hos7+pUWdeWMXRd26+ZX2A8cFx6v/JPTtd4/uN0/jB6XQHYaOlHbio03NTHCqrgG5n7g==", + "license": "MIT", "dependencies": { "vscode-languageserver-protocol": "3.17.5" }, @@ -16175,6 +16711,7 @@ "version": "3.17.5", "resolved": "https://registry.npmjs.org/vscode-languageserver-protocol/-/vscode-languageserver-protocol-3.17.5.tgz", "integrity": "sha512-mb1bvRJN8SVznADSGWM9u/b07H7Ecg0I3OgXDuLdn307rl/J3A9YD6/eYOssqhecL27hK1IPZAsaqh00i/Jljg==", + "license": "MIT", "dependencies": { "vscode-jsonrpc": "8.2.0", "vscode-languageserver-types": "3.17.5" @@ -16183,17 +16720,20 @@ "node_modules/vscode-languageserver-textdocument": { "version": "1.0.12", "resolved": "https://registry.npmjs.org/vscode-languageserver-textdocument/-/vscode-languageserver-textdocument-1.0.12.tgz", - "integrity": "sha512-cxWNPesCnQCcMPeenjKKsOCKQZ/L6Tv19DTRIGuLWe32lyzWhihGVJ/rcckZXJxfdKCFvRLS3fpBIsV/ZGX4zA==" + "integrity": "sha512-cxWNPesCnQCcMPeenjKKsOCKQZ/L6Tv19DTRIGuLWe32lyzWhihGVJ/rcckZXJxfdKCFvRLS3fpBIsV/ZGX4zA==", + "license": "MIT" }, "node_modules/vscode-languageserver-types": { "version": "3.17.5", "resolved": "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.17.5.tgz", - "integrity": "sha512-Ld1VelNuX9pdF39h2Hgaeb5hEZM2Z3jUrrMgWQAu82jMtZp7p3vJT3BzToKtZI7NgQssZje5o0zryOrhQvzQAg==" + "integrity": "sha512-Ld1VelNuX9pdF39h2Hgaeb5hEZM2Z3jUrrMgWQAu82jMtZp7p3vJT3BzToKtZI7NgQssZje5o0zryOrhQvzQAg==", + "license": "MIT" }, "node_modules/vscode-uri": { "version": "3.0.8", "resolved": "https://registry.npmjs.org/vscode-uri/-/vscode-uri-3.0.8.tgz", - "integrity": "sha512-AyFQ0EVmsOZOlAnxoFOGOq1SQDWAB7C6aqMGS23svWAllfOaxbuFvcT8D1i8z3Gyn8fraVeZNNmN6e9bxxXkKw==" + "integrity": "sha512-AyFQ0EVmsOZOlAnxoFOGOq1SQDWAB7C6aqMGS23svWAllfOaxbuFvcT8D1i8z3Gyn8fraVeZNNmN6e9bxxXkKw==", + "license": "MIT" }, "node_modules/web-namespaces": { "version": "2.0.1", @@ -16205,32 +16745,23 @@ "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/web-streams-polyfill": { - "version": "4.0.0-beta.3", - "resolved": "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-4.0.0-beta.3.tgz", - "integrity": "sha512-QW95TCTaHmsYfHDybGMwO5IJIM93I/6vTRk+daHTWFPhwh+C8Cg7j7XyKrwrj8Ib6vYXe0ocYNrmzY4xAAN6ug==", - "license": "MIT", - "peer": true, - "engines": { - "node": ">= 14" - } - }, "node_modules/webidl-conversions": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", - "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", - "license": "BSD-2-Clause", - "peer": true + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz", + "integrity": "sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==", + "dev": true, + "license": "BSD-2-Clause" }, "node_modules/whatwg-url": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", - "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-7.1.0.tgz", + "integrity": "sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg==", + "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "tr46": "~0.0.3", - "webidl-conversions": "^3.0.0" + "lodash.sortby": "^4.7.0", + "tr46": "^1.0.1", + "webidl-conversions": "^4.0.2" } }, "node_modules/which": { @@ -16335,7 +16866,24 @@ "node_modules/wicked-good-xpath": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/wicked-good-xpath/-/wicked-good-xpath-1.3.0.tgz", - "integrity": "sha512-Gd9+TUn5nXdwj/hFsPVx5cuHHiF5Bwuc30jZ4+ronF1qHK5O7HD0sgmXWSEgwKquT3ClLoKPVbO6qGwVwLzvAw==" + "integrity": "sha512-Gd9+TUn5nXdwj/hFsPVx5cuHHiF5Bwuc30jZ4+ronF1qHK5O7HD0sgmXWSEgwKquT3ClLoKPVbO6qGwVwLzvAw==", + "license": "MIT" + }, + "node_modules/widest-line": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-4.0.1.tgz", + "integrity": "sha512-o0cyEG0e8GPzT4iGHphIOh0cJOV8fivsXxddQasHPHfoZf1ZexrfeA21w2NaEN1RHE+fXlfISmOE8R9N3u3Qig==", + "dev": true, + "license": "MIT", + "dependencies": { + "string-width": "^5.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, "node_modules/word-wrap": { "version": "1.2.5", @@ -16481,6 +17029,7 @@ "version": "0.1.31", "resolved": "https://registry.npmjs.org/xmldom-sre/-/xmldom-sre-0.1.31.tgz", "integrity": "sha512-f9s+fUkX04BxQf+7mMWAp5zk61pciie+fFLC9hX9UVvCeJQfNHRHXpeo5MPcR0EUf57PYLdt+ZO4f3Ipk2oZUw==", + "license": "(LGPL-2.0 or MIT)", "engines": { "node": ">=0.1" } @@ -16492,9 +17041,10 @@ "license": "ISC" }, "node_modules/yaml": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.5.1.tgz", - "integrity": "sha512-bLQOjaX/ADgQ20isPJRvF0iRUHIxVhYvr53Of7wGcWlO2jvtUlH5m87DsmulFVxRpNLOnI4tB6p/oh8D7kpn9Q==", + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.6.0.tgz", + "integrity": "sha512-a6ae//JvKDEra2kdi1qzCyrJW/WZCgFi8ydDV+eXExl95t+5R+ijnqHJbz9tmMh8FUjx3iv2fCQ4dclAQlO2UQ==", + "license": "ISC", "bin": { "yaml": "bin.mjs" }, @@ -16528,6 +17078,7 @@ "version": "3.4.0", "resolved": "https://registry.npmjs.org/zod-validation-error/-/zod-validation-error-3.4.0.tgz", "integrity": "sha512-ZOPR9SVY6Pb2qqO5XHt+MkkTRxGXb4EVtnjc9JpXUOtUB1T9Ru7mZOT361AN3MsetVe7R0a1KZshJDZdgp9miQ==", + "license": "MIT", "engines": { "node": ">=18.0.0" }, @@ -16554,36 +17105,27 @@ "lru-cache": "10.4.3" }, "devDependencies": { - "@neshca/next-common": "*", - "@neshca/next-lru-cache": "*", + "@repo/next-common": "*", + "@repo/next-lru-cache": "*", "@repo/typescript-config": "*", "@types/node": "22.7.5", - "rimraf": "6.0.1", "tsup": "8.3.0", "tsx": "4.19.1", "typescript": "5.6.3" }, "peerDependencies": { - "next": ">=13.5.1", - "redis": ">=4.6" + "next": ">= 13.5.1", + "redis": ">= 4.6" } }, - "packages/diffscribe": { - "version": "0.2.4", + "packages/cache-handler/node_modules/@types/node": { + "version": "22.7.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.7.5.tgz", + "integrity": "sha512-jML7s2NAzMWc//QSJ1a3prpk78cOPchGvXJsC3C6R6PSMoooztvRVQEz89gmBTBY1SPMaqo5teB4uNHPdetShQ==", + "dev": true, "license": "MIT", - "bin": { - "diffscribe": "dist/diffscribe.js" - }, - "devDependencies": { - "@repo/typescript-config": "*", - "@types/node": "22.7.5", - "rimraf": "6.0.1", - "tsup": "8.3.0", - "typescript": "5.6.3" - }, - "peerDependencies": { - "dotenv": "^16.3.1", - "openai": "^4.12.3" + "dependencies": { + "undici-types": "~6.19.2" } }, "packages/json-replacer-reviver": { @@ -16593,12 +17135,21 @@ "devDependencies": { "@repo/typescript-config": "*", "@types/node": "22.7.5", - "rimraf": "6.0.1", "tsup": "8.3.0", "tsx": "4.19.1", "typescript": "5.6.3" } }, + "packages/json-replacer-reviver/node_modules/@types/node": { + "version": "22.7.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.7.5.tgz", + "integrity": "sha512-jML7s2NAzMWc//QSJ1a3prpk78cOPchGvXJsC3C6R6PSMoooztvRVQEz89gmBTBY1SPMaqo5teB4uNHPdetShQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "undici-types": "~6.19.2" + } + }, "packages/server": { "name": "@neshca/server", "version": "1.1.2", @@ -16611,15 +17162,24 @@ "next-cache-server": "dist/server.js" }, "devDependencies": { - "@neshca/next-common": "*", - "@neshca/next-lru-cache": "*", + "@repo/next-common": "*", + "@repo/next-lru-cache": "*", "@repo/typescript-config": "*", "@types/node": "22.7.5", - "rimraf": "6.0.1", "tsup": "8.3.0", "tsx": "4.19.1", "typescript": "5.6.3" } + }, + "packages/server/node_modules/@types/node": { + "version": "22.7.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.7.5.tgz", + "integrity": "sha512-jML7s2NAzMWc//QSJ1a3prpk78cOPchGvXJsC3C6R6PSMoooztvRVQEz89gmBTBY1SPMaqo5teB4uNHPdetShQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "undici-types": "~6.19.2" + } } } } diff --git a/package.json b/package.json index 928a343d..7cc8c696 100644 --- a/package.json +++ b/package.json @@ -10,28 +10,25 @@ "internal/*" ], "scripts": { - "build": "turbo run build --filter=!./apps/* --filter=!./docs/*", - "build:app": "turbo run build --filter=cache-testing", - "build:docs": "turbo run build:docs --filter=cache-handler-docs", + "build:docs": "turbo run build:docs --filter=@repo/cache-handler-docs", + "build:packages": "turbo run build --filter=!./apps/* --filter=!./docs/*", + "build:test-app": "turbo run build --filter=@repo/cache-testing", "changeset": "changeset", - "clean": "turbo run clean", + "ci:publish": "changeset publish", + "ci:version": "changeset version && npm run codestyle:fix", + "clean": "rimraf -g **/{node_modules,dist,.next,test-results,playwright-report}", "codestyle:check": "biome check . && npm run eslint:check && npm run prettier:check", "codestyle:fix": "biome check --write . && npm run eslint:fix && npm run prettier:fix", - "dev": "turbo run dev --filter=!diffscribe", - "dev:backend": "turbo run dev --filter=backend", - "dev:with-redis": "turbo run dev --filter=!@neshca/server --filter=!diffscribe", + "dev:docs": "turbo run dev:docs --filter=@repo/cache-handler-docs", + "dev:packages": "turbo run dev --filter=!@neshca/server", "e2e": "turbo run e2e", "eslint:check": "turbo run eslint:check", "eslint:fix": "turbo run eslint:fix", - "postinstall": "turbo telemetry disable", "prettier:check": "prettier --check **/*.{md,mdx,yml,json}", "prettier:fix": "prettier --write **/*.{md,mdx,yml,json}", - "release": "npm run build && npm run codestyle:check && changeset publish", - "start": "turbo run start --filter=!./apps/* --filter=!./docs/*", - "start:app": "turbo run start --filter=cache-testing", - "start:backend": "turbo run start --filter=backend", - "test": "turbo run test", - "version-packages": "changeset version && npm run codestyle:fix" + "start:backend": "turbo run start --filter=@repo/backend", + "start:test-app": "turbo run start --filter=@repo/cache-testing", + "test": "turbo run test" }, "dependencies": { "@changesets/cli": "2.27.9" @@ -41,9 +38,9 @@ "@biomejs/biome": "1.9.3", "@repo/prettier-config": "*", "@repo/typescript-config": "*", - "diffscribe": "*", "glob": "11.0.0", "prettier": "3.3.3", + "rimraf": "6.0.1", "turbo": "2.1.3" }, "packageManager": "npm@10.7.0", diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index e4364033..2a7b6067 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -74,7 +74,6 @@ }, "scripts": { "build": "tsup --dts-resolve", - "clean": "rimraf ./dist ./.turbo ./node_modules", "dev": "tsup --watch", "test": "tsx --test src/**/*.test.ts", "test:watch": "tsx --watch --test src/**/*.test.ts" @@ -84,18 +83,17 @@ "lru-cache": "10.4.3" }, "devDependencies": { - "@neshca/next-common": "*", - "@neshca/next-lru-cache": "*", + "@repo/next-common": "*", + "@repo/next-lru-cache": "*", "@repo/typescript-config": "*", "@types/node": "22.7.5", - "rimraf": "6.0.1", "tsup": "8.3.0", "tsx": "4.19.1", "typescript": "5.6.3" }, "peerDependencies": { - "next": ">=13.5.1", - "redis": ">=4.6" + "next": ">= 13.5.1", + "redis": ">= 4.6" }, "distTags": [ "next13.5", diff --git a/packages/cache-handler/src/cache-handler.ts b/packages/cache-handler/src/cache-handler.ts index 6bc87ed0..9089ea26 100644 --- a/packages/cache-handler/src/cache-handler.ts +++ b/packages/cache-handler/src/cache-handler.ts @@ -12,7 +12,7 @@ import type { CacheHandler as NextCacheHandler, PrerenderManifest, Revalidate, -} from '@neshca/next-common'; +} from '@repo/next-common'; import { createValidatedAgeEstimationFunction } from './helpers/create-validated-age-estimation-function'; import { getTagsFromHeaders } from './helpers/get-tags-from-headers'; diff --git a/packages/cache-handler/src/functions/nesh-cache.ts b/packages/cache-handler/src/functions/nesh-cache.ts index 5fa28afb..b108639e 100644 --- a/packages/cache-handler/src/functions/nesh-cache.ts +++ b/packages/cache-handler/src/functions/nesh-cache.ts @@ -1,5 +1,5 @@ import assert from 'node:assert/strict'; -import { type IncrementalCacheEntry, NEXT_CACHE_IMPLICIT_TAG_ID, type Revalidate } from '@neshca/next-common'; +import { type IncrementalCacheEntry, NEXT_CACHE_IMPLICIT_TAG_ID, type Revalidate } from '@repo/next-common'; import { type StaticGenerationStore, staticGenerationAsyncStorage, diff --git a/packages/cache-handler/src/functions/nesh-classic-cache.ts b/packages/cache-handler/src/functions/nesh-classic-cache.ts index 2c755973..b8ef0c7a 100644 --- a/packages/cache-handler/src/functions/nesh-classic-cache.ts +++ b/packages/cache-handler/src/functions/nesh-classic-cache.ts @@ -1,6 +1,6 @@ import assert from 'node:assert/strict'; import { createHash } from 'node:crypto'; -import type { Revalidate } from '@neshca/next-common'; +import type { Revalidate } from '@repo/next-common'; import { staticGenerationAsyncStorage } from 'next/dist/client/components/static-generation-async-storage.external.js'; import type { IncrementalCache } from 'next/dist/server/lib/incremental-cache'; import type { CacheHandler } from '../cache-handler'; diff --git a/packages/cache-handler/src/handlers/local-lru.ts b/packages/cache-handler/src/handlers/local-lru.ts index b8a8a7c3..6c2bb254 100644 --- a/packages/cache-handler/src/handlers/local-lru.ts +++ b/packages/cache-handler/src/handlers/local-lru.ts @@ -1,7 +1,7 @@ -import type { LruCacheOptions } from '@neshca/next-lru-cache/next-cache-handler-value'; -import createCacheStore from '@neshca/next-lru-cache/next-cache-handler-value'; +import type { LruCacheOptions } from '@repo/next-lru-cache/next-cache-handler-value'; +import createCacheStore from '@repo/next-lru-cache/next-cache-handler-value'; -import { NEXT_CACHE_IMPLICIT_TAG_ID } from '@neshca/next-common'; +import { NEXT_CACHE_IMPLICIT_TAG_ID } from '@repo/next-common'; import type { Handler } from '../cache-handler'; /** diff --git a/packages/cache-handler/src/helpers/is-implicit-tag.ts b/packages/cache-handler/src/helpers/is-implicit-tag.ts index 40817c55..71cd8af2 100644 --- a/packages/cache-handler/src/helpers/is-implicit-tag.ts +++ b/packages/cache-handler/src/helpers/is-implicit-tag.ts @@ -1,4 +1,4 @@ -import { NEXT_CACHE_IMPLICIT_TAG_ID } from '@neshca/next-common'; +import { NEXT_CACHE_IMPLICIT_TAG_ID } from '@repo/next-common'; /** * Checks if a given tag is an implicit tag. diff --git a/packages/cache-handler/src/helpers/is-tags-manifest.ts b/packages/cache-handler/src/helpers/is-tags-manifest.ts index bcd1f52b..c65617a3 100644 --- a/packages/cache-handler/src/helpers/is-tags-manifest.ts +++ b/packages/cache-handler/src/helpers/is-tags-manifest.ts @@ -1,4 +1,4 @@ -import type { TagsManifest } from '@neshca/next-common'; +import type { TagsManifest } from '@repo/next-common'; function hasItems(object: object): object is { items: unknown } { return Object.hasOwn(object, 'items'); diff --git a/packages/cache-handler/src/instrumentation/register-initial-cache.ts b/packages/cache-handler/src/instrumentation/register-initial-cache.ts index 26fe3e01..53ca9547 100644 --- a/packages/cache-handler/src/instrumentation/register-initial-cache.ts +++ b/packages/cache-handler/src/instrumentation/register-initial-cache.ts @@ -1,6 +1,6 @@ import { promises as fsPromises } from 'node:fs'; import path from 'node:path'; -import type { CachedFetchValue, Revalidate, RouteMetadata } from '@neshca/next-common'; +import type { CachedFetchValue, Revalidate, RouteMetadata } from '@repo/next-common'; import { PRERENDER_MANIFEST, SERVER_DIRECTORY } from 'next/constants'; import type { PrerenderManifest } from 'next/dist/build'; import { CACHE_ONE_YEAR } from 'next/dist/lib/constants'; diff --git a/packages/cache-handler/tsconfig.json b/packages/cache-handler/tsconfig.json index 9c0ddbfb..e2d33901 100644 --- a/packages/cache-handler/tsconfig.json +++ b/packages/cache-handler/tsconfig.json @@ -4,8 +4,8 @@ "exclude": ["dist", "node_modules"], "compilerOptions": { "paths": { - "@neshca/next-common": ["../../internal/next-common/src/next-common.ts"], - "@neshca/next-lru-cache/next-cache-handler-value": [ + "@repo/next-common": ["../../internal/next-common/src/next-common.ts"], + "@repo/next-lru-cache/next-cache-handler-value": [ "../../internal/next-lru-cache/src/cache-types/next-cache-handler-value.ts" ] } diff --git a/packages/diffscribe/CHANGELOG.md b/packages/diffscribe/CHANGELOG.md deleted file mode 100644 index 79d07e66..00000000 --- a/packages/diffscribe/CHANGELOG.md +++ /dev/null @@ -1,31 +0,0 @@ -# diffscribe - -## 0.2.4 - -### Patch Changes - -- 7adc1af: Fix bin paths in package.json files. - -## 0.2.3 - -### Patch Changes - -- dbf9286: Fixed punctuation in readme - -## 0.2.2 - -### Patch Changes - -- bb61a52: Applied new code style. - -## 0.2.1 - -### Patch Changes - -- 9a970af: Add `gpt-4-1106-preview` model - -## 0.2.0 - -### Minor Changes - -- a9e4604: The start of beta diff --git a/packages/diffscribe/LICENSE b/packages/diffscribe/LICENSE deleted file mode 100644 index fbb67bf3..00000000 --- a/packages/diffscribe/LICENSE +++ /dev/null @@ -1,21 +0,0 @@ -MIT License - -Copyright (c) 2024 Arseny Kruglikov - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. diff --git a/packages/diffscribe/README.md b/packages/diffscribe/README.md deleted file mode 100644 index 1959a2f1..00000000 --- a/packages/diffscribe/README.md +++ /dev/null @@ -1,89 +0,0 @@ -# diffscribe - -`diffscribe` is an intelligent CLI tool designed to automatically generate meaningful commit messages using Git diffstat, status, and insights from OpenAI and you. - -Please note that this project is in its beta version and may undergo significant changes. - -[![npm package](https://img.shields.io/npm/v/diffscribe/latest.svg)](https://www.npmjs.com/package/diffscribe) -[![Dependencies](https://img.shields.io/npm/dm/diffscribe)](https://www.npmjs.com/package/diffscribe) -[![License](https://img.shields.io/npm/l/express.svg)](https://github.com/caching-tools/next-shared-cache/blob/canary/packages/diffscribe/LICENSE) - -## Features: - -- **Smart Analysis**: Evaluates Git status and Git diffstat to identify essential changes. -- **Security**: Your code stays with you – no sharing with OpenAI. -- **User Interaction**: Engages with you to refine its interpretations. -- **OpenAI Power**: Uses the OpenAI API to create concise, descriptive commit messages. -- **Customizable**: Offers customization options like model type, temperature, and commit message length. - -## Prerequisites: - -- Node.js `>=18.17.0`. -- Git `>=2`. -- An OpenAI API key. You can get one [here](https://platform.openai.com/account/api-keys). -- `.env` file with `OPENAI_API_KEY` set to your OpenAI API key. - -## Installation: - -You can install the tool locally or globally. - -```bash -npm i -g diffscribe -# or for local usage -npm i -D diffscribe -``` - -The package has peer dependencies on `openai` to use the OpenAI API and `dotenv` to load the `.env` file. - -```bash -npm i -g openai dotenv -# or for local usage -npm i -D openai dotenv -``` - -## Usage: - -1. Make sure you have staged your changes in Git (`git add .`). -2. Run `diffscribe`: - -```bash -npx diffscribe [--model=] [--modelTemperature=] [--commitLength=] -``` - -### Options: - -- `--model`: The OpenAI model to use. Supported models are `gpt-4` and `gpt-3.5-turbo`. The default is `gpt-4`. -- `--modelTemperature`: The temperature setting for the OpenAI model. The default is `0.05`. Use it to control the randomness of the generated commit message. It should be between `0` and `2`. -- `--commitLength`: The maximum length of the generated commit message. It should be between 50 and 500 characters. The default is `50`. It is not an actual limit but rather a guideline to the model. - -### Example: - -```bash -npx diffscribe - -It seems like you've made a lot of changes, including adding a new package 'diffscribe', modifying several package.json files, and updating documentation. Could you please clarify what you're trying to achieve with this commit? - -Answer: I added a new package named `diffscribe`. Rewrite readme and improve documentation for all public packages. Rewrite TSDoc in `@neshca/json-replacer-reviver` package - -Based on the information provided, the commit message could be: "Add diffscribe package and improve documentation". -``` - -What happened behind the scenes: - -- `diffscribe` will run `git status --renames` and `git diff --cached --stat` to get the branch name, list of changed files, and the number of changes in each file. It does not look inside the files. -- This information is sent to OpenAI's API, along with the context and guidelines for the GPT model. -- GPT will try to understand the changes and prompt the user to confirm its understanding. -- GPT will generate a commit message if the user confirms the understanding. - -## Notes: - -- Ensure you have the `.env` file in the same directory from which you are running `diffscribe`. -- If you encounter errors related to model selection, temperature, or commit length, please check the passed arguments for validity. - -## Developing and contributing - -[Developing and contributing `diffscribe`](../../docs/contributing/diffscribe.md) - -## License: - -[MIT](./LICENSE) diff --git a/packages/diffscribe/package.json b/packages/diffscribe/package.json deleted file mode 100644 index 4b580793..00000000 --- a/packages/diffscribe/package.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "name": "diffscribe", - "version": "0.2.4", - "description": "An intelligent CLI tool designed to automatically generate meaningful commit messages using Git diffstat, status, and insights from OpenAI and you", - "homepage": "https://github.com/caching-tools/next-shared-cache/tree/canary/packages/diffscribe", - "bugs": "https://github.com/caching-tools/next-shared-cache/issues", - "repository": { - "type": "git", - "url": "git+https://github.com/caching-tools/next-shared-cache.git" - }, - "license": "MIT", - "author": { - "name": "Arseny Kruglikov", - "email": "caching.tools@proton.me" - }, - "type": "module", - "exports": null, - "bin": { - "diffscribe": "dist/diffscribe.js" - }, - "scripts": { - "build": "tsup", - "clean": "rimraf ./dist ./.turbo ./node_modules", - "dev": "tsup --watch" - }, - "devDependencies": { - "@repo/typescript-config": "*", - "@types/node": "22.7.5", - "rimraf": "6.0.1", - "tsup": "8.3.0", - "typescript": "5.6.3" - }, - "peerDependencies": { - "dotenv": "^16.3.1", - "openai": "^4.12.3" - } -} diff --git a/packages/diffscribe/src/diffscribe.ts b/packages/diffscribe/src/diffscribe.ts deleted file mode 100644 index f9b16de6..00000000 --- a/packages/diffscribe/src/diffscribe.ts +++ /dev/null @@ -1,205 +0,0 @@ -#!/usr/bin/env node - -import { execFileSync } from 'node:child_process'; -import { createInterface } from 'node:readline/promises'; - -import 'dotenv/config'; -import { OpenAI } from 'openai'; - -// OpenAI client initialization -const openai = new OpenAI({ - apiKey: process.env.OPENAI_API_KEY, - timeout: 60 * 1000, -}); - -// Readline interface initialization -const rl = createInterface({ - input: process.stdin, - output: process.stdout, -}); - -// Constants for configurations -const DEFAULT_MODEL = 'gpt-4-1106-preview'; -const SUPPORTED_MODELS = ['gpt-4', 'gpt-3.5-turbo', 'gpt-4-1106-preview']; -const DEFAULT_TEMPERATURE = 0.05; -const COMMIT_LENGTH_MIN = 50; -const COMMIT_LENGTH_MAX = 500; - -// Argument parsing function -function parseArguments(args: string[]): Record { - return args.reduce>((acc, arg) => { - const [keyWithDash, value] = arg.split('='); - - if (keyWithDash?.startsWith('--') && value) { - const key = keyWithDash.slice(2); - - acc[key] = value; - } - return acc; - }, {}); -} - -// Extract and set defaults -const args = parseArguments(process.argv.slice(2)); -const { - model = DEFAULT_MODEL, - modelTemperature = `${DEFAULT_TEMPERATURE}`, - commitLength = `${COMMIT_LENGTH_MIN}`, -} = args; - -// Validations -const commitLengthNumber = Number.parseInt(commitLength, 10); -if ( - Number.isNaN(commitLengthNumber) || - commitLengthNumber < COMMIT_LENGTH_MIN || - commitLengthNumber > COMMIT_LENGTH_MAX -) { - throw new Error(`Invalid commit length ${commitLength}`); -} - -const temperature = Number.parseFloat(modelTemperature); -if (Number.isNaN(temperature)) { - throw new Error(`Invalid temperature ${modelTemperature}`); -} - -if (!SUPPORTED_MODELS.includes(model)) { - // typecast required because of TS's strict type checking with array includes - throw new Error(`Model ${model} is not supported`); -} - -// Utility functions -async function getUserPrompt(question: string): Promise { - const answer = await rl.question(`\n${question}\n\nAnswer: `); - return answer; -} - -async function main(): Promise { - const diffBuffer = execFileSync('git', ['diff', '--cached', '--stat']); - - const diff = diffBuffer.toString('utf-8').trim(); - - const statusBuffer = execFileSync('git', ['status', '--renames']); - - const status = statusBuffer.toString('utf-8').trim(); - - const messages: OpenAI.ChatCompletionMessageParam[] = [ - { - role: 'system', - content: ` - Context: - You are an assistant tasked with creating commit messages for the user working on JavaScript or TypeScript projects. - Inputs: - You will receive the Git status and Git diffstat. - Guidelines: - Using the Git status, identify which files have been affected and the branch name. - Using the Git diffstat, identify files and directories with significant changes. - If the most significant change is a package-lock.json file, ignore it. - Try to understand then tell what the user tries to achieve with this commit. Be explicit. - Ask the user to correct you. Keep asking until you have a good understanding. - Use all your information and context to determine what the user is trying to achieve. - Based on this information, create a short commit message in an imperative style. E.g., "Update...", "Refactor...", or "Fix..." etc. - Try to keep it under ${commitLengthNumber} characters. - If the message length exceeds ${commitLengthNumber} characters, use markdown syntax to break it into multiple paragraphs. - `.trim(), - }, - { - role: 'system', - content: `Git status: - ${status}`.trim(), - }, - { - role: 'system', - content: `Git diffstat: - ${diff}`.trim(), - }, - ]; - - const functions: OpenAI.ChatCompletionCreateParams.Function[] = [ - { - name: 'getUserPrompt', - parameters: { - type: 'object', - properties: { - question: { - type: 'string', - description: 'Question to prompt the user with.', - }, - }, - required: ['question'], - }, - description: 'Ask the user to correct', - }, - ]; - - const response = await openai.chat.completions.create({ - messages, - model, - temperature, - functions, - }); - - let conversationChoice: OpenAI.Chat.Completions.ChatCompletion.Choice; - - const initialChoice = response.choices.at(0); - - if (!initialChoice) { - throw new Error('No conversation choice'); - } - - conversationChoice = initialChoice; - - while (conversationChoice.finish_reason === 'function_call') { - const conversationMessage = conversationChoice.message; - - if (conversationMessage.function_call) { - const availableFunctions: Record Promise> = { - getUserPrompt, - }; - const functionName = conversationMessage.function_call.name; - const functionToCall = availableFunctions[functionName]; - - if (!functionToCall) { - throw new Error(`Function ${functionName} is not available`); - } - - const functionArgs = JSON.parse(conversationMessage.function_call.arguments) as unknown as { - question: string; - }; - - const functionResponse = await functionToCall(functionArgs.question); - - messages.push(conversationMessage); - - messages.push({ - role: 'function', - name: functionName, - content: functionResponse, - }); - - const nextResponse = await openai.chat.completions.create({ - messages, - model, - temperature, - functions, - }); - - const nextChoice = nextResponse.choices.at(0); - - if (!nextChoice) { - throw new Error('No conversation choice'); - } - - conversationChoice = nextChoice; - } - } - - process.stdout.write(`\n${conversationChoice.message.content ?? ''}`); -} - -main() - .then(() => { - process.exit(0); - }) - .catch(() => { - process.exit(1); - }); diff --git a/packages/diffscribe/tsconfig.json b/packages/diffscribe/tsconfig.json deleted file mode 100644 index b0d5b0ac..00000000 --- a/packages/diffscribe/tsconfig.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "extends": "@repo/typescript-config/library.json", - "include": ["."], - "exclude": ["dist", "node_modules"] -} diff --git a/packages/diffscribe/tsup.config.ts b/packages/diffscribe/tsup.config.ts deleted file mode 100644 index 355a2a29..00000000 --- a/packages/diffscribe/tsup.config.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { defineConfig } from 'tsup'; - -export const tsup = defineConfig({ - name: 'Build diffscribe', - entry: ['src/diffscribe.ts'], - splitting: false, - clean: true, - outDir: 'dist', - format: 'esm', - target: 'node18', -}); diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 0f8e75c4..6e742cf3 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -21,7 +21,6 @@ }, "scripts": { "build": "tsup", - "clean": "rimraf ./dist ./.turbo ./node_modules", "dev": "tsup --watch", "test": "tsx --test **/*.test.ts", "test:watch": "tsx --watch --test **/*.test.ts" @@ -29,7 +28,6 @@ "devDependencies": { "@repo/typescript-config": "*", "@types/node": "22.7.5", - "rimraf": "6.0.1", "tsup": "8.3.0", "tsx": "4.19.1", "typescript": "5.6.3" diff --git a/packages/server/package.json b/packages/server/package.json index c8099f7f..8f0e6e8d 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -20,7 +20,6 @@ }, "scripts": { "build": "tsup", - "clean": "rimraf ./dist ./.turbo ./node_modules", "dev": "tsx --watch ./src/server.ts", "start": "tsx ./src/server.ts" }, @@ -29,11 +28,10 @@ "pino": "9.5.0" }, "devDependencies": { - "@neshca/next-common": "*", - "@neshca/next-lru-cache": "*", + "@repo/next-common": "*", + "@repo/next-lru-cache": "*", "@repo/typescript-config": "*", "@types/node": "22.7.5", - "rimraf": "6.0.1", "tsup": "8.3.0", "tsx": "4.19.1", "typescript": "5.6.3" diff --git a/packages/server/src/server.ts b/packages/server/src/server.ts index 05d1fc4d..94dd55a6 100644 --- a/packages/server/src/server.ts +++ b/packages/server/src/server.ts @@ -1,7 +1,7 @@ #!/usr/bin/env node -import { NEXT_CACHE_IMPLICIT_TAG_ID } from '@neshca/next-common'; -import createCacheStore from '@neshca/next-lru-cache/next-cache-handler-value'; +import { NEXT_CACHE_IMPLICIT_TAG_ID } from '@repo/next-common'; +import createCacheStore from '@repo/next-lru-cache/next-cache-handler-value'; import Fastify from 'fastify'; import { pino } from 'pino'; diff --git a/packages/server/tsconfig.json b/packages/server/tsconfig.json index 5809638a..039069de 100644 --- a/packages/server/tsconfig.json +++ b/packages/server/tsconfig.json @@ -4,7 +4,7 @@ "exclude": ["dist", "node_modules"], "compilerOptions": { "paths": { - "@neshca/next-common": ["../../internal/next-common/src/next-common.ts"] + "@repo/next-common": ["../../internal/next-common/src/next-common.ts"] } } } diff --git a/packages/server/tsup.config.ts b/packages/server/tsup.config.ts index 6b4d800c..e45658d1 100644 --- a/packages/server/tsup.config.ts +++ b/packages/server/tsup.config.ts @@ -10,6 +10,6 @@ export const tsup = defineConfig(() => { outDir: 'dist', format: 'esm', target: 'node18', - noExternal: ['@neshca/next-lru-cache/string'], + noExternal: ['@repo/next-lru-cache/string'], }; }); diff --git a/turbo.json b/turbo.json index 7f11e68f..fcee4278 100644 --- a/turbo.json +++ b/turbo.json @@ -27,16 +27,21 @@ "e2e": { "cache": false }, - "clean": { - "cache": false - }, "start": { "cache": false, "persistent": true }, + "start:docs": { + "cache": false, + "persistent": true + }, "dev": { "cache": false, "persistent": true + }, + "dev:docs": { + "cache": false, + "persistent": true } } } From 1baeac78938c692b85a7d59b428c73ee3cb22b77 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 18 Oct 2024 00:13:09 +0300 Subject: [PATCH 424/458] Bump the nextra group with 2 updates (#819) Bumps the nextra group with 2 updates: [nextra](https://github.com/shuding/nextra) and [nextra-theme-docs](https://github.com/shuding/nextra). Updates `nextra` from 3.0.13 to 3.0.15 - [Release notes](https://github.com/shuding/nextra/releases) - [Commits](https://github.com/shuding/nextra/compare/nextra@3.0.13...nextra@3.0.15) Updates `nextra-theme-docs` from 3.0.13 to 3.0.15 - [Release notes](https://github.com/shuding/nextra/releases) - [Commits](https://github.com/shuding/nextra/compare/nextra-theme-docs@3.0.13...nextra-theme-docs@3.0.15) --- updated-dependencies: - dependency-name: nextra dependency-type: direct:production update-type: version-update:semver-patch dependency-group: nextra - dependency-name: nextra-theme-docs dependency-type: direct:production update-type: version-update:semver-patch dependency-group: nextra ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- docs/cache-handler-docs/package.json | 4 ++-- package-lock.json | 22 ++++++++++------------ 2 files changed, 12 insertions(+), 14 deletions(-) diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 3a82d8f6..3c7bee98 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -12,8 +12,8 @@ }, "dependencies": { "next": "14.2.15", - "nextra": "3.0.13", - "nextra-theme-docs": "3.0.13", + "nextra": "3.0.15", + "nextra-theme-docs": "3.0.15", "react": "18.3.1", "react-dom": "18.3.1" }, diff --git a/package-lock.json b/package-lock.json index 2de03f27..cb8a1848 100644 --- a/package-lock.json +++ b/package-lock.json @@ -76,8 +76,8 @@ "version": "0.0.0", "dependencies": { "next": "14.2.15", - "nextra": "3.0.13", - "nextra-theme-docs": "3.0.13", + "nextra": "3.0.15", + "nextra-theme-docs": "3.0.15", "react": "18.3.1", "react-dom": "18.3.1" }, @@ -11866,10 +11866,9 @@ } }, "node_modules/nextra": { - "version": "3.0.13", - "resolved": "https://registry.npmjs.org/nextra/-/nextra-3.0.13.tgz", - "integrity": "sha512-aK5ZEnKGE2lWhJvFfpj7T35JeA4ytvo2zUiXJ5JApIpFrwkzy8IYTa+irGHB0l9sxGiRlss4p+nAM8Kunvmlug==", - "license": "MIT", + "version": "3.0.15", + "resolved": "https://registry.npmjs.org/nextra/-/nextra-3.0.15.tgz", + "integrity": "sha512-iLKFNYwq8sciXPK9RPRmgifELSA2JLgEfL5y54stq7MvXuKn44MZJNzdhkJF4MXvx1HobzYLHl3/e37/Yf2htA==", "dependencies": { "@formatjs/intl-localematcher": "^0.5.4", "@headlessui/react": "^2.1.2", @@ -11877,7 +11876,7 @@ "@mdx-js/react": "^3.0.0", "@napi-rs/simple-git": "^0.1.9", "@shikijs/twoslash": "^1.0.0", - "@theguild/remark-mermaid": "^0.1.2", + "@theguild/remark-mermaid": "^0.1.3", "@theguild/remark-npm2yarn": "^0.3.2", "better-react-mathjax": "^2.0.3", "clsx": "^2.0.0", @@ -11917,10 +11916,9 @@ } }, "node_modules/nextra-theme-docs": { - "version": "3.0.13", - "resolved": "https://registry.npmjs.org/nextra-theme-docs/-/nextra-theme-docs-3.0.13.tgz", - "integrity": "sha512-1NEo4NJxXRsNPE2PXlYdVlW7N8ZWe5XssePFKUq0comQaxDNc6SaxfBNw0VoQlwB3T5ifTp9f5wb9xfIjPa6OA==", - "license": "MIT", + "version": "3.0.15", + "resolved": "https://registry.npmjs.org/nextra-theme-docs/-/nextra-theme-docs-3.0.15.tgz", + "integrity": "sha512-AhvmgcjFYi7aT5nRjdozqCt1hW39tqCIRKi4+pIR62ri26miB3VxREBYlCTHezcML2VLunyYIjFiiQGUan09gA==", "dependencies": { "@headlessui/react": "^2.1.2", "clsx": "^2.0.0", @@ -11932,7 +11930,7 @@ }, "peerDependencies": { "next": ">=13", - "nextra": "3.0.13", + "nextra": "3.0.15", "react": ">=18", "react-dom": ">=18" } From 91aa1eee2e0e81f3a1c8b73ebc3684eb807af077 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 18 Oct 2024 00:22:25 +0300 Subject: [PATCH 425/458] Bump @types/node from 22.7.5 to 22.7.6 in the definitely-typed group (#818) Bumps the definitely-typed group with 1 update: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node). Updates `@types/node` from 22.7.5 to 22.7.6 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) --- updated-dependencies: - dependency-name: "@types/node" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- internal/backend/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 112 ++++---------------- packages/cache-handler/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 9 files changed, 28 insertions(+), 100 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index db62ad48..c2a2b7b6 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -28,7 +28,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.12", - "@types/node": "22.7.5", + "@types/node": "22.7.6", "@types/react": "18.3.11", "@types/react-dom": "18.3.1", "dotenv-cli": "7.4.2", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 3c7bee98..303b04de 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -22,7 +22,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.12", - "@types/node": "22.7.5", + "@types/node": "22.7.6", "@types/react": "18.3.11", "@types/react-dom": "18.3.1", "eslint": "8.57.1", diff --git a/internal/backend/package.json b/internal/backend/package.json index 0ed8a9d8..1cb5fc3a 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -14,7 +14,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.7.5", + "@types/node": "22.7.6", "pino-pretty": "11.3.0", "tsx": "4.19.1", "typescript": "5.6.3" diff --git a/internal/next-common/package.json b/internal/next-common/package.json index 211df1e1..bb0fa3ca 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -12,7 +12,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.7.5", + "@types/node": "22.7.6", "typescript": "5.6.3" } } diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index 3e5d2df4..4667709f 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -13,7 +13,7 @@ "devDependencies": { "@repo/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "22.7.5", + "@types/node": "22.7.6", "typescript": "5.6.3" } } diff --git a/package-lock.json b/package-lock.json index cb8a1848..35c927d3 100644 --- a/package-lock.json +++ b/package-lock.json @@ -50,7 +50,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.12", - "@types/node": "22.7.5", + "@types/node": "22.7.6", "@types/react": "18.3.11", "@types/react-dom": "18.3.1", "dotenv-cli": "7.4.2", @@ -61,16 +61,6 @@ "typescript": "5.6.3" } }, - "apps/cache-testing/node_modules/@types/node": { - "version": "22.7.5", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.7.5.tgz", - "integrity": "sha512-jML7s2NAzMWc//QSJ1a3prpk78cOPchGvXJsC3C6R6PSMoooztvRVQEz89gmBTBY1SPMaqo5teB4uNHPdetShQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "undici-types": "~6.19.2" - } - }, "docs/cache-handler-docs": { "name": "@repo/cache-handler-docs", "version": "0.0.0", @@ -86,7 +76,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.12", - "@types/node": "22.7.5", + "@types/node": "22.7.6", "@types/react": "18.3.11", "@types/react-dom": "18.3.1", "eslint": "8.57.1", @@ -94,16 +84,6 @@ "typescript": "5.6.3" } }, - "docs/cache-handler-docs/node_modules/@types/node": { - "version": "22.7.5", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.7.5.tgz", - "integrity": "sha512-jML7s2NAzMWc//QSJ1a3prpk78cOPchGvXJsC3C6R6PSMoooztvRVQEz89gmBTBY1SPMaqo5teB4uNHPdetShQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "undici-types": "~6.19.2" - } - }, "internal/backend": { "name": "@repo/backend", "version": "0.0.0", @@ -114,22 +94,12 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.7.5", + "@types/node": "22.7.6", "pino-pretty": "11.3.0", "tsx": "4.19.1", "typescript": "5.6.3" } }, - "internal/backend/node_modules/@types/node": { - "version": "22.7.5", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.7.5.tgz", - "integrity": "sha512-jML7s2NAzMWc//QSJ1a3prpk78cOPchGvXJsC3C6R6PSMoooztvRVQEz89gmBTBY1SPMaqo5teB4uNHPdetShQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "undici-types": "~6.19.2" - } - }, "internal/eslint-config": { "name": "@repo/eslint-config", "version": "0.0.0", @@ -152,20 +122,10 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.7.5", + "@types/node": "22.7.6", "typescript": "5.6.3" } }, - "internal/next-common/node_modules/@types/node": { - "version": "22.7.5", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.7.5.tgz", - "integrity": "sha512-jML7s2NAzMWc//QSJ1a3prpk78cOPchGvXJsC3C6R6PSMoooztvRVQEz89gmBTBY1SPMaqo5teB4uNHPdetShQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "undici-types": "~6.19.2" - } - }, "internal/next-lru-cache": { "name": "@repo/next-lru-cache", "version": "0.0.0", @@ -176,20 +136,10 @@ "devDependencies": { "@repo/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "22.7.5", + "@types/node": "22.7.6", "typescript": "5.6.3" } }, - "internal/next-lru-cache/node_modules/@types/node": { - "version": "22.7.5", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.7.5.tgz", - "integrity": "sha512-jML7s2NAzMWc//QSJ1a3prpk78cOPchGvXJsC3C6R6PSMoooztvRVQEz89gmBTBY1SPMaqo5teB4uNHPdetShQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "undici-types": "~6.19.2" - } - }, "internal/prettier-config": { "name": "@repo/prettier-config", "version": "0.0.0", @@ -1986,6 +1936,11 @@ "fs-extra": "^8.1.0" } }, + "node_modules/@manypkg/find-root/node_modules/@types/node": { + "version": "12.20.55", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", + "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" + }, "node_modules/@manypkg/find-root/node_modules/fs-extra": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", @@ -3601,10 +3556,13 @@ } }, "node_modules/@types/node": { - "version": "12.20.55", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", - "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==", - "license": "MIT" + "version": "22.7.6", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.7.6.tgz", + "integrity": "sha512-/d7Rnj0/ExXDMcioS78/kf1lMzYk4BZV8MZGTBKzTGZ6/406ukkbYlIsZmMPhcR5KlkunDHQLrtAVmSq7r+mSw==", + "dev": true, + "dependencies": { + "undici-types": "~6.19.2" + } }, "node_modules/@types/normalize-package-data": { "version": "2.4.4", @@ -17106,7 +17064,7 @@ "@repo/next-common": "*", "@repo/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.7.5", + "@types/node": "22.7.6", "tsup": "8.3.0", "tsx": "4.19.1", "typescript": "5.6.3" @@ -17116,38 +17074,18 @@ "redis": ">= 4.6" } }, - "packages/cache-handler/node_modules/@types/node": { - "version": "22.7.5", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.7.5.tgz", - "integrity": "sha512-jML7s2NAzMWc//QSJ1a3prpk78cOPchGvXJsC3C6R6PSMoooztvRVQEz89gmBTBY1SPMaqo5teB4uNHPdetShQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "undici-types": "~6.19.2" - } - }, "packages/json-replacer-reviver": { "name": "@neshca/json-replacer-reviver", "version": "1.1.3", "license": "MIT", "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.7.5", + "@types/node": "22.7.6", "tsup": "8.3.0", "tsx": "4.19.1", "typescript": "5.6.3" } }, - "packages/json-replacer-reviver/node_modules/@types/node": { - "version": "22.7.5", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.7.5.tgz", - "integrity": "sha512-jML7s2NAzMWc//QSJ1a3prpk78cOPchGvXJsC3C6R6PSMoooztvRVQEz89gmBTBY1SPMaqo5teB4uNHPdetShQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "undici-types": "~6.19.2" - } - }, "packages/server": { "name": "@neshca/server", "version": "1.1.2", @@ -17163,21 +17101,11 @@ "@repo/next-common": "*", "@repo/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.7.5", + "@types/node": "22.7.6", "tsup": "8.3.0", "tsx": "4.19.1", "typescript": "5.6.3" } - }, - "packages/server/node_modules/@types/node": { - "version": "22.7.5", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.7.5.tgz", - "integrity": "sha512-jML7s2NAzMWc//QSJ1a3prpk78cOPchGvXJsC3C6R6PSMoooztvRVQEz89gmBTBY1SPMaqo5teB4uNHPdetShQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "undici-types": "~6.19.2" - } } } } diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 2a7b6067..691f6068 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -86,7 +86,7 @@ "@repo/next-common": "*", "@repo/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.7.5", + "@types/node": "22.7.6", "tsup": "8.3.0", "tsx": "4.19.1", "typescript": "5.6.3" diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 6e742cf3..78df77b0 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -27,7 +27,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.7.5", + "@types/node": "22.7.6", "tsup": "8.3.0", "tsx": "4.19.1", "typescript": "5.6.3" diff --git a/packages/server/package.json b/packages/server/package.json index 8f0e6e8d..063e1cd1 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -31,7 +31,7 @@ "@repo/next-common": "*", "@repo/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.7.5", + "@types/node": "22.7.6", "tsup": "8.3.0", "tsx": "4.19.1", "typescript": "5.6.3" From 904596eb0a7356eb8e92ed91bc14cd385d26c078 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 18 Oct 2024 00:34:50 +0300 Subject: [PATCH 426/458] Bump @biomejs/biome from 1.9.3 to 1.9.4 (#820) Bumps [@biomejs/biome](https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome) from 1.9.3 to 1.9.4. - [Release notes](https://github.com/biomejs/biome/releases) - [Changelog](https://github.com/biomejs/biome/blob/main/CHANGELOG.md) - [Commits](https://github.com/biomejs/biome/commits/cli/v1.9.4/packages/@biomejs/biome) --- updated-dependencies: - dependency-name: "@biomejs/biome" dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 81 +++++++++++++++++++++-------------------------- package.json | 2 +- 2 files changed, 37 insertions(+), 46 deletions(-) diff --git a/package-lock.json b/package-lock.json index 35c927d3..3ac9bb83 100644 --- a/package-lock.json +++ b/package-lock.json @@ -19,7 +19,7 @@ }, "devDependencies": { "@actions/core": "1.11.1", - "@biomejs/biome": "1.9.3", + "@biomejs/biome": "1.9.4", "@repo/prettier-config": "*", "@repo/typescript-config": "*", "glob": "11.0.0", @@ -665,12 +665,11 @@ } }, "node_modules/@biomejs/biome": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/@biomejs/biome/-/biome-1.9.3.tgz", - "integrity": "sha512-POjAPz0APAmX33WOQFGQrwLvlu7WLV4CFJMlB12b6ZSg+2q6fYu9kZwLCOA+x83zXfcPd1RpuWOKJW0GbBwLIQ==", + "version": "1.9.4", + "resolved": "https://registry.npmjs.org/@biomejs/biome/-/biome-1.9.4.tgz", + "integrity": "sha512-1rkd7G70+o9KkTn5KLmDYXihGoTaIGO9PIIN2ZB7UJxFrWw04CZHPYiMRjYsaDvVV7hP1dYNRLxSANLaBFGpog==", "dev": true, "hasInstallScript": true, - "license": "MIT OR Apache-2.0", "bin": { "biome": "bin/biome" }, @@ -682,25 +681,24 @@ "url": "https://opencollective.com/biome" }, "optionalDependencies": { - "@biomejs/cli-darwin-arm64": "1.9.3", - "@biomejs/cli-darwin-x64": "1.9.3", - "@biomejs/cli-linux-arm64": "1.9.3", - "@biomejs/cli-linux-arm64-musl": "1.9.3", - "@biomejs/cli-linux-x64": "1.9.3", - "@biomejs/cli-linux-x64-musl": "1.9.3", - "@biomejs/cli-win32-arm64": "1.9.3", - "@biomejs/cli-win32-x64": "1.9.3" + "@biomejs/cli-darwin-arm64": "1.9.4", + "@biomejs/cli-darwin-x64": "1.9.4", + "@biomejs/cli-linux-arm64": "1.9.4", + "@biomejs/cli-linux-arm64-musl": "1.9.4", + "@biomejs/cli-linux-x64": "1.9.4", + "@biomejs/cli-linux-x64-musl": "1.9.4", + "@biomejs/cli-win32-arm64": "1.9.4", + "@biomejs/cli-win32-x64": "1.9.4" } }, "node_modules/@biomejs/cli-darwin-arm64": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-1.9.3.tgz", - "integrity": "sha512-QZzD2XrjJDUyIZK+aR2i5DDxCJfdwiYbUKu9GzkCUJpL78uSelAHAPy7m0GuPMVtF/Uo+OKv97W3P9nuWZangQ==", + "version": "1.9.4", + "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-1.9.4.tgz", + "integrity": "sha512-bFBsPWrNvkdKrNCYeAp+xo2HecOGPAy9WyNyB/jKnnedgzl4W4Hb9ZMzYNbf8dMCGmUdSavlYHiR01QaYR58cw==", "cpu": [ "arm64" ], "dev": true, - "license": "MIT OR Apache-2.0", "optional": true, "os": [ "darwin" @@ -710,14 +708,13 @@ } }, "node_modules/@biomejs/cli-darwin-x64": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-x64/-/cli-darwin-x64-1.9.3.tgz", - "integrity": "sha512-vSCoIBJE0BN3SWDFuAY/tRavpUtNoqiceJ5PrU3xDfsLcm/U6N93JSM0M9OAiC/X7mPPfejtr6Yc9vSgWlEgVw==", + "version": "1.9.4", + "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-x64/-/cli-darwin-x64-1.9.4.tgz", + "integrity": "sha512-ngYBh/+bEedqkSevPVhLP4QfVPCpb+4BBe2p7Xs32dBgs7rh9nY2AIYUL6BgLw1JVXV8GlpKmb/hNiuIxfPfZg==", "cpu": [ "x64" ], "dev": true, - "license": "MIT OR Apache-2.0", "optional": true, "os": [ "darwin" @@ -727,14 +724,13 @@ } }, "node_modules/@biomejs/cli-linux-arm64": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64/-/cli-linux-arm64-1.9.3.tgz", - "integrity": "sha512-vJkAimD2+sVviNTbaWOGqEBy31cW0ZB52KtpVIbkuma7PlfII3tsLhFa+cwbRAcRBkobBBhqZ06hXoZAN8NODQ==", + "version": "1.9.4", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64/-/cli-linux-arm64-1.9.4.tgz", + "integrity": "sha512-fJIW0+LYujdjUgJJuwesP4EjIBl/N/TcOX3IvIHJQNsAqvV2CHIogsmA94BPG6jZATS4Hi+xv4SkBBQSt1N4/g==", "cpu": [ "arm64" ], "dev": true, - "license": "MIT OR Apache-2.0", "optional": true, "os": [ "linux" @@ -744,14 +740,13 @@ } }, "node_modules/@biomejs/cli-linux-arm64-musl": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-1.9.3.tgz", - "integrity": "sha512-VBzyhaqqqwP3bAkkBrhVq50i3Uj9+RWuj+pYmXrMDgjS5+SKYGE56BwNw4l8hR3SmYbLSbEo15GcV043CDSk+Q==", + "version": "1.9.4", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-1.9.4.tgz", + "integrity": "sha512-v665Ct9WCRjGa8+kTr0CzApU0+XXtRgwmzIf1SeKSGAv+2scAlW6JR5PMFo6FzqqZ64Po79cKODKf3/AAmECqA==", "cpu": [ "arm64" ], "dev": true, - "license": "MIT OR Apache-2.0", "optional": true, "os": [ "linux" @@ -761,14 +756,13 @@ } }, "node_modules/@biomejs/cli-linux-x64": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64/-/cli-linux-x64-1.9.3.tgz", - "integrity": "sha512-x220V4c+romd26Mu1ptU+EudMXVS4xmzKxPVb9mgnfYlN4Yx9vD5NZraSx/onJnd3Gh/y8iPUdU5CDZJKg9COA==", + "version": "1.9.4", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64/-/cli-linux-x64-1.9.4.tgz", + "integrity": "sha512-lRCJv/Vi3Vlwmbd6K+oQ0KhLHMAysN8lXoCI7XeHlxaajk06u7G+UsFSO01NAs5iYuWKmVZjmiOzJ0OJmGsMwg==", "cpu": [ "x64" ], "dev": true, - "license": "MIT OR Apache-2.0", "optional": true, "os": [ "linux" @@ -778,14 +772,13 @@ } }, "node_modules/@biomejs/cli-linux-x64-musl": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-1.9.3.tgz", - "integrity": "sha512-TJmnOG2+NOGM72mlczEsNki9UT+XAsMFAOo8J0me/N47EJ/vkLXxf481evfHLlxMejTY6IN8SdRSiPVLv6AHlA==", + "version": "1.9.4", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-1.9.4.tgz", + "integrity": "sha512-gEhi/jSBhZ2m6wjV530Yy8+fNqG8PAinM3oV7CyO+6c3CEh16Eizm21uHVsyVBEB6RIM8JHIl6AGYCv6Q6Q9Tg==", "cpu": [ "x64" ], "dev": true, - "license": "MIT OR Apache-2.0", "optional": true, "os": [ "linux" @@ -795,14 +788,13 @@ } }, "node_modules/@biomejs/cli-win32-arm64": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-arm64/-/cli-win32-arm64-1.9.3.tgz", - "integrity": "sha512-lg/yZis2HdQGsycUvHWSzo9kOvnGgvtrYRgoCEwPBwwAL8/6crOp3+f47tPwI/LI1dZrhSji7PNsGKGHbwyAhw==", + "version": "1.9.4", + "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-arm64/-/cli-win32-arm64-1.9.4.tgz", + "integrity": "sha512-tlbhLk+WXZmgwoIKwHIHEBZUwxml7bRJgk0X2sPyNR3S93cdRq6XulAZRQJ17FYGGzWne0fgrXBKpl7l4M87Hg==", "cpu": [ "arm64" ], "dev": true, - "license": "MIT OR Apache-2.0", "optional": true, "os": [ "win32" @@ -812,14 +804,13 @@ } }, "node_modules/@biomejs/cli-win32-x64": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-x64/-/cli-win32-x64-1.9.3.tgz", - "integrity": "sha512-cQMy2zanBkVLpmmxXdK6YePzmZx0s5Z7KEnwmrW54rcXK3myCNbQa09SwGZ8i/8sLw0H9F3X7K4rxVNGU8/D4Q==", + "version": "1.9.4", + "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-x64/-/cli-win32-x64-1.9.4.tgz", + "integrity": "sha512-8Y5wMhVIPaWe6jw2H+KlEm4wP/f7EW3810ZLmDlrEEy5KvBsb9ECEfu/kMWD484ijfQ8+nIi0giMgu9g1UAuuA==", "cpu": [ "x64" ], "dev": true, - "license": "MIT OR Apache-2.0", "optional": true, "os": [ "win32" diff --git a/package.json b/package.json index 7cc8c696..7376a340 100644 --- a/package.json +++ b/package.json @@ -35,7 +35,7 @@ }, "devDependencies": { "@actions/core": "1.11.1", - "@biomejs/biome": "1.9.3", + "@biomejs/biome": "1.9.4", "@repo/prettier-config": "*", "@repo/typescript-config": "*", "glob": "11.0.0", From 9ef96c5c2191c8c5e4edad1044bd0e4cd6ba385a Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Fri, 18 Oct 2024 11:02:40 +0300 Subject: [PATCH 427/458] Version Packages (#817) Co-authored-by: github-actions[bot] --- .changeset/tricky-terms-attend.md | 5 ----- packages/cache-handler/CHANGELOG.md | 6 ++++++ packages/cache-handler/package.json | 2 +- 3 files changed, 7 insertions(+), 6 deletions(-) delete mode 100644 .changeset/tricky-terms-attend.md diff --git a/.changeset/tricky-terms-attend.md b/.changeset/tricky-terms-attend.md deleted file mode 100644 index 1ab9bc92..00000000 --- a/.changeset/tricky-terms-attend.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@neshca/cache-handler': patch ---- - -Refactor monorepo setup and release workflow. No functional changes. diff --git a/packages/cache-handler/CHANGELOG.md b/packages/cache-handler/CHANGELOG.md index c253e0ca..a7aaae37 100644 --- a/packages/cache-handler/CHANGELOG.md +++ b/packages/cache-handler/CHANGELOG.md @@ -1,5 +1,11 @@ # @neshca/cache-handler +## 1.8.1 + +### Patch Changes + +- 3a91160: Refactor monorepo setup and release workflow. No functional changes. + ## 1.8.0 ### Minor Changes diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 691f6068..a905cfcc 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -1,6 +1,6 @@ { "name": "@neshca/cache-handler", - "version": "1.8.0", + "version": "1.8.1", "description": "Next.js self-hosting simplified.", "keywords": [ "cache", From 5f05775c7d806559f3df766392bf3b4a9ff562f2 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 19 Oct 2024 11:53:25 +0300 Subject: [PATCH 428/458] Bump the turbo group with 2 updates (#821) Bumps the turbo group with 2 updates: [turbo](https://github.com/vercel/turborepo) and [eslint-config-turbo](https://github.com/vercel/turborepo/tree/HEAD/packages/eslint-config-turbo). Updates `turbo` from 2.1.3 to 2.2.0 - [Release notes](https://github.com/vercel/turborepo/releases) - [Changelog](https://github.com/vercel/turborepo/blob/main/release.md) - [Commits](https://github.com/vercel/turborepo/compare/v2.1.3...v2.2.0) Updates `eslint-config-turbo` from 2.1.3 to 2.2.0 - [Release notes](https://github.com/vercel/turborepo/releases) - [Changelog](https://github.com/vercel/turborepo/blob/main/release.md) - [Commits](https://github.com/vercel/turborepo/commits/v2.2.0/packages/eslint-config-turbo) --- updated-dependencies: - dependency-name: turbo dependency-type: direct:development update-type: version-update:semver-minor dependency-group: turbo - dependency-name: eslint-config-turbo dependency-type: direct:development update-type: version-update:semver-minor dependency-group: turbo ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- internal/eslint-config/package.json | 2 +- package-lock.json | 84 +++++++++++++---------------- package.json | 2 +- 3 files changed, 39 insertions(+), 49 deletions(-) diff --git a/internal/eslint-config/package.json b/internal/eslint-config/package.json index c26cf00c..ff459db4 100644 --- a/internal/eslint-config/package.json +++ b/internal/eslint-config/package.json @@ -10,7 +10,7 @@ "@typescript-eslint/parser": "7.18.0", "@vercel/style-guide": "6.0.0", "eslint-config-prettier": "9.1.0", - "eslint-config-turbo": "2.1.3", + "eslint-config-turbo": "2.2.0", "eslint-plugin-only-warn": "1.1.0", "typescript": "5.6.3" } diff --git a/package-lock.json b/package-lock.json index 3ac9bb83..e60afd93 100644 --- a/package-lock.json +++ b/package-lock.json @@ -25,7 +25,7 @@ "glob": "11.0.0", "prettier": "3.3.3", "rimraf": "6.0.1", - "turbo": "2.1.3" + "turbo": "2.2.0" }, "engines": { "node": ">=20.9.0", @@ -108,7 +108,7 @@ "@typescript-eslint/parser": "7.18.0", "@vercel/style-guide": "6.0.0", "eslint-config-prettier": "9.1.0", - "eslint-config-turbo": "2.1.3", + "eslint-config-turbo": "2.2.0", "eslint-plugin-only-warn": "1.1.0", "typescript": "5.6.3" } @@ -6659,13 +6659,12 @@ } }, "node_modules/eslint-config-turbo": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/eslint-config-turbo/-/eslint-config-turbo-2.1.3.tgz", - "integrity": "sha512-smdkhd01V/e/I4EjJxaZA1kxZ1vdFCHpyryolxLtRBP0bZTrHDYh1H6NAyZ3Fy1jkhsQzXw+L+6m17ygROvNFw==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/eslint-config-turbo/-/eslint-config-turbo-2.2.0.tgz", + "integrity": "sha512-AN41RIh6HuH62AQGFmGV/5h/2rL3S88/Xxvrwf29E8wo79YWMh170weWgUDT57M8OPiz9p3/Dcw/BmVh2WlbXw==", "dev": true, - "license": "MIT", "dependencies": { - "eslint-plugin-turbo": "2.1.3" + "eslint-plugin-turbo": "2.2.0" }, "peerDependencies": { "eslint": ">6.6.0" @@ -7333,11 +7332,10 @@ } }, "node_modules/eslint-plugin-turbo": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/eslint-plugin-turbo/-/eslint-plugin-turbo-2.1.3.tgz", - "integrity": "sha512-I9vPArzyOSYa6bm0iMCgD07MgdExc1VK2wGuVz21g4BUdj83w7mDKyCXR2rwOtCEW+wemFwgxanJ81imQZijNg==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-turbo/-/eslint-plugin-turbo-2.2.0.tgz", + "integrity": "sha512-Xu99K8R6/wEVX34WreTbItyX25YYqW7VZU7/nyvKtlusHdsO6Be8IfhWIzIOgThigq4IiBsZXk/lhdcG1KzaNQ==", "dev": true, - "license": "MIT", "dependencies": { "dotenv": "16.0.3" }, @@ -7350,7 +7348,6 @@ "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.0.3.tgz", "integrity": "sha512-7GO6HghkA5fYG9TYnNxi14/7K9f5occMlp3zXAuSxn7CKCxt9xbNWG7yF8hTCSUchlfWSe3uLmlPfigevRItzQ==", "dev": true, - "license": "BSD-2-Clause", "engines": { "node": ">=12" } @@ -15992,102 +15989,95 @@ } }, "node_modules/turbo": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/turbo/-/turbo-2.1.3.tgz", - "integrity": "sha512-lY0yj2GH2a2a3NExZ3rGe+rHUVeFE2aXuRAue57n+08E7Z7N7YCmynju0kPC1grAQzERmoLpKrmzmWd+PNiADw==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/turbo/-/turbo-2.2.0.tgz", + "integrity": "sha512-uyr+tFAKDKWIpihuUVYpEvuzQ3Pc+kICf0fbRzzc/86ram74azvwTXplzRQ+BUv8zTjwIRKNhrH5L4q0rgJyMw==", "dev": true, - "license": "MIT", "bin": { "turbo": "bin/turbo" }, "optionalDependencies": { - "turbo-darwin-64": "2.1.3", - "turbo-darwin-arm64": "2.1.3", - "turbo-linux-64": "2.1.3", - "turbo-linux-arm64": "2.1.3", - "turbo-windows-64": "2.1.3", - "turbo-windows-arm64": "2.1.3" + "turbo-darwin-64": "2.2.0", + "turbo-darwin-arm64": "2.2.0", + "turbo-linux-64": "2.2.0", + "turbo-linux-arm64": "2.2.0", + "turbo-windows-64": "2.2.0", + "turbo-windows-arm64": "2.2.0" } }, "node_modules/turbo-darwin-64": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/turbo-darwin-64/-/turbo-darwin-64-2.1.3.tgz", - "integrity": "sha512-ouJOm0g0YyoBuhmikEujVCBGo3Zr0lbSOWFIsQtWUTItC88F2w2byhjtsYGPXQwMlTbXwmoBU2lOCfWNkeEwHQ==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/turbo-darwin-64/-/turbo-darwin-64-2.2.0.tgz", + "integrity": "sha512-mJK+7hpvGsxyXfx2UTdewisXGIikRORoj25OKagsNw7dE7D1j0HnfWrjguIshlmFoQu18E5ipbdUAzjHdQGPkg==", "cpu": [ "x64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "darwin" ] }, "node_modules/turbo-darwin-arm64": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/turbo-darwin-arm64/-/turbo-darwin-arm64-2.1.3.tgz", - "integrity": "sha512-j2FOJsK4LAOtHQlb3Oom0yWB/Vi0nF1ljInr311mVzHoFAJRZtfW2fRvdZRb/lBUwjSp8be58qWHzANIcrA0OA==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/turbo-darwin-arm64/-/turbo-darwin-arm64-2.2.0.tgz", + "integrity": "sha512-uStU2I1aMSj8/ord3gNXdr/k1Xk+pflfMPS4d/oQUAPld8L9plbQ8JSgoXsFoJYyU9vhTeXkjLkpnQxXoGnb9w==", "cpu": [ "arm64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "darwin" ] }, "node_modules/turbo-linux-64": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/turbo-linux-64/-/turbo-linux-64-2.1.3.tgz", - "integrity": "sha512-ubRHkI1gSel7H7wsmxKK8C9UlLWqg/2dkCC88LFupaK6TKgvBKqDqA0Z1M9C/escK0Jsle2k0H8bybV9OYIl4Q==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/turbo-linux-64/-/turbo-linux-64-2.2.0.tgz", + "integrity": "sha512-dVy/hquEDBy7trsSb5TynDGeS2iqcI9QTfC2kLZnsgPo6WWURXESN+AFChGxgZ2yp2CKrj5eZhnHdtRbP0a5EQ==", "cpu": [ "x64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "linux" ] }, "node_modules/turbo-linux-arm64": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/turbo-linux-arm64/-/turbo-linux-arm64-2.1.3.tgz", - "integrity": "sha512-LffUL+e5wv7BtD6DgnM2kKOlDkMo2eRjhbAjVnrCD3wi2ug0tl6NDzajnHHjtaMyOnIf4AvzSKdLWsBxafGBQA==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/turbo-linux-arm64/-/turbo-linux-arm64-2.2.0.tgz", + "integrity": "sha512-YuCmCBQsvH8RZGDBqFXOm49UY3mJFRahQ7J8IT4KQX3O8zIPTu84715ILUTznElhlYY7IKoqfenovVzYFzEbMQ==", "cpu": [ "arm64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "linux" ] }, "node_modules/turbo-windows-64": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/turbo-windows-64/-/turbo-windows-64-2.1.3.tgz", - "integrity": "sha512-S9SvcZZoaq5jKr6kA6eF7/xgQhVn8Vh7PVy5lono9zybvhyL4eY++y2PaLToIgL8G9IcbLmgOC73ExNjFBg9XQ==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/turbo-windows-64/-/turbo-windows-64-2.2.0.tgz", + "integrity": "sha512-6WegPi7hEbKuQXR/VGJXGO0jV9tm+dyRNH6e3Edb3DMaa8ThnzfjxMmrvQwLbGgMNvjBRBEKAHhOAnE6FXdPew==", "cpu": [ "x64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "win32" ] }, "node_modules/turbo-windows-arm64": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/turbo-windows-arm64/-/turbo-windows-arm64-2.1.3.tgz", - "integrity": "sha512-twlEo8lRrGbrR6T/ZklUIquW3IlFCEtywklgVA81aIrSBm56+GEVpSrHhIlsx1hiYeSNrs+GpDwZGe+V7fvEVQ==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/turbo-windows-arm64/-/turbo-windows-arm64-2.2.0.tgz", + "integrity": "sha512-kmk+A3aUy4dWhTVzW1itrWRtIilv4dFNRThfucBNYRL4Huyug+8qdX51iJjKyHMi0x51rcND62lukWWtFZhCSA==", "cpu": [ "arm64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "win32" @@ -17045,7 +17035,7 @@ }, "packages/cache-handler": { "name": "@neshca/cache-handler", - "version": "1.8.0", + "version": "1.8.1", "license": "MIT", "dependencies": { "cluster-key-slot": "1.1.2", diff --git a/package.json b/package.json index 7376a340..2f945e75 100644 --- a/package.json +++ b/package.json @@ -41,7 +41,7 @@ "glob": "11.0.0", "prettier": "3.3.3", "rimraf": "6.0.1", - "turbo": "2.1.3" + "turbo": "2.2.0" }, "packageManager": "npm@10.7.0", "engines": { From 58fe44c1abb20a3738de153152537b33e2448f49 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 21 Oct 2024 10:11:04 +0300 Subject: [PATCH 429/458] Bump the turbo group with 2 updates (#822) Bumps the turbo group with 2 updates: [turbo](https://github.com/vercel/turborepo) and [eslint-config-turbo](https://github.com/vercel/turborepo/tree/HEAD/packages/eslint-config-turbo). Updates `turbo` from 2.2.0 to 2.2.1 - [Release notes](https://github.com/vercel/turborepo/releases) - [Changelog](https://github.com/vercel/turborepo/blob/main/release.md) - [Commits](https://github.com/vercel/turborepo/compare/v2.2.0...v2.2.1) Updates `eslint-config-turbo` from 2.2.0 to 2.2.1 - [Release notes](https://github.com/vercel/turborepo/releases) - [Changelog](https://github.com/vercel/turborepo/blob/main/release.md) - [Commits](https://github.com/vercel/turborepo/commits/v2.2.1/packages/eslint-config-turbo) --- updated-dependencies: - dependency-name: turbo dependency-type: direct:development update-type: version-update:semver-patch dependency-group: turbo - dependency-name: eslint-config-turbo dependency-type: direct:development update-type: version-update:semver-patch dependency-group: turbo ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- internal/eslint-config/package.json | 2 +- package-lock.json | 72 ++++++++++++++--------------- package.json | 2 +- 3 files changed, 38 insertions(+), 38 deletions(-) diff --git a/internal/eslint-config/package.json b/internal/eslint-config/package.json index ff459db4..877b798f 100644 --- a/internal/eslint-config/package.json +++ b/internal/eslint-config/package.json @@ -10,7 +10,7 @@ "@typescript-eslint/parser": "7.18.0", "@vercel/style-guide": "6.0.0", "eslint-config-prettier": "9.1.0", - "eslint-config-turbo": "2.2.0", + "eslint-config-turbo": "2.2.1", "eslint-plugin-only-warn": "1.1.0", "typescript": "5.6.3" } diff --git a/package-lock.json b/package-lock.json index e60afd93..0450059c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -25,7 +25,7 @@ "glob": "11.0.0", "prettier": "3.3.3", "rimraf": "6.0.1", - "turbo": "2.2.0" + "turbo": "2.2.1" }, "engines": { "node": ">=20.9.0", @@ -108,7 +108,7 @@ "@typescript-eslint/parser": "7.18.0", "@vercel/style-guide": "6.0.0", "eslint-config-prettier": "9.1.0", - "eslint-config-turbo": "2.2.0", + "eslint-config-turbo": "2.2.1", "eslint-plugin-only-warn": "1.1.0", "typescript": "5.6.3" } @@ -6659,12 +6659,12 @@ } }, "node_modules/eslint-config-turbo": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/eslint-config-turbo/-/eslint-config-turbo-2.2.0.tgz", - "integrity": "sha512-AN41RIh6HuH62AQGFmGV/5h/2rL3S88/Xxvrwf29E8wo79YWMh170weWgUDT57M8OPiz9p3/Dcw/BmVh2WlbXw==", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/eslint-config-turbo/-/eslint-config-turbo-2.2.1.tgz", + "integrity": "sha512-cDvPCMSlcyNe5+a3tEZoF/gsZ8WrCddAdqcN/qvBGVD7IL1XdxWerFCfgU/R2fT9JFjyqRhsJnmcbbbwyXockw==", "dev": true, "dependencies": { - "eslint-plugin-turbo": "2.2.0" + "eslint-plugin-turbo": "2.2.1" }, "peerDependencies": { "eslint": ">6.6.0" @@ -7332,9 +7332,9 @@ } }, "node_modules/eslint-plugin-turbo": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-turbo/-/eslint-plugin-turbo-2.2.0.tgz", - "integrity": "sha512-Xu99K8R6/wEVX34WreTbItyX25YYqW7VZU7/nyvKtlusHdsO6Be8IfhWIzIOgThigq4IiBsZXk/lhdcG1KzaNQ==", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-turbo/-/eslint-plugin-turbo-2.2.1.tgz", + "integrity": "sha512-ajKdYtqLC238QGA4SpAFHp6dZICcEktB5oLOnMXz84M+pS9FlGBiUmonrBkmdTEm5jakxqmSdt/cq9J2hWm6mg==", "dev": true, "dependencies": { "dotenv": "16.0.3" @@ -15989,26 +15989,26 @@ } }, "node_modules/turbo": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/turbo/-/turbo-2.2.0.tgz", - "integrity": "sha512-uyr+tFAKDKWIpihuUVYpEvuzQ3Pc+kICf0fbRzzc/86ram74azvwTXplzRQ+BUv8zTjwIRKNhrH5L4q0rgJyMw==", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/turbo/-/turbo-2.2.1.tgz", + "integrity": "sha512-clZFkh6U6NpsLKBVZYRjlZjRTfju1Z5STqvFVaOGu5443uM75alJe1nCYH9pQ9YJoiOvXAqA2rDHWN5kLS9JMg==", "dev": true, "bin": { "turbo": "bin/turbo" }, "optionalDependencies": { - "turbo-darwin-64": "2.2.0", - "turbo-darwin-arm64": "2.2.0", - "turbo-linux-64": "2.2.0", - "turbo-linux-arm64": "2.2.0", - "turbo-windows-64": "2.2.0", - "turbo-windows-arm64": "2.2.0" + "turbo-darwin-64": "2.2.1", + "turbo-darwin-arm64": "2.2.1", + "turbo-linux-64": "2.2.1", + "turbo-linux-arm64": "2.2.1", + "turbo-windows-64": "2.2.1", + "turbo-windows-arm64": "2.2.1" } }, "node_modules/turbo-darwin-64": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/turbo-darwin-64/-/turbo-darwin-64-2.2.0.tgz", - "integrity": "sha512-mJK+7hpvGsxyXfx2UTdewisXGIikRORoj25OKagsNw7dE7D1j0HnfWrjguIshlmFoQu18E5ipbdUAzjHdQGPkg==", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/turbo-darwin-64/-/turbo-darwin-64-2.2.1.tgz", + "integrity": "sha512-jltMdSQ+7rQDVaorjW729PCw6fwAn1MgZSdoa0Gil7GZCOF3SnR/ok0uJw6G5mdm6F5XM8ZTlz+mdGzBLuBRaA==", "cpu": [ "x64" ], @@ -16019,9 +16019,9 @@ ] }, "node_modules/turbo-darwin-arm64": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/turbo-darwin-arm64/-/turbo-darwin-arm64-2.2.0.tgz", - "integrity": "sha512-uStU2I1aMSj8/ord3gNXdr/k1Xk+pflfMPS4d/oQUAPld8L9plbQ8JSgoXsFoJYyU9vhTeXkjLkpnQxXoGnb9w==", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/turbo-darwin-arm64/-/turbo-darwin-arm64-2.2.1.tgz", + "integrity": "sha512-RHW0c1NonsJXXlutlZeunmhLanf0/WbeizFfYgWuTEaJE4MbbhyD/RG4Fm/7iob5kxQ4Es2TzfDPqyMqpIO0GA==", "cpu": [ "arm64" ], @@ -16032,9 +16032,9 @@ ] }, "node_modules/turbo-linux-64": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/turbo-linux-64/-/turbo-linux-64-2.2.0.tgz", - "integrity": "sha512-dVy/hquEDBy7trsSb5TynDGeS2iqcI9QTfC2kLZnsgPo6WWURXESN+AFChGxgZ2yp2CKrj5eZhnHdtRbP0a5EQ==", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/turbo-linux-64/-/turbo-linux-64-2.2.1.tgz", + "integrity": "sha512-RasrjV+i2B90hoR8r6B2Btf2/ebNT5MJbhkpY0G1EN06E1IkjCKfAXj/1Dwmjy9+Zo0NC2r69L3HxRrtpar8jQ==", "cpu": [ "x64" ], @@ -16045,9 +16045,9 @@ ] }, "node_modules/turbo-linux-arm64": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/turbo-linux-arm64/-/turbo-linux-arm64-2.2.0.tgz", - "integrity": "sha512-YuCmCBQsvH8RZGDBqFXOm49UY3mJFRahQ7J8IT4KQX3O8zIPTu84715ILUTznElhlYY7IKoqfenovVzYFzEbMQ==", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/turbo-linux-arm64/-/turbo-linux-arm64-2.2.1.tgz", + "integrity": "sha512-LNkUUJuu1gNkhlo7Ky/zilXEiajLoGlWLiKT1XV5neEf+x1s+aU9Hzd/+HhSVMiyI8l7z6zLbrM1a6+v4co/SQ==", "cpu": [ "arm64" ], @@ -16058,9 +16058,9 @@ ] }, "node_modules/turbo-windows-64": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/turbo-windows-64/-/turbo-windows-64-2.2.0.tgz", - "integrity": "sha512-6WegPi7hEbKuQXR/VGJXGO0jV9tm+dyRNH6e3Edb3DMaa8ThnzfjxMmrvQwLbGgMNvjBRBEKAHhOAnE6FXdPew==", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/turbo-windows-64/-/turbo-windows-64-2.2.1.tgz", + "integrity": "sha512-Mn5tlFrLzlQ6tW6wTWNlyT1osXuDUg0VT1VAjRpmRXlK2Zi3oKVVG0rs0nkkq4rmuheryD1xyuGPN9nFKbAn/A==", "cpu": [ "x64" ], @@ -16071,9 +16071,9 @@ ] }, "node_modules/turbo-windows-arm64": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/turbo-windows-arm64/-/turbo-windows-arm64-2.2.0.tgz", - "integrity": "sha512-kmk+A3aUy4dWhTVzW1itrWRtIilv4dFNRThfucBNYRL4Huyug+8qdX51iJjKyHMi0x51rcND62lukWWtFZhCSA==", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/turbo-windows-arm64/-/turbo-windows-arm64-2.2.1.tgz", + "integrity": "sha512-bvYOJ3SMN00yiem+uAqwRMbUMau/KiMzJYxnD0YkFo6INc08z8gZi5g0GLZAR7g/L3JegktX3UQW2cJvryjvLg==", "cpu": [ "arm64" ], diff --git a/package.json b/package.json index 2f945e75..10653635 100644 --- a/package.json +++ b/package.json @@ -41,7 +41,7 @@ "glob": "11.0.0", "prettier": "3.3.3", "rimraf": "6.0.1", - "turbo": "2.2.0" + "turbo": "2.2.1" }, "packageManager": "npm@10.7.0", "engines": { From e5fe4155b7663a9fa6b8f03c4f010d2815781937 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 21 Oct 2024 12:21:59 +0300 Subject: [PATCH 430/458] Bump @types/node from 22.7.6 to 22.7.7 in the definitely-typed group (#823) Bumps the definitely-typed group with 1 update: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node). Updates `@types/node` from 22.7.6 to 22.7.7 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) --- updated-dependencies: - dependency-name: "@types/node" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- internal/backend/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 22 ++++++++++----------- packages/cache-handler/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 9 files changed, 19 insertions(+), 19 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index c2a2b7b6..c87bd360 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -28,7 +28,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.12", - "@types/node": "22.7.6", + "@types/node": "22.7.7", "@types/react": "18.3.11", "@types/react-dom": "18.3.1", "dotenv-cli": "7.4.2", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 303b04de..5fc59bf4 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -22,7 +22,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.12", - "@types/node": "22.7.6", + "@types/node": "22.7.7", "@types/react": "18.3.11", "@types/react-dom": "18.3.1", "eslint": "8.57.1", diff --git a/internal/backend/package.json b/internal/backend/package.json index 1cb5fc3a..861d59d8 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -14,7 +14,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.7.6", + "@types/node": "22.7.7", "pino-pretty": "11.3.0", "tsx": "4.19.1", "typescript": "5.6.3" diff --git a/internal/next-common/package.json b/internal/next-common/package.json index bb0fa3ca..09ef2461 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -12,7 +12,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.7.6", + "@types/node": "22.7.7", "typescript": "5.6.3" } } diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index 4667709f..1fe81ad0 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -13,7 +13,7 @@ "devDependencies": { "@repo/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "22.7.6", + "@types/node": "22.7.7", "typescript": "5.6.3" } } diff --git a/package-lock.json b/package-lock.json index 0450059c..22a259f6 100644 --- a/package-lock.json +++ b/package-lock.json @@ -50,7 +50,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.12", - "@types/node": "22.7.6", + "@types/node": "22.7.7", "@types/react": "18.3.11", "@types/react-dom": "18.3.1", "dotenv-cli": "7.4.2", @@ -76,7 +76,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.12", - "@types/node": "22.7.6", + "@types/node": "22.7.7", "@types/react": "18.3.11", "@types/react-dom": "18.3.1", "eslint": "8.57.1", @@ -94,7 +94,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.7.6", + "@types/node": "22.7.7", "pino-pretty": "11.3.0", "tsx": "4.19.1", "typescript": "5.6.3" @@ -122,7 +122,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.7.6", + "@types/node": "22.7.7", "typescript": "5.6.3" } }, @@ -136,7 +136,7 @@ "devDependencies": { "@repo/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "22.7.6", + "@types/node": "22.7.7", "typescript": "5.6.3" } }, @@ -3547,9 +3547,9 @@ } }, "node_modules/@types/node": { - "version": "22.7.6", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.7.6.tgz", - "integrity": "sha512-/d7Rnj0/ExXDMcioS78/kf1lMzYk4BZV8MZGTBKzTGZ6/406ukkbYlIsZmMPhcR5KlkunDHQLrtAVmSq7r+mSw==", + "version": "22.7.7", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.7.7.tgz", + "integrity": "sha512-SRxCrrg9CL/y54aiMCG3edPKdprgMVGDXjA3gB8UmmBW5TcXzRUYAh8EWzTnSJFAd1rgImPELza+A3bJ+qxz8Q==", "dev": true, "dependencies": { "undici-types": "~6.19.2" @@ -17045,7 +17045,7 @@ "@repo/next-common": "*", "@repo/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.7.6", + "@types/node": "22.7.7", "tsup": "8.3.0", "tsx": "4.19.1", "typescript": "5.6.3" @@ -17061,7 +17061,7 @@ "license": "MIT", "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.7.6", + "@types/node": "22.7.7", "tsup": "8.3.0", "tsx": "4.19.1", "typescript": "5.6.3" @@ -17082,7 +17082,7 @@ "@repo/next-common": "*", "@repo/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.7.6", + "@types/node": "22.7.7", "tsup": "8.3.0", "tsx": "4.19.1", "typescript": "5.6.3" diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index a905cfcc..1c2d6d35 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -86,7 +86,7 @@ "@repo/next-common": "*", "@repo/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.7.6", + "@types/node": "22.7.7", "tsup": "8.3.0", "tsx": "4.19.1", "typescript": "5.6.3" diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 78df77b0..e13b5e7c 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -27,7 +27,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.7.6", + "@types/node": "22.7.7", "tsup": "8.3.0", "tsx": "4.19.1", "typescript": "5.6.3" diff --git a/packages/server/package.json b/packages/server/package.json index 063e1cd1..02074458 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -31,7 +31,7 @@ "@repo/next-common": "*", "@repo/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.7.6", + "@types/node": "22.7.7", "tsup": "8.3.0", "tsx": "4.19.1", "typescript": "5.6.3" From e55cfbdb1bf0b2f88a34985d1732c909899696d9 Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Mon, 21 Oct 2024 12:45:03 +0300 Subject: [PATCH 431/458] Add ipa-reader link to readme and docs (#824) --- README.md | 2 +- docs/cache-handler-docs/src/pages/index.mdx | 2 +- packages/cache-handler/README.md | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index d9831e2f..aa9d7e60 100644 --- a/README.md +++ b/README.md @@ -4,7 +4,7 @@ [![Dependencies](https://img.shields.io/npm/dm/@neshca/cache-handler)](https://www.npmjs.com/package/@neshca/cache-handler) [![License](https://img.shields.io/npm/l/express.svg)](https://github.com/caching-tools/next-shared-cache/blob/canary/packages/cache-handler/LICENSE) -Welcome to [`@neshca/cache-handler`](./packages/cache-handler/README.md) (pronounced `/ˈnæʃkʌ/`), a specialized ISR/Data cache API crafted for Next.js applications. This library simplifies configuring shared cache strategies in distributed environments, such as multiple, independent application instances. It offers a flexible and easy-to-integrate solution for custom cache strategies, especially for Redis. +Welcome to [`@neshca/cache-handler`](./packages/cache-handler/README.md) (pronounced [`/ˈnæʃkʌ/`](http://ipa-reader.xyz/?text=%CB%88n%C3%A6%CA%83k%CA%8C)), a specialized ISR/Data cache API crafted for Next.js applications. This library simplifies configuring shared cache strategies in distributed environments, such as multiple, independent application instances. It offers a flexible and easy-to-integrate solution for custom cache strategies, especially for Redis. ### Features diff --git a/docs/cache-handler-docs/src/pages/index.mdx b/docs/cache-handler-docs/src/pages/index.mdx index 82ca3d62..eed32bc5 100644 --- a/docs/cache-handler-docs/src/pages/index.mdx +++ b/docs/cache-handler-docs/src/pages/index.mdx @@ -1,4 +1,4 @@ -Welcome to `@neshca/cache-handler` (pronounced /ˈnæʃkʌ/), a specialized ISR/Data cache API crafted for Next.js applications. This library simplifies configuring shared cache strategies in distributed environments, such as multiple, independent application instances. It offers a flexible and easy-to-integrate solution for custom cache strategies, especially for Redis. +Welcome to `@neshca/cache-handler` (pronounced [`/ˈnæʃkʌ/`](http://ipa-reader.xyz/?text=%CB%88n%C3%A6%CA%83k%CA%8C)), a specialized ISR/Data cache API crafted for Next.js applications. This library simplifies configuring shared cache strategies in distributed environments, such as multiple, independent application instances. It offers a flexible and easy-to-integrate solution for custom cache strategies, especially for Redis. --- diff --git a/packages/cache-handler/README.md b/packages/cache-handler/README.md index 7a4315b6..61a5adeb 100644 --- a/packages/cache-handler/README.md +++ b/packages/cache-handler/README.md @@ -27,7 +27,7 @@ Check out the [changelog](https://github.com/caching-tools/next-shared-cache/blo ## Overview -Welcome to `@neshca/cache-handler` (pronounced /ˈnæʃkʌ/), a specialized ISR/Data cache API crafted for Next.js applications. This library simplifies configuring shared cache strategies in distributed environments, such as multiple, independent application instances. It offers a flexible and easy-to-integrate solution for custom cache strategies, especially for Redis. +Welcome to `@neshca/cache-handler` (pronounced [`/ˈnæʃkʌ/`](http://ipa-reader.xyz/?text=%CB%88n%C3%A6%CA%83k%CA%8C)), a specialized ISR/Data cache API crafted for Next.js applications. This library simplifies configuring shared cache strategies in distributed environments, such as multiple, independent application instances. It offers a flexible and easy-to-integrate solution for custom cache strategies, especially for Redis. ### Features From f43cf7116eefd855e5707fc5c117a40413ac398f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 22 Oct 2024 10:38:22 +0300 Subject: [PATCH 432/458] Bump the turbo group with 2 updates (#827) Bumps the turbo group with 2 updates: [turbo](https://github.com/vercel/turborepo) and [eslint-config-turbo](https://github.com/vercel/turborepo/tree/HEAD/packages/eslint-config-turbo). Updates `turbo` from 2.2.1 to 2.2.3 - [Release notes](https://github.com/vercel/turborepo/releases) - [Changelog](https://github.com/vercel/turborepo/blob/main/release.md) - [Commits](https://github.com/vercel/turborepo/compare/v2.2.1...v2.2.3) Updates `eslint-config-turbo` from 2.2.1 to 2.2.3 - [Release notes](https://github.com/vercel/turborepo/releases) - [Changelog](https://github.com/vercel/turborepo/blob/main/release.md) - [Commits](https://github.com/vercel/turborepo/commits/v2.2.3/packages/eslint-config-turbo) --- updated-dependencies: - dependency-name: turbo dependency-type: direct:development update-type: version-update:semver-patch dependency-group: turbo - dependency-name: eslint-config-turbo dependency-type: direct:development update-type: version-update:semver-patch dependency-group: turbo ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- internal/eslint-config/package.json | 2 +- package-lock.json | 72 ++++++++++++++--------------- package.json | 2 +- 3 files changed, 38 insertions(+), 38 deletions(-) diff --git a/internal/eslint-config/package.json b/internal/eslint-config/package.json index 877b798f..7ac2a4bb 100644 --- a/internal/eslint-config/package.json +++ b/internal/eslint-config/package.json @@ -10,7 +10,7 @@ "@typescript-eslint/parser": "7.18.0", "@vercel/style-guide": "6.0.0", "eslint-config-prettier": "9.1.0", - "eslint-config-turbo": "2.2.1", + "eslint-config-turbo": "2.2.3", "eslint-plugin-only-warn": "1.1.0", "typescript": "5.6.3" } diff --git a/package-lock.json b/package-lock.json index 22a259f6..b12684e9 100644 --- a/package-lock.json +++ b/package-lock.json @@ -25,7 +25,7 @@ "glob": "11.0.0", "prettier": "3.3.3", "rimraf": "6.0.1", - "turbo": "2.2.1" + "turbo": "2.2.3" }, "engines": { "node": ">=20.9.0", @@ -108,7 +108,7 @@ "@typescript-eslint/parser": "7.18.0", "@vercel/style-guide": "6.0.0", "eslint-config-prettier": "9.1.0", - "eslint-config-turbo": "2.2.1", + "eslint-config-turbo": "2.2.3", "eslint-plugin-only-warn": "1.1.0", "typescript": "5.6.3" } @@ -6659,12 +6659,12 @@ } }, "node_modules/eslint-config-turbo": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/eslint-config-turbo/-/eslint-config-turbo-2.2.1.tgz", - "integrity": "sha512-cDvPCMSlcyNe5+a3tEZoF/gsZ8WrCddAdqcN/qvBGVD7IL1XdxWerFCfgU/R2fT9JFjyqRhsJnmcbbbwyXockw==", + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/eslint-config-turbo/-/eslint-config-turbo-2.2.3.tgz", + "integrity": "sha512-/zwNU+G2w0HszXzWILdl6/Catt86ejUG7vsFSdpnFzFAAUbbT2TxgoCFvC1fKtm6+SkQsXwkRRe9tFz0aMftpg==", "dev": true, "dependencies": { - "eslint-plugin-turbo": "2.2.1" + "eslint-plugin-turbo": "2.2.3" }, "peerDependencies": { "eslint": ">6.6.0" @@ -7332,9 +7332,9 @@ } }, "node_modules/eslint-plugin-turbo": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-turbo/-/eslint-plugin-turbo-2.2.1.tgz", - "integrity": "sha512-ajKdYtqLC238QGA4SpAFHp6dZICcEktB5oLOnMXz84M+pS9FlGBiUmonrBkmdTEm5jakxqmSdt/cq9J2hWm6mg==", + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/eslint-plugin-turbo/-/eslint-plugin-turbo-2.2.3.tgz", + "integrity": "sha512-LHt35VwxthdGVO6hQRfvmFb6ee8/exAzAYWCy4o87Bnp7urltP8qg7xMd4dPSLAhtfnI2xSo1WgeVaR3MeItxw==", "dev": true, "dependencies": { "dotenv": "16.0.3" @@ -15989,26 +15989,26 @@ } }, "node_modules/turbo": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/turbo/-/turbo-2.2.1.tgz", - "integrity": "sha512-clZFkh6U6NpsLKBVZYRjlZjRTfju1Z5STqvFVaOGu5443uM75alJe1nCYH9pQ9YJoiOvXAqA2rDHWN5kLS9JMg==", + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/turbo/-/turbo-2.2.3.tgz", + "integrity": "sha512-5lDvSqIxCYJ/BAd6rQGK/AzFRhBkbu4JHVMLmGh/hCb7U3CqSnr5Tjwfy9vc+/5wG2DJ6wttgAaA7MoCgvBKZQ==", "dev": true, "bin": { "turbo": "bin/turbo" }, "optionalDependencies": { - "turbo-darwin-64": "2.2.1", - "turbo-darwin-arm64": "2.2.1", - "turbo-linux-64": "2.2.1", - "turbo-linux-arm64": "2.2.1", - "turbo-windows-64": "2.2.1", - "turbo-windows-arm64": "2.2.1" + "turbo-darwin-64": "2.2.3", + "turbo-darwin-arm64": "2.2.3", + "turbo-linux-64": "2.2.3", + "turbo-linux-arm64": "2.2.3", + "turbo-windows-64": "2.2.3", + "turbo-windows-arm64": "2.2.3" } }, "node_modules/turbo-darwin-64": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/turbo-darwin-64/-/turbo-darwin-64-2.2.1.tgz", - "integrity": "sha512-jltMdSQ+7rQDVaorjW729PCw6fwAn1MgZSdoa0Gil7GZCOF3SnR/ok0uJw6G5mdm6F5XM8ZTlz+mdGzBLuBRaA==", + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/turbo-darwin-64/-/turbo-darwin-64-2.2.3.tgz", + "integrity": "sha512-Rcm10CuMKQGcdIBS3R/9PMeuYnv6beYIHqfZFeKWVYEWH69sauj4INs83zKMTUiZJ3/hWGZ4jet9AOwhsssLyg==", "cpu": [ "x64" ], @@ -16019,9 +16019,9 @@ ] }, "node_modules/turbo-darwin-arm64": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/turbo-darwin-arm64/-/turbo-darwin-arm64-2.2.1.tgz", - "integrity": "sha512-RHW0c1NonsJXXlutlZeunmhLanf0/WbeizFfYgWuTEaJE4MbbhyD/RG4Fm/7iob5kxQ4Es2TzfDPqyMqpIO0GA==", + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/turbo-darwin-arm64/-/turbo-darwin-arm64-2.2.3.tgz", + "integrity": "sha512-+EIMHkuLFqUdJYsA3roj66t9+9IciCajgj+DVek+QezEdOJKcRxlvDOS2BUaeN8kEzVSsNiAGnoysFWYw4K0HA==", "cpu": [ "arm64" ], @@ -16032,9 +16032,9 @@ ] }, "node_modules/turbo-linux-64": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/turbo-linux-64/-/turbo-linux-64-2.2.1.tgz", - "integrity": "sha512-RasrjV+i2B90hoR8r6B2Btf2/ebNT5MJbhkpY0G1EN06E1IkjCKfAXj/1Dwmjy9+Zo0NC2r69L3HxRrtpar8jQ==", + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/turbo-linux-64/-/turbo-linux-64-2.2.3.tgz", + "integrity": "sha512-UBhJCYnqtaeOBQLmLo8BAisWbc9v9daL9G8upLR+XGj6vuN/Nz6qUAhverN4Pyej1g4Nt1BhROnj6GLOPYyqxQ==", "cpu": [ "x64" ], @@ -16045,9 +16045,9 @@ ] }, "node_modules/turbo-linux-arm64": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/turbo-linux-arm64/-/turbo-linux-arm64-2.2.1.tgz", - "integrity": "sha512-LNkUUJuu1gNkhlo7Ky/zilXEiajLoGlWLiKT1XV5neEf+x1s+aU9Hzd/+HhSVMiyI8l7z6zLbrM1a6+v4co/SQ==", + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/turbo-linux-arm64/-/turbo-linux-arm64-2.2.3.tgz", + "integrity": "sha512-hJYT9dN06XCQ3jBka/EWvvAETnHRs3xuO/rb5bESmDfG+d9yQjeTMlhRXKrr4eyIMt6cLDt1LBfyi+6CQ+VAwQ==", "cpu": [ "arm64" ], @@ -16058,9 +16058,9 @@ ] }, "node_modules/turbo-windows-64": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/turbo-windows-64/-/turbo-windows-64-2.2.1.tgz", - "integrity": "sha512-Mn5tlFrLzlQ6tW6wTWNlyT1osXuDUg0VT1VAjRpmRXlK2Zi3oKVVG0rs0nkkq4rmuheryD1xyuGPN9nFKbAn/A==", + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/turbo-windows-64/-/turbo-windows-64-2.2.3.tgz", + "integrity": "sha512-NPrjacrZypMBF31b4HE4ROg4P3nhMBPHKS5WTpMwf7wydZ8uvdEHpESVNMOtqhlp857zbnKYgP+yJF30H3N2dQ==", "cpu": [ "x64" ], @@ -16071,9 +16071,9 @@ ] }, "node_modules/turbo-windows-arm64": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/turbo-windows-arm64/-/turbo-windows-arm64-2.2.1.tgz", - "integrity": "sha512-bvYOJ3SMN00yiem+uAqwRMbUMau/KiMzJYxnD0YkFo6INc08z8gZi5g0GLZAR7g/L3JegktX3UQW2cJvryjvLg==", + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/turbo-windows-arm64/-/turbo-windows-arm64-2.2.3.tgz", + "integrity": "sha512-fnNrYBCqn6zgKPKLHu4sOkihBI/+0oYFr075duRxqUZ+1aLWTAGfHZLgjVeLh3zR37CVzuerGIPWAEkNhkWEIw==", "cpu": [ "arm64" ], diff --git a/package.json b/package.json index 10653635..03326a6d 100644 --- a/package.json +++ b/package.json @@ -41,7 +41,7 @@ "glob": "11.0.0", "prettier": "3.3.3", "rimraf": "6.0.1", - "turbo": "2.2.1" + "turbo": "2.2.3" }, "packageManager": "npm@10.7.0", "engines": { From 89a8e2f6a0926b4093300a6a2453229f04bed0a8 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 23 Oct 2024 11:21:26 +0300 Subject: [PATCH 433/458] Bump the nextra group with 2 updates (#830) Bumps the nextra group with 2 updates: [nextra](https://github.com/shuding/nextra) and [nextra-theme-docs](https://github.com/shuding/nextra). Updates `nextra` from 3.0.15 to 3.1.0 - [Release notes](https://github.com/shuding/nextra/releases) - [Commits](https://github.com/shuding/nextra/compare/nextra@3.0.15...nextra@3.1.0) Updates `nextra-theme-docs` from 3.0.15 to 3.1.0 - [Release notes](https://github.com/shuding/nextra/releases) - [Commits](https://github.com/shuding/nextra/compare/nextra-theme-docs@3.0.15...nextra-theme-docs@3.1.0) --- updated-dependencies: - dependency-name: nextra dependency-type: direct:production update-type: version-update:semver-minor dependency-group: nextra - dependency-name: nextra-theme-docs dependency-type: direct:production update-type: version-update:semver-minor dependency-group: nextra ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- docs/cache-handler-docs/package.json | 4 ++-- package-lock.json | 29 ++++++++++++++++++---------- 2 files changed, 21 insertions(+), 12 deletions(-) diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 5fc59bf4..dfc52b32 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -12,8 +12,8 @@ }, "dependencies": { "next": "14.2.15", - "nextra": "3.0.15", - "nextra-theme-docs": "3.0.15", + "nextra": "3.1.0", + "nextra-theme-docs": "3.1.0", "react": "18.3.1", "react-dom": "18.3.1" }, diff --git a/package-lock.json b/package-lock.json index b12684e9..26263204 100644 --- a/package-lock.json +++ b/package-lock.json @@ -66,8 +66,8 @@ "version": "0.0.0", "dependencies": { "next": "14.2.15", - "nextra": "3.0.15", - "nextra-theme-docs": "3.0.15", + "nextra": "3.1.0", + "nextra-theme-docs": "3.1.0", "react": "18.3.1", "react-dom": "18.3.1" }, @@ -11736,6 +11736,7 @@ "version": "0.6.3", "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", + "dev": true, "license": "MIT", "engines": { "node": ">= 0.6" @@ -11812,9 +11813,9 @@ } }, "node_modules/nextra": { - "version": "3.0.15", - "resolved": "https://registry.npmjs.org/nextra/-/nextra-3.0.15.tgz", - "integrity": "sha512-iLKFNYwq8sciXPK9RPRmgifELSA2JLgEfL5y54stq7MvXuKn44MZJNzdhkJF4MXvx1HobzYLHl3/e37/Yf2htA==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/nextra/-/nextra-3.1.0.tgz", + "integrity": "sha512-IvG8Q/yLAqSju1zwRPUqC/6WpzAgfmNo6gDw6CIBZJ+3RKdJDsirM/v3BNeN6vx3tSjLFybytOt3spNXHFy/WQ==", "dependencies": { "@formatjs/intl-localematcher": "^0.5.4", "@headlessui/react": "^2.1.2", @@ -11833,7 +11834,7 @@ "gray-matter": "^4.0.3", "hast-util-to-estree": "^3.1.0", "katex": "^0.16.9", - "negotiator": "^0.6.3", + "negotiator": "^1.0.0", "p-limit": "^6.0.0", "rehype-katex": "^7.0.0", "rehype-pretty-code": "0.14.0", @@ -11862,9 +11863,9 @@ } }, "node_modules/nextra-theme-docs": { - "version": "3.0.15", - "resolved": "https://registry.npmjs.org/nextra-theme-docs/-/nextra-theme-docs-3.0.15.tgz", - "integrity": "sha512-AhvmgcjFYi7aT5nRjdozqCt1hW39tqCIRKi4+pIR62ri26miB3VxREBYlCTHezcML2VLunyYIjFiiQGUan09gA==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/nextra-theme-docs/-/nextra-theme-docs-3.1.0.tgz", + "integrity": "sha512-2zAC+xnqLzl/kLYCaoVfdupyA6pD5OgF+4iR3zQiPOzfnwJikPQePnr3SCT+tPPgYVuoqSDA5GNc9DvvAHtefQ==", "dependencies": { "@headlessui/react": "^2.1.2", "clsx": "^2.0.0", @@ -11876,7 +11877,7 @@ }, "peerDependencies": { "next": ">=13", - "nextra": "3.0.15", + "nextra": "3.1.0", "react": ">=18", "react-dom": ">=18" } @@ -11893,6 +11894,14 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/nextra/node_modules/negotiator": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-1.0.0.tgz", + "integrity": "sha512-8Ofs/AUQh8MaEcrlq5xOX0CQ9ypTF5dl78mjlMNfOK08fzpgTHQRQPBxcPlEtIw0yRpws+Zo/3r+5WRby7u3Gg==", + "engines": { + "node": ">= 0.6" + } + }, "node_modules/nextra/node_modules/p-limit": { "version": "6.1.0", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-6.1.0.tgz", From c8545533769b53200b047b6fa183bf35bc7656ed Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 23 Oct 2024 14:32:00 +0300 Subject: [PATCH 434/458] Bump the definitely-typed group across 1 directory with 2 updates (#831) Bumps the definitely-typed group with 2 updates in the / directory: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) and [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react). Updates `@types/node` from 22.7.7 to 22.7.9 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) Updates `@types/react` from 18.3.11 to 18.3.12 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react) --- updated-dependencies: - dependency-name: "@types/node" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed - dependency-name: "@types/react" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 4 +-- docs/cache-handler-docs/package.json | 4 +-- internal/backend/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 33 ++++++++++----------- packages/cache-handler/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 9 files changed, 26 insertions(+), 27 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index c87bd360..08c5ef43 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -28,8 +28,8 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.12", - "@types/node": "22.7.7", - "@types/react": "18.3.11", + "@types/node": "22.7.9", + "@types/react": "18.3.12", "@types/react-dom": "18.3.1", "dotenv-cli": "7.4.2", "eslint": "8.57.1", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index dfc52b32..42ab0fa3 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -22,8 +22,8 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.12", - "@types/node": "22.7.7", - "@types/react": "18.3.11", + "@types/node": "22.7.9", + "@types/react": "18.3.12", "@types/react-dom": "18.3.1", "eslint": "8.57.1", "serve": "14.2.4", diff --git a/internal/backend/package.json b/internal/backend/package.json index 861d59d8..24cb02e0 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -14,7 +14,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.7.7", + "@types/node": "22.7.9", "pino-pretty": "11.3.0", "tsx": "4.19.1", "typescript": "5.6.3" diff --git a/internal/next-common/package.json b/internal/next-common/package.json index 09ef2461..3cb3a23b 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -12,7 +12,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.7.7", + "@types/node": "22.7.9", "typescript": "5.6.3" } } diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index 1fe81ad0..2ee9fec6 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -13,7 +13,7 @@ "devDependencies": { "@repo/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "22.7.7", + "@types/node": "22.7.9", "typescript": "5.6.3" } } diff --git a/package-lock.json b/package-lock.json index 26263204..ad9fa198 100644 --- a/package-lock.json +++ b/package-lock.json @@ -50,8 +50,8 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.12", - "@types/node": "22.7.7", - "@types/react": "18.3.11", + "@types/node": "22.7.9", + "@types/react": "18.3.12", "@types/react-dom": "18.3.1", "dotenv-cli": "7.4.2", "eslint": "8.57.1", @@ -76,8 +76,8 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.12", - "@types/node": "22.7.7", - "@types/react": "18.3.11", + "@types/node": "22.7.9", + "@types/react": "18.3.12", "@types/react-dom": "18.3.1", "eslint": "8.57.1", "serve": "14.2.4", @@ -94,7 +94,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.7.7", + "@types/node": "22.7.9", "pino-pretty": "11.3.0", "tsx": "4.19.1", "typescript": "5.6.3" @@ -122,7 +122,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.7.7", + "@types/node": "22.7.9", "typescript": "5.6.3" } }, @@ -136,7 +136,7 @@ "devDependencies": { "@repo/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "22.7.7", + "@types/node": "22.7.9", "typescript": "5.6.3" } }, @@ -3547,9 +3547,9 @@ } }, "node_modules/@types/node": { - "version": "22.7.7", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.7.7.tgz", - "integrity": "sha512-SRxCrrg9CL/y54aiMCG3edPKdprgMVGDXjA3gB8UmmBW5TcXzRUYAh8EWzTnSJFAd1rgImPELza+A3bJ+qxz8Q==", + "version": "22.7.9", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.7.9.tgz", + "integrity": "sha512-jrTfRC7FM6nChvU7X2KqcrgquofrWLFDeYC1hKfwNWomVvrn7JIksqf344WN2X/y8xrgqBd2dJATZV4GbatBfg==", "dev": true, "dependencies": { "undici-types": "~6.19.2" @@ -3569,10 +3569,9 @@ "license": "MIT" }, "node_modules/@types/react": { - "version": "18.3.11", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.11.tgz", - "integrity": "sha512-r6QZ069rFTjrEYgFdOck1gK7FLVsgJE7tTz0pQBczlBNUhBNk0MQH4UbnFSwjpQLMkLzgqvBBa+qGpLje16eTQ==", - "license": "MIT", + "version": "18.3.12", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.12.tgz", + "integrity": "sha512-D2wOSq/d6Agt28q7rSI3jhU7G6aiuzljDGZ2hTZHIkrTLUI+AF3WMeKkEZ9nN2fkBAlcktT6vcZjDFiIhMYEQw==", "dependencies": { "@types/prop-types": "*", "csstype": "^3.0.2" @@ -17054,7 +17053,7 @@ "@repo/next-common": "*", "@repo/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.7.7", + "@types/node": "22.7.9", "tsup": "8.3.0", "tsx": "4.19.1", "typescript": "5.6.3" @@ -17070,7 +17069,7 @@ "license": "MIT", "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.7.7", + "@types/node": "22.7.9", "tsup": "8.3.0", "tsx": "4.19.1", "typescript": "5.6.3" @@ -17091,7 +17090,7 @@ "@repo/next-common": "*", "@repo/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.7.7", + "@types/node": "22.7.9", "tsup": "8.3.0", "tsx": "4.19.1", "typescript": "5.6.3" diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 1c2d6d35..c12fbda4 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -86,7 +86,7 @@ "@repo/next-common": "*", "@repo/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.7.7", + "@types/node": "22.7.9", "tsup": "8.3.0", "tsx": "4.19.1", "typescript": "5.6.3" diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index e13b5e7c..f20ed0bd 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -27,7 +27,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.7.7", + "@types/node": "22.7.9", "tsup": "8.3.0", "tsx": "4.19.1", "typescript": "5.6.3" diff --git a/packages/server/package.json b/packages/server/package.json index 02074458..0e7d568d 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -31,7 +31,7 @@ "@repo/next-common": "*", "@repo/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.7.7", + "@types/node": "22.7.9", "tsup": "8.3.0", "tsx": "4.19.1", "typescript": "5.6.3" From 0bcbcb0de55bff5d1da4a3905559d302ca699a16 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 30 Oct 2024 15:35:24 +0300 Subject: [PATCH 435/458] Bump @playwright/test from 1.48.1 to 1.48.2 (#836) Bumps [@playwright/test](https://github.com/microsoft/playwright) from 1.48.1 to 1.48.2. - [Release notes](https://github.com/microsoft/playwright/releases) - [Commits](https://github.com/microsoft/playwright/compare/v1.48.1...v1.48.2) --- updated-dependencies: - dependency-name: "@playwright/test" dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- package-lock.json | 27 ++++++++++++--------------- 2 files changed, 13 insertions(+), 16 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 08c5ef43..40178abc 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -24,7 +24,7 @@ }, "devDependencies": { "@next/eslint-plugin-next": "14.2.15", - "@playwright/test": "1.48.1", + "@playwright/test": "1.48.2", "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.12", diff --git a/package-lock.json b/package-lock.json index ad9fa198..b5c4eed2 100644 --- a/package-lock.json +++ b/package-lock.json @@ -46,7 +46,7 @@ }, "devDependencies": { "@next/eslint-plugin-next": "14.2.15", - "@playwright/test": "1.48.1", + "@playwright/test": "1.48.2", "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.12", @@ -2685,13 +2685,12 @@ } }, "node_modules/@playwright/test": { - "version": "1.48.1", - "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.48.1.tgz", - "integrity": "sha512-s9RtWoxkOLmRJdw3oFvhFbs9OJS0BzrLUc8Hf6l2UdCNd1rqeEyD4BhCJkvzeEoD1FsK4mirsWwGerhVmYKtZg==", + "version": "1.48.2", + "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.48.2.tgz", + "integrity": "sha512-54w1xCWfXuax7dz4W2M9uw0gDyh+ti/0K/MxcCUxChFh37kkdxPdfZDw5QBbuPUJHr1CiHJ1hXgSs+GgeQc5Zw==", "devOptional": true, - "license": "Apache-2.0", "dependencies": { - "playwright": "1.48.1" + "playwright": "1.48.2" }, "bin": { "playwright": "cli.js" @@ -12721,13 +12720,12 @@ } }, "node_modules/playwright": { - "version": "1.48.1", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.48.1.tgz", - "integrity": "sha512-j8CiHW/V6HxmbntOfyB4+T/uk08tBy6ph0MpBXwuoofkSnLmlfdYNNkFTYD6ofzzlSqLA1fwH4vwvVFvJgLN0w==", + "version": "1.48.2", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.48.2.tgz", + "integrity": "sha512-NjYvYgp4BPmiwfe31j4gHLa3J7bD2WiBz8Lk2RoSsmX38SVIARZ18VYjxLjAcDsAhA+F4iSEXTSGgjua0rrlgQ==", "devOptional": true, - "license": "Apache-2.0", "dependencies": { - "playwright-core": "1.48.1" + "playwright-core": "1.48.2" }, "bin": { "playwright": "cli.js" @@ -12740,11 +12738,10 @@ } }, "node_modules/playwright-core": { - "version": "1.48.1", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.48.1.tgz", - "integrity": "sha512-Yw/t4VAFX/bBr1OzwCuOMZkY1Cnb4z/doAFSwf4huqAGWmf9eMNjmK7NiOljCdLmxeRYcGPPmcDgU0zOlzP0YA==", + "version": "1.48.2", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.48.2.tgz", + "integrity": "sha512-sjjw+qrLFlriJo64du+EK0kJgZzoQPsabGF4lBvsid+3CNIZIYLgnMj9V6JY5VhM2Peh20DJWIVpVljLLnlawA==", "devOptional": true, - "license": "Apache-2.0", "bin": { "playwright-core": "cli.js" }, From a2b29f53a7c5d34f5c90819d25da155da184cfab Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 30 Oct 2024 15:44:20 +0300 Subject: [PATCH 436/458] Bump tsx from 4.19.1 to 4.19.2 (#839) Bumps [tsx](https://github.com/privatenumber/tsx) from 4.19.1 to 4.19.2. - [Release notes](https://github.com/privatenumber/tsx/releases) - [Changelog](https://github.com/privatenumber/tsx/blob/master/release.config.cjs) - [Commits](https://github.com/privatenumber/tsx/compare/v4.19.1...v4.19.2) --- updated-dependencies: - dependency-name: tsx dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- internal/backend/package.json | 2 +- package-lock.json | 17 ++++++++--------- packages/cache-handler/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 6 files changed, 13 insertions(+), 14 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 40178abc..799739c8 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -35,7 +35,7 @@ "eslint": "8.57.1", "fastify": "5.0.0", "pm2": "5.4.2", - "tsx": "4.19.1", + "tsx": "4.19.2", "typescript": "5.6.3" } } diff --git a/internal/backend/package.json b/internal/backend/package.json index 24cb02e0..96975201 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -16,7 +16,7 @@ "@repo/typescript-config": "*", "@types/node": "22.7.9", "pino-pretty": "11.3.0", - "tsx": "4.19.1", + "tsx": "4.19.2", "typescript": "5.6.3" } } diff --git a/package-lock.json b/package-lock.json index b5c4eed2..0d1a65ee 100644 --- a/package-lock.json +++ b/package-lock.json @@ -57,7 +57,7 @@ "eslint": "8.57.1", "fastify": "5.0.0", "pm2": "5.4.2", - "tsx": "4.19.1", + "tsx": "4.19.2", "typescript": "5.6.3" } }, @@ -96,7 +96,7 @@ "@repo/typescript-config": "*", "@types/node": "22.7.9", "pino-pretty": "11.3.0", - "tsx": "4.19.1", + "tsx": "4.19.2", "typescript": "5.6.3" } }, @@ -15949,11 +15949,10 @@ "license": "0BSD" }, "node_modules/tsx": { - "version": "4.19.1", - "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.19.1.tgz", - "integrity": "sha512-0flMz1lh74BR4wOvBjuh9olbnwqCPc35OOlfyzHba0Dc+QNUeWX/Gq2YTbnwcWPO3BMd8fkzRVrHcsR+a7z7rA==", + "version": "4.19.2", + "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.19.2.tgz", + "integrity": "sha512-pOUl6Vo2LUq/bSa8S5q7b91cgNSjctn9ugq/+Mvow99qW6x/UZYwzxy/3NmqoT66eHYfCVvFvACC58UBPFf28g==", "dev": true, - "license": "MIT", "dependencies": { "esbuild": "~0.23.0", "get-tsconfig": "^4.7.5" @@ -17052,7 +17051,7 @@ "@repo/typescript-config": "*", "@types/node": "22.7.9", "tsup": "8.3.0", - "tsx": "4.19.1", + "tsx": "4.19.2", "typescript": "5.6.3" }, "peerDependencies": { @@ -17068,7 +17067,7 @@ "@repo/typescript-config": "*", "@types/node": "22.7.9", "tsup": "8.3.0", - "tsx": "4.19.1", + "tsx": "4.19.2", "typescript": "5.6.3" } }, @@ -17089,7 +17088,7 @@ "@repo/typescript-config": "*", "@types/node": "22.7.9", "tsup": "8.3.0", - "tsx": "4.19.1", + "tsx": "4.19.2", "typescript": "5.6.3" } } diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index c12fbda4..ae39d28d 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -88,7 +88,7 @@ "@repo/typescript-config": "*", "@types/node": "22.7.9", "tsup": "8.3.0", - "tsx": "4.19.1", + "tsx": "4.19.2", "typescript": "5.6.3" }, "peerDependencies": { diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index f20ed0bd..d3cd6822 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -29,7 +29,7 @@ "@repo/typescript-config": "*", "@types/node": "22.7.9", "tsup": "8.3.0", - "tsx": "4.19.1", + "tsx": "4.19.2", "typescript": "5.6.3" } } diff --git a/packages/server/package.json b/packages/server/package.json index 0e7d568d..c295665a 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -33,7 +33,7 @@ "@repo/typescript-config": "*", "@types/node": "22.7.9", "tsup": "8.3.0", - "tsx": "4.19.1", + "tsx": "4.19.2", "typescript": "5.6.3" }, "distTags": [ From e1d7b8ec4d7abc336ffdce1556b09aea5bcfa25f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 30 Oct 2024 16:17:58 +0300 Subject: [PATCH 437/458] Bump tsup from 8.3.0 to 8.3.5 (#840) Bumps [tsup](https://github.com/egoist/tsup) from 8.3.0 to 8.3.5. - [Release notes](https://github.com/egoist/tsup/releases) - [Commits](https://github.com/egoist/tsup/compare/v8.3.0...v8.3.5) --- updated-dependencies: - dependency-name: tsup dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 506 +++++++++++++++++--- packages/cache-handler/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 4 files changed, 446 insertions(+), 66 deletions(-) diff --git a/package-lock.json b/package-lock.json index 0d1a65ee..a3deab44 100644 --- a/package-lock.json +++ b/package-lock.json @@ -15791,27 +15791,26 @@ "license": "0BSD" }, "node_modules/tsup": { - "version": "8.3.0", - "resolved": "https://registry.npmjs.org/tsup/-/tsup-8.3.0.tgz", - "integrity": "sha512-ALscEeyS03IomcuNdFdc0YWGVIkwH1Ws7nfTbAPuoILvEV2hpGQAY72LIOjglGo4ShWpZfpBqP/jpQVCzqYQag==", + "version": "8.3.5", + "resolved": "https://registry.npmjs.org/tsup/-/tsup-8.3.5.tgz", + "integrity": "sha512-Tunf6r6m6tnZsG9GYWndg0z8dEV7fD733VBFzFJ5Vcm1FtlXB8xBD/rtrBi2a3YKEV7hHtxiZtW5EAVADoe1pA==", "dev": true, - "license": "MIT", "dependencies": { "bundle-require": "^5.0.0", "cac": "^6.7.14", - "chokidar": "^3.6.0", + "chokidar": "^4.0.1", "consola": "^3.2.3", - "debug": "^4.3.5", - "esbuild": "^0.23.0", - "execa": "^5.1.1", + "debug": "^4.3.7", + "esbuild": "^0.24.0", "joycon": "^3.1.1", - "picocolors": "^1.0.1", + "picocolors": "^1.1.1", "postcss-load-config": "^6.0.1", "resolve-from": "^5.0.0", - "rollup": "^4.19.0", + "rollup": "^4.24.0", "source-map": "0.8.0-beta.0", "sucrase": "^3.35.0", - "tinyglobby": "^0.2.1", + "tinyexec": "^0.3.1", + "tinyglobby": "^0.2.9", "tree-kill": "^1.2.2" }, "bin": { @@ -15842,75 +15841,456 @@ } } }, - "node_modules/tsup/node_modules/execa": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", - "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", + "node_modules/tsup/node_modules/@esbuild/aix-ppc64": { + "version": "0.24.0", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.24.0.tgz", + "integrity": "sha512-WtKdFM7ls47zkKHFVzMz8opM7LkcsIp9amDUBIAWirg70RM71WRSjdILPsY5Uv1D42ZpUfaPILDlfactHgsRkw==", + "cpu": [ + "ppc64" + ], "dev": true, - "license": "MIT", - "dependencies": { - "cross-spawn": "^7.0.3", - "get-stream": "^6.0.0", - "human-signals": "^2.1.0", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.1", - "onetime": "^5.1.2", - "signal-exit": "^3.0.3", - "strip-final-newline": "^2.0.0" - }, + "optional": true, + "os": [ + "aix" + ], "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" + "node": ">=18" } }, - "node_modules/tsup/node_modules/get-stream": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", - "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "node_modules/tsup/node_modules/@esbuild/android-arm": { + "version": "0.24.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.24.0.tgz", + "integrity": "sha512-arAtTPo76fJ/ICkXWetLCc9EwEHKaeya4vMrReVlEIUCAUncH7M4bhMQ+M9Vf+FFOZJdTNMXNBrWwW+OXWpSew==", + "cpu": [ + "arm" + ], "dev": true, - "license": "MIT", + "optional": true, + "os": [ + "android" + ], "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=18" } }, - "node_modules/tsup/node_modules/is-stream": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", - "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "node_modules/tsup/node_modules/@esbuild/android-arm64": { + "version": "0.24.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.24.0.tgz", + "integrity": "sha512-Vsm497xFM7tTIPYK9bNTYJyF/lsP590Qc1WxJdlB6ljCbdZKU9SY8i7+Iin4kyhV/KV5J2rOKsBQbB77Ab7L/w==", + "cpu": [ + "arm64" + ], "dev": true, - "license": "MIT", + "optional": true, + "os": [ + "android" + ], "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=18" + } + }, + "node_modules/tsup/node_modules/@esbuild/android-x64": { + "version": "0.24.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.24.0.tgz", + "integrity": "sha512-t8GrvnFkiIY7pa7mMgJd7p8p8qqYIz1NYiAoKc75Zyv73L3DZW++oYMSHPRarcotTKuSs6m3hTOa5CKHaS02TQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsup/node_modules/@esbuild/darwin-arm64": { + "version": "0.24.0", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.24.0.tgz", + "integrity": "sha512-CKyDpRbK1hXwv79soeTJNHb5EiG6ct3efd/FTPdzOWdbZZfGhpbcqIpiD0+vwmpu0wTIL97ZRPZu8vUt46nBSw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsup/node_modules/@esbuild/darwin-x64": { + "version": "0.24.0", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.24.0.tgz", + "integrity": "sha512-rgtz6flkVkh58od4PwTRqxbKH9cOjaXCMZgWD905JOzjFKW+7EiUObfd/Kav+A6Gyud6WZk9w+xu6QLytdi2OA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsup/node_modules/@esbuild/freebsd-arm64": { + "version": "0.24.0", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.24.0.tgz", + "integrity": "sha512-6Mtdq5nHggwfDNLAHkPlyLBpE5L6hwsuXZX8XNmHno9JuL2+bg2BX5tRkwjyfn6sKbxZTq68suOjgWqCicvPXA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsup/node_modules/@esbuild/freebsd-x64": { + "version": "0.24.0", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.24.0.tgz", + "integrity": "sha512-D3H+xh3/zphoX8ck4S2RxKR6gHlHDXXzOf6f/9dbFt/NRBDIE33+cVa49Kil4WUjxMGW0ZIYBYtaGCa2+OsQwQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsup/node_modules/@esbuild/linux-arm": { + "version": "0.24.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.24.0.tgz", + "integrity": "sha512-gJKIi2IjRo5G6Glxb8d3DzYXlxdEj2NlkixPsqePSZMhLudqPhtZ4BUrpIuTjJYXxvF9njql+vRjB2oaC9XpBw==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsup/node_modules/@esbuild/linux-arm64": { + "version": "0.24.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.24.0.tgz", + "integrity": "sha512-TDijPXTOeE3eaMkRYpcy3LarIg13dS9wWHRdwYRnzlwlA370rNdZqbcp0WTyyV/k2zSxfko52+C7jU5F9Tfj1g==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsup/node_modules/@esbuild/linux-ia32": { + "version": "0.24.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.24.0.tgz", + "integrity": "sha512-K40ip1LAcA0byL05TbCQ4yJ4swvnbzHscRmUilrmP9Am7//0UjPreh4lpYzvThT2Quw66MhjG//20mrufm40mA==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsup/node_modules/@esbuild/linux-loong64": { + "version": "0.24.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.24.0.tgz", + "integrity": "sha512-0mswrYP/9ai+CU0BzBfPMZ8RVm3RGAN/lmOMgW4aFUSOQBjA31UP8Mr6DDhWSuMwj7jaWOT0p0WoZ6jeHhrD7g==", + "cpu": [ + "loong64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" } }, - "node_modules/tsup/node_modules/npm-run-path": { + "node_modules/tsup/node_modules/@esbuild/linux-mips64el": { + "version": "0.24.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.24.0.tgz", + "integrity": "sha512-hIKvXm0/3w/5+RDtCJeXqMZGkI2s4oMUGj3/jM0QzhgIASWrGO5/RlzAzm5nNh/awHE0A19h/CvHQe6FaBNrRA==", + "cpu": [ + "mips64el" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsup/node_modules/@esbuild/linux-ppc64": { + "version": "0.24.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.24.0.tgz", + "integrity": "sha512-HcZh5BNq0aC52UoocJxaKORfFODWXZxtBaaZNuN3PUX3MoDsChsZqopzi5UupRhPHSEHotoiptqikjN/B77mYQ==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsup/node_modules/@esbuild/linux-riscv64": { + "version": "0.24.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.24.0.tgz", + "integrity": "sha512-bEh7dMn/h3QxeR2KTy1DUszQjUrIHPZKyO6aN1X4BCnhfYhuQqedHaa5MxSQA/06j3GpiIlFGSsy1c7Gf9padw==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsup/node_modules/@esbuild/linux-s390x": { + "version": "0.24.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.24.0.tgz", + "integrity": "sha512-ZcQ6+qRkw1UcZGPyrCiHHkmBaj9SiCD8Oqd556HldP+QlpUIe2Wgn3ehQGVoPOvZvtHm8HPx+bH20c9pvbkX3g==", + "cpu": [ + "s390x" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsup/node_modules/@esbuild/linux-x64": { + "version": "0.24.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.24.0.tgz", + "integrity": "sha512-vbutsFqQ+foy3wSSbmjBXXIJ6PL3scghJoM8zCL142cGaZKAdCZHyf+Bpu/MmX9zT9Q0zFBVKb36Ma5Fzfa8xA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsup/node_modules/@esbuild/netbsd-x64": { + "version": "0.24.0", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.24.0.tgz", + "integrity": "sha512-hjQ0R/ulkO8fCYFsG0FZoH+pWgTTDreqpqY7UnQntnaKv95uP5iW3+dChxnx7C3trQQU40S+OgWhUVwCjVFLvg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsup/node_modules/@esbuild/openbsd-arm64": { + "version": "0.24.0", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.24.0.tgz", + "integrity": "sha512-MD9uzzkPQbYehwcN583yx3Tu5M8EIoTD+tUgKF982WYL9Pf5rKy9ltgD0eUgs8pvKnmizxjXZyLt0z6DC3rRXg==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsup/node_modules/@esbuild/openbsd-x64": { + "version": "0.24.0", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.24.0.tgz", + "integrity": "sha512-4ir0aY1NGUhIC1hdoCzr1+5b43mw99uNwVzhIq1OY3QcEwPDO3B7WNXBzaKY5Nsf1+N11i1eOfFcq+D/gOS15Q==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsup/node_modules/@esbuild/sunos-x64": { + "version": "0.24.0", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.24.0.tgz", + "integrity": "sha512-jVzdzsbM5xrotH+W5f1s+JtUy1UWgjU0Cf4wMvffTB8m6wP5/kx0KiaLHlbJO+dMgtxKV8RQ/JvtlFcdZ1zCPA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsup/node_modules/@esbuild/win32-arm64": { + "version": "0.24.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.24.0.tgz", + "integrity": "sha512-iKc8GAslzRpBytO2/aN3d2yb2z8XTVfNV0PjGlCxKo5SgWmNXx82I/Q3aG1tFfS+A2igVCY97TJ8tnYwpUWLCA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsup/node_modules/@esbuild/win32-ia32": { + "version": "0.24.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.24.0.tgz", + "integrity": "sha512-vQW36KZolfIudCcTnaTpmLQ24Ha1RjygBo39/aLkM2kmjkWmZGEJ5Gn9l5/7tzXA42QGIoWbICfg6KLLkIw6yw==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsup/node_modules/@esbuild/win32-x64": { + "version": "0.24.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.24.0.tgz", + "integrity": "sha512-7IAFPrjSQIJrGsK6flwg7NFmwBoSTyF3rl7If0hNUFQU4ilTsEPL6GuMuU9BfIWVVGuRnuIidkSMC+c0Otu8IA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsup/node_modules/chokidar": { "version": "4.0.1", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", - "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.1.tgz", + "integrity": "sha512-n8enUVCED/KVRQlab1hr3MVpcVMvxtZjmEa956u+4YijlmQED223XMSYj2tLuKvr4jcCTzNNMpQDUer72MMmzA==", "dev": true, - "license": "MIT", "dependencies": { - "path-key": "^3.0.0" + "readdirp": "^4.0.1" }, "engines": { - "node": ">=8" + "node": ">= 14.16.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" } }, - "node_modules/tsup/node_modules/signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "node_modules/tsup/node_modules/esbuild": { + "version": "0.24.0", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.24.0.tgz", + "integrity": "sha512-FuLPevChGDshgSicjisSooU0cemp/sGXR841D5LHMB7mTVOmsEHcAxaH3irL53+8YDIeVNQEySh4DaYU/iuPqQ==", "dev": true, - "license": "ISC" + "hasInstallScript": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=18" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.24.0", + "@esbuild/android-arm": "0.24.0", + "@esbuild/android-arm64": "0.24.0", + "@esbuild/android-x64": "0.24.0", + "@esbuild/darwin-arm64": "0.24.0", + "@esbuild/darwin-x64": "0.24.0", + "@esbuild/freebsd-arm64": "0.24.0", + "@esbuild/freebsd-x64": "0.24.0", + "@esbuild/linux-arm": "0.24.0", + "@esbuild/linux-arm64": "0.24.0", + "@esbuild/linux-ia32": "0.24.0", + "@esbuild/linux-loong64": "0.24.0", + "@esbuild/linux-mips64el": "0.24.0", + "@esbuild/linux-ppc64": "0.24.0", + "@esbuild/linux-riscv64": "0.24.0", + "@esbuild/linux-s390x": "0.24.0", + "@esbuild/linux-x64": "0.24.0", + "@esbuild/netbsd-x64": "0.24.0", + "@esbuild/openbsd-arm64": "0.24.0", + "@esbuild/openbsd-x64": "0.24.0", + "@esbuild/sunos-x64": "0.24.0", + "@esbuild/win32-arm64": "0.24.0", + "@esbuild/win32-ia32": "0.24.0", + "@esbuild/win32-x64": "0.24.0" + } + }, + "node_modules/tsup/node_modules/readdirp": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.0.2.tgz", + "integrity": "sha512-yDMz9g+VaZkqBYS/ozoBJwaBhTbZo3UNYQHNRw1D3UFQB8oHB4uS/tAODO+ZLjGWmUbKnIlOWO+aaIiAxrUWHA==", + "dev": true, + "engines": { + "node": ">= 14.16.0" + }, + "funding": { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } }, "node_modules/tsup/node_modules/source-map": { "version": "0.8.0-beta.0", @@ -17050,7 +17430,7 @@ "@repo/next-lru-cache": "*", "@repo/typescript-config": "*", "@types/node": "22.7.9", - "tsup": "8.3.0", + "tsup": "8.3.5", "tsx": "4.19.2", "typescript": "5.6.3" }, @@ -17066,7 +17446,7 @@ "devDependencies": { "@repo/typescript-config": "*", "@types/node": "22.7.9", - "tsup": "8.3.0", + "tsup": "8.3.5", "tsx": "4.19.2", "typescript": "5.6.3" } @@ -17087,7 +17467,7 @@ "@repo/next-lru-cache": "*", "@repo/typescript-config": "*", "@types/node": "22.7.9", - "tsup": "8.3.0", + "tsup": "8.3.5", "tsx": "4.19.2", "typescript": "5.6.3" } diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index ae39d28d..5f3173fe 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -87,7 +87,7 @@ "@repo/next-lru-cache": "*", "@repo/typescript-config": "*", "@types/node": "22.7.9", - "tsup": "8.3.0", + "tsup": "8.3.5", "tsx": "4.19.2", "typescript": "5.6.3" }, diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index d3cd6822..3a99030c 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -28,7 +28,7 @@ "devDependencies": { "@repo/typescript-config": "*", "@types/node": "22.7.9", - "tsup": "8.3.0", + "tsup": "8.3.5", "tsx": "4.19.2", "typescript": "5.6.3" } diff --git a/packages/server/package.json b/packages/server/package.json index c295665a..4ddeeec1 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -32,7 +32,7 @@ "@repo/next-lru-cache": "*", "@repo/typescript-config": "*", "@types/node": "22.7.9", - "tsup": "8.3.0", + "tsup": "8.3.5", "tsx": "4.19.2", "typescript": "5.6.3" }, From 66bef31dd91a2e68b61ab85a5dfd03ac274972e6 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 30 Oct 2024 17:06:00 +0300 Subject: [PATCH 438/458] Bump @types/node in the definitely-typed group across 1 directory (#842) Bumps the definitely-typed group with 1 update in the / directory: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node). Updates `@types/node` from 22.7.9 to 22.8.4 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) --- updated-dependencies: - dependency-name: "@types/node" dependency-type: direct:development update-type: version-update:semver-minor dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- internal/backend/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 24 ++++++++++----------- packages/cache-handler/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 9 files changed, 20 insertions(+), 20 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 799739c8..a3f0640d 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -28,7 +28,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.12", - "@types/node": "22.7.9", + "@types/node": "22.8.4", "@types/react": "18.3.12", "@types/react-dom": "18.3.1", "dotenv-cli": "7.4.2", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 42ab0fa3..49d43a27 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -22,7 +22,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.12", - "@types/node": "22.7.9", + "@types/node": "22.8.4", "@types/react": "18.3.12", "@types/react-dom": "18.3.1", "eslint": "8.57.1", diff --git a/internal/backend/package.json b/internal/backend/package.json index 96975201..f96ec011 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -14,7 +14,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.7.9", + "@types/node": "22.8.4", "pino-pretty": "11.3.0", "tsx": "4.19.2", "typescript": "5.6.3" diff --git a/internal/next-common/package.json b/internal/next-common/package.json index 3cb3a23b..8bf071d1 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -12,7 +12,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.7.9", + "@types/node": "22.8.4", "typescript": "5.6.3" } } diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index 2ee9fec6..a71e1cbf 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -13,7 +13,7 @@ "devDependencies": { "@repo/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "22.7.9", + "@types/node": "22.8.4", "typescript": "5.6.3" } } diff --git a/package-lock.json b/package-lock.json index a3deab44..0ecad42b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -50,7 +50,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.12", - "@types/node": "22.7.9", + "@types/node": "22.8.4", "@types/react": "18.3.12", "@types/react-dom": "18.3.1", "dotenv-cli": "7.4.2", @@ -76,7 +76,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.12", - "@types/node": "22.7.9", + "@types/node": "22.8.4", "@types/react": "18.3.12", "@types/react-dom": "18.3.1", "eslint": "8.57.1", @@ -94,7 +94,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.7.9", + "@types/node": "22.8.4", "pino-pretty": "11.3.0", "tsx": "4.19.2", "typescript": "5.6.3" @@ -122,7 +122,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.7.9", + "@types/node": "22.8.4", "typescript": "5.6.3" } }, @@ -136,7 +136,7 @@ "devDependencies": { "@repo/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "22.7.9", + "@types/node": "22.8.4", "typescript": "5.6.3" } }, @@ -3546,12 +3546,12 @@ } }, "node_modules/@types/node": { - "version": "22.7.9", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.7.9.tgz", - "integrity": "sha512-jrTfRC7FM6nChvU7X2KqcrgquofrWLFDeYC1hKfwNWomVvrn7JIksqf344WN2X/y8xrgqBd2dJATZV4GbatBfg==", + "version": "22.8.4", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.8.4.tgz", + "integrity": "sha512-SpNNxkftTJOPk0oN+y2bIqurEXHTA2AOZ3EJDDKeJ5VzkvvORSvmQXGQarcOzWV1ac7DCaPBEdMDxBsM+d8jWw==", "dev": true, "dependencies": { - "undici-types": "~6.19.2" + "undici-types": "~6.19.8" } }, "node_modules/@types/normalize-package-data": { @@ -17429,7 +17429,7 @@ "@repo/next-common": "*", "@repo/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.7.9", + "@types/node": "22.8.4", "tsup": "8.3.5", "tsx": "4.19.2", "typescript": "5.6.3" @@ -17445,7 +17445,7 @@ "license": "MIT", "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.7.9", + "@types/node": "22.8.4", "tsup": "8.3.5", "tsx": "4.19.2", "typescript": "5.6.3" @@ -17466,7 +17466,7 @@ "@repo/next-common": "*", "@repo/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.7.9", + "@types/node": "22.8.4", "tsup": "8.3.5", "tsx": "4.19.2", "typescript": "5.6.3" diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 5f3173fe..1790e1c4 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -86,7 +86,7 @@ "@repo/next-common": "*", "@repo/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.7.9", + "@types/node": "22.8.4", "tsup": "8.3.5", "tsx": "4.19.2", "typescript": "5.6.3" diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 3a99030c..f3f4cebf 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -27,7 +27,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.7.9", + "@types/node": "22.8.4", "tsup": "8.3.5", "tsx": "4.19.2", "typescript": "5.6.3" diff --git a/packages/server/package.json b/packages/server/package.json index 4ddeeec1..54013b09 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -31,7 +31,7 @@ "@repo/next-common": "*", "@repo/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.7.9", + "@types/node": "22.8.4", "tsup": "8.3.5", "tsx": "4.19.2", "typescript": "5.6.3" From fe5ad0cd7699508195c5f0223cae5920c1305da5 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 30 Oct 2024 17:25:43 +0300 Subject: [PATCH 439/458] Bump the nextra group across 1 directory with 2 updates (#845) * Bump the nextra group across 1 directory with 2 updates Bumps the nextra group with 2 updates in the / directory: [nextra](https://github.com/shuding/nextra) and [nextra-theme-docs](https://github.com/shuding/nextra). Updates `nextra` from 3.1.0 to 3.2.0 - [Release notes](https://github.com/shuding/nextra/releases) - [Commits](https://github.com/shuding/nextra/compare/nextra@3.1.0...nextra@3.2.0) Updates `nextra-theme-docs` from 3.1.0 to 3.2.0 - [Release notes](https://github.com/shuding/nextra/releases) - [Commits](https://github.com/shuding/nextra/compare/nextra-theme-docs@3.1.0...nextra-theme-docs@3.2.0) --- updated-dependencies: - dependency-name: nextra dependency-type: direct:production update-type: version-update:semver-minor dependency-group: nextra - dependency-name: nextra-theme-docs dependency-type: direct:production update-type: version-update:semver-minor dependency-group: nextra ... Signed-off-by: dependabot[bot] * Add _app.tsx file to the docs --------- Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Arseny <132773930+better-salmon@users.noreply.github.com> --- docs/cache-handler-docs/package.json | 4 ++-- docs/cache-handler-docs/src/pages/_app.tsx | 5 +++++ package-lock.json | 21 ++++++++++++--------- 3 files changed, 19 insertions(+), 11 deletions(-) create mode 100644 docs/cache-handler-docs/src/pages/_app.tsx diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 49d43a27..cf8a392c 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -12,8 +12,8 @@ }, "dependencies": { "next": "14.2.15", - "nextra": "3.1.0", - "nextra-theme-docs": "3.1.0", + "nextra": "3.2.0", + "nextra-theme-docs": "3.2.0", "react": "18.3.1", "react-dom": "18.3.1" }, diff --git a/docs/cache-handler-docs/src/pages/_app.tsx b/docs/cache-handler-docs/src/pages/_app.tsx new file mode 100644 index 00000000..84349555 --- /dev/null +++ b/docs/cache-handler-docs/src/pages/_app.tsx @@ -0,0 +1,5 @@ +import type { AppProps } from 'next/app'; + +export default function MyApp({ Component, pageProps }: AppProps) { + return ; +} diff --git a/package-lock.json b/package-lock.json index 0ecad42b..c0e16f77 100644 --- a/package-lock.json +++ b/package-lock.json @@ -66,8 +66,8 @@ "version": "0.0.0", "dependencies": { "next": "14.2.15", - "nextra": "3.1.0", - "nextra-theme-docs": "3.1.0", + "nextra": "3.2.0", + "nextra-theme-docs": "3.2.0", "react": "18.3.1", "react-dom": "18.3.1" }, @@ -11811,9 +11811,9 @@ } }, "node_modules/nextra": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/nextra/-/nextra-3.1.0.tgz", - "integrity": "sha512-IvG8Q/yLAqSju1zwRPUqC/6WpzAgfmNo6gDw6CIBZJ+3RKdJDsirM/v3BNeN6vx3tSjLFybytOt3spNXHFy/WQ==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/nextra/-/nextra-3.2.0.tgz", + "integrity": "sha512-Gi+Q6BI9rFmQdy3e4FXCqgaSUcv8CGRVOVWbgY6/GTAWKMKK4v5M1gxYNhxdOywSkIoXrxSeXbIaj0qgNdjv3A==", "dependencies": { "@formatjs/intl-localematcher": "^0.5.4", "@headlessui/react": "^2.1.2", @@ -11832,6 +11832,9 @@ "gray-matter": "^4.0.3", "hast-util-to-estree": "^3.1.0", "katex": "^0.16.9", + "mdast-util-from-markdown": "^2.0.1", + "mdast-util-gfm": "^3.0.0", + "mdast-util-to-hast": "^13.2.0", "negotiator": "^1.0.0", "p-limit": "^6.0.0", "rehype-katex": "^7.0.0", @@ -11861,9 +11864,9 @@ } }, "node_modules/nextra-theme-docs": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/nextra-theme-docs/-/nextra-theme-docs-3.1.0.tgz", - "integrity": "sha512-2zAC+xnqLzl/kLYCaoVfdupyA6pD5OgF+4iR3zQiPOzfnwJikPQePnr3SCT+tPPgYVuoqSDA5GNc9DvvAHtefQ==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/nextra-theme-docs/-/nextra-theme-docs-3.2.0.tgz", + "integrity": "sha512-bUa0W3rh+OgUrE8aJXqYpjVAu0AmkJuHZd9Me0qjGK5YinSvQv7jzAWI7+Af4vnWdRkPlh6MIUUHAOPo+Yalcw==", "dependencies": { "@headlessui/react": "^2.1.2", "clsx": "^2.0.0", @@ -11875,7 +11878,7 @@ }, "peerDependencies": { "next": ">=13", - "nextra": "3.1.0", + "nextra": "3.2.0", "react": ">=18", "react-dom": ">=18" } From 6846c749afe4d34301fa9a4266b7e9bebd432053 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 25 Nov 2024 16:20:10 +0300 Subject: [PATCH 440/458] Bump the nextra group across 1 directory with 2 updates (#870) Bumps the nextra group with 2 updates in the / directory: [nextra](https://github.com/shuding/nextra) and [nextra-theme-docs](https://github.com/shuding/nextra). Updates `nextra` from 3.2.0 to 3.2.4 - [Release notes](https://github.com/shuding/nextra/releases) - [Commits](https://github.com/shuding/nextra/compare/nextra@3.2.0...nextra@3.2.4) Updates `nextra-theme-docs` from 3.2.0 to 3.2.4 - [Release notes](https://github.com/shuding/nextra/releases) - [Commits](https://github.com/shuding/nextra/compare/nextra-theme-docs@3.2.0...nextra-theme-docs@3.2.4) --- updated-dependencies: - dependency-name: nextra dependency-type: direct:production update-type: version-update:semver-patch dependency-group: nextra - dependency-name: nextra-theme-docs dependency-type: direct:production update-type: version-update:semver-patch dependency-group: nextra ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- docs/cache-handler-docs/package.json | 4 +- package-lock.json | 419 ++++++++++++--------------- 2 files changed, 191 insertions(+), 232 deletions(-) diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index cf8a392c..a8241d08 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -12,8 +12,8 @@ }, "dependencies": { "next": "14.2.15", - "nextra": "3.2.0", - "nextra-theme-docs": "3.2.0", + "nextra": "3.2.4", + "nextra-theme-docs": "3.2.4", "react": "18.3.1", "react-dom": "18.3.1" }, diff --git a/package-lock.json b/package-lock.json index c0e16f77..1f46c21c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -66,8 +66,8 @@ "version": "0.0.0", "dependencies": { "next": "14.2.15", - "nextra": "3.2.0", - "nextra-theme-docs": "3.2.0", + "nextra": "3.2.4", + "nextra-theme-docs": "3.2.4", "react": "18.3.1", "react-dom": "18.3.1" }, @@ -4151,6 +4151,7 @@ "version": "2.2.0", "resolved": "https://registry.npmjs.org/arch/-/arch-2.2.0.tgz", "integrity": "sha512-Of/R0wqp83cgHozfIYLbBMnej79U/SVGOOyuB3VVFv1NRM/PSFMK12x9KVtiYzJqmnU5WR2qp0Z5rHb7sWGnFQ==", + "dev": true, "funding": [ { "type": "github", @@ -4168,10 +4169,9 @@ "license": "MIT" }, "node_modules/arg": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/arg/-/arg-1.0.0.tgz", - "integrity": "sha512-Wk7TEzl1KqvTGs/uyhmHO/3XLd3t1UeU4IstvPXVzGPM522cTjqjNZ99esCkcL52sjqjo8e8CTBcWhkxvGzoAw==", - "license": "MIT" + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz", + "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==" }, "node_modules/argparse": { "version": "1.0.10", @@ -5086,16 +5086,33 @@ "license": "MIT" }, "node_modules/clipboardy": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/clipboardy/-/clipboardy-1.2.2.tgz", - "integrity": "sha512-16KrBOV7bHmHdxcQiCvfUFYVFyEah4FI8vYT1Fr7CGSA4G+xBWMEfUEQJS1hxeHGtI9ju1Bzs9uXSbj5HZKArw==", - "license": "MIT", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/clipboardy/-/clipboardy-4.0.0.tgz", + "integrity": "sha512-5mOlNS0mhX0707P2I0aZ2V/cmHUEO/fL7VFLqszkhUsxt7RwnmrInf/eEQKlf5GzvYeHIjT+Ov1HRfNmymlG0w==", "dependencies": { - "arch": "^2.1.0", - "execa": "^0.8.0" + "execa": "^8.0.1", + "is-wsl": "^3.1.0", + "is64bit": "^2.0.0" }, "engines": { - "node": ">=4" + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/clipboardy/node_modules/is-wsl": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-3.1.0.tgz", + "integrity": "sha512-UcVfVfaK4Sc4m7X3dUSoHoozQGBEFeDC+zVo06t98xe8CzHSZZBekNXH+tu0NalHolcJ/QAGqS46Hef7QXBIMw==", + "dependencies": { + "is-inside-container": "^1.0.0" + }, + "engines": { + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/clsx": { @@ -5329,7 +5346,6 @@ "version": "7.0.3", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dev": true, "license": "MIT", "dependencies": { "path-key": "^3.1.0", @@ -7718,89 +7734,71 @@ } }, "node_modules/execa": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-0.8.0.tgz", - "integrity": "sha512-zDWS+Rb1E8BlqqhALSt9kUhss8Qq4nN3iof3gsOdyINksElaPyNBtKUMTR62qhvgVWR0CqCX7sdnKe4MnUbFEA==", - "license": "MIT", + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-8.0.1.tgz", + "integrity": "sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==", "dependencies": { - "cross-spawn": "^5.0.1", - "get-stream": "^3.0.0", - "is-stream": "^1.1.0", - "npm-run-path": "^2.0.0", - "p-finally": "^1.0.0", - "signal-exit": "^3.0.0", - "strip-eof": "^1.0.0" + "cross-spawn": "^7.0.3", + "get-stream": "^8.0.1", + "human-signals": "^5.0.0", + "is-stream": "^3.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^5.1.0", + "onetime": "^6.0.0", + "signal-exit": "^4.1.0", + "strip-final-newline": "^3.0.0" }, "engines": { - "node": ">=4" + "node": ">=16.17" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" } }, - "node_modules/execa/node_modules/cross-spawn": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", - "integrity": "sha512-pTgQJ5KC0d2hcY8eyL1IzlBPYjTkyH72XRZPnLyKus2mBfNjQs3klqbJU2VILqZryAZUt9JOb3h/mWMy23/f5A==", - "license": "MIT", - "dependencies": { - "lru-cache": "^4.0.1", - "shebang-command": "^1.2.0", - "which": "^1.2.9" + "node_modules/execa/node_modules/human-signals": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-5.0.0.tgz", + "integrity": "sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==", + "engines": { + "node": ">=16.17.0" } }, - "node_modules/execa/node_modules/lru-cache": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", - "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", - "license": "ISC", - "dependencies": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" + "node_modules/execa/node_modules/mimic-fn": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz", + "integrity": "sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/execa/node_modules/shebang-command": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", - "integrity": "sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==", - "license": "MIT", + "node_modules/execa/node_modules/onetime": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz", + "integrity": "sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==", "dependencies": { - "shebang-regex": "^1.0.0" + "mimic-fn": "^4.0.0" }, "engines": { - "node": ">=0.10.0" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/execa/node_modules/shebang-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", - "integrity": "sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==", - "license": "MIT", + "node_modules/execa/node_modules/strip-final-newline": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz", + "integrity": "sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==", "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/execa/node_modules/signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "license": "ISC" - }, - "node_modules/execa/node_modules/which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "license": "ISC", - "dependencies": { - "isexe": "^2.0.0" + "node": ">=12" }, - "bin": { - "which": "bin/which" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/execa/node_modules/yallist": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==", - "license": "ISC" - }, "node_modules/extend": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", @@ -8383,12 +8381,14 @@ } }, "node_modules/get-stream": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", - "integrity": "sha512-GlhdIUuVakc8SJ6kK0zAFbiGzRFzNnY4jUuEbV9UROo4Y+0Ny4fjvcZFVTeDA4odpFyOQzaw6hXukJSq/f28sQ==", - "license": "MIT", + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-8.0.1.tgz", + "integrity": "sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==", "engines": { - "node": ">=4" + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/get-symbol-description": { @@ -9607,6 +9607,37 @@ "url": "https://github.com/sponsors/wooorm" } }, + "node_modules/is-inside-container": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-inside-container/-/is-inside-container-1.0.0.tgz", + "integrity": "sha512-KIYLCCJghfHZxqjYBE7rEy0OBuTd5xCHS7tHVgvCLkx7StIoaxwNW3hCALgEUjFfeRk+MG/Qxmp/vtETEF3tRA==", + "dependencies": { + "is-docker": "^3.0.0" + }, + "bin": { + "is-inside-container": "cli.js" + }, + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-inside-container/node_modules/is-docker": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-3.0.0.tgz", + "integrity": "sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ==", + "bin": { + "is-docker": "cli.js" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/is-map": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.3.tgz", @@ -9749,12 +9780,14 @@ } }, "node_modules/is-stream": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ==", - "license": "MIT", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz", + "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==", "engines": { - "node": ">=0.10.0" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/is-string": { @@ -9882,6 +9915,20 @@ "node": ">=8" } }, + "node_modules/is64bit": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is64bit/-/is64bit-2.0.0.tgz", + "integrity": "sha512-jv+8jaWCl0g2lSBkNSVXdzfBA0npK1HGC2KtWM9FumFRoGS94g3NbCCLVnCYHLjp4GrW2KZeeSTMo5ddtznmGw==", + "dependencies": { + "system-architecture": "^0.1.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/isarray": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", @@ -10719,7 +10766,6 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", - "dev": true, "license": "MIT" }, "node_modules/merge2": { @@ -11801,19 +11847,18 @@ } }, "node_modules/next-themes": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/next-themes/-/next-themes-0.3.0.tgz", - "integrity": "sha512-/QHIrsYpd6Kfk7xakK4svpDI5mmXP0gfvCoJdGpZQ2TOrQZmsW0QxjaiLn8wbIKjtm4BTSqLoix4lxYYOnLJ/w==", - "license": "MIT", + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/next-themes/-/next-themes-0.4.3.tgz", + "integrity": "sha512-nG84VPkTdUHR2YeD89YchvV4I9RbiMAql3GiLEQlPvq1ioaqPaIReK+yMRdg/zgiXws620qS1rU30TiWmmG9lA==", "peerDependencies": { - "react": "^16.8 || ^17 || ^18", - "react-dom": "^16.8 || ^17 || ^18" + "react": "^16.8 || ^17 || ^18 || ^19 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17 || ^18 || ^19 || ^19.0.0-rc" } }, "node_modules/nextra": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/nextra/-/nextra-3.2.0.tgz", - "integrity": "sha512-Gi+Q6BI9rFmQdy3e4FXCqgaSUcv8CGRVOVWbgY6/GTAWKMKK4v5M1gxYNhxdOywSkIoXrxSeXbIaj0qgNdjv3A==", + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/nextra/-/nextra-3.2.4.tgz", + "integrity": "sha512-xvQuPVtRoJTz4ynIbEkxYkEtviIX699lt4coij2IMmafYrBNaD0Ofj93jIz7VngYxyT9f4gWSiwqNgoIlnbsjQ==", "dependencies": { "@formatjs/intl-localematcher": "^0.5.4", "@headlessui/react": "^2.1.2", @@ -11847,7 +11892,7 @@ "remark-smartypants": "^3.0.0", "shiki": "^1.0.0", "slash": "^5.1.0", - "title": "^3.5.3", + "title": "^4.0.0", "unist-util-remove": "^4.0.0", "unist-util-visit": "^5.0.0", "yaml": "^2.3.2", @@ -11864,21 +11909,21 @@ } }, "node_modules/nextra-theme-docs": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/nextra-theme-docs/-/nextra-theme-docs-3.2.0.tgz", - "integrity": "sha512-bUa0W3rh+OgUrE8aJXqYpjVAu0AmkJuHZd9Me0qjGK5YinSvQv7jzAWI7+Af4vnWdRkPlh6MIUUHAOPo+Yalcw==", + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/nextra-theme-docs/-/nextra-theme-docs-3.2.4.tgz", + "integrity": "sha512-3fg7zMHInuvSDURRJjh6UrbdqkK8uLs8RNriY38kVukWLvaVP2f6mmVJKIYqxVv6qAKWEzDLTr4dlJCY81eXuQ==", "dependencies": { "@headlessui/react": "^2.1.2", "clsx": "^2.0.0", "escape-string-regexp": "^5.0.0", "flexsearch": "^0.7.43", - "next-themes": "^0.3.0", + "next-themes": "^0.4.0", "scroll-into-view-if-needed": "^3.1.0", "zod": "^3.22.3" }, "peerDependencies": { "next": ">=13", - "nextra": "3.2.0", + "nextra": "3.2.4", "react": ">=18", "react-dom": ">=18" } @@ -11996,24 +12041,28 @@ } }, "node_modules/npm-run-path": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", - "integrity": "sha512-lJxZYlT4DW/bRUtFh1MQIWqmLwQfAxnqWG4HhEdjMlkrJYnJn0Jrr2u3mgxqaWsdiBc76TYkTG/mhrnYTuzfHw==", - "license": "MIT", + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.3.0.tgz", + "integrity": "sha512-ppwTtiJZq0O/ai0z7yfudtBpWIoxM8yE6nHi1X47eFR2EWORqfbu6CnPlNsjeN683eT0qG6H/Pyf9fCcvjnnnQ==", "dependencies": { - "path-key": "^2.0.0" + "path-key": "^4.0.0" }, "engines": { - "node": ">=4" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/npm-run-path/node_modules/path-key": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", - "integrity": "sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==", - "license": "MIT", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz", + "integrity": "sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==", "engines": { - "node": ">=4" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/npm-to-yarn": { @@ -12287,15 +12336,6 @@ "node": ">=8" } }, - "node_modules/p-finally": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", - "integrity": "sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow==", - "license": "MIT", - "engines": { - "node": ">=4" - } - }, "node_modules/p-limit": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", @@ -12525,7 +12565,6 @@ "version": "3.1.1", "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true, "license": "MIT", "engines": { "node": ">=8" @@ -14349,13 +14388,6 @@ "url": "https://github.com/sponsors/epoberezkin" } }, - "node_modules/serve/node_modules/arg": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz", - "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==", - "dev": true, - "license": "MIT" - }, "node_modules/serve/node_modules/chalk": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.0.1.tgz", @@ -14508,7 +14540,6 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, "license": "MIT", "dependencies": { "shebang-regex": "^3.0.0" @@ -14521,7 +14552,6 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true, "license": "MIT", "engines": { "node": ">=8" @@ -14571,7 +14601,6 @@ "version": "4.1.0", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", - "dev": true, "license": "ISC", "engines": { "node": ">=14" @@ -15172,15 +15201,6 @@ "node": ">=0.10.0" } }, - "node_modules/strip-eof": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", - "integrity": "sha512-7FCwGGmx8mD5xQd3RPUvnSpUXHM3BWuzjtpD4TXsfcZ9EL4azvVVUscFYwD9nx8Kh+uCBC00XBtAykoMHwTh8Q==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/strip-final-newline": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", @@ -15411,6 +15431,17 @@ "url": "https://opencollective.com/unts" } }, + "node_modules/system-architecture": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/system-architecture/-/system-architecture-0.1.0.tgz", + "integrity": "sha512-ulAk51I9UVUyJgxlv9M6lFot2WP3e7t8Kz9+IS6D4rVba1tR9kON+Ey69f+1R4Q8cd45Lod6a4IcJIxnzGc/zA==", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/systeminformation": { "version": "5.23.5", "resolved": "https://registry.npmjs.org/systeminformation/-/systeminformation-5.23.5.tgz", @@ -15555,98 +15586,27 @@ } }, "node_modules/title": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/title/-/title-3.5.3.tgz", - "integrity": "sha512-20JyowYglSEeCvZv3EZ0nZ046vLarO37prvV0mbtQV7C8DJPGgN967r8SJkqd3XK3K3lD3/Iyfp3avjfil8Q2Q==", - "license": "MIT", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/title/-/title-4.0.1.tgz", + "integrity": "sha512-xRnPkJx9nvE5MF6LkB5e8QJjE2FW8269wTu/LQdf7zZqBgPly0QJPf/CWAo7srj5so4yXfoLEdCFgurlpi47zg==", "dependencies": { - "arg": "1.0.0", - "chalk": "2.3.0", - "clipboardy": "1.2.2", - "titleize": "1.0.0" + "arg": "^5.0.0", + "chalk": "^5.0.0", + "clipboardy": "^4.0.0" }, "bin": { - "title": "bin/title.js" - } - }, - "node_modules/title/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "license": "MIT", - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" + "title": "dist/esm/bin.js" } }, "node_modules/title/node_modules/chalk": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.3.0.tgz", - "integrity": "sha512-Az5zJR2CBujap2rqXGaJKaPHyJ0IrUimvYNX+ncCy8PJP4ltOGTrHUIo097ZaL2zMeKYpiCdqDvS6zdrTFok3Q==", - "license": "MIT", - "dependencies": { - "ansi-styles": "^3.1.0", - "escape-string-regexp": "^1.0.5", - "supports-color": "^4.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/title/node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "license": "MIT", - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/title/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", - "license": "MIT" - }, - "node_modules/title/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "license": "MIT", - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/title/node_modules/has-flag": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz", - "integrity": "sha512-P+1n3MnwjR/Epg9BBo1KT8qbye2g2Ou4sFumihwt6I4tsUX7jnLcX4BTOSKg/B1ZrIYMN9FcEnG4x5a7NB8Eng==", - "license": "MIT", + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.3.0.tgz", + "integrity": "sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==", "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/title/node_modules/supports-color": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-4.5.0.tgz", - "integrity": "sha512-ycQR/UbvI9xIlEdQT1TQqwoXtEldExbCEAJgRo5YXlmSKjv6ThHnP9/vwGa1gr19Gfw+LkFd7KqYMhzrRC5JYw==", - "license": "MIT", - "dependencies": { - "has-flag": "^2.0.0" + "node": "^12.17.0 || ^14.13 || >=16.0.0" }, - "engines": { - "node": ">=4" - } - }, - "node_modules/titleize": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/titleize/-/titleize-1.0.0.tgz", - "integrity": "sha512-TARUb7z1pGvlLxgPk++7wJ6aycXF3GJ0sNSBTAsTuJrQG5QuZlkUQP+zl+nbjAh4gMX9yDw9ZYklMd7vAfJKEw==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, "node_modules/tmp": { @@ -17092,7 +17052,6 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, "license": "ISC", "dependencies": { "isexe": "^2.0.0" From 39541a37b94189359a2325be2b648ca22b44183e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 25 Nov 2024 16:29:47 +0300 Subject: [PATCH 441/458] Bump @types/node in the definitely-typed group across 1 directory (#875) Bumps the definitely-typed group with 1 update in the / directory: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node). Updates `@types/node` from 22.8.4 to 22.9.3 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) --- updated-dependencies: - dependency-name: "@types/node" dependency-type: direct:development update-type: version-update:semver-minor dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- internal/backend/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 22 ++++++++++----------- packages/cache-handler/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 9 files changed, 19 insertions(+), 19 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index a3f0640d..6547d5a1 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -28,7 +28,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.12", - "@types/node": "22.8.4", + "@types/node": "22.9.3", "@types/react": "18.3.12", "@types/react-dom": "18.3.1", "dotenv-cli": "7.4.2", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index a8241d08..8b26258c 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -22,7 +22,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.12", - "@types/node": "22.8.4", + "@types/node": "22.9.3", "@types/react": "18.3.12", "@types/react-dom": "18.3.1", "eslint": "8.57.1", diff --git a/internal/backend/package.json b/internal/backend/package.json index f96ec011..b658c827 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -14,7 +14,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.8.4", + "@types/node": "22.9.3", "pino-pretty": "11.3.0", "tsx": "4.19.2", "typescript": "5.6.3" diff --git a/internal/next-common/package.json b/internal/next-common/package.json index 8bf071d1..3616f0fa 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -12,7 +12,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.8.4", + "@types/node": "22.9.3", "typescript": "5.6.3" } } diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index a71e1cbf..e2361a39 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -13,7 +13,7 @@ "devDependencies": { "@repo/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "22.8.4", + "@types/node": "22.9.3", "typescript": "5.6.3" } } diff --git a/package-lock.json b/package-lock.json index 1f46c21c..ca8df401 100644 --- a/package-lock.json +++ b/package-lock.json @@ -50,7 +50,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.12", - "@types/node": "22.8.4", + "@types/node": "22.9.3", "@types/react": "18.3.12", "@types/react-dom": "18.3.1", "dotenv-cli": "7.4.2", @@ -76,7 +76,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.12", - "@types/node": "22.8.4", + "@types/node": "22.9.3", "@types/react": "18.3.12", "@types/react-dom": "18.3.1", "eslint": "8.57.1", @@ -94,7 +94,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.8.4", + "@types/node": "22.9.3", "pino-pretty": "11.3.0", "tsx": "4.19.2", "typescript": "5.6.3" @@ -122,7 +122,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.8.4", + "@types/node": "22.9.3", "typescript": "5.6.3" } }, @@ -136,7 +136,7 @@ "devDependencies": { "@repo/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "22.8.4", + "@types/node": "22.9.3", "typescript": "5.6.3" } }, @@ -3546,9 +3546,9 @@ } }, "node_modules/@types/node": { - "version": "22.8.4", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.8.4.tgz", - "integrity": "sha512-SpNNxkftTJOPk0oN+y2bIqurEXHTA2AOZ3EJDDKeJ5VzkvvORSvmQXGQarcOzWV1ac7DCaPBEdMDxBsM+d8jWw==", + "version": "22.9.3", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.9.3.tgz", + "integrity": "sha512-F3u1fs/fce3FFk+DAxbxc78DF8x0cY09RRL8GnXLmkJ1jvx3TtPdWoTT5/NiYfI5ASqXBmfqJi9dZ3gxMx4lzw==", "dev": true, "dependencies": { "undici-types": "~6.19.8" @@ -17391,7 +17391,7 @@ "@repo/next-common": "*", "@repo/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.8.4", + "@types/node": "22.9.3", "tsup": "8.3.5", "tsx": "4.19.2", "typescript": "5.6.3" @@ -17407,7 +17407,7 @@ "license": "MIT", "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.8.4", + "@types/node": "22.9.3", "tsup": "8.3.5", "tsx": "4.19.2", "typescript": "5.6.3" @@ -17428,7 +17428,7 @@ "@repo/next-common": "*", "@repo/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.8.4", + "@types/node": "22.9.3", "tsup": "8.3.5", "tsx": "4.19.2", "typescript": "5.6.3" diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 1790e1c4..a8680def 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -86,7 +86,7 @@ "@repo/next-common": "*", "@repo/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.8.4", + "@types/node": "22.9.3", "tsup": "8.3.5", "tsx": "4.19.2", "typescript": "5.6.3" diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index f3f4cebf..874a746b 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -27,7 +27,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.8.4", + "@types/node": "22.9.3", "tsup": "8.3.5", "tsx": "4.19.2", "typescript": "5.6.3" diff --git a/packages/server/package.json b/packages/server/package.json index 54013b09..746af06b 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -31,7 +31,7 @@ "@repo/next-common": "*", "@repo/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.8.4", + "@types/node": "22.9.3", "tsup": "8.3.5", "tsx": "4.19.2", "typescript": "5.6.3" From 714c5aa7fb6fd7012dabd3dab347d572f0e03cbd Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 25 Nov 2024 16:49:28 +0300 Subject: [PATCH 442/458] Bump dotenv-cli from 7.4.2 to 7.4.4 (#871) Bumps [dotenv-cli](https://github.com/entropitor/dotenv-cli) from 7.4.2 to 7.4.4. - [Release notes](https://github.com/entropitor/dotenv-cli/releases) - [Commits](https://github.com/entropitor/dotenv-cli/compare/v7.4.2...v7.4.4) --- updated-dependencies: - dependency-name: dotenv-cli dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- package-lock.json | 18 ++++++++---------- 2 files changed, 9 insertions(+), 11 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 6547d5a1..e3155bbd 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -31,7 +31,7 @@ "@types/node": "22.9.3", "@types/react": "18.3.12", "@types/react-dom": "18.3.1", - "dotenv-cli": "7.4.2", + "dotenv-cli": "7.4.4", "eslint": "8.57.1", "fastify": "5.0.0", "pm2": "5.4.2", diff --git a/package-lock.json b/package-lock.json index ca8df401..ecc42aac 100644 --- a/package-lock.json +++ b/package-lock.json @@ -53,7 +53,7 @@ "@types/node": "22.9.3", "@types/react": "18.3.12", "@types/react-dom": "18.3.1", - "dotenv-cli": "7.4.2", + "dotenv-cli": "7.4.4", "eslint": "8.57.1", "fastify": "5.0.0", "pm2": "5.4.2", @@ -5343,10 +5343,9 @@ "license": "MIT" }, "node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "license": "MIT", + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", "dependencies": { "path-key": "^3.1.0", "shebang-command": "^2.0.0", @@ -6214,13 +6213,12 @@ } }, "node_modules/dotenv-cli": { - "version": "7.4.2", - "resolved": "https://registry.npmjs.org/dotenv-cli/-/dotenv-cli-7.4.2.tgz", - "integrity": "sha512-SbUj8l61zIbzyhIbg0FwPJq6+wjbzdn9oEtozQpZ6kW2ihCcapKVZj49oCT3oPM+mgQm+itgvUQcG5szxVrZTA==", + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/dotenv-cli/-/dotenv-cli-7.4.4.tgz", + "integrity": "sha512-XkBYCG0tPIes+YZr4SpfFv76SQrV/LeCE8CI7JSEMi3VR9MvTihCGTOtbIexD6i2mXF+6px7trb1imVCXSNMDw==", "dev": true, - "license": "MIT", "dependencies": { - "cross-spawn": "^7.0.3", + "cross-spawn": "^7.0.6", "dotenv": "^16.3.0", "dotenv-expand": "^10.0.0", "minimist": "^1.2.6" From 98cdd5756218fe28fea1f0ecb68e6231dd3ce547 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 25 Nov 2024 16:59:06 +0300 Subject: [PATCH 443/458] Bump @changesets/cli from 2.27.9 to 2.27.10 (#869) Bumps [@changesets/cli](https://github.com/changesets/changesets) from 2.27.9 to 2.27.10. - [Release notes](https://github.com/changesets/changesets/releases) - [Changelog](https://github.com/changesets/changesets/blob/main/docs/modifying-changelog-format.md) - [Commits](https://github.com/changesets/changesets/compare/@changesets/cli@2.27.9...@changesets/cli@2.27.10) --- updated-dependencies: - dependency-name: "@changesets/cli" dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 210 ++++++++++++---------------------------------- package.json | 2 +- 2 files changed, 53 insertions(+), 159 deletions(-) diff --git a/package-lock.json b/package-lock.json index ecc42aac..5e46c79d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -15,7 +15,7 @@ "internal/*" ], "dependencies": { - "@changesets/cli": "2.27.9" + "@changesets/cli": "2.27.10" }, "devDependencies": { "@actions/core": "1.11.1", @@ -594,10 +594,9 @@ } }, "node_modules/@babel/runtime": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.25.7.tgz", - "integrity": "sha512-FjoyLe754PMiYsFaN5C94ttGiOmBNYTf6pLr4xXHAT5uctHb092PBszndLDR5XA/jghQvn4n7JMHl7dmTgbm9w==", - "license": "MIT", + "version": "7.26.0", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.26.0.tgz", + "integrity": "sha512-FDSOghenHTiToteC/QRlv2q3DhPZ/oOXTBoirfWNx1Cx3TMVcGWQtMMmQcSvb/JjpNeGzx8Pq/b4fKEJuWm1sw==", "dependencies": { "regenerator-runtime": "^0.14.0" }, @@ -826,14 +825,13 @@ "license": "MIT" }, "node_modules/@changesets/apply-release-plan": { - "version": "7.0.5", - "resolved": "https://registry.npmjs.org/@changesets/apply-release-plan/-/apply-release-plan-7.0.5.tgz", - "integrity": "sha512-1cWCk+ZshEkSVEZrm2fSj1Gz8sYvxgUL4Q78+1ZZqeqfuevPTPk033/yUZ3df8BKMohkqqHfzj0HOOrG0KtXTw==", - "license": "MIT", + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/@changesets/apply-release-plan/-/apply-release-plan-7.0.6.tgz", + "integrity": "sha512-TKhVLtiwtQOgMAC0fCJfmv93faiViKSDqr8oMEqrnNs99gtSC1sZh/aEMS9a+dseU1ESZRCK+ofLgGY7o0fw/Q==", "dependencies": { - "@changesets/config": "^3.0.3", + "@changesets/config": "^3.0.4", "@changesets/get-version-range-type": "^0.4.0", - "@changesets/git": "^3.0.1", + "@changesets/git": "^3.0.2", "@changesets/should-skip-package": "^0.1.1", "@changesets/types": "^6.0.0", "@manypkg/get-packages": "^1.1.3", @@ -850,7 +848,6 @@ "version": "2.8.8", "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz", "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==", - "license": "MIT", "bin": { "prettier": "bin-prettier.js" }, @@ -862,10 +859,9 @@ } }, "node_modules/@changesets/assemble-release-plan": { - "version": "6.0.4", - "resolved": "https://registry.npmjs.org/@changesets/assemble-release-plan/-/assemble-release-plan-6.0.4.tgz", - "integrity": "sha512-nqICnvmrwWj4w2x0fOhVj2QEGdlUuwVAwESrUo5HLzWMI1rE5SWfsr9ln+rDqWB6RQ2ZyaMZHUcU7/IRaUJS+Q==", - "license": "MIT", + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/@changesets/assemble-release-plan/-/assemble-release-plan-6.0.5.tgz", + "integrity": "sha512-IgvBWLNKZd6k4t72MBTBK3nkygi0j3t3zdC1zrfusYo0KpdsvnDjrMM9vPnTCLCMlfNs55jRL4gIMybxa64FCQ==", "dependencies": { "@changesets/errors": "^0.2.0", "@changesets/get-dependents-graph": "^2.1.2", @@ -885,22 +881,21 @@ } }, "node_modules/@changesets/cli": { - "version": "2.27.9", - "resolved": "https://registry.npmjs.org/@changesets/cli/-/cli-2.27.9.tgz", - "integrity": "sha512-q42a/ZbDnxPpCb5Wkm6tMVIxgeI9C/bexntzTeCFBrQEdpisQqk8kCHllYZMDjYtEc1ZzumbMJAG8H0Z4rdvjg==", - "license": "MIT", + "version": "2.27.10", + "resolved": "https://registry.npmjs.org/@changesets/cli/-/cli-2.27.10.tgz", + "integrity": "sha512-PfeXjvs9OfQJV8QSFFHjwHX3QnUL9elPEQ47SgkiwzLgtKGyuikWjrdM+lO9MXzOE22FO9jEGkcs4b+B6D6X0Q==", "dependencies": { - "@changesets/apply-release-plan": "^7.0.5", - "@changesets/assemble-release-plan": "^6.0.4", + "@changesets/apply-release-plan": "^7.0.6", + "@changesets/assemble-release-plan": "^6.0.5", "@changesets/changelog-git": "^0.2.0", - "@changesets/config": "^3.0.3", + "@changesets/config": "^3.0.4", "@changesets/errors": "^0.2.0", "@changesets/get-dependents-graph": "^2.1.2", - "@changesets/get-release-plan": "^4.0.4", - "@changesets/git": "^3.0.1", + "@changesets/get-release-plan": "^4.0.5", + "@changesets/git": "^3.0.2", "@changesets/logger": "^0.1.1", "@changesets/pre": "^2.0.1", - "@changesets/read": "^0.6.1", + "@changesets/read": "^0.6.2", "@changesets/should-skip-package": "^0.1.1", "@changesets/types": "^6.0.0", "@changesets/write": "^0.3.2", @@ -916,7 +911,7 @@ "picocolors": "^1.1.0", "resolve-from": "^5.0.0", "semver": "^7.5.3", - "spawndamnit": "^2.0.0", + "spawndamnit": "^3.0.1", "term-size": "^2.1.0" }, "bin": { @@ -924,10 +919,9 @@ } }, "node_modules/@changesets/config": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@changesets/config/-/config-3.0.3.tgz", - "integrity": "sha512-vqgQZMyIcuIpw9nqFIpTSNyc/wgm/Lu1zKN5vECy74u95Qx/Wa9g27HdgO4NkVAaq+BGA8wUc/qvbvVNs93n6A==", - "license": "MIT", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@changesets/config/-/config-3.0.4.tgz", + "integrity": "sha512-+DiIwtEBpvvv1z30f8bbOsUQGuccnZl9KRKMM/LxUHuDu5oEjmN+bJQ1RIBKNJjfYMQn8RZzoPiX0UgPaLQyXw==", "dependencies": { "@changesets/errors": "^0.2.0", "@changesets/get-dependents-graph": "^2.1.2", @@ -935,14 +929,13 @@ "@changesets/types": "^6.0.0", "@manypkg/get-packages": "^1.1.3", "fs-extra": "^7.0.1", - "micromatch": "^4.0.2" + "micromatch": "^4.0.8" } }, "node_modules/@changesets/errors": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/@changesets/errors/-/errors-0.2.0.tgz", "integrity": "sha512-6BLOQUscTpZeGljvyQXlWOItQyU71kCdGz7Pi8H8zdw6BI0g3m43iL4xKUVPWtG+qrrL9DTjpdn8eYuCQSRpow==", - "license": "MIT", "dependencies": { "extendable-error": "^0.1.5" } @@ -951,7 +944,6 @@ "version": "2.1.2", "resolved": "https://registry.npmjs.org/@changesets/get-dependents-graph/-/get-dependents-graph-2.1.2.tgz", "integrity": "sha512-sgcHRkiBY9i4zWYBwlVyAjEM9sAzs4wYVwJUdnbDLnVG3QwAaia1Mk5P8M7kraTOZN+vBET7n8KyB0YXCbFRLQ==", - "license": "MIT", "dependencies": { "@changesets/types": "^6.0.0", "@manypkg/get-packages": "^1.1.3", @@ -960,15 +952,14 @@ } }, "node_modules/@changesets/get-release-plan": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/@changesets/get-release-plan/-/get-release-plan-4.0.4.tgz", - "integrity": "sha512-SicG/S67JmPTrdcc9Vpu0wSQt7IiuN0dc8iR5VScnnTVPfIaLvKmEGRvIaF0kcn8u5ZqLbormZNTO77bCEvyWw==", - "license": "MIT", + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/@changesets/get-release-plan/-/get-release-plan-4.0.5.tgz", + "integrity": "sha512-E6wW7JoSMcctdVakut0UB76FrrN3KIeJSXvB+DHMFo99CnC3ZVnNYDCVNClMlqAhYGmLmAj77QfApaI3ca4Fkw==", "dependencies": { - "@changesets/assemble-release-plan": "^6.0.4", - "@changesets/config": "^3.0.3", + "@changesets/assemble-release-plan": "^6.0.5", + "@changesets/config": "^3.0.4", "@changesets/pre": "^2.0.1", - "@changesets/read": "^0.6.1", + "@changesets/read": "^0.6.2", "@changesets/types": "^6.0.0", "@manypkg/get-packages": "^1.1.3" } @@ -976,27 +967,24 @@ "node_modules/@changesets/get-version-range-type": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/@changesets/get-version-range-type/-/get-version-range-type-0.4.0.tgz", - "integrity": "sha512-hwawtob9DryoGTpixy1D3ZXbGgJu1Rhr+ySH2PvTLHvkZuQ7sRT4oQwMh0hbqZH1weAooedEjRsbrWcGLCeyVQ==", - "license": "MIT" + "integrity": "sha512-hwawtob9DryoGTpixy1D3ZXbGgJu1Rhr+ySH2PvTLHvkZuQ7sRT4oQwMh0hbqZH1weAooedEjRsbrWcGLCeyVQ==" }, "node_modules/@changesets/git": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@changesets/git/-/git-3.0.1.tgz", - "integrity": "sha512-pdgHcYBLCPcLd82aRcuO0kxCDbw/yISlOtkmwmE8Odo1L6hSiZrBOsRl84eYG7DRCab/iHnOkWqExqc4wxk2LQ==", - "license": "MIT", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@changesets/git/-/git-3.0.2.tgz", + "integrity": "sha512-r1/Kju9Y8OxRRdvna+nxpQIsMsRQn9dhhAZt94FLDeu0Hij2hnOozW8iqnHBgvu+KdnJppCveQwK4odwfw/aWQ==", "dependencies": { "@changesets/errors": "^0.2.0", "@manypkg/get-packages": "^1.1.3", "is-subdir": "^1.1.1", - "micromatch": "^4.0.2", - "spawndamnit": "^2.0.0" + "micromatch": "^4.0.8", + "spawndamnit": "^3.0.1" } }, "node_modules/@changesets/logger": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/@changesets/logger/-/logger-0.1.1.tgz", "integrity": "sha512-OQtR36ZlnuTxKqoW4Sv6x5YIhOmClRd5pWsjZsddYxpWs517R0HkyiefQPIytCVh4ZcC5x9XaG8KTdd5iRQUfg==", - "license": "MIT", "dependencies": { "picocolors": "^1.1.0" } @@ -1005,7 +993,6 @@ "version": "0.4.0", "resolved": "https://registry.npmjs.org/@changesets/parse/-/parse-0.4.0.tgz", "integrity": "sha512-TS/9KG2CdGXS27S+QxbZXgr8uPsP4yNJYb4BC2/NeFUj80Rni3TeD2qwWmabymxmrLo7JEsytXH1FbpKTbvivw==", - "license": "MIT", "dependencies": { "@changesets/types": "^6.0.0", "js-yaml": "^3.13.1" @@ -1015,7 +1002,6 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/@changesets/pre/-/pre-2.0.1.tgz", "integrity": "sha512-vvBJ/If4jKM4tPz9JdY2kGOgWmCowUYOi5Ycv8dyLnEE8FgpYYUo1mgJZxcdtGGP3aG8rAQulGLyyXGSLkIMTQ==", - "license": "MIT", "dependencies": { "@changesets/errors": "^0.2.0", "@changesets/types": "^6.0.0", @@ -1024,12 +1010,11 @@ } }, "node_modules/@changesets/read": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/@changesets/read/-/read-0.6.1.tgz", - "integrity": "sha512-jYMbyXQk3nwP25nRzQQGa1nKLY0KfoOV7VLgwucI0bUO8t8ZLCr6LZmgjXsiKuRDc+5A6doKPr9w2d+FEJ55zQ==", - "license": "MIT", + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/@changesets/read/-/read-0.6.2.tgz", + "integrity": "sha512-wjfQpJvryY3zD61p8jR87mJdyx2FIhEcdXhKUqkja87toMrP/3jtg/Yg29upN+N4Ckf525/uvV7a4tzBlpk6gg==", "dependencies": { - "@changesets/git": "^3.0.1", + "@changesets/git": "^3.0.2", "@changesets/logger": "^0.1.1", "@changesets/parse": "^0.4.0", "@changesets/types": "^6.0.0", @@ -1042,7 +1027,6 @@ "version": "0.1.1", "resolved": "https://registry.npmjs.org/@changesets/should-skip-package/-/should-skip-package-0.1.1.tgz", "integrity": "sha512-H9LjLbF6mMHLtJIc/eHR9Na+MifJ3VxtgP/Y+XLn4BF7tDTEN1HNYtH6QMcjP1uxp9sjaFYmW8xqloaCi/ckTg==", - "license": "MIT", "dependencies": { "@changesets/types": "^6.0.0", "@manypkg/get-packages": "^1.1.3" @@ -1919,7 +1903,6 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/@manypkg/find-root/-/find-root-1.1.0.tgz", "integrity": "sha512-mki5uBvhHzO8kYYix/WRy2WX8S3B5wdVSc9D6KcU5lQNglP2yt58/VfLuAK49glRXChosY8ap2oJ1qgma3GUVA==", - "license": "MIT", "dependencies": { "@babel/runtime": "^7.5.5", "@types/node": "^12.7.1", @@ -1936,7 +1919,6 @@ "version": "8.1.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", - "license": "MIT", "dependencies": { "graceful-fs": "^4.2.0", "jsonfile": "^4.0.0", @@ -1950,7 +1932,6 @@ "version": "1.1.3", "resolved": "https://registry.npmjs.org/@manypkg/get-packages/-/get-packages-1.1.3.tgz", "integrity": "sha512-fo+QhuU3qE/2TQMQmbVMqaQ6EWbMhi4ABWP+O4AM1NqPBuy0OrApV5LO6BrrgnhtAHS2NH6RrVk9OL181tTi8A==", - "license": "MIT", "dependencies": { "@babel/runtime": "^7.5.5", "@changesets/types": "^4.0.1", @@ -1963,14 +1944,12 @@ "node_modules/@manypkg/get-packages/node_modules/@changesets/types": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/@changesets/types/-/types-4.1.0.tgz", - "integrity": "sha512-LDQvVDv5Kb50ny2s25Fhm3d9QSZimsoUGBsUioj6MC3qbMUCuC8GPIvk/M6IvXx3lYhAs0lwWUQLb+VIEUCECw==", - "license": "MIT" + "integrity": "sha512-LDQvVDv5Kb50ny2s25Fhm3d9QSZimsoUGBsUioj6MC3qbMUCuC8GPIvk/M6IvXx3lYhAs0lwWUQLb+VIEUCECw==" }, "node_modules/@manypkg/get-packages/node_modules/fs-extra": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", - "license": "MIT", "dependencies": { "graceful-fs": "^4.2.0", "jsonfile": "^4.0.0", @@ -4529,7 +4508,6 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/better-path-resolve/-/better-path-resolve-1.0.0.tgz", "integrity": "sha512-pbnl5XzGBdrFU/wT4jqmJVPn2B6UHPBOhzMQkY/SPUPB6QtUXtmBHBIwCbXJol93mOpGMnQyP/+BB19q04xj7g==", - "license": "MIT", "dependencies": { "is-windows": "^1.0.0" }, @@ -6137,7 +6115,6 @@ "version": "6.1.0", "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-6.1.0.tgz", "integrity": "sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA==", - "license": "MIT", "engines": { "node": ">=8" } @@ -7818,8 +7795,7 @@ "node_modules/extendable-error": { "version": "0.1.7", "resolved": "https://registry.npmjs.org/extendable-error/-/extendable-error-0.1.7.tgz", - "integrity": "sha512-UOiS2in6/Q0FK0R0q6UY9vYpQ21mr/Qn1KOnte7vsACuNJf514WvCCUHSRCPcgjPT2bAhNIJdlE6bVap1GKmeg==", - "license": "MIT" + "integrity": "sha512-UOiS2in6/Q0FK0R0q6UY9vYpQ21mr/Qn1KOnte7vsACuNJf514WvCCUHSRCPcgjPT2bAhNIJdlE6bVap1GKmeg==" }, "node_modules/external-editor": { "version": "3.1.0", @@ -9808,7 +9784,6 @@ "version": "1.2.0", "resolved": "https://registry.npmjs.org/is-subdir/-/is-subdir-1.2.0.tgz", "integrity": "sha512-2AT6j+gXe/1ueqbW6fLZJiIw3F8iXGJtt0yDrZaBhAZEG1raiTxKWU+IPqMCzQAXOUCKdA4UDMgacKH25XG2Cw==", - "license": "MIT", "dependencies": { "better-path-resolve": "1.0.0" }, @@ -9895,7 +9870,6 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", - "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -10336,8 +10310,7 @@ "node_modules/lodash.startcase": { "version": "4.4.0", "resolved": "https://registry.npmjs.org/lodash.startcase/-/lodash.startcase-4.4.0.tgz", - "integrity": "sha512-+WKqsK294HMSc2jEbNgpHpd0JfIBhp7rEV4aqXWqFr6AlXov+SlcgB1Fv01y2kGe3Gc8nMW7VA0SrGuSkRfIEg==", - "license": "MIT" + "integrity": "sha512-+WKqsK294HMSc2jEbNgpHpd0JfIBhp7rEV4aqXWqFr6AlXov+SlcgB1Fv01y2kGe3Gc8nMW7VA0SrGuSkRfIEg==" }, "node_modules/longest-streak": { "version": "3.1.0", @@ -12319,14 +12292,12 @@ "node_modules/outdent": { "version": "0.5.0", "resolved": "https://registry.npmjs.org/outdent/-/outdent-0.5.0.tgz", - "integrity": "sha512-/jHxFIzoMXdqPzTaCpFzAAWhpkSjZPF4Vsn6jAfNpmbH/ymsmd7Qc6VE9BGn0L6YMj6uwpQLxCECpus4ukKS9Q==", - "license": "MIT" + "integrity": "sha512-/jHxFIzoMXdqPzTaCpFzAAWhpkSjZPF4Vsn6jAfNpmbH/ymsmd7Qc6VE9BGn0L6YMj6uwpQLxCECpus4ukKS9Q==" }, "node_modules/p-filter": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/p-filter/-/p-filter-2.1.0.tgz", "integrity": "sha512-ZBxxZ5sL2HghephhpGAQdoskxplTwr7ICaehZwLIlfL6acuVgZPm8yBNuRAFBGEqtD/hmUeq9eqLg2ys9Xr/yw==", - "license": "MIT", "dependencies": { "p-map": "^2.0.0" }, @@ -12365,7 +12336,6 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/p-map/-/p-map-2.1.0.tgz", "integrity": "sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==", - "license": "MIT", "engines": { "node": ">=6" } @@ -12670,7 +12640,6 @@ "version": "4.0.1", "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "license": "MIT", "engines": { "node": ">=6" } @@ -13231,12 +13200,6 @@ "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==", "license": "MIT" }, - "node_modules/pseudomap": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", - "integrity": "sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==", - "license": "ISC" - }, "node_modules/pump": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.2.tgz", @@ -13423,7 +13386,6 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/read-yaml-file/-/read-yaml-file-1.1.0.tgz", "integrity": "sha512-VIMnQi/Z4HT2Fxuwg5KrY174U1VdUIASQVWXXyqtNRtxSr9IYkn1rsI6Tb6HsrHCmB7gVpNwX6JxPTHcH6IoTA==", - "license": "MIT", "dependencies": { "graceful-fs": "^4.1.5", "js-yaml": "^3.6.1", @@ -13521,8 +13483,7 @@ "node_modules/regenerator-runtime": { "version": "0.14.1", "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz", - "integrity": "sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==", - "license": "MIT" + "integrity": "sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==" }, "node_modules/regex": { "version": "4.3.3", @@ -14786,81 +14747,14 @@ } }, "node_modules/spawndamnit": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/spawndamnit/-/spawndamnit-2.0.0.tgz", - "integrity": "sha512-j4JKEcncSjFlqIwU5L/rp2N5SIPsdxaRsIv678+TZxZ0SRDJTm8JrxJMjE/XuiEZNEir3S8l0Fa3Ke339WI4qA==", - "license": "MIT", - "dependencies": { - "cross-spawn": "^5.1.0", - "signal-exit": "^3.0.2" - } - }, - "node_modules/spawndamnit/node_modules/cross-spawn": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", - "integrity": "sha512-pTgQJ5KC0d2hcY8eyL1IzlBPYjTkyH72XRZPnLyKus2mBfNjQs3klqbJU2VILqZryAZUt9JOb3h/mWMy23/f5A==", - "license": "MIT", - "dependencies": { - "lru-cache": "^4.0.1", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - } - }, - "node_modules/spawndamnit/node_modules/lru-cache": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", - "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", - "license": "ISC", - "dependencies": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" - } - }, - "node_modules/spawndamnit/node_modules/shebang-command": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", - "integrity": "sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==", - "license": "MIT", - "dependencies": { - "shebang-regex": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/spawndamnit/node_modules/shebang-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", - "integrity": "sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/spawndamnit/node_modules/signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "license": "ISC" - }, - "node_modules/spawndamnit/node_modules/which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "license": "ISC", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spawndamnit/-/spawndamnit-3.0.1.tgz", + "integrity": "sha512-MmnduQUuHCoFckZoWnXsTg7JaiLBJrKFj9UI2MbRPGaJeVpsLcVBu6P/IGZovziM/YBsellCmsprgNA+w0CzVg==", "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "which": "bin/which" + "cross-spawn": "^7.0.5", + "signal-exit": "^4.0.1" } }, - "node_modules/spawndamnit/node_modules/yallist": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==", - "license": "ISC" - }, "node_modules/spdx-correct": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.2.0.tgz", diff --git a/package.json b/package.json index 03326a6d..4cdcff8d 100644 --- a/package.json +++ b/package.json @@ -31,7 +31,7 @@ "test": "turbo run test" }, "dependencies": { - "@changesets/cli": "2.27.9" + "@changesets/cli": "2.27.10" }, "devDependencies": { "@actions/core": "1.11.1", From d3e482957790ba51746a8e9f6bf3b4987debb98d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 25 Nov 2024 17:24:42 +0300 Subject: [PATCH 444/458] Bump pm2 from 5.4.2 to 5.4.3 (#863) Bumps [pm2](https://github.com/Unitech/pm2) from 5.4.2 to 5.4.3. - [Release notes](https://github.com/Unitech/pm2/releases) - [Changelog](https://github.com/Unitech/pm2/blob/master/CHANGELOG.md) - [Commits](https://github.com/Unitech/pm2/commits) --- updated-dependencies: - dependency-name: pm2 dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- package-lock.json | 9 ++++----- 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index e3155bbd..f76707ff 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -34,7 +34,7 @@ "dotenv-cli": "7.4.4", "eslint": "8.57.1", "fastify": "5.0.0", - "pm2": "5.4.2", + "pm2": "5.4.3", "tsx": "4.19.2", "typescript": "5.6.3" } diff --git a/package-lock.json b/package-lock.json index 5e46c79d..90f2d869 100644 --- a/package-lock.json +++ b/package-lock.json @@ -56,7 +56,7 @@ "dotenv-cli": "7.4.4", "eslint": "8.57.1", "fastify": "5.0.0", - "pm2": "5.4.2", + "pm2": "5.4.3", "tsx": "4.19.2", "typescript": "5.6.3" } @@ -12769,11 +12769,10 @@ } }, "node_modules/pm2": { - "version": "5.4.2", - "resolved": "https://registry.npmjs.org/pm2/-/pm2-5.4.2.tgz", - "integrity": "sha512-ynVpBwZampRH3YWLwRepZpQ7X3MvpwLIaqIdFEeBYEhaXbHmEx2KqOdxGV4T54wvKBhH3LixvU1j1bK4/sq7Tw==", + "version": "5.4.3", + "resolved": "https://registry.npmjs.org/pm2/-/pm2-5.4.3.tgz", + "integrity": "sha512-4/I1htIHzZk1Y67UgOCo4F1cJtas1kSds31N8zN0PybO230id1nigyjGuGFzUnGmUFPmrJ0On22fO1ChFlp7VQ==", "dev": true, - "license": "AGPL-3.0", "dependencies": { "@pm2/agent": "~2.0.0", "@pm2/io": "~6.0.1", From bb421a2e4c34e3919c9bc3e42cfc6e322eef4d54 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 25 Nov 2024 21:01:01 +0300 Subject: [PATCH 445/458] Bump @playwright/test from 1.48.2 to 1.49.0 (#865) Bumps [@playwright/test](https://github.com/microsoft/playwright) from 1.48.2 to 1.49.0. - [Release notes](https://github.com/microsoft/playwright/releases) - [Commits](https://github.com/microsoft/playwright/compare/v1.48.2...v1.49.0) --- updated-dependencies: - dependency-name: "@playwright/test" dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- package-lock.json | 24 ++++++++++++------------ 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index f76707ff..370d800c 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -24,7 +24,7 @@ }, "devDependencies": { "@next/eslint-plugin-next": "14.2.15", - "@playwright/test": "1.48.2", + "@playwright/test": "1.49.0", "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.12", diff --git a/package-lock.json b/package-lock.json index 90f2d869..d5e5eb46 100644 --- a/package-lock.json +++ b/package-lock.json @@ -46,7 +46,7 @@ }, "devDependencies": { "@next/eslint-plugin-next": "14.2.15", - "@playwright/test": "1.48.2", + "@playwright/test": "1.49.0", "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.12", @@ -2664,12 +2664,12 @@ } }, "node_modules/@playwright/test": { - "version": "1.48.2", - "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.48.2.tgz", - "integrity": "sha512-54w1xCWfXuax7dz4W2M9uw0gDyh+ti/0K/MxcCUxChFh37kkdxPdfZDw5QBbuPUJHr1CiHJ1hXgSs+GgeQc5Zw==", + "version": "1.49.0", + "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.49.0.tgz", + "integrity": "sha512-DMulbwQURa8rNIQrf94+jPJQ4FmOVdpE5ZppRNvWVjvhC+6sOeo28r8MgIpQRYouXRtt/FCCXU7zn20jnHR4Qw==", "devOptional": true, "dependencies": { - "playwright": "1.48.2" + "playwright": "1.49.0" }, "bin": { "playwright": "cli.js" @@ -12729,12 +12729,12 @@ } }, "node_modules/playwright": { - "version": "1.48.2", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.48.2.tgz", - "integrity": "sha512-NjYvYgp4BPmiwfe31j4gHLa3J7bD2WiBz8Lk2RoSsmX38SVIARZ18VYjxLjAcDsAhA+F4iSEXTSGgjua0rrlgQ==", + "version": "1.49.0", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.49.0.tgz", + "integrity": "sha512-eKpmys0UFDnfNb3vfsf8Vx2LEOtflgRebl0Im2eQQnYMA4Aqd+Zw8bEOB+7ZKvN76901mRnqdsiOGKxzVTbi7A==", "devOptional": true, "dependencies": { - "playwright-core": "1.48.2" + "playwright-core": "1.49.0" }, "bin": { "playwright": "cli.js" @@ -12747,9 +12747,9 @@ } }, "node_modules/playwright-core": { - "version": "1.48.2", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.48.2.tgz", - "integrity": "sha512-sjjw+qrLFlriJo64du+EK0kJgZzoQPsabGF4lBvsid+3CNIZIYLgnMj9V6JY5VhM2Peh20DJWIVpVljLLnlawA==", + "version": "1.49.0", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.49.0.tgz", + "integrity": "sha512-R+3KKTQF3npy5GTiKH/T+kdhoJfJojjHESR1YEWhYuEKRVfVaxH3+4+GvXE5xyCngCxhxnykk0Vlah9v8fs3jA==", "devOptional": true, "bin": { "playwright-core": "cli.js" From 8266f988a5f85a90f8b29a8feddae1a6e78420d4 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 25 Nov 2024 21:34:47 +0300 Subject: [PATCH 446/458] Bump fastify from 5.0.0 to 5.1.0 (#849) Bumps [fastify](https://github.com/fastify/fastify) from 5.0.0 to 5.1.0. - [Release notes](https://github.com/fastify/fastify/releases) - [Commits](https://github.com/fastify/fastify/compare/v5.0.0...v5.1.0) --- updated-dependencies: - dependency-name: fastify dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- internal/backend/package.json | 2 +- package-lock.json | 13 ++++++------- packages/server/package.json | 2 +- 4 files changed, 9 insertions(+), 10 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 370d800c..b63e3410 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -33,7 +33,7 @@ "@types/react-dom": "18.3.1", "dotenv-cli": "7.4.4", "eslint": "8.57.1", - "fastify": "5.0.0", + "fastify": "5.1.0", "pm2": "5.4.3", "tsx": "4.19.2", "typescript": "5.6.3" diff --git a/internal/backend/package.json b/internal/backend/package.json index b658c827..7bfe6cdd 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -9,7 +9,7 @@ "start": "tsx ./src/backend.ts" }, "dependencies": { - "fastify": "5.0.0", + "fastify": "5.1.0", "pino": "9.5.0" }, "devDependencies": { diff --git a/package-lock.json b/package-lock.json index d5e5eb46..580fe4b1 100644 --- a/package-lock.json +++ b/package-lock.json @@ -55,7 +55,7 @@ "@types/react-dom": "18.3.1", "dotenv-cli": "7.4.4", "eslint": "8.57.1", - "fastify": "5.0.0", + "fastify": "5.1.0", "pm2": "5.4.3", "tsx": "4.19.2", "typescript": "5.6.3" @@ -89,7 +89,7 @@ "version": "0.0.0", "license": "MIT", "dependencies": { - "fastify": "5.0.0", + "fastify": "5.1.0", "pino": "9.5.0" }, "devDependencies": { @@ -7970,9 +7970,9 @@ "license": "BSD-3-Clause" }, "node_modules/fastify": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/fastify/-/fastify-5.0.0.tgz", - "integrity": "sha512-Qe4dU+zGOzg7vXjw4EvcuyIbNnMwTmcuOhlOrOJsgwzvjEZmsM/IeHulgJk+r46STjdJS/ZJbxO8N70ODXDMEQ==", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/fastify/-/fastify-5.1.0.tgz", + "integrity": "sha512-0SdUC5AoiSgMSc2Vxwv3WyKzyGMDJRAW/PgNsK1kZrnkO6MeqUIW9ovVg9F2UGIqtIcclYMyeJa4rK6OZc7Jxg==", "funding": [ { "type": "github", @@ -7983,7 +7983,6 @@ "url": "https://opencollective.com/fastify" } ], - "license": "MIT", "dependencies": { "@fastify/ajv-compiler": "^4.0.0", "@fastify/error": "^4.0.0", @@ -17309,7 +17308,7 @@ "version": "1.1.2", "license": "MIT", "dependencies": { - "fastify": "5.0.0", + "fastify": "5.1.0", "pino": "9.5.0" }, "bin": { diff --git a/packages/server/package.json b/packages/server/package.json index 746af06b..177b6b2f 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -24,7 +24,7 @@ "start": "tsx ./src/server.ts" }, "dependencies": { - "fastify": "5.0.0", + "fastify": "5.1.0", "pino": "9.5.0" }, "devDependencies": { From 972221507ef1ff55ba710430f95066b0408bd19d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 25 Nov 2024 21:46:53 +0300 Subject: [PATCH 447/458] Bump the turbo group across 1 directory with 2 updates (#872) Bumps the turbo group with 2 updates in the / directory: [turbo](https://github.com/vercel/turborepo) and [eslint-config-turbo](https://github.com/vercel/turborepo/tree/HEAD/packages/eslint-config-turbo). Updates `turbo` from 2.2.3 to 2.3.1 - [Release notes](https://github.com/vercel/turborepo/releases) - [Changelog](https://github.com/vercel/turborepo/blob/main/release.md) - [Commits](https://github.com/vercel/turborepo/compare/v2.2.3...v2.3.1) Updates `eslint-config-turbo` from 2.2.3 to 2.3.1 - [Release notes](https://github.com/vercel/turborepo/releases) - [Changelog](https://github.com/vercel/turborepo/blob/main/release.md) - [Commits](https://github.com/vercel/turborepo/commits/v2.3.1/packages/eslint-config-turbo) --- updated-dependencies: - dependency-name: turbo dependency-type: direct:development update-type: version-update:semver-minor dependency-group: turbo - dependency-name: eslint-config-turbo dependency-type: direct:development update-type: version-update:semver-minor dependency-group: turbo ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- internal/eslint-config/package.json | 2 +- package-lock.json | 72 ++++++++++++++--------------- package.json | 2 +- 3 files changed, 38 insertions(+), 38 deletions(-) diff --git a/internal/eslint-config/package.json b/internal/eslint-config/package.json index 7ac2a4bb..5e0b9c24 100644 --- a/internal/eslint-config/package.json +++ b/internal/eslint-config/package.json @@ -10,7 +10,7 @@ "@typescript-eslint/parser": "7.18.0", "@vercel/style-guide": "6.0.0", "eslint-config-prettier": "9.1.0", - "eslint-config-turbo": "2.2.3", + "eslint-config-turbo": "2.3.1", "eslint-plugin-only-warn": "1.1.0", "typescript": "5.6.3" } diff --git a/package-lock.json b/package-lock.json index 580fe4b1..1e69da61 100644 --- a/package-lock.json +++ b/package-lock.json @@ -25,7 +25,7 @@ "glob": "11.0.0", "prettier": "3.3.3", "rimraf": "6.0.1", - "turbo": "2.2.3" + "turbo": "2.3.1" }, "engines": { "node": ">=20.9.0", @@ -108,7 +108,7 @@ "@typescript-eslint/parser": "7.18.0", "@vercel/style-guide": "6.0.0", "eslint-config-prettier": "9.1.0", - "eslint-config-turbo": "2.2.3", + "eslint-config-turbo": "2.3.1", "eslint-plugin-only-warn": "1.1.0", "typescript": "5.6.3" } @@ -6648,12 +6648,12 @@ } }, "node_modules/eslint-config-turbo": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/eslint-config-turbo/-/eslint-config-turbo-2.2.3.tgz", - "integrity": "sha512-/zwNU+G2w0HszXzWILdl6/Catt86ejUG7vsFSdpnFzFAAUbbT2TxgoCFvC1fKtm6+SkQsXwkRRe9tFz0aMftpg==", + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/eslint-config-turbo/-/eslint-config-turbo-2.3.1.tgz", + "integrity": "sha512-pxxCLLgnZYCjJoGrzUu3jAcb67bKVykLblyMtgTzHN7DlNu6tnp89K3/5fznc6ALyXwXFp0K+nM+Sxst43oaoA==", "dev": true, "dependencies": { - "eslint-plugin-turbo": "2.2.3" + "eslint-plugin-turbo": "2.3.1" }, "peerDependencies": { "eslint": ">6.6.0" @@ -7321,9 +7321,9 @@ } }, "node_modules/eslint-plugin-turbo": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/eslint-plugin-turbo/-/eslint-plugin-turbo-2.2.3.tgz", - "integrity": "sha512-LHt35VwxthdGVO6hQRfvmFb6ee8/exAzAYWCy4o87Bnp7urltP8qg7xMd4dPSLAhtfnI2xSo1WgeVaR3MeItxw==", + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-turbo/-/eslint-plugin-turbo-2.3.1.tgz", + "integrity": "sha512-M5MBYBkcQsv11MFHJ+6WpzLpiTBx0OApeUMAHlO4L0eHqQxY03GrmHXjXfozqB+9HwGrW9fqihBzVRllyixJDA==", "dev": true, "dependencies": { "dotenv": "16.0.3" @@ -16226,26 +16226,26 @@ } }, "node_modules/turbo": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/turbo/-/turbo-2.2.3.tgz", - "integrity": "sha512-5lDvSqIxCYJ/BAd6rQGK/AzFRhBkbu4JHVMLmGh/hCb7U3CqSnr5Tjwfy9vc+/5wG2DJ6wttgAaA7MoCgvBKZQ==", + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/turbo/-/turbo-2.3.1.tgz", + "integrity": "sha512-vHZe/e6k1HZVKiMQPQ1BWFn53vjVQDFKdkjUq/pBKlRWi1gw9LQO6ntH4qZCcHY1rH6TXgsRmexXdgWl96YvVQ==", "dev": true, "bin": { "turbo": "bin/turbo" }, "optionalDependencies": { - "turbo-darwin-64": "2.2.3", - "turbo-darwin-arm64": "2.2.3", - "turbo-linux-64": "2.2.3", - "turbo-linux-arm64": "2.2.3", - "turbo-windows-64": "2.2.3", - "turbo-windows-arm64": "2.2.3" + "turbo-darwin-64": "2.3.1", + "turbo-darwin-arm64": "2.3.1", + "turbo-linux-64": "2.3.1", + "turbo-linux-arm64": "2.3.1", + "turbo-windows-64": "2.3.1", + "turbo-windows-arm64": "2.3.1" } }, "node_modules/turbo-darwin-64": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/turbo-darwin-64/-/turbo-darwin-64-2.2.3.tgz", - "integrity": "sha512-Rcm10CuMKQGcdIBS3R/9PMeuYnv6beYIHqfZFeKWVYEWH69sauj4INs83zKMTUiZJ3/hWGZ4jet9AOwhsssLyg==", + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/turbo-darwin-64/-/turbo-darwin-64-2.3.1.tgz", + "integrity": "sha512-tjHfjW/Gs8Q9IO+9gPdIsSStZ8I09QYDRT/SyhFTPLnc7O2ZlxHPBVFfjUkHUjanHNYO8CpRGt+zdp1PaMCruw==", "cpu": [ "x64" ], @@ -16256,9 +16256,9 @@ ] }, "node_modules/turbo-darwin-arm64": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/turbo-darwin-arm64/-/turbo-darwin-arm64-2.2.3.tgz", - "integrity": "sha512-+EIMHkuLFqUdJYsA3roj66t9+9IciCajgj+DVek+QezEdOJKcRxlvDOS2BUaeN8kEzVSsNiAGnoysFWYw4K0HA==", + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/turbo-darwin-arm64/-/turbo-darwin-arm64-2.3.1.tgz", + "integrity": "sha512-At1WStnxCfrBQ4M2g6ynre8WsusGwA11okhVolBxyFUemYozDTtbZwelr+IqNggjT251vviokxOkcFzzogbiFw==", "cpu": [ "arm64" ], @@ -16269,9 +16269,9 @@ ] }, "node_modules/turbo-linux-64": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/turbo-linux-64/-/turbo-linux-64-2.2.3.tgz", - "integrity": "sha512-UBhJCYnqtaeOBQLmLo8BAisWbc9v9daL9G8upLR+XGj6vuN/Nz6qUAhverN4Pyej1g4Nt1BhROnj6GLOPYyqxQ==", + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/turbo-linux-64/-/turbo-linux-64-2.3.1.tgz", + "integrity": "sha512-COwEev7s9fsxLM2eoRCyRLPj+BXvZjFIS+GxzdAubYhoSoZit8B8QGKczyDl6448xhuFEWKrpHhcR9aBuwB4ag==", "cpu": [ "x64" ], @@ -16282,9 +16282,9 @@ ] }, "node_modules/turbo-linux-arm64": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/turbo-linux-arm64/-/turbo-linux-arm64-2.2.3.tgz", - "integrity": "sha512-hJYT9dN06XCQ3jBka/EWvvAETnHRs3xuO/rb5bESmDfG+d9yQjeTMlhRXKrr4eyIMt6cLDt1LBfyi+6CQ+VAwQ==", + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/turbo-linux-arm64/-/turbo-linux-arm64-2.3.1.tgz", + "integrity": "sha512-AP0uE15Rhxza2Jl+Q3gxdXRA92IIeFAYaufz6CMcZuGy9yZsBlLt9w6T47H6g7XQPzWuw8pzfjM1omcTKkkDpQ==", "cpu": [ "arm64" ], @@ -16295,9 +16295,9 @@ ] }, "node_modules/turbo-windows-64": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/turbo-windows-64/-/turbo-windows-64-2.2.3.tgz", - "integrity": "sha512-NPrjacrZypMBF31b4HE4ROg4P3nhMBPHKS5WTpMwf7wydZ8uvdEHpESVNMOtqhlp857zbnKYgP+yJF30H3N2dQ==", + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/turbo-windows-64/-/turbo-windows-64-2.3.1.tgz", + "integrity": "sha512-HDSneq0dNZYZch74c2eygq+OiJE/JYDs7OsGM0yRYVj336383xkUnxz6W2I7qiyMCQXzp4UVUDZXvZhUYcX3BA==", "cpu": [ "x64" ], @@ -16308,9 +16308,9 @@ ] }, "node_modules/turbo-windows-arm64": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/turbo-windows-arm64/-/turbo-windows-arm64-2.2.3.tgz", - "integrity": "sha512-fnNrYBCqn6zgKPKLHu4sOkihBI/+0oYFr075duRxqUZ+1aLWTAGfHZLgjVeLh3zR37CVzuerGIPWAEkNhkWEIw==", + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/turbo-windows-arm64/-/turbo-windows-arm64-2.3.1.tgz", + "integrity": "sha512-7/2/sJZiquwoT/jWBCfV0qKq4NarsJPmDRjMcR9dDMIwCYsGM8ljomkDRTCtkNeFcUvYw54MiRWHehWgbcRPsw==", "cpu": [ "arm64" ], diff --git a/package.json b/package.json index 4cdcff8d..3a9a671a 100644 --- a/package.json +++ b/package.json @@ -41,7 +41,7 @@ "glob": "11.0.0", "prettier": "3.3.3", "rimraf": "6.0.1", - "turbo": "2.2.3" + "turbo": "2.3.1" }, "packageManager": "npm@10.7.0", "engines": { From 748833a62ca46f06cdcc69490f7fc7726e90e891 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 25 Nov 2024 22:20:09 +0300 Subject: [PATCH 448/458] Bump typescript from 5.6.3 to 5.7.2 (#873) Bumps [typescript](https://github.com/microsoft/TypeScript) from 5.6.3 to 5.7.2. - [Release notes](https://github.com/microsoft/TypeScript/releases) - [Changelog](https://github.com/microsoft/TypeScript/blob/main/azure-pipelines.release.yml) - [Commits](https://github.com/microsoft/TypeScript/compare/v5.6.3...v5.7.2) --- updated-dependencies: - dependency-name: typescript dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- internal/backend/package.json | 2 +- internal/eslint-config/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 25 ++++++++++----------- packages/cache-handler/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 10 files changed, 21 insertions(+), 22 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index b63e3410..f122eb53 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -36,6 +36,6 @@ "fastify": "5.1.0", "pm2": "5.4.3", "tsx": "4.19.2", - "typescript": "5.6.3" + "typescript": "5.7.2" } } diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 8b26258c..2543e19e 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -27,6 +27,6 @@ "@types/react-dom": "18.3.1", "eslint": "8.57.1", "serve": "14.2.4", - "typescript": "5.6.3" + "typescript": "5.7.2" } } diff --git a/internal/backend/package.json b/internal/backend/package.json index 7bfe6cdd..35731ad9 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -17,6 +17,6 @@ "@types/node": "22.9.3", "pino-pretty": "11.3.0", "tsx": "4.19.2", - "typescript": "5.6.3" + "typescript": "5.7.2" } } diff --git a/internal/eslint-config/package.json b/internal/eslint-config/package.json index 5e0b9c24..056b1539 100644 --- a/internal/eslint-config/package.json +++ b/internal/eslint-config/package.json @@ -12,6 +12,6 @@ "eslint-config-prettier": "9.1.0", "eslint-config-turbo": "2.3.1", "eslint-plugin-only-warn": "1.1.0", - "typescript": "5.6.3" + "typescript": "5.7.2" } } diff --git a/internal/next-common/package.json b/internal/next-common/package.json index 3616f0fa..7c306970 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -13,6 +13,6 @@ "devDependencies": { "@repo/typescript-config": "*", "@types/node": "22.9.3", - "typescript": "5.6.3" + "typescript": "5.7.2" } } diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index e2361a39..6c79e64d 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -14,6 +14,6 @@ "@repo/next-common": "*", "@repo/typescript-config": "*", "@types/node": "22.9.3", - "typescript": "5.6.3" + "typescript": "5.7.2" } } diff --git a/package-lock.json b/package-lock.json index 1e69da61..94df2f5c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -58,7 +58,7 @@ "fastify": "5.1.0", "pm2": "5.4.3", "tsx": "4.19.2", - "typescript": "5.6.3" + "typescript": "5.7.2" } }, "docs/cache-handler-docs": { @@ -81,7 +81,7 @@ "@types/react-dom": "18.3.1", "eslint": "8.57.1", "serve": "14.2.4", - "typescript": "5.6.3" + "typescript": "5.7.2" } }, "internal/backend": { @@ -97,7 +97,7 @@ "@types/node": "22.9.3", "pino-pretty": "11.3.0", "tsx": "4.19.2", - "typescript": "5.6.3" + "typescript": "5.7.2" } }, "internal/eslint-config": { @@ -110,7 +110,7 @@ "eslint-config-prettier": "9.1.0", "eslint-config-turbo": "2.3.1", "eslint-plugin-only-warn": "1.1.0", - "typescript": "5.6.3" + "typescript": "5.7.2" } }, "internal/next-common": { @@ -123,7 +123,7 @@ "devDependencies": { "@repo/typescript-config": "*", "@types/node": "22.9.3", - "typescript": "5.6.3" + "typescript": "5.7.2" } }, "internal/next-lru-cache": { @@ -137,7 +137,7 @@ "@repo/next-common": "*", "@repo/typescript-config": "*", "@types/node": "22.9.3", - "typescript": "5.6.3" + "typescript": "5.7.2" } }, "internal/prettier-config": { @@ -16473,10 +16473,9 @@ } }, "node_modules/typescript": { - "version": "5.6.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.6.3.tgz", - "integrity": "sha512-hjcS1mhfuyi4WW8IWtjP7brDrG2cuDZukyrYrSauoXGNgx0S7zceP07adYkJycEr56BOUTNPzbInooiN3fn1qw==", - "license": "Apache-2.0", + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.7.2.tgz", + "integrity": "sha512-i5t66RHxDvVN40HfDd1PsEThGNnlMCMT3jMUuoh9/0TaqWevNontacunWyN02LA9/fIbEWlcHZcgTKb9QoaLfg==", "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" @@ -17284,7 +17283,7 @@ "@types/node": "22.9.3", "tsup": "8.3.5", "tsx": "4.19.2", - "typescript": "5.6.3" + "typescript": "5.7.2" }, "peerDependencies": { "next": ">= 13.5.1", @@ -17300,7 +17299,7 @@ "@types/node": "22.9.3", "tsup": "8.3.5", "tsx": "4.19.2", - "typescript": "5.6.3" + "typescript": "5.7.2" } }, "packages/server": { @@ -17321,7 +17320,7 @@ "@types/node": "22.9.3", "tsup": "8.3.5", "tsx": "4.19.2", - "typescript": "5.6.3" + "typescript": "5.7.2" } } } diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index a8680def..82dce49f 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -89,7 +89,7 @@ "@types/node": "22.9.3", "tsup": "8.3.5", "tsx": "4.19.2", - "typescript": "5.6.3" + "typescript": "5.7.2" }, "peerDependencies": { "next": ">= 13.5.1", diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 874a746b..4a2012b4 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -30,6 +30,6 @@ "@types/node": "22.9.3", "tsup": "8.3.5", "tsx": "4.19.2", - "typescript": "5.6.3" + "typescript": "5.7.2" } } diff --git a/packages/server/package.json b/packages/server/package.json index 177b6b2f..516265a2 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -34,7 +34,7 @@ "@types/node": "22.9.3", "tsup": "8.3.5", "tsx": "4.19.2", - "typescript": "5.6.3" + "typescript": "5.7.2" }, "distTags": [ "next13.5", From f4b5655729b65a74a04433b56392decadb843739 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 26 Nov 2024 09:59:36 +0300 Subject: [PATCH 449/458] Bump axios from 1.7.7 to 1.7.8 (#877) Bumps [axios](https://github.com/axios/axios) from 1.7.7 to 1.7.8. - [Release notes](https://github.com/axios/axios/releases) - [Changelog](https://github.com/axios/axios/blob/v1.x/CHANGELOG.md) - [Commits](https://github.com/axios/axios/compare/v1.7.7...v1.7.8) --- updated-dependencies: - dependency-name: axios dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- package-lock.json | 9 ++++----- 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index f122eb53..28592622 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -16,7 +16,7 @@ }, "dependencies": { "@neshca/cache-handler": "*", - "axios": "1.7.7", + "axios": "1.7.8", "next": "14.2.15", "react": "18.3.1", "react-dom": "18.3.1", diff --git a/package-lock.json b/package-lock.json index 94df2f5c..94838f7e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -38,7 +38,7 @@ "license": "MIT", "dependencies": { "@neshca/cache-handler": "*", - "axios": "1.7.7", + "axios": "1.7.8", "next": "14.2.15", "react": "18.3.1", "react-dom": "18.3.1", @@ -4436,10 +4436,9 @@ } }, "node_modules/axios": { - "version": "1.7.7", - "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.7.tgz", - "integrity": "sha512-S4kL7XrjgBmvdGut0sN3yJxqYzrDOnivkBiN0OFs6hLiUam3UPvswUo0kqGyhqUZGEOytHyumEdXsAkgCOUf3Q==", - "license": "MIT", + "version": "1.7.8", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.8.tgz", + "integrity": "sha512-Uu0wb7KNqK2t5K+YQyVCLM76prD5sRFjKHbJYCP1J7JFGEQ6nN7HWn9+04LAeiJ3ji54lgS/gZCH1oxyrf1SPw==", "dependencies": { "follow-redirects": "^1.15.6", "form-data": "^4.0.0", From eb407d35a2a4b4d5cb92d263a4437bbb071696b3 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 26 Nov 2024 10:15:00 +0300 Subject: [PATCH 450/458] Bump @types/node in the definitely-typed group across 1 directory (#878) Bumps the definitely-typed group with 1 update in the / directory: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node). Updates `@types/node` from 22.9.3 to 22.10.0 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) --- updated-dependencies: - dependency-name: "@types/node" dependency-type: direct:development update-type: version-update:semver-minor dependency-group: definitely-typed ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- apps/cache-testing/package.json | 2 +- docs/cache-handler-docs/package.json | 2 +- internal/backend/package.json | 2 +- internal/next-common/package.json | 2 +- internal/next-lru-cache/package.json | 2 +- package-lock.json | 33 ++++++++++----------- packages/cache-handler/package.json | 2 +- packages/json-replacer-reviver/package.json | 2 +- packages/server/package.json | 2 +- 9 files changed, 24 insertions(+), 25 deletions(-) diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 28592622..3f12b096 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -28,7 +28,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.12", - "@types/node": "22.9.3", + "@types/node": "22.10.0", "@types/react": "18.3.12", "@types/react-dom": "18.3.1", "dotenv-cli": "7.4.4", diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 2543e19e..2e991e54 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -22,7 +22,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.12", - "@types/node": "22.9.3", + "@types/node": "22.10.0", "@types/react": "18.3.12", "@types/react-dom": "18.3.1", "eslint": "8.57.1", diff --git a/internal/backend/package.json b/internal/backend/package.json index 35731ad9..8cf7462e 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -14,7 +14,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.9.3", + "@types/node": "22.10.0", "pino-pretty": "11.3.0", "tsx": "4.19.2", "typescript": "5.7.2" diff --git a/internal/next-common/package.json b/internal/next-common/package.json index 7c306970..f255ecc1 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -12,7 +12,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.9.3", + "@types/node": "22.10.0", "typescript": "5.7.2" } } diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index 6c79e64d..16f51410 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -13,7 +13,7 @@ "devDependencies": { "@repo/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "22.9.3", + "@types/node": "22.10.0", "typescript": "5.7.2" } } diff --git a/package-lock.json b/package-lock.json index 94838f7e..15d8f43c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -50,7 +50,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.12", - "@types/node": "22.9.3", + "@types/node": "22.10.0", "@types/react": "18.3.12", "@types/react-dom": "18.3.1", "dotenv-cli": "7.4.4", @@ -76,7 +76,7 @@ "@repo/eslint-config": "*", "@repo/typescript-config": "*", "@types/eslint": "8.56.12", - "@types/node": "22.9.3", + "@types/node": "22.10.0", "@types/react": "18.3.12", "@types/react-dom": "18.3.1", "eslint": "8.57.1", @@ -94,7 +94,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.9.3", + "@types/node": "22.10.0", "pino-pretty": "11.3.0", "tsx": "4.19.2", "typescript": "5.7.2" @@ -122,7 +122,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.9.3", + "@types/node": "22.10.0", "typescript": "5.7.2" } }, @@ -136,7 +136,7 @@ "devDependencies": { "@repo/next-common": "*", "@repo/typescript-config": "*", - "@types/node": "22.9.3", + "@types/node": "22.10.0", "typescript": "5.7.2" } }, @@ -3525,12 +3525,12 @@ } }, "node_modules/@types/node": { - "version": "22.9.3", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.9.3.tgz", - "integrity": "sha512-F3u1fs/fce3FFk+DAxbxc78DF8x0cY09RRL8GnXLmkJ1jvx3TtPdWoTT5/NiYfI5ASqXBmfqJi9dZ3gxMx4lzw==", + "version": "22.10.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.10.0.tgz", + "integrity": "sha512-XC70cRZVElFHfIUB40FgZOBbgJYFKKMa5nb9lxcwYstFG/Mi+/Y0bGS+rs6Dmhmkpq4pnNiLiuZAbc02YCOnmA==", "dev": true, "dependencies": { - "undici-types": "~6.19.8" + "undici-types": "~6.20.0" } }, "node_modules/@types/normalize-package-data": { @@ -16519,11 +16519,10 @@ } }, "node_modules/undici-types": { - "version": "6.19.8", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.19.8.tgz", - "integrity": "sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==", - "dev": true, - "license": "MIT" + "version": "6.20.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.20.0.tgz", + "integrity": "sha512-Ny6QZ2Nju20vw1SRHe3d9jVu6gJ+4e3+MMpqu7pqE5HT6WsTSlce++GQmK5UXS8mzV8DSYHrQH+Xrf2jVcuKNg==", + "dev": true }, "node_modules/unified": { "version": "11.0.5", @@ -17279,7 +17278,7 @@ "@repo/next-common": "*", "@repo/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.9.3", + "@types/node": "22.10.0", "tsup": "8.3.5", "tsx": "4.19.2", "typescript": "5.7.2" @@ -17295,7 +17294,7 @@ "license": "MIT", "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.9.3", + "@types/node": "22.10.0", "tsup": "8.3.5", "tsx": "4.19.2", "typescript": "5.7.2" @@ -17316,7 +17315,7 @@ "@repo/next-common": "*", "@repo/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.9.3", + "@types/node": "22.10.0", "tsup": "8.3.5", "tsx": "4.19.2", "typescript": "5.7.2" diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 82dce49f..d546d40e 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -86,7 +86,7 @@ "@repo/next-common": "*", "@repo/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.9.3", + "@types/node": "22.10.0", "tsup": "8.3.5", "tsx": "4.19.2", "typescript": "5.7.2" diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index 4a2012b4..c5da8fa3 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -27,7 +27,7 @@ }, "devDependencies": { "@repo/typescript-config": "*", - "@types/node": "22.9.3", + "@types/node": "22.10.0", "tsup": "8.3.5", "tsx": "4.19.2", "typescript": "5.7.2" diff --git a/packages/server/package.json b/packages/server/package.json index 516265a2..eba2d748 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -31,7 +31,7 @@ "@repo/next-common": "*", "@repo/next-lru-cache": "*", "@repo/typescript-config": "*", - "@types/node": "22.9.3", + "@types/node": "22.10.0", "tsup": "8.3.5", "tsx": "4.19.2", "typescript": "5.7.2" From f777d8d204e324cd590353a5b63a0b5df25284d9 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 26 Nov 2024 10:18:36 +0300 Subject: [PATCH 451/458] Bump pino-pretty in the pino group across 1 directory (#861) Bumps the pino group with 1 update in the / directory: [pino-pretty](https://github.com/pinojs/pino-pretty). Updates `pino-pretty` from 11.3.0 to 13.0.0 - [Release notes](https://github.com/pinojs/pino-pretty/releases) - [Commits](https://github.com/pinojs/pino-pretty/compare/v11.3.0...v13.0.0) --- updated-dependencies: - dependency-name: pino-pretty dependency-type: direct:development update-type: version-update:semver-major dependency-group: pino ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- internal/backend/package.json | 2 +- package-lock.json | 147 +--------------------------------- 2 files changed, 5 insertions(+), 144 deletions(-) diff --git a/internal/backend/package.json b/internal/backend/package.json index 8cf7462e..e9844ee8 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -15,7 +15,7 @@ "devDependencies": { "@repo/typescript-config": "*", "@types/node": "22.10.0", - "pino-pretty": "11.3.0", + "pino-pretty": "13.0.0", "tsx": "4.19.2", "typescript": "5.7.2" } diff --git a/package-lock.json b/package-lock.json index 15d8f43c..5b406431 100644 --- a/package-lock.json +++ b/package-lock.json @@ -95,7 +95,7 @@ "devDependencies": { "@repo/typescript-config": "*", "@types/node": "22.10.0", - "pino-pretty": "11.3.0", + "pino-pretty": "13.0.0", "tsx": "4.19.2", "typescript": "5.7.2" } @@ -3899,19 +3899,6 @@ "dev": true, "license": "MIT" }, - "node_modules/abort-controller": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz", - "integrity": "sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==", - "dev": true, - "license": "MIT", - "dependencies": { - "event-target-shim": "^5.0.0" - }, - "engines": { - "node": ">=6.5" - } - }, "node_modules/abstract-logging": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/abstract-logging/-/abstract-logging-2.0.1.tgz", @@ -4472,27 +4459,6 @@ "dev": true, "license": "MIT" }, - "node_modules/base64-js": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", - "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT" - }, "node_modules/basic-ftp": { "version": "5.0.5", "resolved": "https://registry.npmjs.org/basic-ftp/-/basic-ftp-5.0.5.tgz", @@ -4664,31 +4630,6 @@ "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" } }, - "node_modules/buffer": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", - "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT", - "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.2.1" - } - }, "node_modules/buffer-from": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", @@ -7680,16 +7621,6 @@ "node": ">=0.10.0" } }, - "node_modules/event-target-shim": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz", - "integrity": "sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, "node_modules/eventemitter2": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/eventemitter2/-/eventemitter2-5.0.1.tgz", @@ -7697,16 +7628,6 @@ "dev": true, "license": "MIT" }, - "node_modules/events": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", - "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.8.x" - } - }, "node_modules/execa": { "version": "8.0.1", "resolved": "https://registry.npmjs.org/execa/-/execa-8.0.1.tgz", @@ -9100,27 +9021,6 @@ "node": ">=0.10.0" } }, - "node_modules/ieee754": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "BSD-3-Clause" - }, "node_modules/ignore": { "version": "5.3.2", "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", @@ -12674,11 +12574,10 @@ } }, "node_modules/pino-pretty": { - "version": "11.3.0", - "resolved": "https://registry.npmjs.org/pino-pretty/-/pino-pretty-11.3.0.tgz", - "integrity": "sha512-oXwn7ICywaZPHmu3epHGU2oJX4nPmKvHvB/bwrJHlGcbEWaVcotkpyVHMKLKmiVryWYByNp0jpgAcXpFJDXJzA==", + "version": "13.0.0", + "resolved": "https://registry.npmjs.org/pino-pretty/-/pino-pretty-13.0.0.tgz", + "integrity": "sha512-cQBBIVG3YajgoUjo1FdKVRX6t9XPxwB9lcNJVD5GCnNM4Y6T12YYx8c6zEejxQsU0wrg9TwmDulcE9LR7qcJqA==", "dev": true, - "license": "MIT", "dependencies": { "colorette": "^2.0.7", "dateformat": "^4.6.3", @@ -12690,7 +12589,6 @@ "on-exit-leak-free": "^2.1.0", "pino-abstract-transport": "^2.0.0", "pump": "^3.0.0", - "readable-stream": "^4.0.0", "secure-json-parse": "^2.4.0", "sonic-boom": "^4.0.1", "strip-json-comments": "^3.1.1" @@ -13100,16 +12998,6 @@ } } }, - "node_modules/process": { - "version": "0.11.10", - "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", - "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.6.0" - } - }, "node_modules/process-warning": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/process-warning/-/process-warning-4.0.0.tgz", @@ -13393,23 +13281,6 @@ "node": ">=6" } }, - "node_modules/readable-stream": { - "version": "4.5.2", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.5.2.tgz", - "integrity": "sha512-yjavECdqeZ3GLXNgRXgeQEdz9fvDDkNKyHnbHRFtOr7/LcfgBcmct7t/ET+HaCTqfh06OzoAxrkN/IfjJBVe+g==", - "dev": true, - "license": "MIT", - "dependencies": { - "abort-controller": "^3.0.0", - "buffer": "^6.0.3", - "events": "^3.3.0", - "process": "^0.11.10", - "string_decoder": "^1.3.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - } - }, "node_modules/readdirp": { "version": "3.6.0", "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", @@ -14847,16 +14718,6 @@ "node": ">=10.0.0" } }, - "node_modules/string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dev": true, - "license": "MIT", - "dependencies": { - "safe-buffer": "~5.2.0" - } - }, "node_modules/string-width": { "version": "5.1.2", "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", From 6bae69a02995cb46ad3c24401736a603b2f6f717 Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Tue, 26 Nov 2024 13:01:19 +0300 Subject: [PATCH 452/458] Update README and documentation and the default expire age calculation (#879) - **New Features** - Updated the default behavior of the `estimateExpireAge` function to calculate expiration as `(staleAge) => staleAge * 1.5`. - **Documentation** - Clarified compatibility requirements for Next.js (versions `>= 13.5.1 < 15`). - Announced the release of version **1.9.0** and outlined future changes for version **2.0.0**. --- .changeset/flat-boxes-build.md | 5 +++++ README.md | 2 +- .../src/pages/api-reference/ttl-parameters.mdx | 2 +- docs/cache-handler-docs/src/pages/installation.mdx | 6 +++--- docs/cache-handler-docs/theme.config.jsx | 14 +++----------- package-lock.json | 2 +- packages/cache-handler/README.md | 6 +++--- packages/cache-handler/package.json | 2 +- packages/cache-handler/src/cache-handler.ts | 2 +- .../create-validated-age-estimation-function.ts | 2 +- 10 files changed, 20 insertions(+), 23 deletions(-) create mode 100644 .changeset/flat-boxes-build.md diff --git a/.changeset/flat-boxes-build.md b/.changeset/flat-boxes-build.md new file mode 100644 index 00000000..a1181810 --- /dev/null +++ b/.changeset/flat-boxes-build.md @@ -0,0 +1,5 @@ +--- +'@neshca/cache-handler': minor +--- + +Updated the documentation and peer dependencies to explicitly state that only Next.js versions `13.5.x` and `14.x.x` are supported. Modified the default `estimateExpireAge` function to perform the calculation as `(staleAge) => staleAge * 1.5`. diff --git a/README.md b/README.md index aa9d7e60..8daa8984 100644 --- a/README.md +++ b/README.md @@ -27,7 +27,7 @@ Explore the versatility of `@neshca/cache-handler` in our [Examples Section](htt ## Requirements -- **Next.js**: 13.5.1 or newer. +- **Next.js**: 13.5.1 or newer (below 15.0.0). - **Node.js**: 18.17.0 or newer. ## Documentation diff --git a/docs/cache-handler-docs/src/pages/api-reference/ttl-parameters.mdx b/docs/cache-handler-docs/src/pages/api-reference/ttl-parameters.mdx index ff7a5da7..41486680 100644 --- a/docs/cache-handler-docs/src/pages/api-reference/ttl-parameters.mdx +++ b/docs/cache-handler-docs/src/pages/api-reference/ttl-parameters.mdx @@ -17,7 +17,7 @@ Stale age is the time after which the cache entry is considered stale, can be se ### `estimateExpireAge` -Estimates the expiration age based on the stale age. +Estimates the expiration age based on the stale age. Defaults to `(staleAge) => staleAge * 1.5`. Expire age is the time after which the cache entry is considered expired and should be removed from the cache and must not be served. diff --git a/docs/cache-handler-docs/src/pages/installation.mdx b/docs/cache-handler-docs/src/pages/installation.mdx index 4ee47df6..8e754c6d 100644 --- a/docs/cache-handler-docs/src/pages/installation.mdx +++ b/docs/cache-handler-docs/src/pages/installation.mdx @@ -6,9 +6,9 @@ This section guides you through the initial setup and basic usage of `@neshca/ca ### Prerequisites -- **Node.js:** Version 18.17 or newer. -- **Next.js:** Version 13.5.1 or newer. -- **Redis (optional):** Version 4.6.0 or newer. +- **Node.js:** 18.17 or newer. +- **Next.js:** 13.5.1 or newer (below 15.0.0). +- **Redis (optional):** 4.6.0 or newer. ### Quick Start Installation diff --git a/docs/cache-handler-docs/theme.config.jsx b/docs/cache-handler-docs/theme.config.jsx index 43d633fa..434f9703 100644 --- a/docs/cache-handler-docs/theme.config.jsx +++ b/docs/cache-handler-docs/theme.config.jsx @@ -43,19 +43,11 @@ export default { ), }, banner: { - key: 'version-1.8.0', + key: 'version-1.9.0', content: (
- 🎉 Version 1.8.0 is out! Use shared cache for the Next.js Pages API routes and getServerSideProps with{' '} - - neshClassicCache - + 🎉 Version 1.9.0 is out! This is the final release supporting Next.js 13.5.1-14.x. The upcoming version + 2.0.0 will require Next.js 15.
), }, diff --git a/package-lock.json b/package-lock.json index 5b406431..0bfc0b21 100644 --- a/package-lock.json +++ b/package-lock.json @@ -17145,7 +17145,7 @@ "typescript": "5.7.2" }, "peerDependencies": { - "next": ">= 13.5.1", + "next": ">= 13.5.1 < 15", "redis": ">= 4.6" } }, diff --git a/packages/cache-handler/README.md b/packages/cache-handler/README.md index 61a5adeb..c9565811 100644 --- a/packages/cache-handler/README.md +++ b/packages/cache-handler/README.md @@ -8,9 +8,9 @@ ## Latest Release -🎉 **Version 1.8.0** has been released! It now includes the [`neshClassicCache` function ↗](https://caching-tools.github.io/next-shared-cache/functions/nesh-classic-cache), that allows you to cache the results of expensive operations in the `getServerSideProps` and API routes. +🎉 **Version 1.9.0** has been released! It changes the default `estimateExpireAge` function to perform the calculation as `(staleAge) => staleAge * 1.5` to better align with the default Next.js cache behavior. -Do not forget the [`registerInitialCache` instrumentation hook ↗](https://caching-tools.github.io/next-shared-cache/usage/populating-cache-on-start), that allows the cache to be pre-populated with the initial data when the application starts. +This is the final release leading up to version 2.0.0. The upcoming version 2 will bring significant changes and will no longer support Next.js versions 13 and 14. While version 1 will still receive ongoing maintenance, it won't get any new features. Check out the [changelog](https://github.com/caching-tools/next-shared-cache/blob/canary/packages/cache-handler/CHANGELOG.md) for more details. @@ -50,7 +50,7 @@ Explore the versatility of `@neshca/cache-handler` in our [Examples Section](htt ## Requirements -- **Next.js**: 13.5.1 or newer. +- **Next.js**: 13.5.1 or newer (below 15.0.0). - **Node.js**: 18.17.0 or newer. ## Documentation diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index d546d40e..86967856 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -92,7 +92,7 @@ "typescript": "5.7.2" }, "peerDependencies": { - "next": ">= 13.5.1", + "next": ">= 13.5.1 < 15", "redis": ">= 4.6" }, "distTags": [ diff --git a/packages/cache-handler/src/cache-handler.ts b/packages/cache-handler/src/cache-handler.ts index 9089ea26..4c49b0e5 100644 --- a/packages/cache-handler/src/cache-handler.ts +++ b/packages/cache-handler/src/cache-handler.ts @@ -168,7 +168,7 @@ export type TTLParameters = { * After the stale age, the cache entry is considered stale, can be served from the cache, and should be revalidated. * Revalidation is handled by the `CacheHandler` class. * - * @default (staleAge) => staleAge + * @default (staleAge) => staleAge * 1.5 * * @returns The expiration age in seconds. * diff --git a/packages/cache-handler/src/helpers/create-validated-age-estimation-function.ts b/packages/cache-handler/src/helpers/create-validated-age-estimation-function.ts index a743293d..5535b25c 100644 --- a/packages/cache-handler/src/helpers/create-validated-age-estimation-function.ts +++ b/packages/cache-handler/src/helpers/create-validated-age-estimation-function.ts @@ -11,7 +11,7 @@ type EstimateExpireAgeFunction = typeof getInitialExpireAge; * @returns The initial expire age. */ export function getInitialExpireAge(staleAge: number): number { - return staleAge; + return staleAge * 1.5; } /** From 91ad155731d95c1c2ba6e237d3646a82384d17d3 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 26 Nov 2024 14:03:49 +0300 Subject: [PATCH 453/458] Version Packages (#880) Co-authored-by: github-actions[bot] --- .changeset/flat-boxes-build.md | 5 ----- packages/cache-handler/CHANGELOG.md | 6 ++++++ packages/cache-handler/package.json | 2 +- 3 files changed, 7 insertions(+), 6 deletions(-) delete mode 100644 .changeset/flat-boxes-build.md diff --git a/.changeset/flat-boxes-build.md b/.changeset/flat-boxes-build.md deleted file mode 100644 index a1181810..00000000 --- a/.changeset/flat-boxes-build.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@neshca/cache-handler': minor ---- - -Updated the documentation and peer dependencies to explicitly state that only Next.js versions `13.5.x` and `14.x.x` are supported. Modified the default `estimateExpireAge` function to perform the calculation as `(staleAge) => staleAge * 1.5`. diff --git a/packages/cache-handler/CHANGELOG.md b/packages/cache-handler/CHANGELOG.md index a7aaae37..b232985f 100644 --- a/packages/cache-handler/CHANGELOG.md +++ b/packages/cache-handler/CHANGELOG.md @@ -1,5 +1,11 @@ # @neshca/cache-handler +## 1.9.0 + +### Minor Changes + +- 6bae69a: Updated the documentation and peer dependencies to explicitly state that only Next.js versions `13.5.x` and `14.x.x` are supported. Modified the default `estimateExpireAge` function to perform the calculation as `(staleAge) => staleAge * 1.5`. + ## 1.8.1 ### Patch Changes diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 86967856..4282a7b1 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -1,6 +1,6 @@ { "name": "@neshca/cache-handler", - "version": "1.8.1", + "version": "1.9.0", "description": "Next.js self-hosting simplified.", "keywords": [ "cache", From 2ecac6b5bfb24f1cb4af7a9b09a9c0fc46d1c3d1 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 27 Nov 2024 10:01:03 +0300 Subject: [PATCH 454/458] Bump the turbo group with 2 updates (#882) Bumps the turbo group with 2 updates: [turbo](https://github.com/vercel/turborepo) and [eslint-config-turbo](https://github.com/vercel/turborepo/tree/HEAD/packages/eslint-config-turbo). Updates `turbo` from 2.3.1 to 2.3.2 - [Release notes](https://github.com/vercel/turborepo/releases) - [Changelog](https://github.com/vercel/turborepo/blob/main/release.md) - [Commits](https://github.com/vercel/turborepo/compare/v2.3.1...v2.3.2) Updates `eslint-config-turbo` from 2.3.1 to 2.3.2 - [Release notes](https://github.com/vercel/turborepo/releases) - [Changelog](https://github.com/vercel/turborepo/blob/main/release.md) - [Commits](https://github.com/vercel/turborepo/commits/v2.3.2/packages/eslint-config-turbo) --- updated-dependencies: - dependency-name: turbo dependency-type: direct:development update-type: version-update:semver-patch dependency-group: turbo - dependency-name: eslint-config-turbo dependency-type: direct:development update-type: version-update:semver-patch dependency-group: turbo ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- internal/eslint-config/package.json | 2 +- package-lock.json | 74 ++++++++++++++--------------- package.json | 2 +- 3 files changed, 39 insertions(+), 39 deletions(-) diff --git a/internal/eslint-config/package.json b/internal/eslint-config/package.json index 056b1539..626a9eef 100644 --- a/internal/eslint-config/package.json +++ b/internal/eslint-config/package.json @@ -10,7 +10,7 @@ "@typescript-eslint/parser": "7.18.0", "@vercel/style-guide": "6.0.0", "eslint-config-prettier": "9.1.0", - "eslint-config-turbo": "2.3.1", + "eslint-config-turbo": "2.3.2", "eslint-plugin-only-warn": "1.1.0", "typescript": "5.7.2" } diff --git a/package-lock.json b/package-lock.json index 0bfc0b21..74c5bad7 100644 --- a/package-lock.json +++ b/package-lock.json @@ -25,7 +25,7 @@ "glob": "11.0.0", "prettier": "3.3.3", "rimraf": "6.0.1", - "turbo": "2.3.1" + "turbo": "2.3.2" }, "engines": { "node": ">=20.9.0", @@ -108,7 +108,7 @@ "@typescript-eslint/parser": "7.18.0", "@vercel/style-guide": "6.0.0", "eslint-config-prettier": "9.1.0", - "eslint-config-turbo": "2.3.1", + "eslint-config-turbo": "2.3.2", "eslint-plugin-only-warn": "1.1.0", "typescript": "5.7.2" } @@ -6588,12 +6588,12 @@ } }, "node_modules/eslint-config-turbo": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/eslint-config-turbo/-/eslint-config-turbo-2.3.1.tgz", - "integrity": "sha512-pxxCLLgnZYCjJoGrzUu3jAcb67bKVykLblyMtgTzHN7DlNu6tnp89K3/5fznc6ALyXwXFp0K+nM+Sxst43oaoA==", + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/eslint-config-turbo/-/eslint-config-turbo-2.3.2.tgz", + "integrity": "sha512-gIH/BQdbfWNa9uw/Obo7PZa/NNilZNP8STD0ppVKd8ekSVFONm2GebvOxNiSr5zHregRzokfynnHjZfB5ngJig==", "dev": true, "dependencies": { - "eslint-plugin-turbo": "2.3.1" + "eslint-plugin-turbo": "2.3.2" }, "peerDependencies": { "eslint": ">6.6.0" @@ -7261,9 +7261,9 @@ } }, "node_modules/eslint-plugin-turbo": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-turbo/-/eslint-plugin-turbo-2.3.1.tgz", - "integrity": "sha512-M5MBYBkcQsv11MFHJ+6WpzLpiTBx0OApeUMAHlO4L0eHqQxY03GrmHXjXfozqB+9HwGrW9fqihBzVRllyixJDA==", + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-turbo/-/eslint-plugin-turbo-2.3.2.tgz", + "integrity": "sha512-NoGxnaFi/8KotvKdbwR+VJOB3nVvIOjS193qCjHz2eBKhnO+Wr3cFgw9IZvk1rBIqg3a6VtJQmxkwNIYo2yWOw==", "dev": true, "dependencies": { "dotenv": "16.0.3" @@ -16086,26 +16086,26 @@ } }, "node_modules/turbo": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/turbo/-/turbo-2.3.1.tgz", - "integrity": "sha512-vHZe/e6k1HZVKiMQPQ1BWFn53vjVQDFKdkjUq/pBKlRWi1gw9LQO6ntH4qZCcHY1rH6TXgsRmexXdgWl96YvVQ==", + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/turbo/-/turbo-2.3.2.tgz", + "integrity": "sha512-vCJPoy8/3KkqY3W0cX2nrwhmtBQSZhEyrVgeJ4NlEXwGxu5vNRQDyV6se5VVAQMwfBsBJswlo87B7ai7Dr1MpQ==", "dev": true, "bin": { "turbo": "bin/turbo" }, "optionalDependencies": { - "turbo-darwin-64": "2.3.1", - "turbo-darwin-arm64": "2.3.1", - "turbo-linux-64": "2.3.1", - "turbo-linux-arm64": "2.3.1", - "turbo-windows-64": "2.3.1", - "turbo-windows-arm64": "2.3.1" + "turbo-darwin-64": "2.3.2", + "turbo-darwin-arm64": "2.3.2", + "turbo-linux-64": "2.3.2", + "turbo-linux-arm64": "2.3.2", + "turbo-windows-64": "2.3.2", + "turbo-windows-arm64": "2.3.2" } }, "node_modules/turbo-darwin-64": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/turbo-darwin-64/-/turbo-darwin-64-2.3.1.tgz", - "integrity": "sha512-tjHfjW/Gs8Q9IO+9gPdIsSStZ8I09QYDRT/SyhFTPLnc7O2ZlxHPBVFfjUkHUjanHNYO8CpRGt+zdp1PaMCruw==", + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/turbo-darwin-64/-/turbo-darwin-64-2.3.2.tgz", + "integrity": "sha512-B1lS/UqjXNsG+kx1uzJNwXMuw2i5wavcyNy8opvSLjfuECdsqQU9B1wPqkSTU+mZjFTJcEfiGKyJ/I2EVk8vdw==", "cpu": [ "x64" ], @@ -16116,9 +16116,9 @@ ] }, "node_modules/turbo-darwin-arm64": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/turbo-darwin-arm64/-/turbo-darwin-arm64-2.3.1.tgz", - "integrity": "sha512-At1WStnxCfrBQ4M2g6ynre8WsusGwA11okhVolBxyFUemYozDTtbZwelr+IqNggjT251vviokxOkcFzzogbiFw==", + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/turbo-darwin-arm64/-/turbo-darwin-arm64-2.3.2.tgz", + "integrity": "sha512-XHeuEdk9tHaw2Bsr3rTzFtZyldeSyagDZkOSPIJ1zioavMjWEFPA75vdgy4j8ns96EBpZMaPXVEnODuEHfiZfQ==", "cpu": [ "arm64" ], @@ -16129,9 +16129,9 @@ ] }, "node_modules/turbo-linux-64": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/turbo-linux-64/-/turbo-linux-64-2.3.1.tgz", - "integrity": "sha512-COwEev7s9fsxLM2eoRCyRLPj+BXvZjFIS+GxzdAubYhoSoZit8B8QGKczyDl6448xhuFEWKrpHhcR9aBuwB4ag==", + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/turbo-linux-64/-/turbo-linux-64-2.3.2.tgz", + "integrity": "sha512-oKDsO5+flqpPx5tNLFGVUYpJ/sBc3KvaGpyNzXl2u3epzyafgblFKWMG5YsSiU1ruouPpcC6YG5SN5chA7Abfg==", "cpu": [ "x64" ], @@ -16142,9 +16142,9 @@ ] }, "node_modules/turbo-linux-arm64": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/turbo-linux-arm64/-/turbo-linux-arm64-2.3.1.tgz", - "integrity": "sha512-AP0uE15Rhxza2Jl+Q3gxdXRA92IIeFAYaufz6CMcZuGy9yZsBlLt9w6T47H6g7XQPzWuw8pzfjM1omcTKkkDpQ==", + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/turbo-linux-arm64/-/turbo-linux-arm64-2.3.2.tgz", + "integrity": "sha512-luyvTl3wQ1hF+ljK7ljH4TL7rg4pmx5pQ2mzvfMvPo5eaLuKr/tImmbdH6/vr56iffUIISkIsLVhVxgZeAsUOw==", "cpu": [ "arm64" ], @@ -16155,9 +16155,9 @@ ] }, "node_modules/turbo-windows-64": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/turbo-windows-64/-/turbo-windows-64-2.3.1.tgz", - "integrity": "sha512-HDSneq0dNZYZch74c2eygq+OiJE/JYDs7OsGM0yRYVj336383xkUnxz6W2I7qiyMCQXzp4UVUDZXvZhUYcX3BA==", + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/turbo-windows-64/-/turbo-windows-64-2.3.2.tgz", + "integrity": "sha512-yw7BnTU5cE7GdUnZEW3jIAI98hh4dcWk+Jwza8X7CXpxpill2zteq7VPf+a/B3o/xm+oVXzLmP83YP91Bm0SaA==", "cpu": [ "x64" ], @@ -16168,9 +16168,9 @@ ] }, "node_modules/turbo-windows-arm64": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/turbo-windows-arm64/-/turbo-windows-arm64-2.3.1.tgz", - "integrity": "sha512-7/2/sJZiquwoT/jWBCfV0qKq4NarsJPmDRjMcR9dDMIwCYsGM8ljomkDRTCtkNeFcUvYw54MiRWHehWgbcRPsw==", + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/turbo-windows-arm64/-/turbo-windows-arm64-2.3.2.tgz", + "integrity": "sha512-Hgp6V7jaIYlDcy5xpKN+XXyYCf5afT690GmXcEsMoUawd5dStvZe0QHWcGxuqho497BAlx0XGAWftm0KelNePA==", "cpu": [ "arm64" ], @@ -17129,7 +17129,7 @@ }, "packages/cache-handler": { "name": "@neshca/cache-handler", - "version": "1.8.1", + "version": "1.9.0", "license": "MIT", "dependencies": { "cluster-key-slot": "1.1.2", diff --git a/package.json b/package.json index 3a9a671a..508dbda3 100644 --- a/package.json +++ b/package.json @@ -41,7 +41,7 @@ "glob": "11.0.0", "prettier": "3.3.3", "rimraf": "6.0.1", - "turbo": "2.3.1" + "turbo": "2.3.2" }, "packageManager": "npm@10.7.0", "engines": { From 88010c21bb7f4a3680cc571cf500cb01747408f9 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 27 Nov 2024 10:14:12 +0300 Subject: [PATCH 455/458] Bump prettier from 3.3.3 to 3.4.1 (#883) Bumps [prettier](https://github.com/prettier/prettier) from 3.3.3 to 3.4.1. - [Release notes](https://github.com/prettier/prettier/releases) - [Changelog](https://github.com/prettier/prettier/blob/main/CHANGELOG.md) - [Commits](https://github.com/prettier/prettier/compare/3.3.3...3.4.1) --- updated-dependencies: - dependency-name: prettier dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 9 ++++----- package.json | 2 +- 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/package-lock.json b/package-lock.json index 74c5bad7..bd135685 100644 --- a/package-lock.json +++ b/package-lock.json @@ -23,7 +23,7 @@ "@repo/prettier-config": "*", "@repo/typescript-config": "*", "glob": "11.0.0", - "prettier": "3.3.3", + "prettier": "3.4.1", "rimraf": "6.0.1", "turbo": "2.3.2" }, @@ -12964,11 +12964,10 @@ } }, "node_modules/prettier": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.3.3.tgz", - "integrity": "sha512-i2tDNA0O5IrMO757lfrdQZCc2jPNDVntV0m/+4whiDfWaTKfMNgR7Qz0NAeGz/nRqF4m5/6CLzbP4/liHt12Ew==", + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.4.1.tgz", + "integrity": "sha512-G+YdqtITVZmOJje6QkXQWzl3fSfMxFwm1tjTyo9exhkmWSqC4Yhd1+lug++IlR2mvRVAxEDDWYkQdeSztajqgg==", "dev": true, - "license": "MIT", "bin": { "prettier": "bin/prettier.cjs" }, diff --git a/package.json b/package.json index 508dbda3..0b3ad8a2 100644 --- a/package.json +++ b/package.json @@ -39,7 +39,7 @@ "@repo/prettier-config": "*", "@repo/typescript-config": "*", "glob": "11.0.0", - "prettier": "3.3.3", + "prettier": "3.4.1", "rimraf": "6.0.1", "turbo": "2.3.2" }, From 6c218f06fdabd184759d72f74734ba7044437459 Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Sat, 8 Feb 2025 04:12:26 +0300 Subject: [PATCH 456/458] It's alive (#965) Refactor project configuration and workflows for pnpm migration: - Switch from npm to pnpm as package manager - Update Node.js version to 22 LTS - Migrate to flat ESLint configuration - Remove shared prettier configuration - Update various dependencies to latest versions - Update dependency management in Dependabot configuration - Update Node.js version file from .nvmrc to .node-version - Update documentation with pnpm installation and usage instructions - Change formatting settings to max_line_length 80 --- .changeset/config.json | 31 +- .editorconfig | 7 + .github/actions/add-dist-tags/action.yml | 12 - .../actions/add-dist-tags/add-dist-tags.js | 67 - .github/dependabot.yml | 23 +- .github/workflows/deploy-docs.yml | 17 +- .github/workflows/release.yml | 39 +- .github/workflows/test-docs.yml | 25 +- .github/workflows/tests.yml | 44 +- .gitignore | 51 +- .node-version | 1 + .npmrc | 2 +- .nvmrc | 1 - .prettierignore | 41 +- .prettierrc.json | 1 - .vscode/extensions.json | 8 +- .vscode/settings.json | 100 +- LICENSE | 2 +- apps/cache-testing/.eslintrc.js | 10 - apps/cache-testing/cache-handler-local.mjs | 8 +- .../cache-handler-next-example.js | 54 +- .../cache-handler-redis-stack.js | 127 +- .../cache-handler-redis-stack.mjs | 127 +- .../cache-handler-redis-strings.mjs | 67 +- apps/cache-testing/cluster.config.js | 28 +- apps/cache-testing/eslint.config.js | 4 + apps/cache-testing/next.config.mjs | 28 +- apps/cache-testing/package.json | 75 +- apps/cache-testing/playwright.config.ts | 42 +- apps/cache-testing/run-app-instances.ts | 100 +- .../src/app/api/revalidate-app/route.ts | 54 +- .../no-params/dynamic-false/[slug]/page.tsx | 29 +- .../no-params/dynamic-true/[slug]/page.tsx | 29 +- .../src/app/app/no-params/ssr/200/page.tsx | 19 +- apps/cache-testing/src/app/app/ppr/page.tsx | 36 +- .../src/app/app/randomHex/[length]/page.tsx | 59 +- .../cache-testing/src/app/app/static/route.ts | 2 +- .../with-params/dynamic-false/[slug]/page.tsx | 35 +- .../with-params/dynamic-true/[slug]/page.tsx | 35 +- .../with-params/nesh-cache/[slug]/page.tsx | 41 +- .../unstable-cache/[slug]/page.tsx | 41 +- apps/cache-testing/src/app/layout.tsx | 32 +- .../src/components/cache-state-watcher.tsx | 67 +- .../src/components/pre-rendered-at.tsx | 9 +- .../src/components/restart-button.tsx | 34 +- .../src/components/revalidate-button.tsx | 66 +- apps/cache-testing/src/globals.css | 140 +- apps/cache-testing/src/instrumentation.ts | 13 +- apps/cache-testing/src/pages/_app.tsx | 10 +- .../src/pages/api/pages-cached-api.ts | 66 +- .../src/pages/api/restart-app.ts | 33 +- .../src/pages/api/revalidate-pages.ts | 41 +- apps/cache-testing/src/pages/layout.tsx | 14 +- .../no-paths/fallback-blocking/[slug].tsx | 12 +- .../pages/no-paths/fallback-false/[slug].tsx | 12 +- .../pages/no-paths/fallback-true/[slug].tsx | 12 +- .../pages/no-paths/ssr-with-cache/200.tsx | 6 +- .../src/pages/pages/no-paths/ssr/200.tsx | 4 +- .../src/pages/pages/randomHex/[length].tsx | 70 +- .../with-paths/fallback-blocking/[slug].tsx | 16 +- .../with-paths/fallback-false/[slug].tsx | 16 +- .../pages/with-paths/fallback-true/[slug].tsx | 16 +- .../src/utils/common-app-page.tsx | 29 +- .../src/utils/common-pages-page.tsx | 27 +- .../src/utils/create-get-data.ts | 120 +- ...-pages-get-get-server-side-props-cached.ts | 78 +- .../create-pages-get-get-server-side-props.ts | 38 +- .../utils/create-pages-get-static-props.ts | 60 +- apps/cache-testing/src/utils/format-time.ts | 17 +- .../cache-testing/src/utils/normalize-slug.ts | 14 +- apps/cache-testing/src/utils/types.ts | 12 +- apps/cache-testing/tests/app.spec.ts | 546 +- apps/cache-testing/tests/pages.spec.ts | 714 +- apps/cache-testing/tests/test-helpers.ts | 71 +- apps/cache-testing/tsconfig.json | 32 +- biome.json | 140 +- docs/cache-handler-docs/.eslintrc.cjs | 9 - docs/cache-handler-docs/eslint.config.js | 4 + docs/cache-handler-docs/next.config.js | 21 +- docs/cache-handler-docs/package.json | 58 +- docs/cache-handler-docs/src/pages/_app.tsx | 2 +- docs/cache-handler-docs/src/pages/_meta.ts | 96 +- .../src/pages/api-reference/_meta.ts | 12 +- .../src/pages/api-reference/on-creation.mdx | 9 +- .../src/pages/functions/_meta.ts | 4 +- .../pages/functions/nesh-classic-cache.mdx | 8 +- .../src/pages/handlers/_meta.ts | 8 +- .../handlers/experimental-redis-cluster.mdx | 4 +- .../src/pages/handlers/local-lru.mdx | 4 +- .../src/pages/handlers/redis-stack.mdx | 3 +- .../src/pages/installation.mdx | 19 +- docs/cache-handler-docs/src/pages/redis.mdx | 13 +- .../src/pages/troubleshooting.mdx | 5 +- .../src/pages/usage/_meta.ts | 12 +- .../pages/usage/build-id-as-prefix-key.mdx | 3 +- .../pages/usage/creating-a-custom-handler.mdx | 42 +- .../pages/usage/development-environment.mdx | 5 +- .../pages/usage/populating-cache-on-start.mdx | 9 +- docs/cache-handler-docs/theme.config.jsx | 115 +- docs/cache-handler-docs/tsconfig.json | 30 +- docs/contributing/cache-handler.md | 10 +- docs/contributing/monorepo.md | 8 +- internal/backend/package.json | 40 +- internal/backend/src/backend.ts | 118 +- internal/backend/tsconfig.json | 6 +- internal/eslint-config/next.js | 86 +- internal/eslint-config/package.json | 34 +- internal/next-common/package.json | 32 +- internal/next-common/src/next-common.ts | 152 +- internal/next-common/tsconfig.json | 6 +- internal/next-lru-cache/package.json | 34 +- .../src/cache-types/cache-string-value.ts | 8 +- .../cache-types/next-cache-handler-value.ts | 64 +- .../src/create-configured-cache.ts | 53 +- internal/next-lru-cache/tsconfig.json | 6 +- internal/prettier-config/index.js | 16 - internal/prettier-config/package.json | 9 - internal/typescript-config/base.json | 38 +- internal/typescript-config/library.json | 11 - internal/typescript-config/nextjs.json | 19 +- internal/typescript-config/package.json | 14 +- package-lock.json | 17185 ---------------- package.json | 91 +- packages/cache-handler/LICENSE | 2 +- packages/cache-handler/package.json | 192 +- packages/cache-handler/src/cache-handler.ts | 1535 +- packages/cache-handler/src/common-types.ts | 87 +- .../cache-handler/src/functions/nesh-cache.ts | 447 +- .../src/functions/nesh-classic-cache.ts | 323 +- .../handlers/experimental-redis-cluster.ts | 353 +- .../cache-handler/src/handlers/local-lru.ts | 125 +- .../cache-handler/src/handlers/redis-stack.ts | 305 +- .../src/handlers/redis-strings.ts | 300 +- packages/cache-handler/src/handlers/server.ts | 169 +- ...-validated-age-estimation-function.test.ts | 108 +- ...reate-validated-age-estimation-function.ts | 26 +- .../src/helpers/get-tags-from-headers.ts | 16 +- .../get-timeout-redis-command-options.ts | 12 +- .../src/helpers/is-implicit-tag.ts | 2 +- .../src/helpers/is-tags-manifest.ts | 20 +- .../src/helpers/promise-with-timeout.test.ts | 79 +- .../src/helpers/promise-with-timeout.ts | 44 +- .../src/instrumentation/instrumentation.ts | 5 +- .../instrumentation/register-initial-cache.ts | 623 +- packages/cache-handler/tsconfig.json | 20 +- packages/cache-handler/tsup.config.ts | 30 +- .../json-replacer-reviver/.npmignore | 0 packages/json-replacer-reviver/LICENSE | 2 +- packages/json-replacer-reviver/README.md | 16 +- packages/json-replacer-reviver/package.json | 66 +- .../src/json-replacer-reviver.test.ts | 122 +- .../src/json-replacer-reviver.ts | 103 +- packages/json-replacer-reviver/tsconfig.json | 6 +- packages/json-replacer-reviver/tsup.config.ts | 16 +- packages/server/.npmignore | 5 + packages/server/LICENSE | 2 +- packages/server/package.json | 82 +- packages/server/src/server.ts | 115 +- packages/server/tsconfig.json | 14 +- packages/server/tsup.config.ts | 22 +- pnpm-lock.yaml | 10063 +++++++++ pnpm-workspace.yaml | 5 + prettier.config.js | 8 + tsconfig.json | 3 - turbo.json | 94 +- 165 files changed, 16014 insertions(+), 22197 deletions(-) create mode 100644 .editorconfig delete mode 100644 .github/actions/add-dist-tags/action.yml delete mode 100644 .github/actions/add-dist-tags/add-dist-tags.js create mode 100644 .node-version delete mode 100644 .nvmrc delete mode 100644 .prettierrc.json delete mode 100644 apps/cache-testing/.eslintrc.js create mode 100644 apps/cache-testing/eslint.config.js delete mode 100644 docs/cache-handler-docs/.eslintrc.cjs create mode 100644 docs/cache-handler-docs/eslint.config.js delete mode 100644 internal/prettier-config/index.js delete mode 100644 internal/prettier-config/package.json delete mode 100644 internal/typescript-config/library.json delete mode 100644 package-lock.json rename .npmignore => packages/json-replacer-reviver/.npmignore (100%) create mode 100644 packages/server/.npmignore create mode 100644 pnpm-lock.yaml create mode 100644 pnpm-workspace.yaml create mode 100644 prettier.config.js delete mode 100644 tsconfig.json diff --git a/.changeset/config.json b/.changeset/config.json index 60b0c62e..722ecad8 100644 --- a/.changeset/config.json +++ b/.changeset/config.json @@ -1,18 +1,17 @@ { - "$schema": "../node_modules/@changesets/config/schema.json", - "changelog": "@changesets/cli/changelog", - "commit": false, - "fixed": [], - "linked": [], - "access": "public", - "baseBranch": "canary", - "updateInternalDependencies": "patch", - "ignore": [ - "@neshca/server", - "@repo/backend", - "@repo/cache-handler-docs", - "@repo/cache-testing", - "@repo/eslint-config", - "@repo/prettier-config" - ] + "$schema": "https://unpkg.com/@changesets/config@3.0.5/schema.json", + "changelog": "@changesets/cli/changelog", + "commit": false, + "fixed": [], + "linked": [], + "access": "public", + "baseBranch": "canary", + "updateInternalDependencies": "patch", + "ignore": [ + "@neshca/server", + "@repo/backend", + "@repo/cache-handler-docs", + "@repo/cache-testing", + "@repo/eslint-config" + ] } diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 00000000..3920760a --- /dev/null +++ b/.editorconfig @@ -0,0 +1,7 @@ +[*] +charset = utf-8 +insert_final_newline = true +end_of_line = lf +indent_style = space +indent_size = 2 +max_line_length = 80 diff --git a/.github/actions/add-dist-tags/action.yml b/.github/actions/add-dist-tags/action.yml deleted file mode 100644 index 6699c27d..00000000 --- a/.github/actions/add-dist-tags/action.yml +++ /dev/null @@ -1,12 +0,0 @@ -name: 'Add dist-tags' -description: 'Add tags to npm package listed in dist-tags.json' -inputs: - publishedPackages: - description: 'List of published packages' - required: false - published: - description: 'Is published' - required: true -runs: - using: 'node20' - main: 'add-dist-tags.js' diff --git a/.github/actions/add-dist-tags/add-dist-tags.js b/.github/actions/add-dist-tags/add-dist-tags.js deleted file mode 100644 index 4be44b48..00000000 --- a/.github/actions/add-dist-tags/add-dist-tags.js +++ /dev/null @@ -1,67 +0,0 @@ -#!/usr/bin/env node -// @ts-check - -const core = require('@actions/core'); -const { execFileSync } = require('node:child_process'); -const { globSync } = require('glob'); -const fs = require('node:fs'); - -function run() { - try { - const published = core.getInput('published', { required: true }); - - if (published !== 'true') { - core.debug('Not published'); - - return; - } - - const publishedPackagesInput = core.getInput('publishedPackages', { required: false }); - - /** @type {{ name: string; version: string }[]} */ - const publishedPackages = JSON.parse(publishedPackagesInput || '[]'); - - if (!Array.isArray(publishedPackages) || publishedPackages.length === 0) { - core.debug('No published packages found'); - - return; - } - - const packagesPaths = globSync('packages/**/package.json', { - absolute: true, - }); - - for (const packagePath of packagesPaths) { - const packageData = fs.readFileSync(packagePath, 'utf-8'); - const { name, version, private: isPrivate, distTags } = JSON.parse(packageData); - - if (!Array.isArray(distTags)) { - continue; - } - - if (isPrivate === true || isPrivate === 'true') { - continue; - } - - if (!(name && version)) { - continue; - } - - const publishedPackage = publishedPackages.find((pkg) => pkg.name === name); - - if (!publishedPackage) { - continue; - } - - for (const tag of distTags) { - execFileSync('npm', ['dist-tag', 'add', `${publishedPackage.name}@${publishedPackage.version}`, tag], { - stdio: 'inherit', - }); - } - } - } catch (error) { - core.setFailed(error); - } -} - -run(); diff --git a/.github/dependabot.yml b/.github/dependabot.yml index b694eff7..db15a3a9 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -9,14 +9,6 @@ updates: versioning-strategy: increase open-pull-requests-limit: 20 ignore: - - dependency-name: 'eslint' - versions: ['9.x.x'] - - dependency-name: '@types/eslint' - versions: ['9.x.x'] - - dependency-name: '@typescript-eslint/eslint-plugin' - versions: ['8.x.x'] - - dependency-name: '@typescript-eslint/parser' - versions: ['8.x.x'] - dependency-name: 'lru-cache' versions: ['11.x.x'] groups: @@ -27,10 +19,7 @@ updates: turbo: patterns: - 'turbo' - - 'eslint-config-turbo' - definitely-typed: - patterns: - - '@types/*' + - 'eslint-plugin-turbo' react: patterns: - 'react' @@ -48,6 +37,10 @@ updates: eslint: patterns: - 'eslint' - - '@types/eslint' - - '@typescript-eslint/eslint-plugin' - - '@typescript-eslint/parser' + - '@eslint/js' + - 'eslint-config-prettier' + - 'eslint-plugin-react' + - 'eslint-plugin-react-hooks' + - 'eslint-plugin-turbo' + - 'globals' + - 'typescript-eslint' diff --git a/.github/workflows/deploy-docs.yml b/.github/workflows/deploy-docs.yml index 0188b36e..17e3236e 100644 --- a/.github/workflows/deploy-docs.yml +++ b/.github/workflows/deploy-docs.yml @@ -25,18 +25,25 @@ jobs: steps: - name: Checkout uses: actions/checkout@v4 + + - uses: pnpm/action-setup@v4 + - name: Setup Node uses: actions/setup-node@v4 with: - node-version-file: '.nvmrc' + node-version-file: '.node-version' check-latest: true - cache: 'npm' + cache: 'pnpm' + - name: Setup Pages uses: actions/configure-pages@v5 + - name: Install dependencies - run: npm ci - - name: Build with Next.js - run: npm run build:docs + run: pnpm i --frozen-lockfile + + - name: Build docs + run: pnpm build:docs + - name: Upload artifact uses: actions/upload-pages-artifact@v3 with: diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index aa1e8f13..bb50c8b7 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -18,20 +18,27 @@ jobs: name: Release runs-on: ubuntu-latest steps: - - name: Checkout Repo + - name: Checkout uses: actions/checkout@v4 - - name: Setup Node.js + + - uses: pnpm/action-setup@v4 + + - name: Setup Node uses: actions/setup-node@v4 with: - node-version-file: '.nvmrc' + node-version-file: '.node-version' check-latest: true - cache: 'npm' - - name: Install Dependencies - run: npm ci + cache: 'pnpm' + + - name: Install dependencies + run: pnpm i --frozen-lockfile + - name: Build packages - run: npm run build:packages + run: pnpm build:packages + - name: Check code style - run: npm run codestyle:check + run: pnpm codestyle:check + - name: Creating .npmrc run: | cat << EOF > "$HOME/.npmrc" @@ -39,21 +46,13 @@ jobs: EOF env: NPM_TOKEN: ${{ secrets.NPM_TOKEN }} + - name: Create Release Pull Request or Publish to npm id: changesets uses: changesets/action@v1 with: - publish: npm run ci:publish - version: npm run ci:version - env: - NPM_TOKEN: ${{ secrets.NPM_TOKEN }} - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - name: Add dist-tags - if: steps.changesets.outputs.published == 'true' - id: dist-tags - uses: ./.github/actions/add-dist-tags - with: - publishedPackages: ${{ steps.changesets.outputs.publishedPackages }} - published: ${{ steps.changesets.outputs.published }} + publish: pnpm ci:publish + version: pnpm ci:version env: NPM_TOKEN: ${{ secrets.NPM_TOKEN }} + GITHUB_TOKEN: ${{ github.token }} diff --git a/.github/workflows/test-docs.yml b/.github/workflows/test-docs.yml index 043efe2b..2c287e86 100644 --- a/.github/workflows/test-docs.yml +++ b/.github/workflows/test-docs.yml @@ -3,30 +3,35 @@ env: CI: true on: pull_request: + types: [opened, synchronize] branches: [canary] paths: - '.github/workflows/test-docs.yml' - 'docs/cache-handler-docs/**' - 'internal/eslint-config/**' - - 'internal/prettier-config/**' - 'package.json' - 'biome.json' - - '.prettierrc.json' + - 'prettier.config.js' jobs: test: name: 'check-docs-build' timeout-minutes: 5 runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 - - uses: actions/setup-node@v4 + - name: Checkout + uses: actions/checkout@v4 + + - uses: pnpm/action-setup@v4 + + - name: Setup Node + uses: actions/setup-node@v4 with: - node-version-file: '.nvmrc' + node-version-file: '.node-version' check-latest: true - cache: 'npm' + cache: 'pnpm' + - name: Install dependencies - run: npm ci - - name: Check code style - run: npm run codestyle:check + run: pnpm i --frozen-lockfile + - name: Build docs - run: npm run build:docs + run: pnpm build:docs diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index d90991de..63622269 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -12,13 +12,13 @@ on: - 'server/**' - '.github/workflows/tests.yml' - 'internal/eslint-config/**' - - 'internal/prettier-config/**' - 'package.json' - 'biome.json' - 'turbo.json' - - '.prettierrc.json' + - 'prettier.config.js' pull_request: branches: [canary] + types: [opened, synchronize] paths: - 'apps/cache-testing/**' - 'packages/cache-handler/**' @@ -27,11 +27,10 @@ on: - 'server/**' - '.github/workflows/tests.yml' - 'internal/eslint-config/**' - - 'internal/prettier-config/**' - 'package.json' - 'biome.json' - 'turbo.json' - - '.prettierrc.json' + - 'prettier.config.js' jobs: test: strategy: @@ -54,33 +53,46 @@ jobs: ports: - 6379:6379 steps: - - uses: actions/checkout@v4 - - uses: actions/setup-node@v4 + - name: Checkout + uses: actions/checkout@v4 + + - uses: pnpm/action-setup@v4 + + - name: Setup Node + uses: actions/setup-node@v4 with: - node-version-file: '.nvmrc' + node-version-file: '.node-version' check-latest: true - cache: 'npm' + cache: 'pnpm' + - name: Replace Path with Sed run: | if [ "${{ matrix.handler }}" == "redis-strings" ]; then sed -i 's/cache-handler-redis-stack/cache-handler-redis-strings/g' apps/cache-testing/next.config.mjs sed -i 's/cache-handler-redis-stack/cache-handler-redis-strings/g' apps/cache-testing/src/instrumentation.ts fi + - name: Install dependencies - run: npm ci + run: pnpm i --frozen-lockfile + - name: Install Playwright Browsers - run: npm run playwright:install -w @repo/cache-testing + run: pnpm -F @repo/cache-testing playwright:install + - name: Build packages - run: npm run build:packages + run: pnpm build:packages + - name: Check code style - run: npm run codestyle:check + run: pnpm codestyle:check + - name: Run unit tests - run: npm test + run: pnpm test + - name: Run e2e tests run: | - npm run start:backend & - npm run build:test-app - npm run e2e + pnpm start:backend & + pnpm build:test-app + pnpm e2e + - uses: actions/upload-artifact@v4 if: always() with: diff --git a/.gitignore b/.gitignore index d6f71a03..b87182c8 100644 --- a/.gitignore +++ b/.gitignore @@ -1,49 +1,40 @@ # See https://help.github.com/articles/ignoring-files/ for more about ignoring files. -# dependencies +# Dependencies node_modules .pnp .pnp.js -# testing -coverage -playwright-report -test-results - -# next.js -.next/ -out/ -build - -# misc -.DS_Store -*.pem - -# debug -npm-debug.log* -yarn-debug.log* -yarn-error.log* - -# local env files +# Local env files .env .env.local .env.development.local .env.test.local .env.production.local -# turbo +# Testing +coverage +playwright-report +test-results + +# Turbo .turbo -# vercel +# Vercel .vercel -# monorepo +# Build Outputs +.next/ +out/ +build dist - -# typescript -*.tsbuildinfo next-env.d.ts -# act -.actrc -.act.json \ No newline at end of file +# Debug +npm-debug.log* +yarn-debug.log* +yarn-error.log* + +# Misc +.DS_Store +*.pem diff --git a/.node-version b/.node-version new file mode 100644 index 00000000..deed13c0 --- /dev/null +++ b/.node-version @@ -0,0 +1 @@ +lts/jod diff --git a/.npmrc b/.npmrc index 1dab4ed4..631d3475 100644 --- a/.npmrc +++ b/.npmrc @@ -1 +1 @@ -save-exact = true +save-prefix = "" diff --git a/.nvmrc b/.nvmrc deleted file mode 100644 index 9de22568..00000000 --- a/.nvmrc +++ /dev/null @@ -1 +0,0 @@ -lts/iron diff --git a/.prettierignore b/.prettierignore index eae4c5fc..b01d2be0 100644 --- a/.prettierignore +++ b/.prettierignore @@ -1,27 +1,44 @@ -# dependencies +# Dependencies node_modules -package-lock.json .pnp .pnp.js -# testing -coverage +# Local env files +.env +.env.local +.env.development.local +.env.test.local +.env.production.local -# next.js -.next/ -out/ -build/ +# Testing +coverage +playwright-report +test-results -# turbo +# Turbo .turbo -# vercel +# Vercel .vercel -#packages +# Build Outputs +.next/ +out/ +build dist +next-env.d.ts + +# Debug +npm-debug.log* +yarn-debug.log* +yarn-error.log* + +# Misc +.DS_Store +*.pem + -# biome fromatted files +# biome formatted files *.js *.ts *.tsx diff --git a/.prettierrc.json b/.prettierrc.json deleted file mode 100644 index be2a8ca1..00000000 --- a/.prettierrc.json +++ /dev/null @@ -1 +0,0 @@ -"@repo/prettier-config" diff --git a/.vscode/extensions.json b/.vscode/extensions.json index 82701650..00649a81 100644 --- a/.vscode/extensions.json +++ b/.vscode/extensions.json @@ -1,3 +1,9 @@ { - "recommendations": ["biomejs.biome", "dbaeumer.vscode-eslint", "esbenp.prettier-vscode", "unifiedjs.vscode-mdx"] + "recommendations": [ + "biomejs.biome", + "dbaeumer.vscode-eslint", + "esbenp.prettier-vscode", + "unifiedjs.vscode-mdx", + "editorconfig.editorconfig" + ] } diff --git a/.vscode/settings.json b/.vscode/settings.json index 4e604e2e..e03f15de 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -1,50 +1,54 @@ { - "eslint.workingDirectories": [{ "pattern": "apps/*/" }, { "pattern": "docs/*/" }], - "typescript.surveys.enabled": false, - "explorer.fileNesting.enabled": true, - "explorer.fileNesting.patterns": { - "*.ts": "$(capture).test.ts, $(capture).test.tsx", - "*.tsx": "$(capture).test.ts, $(capture).test.tsx" - }, - "cSpell.words": ["nextjs", "prerendered", "codestyle"], - "grammarly.selectors": [ - { - "language": "markdown", - "scheme": "file" - } - ], - "typescript.tsdk": "node_modules/typescript/lib", - "editor.defaultFormatter": "biomejs.biome", - "[jsonc]": { - "editor.defaultFormatter": "esbenp.prettier-vscode" - }, - "[json]": { - "editor.defaultFormatter": "esbenp.prettier-vscode" - }, - "[github-actions-workflow]": { - "editor.defaultFormatter": "esbenp.prettier-vscode" - }, - "[yaml]": { - "editor.defaultFormatter": "esbenp.prettier-vscode" - }, - "[markdown]": { - "editor.defaultFormatter": "esbenp.prettier-vscode" - }, - "[mdx]": { - "editor.defaultFormatter": "esbenp.prettier-vscode", - "editor.wordWrap": "on" - }, - "[javascript]": { - "editor.defaultFormatter": "biomejs.biome" - }, - "[javascriptreact]": { - "editor.defaultFormatter": "biomejs.biome" - }, - "[typescript]": { - "editor.defaultFormatter": "biomejs.biome" - }, - "[typescriptreact]": { - "editor.defaultFormatter": "biomejs.biome" - }, - "grammarly.files.include": ["**/*.md", "**/*.mdx"] + "eslint.workingDirectories": [ + { + "mode": "auto" + } + ], + "typescript.surveys.enabled": false, + "explorer.fileNesting.enabled": true, + "explorer.fileNesting.patterns": { + "*.ts": "$(capture).test.ts, $(capture).test.tsx", + "*.tsx": "$(capture).test.ts, $(capture).test.tsx" + }, + "cSpell.words": ["nextjs", "prerendered", "codestyle"], + "grammarly.selectors": [ + { + "language": "markdown", + "scheme": "file" + } + ], + // "typescript.tsdk": "node_modules/typescript/lib", + "editor.defaultFormatter": "biomejs.biome", + "[jsonc]": { + "editor.defaultFormatter": "esbenp.prettier-vscode" + }, + "[json]": { + "editor.defaultFormatter": "esbenp.prettier-vscode" + }, + "[github-actions-workflow]": { + "editor.defaultFormatter": "esbenp.prettier-vscode" + }, + "[yaml]": { + "editor.defaultFormatter": "esbenp.prettier-vscode" + }, + "[markdown]": { + "editor.defaultFormatter": "esbenp.prettier-vscode" + }, + "[mdx]": { + "editor.defaultFormatter": "esbenp.prettier-vscode", + "editor.wordWrap": "on" + }, + "[javascript]": { + "editor.defaultFormatter": "biomejs.biome" + }, + "[javascriptreact]": { + "editor.defaultFormatter": "biomejs.biome" + }, + "[typescript]": { + "editor.defaultFormatter": "biomejs.biome" + }, + "[typescriptreact]": { + "editor.defaultFormatter": "biomejs.biome" + }, + "grammarly.files.include": ["**/*.md", "**/*.mdx"] } diff --git a/LICENSE b/LICENSE index fbb67bf3..5b65b185 100644 --- a/LICENSE +++ b/LICENSE @@ -1,6 +1,6 @@ MIT License -Copyright (c) 2024 Arseny Kruglikov +Copyright (c) 2025 Arseny Kruglikov Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/apps/cache-testing/.eslintrc.js b/apps/cache-testing/.eslintrc.js deleted file mode 100644 index 60546512..00000000 --- a/apps/cache-testing/.eslintrc.js +++ /dev/null @@ -1,10 +0,0 @@ -/** @type {import("eslint").Linter.Config} */ -module.exports = { - root: true, - extends: ['@repo/eslint-config/next.js'], - parser: '@typescript-eslint/parser', - parserOptions: { - project: true, - }, - ignorePatterns: ['*.mjs'], -}; diff --git a/apps/cache-testing/cache-handler-local.mjs b/apps/cache-testing/cache-handler-local.mjs index 8b25938c..2d30bbe3 100644 --- a/apps/cache-testing/cache-handler-local.mjs +++ b/apps/cache-testing/cache-handler-local.mjs @@ -4,11 +4,11 @@ import { CacheHandler } from '@neshca/cache-handler'; import createLruHandler from '@neshca/cache-handler/local-lru'; CacheHandler.onCreation(() => { - const localHandler = createLruHandler(); + const localHandler = createLruHandler(); - return { - handlers: [localHandler], - }; + return { + handlers: [localHandler], + }; }); export default CacheHandler; diff --git a/apps/cache-testing/cache-handler-next-example.js b/apps/cache-testing/cache-handler-next-example.js index 7eed4af9..d42e4368 100644 --- a/apps/cache-testing/cache-handler-next-example.js +++ b/apps/cache-testing/cache-handler-next-example.js @@ -1,35 +1,35 @@ const cache = new Map(); module.exports = class CacheHandler { - constructor(options) { - this.options = options; - } + constructor(options) { + this.options = options; + } - // biome-ignore lint/suspicious/useAwait: don't bother - async get(key) { - // This could be stored anywhere, like durable storage - return cache.get(key); - } + // biome-ignore lint/suspicious/useAwait: don't bother + async get(key) { + // This could be stored anywhere, like durable storage + return cache.get(key); + } - // biome-ignore lint/suspicious/useAwait: don't bother - async set(key, data, ctx) { - // This could be stored anywhere, like durable storage - cache.set(key, { - value: data, - lastModified: Date.now(), - tags: ctx.tags, - }); - } + // biome-ignore lint/suspicious/useAwait: don't bother + async set(key, data, ctx) { + // This could be stored anywhere, like durable storage + cache.set(key, { + value: data, + lastModified: Date.now(), + tags: ctx.tags, + }); + } - // biome-ignore lint/suspicious/useAwait: don't bother - async revalidateTag(tag) { - // Iterate over all entries in the cache - // biome-ignore lint/style/useConst: don't bother - for (let [key, value] of cache) { - // If the value's tags include the specified tag, delete this entry - if (value.tags.includes(tag)) { - cache.delete(key); - } - } + // biome-ignore lint/suspicious/useAwait: don't bother + async revalidateTag(tag) { + // Iterate over all entries in the cache + // biome-ignore lint/style/useConst: don't bother + for (let [key, value] of cache) { + // If the value's tags include the specified tag, delete this entry + if (value.tags.includes(tag)) { + cache.delete(key); + } } + } }; diff --git a/apps/cache-testing/cache-handler-redis-stack.js b/apps/cache-testing/cache-handler-redis-stack.js index 3e2cc048..decb4bf6 100644 --- a/apps/cache-testing/cache-handler-redis-stack.js +++ b/apps/cache-testing/cache-handler-redis-stack.js @@ -6,75 +6,84 @@ const createRedisHandler = require('@neshca/cache-handler/redis-stack').default; const { createClient } = require('redis'); CacheHandler.onCreation(async () => { - if (!process.env.REDIS_URL) { - console.warn('Make sure that REDIS_URL is added to the .env.local file and loaded properly.'); - } + if (!process.env.REDIS_URL) { + console.warn( + 'Make sure that REDIS_URL is added to the .env.local file and loaded properly.', + ); + } - let client; + let client; - try { - // Create a Redis client. - client = createClient({ - url: process.env.REDIS_URL, - name: `cache-handler:${process.env.PORT ?? process.pid}`, - }); + try { + // Create a Redis client. + client = createClient({ + url: process.env.REDIS_URL, + name: `cache-handler:${process.env.PORT ?? process.pid}`, + }); - // Redis won't work without error handling. https://github.com/redis/node-redis?tab=readme-ov-file#events - client.on('error', (error) => { - if (typeof process.env.NEXT_PRIVATE_DEBUG_CACHE !== 'undefined') { - console.error('Redis client error:', error); - } - }); - } catch (error) { - console.warn('Failed to create Redis client:', error); - } + // Redis won't work without error handling. https://github.com/redis/node-redis?tab=readme-ov-file#events + client.on('error', (error) => { + if (typeof process.env.NEXT_PRIVATE_DEBUG_CACHE !== 'undefined') { + console.error('Redis client error:', error); + } + }); + } catch (error) { + console.warn('Failed to create Redis client:', error); + } - if (client) { - try { - console.info('Connecting Redis client...'); + if (client) { + try { + console.info('Connecting Redis client...'); - // Wait for the client to connect. - // Caveat: This will block the server from starting until the client is connected. - // And there is no timeout. Make your own timeout if needed. - await client.connect(); - console.info('Redis client connected.'); - } catch (error) { - console.warn('Failed to connect Redis client:', error); + // Wait for the client to connect. + // Caveat: This will block the server from starting until the client is connected. + // And there is no timeout. Make your own timeout if needed. + await client.connect(); + console.info('Redis client connected.'); + } catch (error) { + console.warn('Failed to connect Redis client:', error); - console.warn('Disconnecting the Redis client...'); - // Try to disconnect the client to stop it from reconnecting. - client - .disconnect() - .then(() => { - console.info('Redis client disconnected.'); - }) - .catch(() => { - console.warn('Failed to quit the Redis client after failing to connect.'); - }); - } + console.warn('Disconnecting the Redis client...'); + // Try to disconnect the client to stop it from reconnecting. + client + .disconnect() + .then(() => { + console.info('Redis client disconnected.'); + }) + .catch(() => { + console.warn( + 'Failed to quit the Redis client after failing to connect.', + ); + }); } + } - /** @type {import("@neshca/cache-handler").Handler | null} */ - let handler; + /** @type {import("@neshca/cache-handler").Handler | null} */ + let handler; - if (client) { - // Create the `redis-stack` Handler if the client is available. - handler = createRedisHandler({ - client, - keyPrefix: 'JSON:', - timeoutMs: 1000, - }); - } else { - // Fallback to LRU handler if Redis client is not available. - // The application will still work, but the cache will be in-memory only and not shared. - handler = createLruHandler(); - console.warn('Falling back to LRU handler because Redis client is not available.'); - } + if (client) { + // Create the `redis-stack` Handler if the client is available. + handler = createRedisHandler({ + client, + keyPrefix: 'JSON:', + timeoutMs: 1000, + }); + } else { + // Fallback to LRU handler if Redis client is not available. + // The application will still work, but the cache will be in-memory only and not shared. + handler = createLruHandler(); + console.warn( + 'Falling back to LRU handler because Redis client is not available.', + ); + } - return { - handlers: [handler], - ttl: { defaultStaleAge: 60, estimateExpireAge: (staleAge) => staleAge * 2 }, - }; + return { + handlers: [handler], + ttl: { + defaultStaleAge: 60, + estimateExpireAge: (staleAge) => staleAge * 2, + }, + }; }); module.exports = CacheHandler; diff --git a/apps/cache-testing/cache-handler-redis-stack.mjs b/apps/cache-testing/cache-handler-redis-stack.mjs index 5b3ba53d..7ea08856 100644 --- a/apps/cache-testing/cache-handler-redis-stack.mjs +++ b/apps/cache-testing/cache-handler-redis-stack.mjs @@ -6,75 +6,84 @@ import createRedisHandler from '@neshca/cache-handler/redis-stack'; import { createClient } from 'redis'; CacheHandler.onCreation(async () => { - if (!process.env.REDIS_URL) { - console.warn('Make sure that REDIS_URL is added to the .env.local file and loaded properly.'); - } + if (!process.env.REDIS_URL) { + console.warn( + 'Make sure that REDIS_URL is added to the .env.local file and loaded properly.', + ); + } - let client; + let client; - try { - // Create a Redis client. - client = createClient({ - url: process.env.REDIS_URL, - name: `cache-handler:${process.env.PORT ?? process.pid}`, - }); + try { + // Create a Redis client. + client = createClient({ + url: process.env.REDIS_URL, + name: `cache-handler:${process.env.PORT ?? process.pid}`, + }); - // Redis won't work without error handling. https://github.com/redis/node-redis?tab=readme-ov-file#events - client.on('error', (error) => { - if (typeof process.env.NEXT_PRIVATE_DEBUG_CACHE !== 'undefined') { - console.error('Redis client error:', error); - } - }); - } catch (error) { - console.warn('Failed to create Redis client:', error); - } + // Redis won't work without error handling. https://github.com/redis/node-redis?tab=readme-ov-file#events + client.on('error', (error) => { + if (typeof process.env.NEXT_PRIVATE_DEBUG_CACHE !== 'undefined') { + console.error('Redis client error:', error); + } + }); + } catch (error) { + console.warn('Failed to create Redis client:', error); + } - if (client) { - try { - console.info('Connecting Redis client...'); + if (client) { + try { + console.info('Connecting Redis client...'); - // Wait for the client to connect. - // Caveat: This will block the server from starting until the client is connected. - // And there is no timeout. Make your own timeout if needed. - await client.connect(); - console.info('Redis client connected.'); - } catch (error) { - console.warn('Failed to connect Redis client:', error); + // Wait for the client to connect. + // Caveat: This will block the server from starting until the client is connected. + // And there is no timeout. Make your own timeout if needed. + await client.connect(); + console.info('Redis client connected.'); + } catch (error) { + console.warn('Failed to connect Redis client:', error); - console.warn('Disconnecting the Redis client...'); - // Try to disconnect the client to stop it from reconnecting. - client - .disconnect() - .then(() => { - console.info('Redis client disconnected.'); - }) - .catch(() => { - console.warn('Failed to quit the Redis client after failing to connect.'); - }); - } + console.warn('Disconnecting the Redis client...'); + // Try to disconnect the client to stop it from reconnecting. + client + .disconnect() + .then(() => { + console.info('Redis client disconnected.'); + }) + .catch(() => { + console.warn( + 'Failed to quit the Redis client after failing to connect.', + ); + }); } + } - /** @type {import("@neshca/cache-handler").Handler | null} */ - let handler; + /** @type {import("@neshca/cache-handler").Handler | null} */ + let handler; - if (client) { - // Create the `redis-stack` Handler if the client is available. - handler = createRedisHandler({ - client, - keyPrefix: 'JSON:', - timeoutMs: 1000, - }); - } else { - // Fallback to LRU handler if Redis client is not available. - // The application will still work, but the cache will be in-memory only and not shared. - handler = createLruHandler(); - console.warn('Falling back to LRU handler because Redis client is not available.'); - } + if (client) { + // Create the `redis-stack` Handler if the client is available. + handler = createRedisHandler({ + client, + keyPrefix: 'JSON:', + timeoutMs: 1000, + }); + } else { + // Fallback to LRU handler if Redis client is not available. + // The application will still work, but the cache will be in-memory only and not shared. + handler = createLruHandler(); + console.warn( + 'Falling back to LRU handler because Redis client is not available.', + ); + } - return { - handlers: [handler], - ttl: { defaultStaleAge: 60, estimateExpireAge: (staleAge) => staleAge * 2 }, - }; + return { + handlers: [handler], + ttl: { + defaultStaleAge: 60, + estimateExpireAge: (staleAge) => staleAge * 2, + }, + }; }); export default CacheHandler; diff --git a/apps/cache-testing/cache-handler-redis-strings.mjs b/apps/cache-testing/cache-handler-redis-strings.mjs index eb2196d6..39f87e32 100644 --- a/apps/cache-testing/cache-handler-redis-strings.mjs +++ b/apps/cache-testing/cache-handler-redis-strings.mjs @@ -5,38 +5,43 @@ import createRedisHandler from '@neshca/cache-handler/redis-strings'; import { createClient } from 'redis'; CacheHandler.onCreation(async () => { - if (!process.env.REDIS_URL) { - console.warn('Make sure that REDIS_URL is added to the .env.local file and loaded properly.'); + if (!process.env.REDIS_URL) { + console.warn( + 'Make sure that REDIS_URL is added to the .env.local file and loaded properly.', + ); + } + + const PREFIX = 'string:'; + + /** @type {import("redis").RedisClientType} */ + const client = createClient({ + url: process.env.REDIS_URL, + name: `cache-handler:${PREFIX}${process.env.PORT ?? process.pid}`, + }); + + // Redis won't work without error handling. https://github.com/redis/node-redis?tab=readme-ov-file#events + client.on('error', (error) => { + if (typeof process.env.NEXT_PRIVATE_DEBUG_CACHE !== 'undefined') { + console.error('Redis client error:', error); } - - const PREFIX = 'string:'; - - /** @type {import("redis").RedisClientType} */ - const client = createClient({ - url: process.env.REDIS_URL, - name: `cache-handler:${PREFIX}${process.env.PORT ?? process.pid}`, - }); - - // Redis won't work without error handling. https://github.com/redis/node-redis?tab=readme-ov-file#events - client.on('error', (error) => { - if (typeof process.env.NEXT_PRIVATE_DEBUG_CACHE !== 'undefined') { - console.error('Redis client error:', error); - } - }); - - console.info('Connecting Redis client...'); - await client.connect(); - console.info('Redis client connected.'); - - const redisHandler = createRedisHandler({ - client, - keyPrefix: PREFIX, - }); - - return { - handlers: [redisHandler], - ttl: { defaultStaleAge: 60, estimateExpireAge: (staleAge) => staleAge * 2 }, - }; + }); + + console.info('Connecting Redis client...'); + await client.connect(); + console.info('Redis client connected.'); + + const redisHandler = createRedisHandler({ + client, + keyPrefix: PREFIX, + }); + + return { + handlers: [redisHandler], + ttl: { + defaultStaleAge: 60, + estimateExpireAge: (staleAge) => staleAge * 2, + }, + }; }); export default CacheHandler; diff --git a/apps/cache-testing/cluster.config.js b/apps/cache-testing/cluster.config.js index a89a1401..2c24f59d 100644 --- a/apps/cache-testing/cluster.config.js +++ b/apps/cache-testing/cluster.config.js @@ -1,16 +1,16 @@ module.exports = { - apps: [ - { - name: 'app', - script: '.next/__instances/3000/server.js', - instances: 2, - exec_mode: 'cluster', - env_production: { - NODE_ENV: 'production', - HOSTNAME: 'localhost', - REDIS_URL: 'redis://localhost:6379', - SERVER_STARTED: '1', - }, - }, - ], + apps: [ + { + name: 'app', + script: '.next/__instances/3000/server.js', + instances: 2, + exec_mode: 'cluster', + env_production: { + NODE_ENV: 'production', + HOSTNAME: 'localhost', + REDIS_URL: 'redis://localhost:6379', + SERVER_STARTED: '1', + }, + }, + ], }; diff --git a/apps/cache-testing/eslint.config.js b/apps/cache-testing/eslint.config.js new file mode 100644 index 00000000..fdd04a63 --- /dev/null +++ b/apps/cache-testing/eslint.config.js @@ -0,0 +1,4 @@ +import { nextJsConfig } from '@repo/eslint-config/next-js'; + +/** @type {import("eslint").Linter.Config} */ +export default nextJsConfig; diff --git a/apps/cache-testing/next.config.mjs b/apps/cache-testing/next.config.mjs index 3f4f3106..1d5968d5 100644 --- a/apps/cache-testing/next.config.mjs +++ b/apps/cache-testing/next.config.mjs @@ -6,18 +6,22 @@ const cacheHandler = path.resolve('./cache-handler-redis-stack.mjs'); /** @type {import('next').NextConfig} */ const nextConfig = { - poweredByHeader: false, - reactStrictMode: true, - output: 'standalone', - cacheHandler: process.env.NODE_ENV !== 'development' ? cacheHandler : undefined, - cacheMaxMemorySize: 0, // disable default in-memory caching - experimental: { - // PPR should only be configured via the PPR_ENABLED env variable due to conditional logic in tests. - ppr: process.env.PPR_ENABLED === 'true', - largePageDataBytes: 1024 * 1024, // 1MB - outputFileTracingRoot: path.join(import.meta.dirname, '../../'), - instrumentationHook: true, - }, + poweredByHeader: false, + reactStrictMode: true, + output: 'standalone', + cacheHandler: + process.env.NODE_ENV !== 'development' ? cacheHandler : undefined, + cacheMaxMemorySize: 0, // disable default in-memory caching + experimental: { + // PPR should only be configured via the PPR_ENABLED env variable due to conditional logic in tests. + ppr: process.env.PPR_ENABLED === 'true', + largePageDataBytes: 1024 * 1024, // 1MB + outputFileTracingRoot: path.join(import.meta.dirname, '../../'), + instrumentationHook: true, + }, + eslint: { + ignoreDuringBuilds: true, + }, }; export default nextConfig; diff --git a/apps/cache-testing/package.json b/apps/cache-testing/package.json index 3f12b096..682a4360 100644 --- a/apps/cache-testing/package.json +++ b/apps/cache-testing/package.json @@ -1,41 +1,38 @@ { - "name": "@repo/cache-testing", - "version": "0.0.0", - "private": true, - "license": "MIT", - "scripts": { - "build": "next build && ./create-instances.sh", - "cluster:start": "pm2 start cluster.config.js --env production", - "cluster:stop": "pm2 kill", - "e2e": "playwright test --config=./playwright.config.ts", - "e2e:ui": "playwright test --ui --config=./playwright.config.ts", - "eslint:check": "next lint", - "eslint:fix": "next lint --fix", - "playwright:install": "playwright install chromium", - "start": "dotenv -e .env.local -v SERVER_STARTED=1 node .next/standalone/apps/cache-testing/server.js" - }, - "dependencies": { - "@neshca/cache-handler": "*", - "axios": "1.7.8", - "next": "14.2.15", - "react": "18.3.1", - "react-dom": "18.3.1", - "redis": "4.7.0" - }, - "devDependencies": { - "@next/eslint-plugin-next": "14.2.15", - "@playwright/test": "1.49.0", - "@repo/eslint-config": "*", - "@repo/typescript-config": "*", - "@types/eslint": "8.56.12", - "@types/node": "22.10.0", - "@types/react": "18.3.12", - "@types/react-dom": "18.3.1", - "dotenv-cli": "7.4.4", - "eslint": "8.57.1", - "fastify": "5.1.0", - "pm2": "5.4.3", - "tsx": "4.19.2", - "typescript": "5.7.2" - } + "name": "@repo/cache-testing", + "version": "0.0.0", + "private": true, + "license": "MIT", + "scripts": { + "build": "next build && ./create-instances.sh", + "cluster:start": "pm2 start cluster.config.js --env production", + "cluster:stop": "pm2 kill", + "e2e": "playwright test --config=./playwright.config.ts", + "e2e:ui": "playwright test --ui --config=./playwright.config.ts", + "eslint:check": "next lint", + "eslint:fix": "next lint --fix", + "playwright:install": "playwright install chromium", + "start": "dotenv -e .env.local -v SERVER_STARTED=1 node .next/standalone/apps/cache-testing/server.js" + }, + "dependencies": { + "@neshca/cache-handler": "workspace:*", + "axios": "1.7.9", + "next": "14.2.15", + "react": "18.3.1", + "react-dom": "18.3.1", + "redis": "4.7.0" + }, + "devDependencies": { + "@playwright/test": "1.50.1", + "@repo/eslint-config": "workspace:*", + "@repo/typescript-config": "workspace:*", + "@types/node": "22.13.1", + "@types/react": "18.3.12", + "@types/react-dom": "18.3.1", + "eslint": "9.20.0", + "fastify": "5.2.1", + "pm2": "5.4.3", + "tsx": "4.19.2", + "typescript": "5.7.3" + } } diff --git a/apps/cache-testing/playwright.config.ts b/apps/cache-testing/playwright.config.ts index 27b2df43..b291811a 100644 --- a/apps/cache-testing/playwright.config.ts +++ b/apps/cache-testing/playwright.config.ts @@ -3,24 +3,28 @@ import { defineConfig, devices } from '@playwright/test'; const ports = ['3000', '3001']; export default defineConfig({ - testDir: './tests', - fullyParallel: false, - forbidOnly: Boolean(process.env.CI), - retries: 0, - workers: 1, - reporter: 'html', - use: { baseURL: 'http://localhost', trace: 'on-first-retry', testIdAttribute: 'data-pw' }, - projects: [ - { - name: 'chromium', - use: { ...devices['Desktop Chrome'] }, - }, - ], - webServer: { - command: `node --import tsx ./run-app-instances.ts ports=${ports.join(',')}`, - url: 'http://localhost:9000', - reuseExistingServer: !process.env.CI, - stdout: 'pipe', - stderr: 'pipe', + testDir: './tests', + fullyParallel: false, + forbidOnly: Boolean(process.env.CI), + retries: 0, + workers: 1, + reporter: 'html', + use: { + baseURL: 'http://localhost', + trace: 'on-first-retry', + testIdAttribute: 'data-pw', + }, + projects: [ + { + name: 'chromium', + use: { ...devices['Desktop Chrome'] }, }, + ], + webServer: { + command: `node --import tsx ./run-app-instances.ts ports=${ports.join(',')}`, + url: 'http://localhost:9000', + reuseExistingServer: !process.env.CI, + stdout: 'pipe', + stderr: 'pipe', + }, }); diff --git a/apps/cache-testing/run-app-instances.ts b/apps/cache-testing/run-app-instances.ts index 67c6c22d..1b41f8ee 100644 --- a/apps/cache-testing/run-app-instances.ts +++ b/apps/cache-testing/run-app-instances.ts @@ -5,85 +5,89 @@ import Fastify from 'fastify'; // biome-ignore lint/style/noNamespaceImport: pm2 works only with Namespace import import * as pm2Default from 'pm2'; -const { default: pm2 } = pm2Default as unknown as { default: typeof import('pm2') }; +const { default: pm2 } = pm2Default as unknown as { + default: typeof import('pm2'); +}; -const args = process.argv.slice(2).reduce>((acc, arg) => { +const args = process.argv + .slice(2) + .reduce>((acc, arg) => { const [key, value] = arg.split('='); if (!(key && value)) { - throw new Error(`Invalid argument: ${arg}`); + throw new Error(`Invalid argument: ${arg}`); } acc[key] = value; return acc; -}, {}); + }, {}); const { hostname = 'localhost', ports = '3000' } = args; function getNameByPort(port: string): string { - return `@repo/cache-testing-${port}`; + return `@repo/cache-testing-${port}`; } pm2.connect(true, (connectError?: Error) => { - if (connectError) { - console.error(connectError); - process.exit(1); - } + if (connectError) { + console.error(connectError); + process.exit(1); + } - for (const port of ports.split(',')) { - const name = getNameByPort(port); - - pm2.start( - { - script: `.next/__instances/${port}/apps/cache-testing/server.js`, - name, - env: { - ...process.env, - PORT: port, - HOSTNAME: hostname, - SERVER_STARTED: '1', - }, - }, - (startError?: Error) => { - if (startError) { - console.error(startError); - } - }, - ); - } + for (const port of ports.split(',')) { + const name = getNameByPort(port); + + pm2.start( + { + script: `.next/__instances/${port}/apps/cache-testing/server.js`, + name, + env: { + ...process.env, + PORT: port, + HOSTNAME: hostname, + SERVER_STARTED: '1', + }, + }, + (startError?: Error) => { + if (startError) { + console.error(startError); + } + }, + ); + } }); const app = Fastify(); app.get('/', async (_request, reply) => { - await reply.send('ok'); + await reply.send('ok'); }); app.get('/restart/:port', async (request, reply) => { - const { port } = request.params as { port: string }; + const { port } = request.params as { port: string }; - const name = getNameByPort(port); + const name = getNameByPort(port); - pm2.restart(name, (restartError: unknown) => { - if (restartError) { - console.error(restartError); + pm2.restart(name, (restartError: unknown) => { + if (restartError) { + console.error(restartError); - reply.code(500).send({ status: 'error' }); - } + reply.code(500).send({ status: 'error' }); + } - // workaround for unstable tests - scheduler.wait(1000).then(async () => { - await reply.code(200).send({ restarted: name }); - }); + // workaround for unstable tests + scheduler.wait(1000).then(async () => { + await reply.code(200).send({ restarted: name }); }); + }); - return reply; + return reply; }); app.listen({ port: 9000, host: 'localhost' }, (error, address) => { - if (error) { - console.error(error); - process.exit(1); - } - console.info(`orchestration listening on ${address}`); + if (error) { + console.error(error); + process.exit(1); + } + console.info(`orchestration listening on ${address}`); }); diff --git a/apps/cache-testing/src/app/api/revalidate-app/route.ts b/apps/cache-testing/src/app/api/revalidate-app/route.ts index e8524a58..73d70b64 100644 --- a/apps/cache-testing/src/app/api/revalidate-app/route.ts +++ b/apps/cache-testing/src/app/api/revalidate-app/route.ts @@ -5,36 +5,36 @@ import { NextResponse } from 'next/server'; import { formatTime } from 'cache-testing/utils/format-time'; export function GET(request: NextRequest): Promise { - const path = request.nextUrl.searchParams.get('path'); - const tag = request.nextUrl.searchParams.get('tag'); + const path = request.nextUrl.searchParams.get('path'); + const tag = request.nextUrl.searchParams.get('tag'); - const time = formatTime(Date.now(), 3); + const time = formatTime(Date.now(), 3); - if (path) { - revalidatePath(path); - return Promise.resolve( - NextResponse.json({ - revalidated: true, - now: time, - }), - ); - } - - if (tag) { - revalidateTag(tag); - return Promise.resolve( - NextResponse.json({ - revalidated: true, - now: time, - }), - ); - } + if (path) { + revalidatePath(path); + return Promise.resolve( + NextResponse.json({ + revalidated: true, + now: time, + }), + ); + } + if (tag) { + revalidateTag(tag); return Promise.resolve( - NextResponse.json({ - revalidated: false, - now: time, - message: 'Missing path to revalidate', - }), + NextResponse.json({ + revalidated: true, + now: time, + }), ); + } + + return Promise.resolve( + NextResponse.json({ + revalidated: false, + now: time, + message: 'Missing path to revalidate', + }), + ); } diff --git a/apps/cache-testing/src/app/app/no-params/dynamic-false/[slug]/page.tsx b/apps/cache-testing/src/app/app/no-params/dynamic-false/[slug]/page.tsx index 4e94c605..2ba46a75 100644 --- a/apps/cache-testing/src/app/app/no-params/dynamic-false/[slug]/page.tsx +++ b/apps/cache-testing/src/app/app/no-params/dynamic-false/[slug]/page.tsx @@ -11,14 +11,23 @@ type PageParams = { params: { slug: string } }; const getData = createGetData('app/no-params/dynamic-false'); -export default async function Index({ params }: PageParams): Promise { - const data = await getData(params.slug); - - if (!data) { - notFound(); - } - - const { count, path, time } = data; - - return ; +export default async function Index({ + params, +}: PageParams): Promise { + const data = await getData(params.slug); + + if (!data) { + notFound(); + } + + const { count, path, time } = data; + + return ( + + ); } diff --git a/apps/cache-testing/src/app/app/no-params/dynamic-true/[slug]/page.tsx b/apps/cache-testing/src/app/app/no-params/dynamic-true/[slug]/page.tsx index 37f773a1..dea0107a 100644 --- a/apps/cache-testing/src/app/app/no-params/dynamic-true/[slug]/page.tsx +++ b/apps/cache-testing/src/app/app/no-params/dynamic-true/[slug]/page.tsx @@ -11,14 +11,23 @@ type PageParams = { params: { slug: string } }; const getData = createGetData('app/no-params/dynamic-true'); -export default async function Index({ params }: PageParams): Promise { - const data = await getData(params.slug); - - if (!data) { - notFound(); - } - - const { count, path, time } = data; - - return ; +export default async function Index({ + params, +}: PageParams): Promise { + const data = await getData(params.slug); + + if (!data) { + notFound(); + } + + const { count, path, time } = data; + + return ( + + ); } diff --git a/apps/cache-testing/src/app/app/no-params/ssr/200/page.tsx b/apps/cache-testing/src/app/app/no-params/ssr/200/page.tsx index 9a8b7b2c..2ff60456 100644 --- a/apps/cache-testing/src/app/app/no-params/ssr/200/page.tsx +++ b/apps/cache-testing/src/app/app/no-params/ssr/200/page.tsx @@ -6,13 +6,20 @@ import { createGetData } from 'cache-testing/utils/create-get-data'; const getData = createGetData('app/no-params/ssr', undefined, 'no-store'); export default async function Index(): Promise { - const data = await getData('200'); + const data = await getData('200'); - if (!data) { - notFound(); - } + if (!data) { + notFound(); + } - const { count, path, time } = data; + const { count, path, time } = data; - return ; + return ( + + ); } diff --git a/apps/cache-testing/src/app/app/ppr/page.tsx b/apps/cache-testing/src/app/app/ppr/page.tsx index 62544942..473c6cee 100644 --- a/apps/cache-testing/src/app/app/ppr/page.tsx +++ b/apps/cache-testing/src/app/app/ppr/page.tsx @@ -5,32 +5,32 @@ import { formatTime } from 'cache-testing/utils/format-time'; import type { TimeBackendApiResponseJson } from 'cache-testing/utils/types'; async function ActualData(): Promise { - noStore(); + noStore(); - const response = await fetch('http://localhost:8081/time', { - next: { tags: ['/app/ppr'] }, - }); + const response = await fetch('http://localhost:8081/time', { + next: { tags: ['/app/ppr'] }, + }); - if (!response.ok) { - throw new Error('Failed to fetch unix time'); - } + if (!response.ok) { + throw new Error('Failed to fetch unix time'); + } - const data = (await response.json()) as TimeBackendApiResponseJson; + const data = (await response.json()) as TimeBackendApiResponseJson; - return
{formatTime(data.unixTimeMs)}
; + return
{formatTime(data.unixTimeMs)}
; } function Skeleton(): JSX.Element { - return
Skeleton
; + return
Skeleton
; } export default function Page(): JSX.Element { - return ( -
-

Partial Prerendering

- }> - - -
- ); + return ( +
+

Partial Prerendering

+ }> + + +
+ ); } diff --git a/apps/cache-testing/src/app/app/randomHex/[length]/page.tsx b/apps/cache-testing/src/app/app/randomHex/[length]/page.tsx index 61f8c806..9241a6b9 100644 --- a/apps/cache-testing/src/app/app/randomHex/[length]/page.tsx +++ b/apps/cache-testing/src/app/app/randomHex/[length]/page.tsx @@ -10,33 +10,38 @@ const lengthSteps = new Array(5).fill(0).map((_, i) => 10 ** (i + 1)); type PageParams = { params: { length: string } }; export function generateStaticParams(): PageParams['params'][] { - return lengthSteps.map((length) => ({ length: `${length}` })); + return lengthSteps.map((length) => ({ length: `${length}` })); } -export default async function Page({ params: { length } }: PageParams): Promise { - const path = `/randomHex/app/${length}`; - - const url = new URL(path, 'http://localhost:8081'); - - const result = await fetch(url, { - next: { - tags: [`/app/randomHex/${length}`], - }, - }); - - if (!result.ok) { - notFound(); - } - - const props = (await result.json()) as RandomHexPageProps; - - return ( -
-
{props.randomHex}
- - - - -
- ); +export default async function Page({ + params: { length }, +}: PageParams): Promise { + const path = `/randomHex/app/${length}`; + + const url = new URL(path, 'http://localhost:8081'); + + const result = await fetch(url, { + next: { + tags: [`/app/randomHex/${length}`], + }, + }); + + if (!result.ok) { + notFound(); + } + + const props = (await result.json()) as RandomHexPageProps; + + return ( +
+
{props.randomHex}
+ + + + +
+ ); } diff --git a/apps/cache-testing/src/app/app/static/route.ts b/apps/cache-testing/src/app/app/static/route.ts index 1b9fe80e..524283f8 100644 --- a/apps/cache-testing/src/app/app/static/route.ts +++ b/apps/cache-testing/src/app/app/static/route.ts @@ -1,3 +1,3 @@ export function GET() { - return Promise.resolve(new Response('OK', { status: 200 })); + return Promise.resolve(new Response('OK', { status: 200 })); } diff --git a/apps/cache-testing/src/app/app/with-params/dynamic-false/[slug]/page.tsx b/apps/cache-testing/src/app/app/with-params/dynamic-false/[slug]/page.tsx index 42533612..2e3e47fc 100644 --- a/apps/cache-testing/src/app/app/with-params/dynamic-false/[slug]/page.tsx +++ b/apps/cache-testing/src/app/app/with-params/dynamic-false/[slug]/page.tsx @@ -12,17 +12,30 @@ export const revalidate = 5; const getData = createGetData('app/with-params/dynamic-false'); export function generateStaticParams(): Promise { - return Promise.resolve([{ slug: '200' }, { slug: '404' }, { slug: 'alternate-200-404' }]); + return Promise.resolve([ + { slug: '200' }, + { slug: '404' }, + { slug: 'alternate-200-404' }, + ]); } -export default async function Index({ params }: PageParams): Promise { - const data = await getData(params.slug); - - if (!data) { - notFound(); - } - - const { count, path, time } = data; - - return ; +export default async function Index({ + params, +}: PageParams): Promise { + const data = await getData(params.slug); + + if (!data) { + notFound(); + } + + const { count, path, time } = data; + + return ( + + ); } diff --git a/apps/cache-testing/src/app/app/with-params/dynamic-true/[slug]/page.tsx b/apps/cache-testing/src/app/app/with-params/dynamic-true/[slug]/page.tsx index 86054662..adfc84b1 100644 --- a/apps/cache-testing/src/app/app/with-params/dynamic-true/[slug]/page.tsx +++ b/apps/cache-testing/src/app/app/with-params/dynamic-true/[slug]/page.tsx @@ -12,17 +12,30 @@ export const revalidate = 5; const getData = createGetData('app/with-params/dynamic-true'); export function generateStaticParams(): Promise { - return Promise.resolve([{ slug: '200' }, { slug: '404' }, { slug: 'alternate-200-404' }]); + return Promise.resolve([ + { slug: '200' }, + { slug: '404' }, + { slug: 'alternate-200-404' }, + ]); } -export default async function Index({ params }: PageParams): Promise { - const data = await getData(params.slug); - - if (!data) { - notFound(); - } - - const { count, path, time } = data; - - return ; +export default async function Index({ + params, +}: PageParams): Promise { + const data = await getData(params.slug); + + if (!data) { + notFound(); + } + + const { count, path, time } = data; + + return ( + + ); } diff --git a/apps/cache-testing/src/app/app/with-params/nesh-cache/[slug]/page.tsx b/apps/cache-testing/src/app/app/with-params/nesh-cache/[slug]/page.tsx index 3e69dff3..8698aa01 100644 --- a/apps/cache-testing/src/app/app/with-params/nesh-cache/[slug]/page.tsx +++ b/apps/cache-testing/src/app/app/with-params/nesh-cache/[slug]/page.tsx @@ -9,20 +9,37 @@ export const dynamicParams = true; export const revalidate = 5; -const getData = createGetData('app/with-params/nesh-cache', revalidate, 'nesh-cache'); +const getData = createGetData( + 'app/with-params/nesh-cache', + revalidate, + 'nesh-cache', +); export function generateStaticParams(): Promise { - return Promise.resolve([{ slug: '200' }, { slug: '404' }, { slug: 'alternate-200-404' }]); + return Promise.resolve([ + { slug: '200' }, + { slug: '404' }, + { slug: 'alternate-200-404' }, + ]); } -export default async function Index({ params }: PageParams): Promise { - const data = await getData(params.slug); - - if (!data) { - notFound(); - } - - const { count, path, time } = data; - - return ; +export default async function Index({ + params, +}: PageParams): Promise { + const data = await getData(params.slug); + + if (!data) { + notFound(); + } + + const { count, path, time } = data; + + return ( + + ); } diff --git a/apps/cache-testing/src/app/app/with-params/unstable-cache/[slug]/page.tsx b/apps/cache-testing/src/app/app/with-params/unstable-cache/[slug]/page.tsx index de01ae58..931b54a3 100644 --- a/apps/cache-testing/src/app/app/with-params/unstable-cache/[slug]/page.tsx +++ b/apps/cache-testing/src/app/app/with-params/unstable-cache/[slug]/page.tsx @@ -9,20 +9,37 @@ export const dynamicParams = true; export const revalidate = 5; -const getData = createGetData('app/with-params/unstable-cache', revalidate, 'unstable-cache'); +const getData = createGetData( + 'app/with-params/unstable-cache', + revalidate, + 'unstable-cache', +); export function generateStaticParams(): Promise { - return Promise.resolve([{ slug: '200' }, { slug: '404' }, { slug: 'alternate-200-404' }]); + return Promise.resolve([ + { slug: '200' }, + { slug: '404' }, + { slug: 'alternate-200-404' }, + ]); } -export default async function Index({ params }: PageParams): Promise { - const data = await getData(params.slug); - - if (!data) { - notFound(); - } - - const { count, path, time } = data; - - return ; +export default async function Index({ + params, +}: PageParams): Promise { + const data = await getData(params.slug); + + if (!data) { + notFound(); + } + + const { count, path, time } = data; + + return ( + + ); } diff --git a/apps/cache-testing/src/app/layout.tsx b/apps/cache-testing/src/app/layout.tsx index c470bef5..5c583197 100644 --- a/apps/cache-testing/src/app/layout.tsx +++ b/apps/cache-testing/src/app/layout.tsx @@ -6,21 +6,23 @@ import { RevalidateButton } from 'cache-testing/components/revalidate-button'; import 'cache-testing/globals.css'; export const metadata = { - title: 'Cache testing app', - description: '', + title: 'Cache testing app', + description: '', }; -export default function RootLayout({ children }: PropsWithChildren): JSX.Element { - return ( - - - {children} - - - - - - - - ); +export default function RootLayout({ + children, +}: PropsWithChildren): JSX.Element { + return ( + + + {children} + + + + + + + + ); } diff --git a/apps/cache-testing/src/components/cache-state-watcher.tsx b/apps/cache-testing/src/components/cache-state-watcher.tsx index 11407a15..12e14290 100644 --- a/apps/cache-testing/src/components/cache-state-watcher.tsx +++ b/apps/cache-testing/src/components/cache-state-watcher.tsx @@ -4,47 +4,52 @@ import { useEffect, useState } from 'react'; type CacheStateWatcherProps = { time: number; revalidateAfter: number }; -export function CacheStateWatcher({ time, revalidateAfter }: CacheStateWatcherProps): JSX.Element { - const [cacheState, setCacheState] = useState(''); - const [countDown, setCountDown] = useState(''); +export function CacheStateWatcher({ + time, + revalidateAfter, +}: CacheStateWatcherProps): JSX.Element { + const [cacheState, setCacheState] = useState(''); + const [countDown, setCountDown] = useState(''); - useEffect(() => { - if (!Number.isFinite(revalidateAfter)) { - setCacheState('fresh'); - setCountDown((0).toFixed(3)); + useEffect(() => { + if (!Number.isFinite(revalidateAfter)) { + setCacheState('fresh'); + setCountDown((0).toFixed(3)); - return; - } + return; + } - let id = -1; + let id = -1; - function check(): void { - const now = Date.now(); + function check(): void { + const now = Date.now(); - setCountDown(Math.max(0, (time + revalidateAfter - now) / 1000).toFixed(3)); + setCountDown( + Math.max(0, (time + revalidateAfter - now) / 1000).toFixed(3), + ); - if (now > time + revalidateAfter) { - setCacheState('stale'); + if (now > time + revalidateAfter) { + setCacheState('stale'); - return; - } + return; + } - setCacheState('fresh'); + setCacheState('fresh'); - id = requestAnimationFrame(check); - } + id = requestAnimationFrame(check); + } - id = requestAnimationFrame(check); + id = requestAnimationFrame(check); - return () => { - cancelAnimationFrame(id); - }; - }, [revalidateAfter, time]); + return () => { + cancelAnimationFrame(id); + }; + }, [revalidateAfter, time]); - return ( -
-
Cache state: {cacheState}
-
Stale after: {countDown}
-
- ); + return ( +
+
Cache state: {cacheState}
+
Stale after: {countDown}
+
+ ); } diff --git a/apps/cache-testing/src/components/pre-rendered-at.tsx b/apps/cache-testing/src/components/pre-rendered-at.tsx index deaf5b34..05e067fe 100644 --- a/apps/cache-testing/src/components/pre-rendered-at.tsx +++ b/apps/cache-testing/src/components/pre-rendered-at.tsx @@ -2,8 +2,11 @@ import { formatTime } from 'cache-testing/utils/format-time'; type CacheStateWatcherProps = { time: number; isFallback?: boolean }; -export function PreRenderedAt({ time, isFallback }: CacheStateWatcherProps): JSX.Element { - const preRenderTime = isFallback ? '' : formatTime(time, 3); +export function PreRenderedAt({ + time, + isFallback, +}: CacheStateWatcherProps): JSX.Element { + const preRenderTime = isFallback ? '' : formatTime(time, 3); - return
Pre-rendered at {preRenderTime}
; + return
Pre-rendered at {preRenderTime}
; } diff --git a/apps/cache-testing/src/components/restart-button.tsx b/apps/cache-testing/src/components/restart-button.tsx index e64e3b72..acf9ebfe 100644 --- a/apps/cache-testing/src/components/restart-button.tsx +++ b/apps/cache-testing/src/components/restart-button.tsx @@ -3,24 +3,24 @@ import { useState } from 'react'; export function RestartButton(): JSX.Element { - const [restartState, setRestartState] = useState(''); + const [restartState, setRestartState] = useState(''); - function restart(): void { - fetch('/api/restart-app').then((result) => { - if (!result.ok) { - setRestartState('Fail to restart'); - } - }); + function restart(): void { + fetch('/api/restart-app').then((result) => { + if (!result.ok) { + setRestartState('Fail to restart'); + } + }); - setRestartState('Restarting...'); - } + setRestartState('Restarting...'); + } - return ( -
- -
{restartState}
-
- ); + return ( +
+ +
{restartState}
+
+ ); } diff --git a/apps/cache-testing/src/components/revalidate-button.tsx b/apps/cache-testing/src/components/revalidate-button.tsx index 94a37dca..99dd7943 100644 --- a/apps/cache-testing/src/components/revalidate-button.tsx +++ b/apps/cache-testing/src/components/revalidate-button.tsx @@ -4,49 +4,55 @@ import { usePathname } from 'next/navigation'; import { useState } from 'react'; type RevalidateButtonAppProps = { - nextApi: 'app'; - type: 'path' | 'tag'; + nextApi: 'app'; + type: 'path' | 'tag'; }; type RevalidateButtonPagesProps = { - nextApi: 'pages'; - type: 'path'; + nextApi: 'pages'; + type: 'path'; }; export function RevalidateButton({ - nextApi, - type, + nextApi, + type, }: RevalidateButtonAppProps | RevalidateButtonPagesProps): JSX.Element { - const pathname = usePathname(); + const pathname = usePathname(); - const [revalidation, setRevalidation] = useState(''); + const [revalidation, setRevalidation] = useState(''); - function handleRevalidation(): void { - const searchParams = new URLSearchParams(); + function handleRevalidation(): void { + const searchParams = new URLSearchParams(); - if (pathname) { - searchParams.set(type, pathname); - } - - fetch(`/api/revalidate-${nextApi}?${searchParams.toString()}`).then(async (result) => { - if (!result.ok) { - setRevalidation('Fail to revalidate'); + if (pathname) { + searchParams.set(type, pathname); + } - return; - } + fetch(`/api/revalidate-${nextApi}?${searchParams.toString()}`).then( + async (result) => { + if (!result.ok) { + setRevalidation('Fail to revalidate'); - const json = (await result.json()) as { now: string }; + return; + } - setRevalidation(`Revalidated at ${json.now}`); - }); - } + const json = (await result.json()) as { now: string }; - return ( -
- -
{revalidation}
-
+ setRevalidation(`Revalidated at ${json.now}`); + }, ); + } + + return ( +
+ +
{revalidation}
+
+ ); } diff --git a/apps/cache-testing/src/globals.css b/apps/cache-testing/src/globals.css index b635028d..f93df416 100644 --- a/apps/cache-testing/src/globals.css +++ b/apps/cache-testing/src/globals.css @@ -1,89 +1,113 @@ :root { - --max-width: 1100px; - --border-radius: 12px; - --font-mono: - ui-monospace, Menlo, Monaco, "Cascadia Mono", "Segoe UI Mono", "Roboto Mono", "Oxygen Mono", - "Ubuntu Monospace", "Source Code Pro", "Fira Mono", "Droid Sans Mono", "Courier New", monospace; + --max-width: 1100px; + --border-radius: 12px; + --font-mono: + ui-monospace, Menlo, Monaco, "Cascadia Mono", "Segoe UI Mono", "Roboto Mono", "Oxygen Mono", + "Ubuntu Monospace", "Source Code Pro", "Fira Mono", "Droid Sans Mono", "Courier New", monospace; - --foreground-rgb: 0, 0, 0; - --background-start-rgb: 214, 219, 220; - --background-end-rgb: 255, 255, 255; + --foreground-rgb: 0, 0, 0; + --background-start-rgb: 214, 219, 220; + --background-end-rgb: 255, 255, 255; - --primary-glow: conic-gradient( - from 180deg at 50% 50%, - #16abff33 0deg, - #0885ff33 55deg, - #54d6ff33 120deg, - #0071ff33 160deg, - transparent 360deg - ); - --secondary-glow: radial-gradient(rgba(255, 255, 255, 1), rgba(255, 255, 255, 0)); + --primary-glow: conic-gradient( + from 180deg at 50% 50%, + #16abff33 0deg, + #0885ff33 55deg, + #54d6ff33 120deg, + #0071ff33 160deg, + transparent 360deg + ); + --secondary-glow: radial-gradient( + rgba(255, 255, 255, 1), + rgba(255, 255, 255, 0) + ); - --tile-start-rgb: 239, 245, 249; - --tile-end-rgb: 228, 232, 233; - --tile-border: conic-gradient(#00000080, #00000040, #00000030, #00000020, #00000010, #00000010, #00000080); + --tile-start-rgb: 239, 245, 249; + --tile-end-rgb: 228, 232, 233; + --tile-border: conic-gradient( + #00000080, + #00000040, + #00000030, + #00000020, + #00000010, + #00000010, + #00000080 + ); - --callout-rgb: 238, 240, 241; - --callout-border-rgb: 172, 175, 176; - --card-rgb: 180, 185, 188; - --card-border-rgb: 131, 134, 135; + --callout-rgb: 238, 240, 241; + --callout-border-rgb: 172, 175, 176; + --card-rgb: 180, 185, 188; + --card-border-rgb: 131, 134, 135; } @media (prefers-color-scheme: dark) { - :root { - --foreground-rgb: 255, 255, 255; - --background-start-rgb: 0, 0, 0; - --background-end-rgb: 0, 0, 0; + :root { + --foreground-rgb: 255, 255, 255; + --background-start-rgb: 0, 0, 0; + --background-end-rgb: 0, 0, 0; - --primary-glow: radial-gradient(rgba(1, 65, 255, 0.4), rgba(1, 65, 255, 0)); - --secondary-glow: linear-gradient( - to bottom right, - rgba(1, 65, 255, 0), - rgba(1, 65, 255, 0), - rgba(1, 65, 255, 0.3) - ); + --primary-glow: radial-gradient(rgba(1, 65, 255, 0.4), rgba(1, 65, 255, 0)); + --secondary-glow: linear-gradient( + to bottom right, + rgba(1, 65, 255, 0), + rgba(1, 65, 255, 0), + rgba(1, 65, 255, 0.3) + ); - --tile-start-rgb: 2, 13, 46; - --tile-end-rgb: 2, 5, 19; - --tile-border: conic-gradient(#ffffff80, #ffffff40, #ffffff30, #ffffff20, #ffffff10, #ffffff10, #ffffff80); + --tile-start-rgb: 2, 13, 46; + --tile-end-rgb: 2, 5, 19; + --tile-border: conic-gradient( + #ffffff80, + #ffffff40, + #ffffff30, + #ffffff20, + #ffffff10, + #ffffff10, + #ffffff80 + ); - --callout-rgb: 20, 20, 20; - --callout-border-rgb: 108, 108, 108; - --card-rgb: 100, 100, 100; - --card-border-rgb: 200, 200, 200; - } + --callout-rgb: 20, 20, 20; + --callout-border-rgb: 108, 108, 108; + --card-rgb: 100, 100, 100; + --card-border-rgb: 200, 200, 200; + } } * { - box-sizing: border-box; - padding: 0; - margin: 0; + box-sizing: border-box; + padding: 0; + margin: 0; } html, body { - max-width: 100vw; - overflow-x: hidden; - font-family: "Courier New", Courier, monospace; + max-width: 100vw; + overflow-x: hidden; + font-family: "Courier New", Courier, monospace; } body { - color: rgb(var(--foreground-rgb)); - background: linear-gradient(to bottom, transparent, rgb(var(--background-end-rgb))) rgb(var(--background-start-rgb)); - margin: 16px; + color: rgb(var(--foreground-rgb)); + background: linear-gradient( + to bottom, + transparent, + rgb(var(--background-end-rgb)) + ) + rgb(var(--background-start-rgb)); + margin: 16px; } a { - color: inherit; - text-decoration: none; + color: inherit; + text-decoration: none; } @media (prefers-color-scheme: dark) { - html { - color-scheme: dark; - } + html { + color-scheme: dark; + } } .header { - display: grid; + display: grid; } diff --git a/apps/cache-testing/src/instrumentation.ts b/apps/cache-testing/src/instrumentation.ts index be821101..56fc1e52 100644 --- a/apps/cache-testing/src/instrumentation.ts +++ b/apps/cache-testing/src/instrumentation.ts @@ -1,7 +1,10 @@ export async function register() { - if (process.env.NEXT_RUNTIME === 'nodejs') { - const { registerInitialCache } = await import('@neshca/cache-handler/instrumentation'); - const CacheHandler = (await import('../cache-handler-redis-stack.mjs')).default; - await registerInitialCache(CacheHandler); - } + if (process.env.NEXT_RUNTIME === 'nodejs') { + const { registerInitialCache } = await import( + '@neshca/cache-handler/instrumentation' + ); + const CacheHandler = (await import('../cache-handler-redis-stack.mjs')) + .default; + await registerInitialCache(CacheHandler); + } } diff --git a/apps/cache-testing/src/pages/_app.tsx b/apps/cache-testing/src/pages/_app.tsx index ad9cbede..ab2af1c9 100644 --- a/apps/cache-testing/src/pages/_app.tsx +++ b/apps/cache-testing/src/pages/_app.tsx @@ -3,9 +3,9 @@ import type { AppProps } from 'next/app'; import Layout from './layout'; export default function MyApp({ Component, pageProps }: AppProps): JSX.Element { - return ( - - - - ); + return ( + + + + ); } diff --git a/apps/cache-testing/src/pages/api/pages-cached-api.ts b/apps/cache-testing/src/pages/api/pages-cached-api.ts index a737e674..1f6f782c 100644 --- a/apps/cache-testing/src/pages/api/pages-cached-api.ts +++ b/apps/cache-testing/src/pages/api/pages-cached-api.ts @@ -5,50 +5,56 @@ import type { NextApiRequest, NextApiResponse } from 'next'; import { neshClassicCache } from '@neshca/cache-handler/functions'; export const config = { - runtime: 'nodejs', + runtime: 'nodejs', }; const fetchWithCache = neshClassicCache(async (url: URL | string) => { - const result = await fetch(url); + const result = await fetch(url); - if (!result.ok) { - throw new Error('Failed to fetch'); - } + if (!result.ok) { + throw new Error('Failed to fetch'); + } - const json = (await result.json()) as CountBackendApiResponseJson; + const json = (await result.json()) as CountBackendApiResponseJson; - return json; + return json; }); -export default async function handler(request: NextApiRequest, response: NextApiResponse): Promise { - if (request.method !== 'GET') { - return response.status(405).send(null); - } +export default async function handler( + request: NextApiRequest, + response: NextApiResponse, +): Promise { + if (request.method !== 'GET') { + return response.status(405).send(null); + } - const path = request.url; + const path = request.url; - const pathAndTag = '/count/pages/api/api/200'; + const pathAndTag = '/count/pages/api/api/200'; - const revalidate = 5; + const revalidate = 5; - const url = new URL(pathAndTag, 'http://localhost:8081'); + const url = new URL(pathAndTag, 'http://localhost:8081'); - const result = await fetchWithCache({ revalidate, tags: [String(path)], responseContext: response }, url); + const result = await fetchWithCache( + { revalidate, tags: [String(path)], responseContext: response }, + url, + ); - if (!result) { - return response.status(404).send(null); - } + if (!result) { + return response.status(404).send(null); + } - const parsedResult = result; + const parsedResult = result; - response.json({ - props: { - count: parsedResult.count, - time: formatTime(parsedResult.unixTimeMs), - revalidateAfter: formatTime(parsedResult.unixTimeMs + revalidate * 1000), - timeMs: parsedResult.unixTimeMs, - revalidateAfterMs: parsedResult.unixTimeMs + revalidate * 1000, - path, - }, - }); + response.json({ + props: { + count: parsedResult.count, + time: formatTime(parsedResult.unixTimeMs), + revalidateAfter: formatTime(parsedResult.unixTimeMs + revalidate * 1000), + timeMs: parsedResult.unixTimeMs, + revalidateAfterMs: parsedResult.unixTimeMs + revalidate * 1000, + path, + }, + }); } diff --git a/apps/cache-testing/src/pages/api/restart-app.ts b/apps/cache-testing/src/pages/api/restart-app.ts index 70101d29..b23844ec 100644 --- a/apps/cache-testing/src/pages/api/restart-app.ts +++ b/apps/cache-testing/src/pages/api/restart-app.ts @@ -1,23 +1,26 @@ import type { NextApiRequest, NextApiResponse } from 'next'; -export default async function handler(_request: NextApiRequest, result: NextApiResponse): Promise { - const port = Number.parseInt(process.env.PORT ?? '3000', 10); - const isRunning = process.env.SERVER_STARTED === '1'; +export default async function handler( + _request: NextApiRequest, + result: NextApiResponse, +): Promise { + const port = Number.parseInt(process.env.PORT ?? '3000', 10); + const isRunning = process.env.SERVER_STARTED === '1'; - if (!isRunning) { - result.status(200).json({ status: 'ok' }); + if (!isRunning) { + result.status(200).json({ status: 'ok' }); - return; - } + return; + } - const restartResult = await fetch(`http://localhost:9000/restart/${port}`, { - next: { - // @ts-expect-error -- act as an internal fetch call - internal: true, - }, - }); + const restartResult = await fetch(`http://localhost:9000/restart/${port}`, { + next: { + // @ts-expect-error -- act as an internal fetch call + internal: true, + }, + }); - const json = (await restartResult.json()) as unknown; + const json = (await restartResult.json()) as unknown; - result.json(json); + result.json(json); } diff --git a/apps/cache-testing/src/pages/api/revalidate-pages.ts b/apps/cache-testing/src/pages/api/revalidate-pages.ts index 0f57beb3..baead5cf 100644 --- a/apps/cache-testing/src/pages/api/revalidate-pages.ts +++ b/apps/cache-testing/src/pages/api/revalidate-pages.ts @@ -2,26 +2,29 @@ import type { NextApiRequest, NextApiResponse } from 'next'; import { formatTime } from 'cache-testing/utils/format-time'; -export default async function handler(request: NextApiRequest, result: NextApiResponse): Promise { - const { path } = request.query; +export default async function handler( + request: NextApiRequest, + result: NextApiResponse, +): Promise { + const { path } = request.query; - if (!path) { - result.status(400).send('Missing path to revalidate'); - return; - } + if (!path) { + result.status(400).send('Missing path to revalidate'); + return; + } - if (Array.isArray(path)) { - result.status(400).send('Only a single path can be revalidated'); - return; - } + if (Array.isArray(path)) { + result.status(400).send('Only a single path can be revalidated'); + return; + } - try { - await result.revalidate(path); - result.json({ - revalidated: true, - now: formatTime(Date.now(), 3), - }); - } catch (_error) { - result.status(500).send('Error revalidating'); - } + try { + await result.revalidate(path); + result.json({ + revalidated: true, + now: formatTime(Date.now(), 3), + }); + } catch (_error) { + result.status(500).send('Error revalidating'); + } } diff --git a/apps/cache-testing/src/pages/layout.tsx b/apps/cache-testing/src/pages/layout.tsx index 77dcb453..991592db 100644 --- a/apps/cache-testing/src/pages/layout.tsx +++ b/apps/cache-testing/src/pages/layout.tsx @@ -5,11 +5,11 @@ import { RevalidateButton } from 'cache-testing/components/revalidate-button'; import 'cache-testing/globals.css'; export default function Layout({ children }: PropsWithChildren): JSX.Element { - return ( -
- {children} - - -
- ); + return ( +
+ {children} + + +
+ ); } diff --git a/apps/cache-testing/src/pages/pages/no-paths/fallback-blocking/[slug].tsx b/apps/cache-testing/src/pages/pages/no-paths/fallback-blocking/[slug].tsx index f46e7978..4e20eb89 100644 --- a/apps/cache-testing/src/pages/pages/no-paths/fallback-blocking/[slug].tsx +++ b/apps/cache-testing/src/pages/pages/no-paths/fallback-blocking/[slug].tsx @@ -3,13 +3,15 @@ import type { GetStaticPathsResult } from 'next'; import { CommonPagesPage } from 'cache-testing/utils/common-pages-page'; import { createPagesGetStaticProps } from 'cache-testing/utils/create-pages-get-static-props'; -export const getStaticProps = createPagesGetStaticProps('pages/no-paths/fallback-blocking'); +export const getStaticProps = createPagesGetStaticProps( + 'pages/no-paths/fallback-blocking', +); export function getStaticPaths(): Promise { - return Promise.resolve({ - paths: [], - fallback: 'blocking', - }); + return Promise.resolve({ + paths: [], + fallback: 'blocking', + }); } export default CommonPagesPage; diff --git a/apps/cache-testing/src/pages/pages/no-paths/fallback-false/[slug].tsx b/apps/cache-testing/src/pages/pages/no-paths/fallback-false/[slug].tsx index c7ddbb8b..a9e11b76 100644 --- a/apps/cache-testing/src/pages/pages/no-paths/fallback-false/[slug].tsx +++ b/apps/cache-testing/src/pages/pages/no-paths/fallback-false/[slug].tsx @@ -3,13 +3,15 @@ import type { GetStaticPathsResult } from 'next'; import { CommonPagesPage } from 'cache-testing/utils/common-pages-page'; import { createPagesGetStaticProps } from 'cache-testing/utils/create-pages-get-static-props'; -export const getStaticProps = createPagesGetStaticProps('pages/no-paths/fallback-false'); +export const getStaticProps = createPagesGetStaticProps( + 'pages/no-paths/fallback-false', +); export function getStaticPaths(): Promise { - return Promise.resolve({ - paths: [], - fallback: false, - }); + return Promise.resolve({ + paths: [], + fallback: false, + }); } export default CommonPagesPage; diff --git a/apps/cache-testing/src/pages/pages/no-paths/fallback-true/[slug].tsx b/apps/cache-testing/src/pages/pages/no-paths/fallback-true/[slug].tsx index 178b4052..ece84de3 100644 --- a/apps/cache-testing/src/pages/pages/no-paths/fallback-true/[slug].tsx +++ b/apps/cache-testing/src/pages/pages/no-paths/fallback-true/[slug].tsx @@ -3,13 +3,15 @@ import type { GetStaticPathsResult } from 'next'; import { CommonPagesPage } from 'cache-testing/utils/common-pages-page'; import { createPagesGetStaticProps } from 'cache-testing/utils/create-pages-get-static-props'; -export const getStaticProps = createPagesGetStaticProps('pages/no-paths/fallback-true'); +export const getStaticProps = createPagesGetStaticProps( + 'pages/no-paths/fallback-true', +); export function getStaticPaths(): Promise { - return Promise.resolve({ - paths: [], - fallback: true, - }); + return Promise.resolve({ + paths: [], + fallback: true, + }); } export default CommonPagesPage; diff --git a/apps/cache-testing/src/pages/pages/no-paths/ssr-with-cache/200.tsx b/apps/cache-testing/src/pages/pages/no-paths/ssr-with-cache/200.tsx index 31065555..c5e1611a 100644 --- a/apps/cache-testing/src/pages/pages/no-paths/ssr-with-cache/200.tsx +++ b/apps/cache-testing/src/pages/pages/no-paths/ssr-with-cache/200.tsx @@ -2,9 +2,11 @@ import { CommonPagesPage } from 'cache-testing/utils/common-pages-page'; import { createPagesGetServerSideProps } from 'cache-testing/utils/create-pages-get-get-server-side-props-cached'; export const config = { - runtime: 'nodejs', + runtime: 'nodejs', }; -export const getServerSideProps = createPagesGetServerSideProps('pages/no-paths/ssr-with-cache/200'); +export const getServerSideProps = createPagesGetServerSideProps( + 'pages/no-paths/ssr-with-cache/200', +); export default CommonPagesPage; diff --git a/apps/cache-testing/src/pages/pages/no-paths/ssr/200.tsx b/apps/cache-testing/src/pages/pages/no-paths/ssr/200.tsx index 73b94a8a..77af4ec0 100644 --- a/apps/cache-testing/src/pages/pages/no-paths/ssr/200.tsx +++ b/apps/cache-testing/src/pages/pages/no-paths/ssr/200.tsx @@ -1,6 +1,8 @@ import { CommonPagesPage } from 'cache-testing/utils/common-pages-page'; import { createPagesGetServerSideProps } from 'cache-testing/utils/create-pages-get-get-server-side-props'; -export const getServerSideProps = createPagesGetServerSideProps('pages/no-paths/ssr/200'); +export const getServerSideProps = createPagesGetServerSideProps( + 'pages/no-paths/ssr/200', +); export default CommonPagesPage; diff --git a/apps/cache-testing/src/pages/pages/randomHex/[length].tsx b/apps/cache-testing/src/pages/pages/randomHex/[length].tsx index 48d23cd5..bc183930 100644 --- a/apps/cache-testing/src/pages/pages/randomHex/[length].tsx +++ b/apps/cache-testing/src/pages/pages/randomHex/[length].tsx @@ -1,4 +1,8 @@ -import type { GetStaticPathsResult, GetStaticPropsContext, GetStaticPropsResult } from 'next'; +import type { + GetStaticPathsResult, + GetStaticPropsContext, + GetStaticPropsResult, +} from 'next'; import { CacheStateWatcher } from 'cache-testing/components/cache-state-watcher'; import { PreRenderedAt } from 'cache-testing/components/pre-rendered-at'; @@ -7,46 +11,54 @@ import type { RandomHexPageProps } from 'cache-testing/utils/types'; const lengthSteps = new Array(5).fill(0).map((_, i) => 10 ** (i + 1)); export async function getStaticProps({ - params, + params, }: GetStaticPropsContext): Promise> { - if (!params) { - throw new Error('no params'); - } + if (!params) { + throw new Error('no params'); + } - const { length } = params; + const { length } = params; - if (!length || Array.isArray(length)) { - throw new Error('no length'); - } + if (!length || Array.isArray(length)) { + throw new Error('no length'); + } - const path = `/randomHex/pages/${length}`; + const path = `/randomHex/pages/${length}`; - const url = new URL(path, 'http://localhost:8081'); + const url = new URL(path, 'http://localhost:8081'); - const result = await fetch(url); + const result = await fetch(url); - if (!result.ok) { - return { notFound: true }; - } + if (!result.ok) { + return { notFound: true }; + } - const props = (await result.json()) as RandomHexPageProps; + const props = (await result.json()) as RandomHexPageProps; - return { props }; + return { props }; } export function getStaticPaths(): Promise { - return Promise.resolve({ - paths: lengthSteps.map((length) => ({ params: { length: `${length}` } })), - fallback: 'blocking', - }); + return Promise.resolve({ + paths: lengthSteps.map((length) => ({ + params: { length: `${length}` }, + })), + fallback: 'blocking', + }); } -export default function Page({ randomHex, unixTimeMs }: RandomHexPageProps): JSX.Element { - return ( -
-
{randomHex}
- - -
- ); +export default function Page({ + randomHex, + unixTimeMs, +}: RandomHexPageProps): JSX.Element { + return ( +
+
{randomHex}
+ + +
+ ); } diff --git a/apps/cache-testing/src/pages/pages/with-paths/fallback-blocking/[slug].tsx b/apps/cache-testing/src/pages/pages/with-paths/fallback-blocking/[slug].tsx index da19b1e8..9c2df973 100644 --- a/apps/cache-testing/src/pages/pages/with-paths/fallback-blocking/[slug].tsx +++ b/apps/cache-testing/src/pages/pages/with-paths/fallback-blocking/[slug].tsx @@ -3,13 +3,19 @@ import type { GetStaticPathsResult } from 'next'; import { CommonPagesPage } from 'cache-testing/utils/common-pages-page'; import { createPagesGetStaticProps } from 'cache-testing/utils/create-pages-get-static-props'; -export const getStaticProps = createPagesGetStaticProps('pages/with-paths/fallback-blocking'); +export const getStaticProps = createPagesGetStaticProps( + 'pages/with-paths/fallback-blocking', +); export function getStaticPaths(): Promise { - return Promise.resolve({ - paths: [{ params: { slug: '200' } }, { params: { slug: '404' } }, { params: { slug: 'alternate-200-404' } }], - fallback: 'blocking', - }); + return Promise.resolve({ + paths: [ + { params: { slug: '200' } }, + { params: { slug: '404' } }, + { params: { slug: 'alternate-200-404' } }, + ], + fallback: 'blocking', + }); } export default CommonPagesPage; diff --git a/apps/cache-testing/src/pages/pages/with-paths/fallback-false/[slug].tsx b/apps/cache-testing/src/pages/pages/with-paths/fallback-false/[slug].tsx index 8f690bf3..1d272b62 100644 --- a/apps/cache-testing/src/pages/pages/with-paths/fallback-false/[slug].tsx +++ b/apps/cache-testing/src/pages/pages/with-paths/fallback-false/[slug].tsx @@ -3,13 +3,19 @@ import type { GetStaticPathsResult } from 'next'; import { CommonPagesPage } from 'cache-testing/utils/common-pages-page'; import { createPagesGetStaticProps } from 'cache-testing/utils/create-pages-get-static-props'; -export const getStaticProps = createPagesGetStaticProps('pages/with-paths/fallback-false'); +export const getStaticProps = createPagesGetStaticProps( + 'pages/with-paths/fallback-false', +); export function getStaticPaths(): Promise { - return Promise.resolve({ - paths: [{ params: { slug: '200' } }, { params: { slug: '404' } }, { params: { slug: 'alternate-200-404' } }], - fallback: false, - }); + return Promise.resolve({ + paths: [ + { params: { slug: '200' } }, + { params: { slug: '404' } }, + { params: { slug: 'alternate-200-404' } }, + ], + fallback: false, + }); } export default CommonPagesPage; diff --git a/apps/cache-testing/src/pages/pages/with-paths/fallback-true/[slug].tsx b/apps/cache-testing/src/pages/pages/with-paths/fallback-true/[slug].tsx index 4de025ce..c245d6aa 100644 --- a/apps/cache-testing/src/pages/pages/with-paths/fallback-true/[slug].tsx +++ b/apps/cache-testing/src/pages/pages/with-paths/fallback-true/[slug].tsx @@ -3,13 +3,19 @@ import type { GetStaticPathsResult } from 'next'; import { CommonPagesPage } from 'cache-testing/utils/common-pages-page'; import { createPagesGetStaticProps } from 'cache-testing/utils/create-pages-get-static-props'; -export const getStaticProps = createPagesGetStaticProps('pages/with-paths/fallback-true'); +export const getStaticProps = createPagesGetStaticProps( + 'pages/with-paths/fallback-true', +); export function getStaticPaths(): Promise { - return Promise.resolve({ - paths: [{ params: { slug: '200' } }, { params: { slug: '404' } }, { params: { slug: 'alternate-200-404' } }], - fallback: true, - }); + return Promise.resolve({ + paths: [ + { params: { slug: '200' } }, + { params: { slug: '404' } }, + { params: { slug: 'alternate-200-404' } }, + ], + fallback: true, + }); } export default CommonPagesPage; diff --git a/apps/cache-testing/src/utils/common-app-page.tsx b/apps/cache-testing/src/utils/common-app-page.tsx index d12255d9..e9bdc722 100644 --- a/apps/cache-testing/src/utils/common-app-page.tsx +++ b/apps/cache-testing/src/utils/common-app-page.tsx @@ -5,16 +5,21 @@ import type { PageProps } from './types'; import { CacheStateWatcher } from 'cache-testing/components/cache-state-watcher'; import { PreRenderedAt } from 'cache-testing/components/pre-rendered-at'; -export function CommonAppPage({ count, revalidateAfter, time, path }: PageProps): JSX.Element { - return ( -
-
- {count} -
- - - - -
- ); +export function CommonAppPage({ + count, + revalidateAfter, + time, + path, +}: PageProps): JSX.Element { + return ( +
+
+ {count} +
+ + + + +
+ ); } diff --git a/apps/cache-testing/src/utils/common-pages-page.tsx b/apps/cache-testing/src/utils/common-pages-page.tsx index a88eea9b..b963665e 100644 --- a/apps/cache-testing/src/utils/common-pages-page.tsx +++ b/apps/cache-testing/src/utils/common-pages-page.tsx @@ -4,16 +4,21 @@ import { CacheStateWatcher } from 'cache-testing/components/cache-state-watcher' import { PreRenderedAt } from 'cache-testing/components/pre-rendered-at'; import { useRouter } from 'next/router'; -export function CommonPagesPage({ count, revalidateAfter, time, path }: PageProps): JSX.Element { - const { isFallback } = useRouter(); +export function CommonPagesPage({ + count, + revalidateAfter, + time, + path, +}: PageProps): JSX.Element { + const { isFallback } = useRouter(); - return ( -
-
- {count} -
- - -
- ); + return ( +
+
+ {count} +
+ + +
+ ); } diff --git a/apps/cache-testing/src/utils/create-get-data.ts b/apps/cache-testing/src/utils/create-get-data.ts index 292c27d7..86565339 100644 --- a/apps/cache-testing/src/utils/create-get-data.ts +++ b/apps/cache-testing/src/utils/create-get-data.ts @@ -5,82 +5,88 @@ import { normalizeSlug } from './normalize-slug'; import type { CountBackendApiResponseJson, PageProps } from './types'; async function getViaAxios(url: URL) { - try { - return (await axios.get(url.href)).data; - } catch (_error) { - return null; - } + try { + return (await axios.get(url.href)).data; + } catch (_error) { + return null; + } } const cachedAxios = neshCache(getViaAxios); export function createGetData( - path: string, - revalidate?: number, - cache?: RequestCache | 'unstable-cache' | 'nesh-cache', + path: string, + revalidate?: number, + cache?: RequestCache | 'unstable-cache' | 'nesh-cache', ) { - return async function getData(slug: string): Promise | null> { - const pathAndTag = `/${path}/${normalizeSlug(slug)}`; - - const url = new URL(`/count${pathAndTag}`, 'http://localhost:8081'); - - let parsedResult: CountBackendApiResponseJson; - - const tags = [pathAndTag, 'whole-app-route']; - - switch (cache) { - case 'unstable-cache': { - const cachedGet = unstable_cache(getViaAxios, tags, { - revalidate, - tags, - }); + return async function getData( + slug: string, + ): Promise | null> { + const pathAndTag = `/${path}/${normalizeSlug(slug)}`; - const data = await cachedGet(url); + const url = new URL(`/count${pathAndTag}`, 'http://localhost:8081'); - if (!data) { - return null; - } + let parsedResult: CountBackendApiResponseJson; - parsedResult = data; + const tags = [pathAndTag, 'whole-app-route']; - break; - } - case 'nesh-cache': { - const data = await cachedAxios( - { - revalidate, - tags, - }, - url, - ); + switch (cache) { + case 'unstable-cache': { + const cachedGet = unstable_cache(getViaAxios, tags, { + revalidate, + tags, + }); - if (!data) { - return null; - } + const data = await cachedGet(url); - parsedResult = data; + if (!data) { + return null; + } - break; - } + parsedResult = data; + + break; + } + case 'nesh-cache': { + const data = await cachedAxios( + { + revalidate, + tags, + }, + url, + ); + + if (!data) { + return null; + } - default: { - const result = await fetch(url, { - cache, - next: { revalidate, tags }, - }); + parsedResult = data; - if (!result.ok) { - return null; - } + break; + } - parsedResult = (await result.json()) as CountBackendApiResponseJson; + default: { + const result = await fetch(url, { + cache, + next: { revalidate, tags }, + }); - break; - } + if (!result.ok) { + return null; } - const newData = { count: parsedResult.count, path, time: parsedResult.unixTimeMs }; + parsedResult = (await result.json()) as CountBackendApiResponseJson; - return newData; + break; + } + } + + const newData = { + count: parsedResult.count, + path, + time: parsedResult.unixTimeMs, }; + + return newData; + }; } diff --git a/apps/cache-testing/src/utils/create-pages-get-get-server-side-props-cached.ts b/apps/cache-testing/src/utils/create-pages-get-get-server-side-props-cached.ts index 97bf73b5..28227aaa 100644 --- a/apps/cache-testing/src/utils/create-pages-get-get-server-side-props-cached.ts +++ b/apps/cache-testing/src/utils/create-pages-get-get-server-side-props-cached.ts @@ -4,47 +4,51 @@ import { neshClassicCache } from '@neshca/cache-handler/functions'; import type { CountBackendApiResponseJson, PageProps } from './types'; const fetchWithCache = neshClassicCache(async (url: URL | string) => { - const result = await fetch(url); + const result = await fetch(url); - if (!result.ok) { - throw new Error('Failed to fetch'); - } + if (!result.ok) { + throw new Error('Failed to fetch'); + } - const json = (await result.json()) as CountBackendApiResponseJson; + const json = (await result.json()) as CountBackendApiResponseJson; - return json; + return json; }); -export function createPagesGetServerSideProps(path: string): GetServerSideProps { - return async function getServerSideProps({ res }): Promise> { - const pathAndTag = `/count/${path}`; - - const revalidate = 5; - - const url = new URL(pathAndTag, 'http://localhost:8081'); - - const result = await fetchWithCache( - { - revalidate, - tags: [`/${path}`], - responseContext: res, - }, - url, - ); - - if (!result) { - return { notFound: true }; - } - - const parsedResult = result; - - return { - props: { - count: parsedResult.count, - time: parsedResult.unixTimeMs, - revalidateAfter: revalidate * 1000, - path, - }, - }; +export function createPagesGetServerSideProps( + path: string, +): GetServerSideProps { + return async function getServerSideProps({ + res, + }): Promise> { + const pathAndTag = `/count/${path}`; + + const revalidate = 5; + + const url = new URL(pathAndTag, 'http://localhost:8081'); + + const result = await fetchWithCache( + { + revalidate, + tags: [`/${path}`], + responseContext: res, + }, + url, + ); + + if (!result) { + return { notFound: true }; + } + + const parsedResult = result; + + return { + props: { + count: parsedResult.count, + time: parsedResult.unixTimeMs, + revalidateAfter: revalidate * 1000, + path, + }, }; + }; } diff --git a/apps/cache-testing/src/utils/create-pages-get-get-server-side-props.ts b/apps/cache-testing/src/utils/create-pages-get-get-server-side-props.ts index 41dba57d..bb97d7a2 100644 --- a/apps/cache-testing/src/utils/create-pages-get-get-server-side-props.ts +++ b/apps/cache-testing/src/utils/create-pages-get-get-server-side-props.ts @@ -2,27 +2,31 @@ import type { GetServerSideProps, GetServerSidePropsResult } from 'next'; import type { CountBackendApiResponseJson, PageProps } from './types'; -export function createPagesGetServerSideProps(path: string): GetServerSideProps { - return async function getServerSideProps(): Promise> { - const pathAndTag = `/count/${path}`; +export function createPagesGetServerSideProps( + path: string, +): GetServerSideProps { + return async function getServerSideProps(): Promise< + GetServerSidePropsResult + > { + const pathAndTag = `/count/${path}`; - const url = new URL(pathAndTag, 'http://localhost:8081'); + const url = new URL(pathAndTag, 'http://localhost:8081'); - const result = await fetch(url); + const result = await fetch(url); - if (!result.ok) { - return { notFound: true }; - } + if (!result.ok) { + return { notFound: true }; + } - const parsedResult = (await result.json()) as CountBackendApiResponseJson; + const parsedResult = (await result.json()) as CountBackendApiResponseJson; - return { - props: { - count: parsedResult.count, - time: parsedResult.unixTimeMs, - revalidateAfter: Number.POSITIVE_INFINITY, - path, - }, - }; + return { + props: { + count: parsedResult.count, + time: parsedResult.unixTimeMs, + revalidateAfter: Number.POSITIVE_INFINITY, + path, + }, }; + }; } diff --git a/apps/cache-testing/src/utils/create-pages-get-static-props.ts b/apps/cache-testing/src/utils/create-pages-get-static-props.ts index c940e6d1..428e6ed8 100644 --- a/apps/cache-testing/src/utils/create-pages-get-static-props.ts +++ b/apps/cache-testing/src/utils/create-pages-get-static-props.ts @@ -1,41 +1,49 @@ -import type { GetStaticProps, GetStaticPropsContext, GetStaticPropsResult } from 'next'; +import type { + GetStaticProps, + GetStaticPropsContext, + GetStaticPropsResult, +} from 'next'; import type { CountBackendApiResponseJson, PageProps } from './types'; const revalidate = 5; -export function createPagesGetStaticProps(path: string): GetStaticProps { - return async function getStaticProps({ params }: GetStaticPropsContext): Promise> { - if (!params) { - throw new Error('no params'); - } +export function createPagesGetStaticProps( + path: string, +): GetStaticProps { + return async function getStaticProps({ + params, + }: GetStaticPropsContext): Promise> { + if (!params) { + throw new Error('no params'); + } - const { slug } = params; + const { slug } = params; - if (!slug || Array.isArray(slug)) { - throw new Error('no slug'); - } + if (!slug || Array.isArray(slug)) { + throw new Error('no slug'); + } - const pathAndTag = `/count/${path}/${slug}`; + const pathAndTag = `/count/${path}/${slug}`; - const url = new URL(pathAndTag, 'http://localhost:8081'); + const url = new URL(pathAndTag, 'http://localhost:8081'); - const result = await fetch(url); + const result = await fetch(url); - if (!result.ok) { - return { notFound: true, revalidate }; - } + if (!result.ok) { + return { notFound: true, revalidate }; + } - const parsedResult = (await result.json()) as CountBackendApiResponseJson; + const parsedResult = (await result.json()) as CountBackendApiResponseJson; - return { - props: { - count: parsedResult.count, - time: parsedResult.unixTimeMs, - revalidateAfter: revalidate * 1000, - path, - }, - revalidate, - }; + return { + props: { + count: parsedResult.count, + time: parsedResult.unixTimeMs, + revalidateAfter: revalidate * 1000, + path, + }, + revalidate, }; + }; } diff --git a/apps/cache-testing/src/utils/format-time.ts b/apps/cache-testing/src/utils/format-time.ts index dc12046b..f026b7f5 100644 --- a/apps/cache-testing/src/utils/format-time.ts +++ b/apps/cache-testing/src/utils/format-time.ts @@ -1,8 +1,11 @@ -export function formatTime(time: number | string | Date = Date.now(), fractionalSecondDigits?: 1 | 2 | 3): string { - return new Date(time).toLocaleTimeString('en-GB', { - fractionalSecondDigits, - hour: '2-digit', - minute: '2-digit', - second: '2-digit', - }); +export function formatTime( + time: number | string | Date = Date.now(), + fractionalSecondDigits?: 1 | 2 | 3, +): string { + return new Date(time).toLocaleTimeString('en-GB', { + fractionalSecondDigits, + hour: '2-digit', + minute: '2-digit', + second: '2-digit', + }); } diff --git a/apps/cache-testing/src/utils/normalize-slug.ts b/apps/cache-testing/src/utils/normalize-slug.ts index 5315af87..4756b2f9 100644 --- a/apps/cache-testing/src/utils/normalize-slug.ts +++ b/apps/cache-testing/src/utils/normalize-slug.ts @@ -1,9 +1,9 @@ export function normalizeSlug(slug = ''): string { - switch (slug) { - case '404': - case 'alternate-200-404': - return slug; - default: - return '200'; - } + switch (slug) { + case '404': + case 'alternate-200-404': + return slug; + default: + return '200'; + } } diff --git a/apps/cache-testing/src/utils/types.ts b/apps/cache-testing/src/utils/types.ts index 232ae0d6..9462f49c 100644 --- a/apps/cache-testing/src/utils/types.ts +++ b/apps/cache-testing/src/utils/types.ts @@ -1,4 +1,9 @@ -export type PageProps = { count: number; time: number; revalidateAfter: number; path: string }; +export type PageProps = { + count: number; + time: number; + revalidateAfter: number; + path: string; +}; export type WorldTimeApiResponseJson = { unixtime: number }; @@ -6,6 +11,9 @@ export type TimeBackendApiResponseJson = { unixTimeMs: number }; export type CountBackendApiResponseJson = { count: number; unixTimeMs: number }; -export type RandomHexBackendApiResponseJson = { randomHex: number; unixTimeMs: number }; +export type RandomHexBackendApiResponseJson = { + randomHex: number; + unixTimeMs: number; +}; export type RandomHexPageProps = RandomHexBackendApiResponseJson; diff --git a/apps/cache-testing/tests/app.spec.ts b/apps/cache-testing/tests/app.spec.ts index f0a57e49..310721d5 100644 --- a/apps/cache-testing/tests/app.spec.ts +++ b/apps/cache-testing/tests/app.spec.ts @@ -1,377 +1,465 @@ import Timers from 'node:timers/promises'; import { expect, test } from '@playwright/test'; -import { refreshPageCache, revalidateByPath, revalidateByTag } from './test-helpers'; +import { + refreshPageCache, + revalidateByPath, + revalidateByTag, +} from './test-helpers'; const paths = [ - '/app/with-params/dynamic-true/200', - '/app/with-params/nesh-cache/200', - // '/app/with-params/dynamic-false/200', // this fails with native next.js cache - '/app/no-params/dynamic-true/200', - '/app/no-params/dynamic-false/200', + '/app/with-params/dynamic-true/200', + '/app/with-params/nesh-cache/200', + // '/app/with-params/dynamic-false/200', // this fails with native next.js cache + '/app/no-params/dynamic-true/200', + '/app/no-params/dynamic-false/200', ]; test.describe('On-demand revalidation', () => { - for (const path of paths) { - test(`If revalidate by tag is clicked, then page should be fresh after reload ${path}`, async ({ - page, - baseURL, - }) => { - const url = new URL(path, `${baseURL}:3000`); + for (const path of paths) { + test(`If revalidate by tag is clicked, then page should be fresh after reload ${path}`, async ({ + page, + baseURL, + }) => { + const url = new URL(path, `${baseURL}:3000`); - await page.goto(url.href); + await page.goto(url.href); - await refreshPageCache(page, 'tag'); + await refreshPageCache(page, 'tag'); - const valueFromPage = Number.parseInt((await page.getByTestId('data').innerText()).valueOf(), 10); + const valueFromPage = Number.parseInt( + (await page.getByTestId('data').innerText()).valueOf(), + 10, + ); - await refreshPageCache(page, 'tag'); + await refreshPageCache(page, 'tag'); - await expect(page.getByTestId('cache-state')).toContainText('fresh'); + await expect(page.getByTestId('cache-state')).toContainText('fresh'); - const valueFromPageAfterReload = Number.parseInt( - (await page.getByTestId('data').innerText()).valueOf(), - 10, - ); + const valueFromPageAfterReload = Number.parseInt( + (await page.getByTestId('data').innerText()).valueOf(), + 10, + ); - expect(valueFromPageAfterReload - valueFromPage === 1).toBe(true); - }); - } + expect(valueFromPageAfterReload - valueFromPage === 1).toBe(true); + }); + } - for (const path of paths) { - test(`If revalidate by path is clicked, then page should be fresh after reload ${path}`, async ({ - page, - baseURL, - }) => { - const url = new URL(path, `${baseURL}:3000`); + for (const path of paths) { + test(`If revalidate by path is clicked, then page should be fresh after reload ${path}`, async ({ + page, + baseURL, + }) => { + const url = new URL(path, `${baseURL}:3000`); - await page.goto(url.href); + await page.goto(url.href); - await refreshPageCache(page, 'path'); + await refreshPageCache(page, 'path'); - const valueFromPage = Number.parseInt((await page.getByTestId('data').innerText()).valueOf(), 10); + const valueFromPage = Number.parseInt( + (await page.getByTestId('data').innerText()).valueOf(), + 10, + ); - await refreshPageCache(page, 'path'); + await refreshPageCache(page, 'path'); - await expect(page.getByTestId('cache-state')).toContainText('fresh'); + await expect(page.getByTestId('cache-state')).toContainText('fresh'); - const valueFromPageAfterReload = Number.parseInt( - (await page.getByTestId('data').innerText()).valueOf(), - 10, - ); + const valueFromPageAfterReload = Number.parseInt( + (await page.getByTestId('data').innerText()).valueOf(), + 10, + ); - expect(valueFromPageAfterReload - valueFromPage === 1).toBe(true); - }); - } + expect(valueFromPageAfterReload - valueFromPage === 1).toBe(true); + }); + } - for (const path of paths) { - test(`If revalidate by path is clicked on page A, then page B should be fresh on load ${path}`, async ({ - context, - baseURL, - }) => { - const appAUrl = new URL(path, `${baseURL}:3000`); + for (const path of paths) { + test(`If revalidate by path is clicked on page A, then page B should be fresh on load ${path}`, async ({ + context, + baseURL, + }) => { + const appAUrl = new URL(path, `${baseURL}:3000`); - const appA = await context.newPage(); + const appA = await context.newPage(); - await appA.goto(appAUrl.href); + await appA.goto(appAUrl.href); - await revalidateByPath(appA); + await revalidateByPath(appA); - const appBUrl = new URL(path, `${baseURL}:3001`); + const appBUrl = new URL(path, `${baseURL}:3001`); - const appB = await context.newPage(); + const appB = await context.newPage(); - await appB.goto(appBUrl.href); + await appB.goto(appBUrl.href); - const valueFromPageA = Number.parseInt((await appA.getByTestId('data').innerText()).valueOf(), 10); + const valueFromPageA = Number.parseInt( + (await appA.getByTestId('data').innerText()).valueOf(), + 10, + ); - const valueFromPageB = Number.parseInt((await appB.getByTestId('data').innerText()).valueOf(), 10); + const valueFromPageB = Number.parseInt( + (await appB.getByTestId('data').innerText()).valueOf(), + 10, + ); - expect(valueFromPageB - valueFromPageA === 1).toBe(true); - }); - } + expect(valueFromPageB - valueFromPageA === 1).toBe(true); + }); + } - for (const path of paths) { - test(`If revalidate by tag is clicked on page A, then page B should be fresh on load ${path}`, async ({ - context, - baseURL, - }) => { - const appAUrl = new URL(path, `${baseURL}:3000`); + for (const path of paths) { + test(`If revalidate by tag is clicked on page A, then page B should be fresh on load ${path}`, async ({ + context, + baseURL, + }) => { + const appAUrl = new URL(path, `${baseURL}:3000`); - const appA = await context.newPage(); + const appA = await context.newPage(); - await appA.goto(appAUrl.href); + await appA.goto(appAUrl.href); - await revalidateByTag(appA); + await revalidateByTag(appA); - const appBUrl = new URL(path, `${baseURL}:3001`); + const appBUrl = new URL(path, `${baseURL}:3001`); - const appB = await context.newPage(); + const appB = await context.newPage(); - await appB.goto(appBUrl.href); + await appB.goto(appBUrl.href); - const valueFromPageA = Number.parseInt((await appA.getByTestId('data').innerText()).valueOf(), 10); + const valueFromPageA = Number.parseInt( + (await appA.getByTestId('data').innerText()).valueOf(), + 10, + ); - const valueFromPageB = Number.parseInt((await appB.getByTestId('data').innerText()).valueOf(), 10); + const valueFromPageB = Number.parseInt( + (await appB.getByTestId('data').innerText()).valueOf(), + 10, + ); - expect(valueFromPageB - valueFromPageA === 1).toBe(true); - }); - } + expect(valueFromPageB - valueFromPageA === 1).toBe(true); + }); + } }); test.describe('Time-based revalidation', () => { - for (const path of paths) { - test(`Page should be fresh after becoming stale and reloaded twice ${path}`, async ({ page, baseURL }) => { - const url = new URL(path, `${baseURL}:3000`); + for (const path of paths) { + test(`Page should be fresh after becoming stale and reloaded twice ${path}`, async ({ + page, + baseURL, + }) => { + const url = new URL(path, `${baseURL}:3000`); - await page.goto(url.href); + await page.goto(url.href); - await refreshPageCache(page, 'tag'); + await refreshPageCache(page, 'tag'); - const pageValue = (await page.getByTestId('data').innerText()).valueOf(); + const pageValue = (await page.getByTestId('data').innerText()).valueOf(); - await page.reload(); + await page.reload(); - await expect(page.getByTestId('data')).toHaveText(pageValue); + await expect(page.getByTestId('data')).toHaveText(pageValue); - await expect(page.getByTestId('cache-state')).toContainText('stale', { timeout: 7500 }); + await expect(page.getByTestId('cache-state')).toContainText('stale', { + timeout: 7500, + }); - // Temporary workaround: Addressing intermittent test failures observed in GitHub Actions. - await Timers.scheduler.wait(1000); + // Temporary workaround: Addressing intermittent test failures observed in GitHub Actions. + await Timers.scheduler.wait(1000); - await page.reload(); + await page.reload(); - await expect(page.getByTestId('data')).toHaveText(pageValue); + await expect(page.getByTestId('data')).toHaveText(pageValue); - await page.reload(); + await page.reload(); - await expect(page.getByTestId('data')).not.toHaveText(pageValue); - }); - } + await expect(page.getByTestId('data')).not.toHaveText(pageValue); + }); + } - for (const path of paths) { - test(`Page should be fresh after reloaded once if becoming stale and waiting the same time for cache expiration ${path}`, async ({ - page, - baseURL, - }) => { - const url = new URL(path, `${baseURL}:3000`); + for (const path of paths) { + test(`Page should be fresh after reloaded once if becoming stale and waiting the same time for cache expiration ${path}`, async ({ + page, + baseURL, + }) => { + const url = new URL(path, `${baseURL}:3000`); - const startTime = Date.now(); + const startTime = Date.now(); - await page.goto(url.href); + await page.goto(url.href); - await refreshPageCache(page, 'tag'); + await refreshPageCache(page, 'tag'); - const pageValue = (await page.getByTestId('data').innerText()).valueOf(); + const pageValue = (await page.getByTestId('data').innerText()).valueOf(); - await page.reload(); + await page.reload(); - await expect(page.getByTestId('data')).toHaveText(pageValue); + await expect(page.getByTestId('data')).toHaveText(pageValue); - await expect(page.getByTestId('cache-state')).toContainText('stale', { timeout: 7500 }); + await expect(page.getByTestId('cache-state')).toContainText('stale', { + timeout: 7500, + }); - const elapsedTime = Date.now() - startTime; + const elapsedTime = Date.now() - startTime; - await Timers.scheduler.wait(elapsedTime); + await Timers.scheduler.wait(elapsedTime); - await page.reload(); + await page.reload(); - await expect(page.getByTestId('data')).not.toHaveText(pageValue); - }); - } + await expect(page.getByTestId('data')).not.toHaveText(pageValue); + }); + } - for (const path of paths) { - test(`If page A is stale, then page B should be fresh after load and reload ${path}`, async ({ - context, - baseURL, - }) => { - const appA = await context.newPage(); + for (const path of paths) { + test(`If page A is stale, then page B should be fresh after load and reload ${path}`, async ({ + context, + baseURL, + }) => { + const appA = await context.newPage(); - const appAUrl = new URL(path, `${baseURL}:3000`); + const appAUrl = new URL(path, `${baseURL}:3000`); - await appA.goto(appAUrl.href); + await appA.goto(appAUrl.href); - await refreshPageCache(appA, 'tag'); + await refreshPageCache(appA, 'tag'); - await expect(appA.getByTestId('cache-state')).toContainText('stale', { timeout: 7500 }); + await expect(appA.getByTestId('cache-state')).toContainText('stale', { + timeout: 7500, + }); - const appB = await context.newPage(); + const appB = await context.newPage(); - const appBUrl = new URL(path, `${baseURL}:3001`); + const appBUrl = new URL(path, `${baseURL}:3001`); - await appB.goto(appBUrl.href); + await appB.goto(appBUrl.href); - await expect(appB.getByTestId('cache-state')).toContainText('stale', { timeout: 7500 }); + await expect(appB.getByTestId('cache-state')).toContainText('stale', { + timeout: 7500, + }); - await appB.reload(); + await appB.reload(); - const valueFromPageA = Number.parseInt((await appA.getByTestId('data').innerText()).valueOf(), 10); + const valueFromPageA = Number.parseInt( + (await appA.getByTestId('data').innerText()).valueOf(), + 10, + ); - const valueFromPageB = Number.parseInt((await appB.getByTestId('data').innerText()).valueOf(), 10); + const valueFromPageB = Number.parseInt( + (await appB.getByTestId('data').innerText()).valueOf(), + 10, + ); - if (valueFromPageB - valueFromPageA > 1) { - console.warn('Page B is more than one revalidation ahead of page A.'); - } + if (valueFromPageB - valueFromPageA > 1) { + console.warn('Page B is more than one revalidation ahead of page A.'); + } - expect(valueFromPageA < valueFromPageB).toBe(true); - }); - } + expect(valueFromPageA < valueFromPageB).toBe(true); + }); + } - for (const path of paths) { - test(`If page A is stale and reloaded, then page B should be fresh after load ${path}`, async ({ - context, - baseURL, - }) => { - const appAUrl = new URL(path, `${baseURL}:3000`); + for (const path of paths) { + test(`If page A is stale and reloaded, then page B should be fresh after load ${path}`, async ({ + context, + baseURL, + }) => { + const appAUrl = new URL(path, `${baseURL}:3000`); - const appA = await context.newPage(); + const appA = await context.newPage(); - await appA.goto(appAUrl.href); + await appA.goto(appAUrl.href); - await refreshPageCache(appA, 'tag'); + await refreshPageCache(appA, 'tag'); - await expect(appA.getByTestId('cache-state')).toContainText('stale', { timeout: 7500 }); + await expect(appA.getByTestId('cache-state')).toContainText('stale', { + timeout: 7500, + }); - await appA.reload(); + await appA.reload(); - await appA.reload(); + await appA.reload(); - const appB = await context.newPage(); + const appB = await context.newPage(); - const appBUrl = new URL(path, `${baseURL}:3001`); + const appBUrl = new URL(path, `${baseURL}:3001`); - await appB.goto(appBUrl.href); + await appB.goto(appBUrl.href); - const valueFromPageA = Number.parseInt((await appA.getByTestId('data').innerText()).valueOf(), 10); + const valueFromPageA = Number.parseInt( + (await appA.getByTestId('data').innerText()).valueOf(), + 10, + ); - const valueFromPageB = Number.parseInt((await appA.getByTestId('data').innerText()).valueOf(), 10); + const valueFromPageB = Number.parseInt( + (await appA.getByTestId('data').innerText()).valueOf(), + 10, + ); - expect(valueFromPageA === valueFromPageB).toBe(true); - }); - } + expect(valueFromPageA === valueFromPageB).toBe(true); + }); + } }); test.describe('Data consistency between two app instances for the same page', () => { - for (const path of paths) { - test(`Should be maintained when loaded at the same time ${path}`, async ({ context, baseURL }) => { - const appAUrl = new URL(path, `${baseURL}:3000`); - const appBUrl = new URL(path, `${baseURL}:3001`); + for (const path of paths) { + test(`Should be maintained when loaded at the same time ${path}`, async ({ + context, + baseURL, + }) => { + const appAUrl = new URL(path, `${baseURL}:3000`); + const appBUrl = new URL(path, `${baseURL}:3001`); - const appA = await context.newPage(); - const appB = await context.newPage(); + const appA = await context.newPage(); + const appB = await context.newPage(); - await appA.goto(appAUrl.href); - await appB.goto(appBUrl.href); + await appA.goto(appAUrl.href); + await appB.goto(appBUrl.href); - await refreshPageCache(appA, 'tag'); + await refreshPageCache(appA, 'tag'); - await appA.reload(); - await appB.reload(); + await appA.reload(); + await appB.reload(); - const valueFromPageA = Number.parseInt((await appA.getByTestId('data').innerText()).valueOf(), 10); + const valueFromPageA = Number.parseInt( + (await appA.getByTestId('data').innerText()).valueOf(), + 10, + ); - const valueFromPageB = Number.parseInt((await appB.getByTestId('data').innerText()).valueOf(), 10); + const valueFromPageB = Number.parseInt( + (await appB.getByTestId('data').innerText()).valueOf(), + 10, + ); - expect(valueFromPageA === valueFromPageB).toBe(true); - }); - } + expect(valueFromPageA === valueFromPageB).toBe(true); + }); + } }); test.describe('Data consistency after server restart', () => { - for (const path of paths) { - test(`Should be maintained between App A and App B after App B server restarts ${path}`, async ({ - context, - baseURL, - }) => { - const appAUrl = new URL(path, `${baseURL}:3000`); - const appBUrl = new URL(path, `${baseURL}:3001`); + for (const path of paths) { + test(`Should be maintained between App A and App B after App B server restarts ${path}`, async ({ + context, + baseURL, + }) => { + const appAUrl = new URL(path, `${baseURL}:3000`); + const appBUrl = new URL(path, `${baseURL}:3001`); - const appA = await context.newPage(); - const appB = await context.newPage(); + const appA = await context.newPage(); + const appB = await context.newPage(); - await appA.goto(appAUrl.href); - await appB.goto(appBUrl.href); + await appA.goto(appAUrl.href); + await appB.goto(appBUrl.href); - await refreshPageCache(appA, 'tag'); + await refreshPageCache(appA, 'tag'); - await appA.reload(); - await appB.reload(); + await appA.reload(); + await appB.reload(); - let valueFromPageA = Number.parseInt((await appA.getByTestId('data').innerText()).valueOf(), 10); + let valueFromPageA = Number.parseInt( + (await appA.getByTestId('data').innerText()).valueOf(), + 10, + ); - const valueFromPageB = Number.parseInt((await appB.getByTestId('data').innerText()).valueOf(), 10); + const valueFromPageB = Number.parseInt( + (await appB.getByTestId('data').innerText()).valueOf(), + 10, + ); - expect(valueFromPageA === valueFromPageB).toBe(true); + expect(valueFromPageA === valueFromPageB).toBe(true); - const restartResult = await fetch(`${baseURL}:9000/restart/${appBUrl.port}`); + const restartResult = await fetch( + `${baseURL}:9000/restart/${appBUrl.port}`, + ); - expect(restartResult.status).toBe(200); + expect(restartResult.status).toBe(200); - for await (const _ of [1, 2, 3]) { - await refreshPageCache(appA, 'tag'); - } + for await (const _ of [1, 2, 3]) { + await refreshPageCache(appA, 'tag'); + } - valueFromPageA = Number.parseInt((await appA.getByTestId('data').innerText()).valueOf(), 10); + valueFromPageA = Number.parseInt( + (await appA.getByTestId('data').innerText()).valueOf(), + 10, + ); - await appB.reload(); + await appB.reload(); - const valueFromPageBAfterRestart = Number.parseInt( - (await appB.getByTestId('data').innerText()).valueOf(), - 10, - ); + const valueFromPageBAfterRestart = Number.parseInt( + (await appB.getByTestId('data').innerText()).valueOf(), + 10, + ); - expect(valueFromPageBAfterRestart === valueFromPageA).toBe(true); - }); - } + expect(valueFromPageBAfterRestart === valueFromPageA).toBe(true); + }); + } }); test.describe('SSR', () => { - test('verify initial cache state is fresh on SSR page load', async ({ page, baseURL }) => { - const url = new URL('/app/no-params/ssr/200', `${baseURL}:3000`); + test('verify initial cache state is fresh on SSR page load', async ({ + page, + baseURL, + }) => { + const url = new URL('/app/no-params/ssr/200', `${baseURL}:3000`); - await page.goto(url.href); + await page.goto(url.href); - await expect(page.getByTestId('cache-state')).toContainText('fresh'); - }); + await expect(page.getByTestId('cache-state')).toContainText('fresh'); + }); - test('ensure data value increments by 1 on SSR page reload', async ({ page, baseURL }) => { - const url = new URL('/app/no-params/ssr/200', `${baseURL}:3000`); + test('ensure data value increments by 1 on SSR page reload', async ({ + page, + baseURL, + }) => { + const url = new URL('/app/no-params/ssr/200', `${baseURL}:3000`); - await page.goto(url.href); + await page.goto(url.href); - const valueFromPage = Number.parseInt((await page.getByTestId('data').innerText()).valueOf(), 10); + const valueFromPage = Number.parseInt( + (await page.getByTestId('data').innerText()).valueOf(), + 10, + ); - await page.reload(); + await page.reload(); - const valueFromPageAfterReload = Number.parseInt((await page.getByTestId('data').innerText()).valueOf(), 10); + const valueFromPageAfterReload = Number.parseInt( + (await page.getByTestId('data').innerText()).valueOf(), + 10, + ); - expect(valueFromPageAfterReload - valueFromPage === 1).toBe(true); - }); + expect(valueFromPageAfterReload - valueFromPage === 1).toBe(true); + }); }); test.describe('Routes', () => { - test('static route return OK', async ({ page, baseURL }) => { - const url = new URL('/app/static', `${baseURL}:3000`); + test('static route return OK', async ({ page, baseURL }) => { + const url = new URL('/app/static', `${baseURL}:3000`); - await page.goto(url.href); + await page.goto(url.href); - const message = await page.getByText('OK').innerText(); + const message = await page.getByText('OK').innerText(); - expect(message).toBe('OK'); - }); + expect(message).toBe('OK'); + }); }); test.describe('unstable_cache', () => { - test('unstable_cache works', async ({ page, baseURL }) => { - const url = new URL('/app/with-params/unstable-cache/200', `${baseURL}:3000`); + test('unstable_cache works', async ({ page, baseURL }) => { + const url = new URL( + '/app/with-params/unstable-cache/200', + `${baseURL}:3000`, + ); - await page.goto(url.href); + await page.goto(url.href); - const valueFromPage = Number.parseInt((await page.getByTestId('data').innerText()).valueOf(), 10); + const valueFromPage = Number.parseInt( + (await page.getByTestId('data').innerText()).valueOf(), + 10, + ); - await page.reload(); + await page.reload(); - const valueFromPageAfterReload = Number.parseInt((await page.getByTestId('data').innerText()).valueOf(), 10); + const valueFromPageAfterReload = Number.parseInt( + (await page.getByTestId('data').innerText()).valueOf(), + 10, + ); - expect(valueFromPageAfterReload === valueFromPage).toBe(true); - }); + expect(valueFromPageAfterReload === valueFromPage).toBe(true); + }); }); diff --git a/apps/cache-testing/tests/pages.spec.ts b/apps/cache-testing/tests/pages.spec.ts index 85ee3268..151954d8 100644 --- a/apps/cache-testing/tests/pages.spec.ts +++ b/apps/cache-testing/tests/pages.spec.ts @@ -3,505 +3,621 @@ import { expect, test } from '@playwright/test'; import { revalidateByApi } from './test-helpers'; const paths = [ - '/pages/with-paths/fallback-blocking/200', - '/pages/with-paths/fallback-true/200', - '/pages/with-paths/fallback-false/200', - '/pages/no-paths/fallback-blocking/200', - '/pages/no-paths/fallback-true/200', - // '/pages/no-paths/fallback-false/200', // this fails with native next.js cache + '/pages/with-paths/fallback-blocking/200', + '/pages/with-paths/fallback-true/200', + '/pages/with-paths/fallback-false/200', + '/pages/no-paths/fallback-blocking/200', + '/pages/no-paths/fallback-true/200', + // '/pages/no-paths/fallback-false/200', // this fails with native next.js cache ]; test.describe('On-demand revalidation', () => { - for (const path of paths) { - test(`If revalidate is clicked, then page should be fresh after reload ${path}`, async ({ page, baseURL }) => { - const url = new URL(path, `${baseURL}:3000`); + for (const path of paths) { + test(`If revalidate is clicked, then page should be fresh after reload ${path}`, async ({ + page, + baseURL, + }) => { + const url = new URL(path, `${baseURL}:3000`); - await page.goto(url.href); + await page.goto(url.href); - await page.getByTestId('revalidate-button-path').click(); + await page.getByTestId('revalidate-button-path').click(); - await expect(page.getByTestId('is-revalidated-by-path')).toContainText('Revalidated at'); + await expect(page.getByTestId('is-revalidated-by-path')).toContainText( + 'Revalidated at', + ); - await page.reload(); + await page.reload(); - let pageValue = (await page.getByTestId('data').innerText()).valueOf(); + let pageValue = (await page.getByTestId('data').innerText()).valueOf(); - await page.reload(); + await page.reload(); - await expect(page.getByTestId('data')).toHaveText(pageValue); + await expect(page.getByTestId('data')).toHaveText(pageValue); - await page.getByTestId('revalidate-button-path').click(); + await page.getByTestId('revalidate-button-path').click(); - await expect(page.getByTestId('is-revalidated-by-path')).toContainText('Revalidated at'); + await expect(page.getByTestId('is-revalidated-by-path')).toContainText( + 'Revalidated at', + ); - await page.reload(); + await page.reload(); - await expect(page.getByTestId('data')).not.toHaveText(pageValue); + await expect(page.getByTestId('data')).not.toHaveText(pageValue); - pageValue = (await page.getByTestId('data').innerText()).valueOf(); + pageValue = (await page.getByTestId('data').innerText()).valueOf(); - await page.reload(); + await page.reload(); - await expect(page.getByTestId('data')).toHaveText(pageValue); - }); - } + await expect(page.getByTestId('data')).toHaveText(pageValue); + }); + } - for (const path of paths) { - test(`If revalidate is clicked on page A, then page B should be fresh on load ${path}`, async ({ - context, - baseURL, - }) => { - const appAUrl = new URL(path, `${baseURL}:3000`); + for (const path of paths) { + test(`If revalidate is clicked on page A, then page B should be fresh on load ${path}`, async ({ + context, + baseURL, + }) => { + const appAUrl = new URL(path, `${baseURL}:3000`); - const appA = await context.newPage(); + const appA = await context.newPage(); - await appA.goto(appAUrl.href); + await appA.goto(appAUrl.href); - await appA.getByTestId('revalidate-button-path').click(); + await appA.getByTestId('revalidate-button-path').click(); - await expect(appA.getByTestId('is-revalidated-by-path')).toContainText('Revalidated at'); + await expect(appA.getByTestId('is-revalidated-by-path')).toContainText( + 'Revalidated at', + ); - const appBUrl = new URL(path, `${baseURL}:3001`); + const appBUrl = new URL(path, `${baseURL}:3001`); - const appB = await context.newPage(); + const appB = await context.newPage(); - await appB.goto(appBUrl.href); + await appB.goto(appBUrl.href); - const valueFromPageA = Number.parseInt((await appA.getByTestId('data').innerText()).valueOf(), 10); + const valueFromPageA = Number.parseInt( + (await appA.getByTestId('data').innerText()).valueOf(), + 10, + ); - const valueFromPageB = Number.parseInt((await appB.getByTestId('data').innerText()).valueOf(), 10); + const valueFromPageB = Number.parseInt( + (await appB.getByTestId('data').innerText()).valueOf(), + 10, + ); - expect(valueFromPageA + 1 === valueFromPageB).toBe(true); - }); - } + expect(valueFromPageA + 1 === valueFromPageB).toBe(true); + }); + } }); test.describe('Time-based revalidation', () => { - for (const path of paths) { - test(`Page should be fresh after becoming stale and reloaded twice ${path}`, async ({ page, baseURL }) => { - const url = new URL(path, `${baseURL}:3000`); + for (const path of paths) { + test(`Page should be fresh after becoming stale and reloaded twice ${path}`, async ({ + page, + baseURL, + }) => { + const url = new URL(path, `${baseURL}:3000`); - await page.goto(url.href); + await page.goto(url.href); - await page.getByTestId('revalidate-button-path').click(); + await page.getByTestId('revalidate-button-path').click(); - await expect(page.getByTestId('is-revalidated-by-path')).toContainText('Revalidated at'); + await expect(page.getByTestId('is-revalidated-by-path')).toContainText( + 'Revalidated at', + ); - await page.reload(); + await page.reload(); - const pageValue = (await page.getByTestId('data').innerText()).valueOf(); + const pageValue = (await page.getByTestId('data').innerText()).valueOf(); - await page.reload(); + await page.reload(); - await expect(page.getByTestId('data')).toHaveText(pageValue); + await expect(page.getByTestId('data')).toHaveText(pageValue); - await expect(page.getByTestId('cache-state')).toContainText('stale', { timeout: 7500 }); + await expect(page.getByTestId('cache-state')).toContainText('stale', { + timeout: 7500, + }); - await page.reload(); + await page.reload(); - await expect(page.getByTestId('data')).toHaveText(pageValue); + await expect(page.getByTestId('data')).toHaveText(pageValue); - await page.reload(); + await page.reload(); - await expect(page.getByTestId('data')).not.toHaveText(pageValue); - }); - } + await expect(page.getByTestId('data')).not.toHaveText(pageValue); + }); + } - for (const path of paths) { - test(`Page should be fresh after reloaded once if becoming stale and waiting the same time for cache expiration ${path}`, async ({ - page, - baseURL, - }) => { - test.fail(path.includes('fallback-false'), 'See https://github.com/vercel/next.js/issues/58094'); + for (const path of paths) { + test(`Page should be fresh after reloaded once if becoming stale and waiting the same time for cache expiration ${path}`, async ({ + page, + baseURL, + }) => { + test.fail( + path.includes('fallback-false'), + 'See https://github.com/vercel/next.js/issues/58094', + ); - const url = new URL(path, `${baseURL}:3000`); + const url = new URL(path, `${baseURL}:3000`); - const startTime = Date.now(); + const startTime = Date.now(); - await page.goto(url.href); + await page.goto(url.href); - await page.getByTestId('revalidate-button-path').click(); + await page.getByTestId('revalidate-button-path').click(); - await expect(page.getByTestId('is-revalidated-by-path')).toContainText('Revalidated at'); + await expect(page.getByTestId('is-revalidated-by-path')).toContainText( + 'Revalidated at', + ); - await page.reload(); + await page.reload(); - const pageValue = (await page.getByTestId('data').innerText()).valueOf(); + const pageValue = (await page.getByTestId('data').innerText()).valueOf(); - await page.reload(); + await page.reload(); - await expect(page.getByTestId('data')).toHaveText(pageValue); + await expect(page.getByTestId('data')).toHaveText(pageValue); - await expect(page.getByTestId('cache-state')).toContainText('stale', { timeout: 7500 }); + await expect(page.getByTestId('cache-state')).toContainText('stale', { + timeout: 7500, + }); - const elapsedTime = Date.now() - startTime; + const elapsedTime = Date.now() - startTime; - await Timers.scheduler.wait(elapsedTime); + await Timers.scheduler.wait(elapsedTime); - await page.reload(); + await page.reload(); - await expect(page.getByTestId('data')).not.toHaveText(pageValue); - }); - } + await expect(page.getByTestId('data')).not.toHaveText(pageValue); + }); + } - for (const path of paths) { - test(`If page A is stale, then page B should be fresh after load and reload ${path}`, async ({ - context, - baseURL, - }) => { - const appA = await context.newPage(); + for (const path of paths) { + test(`If page A is stale, then page B should be fresh after load and reload ${path}`, async ({ + context, + baseURL, + }) => { + const appA = await context.newPage(); - const appAUrl = new URL(path, `${baseURL}:3000`); + const appAUrl = new URL(path, `${baseURL}:3000`); - await appA.goto(appAUrl.href); + await appA.goto(appAUrl.href); - await appA.getByTestId('revalidate-button-path').click(); + await appA.getByTestId('revalidate-button-path').click(); - await expect(appA.getByTestId('is-revalidated-by-path')).toContainText('Revalidated at'); + await expect(appA.getByTestId('is-revalidated-by-path')).toContainText( + 'Revalidated at', + ); - await appA.reload(); + await appA.reload(); - await expect(appA.getByTestId('cache-state')).toContainText('stale', { timeout: 7500 }); + await expect(appA.getByTestId('cache-state')).toContainText('stale', { + timeout: 7500, + }); - const appB = await context.newPage(); + const appB = await context.newPage(); - const appBUrl = new URL(path, `${baseURL}:3001`); + const appBUrl = new URL(path, `${baseURL}:3001`); - await appB.goto(appBUrl.href); + await appB.goto(appBUrl.href); - await expect(appB.getByTestId('cache-state')).toContainText('stale', { timeout: 7500 }); + await expect(appB.getByTestId('cache-state')).toContainText('stale', { + timeout: 7500, + }); - await appB.reload(); + await appB.reload(); - const valueFromPageA = Number.parseInt((await appA.getByTestId('data').innerText()).valueOf(), 10); + const valueFromPageA = Number.parseInt( + (await appA.getByTestId('data').innerText()).valueOf(), + 10, + ); - const valueFromPageB = Number.parseInt((await appB.getByTestId('data').innerText()).valueOf(), 10); + const valueFromPageB = Number.parseInt( + (await appB.getByTestId('data').innerText()).valueOf(), + 10, + ); - expect(valueFromPageA + 1 === valueFromPageB).toBe(true); - }); - } + expect(valueFromPageA + 1 === valueFromPageB).toBe(true); + }); + } - for (const path of paths) { - test(`If page A is stale and reloaded, then page B should be fresh after load ${path}`, async ({ - context, - baseURL, - }) => { - const appAUrl = new URL(path, `${baseURL}:3000`); + for (const path of paths) { + test(`If page A is stale and reloaded, then page B should be fresh after load ${path}`, async ({ + context, + baseURL, + }) => { + const appAUrl = new URL(path, `${baseURL}:3000`); - const appA = await context.newPage(); + const appA = await context.newPage(); - await appA.goto(appAUrl.href); + await appA.goto(appAUrl.href); - await appA.getByTestId('revalidate-button-path').click(); + await appA.getByTestId('revalidate-button-path').click(); - await expect(appA.getByTestId('is-revalidated-by-path')).toContainText('Revalidated at'); + await expect(appA.getByTestId('is-revalidated-by-path')).toContainText( + 'Revalidated at', + ); - await appA.reload(); + await appA.reload(); - await expect(appA.getByTestId('cache-state')).toContainText('stale', { timeout: 7500 }); + await expect(appA.getByTestId('cache-state')).toContainText('stale', { + timeout: 7500, + }); - await appA.reload(); + await appA.reload(); - await appA.reload(); + await appA.reload(); - const appB = await context.newPage(); + const appB = await context.newPage(); - const appBUrl = new URL(path, `${baseURL}:3001`); + const appBUrl = new URL(path, `${baseURL}:3001`); - await appB.goto(appBUrl.href); + await appB.goto(appBUrl.href); - const valueFromPageA = Number.parseInt((await appA.getByTestId('data').innerText()).valueOf(), 10); + const valueFromPageA = Number.parseInt( + (await appA.getByTestId('data').innerText()).valueOf(), + 10, + ); - const valueFromPageB = Number.parseInt((await appA.getByTestId('data').innerText()).valueOf(), 10); + const valueFromPageB = Number.parseInt( + (await appA.getByTestId('data').innerText()).valueOf(), + 10, + ); - expect(valueFromPageA === valueFromPageB).toBe(true); - }); - } + expect(valueFromPageA === valueFromPageB).toBe(true); + }); + } }); test.describe('Data consistency between two app instances for the same page', () => { - for (const path of paths) { - test(`Should be maintained when loaded at the same time ${path}`, async ({ context, baseURL }) => { - const appAUrl = new URL(path, `${baseURL}:3000`); - const appBUrl = new URL(path, `${baseURL}:3001`); + for (const path of paths) { + test(`Should be maintained when loaded at the same time ${path}`, async ({ + context, + baseURL, + }) => { + const appAUrl = new URL(path, `${baseURL}:3000`); + const appBUrl = new URL(path, `${baseURL}:3001`); - const appA = await context.newPage(); - const appB = await context.newPage(); + const appA = await context.newPage(); + const appB = await context.newPage(); - await appA.goto(appAUrl.href); - await appB.goto(appBUrl.href); + await appA.goto(appAUrl.href); + await appB.goto(appBUrl.href); - await appA.getByTestId('revalidate-button-path').click(); + await appA.getByTestId('revalidate-button-path').click(); - await expect(appA.getByTestId('is-revalidated-by-path')).toContainText('Revalidated at'); + await expect(appA.getByTestId('is-revalidated-by-path')).toContainText( + 'Revalidated at', + ); - await appA.reload(); - await appB.reload(); + await appA.reload(); + await appB.reload(); - const valueFromPageA = Number.parseInt((await appA.getByTestId('data').innerText()).valueOf(), 10); + const valueFromPageA = Number.parseInt( + (await appA.getByTestId('data').innerText()).valueOf(), + 10, + ); - const valueFromPageB = Number.parseInt((await appB.getByTestId('data').innerText()).valueOf(), 10); + const valueFromPageB = Number.parseInt( + (await appB.getByTestId('data').innerText()).valueOf(), + 10, + ); - expect(valueFromPageA === valueFromPageB).toBe(true); - }); - } + expect(valueFromPageA === valueFromPageB).toBe(true); + }); + } }); test.describe('Data consistency after server restart', () => { - for (const path of paths) { - test(`Should be maintained between App A and App B after App B server restarts ${path}`, async ({ - context, - baseURL, - }) => { - const appAUrl = new URL(path, `${baseURL}:3000`); - const appBUrl = new URL(path, `${baseURL}:3001`); + for (const path of paths) { + test(`Should be maintained between App A and App B after App B server restarts ${path}`, async ({ + context, + baseURL, + }) => { + const appAUrl = new URL(path, `${baseURL}:3000`); + const appBUrl = new URL(path, `${baseURL}:3001`); - const appA = await context.newPage(); - const appB = await context.newPage(); + const appA = await context.newPage(); + const appB = await context.newPage(); - await appA.goto(appAUrl.href); - await appB.goto(appBUrl.href); + await appA.goto(appAUrl.href); + await appB.goto(appBUrl.href); - await appA.getByTestId('revalidate-button-path').click(); + await appA.getByTestId('revalidate-button-path').click(); - await expect(appA.getByTestId('is-revalidated-by-path')).toContainText('Revalidated at'); + await expect(appA.getByTestId('is-revalidated-by-path')).toContainText( + 'Revalidated at', + ); - await appA.reload(); - await appB.reload(); + await appA.reload(); + await appB.reload(); - let valueFromPageA = Number.parseInt((await appA.getByTestId('data').innerText()).valueOf(), 10); + let valueFromPageA = Number.parseInt( + (await appA.getByTestId('data').innerText()).valueOf(), + 10, + ); - const valueFromPageB = Number.parseInt((await appB.getByTestId('data').innerText()).valueOf(), 10); + const valueFromPageB = Number.parseInt( + (await appB.getByTestId('data').innerText()).valueOf(), + 10, + ); - expect(valueFromPageA === valueFromPageB).toBe(true); + expect(valueFromPageA === valueFromPageB).toBe(true); - const restartResult = await fetch(`${baseURL}:9000/restart/${appBUrl.port}`, { - next: { - // @ts-expect-error -- act as an internal fetch call - internal: true, - }, - }); + const restartResult = await fetch( + `${baseURL}:9000/restart/${appBUrl.port}`, + { + next: { + // @ts-expect-error -- act as an internal fetch call + internal: true, + }, + }, + ); - expect(restartResult.status).toBe(200); + expect(restartResult.status).toBe(200); - for await (const _ of [1, 2, 3]) { - await appA.getByTestId('revalidate-button-path').click(); + for await (const _ of [1, 2, 3]) { + await appA.getByTestId('revalidate-button-path').click(); - await expect(appA.getByTestId('is-revalidated-by-path')).toContainText('Revalidated at'); + await expect(appA.getByTestId('is-revalidated-by-path')).toContainText( + 'Revalidated at', + ); - await appA.reload(); - } + await appA.reload(); + } - valueFromPageA = Number.parseInt((await appA.getByTestId('data').innerText()).valueOf(), 10); + valueFromPageA = Number.parseInt( + (await appA.getByTestId('data').innerText()).valueOf(), + 10, + ); - await appB.reload(); + await appB.reload(); - const valueFromPageBAfterRestart = Number.parseInt( - (await appB.getByTestId('data').innerText()).valueOf(), - 10, - ); + const valueFromPageBAfterRestart = Number.parseInt( + (await appB.getByTestId('data').innerText()).valueOf(), + 10, + ); - expect(valueFromPageBAfterRestart === valueFromPageA).toBe(true); - }); - } + expect(valueFromPageBAfterRestart === valueFromPageA).toBe(true); + }); + } }); test.describe('SSR', () => { - test('verify initial cache state is fresh on SSR page load', async ({ page, baseURL }) => { - const url = new URL('/pages/no-paths/ssr/200', `${baseURL}:3000`); + test('verify initial cache state is fresh on SSR page load', async ({ + page, + baseURL, + }) => { + const url = new URL('/pages/no-paths/ssr/200', `${baseURL}:3000`); - await page.goto(url.href); + await page.goto(url.href); - await expect(page.getByTestId('cache-state')).toContainText('fresh'); - }); + await expect(page.getByTestId('cache-state')).toContainText('fresh'); + }); - test('ensure data value increments by 1 on SSR page reload', async ({ page, baseURL }) => { - const url = new URL('/pages/no-paths/ssr/200', `${baseURL}:3000`); + test('ensure data value increments by 1 on SSR page reload', async ({ + page, + baseURL, + }) => { + const url = new URL('/pages/no-paths/ssr/200', `${baseURL}:3000`); - await page.goto(url.href); + await page.goto(url.href); - const valueFromPage = Number.parseInt((await page.getByTestId('data').innerText()).valueOf(), 10); + const valueFromPage = Number.parseInt( + (await page.getByTestId('data').innerText()).valueOf(), + 10, + ); - await page.reload(); + await page.reload(); - const valueFromPageAfterReload = Number.parseInt((await page.getByTestId('data').innerText()).valueOf(), 10); + const valueFromPageAfterReload = Number.parseInt( + (await page.getByTestId('data').innerText()).valueOf(), + 10, + ); - expect(valueFromPageAfterReload - valueFromPage === 1).toBe(true); - }); + expect(valueFromPageAfterReload - valueFromPage === 1).toBe(true); + }); }); test.describe('SSR neshClassicCache', () => { - const path = '/pages/no-paths/ssr-with-cache/200'; + const path = '/pages/no-paths/ssr-with-cache/200'; - test('If revalidate is called, then page should be fresh after reload', async ({ page, baseURL }) => { - const url = new URL(path, `${baseURL}:3000`); + test('If revalidate is called, then page should be fresh after reload', async ({ + page, + baseURL, + }) => { + const url = new URL(path, `${baseURL}:3000`); - await page.goto(url.href); + await page.goto(url.href); - const response = await revalidateByApi(path, `${baseURL}:3000`); + const response = await revalidateByApi(path, `${baseURL}:3000`); - expect(response.revalidated).toBe(true); + expect(response.revalidated).toBe(true); - await page.reload(); + await page.reload(); - await expect(page.getByTestId('cache-state')).toContainText('fresh'); - }); + await expect(page.getByTestId('cache-state')).toContainText('fresh'); + }); - test('If revalidate is called on page A, then page B should be fresh on load and value must be updated', async ({ - context, - baseURL, - }) => { - const appAUrl = new URL(path, `${baseURL}:3000`); + test('If revalidate is called on page A, then page B should be fresh on load and value must be updated', async ({ + context, + baseURL, + }) => { + const appAUrl = new URL(path, `${baseURL}:3000`); - await revalidateByApi(path, `${baseURL}:3000`); + await revalidateByApi(path, `${baseURL}:3000`); - const appA = await context.newPage(); + const appA = await context.newPage(); - await appA.goto(appAUrl.href); + await appA.goto(appAUrl.href); - await expect(appA.getByTestId('cache-state')).toContainText('fresh'); + await expect(appA.getByTestId('cache-state')).toContainText('fresh'); - const valueFromPageA = Number.parseInt((await appA.getByTestId('data').innerText()).valueOf(), 10); + const valueFromPageA = Number.parseInt( + (await appA.getByTestId('data').innerText()).valueOf(), + 10, + ); - await revalidateByApi(path, `${baseURL}:3000`); + await revalidateByApi(path, `${baseURL}:3000`); - const appBUrl = new URL(path, `${baseURL}:3001`); + const appBUrl = new URL(path, `${baseURL}:3001`); - const appB = await context.newPage(); + const appB = await context.newPage(); - await appB.goto(appBUrl.href); + await appB.goto(appBUrl.href); - await expect(appA.getByTestId('cache-state')).toContainText('fresh'); + await expect(appA.getByTestId('cache-state')).toContainText('fresh'); - const valueFromPageB = Number.parseInt((await appB.getByTestId('data').innerText()).valueOf(), 10); + const valueFromPageB = Number.parseInt( + (await appB.getByTestId('data').innerText()).valueOf(), + 10, + ); - expect(valueFromPageB - valueFromPageA === 1).toBe(true); - }); + expect(valueFromPageB - valueFromPageA === 1).toBe(true); + }); - test('Page should be fresh after becoming stale and reloaded twice', async ({ page, baseURL }) => { - const url = new URL(path, `${baseURL}:3000`); + test('Page should be fresh after becoming stale and reloaded twice', async ({ + page, + baseURL, + }) => { + const url = new URL(path, `${baseURL}:3000`); - await revalidateByApi(path, `${baseURL}:3000`); + await revalidateByApi(path, `${baseURL}:3000`); - await page.goto(url.href); + await page.goto(url.href); - await expect(page.getByTestId('cache-state')).toContainText('fresh'); + await expect(page.getByTestId('cache-state')).toContainText('fresh'); - await expect(page.getByTestId('cache-state')).toContainText('stale', { timeout: 7500 }); + await expect(page.getByTestId('cache-state')).toContainText('stale', { + timeout: 7500, + }); - await page.reload(); + await page.reload(); - await expect(page.getByTestId('cache-state')).toContainText('stale'); + await expect(page.getByTestId('cache-state')).toContainText('stale'); - await page.reload(); + await page.reload(); - await expect(page.getByTestId('cache-state')).toContainText('fresh'); - }); + await expect(page.getByTestId('cache-state')).toContainText('fresh'); + }); }); test.describe('API route neshClassicCache', () => { - const path = '/api/pages-cached-api'; + const path = '/api/pages-cached-api'; - test('If revalidate is called, then page should be fresh after reload', async ({ baseURL }) => { - const url = new URL(path, `${baseURL}:3000`); + test('If revalidate is called, then page should be fresh after reload', async ({ + baseURL, + }) => { + const url = new URL(path, `${baseURL}:3000`); - const revalidateByApiResponse = await revalidateByApi(path, `${baseURL}:3000`); + const revalidateByApiResponse = await revalidateByApi( + path, + `${baseURL}:3000`, + ); - expect(revalidateByApiResponse.revalidated).toBe(true); + expect(revalidateByApiResponse.revalidated).toBe(true); - const response = await fetch(url.href); + const response = await fetch(url.href); - if (!response.ok) { - throw new Error('Failed to fetch'); - } + if (!response.ok) { + throw new Error('Failed to fetch'); + } - const json = (await response.json()) as { props: { count: number; timeMs: string; revalidateAfterMs: string } }; + const json = (await response.json()) as { + props: { count: number; timeMs: string; revalidateAfterMs: string }; + }; - const time = Number.parseInt(json.props.timeMs, 10); + const time = Number.parseInt(json.props.timeMs, 10); - const revalidateAfter = Number.parseInt(json.props.revalidateAfterMs, 10); + const revalidateAfter = Number.parseInt(json.props.revalidateAfterMs, 10); - expect(time < revalidateAfter).toBe(true); - }); + expect(time < revalidateAfter).toBe(true); + }); - test('If revalidate is called on page A, then page B should be fresh on load and value must be updated', async ({ - baseURL, - }) => { - const appAUrl = new URL(path, `${baseURL}:3000`); + test('If revalidate is called on page A, then page B should be fresh on load and value must be updated', async ({ + baseURL, + }) => { + const appAUrl = new URL(path, `${baseURL}:3000`); - const appBUrl = new URL(path, `${baseURL}:3001`); + const appBUrl = new URL(path, `${baseURL}:3001`); - await revalidateByApi(path, `${baseURL}:3000`); + await revalidateByApi(path, `${baseURL}:3000`); - const appAResponse = await fetch(appAUrl.href); + const appAResponse = await fetch(appAUrl.href); - if (!appAResponse.ok) { - throw new Error('Failed to fetch'); - } + if (!appAResponse.ok) { + throw new Error('Failed to fetch'); + } - const appAJson = (await appAResponse.json()) as { - props: { count: number; timeMs: string; revalidateAfterMs: string }; - }; + const appAJson = (await appAResponse.json()) as { + props: { count: number; timeMs: string; revalidateAfterMs: string }; + }; - const time = Number.parseInt(appAJson.props.timeMs, 10); + const time = Number.parseInt(appAJson.props.timeMs, 10); - const revalidateAfter = Number.parseInt(appAJson.props.revalidateAfterMs, 10); + const revalidateAfter = Number.parseInt( + appAJson.props.revalidateAfterMs, + 10, + ); - expect(time < revalidateAfter).toBe(true); + expect(time < revalidateAfter).toBe(true); - const appACount = appAJson.props.count; + const appACount = appAJson.props.count; - await revalidateByApi(path, `${baseURL}:3000`); + await revalidateByApi(path, `${baseURL}:3000`); - const appBResponse = await fetch(appBUrl.href); + const appBResponse = await fetch(appBUrl.href); - if (!appBResponse.ok) { - throw new Error('Failed to fetch'); - } + if (!appBResponse.ok) { + throw new Error('Failed to fetch'); + } - const appBJson = (await appBResponse.json()) as { - props: { count: number; timeMs: string; revalidateAfterMs: string }; - }; + const appBJson = (await appBResponse.json()) as { + props: { count: number; timeMs: string; revalidateAfterMs: string }; + }; - const appBCount = appBJson.props.count; + const appBCount = appBJson.props.count; - expect(appBCount - appACount === 1).toBe(true); - }); + expect(appBCount - appACount === 1).toBe(true); + }); - test('Page should be fresh after becoming stale and reloaded twice', async ({ baseURL }) => { - const url = new URL(path, `${baseURL}:3000`); + test('Page should be fresh after becoming stale and reloaded twice', async ({ + baseURL, + }) => { + const url = new URL(path, `${baseURL}:3000`); - await revalidateByApi(path, `${baseURL}:3000`); + await revalidateByApi(path, `${baseURL}:3000`); - const response1 = await fetch(url.href); + const response1 = await fetch(url.href); - if (!response1.ok) { - throw new Error('Failed to fetch'); - } + if (!response1.ok) { + throw new Error('Failed to fetch'); + } - const json1 = (await response1.json()) as { - props: { count: number; timeMs: string; revalidateAfterMs: string }; - }; + const json1 = (await response1.json()) as { + props: { count: number; timeMs: string; revalidateAfterMs: string }; + }; - const time = Number.parseInt(json1.props.timeMs, 10); + const time = Number.parseInt(json1.props.timeMs, 10); - const revalidateAfter = Number.parseInt(json1.props.revalidateAfterMs, 10); + const revalidateAfter = Number.parseInt(json1.props.revalidateAfterMs, 10); - expect(time < revalidateAfter).toBe(true); + expect(time < revalidateAfter).toBe(true); - await Timers.setTimeout(revalidateAfter - Date.now()); + await Timers.setTimeout(revalidateAfter - Date.now()); - await fetch(url.href); - const response2 = await fetch(url.href); + await fetch(url.href); + const response2 = await fetch(url.href); - if (!response2.ok) { - throw new Error('Failed to fetch'); - } + if (!response2.ok) { + throw new Error('Failed to fetch'); + } - const json2 = (await response2.json()) as { - props: { count: number; timeMs: string; revalidateAfterMs: string }; - }; + const json2 = (await response2.json()) as { + props: { count: number; timeMs: string; revalidateAfterMs: string }; + }; - expect(json2.props.count - json1.props.count === 1).toBe(true); - }); + expect(json2.props.count - json1.props.count === 1).toBe(true); + }); }); diff --git a/apps/cache-testing/tests/test-helpers.ts b/apps/cache-testing/tests/test-helpers.ts index 079475d6..8b0dde84 100644 --- a/apps/cache-testing/tests/test-helpers.ts +++ b/apps/cache-testing/tests/test-helpers.ts @@ -1,56 +1,63 @@ import { type Page, expect } from '@playwright/test'; export async function revalidateByTag(page: Page) { - await page.getByTestId('revalidate-button-tag').click(); + await page.getByTestId('revalidate-button-tag').click(); - await expect(page.getByTestId('is-revalidated-by-tag')).toContainText('Revalidated at'); + await expect(page.getByTestId('is-revalidated-by-tag')).toContainText( + 'Revalidated at', + ); } export async function revalidateByPath(page: Page) { - await page.getByTestId('revalidate-button-path').click(); + await page.getByTestId('revalidate-button-path').click(); - await expect(page.getByTestId('is-revalidated-by-path')).toContainText('Revalidated at'); + await expect(page.getByTestId('is-revalidated-by-path')).toContainText( + 'Revalidated at', + ); } export async function refreshPageCache(page: Page, by: 'tag' | 'path') { - switch (by) { - case 'tag': { - await revalidateByTag(page); - break; - } - case 'path': { - await revalidateByPath(page); - break; - } - default: { - throw new Error(`Invalid by: ${by}`); - } + switch (by) { + case 'tag': { + await revalidateByTag(page); + break; } + case 'path': { + await revalidateByPath(page); + break; + } + default: { + throw new Error(`Invalid by: ${by}`); + } + } - await page.reload(); + await page.reload(); } export async function revalidateByApi( - path: string, - base: string, - router: 'app' | 'pages' = 'app', - by: 'path' | 'tag' = 'tag', + path: string, + base: string, + router: 'app' | 'pages' = 'app', + by: 'path' | 'tag' = 'tag', ): Promise<{ revalidated: boolean; now: string }> { - const url = new URL(`/api/revalidate-${router}`, base); + const url = new URL(`/api/revalidate-${router}`, base); - url.searchParams.append(by, path); + url.searchParams.append(by, path); - const response = await fetch(url); + const response = await fetch(url); - if (!response.ok) { - throw new Error('Failed to revalidate'); - } + if (!response.ok) { + throw new Error('Failed to revalidate'); + } - const json = (await response.json()) as { revalidated: boolean; now: string }; + const json = (await response.json()) as { + revalidated: boolean; + now: string; + }; - if (!json.revalidated) { - throw new Error('Failed to revalidate'); - } + if (!json.revalidated) { + throw new Error('Failed to revalidate'); + } - return json; + return json; } diff --git a/apps/cache-testing/tsconfig.json b/apps/cache-testing/tsconfig.json index cb9fb159..bd8b7571 100644 --- a/apps/cache-testing/tsconfig.json +++ b/apps/cache-testing/tsconfig.json @@ -1,16 +1,22 @@ { - "extends": "@repo/typescript-config/nextjs.json", - "compilerOptions": { - "paths": { - "cache-testing/*": ["./src/*"] - }, - "plugins": [ - { - "name": "next" - } - ], - "strictNullChecks": true + "extends": "@repo/typescript-config/nextjs.json", + "compilerOptions": { + "paths": { + "cache-testing/*": ["./src/*"] }, - "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx", ".next/types/**/*.ts", "run-app-instances.ts"], - "exclude": ["node_modules"] + "plugins": [ + { + "name": "next" + } + ], + "strictNullChecks": true + }, + "include": [ + "next-env.d.ts", + "**/*.ts", + "**/*.tsx", + ".next/types/**/*.ts", + "run-app-instances.ts" + ], + "exclude": ["node_modules"] } diff --git a/biome.json b/biome.json index c3084016..2b6e20ea 100644 --- a/biome.json +++ b/biome.json @@ -1,77 +1,79 @@ { - "$schema": "./node_modules/@biomejs/biome/configuration_schema.json", - "organizeImports": { - "enabled": true - }, - "linter": { - "enabled": true, - "rules": { - "all": true, - "suspicious": { - "noConsole": { - "level": "error", - "options": { "allow": ["assert", "error", "info", "warn"] } - } - }, - "style": { - "useFilenamingConvention": { - "level": "error", - "options": { - "filenameCases": ["kebab-case"] - } - }, - "noDefaultExport": "off", - "useNamingConvention": "off" - }, - "correctness": { - "noNodejsModules": "off", - "noUndeclaredDependencies": "off", - "useImportExtensions": "off" - }, - "complexity": { - "noExcessiveCognitiveComplexity": "off" - }, - "performance": { - "noBarrelFile": "off" - } + "$schema": "./node_modules/@biomejs/biome/configuration_schema.json", + "organizeImports": { + "enabled": true + }, + "linter": { + "enabled": true, + "rules": { + "all": true, + "suspicious": { + "noConsole": { + "level": "error", + "options": { "allow": ["assert", "error", "info", "warn"] } } - }, + }, + "style": { + "useFilenamingConvention": { + "level": "error", + "options": { + "filenameCases": ["kebab-case"] + } + }, + "noDefaultExport": "off", + "useNamingConvention": "off" + }, + "correctness": { + "noNodejsModules": "off", + "noUndeclaredDependencies": "off", + "useImportExtensions": "off" + }, + "complexity": { + "noExcessiveCognitiveComplexity": "off" + }, + "performance": { + "noBarrelFile": "off" + } + } + }, + "formatter": { + "enabled": true, + "useEditorconfig": true + }, + "vcs": { + "clientKind": "git", + "useIgnoreFile": true, + "defaultBranch": "canary", + "enabled": true + }, + "javascript": { "formatter": { - "enabled": true, - "lineWidth": 120, - "indentStyle": "space", - "indentWidth": 4 + "quoteStyle": "single" }, - "vcs": { - "clientKind": "git", - "useIgnoreFile": true, - "defaultBranch": "canary", - "enabled": true - }, - "javascript": { - "formatter": { - "quoteStyle": "single" - }, - "globals": ["JSX"] + "globals": ["JSX"] + }, + "json": { + "formatter": { + "enabled": false + } + }, + "overrides": [ + { + "include": ["[slug].tsx", "[length].tsx", "200.tsx"], + "linter": { + "rules": { "style": { "useFilenamingConvention": "off" } } + } }, - "json": { - "formatter": { - "enabled": false - } + { + "include": ["*.test.ts"], + "linter": { + "rules": { "performance": { "useTopLevelRegex": "off" } } + } }, - "overrides": [ - { - "include": ["[slug].tsx", "[length].tsx", "200.tsx"], - "linter": { "rules": { "style": { "useFilenamingConvention": "off" } } } - }, - { - "include": ["*.test.ts"], - "linter": { "rules": { "performance": { "useTopLevelRegex": "off" } } } - }, - { - "include": ["*.js", "*.cjs"], - "linter": { "rules": { "nursery": { "noCommonJs": "off" } } } - } - ] + { + "include": ["*.js", "*.cjs"], + "linter": { "rules": { "nursery": { "noCommonJs": "off" } } } + } + ] } diff --git a/docs/cache-handler-docs/.eslintrc.cjs b/docs/cache-handler-docs/.eslintrc.cjs deleted file mode 100644 index 941fbd6e..00000000 --- a/docs/cache-handler-docs/.eslintrc.cjs +++ /dev/null @@ -1,9 +0,0 @@ -/** @type {import("eslint").Linter.Config} */ -module.exports = { - root: true, - extends: ['@repo/eslint-config/next.js'], - parser: '@typescript-eslint/parser', - parserOptions: { - project: true, - }, -}; diff --git a/docs/cache-handler-docs/eslint.config.js b/docs/cache-handler-docs/eslint.config.js new file mode 100644 index 00000000..fdd04a63 --- /dev/null +++ b/docs/cache-handler-docs/eslint.config.js @@ -0,0 +1,4 @@ +import { nextJsConfig } from '@repo/eslint-config/next-js'; + +/** @type {import("eslint").Linter.Config} */ +export default nextJsConfig; diff --git a/docs/cache-handler-docs/next.config.js b/docs/cache-handler-docs/next.config.js index e9daf49c..ef3caf00 100644 --- a/docs/cache-handler-docs/next.config.js +++ b/docs/cache-handler-docs/next.config.js @@ -3,16 +3,19 @@ import nextra from 'nextra'; const basePath = process.env.CI ? '/next-shared-cache' : ''; const withNextra = nextra({ - theme: 'nextra-theme-docs', - themeConfig: './theme.config.jsx', - staticImage: true, + theme: 'nextra-theme-docs', + themeConfig: './theme.config.jsx', + staticImage: true, }); export default withNextra({ - output: 'export', - basePath, - images: { unoptimized: true }, - env: { - NEXT_PUBLIC_BASE_URL: basePath, - }, + output: 'export', + basePath, + images: { unoptimized: true }, + env: { + NEXT_PUBLIC_BASE_URL: basePath, + }, + eslint: { + ignoreDuringBuilds: true, + }, }); diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index 2e991e54..c3fc0f1c 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -1,32 +1,30 @@ { - "name": "@repo/cache-handler-docs", - "version": "0.0.0", - "private": true, - "type": "module", - "scripts": { - "build:docs": "next build", - "dev:docs": "next dev", - "eslint:check": "next lint", - "eslint:fix": "next lint --fix", - "start:docs": "serve out" - }, - "dependencies": { - "next": "14.2.15", - "nextra": "3.2.4", - "nextra-theme-docs": "3.2.4", - "react": "18.3.1", - "react-dom": "18.3.1" - }, - "devDependencies": { - "@next/eslint-plugin-next": "14.2.15", - "@repo/eslint-config": "*", - "@repo/typescript-config": "*", - "@types/eslint": "8.56.12", - "@types/node": "22.10.0", - "@types/react": "18.3.12", - "@types/react-dom": "18.3.1", - "eslint": "8.57.1", - "serve": "14.2.4", - "typescript": "5.7.2" - } + "name": "@repo/cache-handler-docs", + "version": "0.0.0", + "private": true, + "type": "module", + "scripts": { + "build:docs": "next build", + "dev:docs": "next dev", + "eslint:check": "next lint", + "eslint:fix": "next lint --fix", + "start:docs": "serve out" + }, + "dependencies": { + "next": "14.2.15", + "nextra": "3.2.4", + "nextra-theme-docs": "3.2.4", + "react": "18.3.1", + "react-dom": "18.3.1" + }, + "devDependencies": { + "@repo/eslint-config": "workspace:*", + "@repo/typescript-config": "workspace:*", + "@types/node": "22.13.1", + "@types/react": "18.3.12", + "@types/react-dom": "18.3.1", + "eslint": "9.20.0", + "serve": "14.2.4", + "typescript": "5.7.3" + } } diff --git a/docs/cache-handler-docs/src/pages/_app.tsx b/docs/cache-handler-docs/src/pages/_app.tsx index 84349555..5431b125 100644 --- a/docs/cache-handler-docs/src/pages/_app.tsx +++ b/docs/cache-handler-docs/src/pages/_app.tsx @@ -1,5 +1,5 @@ import type { AppProps } from 'next/app'; export default function MyApp({ Component, pageProps }: AppProps) { - return ; + return ; } diff --git a/docs/cache-handler-docs/src/pages/_meta.ts b/docs/cache-handler-docs/src/pages/_meta.ts index 175cbd95..05d2bff1 100644 --- a/docs/cache-handler-docs/src/pages/_meta.ts +++ b/docs/cache-handler-docs/src/pages/_meta.ts @@ -1,50 +1,50 @@ export default { - '-- Getting Started': { - type: 'separator', - title: 'Getting Started', - }, - index: 'Introduction', - installation: 'Installation and the First Steps', - usage: 'Usage guides', - '-- Examples': { - type: 'separator', - title: 'Examples', - }, - redis: 'Built-in Redis Handler', - 'cluster-example': { - title: 'Redis Cluster example ↗', - href: 'https://github.com/mauroaccornero/cache-handler-redis-cluster-example', - newWindow: true, - }, - 'k8s-example': { - title: 'Kubernetes example ↗', - href: 'https://github.com/ezeparziale/nextjs-k8s', - newWindow: true, - }, - '-- API Reference': { - type: 'separator', - title: 'API Reference', - }, - 'api-reference': 'Handlers API', - handlers: 'Built-in Handlers', - functions: 'Functions', - '-- Troubleshooting': { - type: 'separator', - title: 'Troubleshooting', - }, - troubleshooting: '', - '-- More': { - type: 'separator', - title: 'More', - }, - 'official-example': { - title: 'Official Next.js template ↗', - href: 'https://github.com/vercel/next.js/tree/canary/examples/cache-handler-redis', - newWindow: true, - }, - 'next.js-link': { - title: 'Next.js Configuring caching Docs ↗', - href: 'https://nextjs.org/docs/app/building-your-application/deploying#configuring-caching', - newWindow: true, - }, + '-- Getting Started': { + type: 'separator', + title: 'Getting Started', + }, + index: 'Introduction', + installation: 'Installation and the First Steps', + usage: 'Usage guides', + '-- Examples': { + type: 'separator', + title: 'Examples', + }, + redis: 'Built-in Redis Handler', + 'cluster-example': { + title: 'Redis Cluster example ↗', + href: 'https://github.com/mauroaccornero/cache-handler-redis-cluster-example', + newWindow: true, + }, + 'k8s-example': { + title: 'Kubernetes example ↗', + href: 'https://github.com/ezeparziale/nextjs-k8s', + newWindow: true, + }, + '-- API Reference': { + type: 'separator', + title: 'API Reference', + }, + 'api-reference': 'Handlers API', + handlers: 'Built-in Handlers', + functions: 'Functions', + '-- Troubleshooting': { + type: 'separator', + title: 'Troubleshooting', + }, + troubleshooting: '', + '-- More': { + type: 'separator', + title: 'More', + }, + 'official-example': { + title: 'Official Next.js template ↗', + href: 'https://github.com/vercel/next.js/tree/canary/examples/cache-handler-redis', + newWindow: true, + }, + 'next.js-link': { + title: 'Next.js Configuring caching Docs ↗', + href: 'https://nextjs.org/docs/app/building-your-application/deploying#configuring-caching', + newWindow: true, + }, }; diff --git a/docs/cache-handler-docs/src/pages/api-reference/_meta.ts b/docs/cache-handler-docs/src/pages/api-reference/_meta.ts index d09bf74a..057b8d73 100644 --- a/docs/cache-handler-docs/src/pages/api-reference/_meta.ts +++ b/docs/cache-handler-docs/src/pages/api-reference/_meta.ts @@ -1,8 +1,8 @@ export default { - 'on-creation': 'onCreation', - 'cache-handler-config': 'CacheHandlerConfig', - 'cache-handler-value': 'CacheHandlerValue', - handler: 'Handler', - 'lifespan-parameters': 'LifespanParameters', - 'ttl-parameters': 'TTLParameters', + 'on-creation': 'onCreation', + 'cache-handler-config': 'CacheHandlerConfig', + 'cache-handler-value': 'CacheHandlerValue', + handler: 'Handler', + 'lifespan-parameters': 'LifespanParameters', + 'ttl-parameters': 'TTLParameters', }; diff --git a/docs/cache-handler-docs/src/pages/api-reference/on-creation.mdx b/docs/cache-handler-docs/src/pages/api-reference/on-creation.mdx index e49cf417..accc7306 100644 --- a/docs/cache-handler-docs/src/pages/api-reference/on-creation.mdx +++ b/docs/cache-handler-docs/src/pages/api-reference/on-creation.mdx @@ -5,7 +5,9 @@ The `onCreation` static method of the `CacheHandler` class is designed to facili The `onCreation` method expects a function of type `OnCreationHook`, which is defined as follows: ```typescript -type OnCreationHook = (context: CacheCreationContext) => Promise | CacheHandlerConfig; +type OnCreationHook = ( + context: CacheCreationContext, +) => Promise | CacheHandlerConfig; ``` ### Arguments @@ -49,7 +51,10 @@ CacheHandler.onCreation(async (context) => { return { handlers: [mainHandler, fallbackHandler], - ttl: { defaultStaleAge: 3600, estimateExpireAge: (staleAge) => staleAge * 2 }, + ttl: { + defaultStaleAge: 3600, + estimateExpireAge: (staleAge) => staleAge * 2, + }, }; }); ``` diff --git a/docs/cache-handler-docs/src/pages/functions/_meta.ts b/docs/cache-handler-docs/src/pages/functions/_meta.ts index dfb9db56..a693e447 100644 --- a/docs/cache-handler-docs/src/pages/functions/_meta.ts +++ b/docs/cache-handler-docs/src/pages/functions/_meta.ts @@ -1,4 +1,4 @@ export default { - 'nesh-cache': 'neshCache', - 'nesh-classic-cache': 'neshClassicCache', + 'nesh-cache': 'neshCache', + 'nesh-classic-cache': 'neshClassicCache', }; diff --git a/docs/cache-handler-docs/src/pages/functions/nesh-classic-cache.mdx b/docs/cache-handler-docs/src/pages/functions/nesh-classic-cache.mdx index f601055f..4b29626b 100644 --- a/docs/cache-handler-docs/src/pages/functions/nesh-classic-cache.mdx +++ b/docs/cache-handler-docs/src/pages/functions/nesh-classic-cache.mdx @@ -7,7 +7,8 @@ import { Callout } from 'nextra/components'; This function is experimental, the API may change in the future. Use with caution. - Cache entries created with `neshClassicCache` can be revalidated only by the [`revalidateTag` + Cache entries created with `neshClassicCache` can be revalidated only by the + [`revalidateTag` ↗](https://nextjs.org/docs/app/api-reference/functions/revalidateTag) method. @@ -67,7 +68,10 @@ export default async function handler(request, response) { const url = new URL('https://api.example.com/data.json'); // Add tags to be able to revalidate the cache - const data = await cachedAxios({ revalidate, tags: [url.pathname], responseContext: response }, url); + const data = await cachedAxios( + { revalidate, tags: [url.pathname], responseContext: response }, + url, + ); if (!data) { response.status(404).send('Not found'); diff --git a/docs/cache-handler-docs/src/pages/handlers/_meta.ts b/docs/cache-handler-docs/src/pages/handlers/_meta.ts index 449c155d..27ff84ca 100644 --- a/docs/cache-handler-docs/src/pages/handlers/_meta.ts +++ b/docs/cache-handler-docs/src/pages/handlers/_meta.ts @@ -1,6 +1,6 @@ export default { - 'redis-stack': 'redis-stack', - 'redis-strings': 'redis-strings', - 'local-lru': 'local-lru', - 'experimental-redis-cluster': 'experimental-redis-cluster', + 'redis-stack': 'redis-stack', + 'redis-strings': 'redis-strings', + 'local-lru': 'local-lru', + 'experimental-redis-cluster': 'experimental-redis-cluster', }; diff --git a/docs/cache-handler-docs/src/pages/handlers/experimental-redis-cluster.mdx b/docs/cache-handler-docs/src/pages/handlers/experimental-redis-cluster.mdx index 1cf8c7b4..ba1eec86 100644 --- a/docs/cache-handler-docs/src/pages/handlers/experimental-redis-cluster.mdx +++ b/docs/cache-handler-docs/src/pages/handlers/experimental-redis-cluster.mdx @@ -21,8 +21,8 @@ const redisHandler = createClusterHandler({ ``` - This Handler is currently experimental and subject to change or removal in future updates without a major version - increment. Use with caution. + This Handler is currently experimental and subject to change or removal in + future updates without a major version increment. Use with caution. The `experimental-redis-cluster` Handler uses the Redis Cluster as the cache store. It is a simple and fast cache handler that is suitable for most applications. This Handler is ideal for applications that require fast and efficient cache management without the need for advanced features like full-text search for custom revalidation strategies. diff --git a/docs/cache-handler-docs/src/pages/handlers/local-lru.mdx b/docs/cache-handler-docs/src/pages/handlers/local-lru.mdx index 777597ab..d493a09f 100644 --- a/docs/cache-handler-docs/src/pages/handlers/local-lru.mdx +++ b/docs/cache-handler-docs/src/pages/handlers/local-lru.mdx @@ -16,8 +16,8 @@ const localHandler = createLocalHandler({ The `local-lru` Handler uses a [`lru-cache` ↗](https://www.npmjs.com/package/lru-cache) instance as the cache store. It stores the cache in memory and evicts the least recently used entries when the cache reaches its limits. You can use this Handler as a fallback cache when the shared cache is unavailable. - The `local-lru` Handler stores the cache in memory. Make sure to set the limits according to your server's memory - capacity. + The `local-lru` Handler stores the cache in memory. Make sure to set the + limits according to your server's memory capacity. ## API diff --git a/docs/cache-handler-docs/src/pages/handlers/redis-stack.mdx b/docs/cache-handler-docs/src/pages/handlers/redis-stack.mdx index f70daa95..46e563cc 100644 --- a/docs/cache-handler-docs/src/pages/handlers/redis-stack.mdx +++ b/docs/cache-handler-docs/src/pages/handlers/redis-stack.mdx @@ -20,7 +20,8 @@ const redisHandler = createRedisHandler({ The `redis-stack` Handler uses Redis with `RedisJSON` and `RedisSearch` modules as the cache store. It is a full-featured cache handler that supports JSON objects and full-text search, offering a trade-off between performance and flexibility. While it may sacrifice some speed compared to the [`redis-strings`](/handlers/redis-strings) Handler, it empowers you to manage cache on demand more efficiently and faster. It also allows for more versatile cache usage from your application, such as creating custom revalidating strategies and functions. The `redis-stack` Handler is suitable for applications that require advanced cache management and search capabilities. - Make sure that you have the `RedisJSON` and `RedisSearch` modules installed and enabled in your Redis server. + Make sure that you have the `RedisJSON` and `RedisSearch` modules installed + and enabled in your Redis server. ## API diff --git a/docs/cache-handler-docs/src/pages/installation.mdx b/docs/cache-handler-docs/src/pages/installation.mdx index 8e754c6d..aefe5eaa 100644 --- a/docs/cache-handler-docs/src/pages/installation.mdx +++ b/docs/cache-handler-docs/src/pages/installation.mdx @@ -90,8 +90,9 @@ pnpm create next-app --example cache-handler-redis cache-handler-redis-app ``` - Do not import @neshca/cache-handler to your client components or pages. It is only meant to be used in{' '} - cache-handler.mjs files. + Do not import @neshca/cache-handler to your client components + or pages. It is only meant to be used in cache-handler.mjs{' '} + files. 3. **Integrate with Next.js**: @@ -99,7 +100,10 @@ pnpm create next-app --example cache-handler-redis cache-handler-redis-app ```js filename="next.config.js" copy const nextConfig = { - cacheHandler: process.env.NODE_ENV === 'production' ? require.resolve('./cache-handler.mjs') : undefined, + cacheHandler: + process.env.NODE_ENV === 'production' + ? require.resolve('./cache-handler.mjs') + : undefined, // Use `experimental` option instead of the `cacheHandler` property when using Next.js versions from 13.5.1 to 14.0.4 /* experimental: { incrementalCacheHandlerPath: @@ -120,7 +124,9 @@ pnpm create next-app --example cache-handler-redis cache-handler-redis-app ```js filename="instrumentation.ts" copy export async function register() { if (process.env.NEXT_RUNTIME === 'nodejs') { - const { registerInitialCache } = await import('@neshca/cache-handler/instrumentation'); + const { registerInitialCache } = await import( + '@neshca/cache-handler/instrumentation' + ); // Assuming that your CacheHandler configuration is in the root of the project and the instrumentation is in the src directory. // Please adjust the path accordingly. // CommonJS CacheHandler configuration is also supported. @@ -131,8 +137,9 @@ pnpm create next-app --example cache-handler-redis cache-handler-redis-app ``` - Use NEXT_RUNTIME environment variable to ensure that the instrumentation is only executed in Node.js. - Use dynamic import to avoid bundling issues. + Use NEXT_RUNTIME environment variable to ensure that the + instrumentation is only executed in Node.js. Use dynamic import to avoid + bundling issues. This instrumentation will fill the cache with the initial data when the application starts. The duration of this process may vary based on the number and size of pages, routes, and fetch calls. For more information refer to the [Populating the Cache with the initial data](/usage/populating-cache-on-start) section. diff --git a/docs/cache-handler-docs/src/pages/redis.mdx b/docs/cache-handler-docs/src/pages/redis.mdx index d7a7c9ac..2cb1588f 100644 --- a/docs/cache-handler-docs/src/pages/redis.mdx +++ b/docs/cache-handler-docs/src/pages/redis.mdx @@ -3,8 +3,9 @@ import { Callout } from 'nextra/components'; ## `redis-stack` Handler example - In this example, we assume that in your deployment, you have `REDIS_URL` environment variable set to the URL of your - Redis instance. You can use any other way to set the URL. + In this example, we assume that in your deployment, you have `REDIS_URL` + environment variable set to the URL of your Redis instance. You can use any + other way to set the URL. See the [`redis-stack` Handler](/handlers/redis-stack) documentation for more information and requirements for the Redis server. @@ -57,7 +58,9 @@ CacheHandler.onCreation(async () => { console.info('Redis client disconnected.'); }) .catch(() => { - console.warn('Failed to quit the Redis client after failing to connect.'); + console.warn( + 'Failed to quit the Redis client after failing to connect.', + ); }); } } @@ -76,7 +79,9 @@ CacheHandler.onCreation(async () => { // Fallback to LRU handler if Redis client is not available. // The application will still work, but the cache will be in memory only and not shared. handler = createLruHandler(); - console.warn('Falling back to LRU handler because Redis client is not available.'); + console.warn( + 'Falling back to LRU handler because Redis client is not available.', + ); } return { diff --git a/docs/cache-handler-docs/src/pages/troubleshooting.mdx b/docs/cache-handler-docs/src/pages/troubleshooting.mdx index 444a93c6..cedb189a 100644 --- a/docs/cache-handler-docs/src/pages/troubleshooting.mdx +++ b/docs/cache-handler-docs/src/pages/troubleshooting.mdx @@ -77,7 +77,10 @@ If the cache handler is not active: 2. Ensure that the `NEXT_PRIVATE_DEBUG_CACHE` environment variable is set. To verify, add the following to your `next.config.js` file: ```js filename="next.config.js" copy - console.log('NEXT_PRIVATE_DEBUG_CACHE', process.env.NEXT_PRIVATE_DEBUG_CACHE); + console.log( + 'NEXT_PRIVATE_DEBUG_CACHE', + process.env.NEXT_PRIVATE_DEBUG_CACHE, + ); ``` When you build or run your application, `NEXT_PRIVATE_DEBUG_CACHE 1` should appear in your console. diff --git a/docs/cache-handler-docs/src/pages/usage/_meta.ts b/docs/cache-handler-docs/src/pages/usage/_meta.ts index e2132fbf..58c4850d 100644 --- a/docs/cache-handler-docs/src/pages/usage/_meta.ts +++ b/docs/cache-handler-docs/src/pages/usage/_meta.ts @@ -1,8 +1,8 @@ export default { - 'creating-a-custom-handler': 'Creating a Custom Handler', - 'on-demand-revalidation': 'On-demand revalidation', - 'opt-out-cache-on-build': 'Opt out the cache on Build', - 'development-environment': '', - 'build-id-as-prefix-key': 'Build Id as a Prefix Key', - 'populating-cache-on-start': 'Populating the Cache with Pre-rendered Pages', + 'creating-a-custom-handler': 'Creating a Custom Handler', + 'on-demand-revalidation': 'On-demand revalidation', + 'opt-out-cache-on-build': 'Opt out the cache on Build', + 'development-environment': '', + 'build-id-as-prefix-key': 'Build Id as a Prefix Key', + 'populating-cache-on-start': 'Populating the Cache with Pre-rendered Pages', }; diff --git a/docs/cache-handler-docs/src/pages/usage/build-id-as-prefix-key.mdx b/docs/cache-handler-docs/src/pages/usage/build-id-as-prefix-key.mdx index 4c34e420..a8e945cb 100644 --- a/docs/cache-handler-docs/src/pages/usage/build-id-as-prefix-key.mdx +++ b/docs/cache-handler-docs/src/pages/usage/build-id-as-prefix-key.mdx @@ -39,7 +39,8 @@ CacheHandler.onCreation(async () => { #### Using without `generateBuildId` - In this case, you must build your app once and use the same build to deploy to all environments. + In this case, you must build your app once and use the same build to deploy to + all environments. ```js filename="next.config.js" copy diff --git a/docs/cache-handler-docs/src/pages/usage/creating-a-custom-handler.mdx b/docs/cache-handler-docs/src/pages/usage/creating-a-custom-handler.mdx index 6d4d3757..ea24cc0f 100644 --- a/docs/cache-handler-docs/src/pages/usage/creating-a-custom-handler.mdx +++ b/docs/cache-handler-docs/src/pages/usage/creating-a-custom-handler.mdx @@ -74,7 +74,9 @@ CacheHandler.onCreation(async () => { // Create a new AbortSignal with a timeout for the Redis operation. // By default, redis client operations will wait indefinitely. - const options = commandOptions({ signal: AbortSignal.timeout(timeoutMs) }); + const options = commandOptions({ + signal: AbortSignal.timeout(timeoutMs), + }); // Get the value from Redis. // We use the key prefix to avoid key collisions with other data in Redis. @@ -112,9 +114,15 @@ CacheHandler.onCreation(async () => { // Iterate over all revalidation times. for (const timeString of revalidationTimes) { // If the revalidation time is greater than the last modified time of the cache value, - if (timeString && Number.parseInt(timeString, 10) > cacheValue.lastModified) { + if ( + timeString && + Number.parseInt(timeString, 10) > cacheValue.lastModified + ) { // Delete the key from Redis. - await client.unlink(commandOptions({ signal: AbortSignal.timeout(timeoutMs) }), keyPrefix + key); + await client.unlink( + commandOptions({ signal: AbortSignal.timeout(timeoutMs) }), + keyPrefix + key, + ); // Return null to indicate cache miss. return null; @@ -129,22 +137,37 @@ CacheHandler.onCreation(async () => { assertClientIsReady(); // Create a new AbortSignal with a timeout for the Redis operation. - const options = commandOptions({ signal: AbortSignal.timeout(timeoutMs) }); + const options = commandOptions({ + signal: AbortSignal.timeout(timeoutMs), + }); // Redis stores strings, so we need to stringify the JSON. - const setOperation = client.set(options, keyPrefix + key, JSON.stringify(cacheHandlerValue)); + const setOperation = client.set( + options, + keyPrefix + key, + JSON.stringify(cacheHandlerValue), + ); // If the cacheHandlerValue has a lifespan, set the automatic expiration. // cacheHandlerValue.lifespan can be null if the value is the page from the Pages Router without getStaticPaths or with `fallback: false` // so, we need to check if it exists before using it const expireOperation = cacheHandlerValue.lifespan - ? client.expireAt(options, keyPrefix + key, cacheHandlerValue.lifespan.expireAt) + ? client.expireAt( + options, + keyPrefix + key, + cacheHandlerValue.lifespan.expireAt, + ) : undefined; // If the cache handler value has tags, set the tags. // We store them separately to save time to retrieve them in the `revalidateTag` method. const setTagsOperation = cacheHandlerValue.tags.length - ? client.hSet(options, keyPrefix + sharedTagsKey, key, JSON.stringify(cacheHandlerValue.tags)) + ? client.hSet( + options, + keyPrefix + sharedTagsKey, + key, + JSON.stringify(cacheHandlerValue.tags), + ) : undefined; // Wait for all operations to complete. @@ -227,7 +250,10 @@ CacheHandler.onCreation(async () => { // Update the tags in Redis by deleting the revalidated tags. const updateTagsOperation = client.hDel( // Use the isolated option to prevent the command from being executed on the main connection. - { isolated: true, ...commandOptions({ signal: AbortSignal.timeout(timeoutMs) }) }, + { + isolated: true, + ...commandOptions({ signal: AbortSignal.timeout(timeoutMs) }), + }, keyPrefix + sharedTagsKey, tagsToDelete, ); diff --git a/docs/cache-handler-docs/src/pages/usage/development-environment.mdx b/docs/cache-handler-docs/src/pages/usage/development-environment.mdx index 9ad77146..2e9de1b2 100644 --- a/docs/cache-handler-docs/src/pages/usage/development-environment.mdx +++ b/docs/cache-handler-docs/src/pages/usage/development-environment.mdx @@ -6,7 +6,10 @@ The easiest way to turn off the cache handler in a development environment is to ```js filename="next.config.js" copy const nextConfig = { - cacheHandler: process.env.NODE_ENV === 'production' ? require.resolve('./cache-handler.mjs') : undefined, + cacheHandler: + process.env.NODE_ENV === 'production' + ? require.resolve('./cache-handler.mjs') + : undefined, // Use `experimental` option instead of the `cacheHandler` property when using Next.js versions from 13.5.1 to 14.0.4 /* experimental: { incrementalCacheHandlerPath: diff --git a/docs/cache-handler-docs/src/pages/usage/populating-cache-on-start.mdx b/docs/cache-handler-docs/src/pages/usage/populating-cache-on-start.mdx index ec5b5765..9c74819e 100644 --- a/docs/cache-handler-docs/src/pages/usage/populating-cache-on-start.mdx +++ b/docs/cache-handler-docs/src/pages/usage/populating-cache-on-start.mdx @@ -9,7 +9,9 @@ Next.js pre-renders pages during the build process and stores them on the disk. ```js filename="instrumentation.ts" copy export async function register() { if (process.env.NEXT_RUNTIME === 'nodejs') { - const { registerInitialCache } = await import('@neshca/cache-handler/instrumentation'); + const { registerInitialCache } = await import( + '@neshca/cache-handler/instrumentation' + ); // Assuming that your CacheHandler configuration is in the root of the project and the instrumentation is in the src directory. // Please adjust the path accordingly. // CommonJS CacheHandler configuration is also supported. @@ -27,8 +29,9 @@ export async function register() { ``` - Use NEXT_RUNTIME environment variable to ensure that the instrumentation is only executed in Node.js. Use - dynamic import to avoid bundling issues. + Use NEXT_RUNTIME environment variable to ensure that the + instrumentation is only executed in Node.js. Use dynamic import to avoid + bundling issues. This instrumentation will fill the cache with the initial data when the application starts. The duration of this process may vary based on the number and size of pages, routes, and fetch calls. diff --git a/docs/cache-handler-docs/theme.config.jsx b/docs/cache-handler-docs/theme.config.jsx index 434f9703..bee13d60 100644 --- a/docs/cache-handler-docs/theme.config.jsx +++ b/docs/cache-handler-docs/theme.config.jsx @@ -2,53 +2,80 @@ import { useRouter } from 'next/router'; import { useConfig } from 'nextra-theme-docs'; function Head() { - const { asPath } = useRouter(); - const { frontMatter, title } = useConfig(); - const url = `https://caching-tools.github.io/next-shared-cache${asPath}`; + const { asPath } = useRouter(); + const { frontMatter, title } = useConfig(); + const url = `https://caching-tools.github.io/next-shared-cache${asPath}`; - const currentTitle = asPath === '/' ? '@neshca/cache-handler' : `${title} — @neshca/cache-handler`; + const currentTitle = + asPath === '/' + ? '@neshca/cache-handler' + : `${title} — @neshca/cache-handler`; - return ( - <> - - - - - - - {currentTitle} - - ); + return ( + <> + + + + + + + {currentTitle} + + ); } export default { - logo:
@neshca/cache-handler
, - project: { - link: 'https://github.com/caching-tools/next-shared-cache', - }, - docsRepositoryBase: 'https://github.com/caching-tools/next-shared-cache/tree/canary/docs/cache-handler-docs', - head: Head, - footer: { - content: ( - - MIT {new Date().getFullYear()} ©{' '} - - @neshca/cache-handler - - . - - ), - }, - banner: { - key: 'version-1.9.0', - content: ( -
- 🎉 Version 1.9.0 is out! This is the final release supporting Next.js 13.5.1-14.x. The upcoming version - 2.0.0 will require Next.js 15. -
- ), - }, + logo:
@neshca/cache-handler
, + project: { + link: 'https://github.com/caching-tools/next-shared-cache', + }, + docsRepositoryBase: + 'https://github.com/caching-tools/next-shared-cache/tree/canary/docs/cache-handler-docs', + head: Head, + footer: { + content: ( + + MIT {new Date().getFullYear()} ©{' '} + + @neshca/cache-handler + + . + + ), + }, + banner: { + key: 'version-1.9.0', + content: ( +
+ 🎉 Version 1.9.0 is out! This is the final release supporting Next.js + 13.5.1-14.x. The upcoming version 2.0.0 will require Next.js 15. +
+ ), + }, }; diff --git a/docs/cache-handler-docs/tsconfig.json b/docs/cache-handler-docs/tsconfig.json index 47cee942..862dcdab 100644 --- a/docs/cache-handler-docs/tsconfig.json +++ b/docs/cache-handler-docs/tsconfig.json @@ -1,16 +1,22 @@ { - "extends": "@repo/typescript-config/nextjs.json", - "compilerOptions": { - "paths": { - "cache-handler-docs/*": ["./src/*"] - }, - "plugins": [ - { - "name": "next" - } - ] + "extends": "@repo/typescript-config/nextjs.json", + "compilerOptions": { + "paths": { + "cache-handler-docs/*": ["./src/*"] }, - "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx", ".next/types/**/*.ts", "run-app-instances.ts"], + "plugins": [ + { + "name": "next" + } + ] + }, + "include": [ + "next-env.d.ts", + "**/*.ts", + "**/*.tsx", + ".next/types/**/*.ts", + "run-app-instances.ts" + ], - "exclude": ["node_modules"] + "exclude": ["node_modules"] } diff --git a/docs/contributing/cache-handler.md b/docs/contributing/cache-handler.md index 0d42c558..aefc0832 100644 --- a/docs/contributing/cache-handler.md +++ b/docs/contributing/cache-handler.md @@ -27,14 +27,14 @@ To integrate Redis as a cache store: To test changes in `@neshca/cache-handler`, utilize the `@repo/cache-testing` app. Due to this app's implementation of SSG and ISR, initiate the local backend first: ```bash - npm run dev:packages + pnpm dev:packages ``` Subsequently, in a distinct terminal, compile and launch the `@repo/cache-testing` app: ```bash - npm run build:test-app - npm run start:test-app + pnpm build:test-app + pnpm start:test-app ``` **Note**: Always rebuild `@repo/cache-testing` after every rebuild of `@neshca/cache-handler`. @@ -44,8 +44,8 @@ To integrate Redis as a cache store: Initiate local tests with: ```bash -npm run playwright:install -w @repo/cache-testing -npm run e2e:ui -w @repo/cache-testing +pnpm -F @repo/cache-testing playwright:install +pnpm -F @repo/cache-testing e2e:ui ``` **Important**: Clear the Redis DB before executing tests: diff --git a/docs/contributing/monorepo.md b/docs/contributing/monorepo.md index e25309b6..3d966737 100644 --- a/docs/contributing/monorepo.md +++ b/docs/contributing/monorepo.md @@ -7,7 +7,7 @@ If you're interested in contributing or making modifications to this monorepo, f To ensure that all required packages are correctly installed with the versions specified in the `package-lock.json` file, execute: ```bash -npm ci +pnpm i ``` ### 2. Build the Project @@ -15,7 +15,7 @@ npm ci After the dependencies are installed, compile internal dependencies with: ```bash -npm run build:packages +pnpm build:packages ``` ### 3. Installing Local Dependencies @@ -23,7 +23,7 @@ npm run build:packages After building the project, you'll need to install the local dependencies to enable their usage from the command line: ```bash -npm i +pnpm i ``` **Note**: Don't be alarmed if you notice updates in the `package-lock.json` file after this step. These changes are expected and can be safely committed to your version control. @@ -37,5 +37,5 @@ Refer to the [`@neshca/cache-handler` contribution guidelines](./cache-handler.m To ensure consistent and high-quality code, adhere to our coding and style guidelines. Run the required checks and fix errors and warnings before committing your code: ```bash -npm run codestyle:fix +pnpm codestyle:fix ``` diff --git a/internal/backend/package.json b/internal/backend/package.json index e9844ee8..b41fcd8c 100644 --- a/internal/backend/package.json +++ b/internal/backend/package.json @@ -1,22 +1,22 @@ { - "name": "@repo/backend", - "version": "0.0.0", - "private": true, - "license": "MIT", - "type": "module", - "scripts": { - "dev": "tsx --watch ./src/backend.ts", - "start": "tsx ./src/backend.ts" - }, - "dependencies": { - "fastify": "5.1.0", - "pino": "9.5.0" - }, - "devDependencies": { - "@repo/typescript-config": "*", - "@types/node": "22.10.0", - "pino-pretty": "13.0.0", - "tsx": "4.19.2", - "typescript": "5.7.2" - } + "name": "@repo/backend", + "version": "0.0.0", + "private": true, + "license": "MIT", + "type": "module", + "scripts": { + "dev": "tsx --watch ./src/backend.ts", + "start": "tsx ./src/backend.ts" + }, + "dependencies": { + "fastify": "5.2.1", + "pino": "9.6.0" + }, + "devDependencies": { + "@repo/typescript-config": "workspace:*", + "@types/node": "22.13.1", + "pino-pretty": "13.0.0", + "tsx": "4.19.2", + "typescript": "5.7.3" + } } diff --git a/internal/backend/src/backend.ts b/internal/backend/src/backend.ts index 05fc053b..8986e795 100644 --- a/internal/backend/src/backend.ts +++ b/internal/backend/src/backend.ts @@ -6,17 +6,17 @@ import Fastify from 'fastify'; import { pino } from 'pino'; const logger = pino({ - transport: { - target: 'pino-pretty', - }, - level: process.env.CI ? 'silent' : 'info', + transport: { + target: 'pino-pretty', + }, + level: process.env.CI ? 'silent' : 'info', }); const host = process.env.HOST ?? 'localhost'; const port = Number.parseInt(process.env.PORT ?? '8081', 10); function createCounter(): [count: number, lastRequestTime: number] { - return [0, Date.now()]; + return [0, Date.now()]; } const pathMeta = new Map(); @@ -24,32 +24,34 @@ const pathMeta = new Map(); const server = Fastify(); server.addHook('preHandler', (request, _reply, done) => { - let meta = pathMeta.get(request.url); + let meta = pathMeta.get(request.url); - if (!meta) { - meta = createCounter(); - pathMeta.set(request.url, meta); - } + if (!meta) { + meta = createCounter(); + pathMeta.set(request.url, meta); + } - const [, lastRequestTime] = meta; + const [, lastRequestTime] = meta; - const requestTime = Date.now(); + const requestTime = Date.now(); - logger.info('%s delay %d', request.url, requestTime - lastRequestTime); + logger.info('%s delay %d', request.url, requestTime - lastRequestTime); - meta[0] += 1; - meta[1] = requestTime; + meta[0] += 1; + meta[1] = requestTime; - done(); + done(); }); -server.get('/count/:routerType/:preRendered:/:fallback/:page', async (request, reply): Promise => { +server.get( + '/count/:routerType/:preRendered:/:fallback/:page', + async (request, reply): Promise => { const { page } = request.params as { page: string }; const meta = pathMeta.get(request.url); if (!meta) { - throw new Error('meta not found'); + throw new Error('meta not found'); } const [count] = meta; @@ -57,49 +59,65 @@ server.get('/count/:routerType/:preRendered:/:fallback/:page', async (request, r const result = { count, unixTimeMs: Date.now() }; switch (page) { - case '404': { - await reply.code(404).header('Content-Type', 'application/json; charset=utf-8').send(result); - break; - } - case '200': { - await reply.code(200).header('Content-Type', 'application/json; charset=utf-8').send(result); - break; - } - case 'alternate-200-404': { - await reply - .code(count % 2 === 0 ? 200 : 404) - .header('Content-Type', 'application/json; charset=utf-8') - .send(result); - break; - } - default: { - throw new Error(`Invalid page: ${page}`); - } + case '404': { + await reply + .code(404) + .header('Content-Type', 'application/json; charset=utf-8') + .send(result); + break; + } + case '200': { + await reply + .code(200) + .header('Content-Type', 'application/json; charset=utf-8') + .send(result); + break; + } + case 'alternate-200-404': { + await reply + .code(count % 2 === 0 ? 200 : 404) + .header('Content-Type', 'application/json; charset=utf-8') + .send(result); + break; + } + default: { + throw new Error(`Invalid page: ${page}`); + } } -}); + }, +); -server.get('/randomHex/:routerType/:length', async (request, reply): Promise => { +server.get( + '/randomHex/:routerType/:length', + async (request, reply): Promise => { const { length = '100000' } = request.params as { length?: string }; const randomHex = randomBytes(Number.parseInt(length, 10)).toString('hex'); const result = { randomHex, unixTimeMs: Date.now() }; - await reply.code(200).header('Content-Type', 'application/json; charset=utf-8').send(result); -}); + await reply + .code(200) + .header('Content-Type', 'application/json; charset=utf-8') + .send(result); + }, +); server.get('/time', async (_request, reply): Promise => { - const result = { unixTimeMs: Date.now() }; + const result = { unixTimeMs: Date.now() }; - await reply.code(200).header('Content-Type', 'application/json; charset=utf-8').send(result); + await reply + .code(200) + .header('Content-Type', 'application/json; charset=utf-8') + .send(result); }); server - .listen({ port, host }) - .then((address) => { - logger.info('@repo/backend listening on %s', address); - }) - .catch((err) => { - logger.error(err); - process.exit(1); - }); + .listen({ port, host }) + .then((address) => { + logger.info('@repo/backend listening on %s', address); + }) + .catch((err) => { + logger.error(err); + process.exit(1); + }); diff --git a/internal/backend/tsconfig.json b/internal/backend/tsconfig.json index b0d5b0ac..9c5847bc 100644 --- a/internal/backend/tsconfig.json +++ b/internal/backend/tsconfig.json @@ -1,5 +1,5 @@ { - "extends": "@repo/typescript-config/library.json", - "include": ["."], - "exclude": ["dist", "node_modules"] + "extends": "@repo/typescript-config/base.json", + "include": ["."], + "exclude": ["dist", "node_modules"] } diff --git a/internal/eslint-config/next.js b/internal/eslint-config/next.js index 96d46470..1c180fa9 100644 --- a/internal/eslint-config/next.js +++ b/internal/eslint-config/next.js @@ -1,39 +1,59 @@ -const { resolve } = require('node:path'); +import js from '@eslint/js'; +import pluginNext from '@next/eslint-plugin-next'; +import eslintConfigPrettier from 'eslint-config-prettier'; +import pluginReact from 'eslint-plugin-react'; +import pluginReactHooks from 'eslint-plugin-react-hooks'; +import turboPlugin from 'eslint-plugin-turbo'; +import globals from 'globals'; +import tseslint from 'typescript-eslint'; -const project = resolve(process.cwd(), 'tsconfig.json'); - -/** @type {import("eslint").Linter.Config} */ -module.exports = { - extends: [ - 'eslint:recommended', - 'prettier', - require.resolve('@vercel/style-guide/eslint/next'), - 'eslint-config-turbo', - ], - globals: { - React: true, - JSX: true, +/** + * A shared ESLint configuration for the repository. + * + * @type {import("eslint").Linter.Config} + * */ +export const nextJsConfig = [ + js.configs.recommended, + eslintConfigPrettier, + ...tseslint.configs.recommended, + { + plugins: { + turbo: turboPlugin, + }, + rules: { + 'turbo/no-undeclared-env-vars': 'warn', }, - env: { - node: true, - browser: true, + }, + { + ignores: ['dist/**'], + }, + { + ...pluginReact.configs.flat.recommended, + languageOptions: { + ...pluginReact.configs.flat.recommended.languageOptions, + globals: { + ...globals.serviceworker, + }, + }, + }, + { + plugins: { + '@next/next': pluginNext, + }, + rules: { + ...pluginNext.configs.recommended.rules, + ...pluginNext.configs['core-web-vitals'].rules, }, - plugins: ['only-warn'], - settings: { - 'import/resolver': { - typescript: { - project, - }, - }, + }, + { + plugins: { + 'react-hooks': pluginReactHooks, }, - ignorePatterns: [ - // Ignore dotfiles - '.*.js', - 'node_modules/', - ], - overrides: [{ files: ['*.js?(x)', '*.ts?(x)'] }], + settings: { react: { version: 'detect' } }, rules: { - 'import/no-default-export': 'off', - 'no-console': 'off', + ...pluginReactHooks.configs.recommended.rules, + // React scope no longer necessary with new JSX transform. + 'react/react-in-jsx-scope': 'off', }, -}; + }, +]; diff --git a/internal/eslint-config/package.json b/internal/eslint-config/package.json index 626a9eef..64df5e4e 100644 --- a/internal/eslint-config/package.json +++ b/internal/eslint-config/package.json @@ -1,17 +1,21 @@ { - "name": "@repo/eslint-config", - "version": "0.0.0", - "private": true, - "files": [ - "next.js" - ], - "devDependencies": { - "@typescript-eslint/eslint-plugin": "7.18.0", - "@typescript-eslint/parser": "7.18.0", - "@vercel/style-guide": "6.0.0", - "eslint-config-prettier": "9.1.0", - "eslint-config-turbo": "2.3.2", - "eslint-plugin-only-warn": "1.1.0", - "typescript": "5.7.2" - } + "name": "@repo/eslint-config", + "version": "0.0.0", + "private": true, + "type": "module", + "exports": { + "./next-js": "./next.js" + }, + "devDependencies": { + "@eslint/js": "9.20.0", + "@next/eslint-plugin-next": "15.1.6", + "eslint": "9.20.0", + "eslint-config-prettier": "10.0.1", + "eslint-plugin-react": "7.37.4", + "eslint-plugin-react-hooks": "5.1.0", + "eslint-plugin-turbo": "2.4.0", + "globals": "15.14.0", + "typescript": "5.7.3", + "typescript-eslint": "8.23.0" + } } diff --git a/internal/next-common/package.json b/internal/next-common/package.json index f255ecc1..d8d570ac 100644 --- a/internal/next-common/package.json +++ b/internal/next-common/package.json @@ -1,18 +1,18 @@ { - "name": "@repo/next-common", - "version": "0.0.0", - "private": true, - "license": "MIT", - "type": "module", - "exports": { - "types": "./src/next-common.ts" - }, - "dependencies": { - "next": "14.2.15" - }, - "devDependencies": { - "@repo/typescript-config": "*", - "@types/node": "22.10.0", - "typescript": "5.7.2" - } + "name": "@repo/next-common", + "version": "0.0.0", + "private": true, + "license": "MIT", + "type": "module", + "exports": { + "types": "./src/next-common.ts" + }, + "dependencies": { + "next": "14.2.15" + }, + "devDependencies": { + "@repo/typescript-config": "workspace:*", + "@types/node": "22.13.1", + "typescript": "5.7.3" + } } diff --git a/internal/next-common/src/next-common.ts b/internal/next-common/src/next-common.ts index 41dc4788..532410bc 100644 --- a/internal/next-common/src/next-common.ts +++ b/internal/next-common/src/next-common.ts @@ -1,24 +1,30 @@ // biome-ignore lint/style/useNodejsImportProtocol: RollupError: "OutgoingHttpHeaders" is not exported by "node:http" import type { OutgoingHttpHeaders } from 'http'; -import type { CacheHandler, CacheHandlerValue as NextCacheHandlerValue } from 'next/dist/server/lib/incremental-cache'; +import type { + CacheHandler, + CacheHandlerValue as NextCacheHandlerValue, +} from 'next/dist/server/lib/incremental-cache'; import type FileSystemCache from 'next/dist/server/lib/incremental-cache/file-system-cache'; import type { IncrementalCacheValue } from 'next/dist/server/response-cache/types'; export type { PrerenderManifest } from 'next/dist/build'; -export type { CacheHandler, CacheHandlerContext } from 'next/dist/server/lib/incremental-cache'; export type { - CachedRedirectValue, - CachedRouteValue, - CachedImageValue, - CachedFetchValue, - IncrementalCacheValue, - IncrementalCacheEntry, + CacheHandler, + CacheHandlerContext, +} from 'next/dist/server/lib/incremental-cache'; +export type { + CachedRedirectValue, + CachedRouteValue, + CachedImageValue, + CachedFetchValue, + IncrementalCacheValue, + IncrementalCacheEntry, } from 'next/dist/server/response-cache/types'; export type NextRouteMetadata = { - status: number | undefined; - headers: OutgoingHttpHeaders | undefined; - postponed: string | undefined; + status: number | undefined; + headers: OutgoingHttpHeaders | undefined; + postponed: string | undefined; }; export type Revalidate = false | number; @@ -27,87 +33,105 @@ export type Revalidate = false | number; * A set of time periods and timestamps for controlling cache behavior. */ export type LifespanParameters = { - /** - * The Unix timestamp (in seconds) for when the cache entry was last modified. - */ - readonly lastModifiedAt: number; - /** - * The Unix timestamp (in seconds) for when the cache entry entry becomes stale. - * After this time, the entry is considered staled and may be used. - */ - readonly staleAt: number; - /** - * The Unix timestamp (in seconds) for when the cache entry must be removed from the cache. - * After this time, the entry is considered expired and should not be used. - */ - readonly expireAt: number; - /** - * Time in seconds before the cache entry becomes stale. - */ - readonly staleAge: number; - /** - * Time in seconds before the cache entry becomes expired. - */ - readonly expireAge: number; - /** - * Value from Next.js revalidate option. May be false if the page has no revalidate option or the revalidate option is set to false. - */ - readonly revalidate: Revalidate | undefined; + /** + * The Unix timestamp (in seconds) for when the cache entry was last modified. + */ + readonly lastModifiedAt: number; + /** + * The Unix timestamp (in seconds) for when the cache entry entry becomes stale. + * After this time, the entry is considered staled and may be used. + */ + readonly staleAt: number; + /** + * The Unix timestamp (in seconds) for when the cache entry must be removed from the cache. + * After this time, the entry is considered expired and should not be used. + */ + readonly expireAt: number; + /** + * Time in seconds before the cache entry becomes stale. + */ + readonly staleAge: number; + /** + * Time in seconds before the cache entry becomes expired. + */ + readonly expireAge: number; + /** + * Value from Next.js revalidate option. May be false if the page has no revalidate option or the revalidate option is set to false. + */ + readonly revalidate: Revalidate | undefined; }; export type CacheHandlerValue = NextCacheHandlerValue & { - /** - * Timestamp in milliseconds when the cache entry was last modified. - */ - lastModified: number; - /** - * Tags associated with the cache entry. They are used for on-demand revalidation. - */ - tags: Readonly; - /** - * The lifespan parameters for the cache entry. - * - * Null for pages with `fallback: false` in `getStaticPaths`. - * Consider these pages as always fresh and never stale. - */ - lifespan: LifespanParameters | null; + /** + * Timestamp in milliseconds when the cache entry was last modified. + */ + lastModified: number; + /** + * Tags associated with the cache entry. They are used for on-demand revalidation. + */ + tags: Readonly; + /** + * The lifespan parameters for the cache entry. + * + * Null for pages with `fallback: false` in `getStaticPaths`. + * Consider these pages as always fresh and never stale. + */ + lifespan: LifespanParameters | null; }; export type RouteMetadata = NextRouteMetadata; export type NonNullableRouteMetadata = { - [K in keyof RouteMetadata]: NonNullable; + [K in keyof RouteMetadata]: NonNullable; }; -export type FileSystemCacheContext = ConstructorParameters[0]; +export type FileSystemCacheContext = ConstructorParameters< + typeof FileSystemCache +>[0]; export type CacheHandlerParametersGet = Parameters; -export type CacheHandlerParametersGetWithTags = [...CacheHandlerParametersGet, string[]]; +export type CacheHandlerParametersGetWithTags = [ + ...CacheHandlerParametersGet, + string[], +]; export type CacheHandlerParametersSet = Parameters; -export type CacheHandlerParametersRevalidateTag = Parameters; +export type CacheHandlerParametersRevalidateTag = Parameters< + CacheHandler['revalidateTag'] +>; export type CacheHandlerReturnTypeGet = ReturnType; export type CacheHandlerReturnTypeSet = ReturnType; -export type CacheHandlerReturnTypeRevalidateTag = ReturnType; +export type CacheHandlerReturnTypeRevalidateTag = ReturnType< + CacheHandler['revalidateTag'] +>; export type UnwrappedCacheHandler = { - get(...args: CacheHandlerParametersGetWithTags): Awaited; - set(...args: CacheHandlerParametersSet): Awaited; - revalidateTag(...args: CacheHandlerParametersRevalidateTag): Awaited; + get( + ...args: CacheHandlerParametersGetWithTags + ): Awaited; + set(...args: CacheHandlerParametersSet): Awaited; + revalidateTag( + ...args: CacheHandlerParametersRevalidateTag + ): Awaited; }; -type ExtractIncrementalCacheKind = T extends { kind: Kind } ? T : never; +type ExtractIncrementalCacheKind = T extends { kind: Kind } + ? T + : never; -export type IncrementalCachedPageValue = ExtractIncrementalCacheKind; +export type IncrementalCachedPageValue = ExtractIncrementalCacheKind< + IncrementalCacheValue, + 'PAGE' +>; export type TagsManifest = { - version: 1; - items: Record; + version: 1; + items: Record; }; export const NEXT_CACHE_IMPLICIT_TAG_ID = '_N_T_'; diff --git a/internal/next-common/tsconfig.json b/internal/next-common/tsconfig.json index b0d5b0ac..9c5847bc 100644 --- a/internal/next-common/tsconfig.json +++ b/internal/next-common/tsconfig.json @@ -1,5 +1,5 @@ { - "extends": "@repo/typescript-config/library.json", - "include": ["."], - "exclude": ["dist", "node_modules"] + "extends": "@repo/typescript-config/base.json", + "include": ["."], + "exclude": ["dist", "node_modules"] } diff --git a/internal/next-lru-cache/package.json b/internal/next-lru-cache/package.json index 16f51410..40554f48 100644 --- a/internal/next-lru-cache/package.json +++ b/internal/next-lru-cache/package.json @@ -1,19 +1,19 @@ { - "name": "@repo/next-lru-cache", - "version": "0.0.0", - "private": true, - "license": "MIT", - "type": "module", - "exports": { - "./*": "./src/cache-types/*.ts" - }, - "dependencies": { - "lru-cache": "10.4.3" - }, - "devDependencies": { - "@repo/next-common": "*", - "@repo/typescript-config": "*", - "@types/node": "22.10.0", - "typescript": "5.7.2" - } + "name": "@repo/next-lru-cache", + "version": "0.0.0", + "private": true, + "license": "MIT", + "type": "module", + "exports": { + "./*": "./src/cache-types/*.ts" + }, + "dependencies": { + "lru-cache": "10.4.3" + }, + "devDependencies": { + "@repo/next-common": "workspace:*", + "@repo/typescript-config": "workspace:*", + "@types/node": "22.13.1", + "typescript": "5.7.3" + } } diff --git a/internal/next-lru-cache/src/cache-types/cache-string-value.ts b/internal/next-lru-cache/src/cache-types/cache-string-value.ts index 321f239c..304425f5 100644 --- a/internal/next-lru-cache/src/cache-types/cache-string-value.ts +++ b/internal/next-lru-cache/src/cache-types/cache-string-value.ts @@ -4,9 +4,11 @@ import type { LruCacheOptions } from '../create-configured-cache'; import { createConfiguredCache } from '../create-configured-cache'; function calculateStringSize(value: string): number { - return value.length; + return value.length; } -export default function createCacheStore(options?: LruCacheOptions): LRUCache { - return createConfiguredCache(calculateStringSize, options); +export default function createCacheStore( + options?: LruCacheOptions, +): LRUCache { + return createConfiguredCache(calculateStringSize, options); } diff --git a/internal/next-lru-cache/src/cache-types/next-cache-handler-value.ts b/internal/next-lru-cache/src/cache-types/next-cache-handler-value.ts index 3088d0e0..5e18046f 100644 --- a/internal/next-lru-cache/src/cache-types/next-cache-handler-value.ts +++ b/internal/next-lru-cache/src/cache-types/next-cache-handler-value.ts @@ -5,39 +5,45 @@ import type { LruCacheOptions } from '../create-configured-cache'; import { createConfiguredCache } from '../create-configured-cache'; function calculateObjectSize({ value }: CacheHandlerValue): number { - // Return default size if value is falsy - if (!value) { - return 25; - } + // Return default size if value is falsy + if (!value) { + return 25; + } - switch (value.kind) { - case 'REDIRECT': { - // Calculate size based on the length of the stringified props - return JSON.stringify(value.props).length; - } - case 'IMAGE': { - // Throw a specific error for image kind - throw new Error('Image kind should not be used for incremental-cache calculations.'); - } - case 'FETCH': { - // Calculate size based on the length of the stringified data - return JSON.stringify(value.data || '').length; - } - case 'ROUTE': { - // Size based on the length of the body - return value.body.length; - } - default: { - // Rough estimate calculation for other types - // Combine HTML length and page data length - const pageDataLength = value.pageData ? JSON.stringify(value.pageData).length : 0; - return value.html.length + pageDataLength; - } + switch (value.kind) { + case 'REDIRECT': { + // Calculate size based on the length of the stringified props + return JSON.stringify(value.props).length; + } + case 'IMAGE': { + // Throw a specific error for image kind + throw new Error( + 'Image kind should not be used for incremental-cache calculations.', + ); + } + case 'FETCH': { + // Calculate size based on the length of the stringified data + return JSON.stringify(value.data || '').length; + } + case 'ROUTE': { + // Size based on the length of the body + return value.body.length; + } + default: { + // Rough estimate calculation for other types + // Combine HTML length and page data length + const pageDataLength = value.pageData + ? JSON.stringify(value.pageData).length + : 0; + return value.html.length + pageDataLength; } + } } export type { LruCacheOptions }; -export default function createCacheStore(options?: LruCacheOptions): LRUCache { - return createConfiguredCache(calculateObjectSize, options); +export default function createCacheStore( + options?: LruCacheOptions, +): LRUCache { + return createConfiguredCache(calculateObjectSize, options); } diff --git a/internal/next-lru-cache/src/create-configured-cache.ts b/internal/next-lru-cache/src/create-configured-cache.ts index c826c1fb..91eb41fe 100644 --- a/internal/next-lru-cache/src/create-configured-cache.ts +++ b/internal/next-lru-cache/src/create-configured-cache.ts @@ -6,30 +6,30 @@ import { LRUCache } from 'lru-cache'; * @since 1.0.0 */ export type LruCacheOptions = { - /** - * Optional. Maximum number of items the cache can hold. - * - * @default 1000 - * - * @since 1.0.0 - */ - maxItemsNumber?: number; - /** - * Optional. Maximum size in bytes for each item in the cache. - * - * @default 104857600 // 100 Mb - * - * @since 1.0.0 - */ - maxItemSizeBytes?: number; + /** + * Optional. Maximum number of items the cache can hold. + * + * @default 1000 + * + * @since 1.0.0 + */ + maxItemsNumber?: number; + /** + * Optional. Maximum size in bytes for each item in the cache. + * + * @default 104857600 // 100 Mb + * + * @since 1.0.0 + */ + maxItemSizeBytes?: number; }; const MAX_ITEMS_NUMBER = 1000; const MAX_ITEM_SIZE_BYTES = 100 * 1024 * 1024; const DEFAULT_OPTIONS: LruCacheOptions = { - maxItemsNumber: MAX_ITEMS_NUMBER, - maxItemSizeBytes: MAX_ITEM_SIZE_BYTES, + maxItemsNumber: MAX_ITEMS_NUMBER, + maxItemSizeBytes: MAX_ITEM_SIZE_BYTES, }; /** @@ -42,12 +42,15 @@ const DEFAULT_OPTIONS: LruCacheOptions = { * @returns A new instance of LRUCache. */ export function createConfiguredCache( - calculateSizeCallback: (value: CacheValueType) => number, - { maxItemsNumber = MAX_ITEMS_NUMBER, maxItemSizeBytes = MAX_ITEM_SIZE_BYTES } = DEFAULT_OPTIONS, + calculateSizeCallback: (value: CacheValueType) => number, + { + maxItemsNumber = MAX_ITEMS_NUMBER, + maxItemSizeBytes = MAX_ITEM_SIZE_BYTES, + } = DEFAULT_OPTIONS, ): LRUCache { - return new LRUCache({ - max: maxItemsNumber, - maxSize: maxItemSizeBytes, - sizeCalculation: calculateSizeCallback, - }); + return new LRUCache({ + max: maxItemsNumber, + maxSize: maxItemSizeBytes, + sizeCalculation: calculateSizeCallback, + }); } diff --git a/internal/next-lru-cache/tsconfig.json b/internal/next-lru-cache/tsconfig.json index b0d5b0ac..9c5847bc 100644 --- a/internal/next-lru-cache/tsconfig.json +++ b/internal/next-lru-cache/tsconfig.json @@ -1,5 +1,5 @@ { - "extends": "@repo/typescript-config/library.json", - "include": ["."], - "exclude": ["dist", "node_modules"] + "extends": "@repo/typescript-config/base.json", + "include": ["."], + "exclude": ["dist", "node_modules"] } diff --git a/internal/prettier-config/index.js b/internal/prettier-config/index.js deleted file mode 100644 index 02d9447b..00000000 --- a/internal/prettier-config/index.js +++ /dev/null @@ -1,16 +0,0 @@ -const config = require('@vercel/style-guide/prettier'); - -module.exports = { - ...config, - tabWidth: 4, - printWidth: 120, - singleQuote: true, - overrides: [ - { - files: '*.{yml,yaml,md,mdx}', - options: { - tabWidth: 2, - }, - }, - ], -}; diff --git a/internal/prettier-config/package.json b/internal/prettier-config/package.json deleted file mode 100644 index 635cf3b1..00000000 --- a/internal/prettier-config/package.json +++ /dev/null @@ -1,9 +0,0 @@ -{ - "name": "@repo/prettier-config", - "version": "0.0.0", - "private": true, - "license": "MIT", - "devDependencies": { - "@vercel/style-guide": "6.0.0" - } -} diff --git a/internal/typescript-config/base.json b/internal/typescript-config/base.json index a29debcd..23eccef5 100644 --- a/internal/typescript-config/base.json +++ b/internal/typescript-config/base.json @@ -1,20 +1,22 @@ { - "$schema": "https://json.schemastore.org/tsconfig", - "display": "Default", - "compilerOptions": { - "declaration": true, - "declarationMap": true, - "esModuleInterop": true, - "incremental": false, - "isolatedModules": true, - "lib": ["es2022", "DOM", "DOM.Iterable"], - "module": "NodeNext", - "moduleDetection": "force", - "moduleResolution": "NodeNext", - "noUncheckedIndexedAccess": true, - "resolveJsonModule": true, - "skipLibCheck": true, - "strict": true, - "target": "ES2022" - } + "$schema": "https://json.schemastore.org/tsconfig", + "display": "Default", + "compilerOptions": { + "declaration": true, + "declarationMap": true, + "esModuleInterop": true, + "incremental": false, + "isolatedModules": true, + "lib": ["es2022"], + "module": "ESNext", + "moduleDetection": "force", + "moduleResolution": "bundler", + "noUncheckedIndexedAccess": true, + "resolveJsonModule": true, + "skipLibCheck": true, + "strict": true, + "target": "ES2022", + "allowJs": true, + "noEmit": true + } } diff --git a/internal/typescript-config/library.json b/internal/typescript-config/library.json deleted file mode 100644 index 441fa72a..00000000 --- a/internal/typescript-config/library.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "$schema": "https://json.schemastore.org/tsconfig", - "display": "Next.js", - "extends": "./base.json", - "compilerOptions": { - "module": "ESNext", - "moduleResolution": "Bundler", - "allowJs": true, - "noEmit": true - } -} diff --git a/internal/typescript-config/nextjs.json b/internal/typescript-config/nextjs.json index c6b70c0d..5a91568f 100644 --- a/internal/typescript-config/nextjs.json +++ b/internal/typescript-config/nextjs.json @@ -1,13 +1,10 @@ { - "$schema": "https://json.schemastore.org/tsconfig", - "display": "Next.js", - "extends": "./base.json", - "compilerOptions": { - "plugins": [{ "name": "next" }], - "module": "ESNext", - "moduleResolution": "Bundler", - "allowJs": true, - "jsx": "preserve", - "noEmit": true - } + "$schema": "https://json.schemastore.org/tsconfig", + "display": "Next.js", + "extends": "./base.json", + "compilerOptions": { + "plugins": [{ "name": "next" }], + "lib": ["ES2022", "DOM", "DOM.Iterable"], + "jsx": "preserve" + } } diff --git a/internal/typescript-config/package.json b/internal/typescript-config/package.json index 607f9c94..27c0e604 100644 --- a/internal/typescript-config/package.json +++ b/internal/typescript-config/package.json @@ -1,9 +1,9 @@ { - "name": "@repo/typescript-config", - "version": "0.0.0", - "private": true, - "license": "MIT", - "publishConfig": { - "access": "public" - } + "name": "@repo/typescript-config", + "version": "0.0.0", + "private": true, + "license": "MIT", + "publishConfig": { + "access": "public" + } } diff --git a/package-lock.json b/package-lock.json deleted file mode 100644 index bd135685..00000000 --- a/package-lock.json +++ /dev/null @@ -1,17185 +0,0 @@ -{ - "name": "neshca", - "version": "0.0.0", - "lockfileVersion": 3, - "requires": true, - "packages": { - "": { - "name": "neshca", - "version": "0.0.0", - "license": "MIT", - "workspaces": [ - "apps/*", - "packages/*", - "docs/cache-handler-docs", - "internal/*" - ], - "dependencies": { - "@changesets/cli": "2.27.10" - }, - "devDependencies": { - "@actions/core": "1.11.1", - "@biomejs/biome": "1.9.4", - "@repo/prettier-config": "*", - "@repo/typescript-config": "*", - "glob": "11.0.0", - "prettier": "3.4.1", - "rimraf": "6.0.1", - "turbo": "2.3.2" - }, - "engines": { - "node": ">=20.9.0", - "npm": ">=10.1.0" - } - }, - "apps/cache-testing": { - "name": "@repo/cache-testing", - "version": "0.0.0", - "license": "MIT", - "dependencies": { - "@neshca/cache-handler": "*", - "axios": "1.7.8", - "next": "14.2.15", - "react": "18.3.1", - "react-dom": "18.3.1", - "redis": "4.7.0" - }, - "devDependencies": { - "@next/eslint-plugin-next": "14.2.15", - "@playwright/test": "1.49.0", - "@repo/eslint-config": "*", - "@repo/typescript-config": "*", - "@types/eslint": "8.56.12", - "@types/node": "22.10.0", - "@types/react": "18.3.12", - "@types/react-dom": "18.3.1", - "dotenv-cli": "7.4.4", - "eslint": "8.57.1", - "fastify": "5.1.0", - "pm2": "5.4.3", - "tsx": "4.19.2", - "typescript": "5.7.2" - } - }, - "docs/cache-handler-docs": { - "name": "@repo/cache-handler-docs", - "version": "0.0.0", - "dependencies": { - "next": "14.2.15", - "nextra": "3.2.4", - "nextra-theme-docs": "3.2.4", - "react": "18.3.1", - "react-dom": "18.3.1" - }, - "devDependencies": { - "@next/eslint-plugin-next": "14.2.15", - "@repo/eslint-config": "*", - "@repo/typescript-config": "*", - "@types/eslint": "8.56.12", - "@types/node": "22.10.0", - "@types/react": "18.3.12", - "@types/react-dom": "18.3.1", - "eslint": "8.57.1", - "serve": "14.2.4", - "typescript": "5.7.2" - } - }, - "internal/backend": { - "name": "@repo/backend", - "version": "0.0.0", - "license": "MIT", - "dependencies": { - "fastify": "5.1.0", - "pino": "9.5.0" - }, - "devDependencies": { - "@repo/typescript-config": "*", - "@types/node": "22.10.0", - "pino-pretty": "13.0.0", - "tsx": "4.19.2", - "typescript": "5.7.2" - } - }, - "internal/eslint-config": { - "name": "@repo/eslint-config", - "version": "0.0.0", - "devDependencies": { - "@typescript-eslint/eslint-plugin": "7.18.0", - "@typescript-eslint/parser": "7.18.0", - "@vercel/style-guide": "6.0.0", - "eslint-config-prettier": "9.1.0", - "eslint-config-turbo": "2.3.2", - "eslint-plugin-only-warn": "1.1.0", - "typescript": "5.7.2" - } - }, - "internal/next-common": { - "name": "@repo/next-common", - "version": "0.0.0", - "license": "MIT", - "dependencies": { - "next": "14.2.15" - }, - "devDependencies": { - "@repo/typescript-config": "*", - "@types/node": "22.10.0", - "typescript": "5.7.2" - } - }, - "internal/next-lru-cache": { - "name": "@repo/next-lru-cache", - "version": "0.0.0", - "license": "MIT", - "dependencies": { - "lru-cache": "10.4.3" - }, - "devDependencies": { - "@repo/next-common": "*", - "@repo/typescript-config": "*", - "@types/node": "22.10.0", - "typescript": "5.7.2" - } - }, - "internal/prettier-config": { - "name": "@repo/prettier-config", - "version": "0.0.0", - "license": "MIT", - "devDependencies": { - "@vercel/style-guide": "6.0.0" - } - }, - "internal/typescript-config": { - "name": "@repo/typescript-config", - "version": "0.0.0", - "license": "MIT" - }, - "node_modules/@actions/core": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@actions/core/-/core-1.11.1.tgz", - "integrity": "sha512-hXJCSrkwfA46Vd9Z3q4cpEpHB1rL5NG04+/rbqW9d3+CSvtB1tYe8UTpAlixa1vj0m/ULglfEK2UKxMGxCxv5A==", - "dev": true, - "license": "MIT", - "dependencies": { - "@actions/exec": "^1.1.1", - "@actions/http-client": "^2.0.1" - } - }, - "node_modules/@actions/exec": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@actions/exec/-/exec-1.1.1.tgz", - "integrity": "sha512-+sCcHHbVdk93a0XT19ECtO/gIXoxvdsgQLzb2fE2/5sIZmWQuluYyjPQtrtTHdU1YzTZ7bAPN4sITq2xi1679w==", - "dev": true, - "license": "MIT", - "dependencies": { - "@actions/io": "^1.0.1" - } - }, - "node_modules/@actions/http-client": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/@actions/http-client/-/http-client-2.2.3.tgz", - "integrity": "sha512-mx8hyJi/hjFvbPokCg4uRd4ZX78t+YyRPtnKWwIl+RzNaVuFpQHfmlGVfsKEJN8LwTCvL+DfVgAM04XaHkm6bA==", - "dev": true, - "license": "MIT", - "dependencies": { - "tunnel": "^0.0.6", - "undici": "^5.25.4" - } - }, - "node_modules/@actions/io": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/@actions/io/-/io-1.1.3.tgz", - "integrity": "sha512-wi9JjgKLYS7U/z8PPbco+PvTb/nRWjeoFlJ1Qer83k/3C5PHQi28hiVdeE2kHXmIL99mQFawx8qt/JPjZilJ8Q==", - "dev": true, - "license": "MIT" - }, - "node_modules/@ampproject/remapping": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.3.0.tgz", - "integrity": "sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "@jridgewell/gen-mapping": "^0.3.5", - "@jridgewell/trace-mapping": "^0.3.24" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@antfu/install-pkg": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/@antfu/install-pkg/-/install-pkg-0.4.1.tgz", - "integrity": "sha512-T7yB5QNG29afhWVkVq7XeIMBa5U/vs9mX69YqayXypPRmYzUmzwnYltplHmPtZ4HPCn+sQKeXW8I47wCbuBOjw==", - "license": "MIT", - "dependencies": { - "package-manager-detector": "^0.2.0", - "tinyexec": "^0.3.0" - }, - "funding": { - "url": "https://github.com/sponsors/antfu" - } - }, - "node_modules/@antfu/utils": { - "version": "0.7.10", - "resolved": "https://registry.npmjs.org/@antfu/utils/-/utils-0.7.10.tgz", - "integrity": "sha512-+562v9k4aI80m1+VuMHehNJWLOFjBnXn3tdOitzD0il5b7smkSBal4+a3oKiQTbrwMmN/TBUMDvbdoWDehgOww==", - "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/antfu" - } - }, - "node_modules/@babel/code-frame": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.25.7.tgz", - "integrity": "sha512-0xZJFNE5XMpENsgfHYTw8FbX4kv53mFLn2i3XPoq69LyhYSCBJtitaHx9QnsVTrsogI4Z3+HtEfZ2/GFPOtf5g==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/highlight": "^7.25.7", - "picocolors": "^1.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/compat-data": { - "version": "7.25.8", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.25.8.tgz", - "integrity": "sha512-ZsysZyXY4Tlx+Q53XdnOFmqwfB9QDTHYxaZYajWRoBLuLEAwI2UIbtxOjWh/cFaa9IKUlcB+DDuoskLuKu56JA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/core": { - "version": "7.25.8", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.25.8.tgz", - "integrity": "sha512-Oixnb+DzmRT30qu9d3tJSQkxuygWm32DFykT4bRoORPa9hZ/L4KhVB/XiRm6KG+roIEM7DBQlmg27kw2HZkdZg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@ampproject/remapping": "^2.2.0", - "@babel/code-frame": "^7.25.7", - "@babel/generator": "^7.25.7", - "@babel/helper-compilation-targets": "^7.25.7", - "@babel/helper-module-transforms": "^7.25.7", - "@babel/helpers": "^7.25.7", - "@babel/parser": "^7.25.8", - "@babel/template": "^7.25.7", - "@babel/traverse": "^7.25.7", - "@babel/types": "^7.25.8", - "convert-source-map": "^2.0.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.2", - "json5": "^2.2.3", - "semver": "^6.3.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/babel" - } - }, - "node_modules/@babel/core/node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true, - "license": "ISC", - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/@babel/eslint-parser": { - "version": "7.25.8", - "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.25.8.tgz", - "integrity": "sha512-Po3VLMN7fJtv0nsOjBDSbO1J71UhzShE9MuOSkWEV9IZQXzhZklYtzKZ8ZD/Ij3a0JBv1AG3Ny2L3jvAHQVOGg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@nicolo-ribaudo/eslint-scope-5-internals": "5.1.1-v1", - "eslint-visitor-keys": "^2.1.0", - "semver": "^6.3.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || >=14.0.0" - }, - "peerDependencies": { - "@babel/core": "^7.11.0", - "eslint": "^7.5.0 || ^8.0.0 || ^9.0.0" - } - }, - "node_modules/@babel/eslint-parser/node_modules/eslint-visitor-keys": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", - "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", - "dev": true, - "license": "Apache-2.0", - "engines": { - "node": ">=10" - } - }, - "node_modules/@babel/eslint-parser/node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true, - "license": "ISC", - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/@babel/generator": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.25.7.tgz", - "integrity": "sha512-5Dqpl5fyV9pIAD62yK9P7fcA768uVPUyrQmqpqstHWgMma4feF1x/oFysBCVZLY5wJ2GkMUCdsNDnGZrPoR6rA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/types": "^7.25.7", - "@jridgewell/gen-mapping": "^0.3.5", - "@jridgewell/trace-mapping": "^0.3.25", - "jsesc": "^3.0.2" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-compilation-targets": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.25.7.tgz", - "integrity": "sha512-DniTEax0sv6isaw6qSQSfV4gVRNtw2rte8HHM45t9ZR0xILaufBRNkpMifCRiAPyvL4ACD6v0gfCwCmtOQaV4A==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/compat-data": "^7.25.7", - "@babel/helper-validator-option": "^7.25.7", - "browserslist": "^4.24.0", - "lru-cache": "^5.1.1", - "semver": "^6.3.1" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-compilation-targets/node_modules/lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", - "dev": true, - "license": "ISC", - "dependencies": { - "yallist": "^3.0.2" - } - }, - "node_modules/@babel/helper-compilation-targets/node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true, - "license": "ISC", - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/@babel/helper-compilation-targets/node_modules/yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", - "dev": true, - "license": "ISC" - }, - "node_modules/@babel/helper-module-imports": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.25.7.tgz", - "integrity": "sha512-o0xCgpNmRohmnoWKQ0Ij8IdddjyBFE4T2kagL/x6M3+4zUgc+4qTOUBoNe4XxDskt1HPKO007ZPiMgLDq2s7Kw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/traverse": "^7.25.7", - "@babel/types": "^7.25.7" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-module-transforms": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.25.7.tgz", - "integrity": "sha512-k/6f8dKG3yDz/qCwSM+RKovjMix563SLxQFo0UhRNo239SP6n9u5/eLtKD6EAjwta2JHJ49CsD8pms2HdNiMMQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/helper-module-imports": "^7.25.7", - "@babel/helper-simple-access": "^7.25.7", - "@babel/helper-validator-identifier": "^7.25.7", - "@babel/traverse": "^7.25.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/helper-simple-access": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.25.7.tgz", - "integrity": "sha512-FPGAkJmyoChQeM+ruBGIDyrT2tKfZJO8NcxdC+CWNJi7N8/rZpSxK7yvBJ5O/nF1gfu5KzN7VKG3YVSLFfRSxQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/traverse": "^7.25.7", - "@babel/types": "^7.25.7" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-string-parser": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.25.7.tgz", - "integrity": "sha512-CbkjYdsJNHFk8uqpEkpCvRs3YRp9tY6FmFY7wLMSYuGYkrdUi7r2lc4/wqsvlHoMznX3WJ9IP8giGPq68T/Y6g==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-validator-identifier": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.7.tgz", - "integrity": "sha512-AM6TzwYqGChO45oiuPqwL2t20/HdMC1rTPAesnBCgPCSF1x3oN9MVUwQV2iyz4xqWrctwK5RNC8LV22kaQCNYg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-validator-option": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.25.7.tgz", - "integrity": "sha512-ytbPLsm+GjArDYXJ8Ydr1c/KJuutjF2besPNbIZnZ6MKUxi/uTA22t2ymmA4WFjZFpjiAMO0xuuJPqK2nvDVfQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helpers": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.25.7.tgz", - "integrity": "sha512-Sv6pASx7Esm38KQpF/U/OXLwPPrdGHNKoeblRxgZRLXnAtnkEe4ptJPDtAZM7fBLadbc1Q07kQpSiGQ0Jg6tRA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/template": "^7.25.7", - "@babel/types": "^7.25.7" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/highlight": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.25.7.tgz", - "integrity": "sha512-iYyACpW3iW8Fw+ZybQK+drQre+ns/tKpXbNESfrhNnPLIklLbXr7MYJ6gPEd0iETGLOK+SxMjVvKb/ffmk+FEw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/helper-validator-identifier": "^7.25.7", - "chalk": "^2.4.2", - "js-tokens": "^4.0.0", - "picocolors": "^1.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/highlight/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/highlight/node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/highlight/node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/@babel/highlight/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", - "dev": true, - "license": "MIT" - }, - "node_modules/@babel/highlight/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/@babel/highlight/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/highlight/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "license": "MIT", - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/parser": { - "version": "7.25.8", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.25.8.tgz", - "integrity": "sha512-HcttkxzdPucv3nNFmfOOMfFf64KgdJVqm1KaCm25dPGMLElo9nsLvXeJECQg8UzPuBGLyTSA0ZzqCtDSzKTEoQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/types": "^7.25.8" - }, - "bin": { - "parser": "bin/babel-parser.js" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@babel/runtime": { - "version": "7.26.0", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.26.0.tgz", - "integrity": "sha512-FDSOghenHTiToteC/QRlv2q3DhPZ/oOXTBoirfWNx1Cx3TMVcGWQtMMmQcSvb/JjpNeGzx8Pq/b4fKEJuWm1sw==", - "dependencies": { - "regenerator-runtime": "^0.14.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/template": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.25.7.tgz", - "integrity": "sha512-wRwtAgI3bAS+JGU2upWNL9lSlDcRCqD05BZ1n3X2ONLH1WilFP6O1otQjeMK/1g0pvYcXC7b/qVUB1keofjtZA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/code-frame": "^7.25.7", - "@babel/parser": "^7.25.7", - "@babel/types": "^7.25.7" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/traverse": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.25.7.tgz", - "integrity": "sha512-jatJPT1Zjqvh/1FyJs6qAHL+Dzb7sTb+xr7Q+gM1b+1oBsMsQQ4FkVKb6dFlJvLlVssqkRzV05Jzervt9yhnzg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/code-frame": "^7.25.7", - "@babel/generator": "^7.25.7", - "@babel/parser": "^7.25.7", - "@babel/template": "^7.25.7", - "@babel/types": "^7.25.7", - "debug": "^4.3.1", - "globals": "^11.1.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/traverse/node_modules/globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/types": { - "version": "7.25.8", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.25.8.tgz", - "integrity": "sha512-JWtuCu8VQsMladxVz/P4HzHUGCAwpuqacmowgXFs5XjxIgKuNjnLokQzuVjlTvIzODaDmpjT3oxcC48vyk9EWg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/helper-string-parser": "^7.25.7", - "@babel/helper-validator-identifier": "^7.25.7", - "to-fast-properties": "^2.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@biomejs/biome": { - "version": "1.9.4", - "resolved": "https://registry.npmjs.org/@biomejs/biome/-/biome-1.9.4.tgz", - "integrity": "sha512-1rkd7G70+o9KkTn5KLmDYXihGoTaIGO9PIIN2ZB7UJxFrWw04CZHPYiMRjYsaDvVV7hP1dYNRLxSANLaBFGpog==", - "dev": true, - "hasInstallScript": true, - "bin": { - "biome": "bin/biome" - }, - "engines": { - "node": ">=14.21.3" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/biome" - }, - "optionalDependencies": { - "@biomejs/cli-darwin-arm64": "1.9.4", - "@biomejs/cli-darwin-x64": "1.9.4", - "@biomejs/cli-linux-arm64": "1.9.4", - "@biomejs/cli-linux-arm64-musl": "1.9.4", - "@biomejs/cli-linux-x64": "1.9.4", - "@biomejs/cli-linux-x64-musl": "1.9.4", - "@biomejs/cli-win32-arm64": "1.9.4", - "@biomejs/cli-win32-x64": "1.9.4" - } - }, - "node_modules/@biomejs/cli-darwin-arm64": { - "version": "1.9.4", - "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-1.9.4.tgz", - "integrity": "sha512-bFBsPWrNvkdKrNCYeAp+xo2HecOGPAy9WyNyB/jKnnedgzl4W4Hb9ZMzYNbf8dMCGmUdSavlYHiR01QaYR58cw==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=14.21.3" - } - }, - "node_modules/@biomejs/cli-darwin-x64": { - "version": "1.9.4", - "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-x64/-/cli-darwin-x64-1.9.4.tgz", - "integrity": "sha512-ngYBh/+bEedqkSevPVhLP4QfVPCpb+4BBe2p7Xs32dBgs7rh9nY2AIYUL6BgLw1JVXV8GlpKmb/hNiuIxfPfZg==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=14.21.3" - } - }, - "node_modules/@biomejs/cli-linux-arm64": { - "version": "1.9.4", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64/-/cli-linux-arm64-1.9.4.tgz", - "integrity": "sha512-fJIW0+LYujdjUgJJuwesP4EjIBl/N/TcOX3IvIHJQNsAqvV2CHIogsmA94BPG6jZATS4Hi+xv4SkBBQSt1N4/g==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=14.21.3" - } - }, - "node_modules/@biomejs/cli-linux-arm64-musl": { - "version": "1.9.4", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-1.9.4.tgz", - "integrity": "sha512-v665Ct9WCRjGa8+kTr0CzApU0+XXtRgwmzIf1SeKSGAv+2scAlW6JR5PMFo6FzqqZ64Po79cKODKf3/AAmECqA==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=14.21.3" - } - }, - "node_modules/@biomejs/cli-linux-x64": { - "version": "1.9.4", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64/-/cli-linux-x64-1.9.4.tgz", - "integrity": "sha512-lRCJv/Vi3Vlwmbd6K+oQ0KhLHMAysN8lXoCI7XeHlxaajk06u7G+UsFSO01NAs5iYuWKmVZjmiOzJ0OJmGsMwg==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=14.21.3" - } - }, - "node_modules/@biomejs/cli-linux-x64-musl": { - "version": "1.9.4", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-1.9.4.tgz", - "integrity": "sha512-gEhi/jSBhZ2m6wjV530Yy8+fNqG8PAinM3oV7CyO+6c3CEh16Eizm21uHVsyVBEB6RIM8JHIl6AGYCv6Q6Q9Tg==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=14.21.3" - } - }, - "node_modules/@biomejs/cli-win32-arm64": { - "version": "1.9.4", - "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-arm64/-/cli-win32-arm64-1.9.4.tgz", - "integrity": "sha512-tlbhLk+WXZmgwoIKwHIHEBZUwxml7bRJgk0X2sPyNR3S93cdRq6XulAZRQJ17FYGGzWne0fgrXBKpl7l4M87Hg==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=14.21.3" - } - }, - "node_modules/@biomejs/cli-win32-x64": { - "version": "1.9.4", - "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-x64/-/cli-win32-x64-1.9.4.tgz", - "integrity": "sha512-8Y5wMhVIPaWe6jw2H+KlEm4wP/f7EW3810ZLmDlrEEy5KvBsb9ECEfu/kMWD484ijfQ8+nIi0giMgu9g1UAuuA==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=14.21.3" - } - }, - "node_modules/@braintree/sanitize-url": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@braintree/sanitize-url/-/sanitize-url-7.1.0.tgz", - "integrity": "sha512-o+UlMLt49RvtCASlOMW0AkHnabN9wR9rwCCherxO0yG4Npy34GkvrAqdXQvrhNs+jh+gkK8gB8Lf05qL/O7KWg==", - "license": "MIT" - }, - "node_modules/@changesets/apply-release-plan": { - "version": "7.0.6", - "resolved": "https://registry.npmjs.org/@changesets/apply-release-plan/-/apply-release-plan-7.0.6.tgz", - "integrity": "sha512-TKhVLtiwtQOgMAC0fCJfmv93faiViKSDqr8oMEqrnNs99gtSC1sZh/aEMS9a+dseU1ESZRCK+ofLgGY7o0fw/Q==", - "dependencies": { - "@changesets/config": "^3.0.4", - "@changesets/get-version-range-type": "^0.4.0", - "@changesets/git": "^3.0.2", - "@changesets/should-skip-package": "^0.1.1", - "@changesets/types": "^6.0.0", - "@manypkg/get-packages": "^1.1.3", - "detect-indent": "^6.0.0", - "fs-extra": "^7.0.1", - "lodash.startcase": "^4.4.0", - "outdent": "^0.5.0", - "prettier": "^2.7.1", - "resolve-from": "^5.0.0", - "semver": "^7.5.3" - } - }, - "node_modules/@changesets/apply-release-plan/node_modules/prettier": { - "version": "2.8.8", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz", - "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==", - "bin": { - "prettier": "bin-prettier.js" - }, - "engines": { - "node": ">=10.13.0" - }, - "funding": { - "url": "https://github.com/prettier/prettier?sponsor=1" - } - }, - "node_modules/@changesets/assemble-release-plan": { - "version": "6.0.5", - "resolved": "https://registry.npmjs.org/@changesets/assemble-release-plan/-/assemble-release-plan-6.0.5.tgz", - "integrity": "sha512-IgvBWLNKZd6k4t72MBTBK3nkygi0j3t3zdC1zrfusYo0KpdsvnDjrMM9vPnTCLCMlfNs55jRL4gIMybxa64FCQ==", - "dependencies": { - "@changesets/errors": "^0.2.0", - "@changesets/get-dependents-graph": "^2.1.2", - "@changesets/should-skip-package": "^0.1.1", - "@changesets/types": "^6.0.0", - "@manypkg/get-packages": "^1.1.3", - "semver": "^7.5.3" - } - }, - "node_modules/@changesets/changelog-git": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/@changesets/changelog-git/-/changelog-git-0.2.0.tgz", - "integrity": "sha512-bHOx97iFI4OClIT35Lok3sJAwM31VbUM++gnMBV16fdbtBhgYu4dxsphBF/0AZZsyAHMrnM0yFcj5gZM1py6uQ==", - "license": "MIT", - "dependencies": { - "@changesets/types": "^6.0.0" - } - }, - "node_modules/@changesets/cli": { - "version": "2.27.10", - "resolved": "https://registry.npmjs.org/@changesets/cli/-/cli-2.27.10.tgz", - "integrity": "sha512-PfeXjvs9OfQJV8QSFFHjwHX3QnUL9elPEQ47SgkiwzLgtKGyuikWjrdM+lO9MXzOE22FO9jEGkcs4b+B6D6X0Q==", - "dependencies": { - "@changesets/apply-release-plan": "^7.0.6", - "@changesets/assemble-release-plan": "^6.0.5", - "@changesets/changelog-git": "^0.2.0", - "@changesets/config": "^3.0.4", - "@changesets/errors": "^0.2.0", - "@changesets/get-dependents-graph": "^2.1.2", - "@changesets/get-release-plan": "^4.0.5", - "@changesets/git": "^3.0.2", - "@changesets/logger": "^0.1.1", - "@changesets/pre": "^2.0.1", - "@changesets/read": "^0.6.2", - "@changesets/should-skip-package": "^0.1.1", - "@changesets/types": "^6.0.0", - "@changesets/write": "^0.3.2", - "@manypkg/get-packages": "^1.1.3", - "ansi-colors": "^4.1.3", - "ci-info": "^3.7.0", - "enquirer": "^2.3.0", - "external-editor": "^3.1.0", - "fs-extra": "^7.0.1", - "mri": "^1.2.0", - "p-limit": "^2.2.0", - "package-manager-detector": "^0.2.0", - "picocolors": "^1.1.0", - "resolve-from": "^5.0.0", - "semver": "^7.5.3", - "spawndamnit": "^3.0.1", - "term-size": "^2.1.0" - }, - "bin": { - "changeset": "bin.js" - } - }, - "node_modules/@changesets/config": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@changesets/config/-/config-3.0.4.tgz", - "integrity": "sha512-+DiIwtEBpvvv1z30f8bbOsUQGuccnZl9KRKMM/LxUHuDu5oEjmN+bJQ1RIBKNJjfYMQn8RZzoPiX0UgPaLQyXw==", - "dependencies": { - "@changesets/errors": "^0.2.0", - "@changesets/get-dependents-graph": "^2.1.2", - "@changesets/logger": "^0.1.1", - "@changesets/types": "^6.0.0", - "@manypkg/get-packages": "^1.1.3", - "fs-extra": "^7.0.1", - "micromatch": "^4.0.8" - } - }, - "node_modules/@changesets/errors": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/@changesets/errors/-/errors-0.2.0.tgz", - "integrity": "sha512-6BLOQUscTpZeGljvyQXlWOItQyU71kCdGz7Pi8H8zdw6BI0g3m43iL4xKUVPWtG+qrrL9DTjpdn8eYuCQSRpow==", - "dependencies": { - "extendable-error": "^0.1.5" - } - }, - "node_modules/@changesets/get-dependents-graph": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@changesets/get-dependents-graph/-/get-dependents-graph-2.1.2.tgz", - "integrity": "sha512-sgcHRkiBY9i4zWYBwlVyAjEM9sAzs4wYVwJUdnbDLnVG3QwAaia1Mk5P8M7kraTOZN+vBET7n8KyB0YXCbFRLQ==", - "dependencies": { - "@changesets/types": "^6.0.0", - "@manypkg/get-packages": "^1.1.3", - "picocolors": "^1.1.0", - "semver": "^7.5.3" - } - }, - "node_modules/@changesets/get-release-plan": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/@changesets/get-release-plan/-/get-release-plan-4.0.5.tgz", - "integrity": "sha512-E6wW7JoSMcctdVakut0UB76FrrN3KIeJSXvB+DHMFo99CnC3ZVnNYDCVNClMlqAhYGmLmAj77QfApaI3ca4Fkw==", - "dependencies": { - "@changesets/assemble-release-plan": "^6.0.5", - "@changesets/config": "^3.0.4", - "@changesets/pre": "^2.0.1", - "@changesets/read": "^0.6.2", - "@changesets/types": "^6.0.0", - "@manypkg/get-packages": "^1.1.3" - } - }, - "node_modules/@changesets/get-version-range-type": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/@changesets/get-version-range-type/-/get-version-range-type-0.4.0.tgz", - "integrity": "sha512-hwawtob9DryoGTpixy1D3ZXbGgJu1Rhr+ySH2PvTLHvkZuQ7sRT4oQwMh0hbqZH1weAooedEjRsbrWcGLCeyVQ==" - }, - "node_modules/@changesets/git": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@changesets/git/-/git-3.0.2.tgz", - "integrity": "sha512-r1/Kju9Y8OxRRdvna+nxpQIsMsRQn9dhhAZt94FLDeu0Hij2hnOozW8iqnHBgvu+KdnJppCveQwK4odwfw/aWQ==", - "dependencies": { - "@changesets/errors": "^0.2.0", - "@manypkg/get-packages": "^1.1.3", - "is-subdir": "^1.1.1", - "micromatch": "^4.0.8", - "spawndamnit": "^3.0.1" - } - }, - "node_modules/@changesets/logger": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@changesets/logger/-/logger-0.1.1.tgz", - "integrity": "sha512-OQtR36ZlnuTxKqoW4Sv6x5YIhOmClRd5pWsjZsddYxpWs517R0HkyiefQPIytCVh4ZcC5x9XaG8KTdd5iRQUfg==", - "dependencies": { - "picocolors": "^1.1.0" - } - }, - "node_modules/@changesets/parse": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/@changesets/parse/-/parse-0.4.0.tgz", - "integrity": "sha512-TS/9KG2CdGXS27S+QxbZXgr8uPsP4yNJYb4BC2/NeFUj80Rni3TeD2qwWmabymxmrLo7JEsytXH1FbpKTbvivw==", - "dependencies": { - "@changesets/types": "^6.0.0", - "js-yaml": "^3.13.1" - } - }, - "node_modules/@changesets/pre": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@changesets/pre/-/pre-2.0.1.tgz", - "integrity": "sha512-vvBJ/If4jKM4tPz9JdY2kGOgWmCowUYOi5Ycv8dyLnEE8FgpYYUo1mgJZxcdtGGP3aG8rAQulGLyyXGSLkIMTQ==", - "dependencies": { - "@changesets/errors": "^0.2.0", - "@changesets/types": "^6.0.0", - "@manypkg/get-packages": "^1.1.3", - "fs-extra": "^7.0.1" - } - }, - "node_modules/@changesets/read": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/@changesets/read/-/read-0.6.2.tgz", - "integrity": "sha512-wjfQpJvryY3zD61p8jR87mJdyx2FIhEcdXhKUqkja87toMrP/3jtg/Yg29upN+N4Ckf525/uvV7a4tzBlpk6gg==", - "dependencies": { - "@changesets/git": "^3.0.2", - "@changesets/logger": "^0.1.1", - "@changesets/parse": "^0.4.0", - "@changesets/types": "^6.0.0", - "fs-extra": "^7.0.1", - "p-filter": "^2.1.0", - "picocolors": "^1.1.0" - } - }, - "node_modules/@changesets/should-skip-package": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@changesets/should-skip-package/-/should-skip-package-0.1.1.tgz", - "integrity": "sha512-H9LjLbF6mMHLtJIc/eHR9Na+MifJ3VxtgP/Y+XLn4BF7tDTEN1HNYtH6QMcjP1uxp9sjaFYmW8xqloaCi/ckTg==", - "dependencies": { - "@changesets/types": "^6.0.0", - "@manypkg/get-packages": "^1.1.3" - } - }, - "node_modules/@changesets/types": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/@changesets/types/-/types-6.0.0.tgz", - "integrity": "sha512-b1UkfNulgKoWfqyHtzKS5fOZYSJO+77adgL7DLRDr+/7jhChN+QcHnbjiQVOz/U+Ts3PGNySq7diAItzDgugfQ==", - "license": "MIT" - }, - "node_modules/@changesets/write": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@changesets/write/-/write-0.3.2.tgz", - "integrity": "sha512-kDxDrPNpUgsjDbWBvUo27PzKX4gqeKOlhibaOXDJA6kuBisGqNHv/HwGJrAu8U/dSf8ZEFIeHIPtvSlZI1kULw==", - "license": "MIT", - "dependencies": { - "@changesets/types": "^6.0.0", - "fs-extra": "^7.0.1", - "human-id": "^1.0.2", - "prettier": "^2.7.1" - } - }, - "node_modules/@changesets/write/node_modules/prettier": { - "version": "2.8.8", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz", - "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==", - "license": "MIT", - "bin": { - "prettier": "bin-prettier.js" - }, - "engines": { - "node": ">=10.13.0" - }, - "funding": { - "url": "https://github.com/prettier/prettier?sponsor=1" - } - }, - "node_modules/@chevrotain/cst-dts-gen": { - "version": "11.0.3", - "resolved": "https://registry.npmjs.org/@chevrotain/cst-dts-gen/-/cst-dts-gen-11.0.3.tgz", - "integrity": "sha512-BvIKpRLeS/8UbfxXxgC33xOumsacaeCKAjAeLyOn7Pcp95HiRbrpl14S+9vaZLolnbssPIUuiUd8IvgkRyt6NQ==", - "license": "Apache-2.0", - "dependencies": { - "@chevrotain/gast": "11.0.3", - "@chevrotain/types": "11.0.3", - "lodash-es": "4.17.21" - } - }, - "node_modules/@chevrotain/gast": { - "version": "11.0.3", - "resolved": "https://registry.npmjs.org/@chevrotain/gast/-/gast-11.0.3.tgz", - "integrity": "sha512-+qNfcoNk70PyS/uxmj3li5NiECO+2YKZZQMbmjTqRI3Qchu8Hig/Q9vgkHpI3alNjr7M+a2St5pw5w5F6NL5/Q==", - "license": "Apache-2.0", - "dependencies": { - "@chevrotain/types": "11.0.3", - "lodash-es": "4.17.21" - } - }, - "node_modules/@chevrotain/regexp-to-ast": { - "version": "11.0.3", - "resolved": "https://registry.npmjs.org/@chevrotain/regexp-to-ast/-/regexp-to-ast-11.0.3.tgz", - "integrity": "sha512-1fMHaBZxLFvWI067AVbGJav1eRY7N8DDvYCTwGBiE/ytKBgP8azTdgyrKyWZ9Mfh09eHWb5PgTSO8wi7U824RA==", - "license": "Apache-2.0" - }, - "node_modules/@chevrotain/types": { - "version": "11.0.3", - "resolved": "https://registry.npmjs.org/@chevrotain/types/-/types-11.0.3.tgz", - "integrity": "sha512-gsiM3G8b58kZC2HaWR50gu6Y1440cHiJ+i3JUvcp/35JchYejb2+5MVeJK0iKThYpAa/P2PYFV4hoi44HD+aHQ==", - "license": "Apache-2.0" - }, - "node_modules/@chevrotain/utils": { - "version": "11.0.3", - "resolved": "https://registry.npmjs.org/@chevrotain/utils/-/utils-11.0.3.tgz", - "integrity": "sha512-YslZMgtJUyuMbZ+aKvfF3x1f5liK4mWNxghFRv7jqRR9C3R3fAOGTTKvxXDa2Y1s9zSbcpuO0cAxDYsc9SrXoQ==", - "license": "Apache-2.0" - }, - "node_modules/@esbuild/aix-ppc64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.23.1.tgz", - "integrity": "sha512-6VhYk1diRqrhBAqpJEdjASR/+WVRtfjpqKuNw11cLiaWpAT/Uu+nokB+UJnevzy/P9C/ty6AOe0dwueMrGh/iQ==", - "cpu": [ - "ppc64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "aix" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/android-arm": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.23.1.tgz", - "integrity": "sha512-uz6/tEy2IFm9RYOyvKl88zdzZfwEfKZmnX9Cj1BHjeSGNuGLuMD1kR8y5bteYmwqKm1tj8m4cb/aKEorr6fHWQ==", - "cpu": [ - "arm" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/android-arm64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.23.1.tgz", - "integrity": "sha512-xw50ipykXcLstLeWH7WRdQuysJqejuAGPd30vd1i5zSyKK3WE+ijzHmLKxdiCMtH1pHz78rOg0BKSYOSB/2Khw==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/android-x64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.23.1.tgz", - "integrity": "sha512-nlN9B69St9BwUoB+jkyU090bru8L0NA3yFvAd7k8dNsVH8bi9a8cUAUSEcEEgTp2z3dbEDGJGfP6VUnkQnlReg==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/darwin-arm64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.23.1.tgz", - "integrity": "sha512-YsS2e3Wtgnw7Wq53XXBLcV6JhRsEq8hkfg91ESVadIrzr9wO6jJDMZnCQbHm1Guc5t/CdDiFSSfWP58FNuvT3Q==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/darwin-x64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.23.1.tgz", - "integrity": "sha512-aClqdgTDVPSEGgoCS8QDG37Gu8yc9lTHNAQlsztQ6ENetKEO//b8y31MMu2ZaPbn4kVsIABzVLXYLhCGekGDqw==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/freebsd-arm64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.23.1.tgz", - "integrity": "sha512-h1k6yS8/pN/NHlMl5+v4XPfikhJulk4G+tKGFIOwURBSFzE8bixw1ebjluLOjfwtLqY0kewfjLSrO6tN2MgIhA==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/freebsd-x64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.23.1.tgz", - "integrity": "sha512-lK1eJeyk1ZX8UklqFd/3A60UuZ/6UVfGT2LuGo3Wp4/z7eRTRYY+0xOu2kpClP+vMTi9wKOfXi2vjUpO1Ro76g==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-arm": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.23.1.tgz", - "integrity": "sha512-CXXkzgn+dXAPs3WBwE+Kvnrf4WECwBdfjfeYHpMeVxWE0EceB6vhWGShs6wi0IYEqMSIzdOF1XjQ/Mkm5d7ZdQ==", - "cpu": [ - "arm" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-arm64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.23.1.tgz", - "integrity": "sha512-/93bf2yxencYDnItMYV/v116zff6UyTjo4EtEQjUBeGiVpMmffDNUyD9UN2zV+V3LRV3/on4xdZ26NKzn6754g==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-ia32": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.23.1.tgz", - "integrity": "sha512-VTN4EuOHwXEkXzX5nTvVY4s7E/Krz7COC8xkftbbKRYAl96vPiUssGkeMELQMOnLOJ8k3BY1+ZY52tttZnHcXQ==", - "cpu": [ - "ia32" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-loong64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.23.1.tgz", - "integrity": "sha512-Vx09LzEoBa5zDnieH8LSMRToj7ir/Jeq0Gu6qJ/1GcBq9GkfoEAoXvLiW1U9J1qE/Y/Oyaq33w5p2ZWrNNHNEw==", - "cpu": [ - "loong64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-mips64el": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.23.1.tgz", - "integrity": "sha512-nrFzzMQ7W4WRLNUOU5dlWAqa6yVeI0P78WKGUo7lg2HShq/yx+UYkeNSE0SSfSure0SqgnsxPvmAUu/vu0E+3Q==", - "cpu": [ - "mips64el" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-ppc64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.23.1.tgz", - "integrity": "sha512-dKN8fgVqd0vUIjxuJI6P/9SSSe/mB9rvA98CSH2sJnlZ/OCZWO1DJvxj8jvKTfYUdGfcq2dDxoKaC6bHuTlgcw==", - "cpu": [ - "ppc64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-riscv64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.23.1.tgz", - "integrity": "sha512-5AV4Pzp80fhHL83JM6LoA6pTQVWgB1HovMBsLQ9OZWLDqVY8MVobBXNSmAJi//Csh6tcY7e7Lny2Hg1tElMjIA==", - "cpu": [ - "riscv64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-s390x": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.23.1.tgz", - "integrity": "sha512-9ygs73tuFCe6f6m/Tb+9LtYxWR4c9yg7zjt2cYkjDbDpV/xVn+68cQxMXCjUpYwEkze2RcU/rMnfIXNRFmSoDw==", - "cpu": [ - "s390x" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-x64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.23.1.tgz", - "integrity": "sha512-EV6+ovTsEXCPAp58g2dD68LxoP/wK5pRvgy0J/HxPGB009omFPv3Yet0HiaqvrIrgPTBuC6wCH1LTOY91EO5hQ==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/netbsd-x64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.23.1.tgz", - "integrity": "sha512-aevEkCNu7KlPRpYLjwmdcuNz6bDFiE7Z8XC4CPqExjTvrHugh28QzUXVOZtiYghciKUacNktqxdpymplil1beA==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "netbsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/openbsd-arm64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.23.1.tgz", - "integrity": "sha512-3x37szhLexNA4bXhLrCC/LImN/YtWis6WXr1VESlfVtVeoFJBRINPJ3f0a/6LV8zpikqoUg4hyXw0sFBt5Cr+Q==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "openbsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/openbsd-x64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.23.1.tgz", - "integrity": "sha512-aY2gMmKmPhxfU+0EdnN+XNtGbjfQgwZj43k8G3fyrDM/UdZww6xrWxmDkuz2eCZchqVeABjV5BpildOrUbBTqA==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "openbsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/sunos-x64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.23.1.tgz", - "integrity": "sha512-RBRT2gqEl0IKQABT4XTj78tpk9v7ehp+mazn2HbUeZl1YMdaGAQqhapjGTCe7uw7y0frDi4gS0uHzhvpFuI1sA==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "sunos" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/win32-arm64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.23.1.tgz", - "integrity": "sha512-4O+gPR5rEBe2FpKOVyiJ7wNDPA8nGzDuJ6gN4okSA1gEOYZ67N8JPk58tkWtdtPeLz7lBnY6I5L3jdsr3S+A6A==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/win32-ia32": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.23.1.tgz", - "integrity": "sha512-BcaL0Vn6QwCwre3Y717nVHZbAa4UBEigzFm6VdsVdT/MbZ38xoj1X9HPkZhbmaBGUD1W8vxAfffbDe8bA6AKnQ==", - "cpu": [ - "ia32" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/win32-x64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.23.1.tgz", - "integrity": "sha512-BHpFFeslkWrXWyUPnbKm+xYYVYruCinGcftSBaa8zoF9hZO4BcSCFUvHVTtzpIY6YzUnYtuEhZ+C9iEXjxnasg==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@eslint-community/eslint-utils": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz", - "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==", - "dev": true, - "license": "MIT", - "dependencies": { - "eslint-visitor-keys": "^3.3.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" - } - }, - "node_modules/@eslint-community/regexpp": { - "version": "4.11.1", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.11.1.tgz", - "integrity": "sha512-m4DVN9ZqskZoLU5GlWZadwDnYo3vAEydiUayB9widCl9ffWx2IvPnp6n3on5rJmziJSw9Bv+Z3ChDVdMwXCY8Q==", - "dev": true, - "license": "MIT", - "engines": { - "node": "^12.0.0 || ^14.0.0 || >=16.0.0" - } - }, - "node_modules/@eslint/eslintrc": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz", - "integrity": "sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "ajv": "^6.12.4", - "debug": "^4.3.2", - "espree": "^9.6.0", - "globals": "^13.19.0", - "ignore": "^5.2.0", - "import-fresh": "^3.2.1", - "js-yaml": "^4.1.0", - "minimatch": "^3.1.2", - "strip-json-comments": "^3.1.1" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/@eslint/eslintrc/node_modules/argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", - "dev": true, - "license": "Python-2.0" - }, - "node_modules/@eslint/eslintrc/node_modules/js-yaml": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", - "dev": true, - "license": "MIT", - "dependencies": { - "argparse": "^2.0.1" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/@eslint/js": { - "version": "8.57.1", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.57.1.tgz", - "integrity": "sha512-d9zaMRSTIKDLhctzH12MtXvJKSSUhaHcjV+2Z+GK+EEY7XKpP5yR4x+N3TAcHTcu963nIr+TMcCb4DBCYX1z6Q==", - "dev": true, - "license": "MIT", - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - } - }, - "node_modules/@fastify/ajv-compiler": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/@fastify/ajv-compiler/-/ajv-compiler-4.0.1.tgz", - "integrity": "sha512-DxrBdgsjNLP0YM6W5Hd6/Fmj43S8zMKiFJYgi+Ri3htTGAowPVG/tG1wpnWLMjufEnehRivUCKZ1pLDIoZdTuw==", - "license": "MIT", - "dependencies": { - "ajv": "^8.12.0", - "ajv-formats": "^3.0.1", - "fast-uri": "^3.0.0" - } - }, - "node_modules/@fastify/ajv-compiler/node_modules/ajv": { - "version": "8.17.1", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.17.1.tgz", - "integrity": "sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==", - "license": "MIT", - "dependencies": { - "fast-deep-equal": "^3.1.3", - "fast-uri": "^3.0.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/@fastify/ajv-compiler/node_modules/json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "license": "MIT" - }, - "node_modules/@fastify/busboy": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/@fastify/busboy/-/busboy-2.1.1.tgz", - "integrity": "sha512-vBZP4NlzfOlerQTnba4aqZoMhE/a9HY7HRqoOPaETQcSQuWEIyZMHGfVu6w9wGtGK5fED5qRs2DteVCjOH60sA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=14" - } - }, - "node_modules/@fastify/error": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@fastify/error/-/error-4.0.0.tgz", - "integrity": "sha512-OO/SA8As24JtT1usTUTKgGH7uLvhfwZPwlptRi2Dp5P4KKmJI3gvsZ8MIHnNwDs4sLf/aai5LzTyl66xr7qMxA==", - "license": "MIT" - }, - "node_modules/@fastify/fast-json-stringify-compiler": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/@fastify/fast-json-stringify-compiler/-/fast-json-stringify-compiler-5.0.1.tgz", - "integrity": "sha512-f2d3JExJgFE3UbdFcpPwqNUEoHWmt8pAKf8f+9YuLESdefA0WgqxeT6DrGL4Yrf/9ihXNSKOqpjEmurV405meA==", - "license": "MIT", - "dependencies": { - "fast-json-stringify": "^6.0.0" - } - }, - "node_modules/@fastify/merge-json-schemas": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@fastify/merge-json-schemas/-/merge-json-schemas-0.1.1.tgz", - "integrity": "sha512-fERDVz7topgNjtXsJTTW1JKLy0rhuLRcquYqNR9rF7OcVpCa2OVW49ZPDIhaRRCaUuvVxI+N416xUoF76HNSXA==", - "license": "MIT", - "dependencies": { - "fast-deep-equal": "^3.1.3" - } - }, - "node_modules/@floating-ui/core": { - "version": "1.6.8", - "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.6.8.tgz", - "integrity": "sha512-7XJ9cPU+yI2QeLS+FCSlqNFZJq8arvswefkZrYI1yQBbftw6FyrZOxYSh+9S7z7TpeWlRt9zJ5IhM1WIL334jA==", - "license": "MIT", - "dependencies": { - "@floating-ui/utils": "^0.2.8" - } - }, - "node_modules/@floating-ui/dom": { - "version": "1.6.11", - "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.6.11.tgz", - "integrity": "sha512-qkMCxSR24v2vGkhYDo/UzxfJN3D4syqSjyuTFz6C7XcpU1pASPRieNI0Kj5VP3/503mOfYiGY891ugBX1GlABQ==", - "license": "MIT", - "dependencies": { - "@floating-ui/core": "^1.6.0", - "@floating-ui/utils": "^0.2.8" - } - }, - "node_modules/@floating-ui/react": { - "version": "0.26.25", - "resolved": "https://registry.npmjs.org/@floating-ui/react/-/react-0.26.25.tgz", - "integrity": "sha512-hZOmgN0NTOzOuZxI1oIrDu3Gcl8WViIkvPMpB4xdd4QD6xAMtwgwr3VPoiyH/bLtRcS1cDnhxLSD1NsMJmwh/A==", - "license": "MIT", - "dependencies": { - "@floating-ui/react-dom": "^2.1.2", - "@floating-ui/utils": "^0.2.8", - "tabbable": "^6.0.0" - }, - "peerDependencies": { - "react": ">=16.8.0", - "react-dom": ">=16.8.0" - } - }, - "node_modules/@floating-ui/react-dom": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@floating-ui/react-dom/-/react-dom-2.1.2.tgz", - "integrity": "sha512-06okr5cgPzMNBy+Ycse2A6udMi4bqwW/zgBF/rwjcNqWkyr82Mcg8b0vjX8OJpZFy/FKjJmw6wV7t44kK6kW7A==", - "license": "MIT", - "dependencies": { - "@floating-ui/dom": "^1.0.0" - }, - "peerDependencies": { - "react": ">=16.8.0", - "react-dom": ">=16.8.0" - } - }, - "node_modules/@floating-ui/utils": { - "version": "0.2.8", - "resolved": "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.2.8.tgz", - "integrity": "sha512-kym7SodPp8/wloecOpcmSnWJsK7M0E5Wg8UcFA+uO4B9s5d0ywXOEro/8HM9x0rW+TljRzul/14UYz3TleT3ig==", - "license": "MIT" - }, - "node_modules/@formatjs/intl-localematcher": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/@formatjs/intl-localematcher/-/intl-localematcher-0.5.5.tgz", - "integrity": "sha512-t5tOGMgZ/i5+ALl2/offNqAQq/lfUnKLEw0mXQI4N4bqpedhrSE+fyKLpwnd22sK0dif6AV+ufQcTsKShB9J1g==", - "license": "MIT", - "dependencies": { - "tslib": "^2.7.0" - } - }, - "node_modules/@headlessui/react": { - "version": "2.1.10", - "resolved": "https://registry.npmjs.org/@headlessui/react/-/react-2.1.10.tgz", - "integrity": "sha512-6mLa2fjMDAFQi+/R10B+zU3edsUk/MDtENB2zHho0lqKU1uzhAfJLUduWds4nCo8wbl3vULtC5rJfZAQ1yqIng==", - "license": "MIT", - "dependencies": { - "@floating-ui/react": "^0.26.16", - "@react-aria/focus": "^3.17.1", - "@react-aria/interactions": "^3.21.3", - "@tanstack/react-virtual": "^3.8.1" - }, - "engines": { - "node": ">=10" - }, - "peerDependencies": { - "react": "^18", - "react-dom": "^18" - } - }, - "node_modules/@humanwhocodes/config-array": { - "version": "0.13.0", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.13.0.tgz", - "integrity": "sha512-DZLEEqFWQFiyK6h5YIeynKx7JlvCYWL0cImfSRXZ9l4Sg2efkFGTuFf6vzXjK1cq6IYkU+Eg/JizXw+TD2vRNw==", - "deprecated": "Use @eslint/config-array instead", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "@humanwhocodes/object-schema": "^2.0.3", - "debug": "^4.3.1", - "minimatch": "^3.0.5" - }, - "engines": { - "node": ">=10.10.0" - } - }, - "node_modules/@humanwhocodes/module-importer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", - "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", - "dev": true, - "license": "Apache-2.0", - "engines": { - "node": ">=12.22" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/nzakas" - } - }, - "node_modules/@humanwhocodes/object-schema": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.3.tgz", - "integrity": "sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==", - "deprecated": "Use @eslint/object-schema instead", - "dev": true, - "license": "BSD-3-Clause" - }, - "node_modules/@iconify/types": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@iconify/types/-/types-2.0.0.tgz", - "integrity": "sha512-+wluvCrRhXrhyOmRDJ3q8mux9JkKy5SJ/v8ol2tu4FVjyYvtEzkc/3pK15ET6RKg4b4w4BmTk1+gsCUhf21Ykg==", - "license": "MIT" - }, - "node_modules/@iconify/utils": { - "version": "2.1.33", - "resolved": "https://registry.npmjs.org/@iconify/utils/-/utils-2.1.33.tgz", - "integrity": "sha512-jP9h6v/g0BIZx0p7XGJJVtkVnydtbgTgt9mVNcGDYwaa7UhdHdI9dvoq+gKj9sijMSJKxUPEG2JyjsgXjxL7Kw==", - "license": "MIT", - "dependencies": { - "@antfu/install-pkg": "^0.4.0", - "@antfu/utils": "^0.7.10", - "@iconify/types": "^2.0.0", - "debug": "^4.3.6", - "kolorist": "^1.8.0", - "local-pkg": "^0.5.0", - "mlly": "^1.7.1" - } - }, - "node_modules/@isaacs/cliui": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", - "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", - "dev": true, - "license": "ISC", - "dependencies": { - "string-width": "^5.1.2", - "string-width-cjs": "npm:string-width@^4.2.0", - "strip-ansi": "^7.0.1", - "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", - "wrap-ansi": "^8.1.0", - "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@isaacs/cliui/node_modules/ansi-regex": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.1.0.tgz", - "integrity": "sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/ansi-regex?sponsor=1" - } - }, - "node_modules/@isaacs/cliui/node_modules/strip-ansi": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", - "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-regex": "^6.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/strip-ansi?sponsor=1" - } - }, - "node_modules/@jridgewell/gen-mapping": { - "version": "0.3.5", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", - "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@jridgewell/set-array": "^1.2.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.24" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/resolve-uri": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", - "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/set-array": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", - "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz", - "integrity": "sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.25", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", - "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@jridgewell/resolve-uri": "^3.1.0", - "@jridgewell/sourcemap-codec": "^1.4.14" - } - }, - "node_modules/@manypkg/find-root": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@manypkg/find-root/-/find-root-1.1.0.tgz", - "integrity": "sha512-mki5uBvhHzO8kYYix/WRy2WX8S3B5wdVSc9D6KcU5lQNglP2yt58/VfLuAK49glRXChosY8ap2oJ1qgma3GUVA==", - "dependencies": { - "@babel/runtime": "^7.5.5", - "@types/node": "^12.7.1", - "find-up": "^4.1.0", - "fs-extra": "^8.1.0" - } - }, - "node_modules/@manypkg/find-root/node_modules/@types/node": { - "version": "12.20.55", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", - "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" - }, - "node_modules/@manypkg/find-root/node_modules/fs-extra": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", - "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", - "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - }, - "engines": { - "node": ">=6 <7 || >=8" - } - }, - "node_modules/@manypkg/get-packages": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/@manypkg/get-packages/-/get-packages-1.1.3.tgz", - "integrity": "sha512-fo+QhuU3qE/2TQMQmbVMqaQ6EWbMhi4ABWP+O4AM1NqPBuy0OrApV5LO6BrrgnhtAHS2NH6RrVk9OL181tTi8A==", - "dependencies": { - "@babel/runtime": "^7.5.5", - "@changesets/types": "^4.0.1", - "@manypkg/find-root": "^1.1.0", - "fs-extra": "^8.1.0", - "globby": "^11.0.0", - "read-yaml-file": "^1.1.0" - } - }, - "node_modules/@manypkg/get-packages/node_modules/@changesets/types": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/@changesets/types/-/types-4.1.0.tgz", - "integrity": "sha512-LDQvVDv5Kb50ny2s25Fhm3d9QSZimsoUGBsUioj6MC3qbMUCuC8GPIvk/M6IvXx3lYhAs0lwWUQLb+VIEUCECw==" - }, - "node_modules/@manypkg/get-packages/node_modules/fs-extra": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", - "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", - "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - }, - "engines": { - "node": ">=6 <7 || >=8" - } - }, - "node_modules/@mdx-js/mdx": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@mdx-js/mdx/-/mdx-3.0.1.tgz", - "integrity": "sha512-eIQ4QTrOWyL3LWEe/bu6Taqzq2HQvHcyTMaOrI95P2/LmJE7AsfPfgJGuFLPVqBUE1BC1rik3VIhU+s9u72arA==", - "license": "MIT", - "dependencies": { - "@types/estree": "^1.0.0", - "@types/estree-jsx": "^1.0.0", - "@types/hast": "^3.0.0", - "@types/mdx": "^2.0.0", - "collapse-white-space": "^2.0.0", - "devlop": "^1.0.0", - "estree-util-build-jsx": "^3.0.0", - "estree-util-is-identifier-name": "^3.0.0", - "estree-util-to-js": "^2.0.0", - "estree-walker": "^3.0.0", - "hast-util-to-estree": "^3.0.0", - "hast-util-to-jsx-runtime": "^2.0.0", - "markdown-extensions": "^2.0.0", - "periscopic": "^3.0.0", - "remark-mdx": "^3.0.0", - "remark-parse": "^11.0.0", - "remark-rehype": "^11.0.0", - "source-map": "^0.7.0", - "unified": "^11.0.0", - "unist-util-position-from-estree": "^2.0.0", - "unist-util-stringify-position": "^4.0.0", - "unist-util-visit": "^5.0.0", - "vfile": "^6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@mdx-js/react": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@mdx-js/react/-/react-3.0.1.tgz", - "integrity": "sha512-9ZrPIU4MGf6et1m1ov3zKf+q9+deetI51zprKB1D/z3NOb+rUxxtEl3mCjW5wTGh6VhRdwPueh1oRzi6ezkA8A==", - "license": "MIT", - "dependencies": { - "@types/mdx": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - }, - "peerDependencies": { - "@types/react": ">=16", - "react": ">=16" - } - }, - "node_modules/@mermaid-js/parser": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/@mermaid-js/parser/-/parser-0.3.0.tgz", - "integrity": "sha512-HsvL6zgE5sUPGgkIDlmAWR1HTNHz2Iy11BAWPTa4Jjabkpguy4Ze2gzfLrg6pdRuBvFwgUYyxiaNqZwrEEXepA==", - "license": "MIT", - "dependencies": { - "langium": "3.0.0" - } - }, - "node_modules/@microsoft/tsdoc": { - "version": "0.14.2", - "resolved": "https://registry.npmjs.org/@microsoft/tsdoc/-/tsdoc-0.14.2.tgz", - "integrity": "sha512-9b8mPpKrfeGRuhFH5iO1iwCLeIIsV6+H1sRfxbkoGXIyQE2BTsPd9zqSqQJ+pv5sJ/hT5M1zvOFL02MnEezFug==", - "dev": true, - "license": "MIT" - }, - "node_modules/@microsoft/tsdoc-config": { - "version": "0.16.2", - "resolved": "https://registry.npmjs.org/@microsoft/tsdoc-config/-/tsdoc-config-0.16.2.tgz", - "integrity": "sha512-OGiIzzoBLgWWR0UdRJX98oYO+XKGf7tiK4Zk6tQ/E4IJqGCe7dvkTvgDZV5cFJUzLGDOjeAXrnZoA6QkVySuxw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@microsoft/tsdoc": "0.14.2", - "ajv": "~6.12.6", - "jju": "~1.4.0", - "resolve": "~1.19.0" - } - }, - "node_modules/@microsoft/tsdoc-config/node_modules/resolve": { - "version": "1.19.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.19.0.tgz", - "integrity": "sha512-rArEXAgsBG4UgRGcynxWIWKFvh/XZCcS8UJdHhwy91zwAvCZIbcs+vAbflgBnNjYMs/i/i+/Ux6IZhML1yPvxg==", - "dev": true, - "license": "MIT", - "dependencies": { - "is-core-module": "^2.1.0", - "path-parse": "^1.0.6" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/@napi-rs/simple-git": { - "version": "0.1.19", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git/-/simple-git-0.1.19.tgz", - "integrity": "sha512-jMxvwzkKzd3cXo2EB9GM2ic0eYo2rP/BS6gJt6HnWbsDO1O8GSD4k7o2Cpr2YERtMpGF/MGcDfsfj2EbQPtrXw==", - "license": "MIT", - "engines": { - "node": ">= 10" - }, - "optionalDependencies": { - "@napi-rs/simple-git-android-arm-eabi": "0.1.19", - "@napi-rs/simple-git-android-arm64": "0.1.19", - "@napi-rs/simple-git-darwin-arm64": "0.1.19", - "@napi-rs/simple-git-darwin-x64": "0.1.19", - "@napi-rs/simple-git-freebsd-x64": "0.1.19", - "@napi-rs/simple-git-linux-arm-gnueabihf": "0.1.19", - "@napi-rs/simple-git-linux-arm64-gnu": "0.1.19", - "@napi-rs/simple-git-linux-arm64-musl": "0.1.19", - "@napi-rs/simple-git-linux-powerpc64le-gnu": "0.1.19", - "@napi-rs/simple-git-linux-s390x-gnu": "0.1.19", - "@napi-rs/simple-git-linux-x64-gnu": "0.1.19", - "@napi-rs/simple-git-linux-x64-musl": "0.1.19", - "@napi-rs/simple-git-win32-arm64-msvc": "0.1.19", - "@napi-rs/simple-git-win32-x64-msvc": "0.1.19" - } - }, - "node_modules/@napi-rs/simple-git-android-arm-eabi": { - "version": "0.1.19", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-android-arm-eabi/-/simple-git-android-arm-eabi-0.1.19.tgz", - "integrity": "sha512-XryEH/hadZ4Duk/HS/HC/cA1j0RHmqUGey3MsCf65ZS0VrWMqChXM/xlTPWuY5jfCc/rPubHaqI7DZlbexnX/g==", - "cpu": [ - "arm" - ], - "license": "MIT", - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@napi-rs/simple-git-android-arm64": { - "version": "0.1.19", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-android-arm64/-/simple-git-android-arm64-0.1.19.tgz", - "integrity": "sha512-ZQ0cPvY6nV9p7zrR9ZPo7hQBkDAcY/CHj3BjYNhykeUCiSNCrhvwX+WEeg5on8M1j4d5jcI/cwVG2FslfiByUg==", - "cpu": [ - "arm64" - ], - "license": "MIT", - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@napi-rs/simple-git-darwin-arm64": { - "version": "0.1.19", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-darwin-arm64/-/simple-git-darwin-arm64-0.1.19.tgz", - "integrity": "sha512-viZB5TYgjA1vH+QluhxZo0WKro3xBA+1xSzYx8mcxUMO5gnAoUMwXn0ZO/6Zy6pai+aGae+cj6XihGnrBRu3Pg==", - "cpu": [ - "arm64" - ], - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@napi-rs/simple-git-darwin-x64": { - "version": "0.1.19", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-darwin-x64/-/simple-git-darwin-x64-0.1.19.tgz", - "integrity": "sha512-6dNkzSNUV5X9rsVYQbpZLyJu4Gtkl2vNJ3abBXHX/Etk0ILG5ZasO3ncznIANZQpqcbn/QPHr49J2QYAXGoKJA==", - "cpu": [ - "x64" - ], - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@napi-rs/simple-git-freebsd-x64": { - "version": "0.1.19", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-freebsd-x64/-/simple-git-freebsd-x64-0.1.19.tgz", - "integrity": "sha512-sB9krVIchzd20FjI2ZZ8FDsTSsXLBdnwJ6CpeVyrhXHnoszfcqxt49ocZHujAS9lMpXq7i2Nv1EXJmCy4KdhwA==", - "cpu": [ - "x64" - ], - "license": "MIT", - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@napi-rs/simple-git-linux-arm-gnueabihf": { - "version": "0.1.19", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-arm-gnueabihf/-/simple-git-linux-arm-gnueabihf-0.1.19.tgz", - "integrity": "sha512-6HPn09lr9N1n5/XKfP8Np53g4fEXVxOFqNkS6rTH3Rm1lZHdazTRH62RggXLTguZwjcE+MvOLvoTIoR5kAS8+g==", - "cpu": [ - "arm" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@napi-rs/simple-git-linux-arm64-gnu": { - "version": "0.1.19", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-arm64-gnu/-/simple-git-linux-arm64-gnu-0.1.19.tgz", - "integrity": "sha512-G0gISckt4cVDp3oh5Z6PV3GHJrJO6Z8bIS+9xA7vTtKdqB1i5y0n3cSFLlzQciLzhr+CajFD27doW4lEyErQ/Q==", - "cpu": [ - "arm64" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@napi-rs/simple-git-linux-arm64-musl": { - "version": "0.1.19", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-arm64-musl/-/simple-git-linux-arm64-musl-0.1.19.tgz", - "integrity": "sha512-OwTRF+H4IZYxmDFRi1IrLMfqbdIpvHeYbJl2X94NVsLVOY+3NUHvEzL3fYaVx5urBaMnIK0DD3wZLbcueWvxbA==", - "cpu": [ - "arm64" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@napi-rs/simple-git-linux-powerpc64le-gnu": { - "version": "0.1.19", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-powerpc64le-gnu/-/simple-git-linux-powerpc64le-gnu-0.1.19.tgz", - "integrity": "sha512-p7zuNNVyzpRvkCt2RIGv9FX/WPcPbZ6/FRUgUTZkA2WU33mrbvNqSi4AOqCCl6mBvEd+EOw5NU4lS9ORRJvAEg==", - "cpu": [ - "powerpc64le" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@napi-rs/simple-git-linux-s390x-gnu": { - "version": "0.1.19", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-s390x-gnu/-/simple-git-linux-s390x-gnu-0.1.19.tgz", - "integrity": "sha512-6N2vwJUPLiak8GLrS0a3is0gSb0UwI2CHOOqtvQxPmv+JVI8kn3vKiUscsktdDb0wGEPeZ8PvZs0y8UWix7K4g==", - "cpu": [ - "s390x" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@napi-rs/simple-git-linux-x64-gnu": { - "version": "0.1.19", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-x64-gnu/-/simple-git-linux-x64-gnu-0.1.19.tgz", - "integrity": "sha512-61YfeO1J13WK7MalLgP3QlV6of2rWnVw1aqxWkAgy/lGxoOFSJ4Wid6ANVCEZk4tJpPX/XNeneqkUz5xpeb2Cw==", - "cpu": [ - "x64" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@napi-rs/simple-git-linux-x64-musl": { - "version": "0.1.19", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-x64-musl/-/simple-git-linux-x64-musl-0.1.19.tgz", - "integrity": "sha512-cCTWNpMJnN3PrUBItWcs3dQKCydsIasbrS3laMzq8k7OzF93Zrp2LWDTPlLCO9brbBVpBzy2Qk5Xg9uAfe/Ukw==", - "cpu": [ - "x64" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@napi-rs/simple-git-win32-arm64-msvc": { - "version": "0.1.19", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-win32-arm64-msvc/-/simple-git-win32-arm64-msvc-0.1.19.tgz", - "integrity": "sha512-sWavb1BjeLKKBA+PbTsRSSzVNfb7V/dOpaJvkgR5d2kWFn/AHmCZHSSj/3nyZdYf0BdDC+DIvqk3daAEZ6QMVw==", - "cpu": [ - "arm64" - ], - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@napi-rs/simple-git-win32-x64-msvc": { - "version": "0.1.19", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-win32-x64-msvc/-/simple-git-win32-x64-msvc-0.1.19.tgz", - "integrity": "sha512-FmNuPoK4+qwaSCkp8lm3sJlrxk374enW+zCE5ZksXlZzj/9BDJAULJb5QUJ7o9Y8A/G+d8LkdQLPBE2Jaxe5XA==", - "cpu": [ - "x64" - ], - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@neshca/cache-handler": { - "resolved": "packages/cache-handler", - "link": true - }, - "node_modules/@neshca/json-replacer-reviver": { - "resolved": "packages/json-replacer-reviver", - "link": true - }, - "node_modules/@neshca/server": { - "resolved": "packages/server", - "link": true - }, - "node_modules/@next/env": { - "version": "14.2.15", - "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.15.tgz", - "integrity": "sha512-S1qaj25Wru2dUpcIZMjxeMVSwkt8BK4dmWHHiBuRstcIyOsMapqT4A4jSB6onvqeygkSSmOkyny9VVx8JIGamQ==", - "license": "MIT" - }, - "node_modules/@next/eslint-plugin-next": { - "version": "14.2.15", - "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.2.15.tgz", - "integrity": "sha512-pKU0iqKRBlFB/ocOI1Ip2CkKePZpYpnw5bEItEkuZ/Nr9FQP1+p7VDWr4VfOdff4i9bFmrOaeaU1bFEyAcxiMQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "glob": "10.3.10" - } - }, - "node_modules/@next/eslint-plugin-next/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/@next/eslint-plugin-next/node_modules/glob": { - "version": "10.3.10", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", - "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", - "dev": true, - "license": "ISC", - "dependencies": { - "foreground-child": "^3.1.0", - "jackspeak": "^2.3.5", - "minimatch": "^9.0.1", - "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", - "path-scurry": "^1.10.1" - }, - "bin": { - "glob": "dist/esm/bin.mjs" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/@next/eslint-plugin-next/node_modules/jackspeak": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.3.6.tgz", - "integrity": "sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==", - "dev": true, - "license": "BlueOak-1.0.0", - "dependencies": { - "@isaacs/cliui": "^8.0.2" - }, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - }, - "optionalDependencies": { - "@pkgjs/parseargs": "^0.11.0" - } - }, - "node_modules/@next/eslint-plugin-next/node_modules/minimatch": { - "version": "9.0.5", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", - "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", - "dev": true, - "license": "ISC", - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/@next/eslint-plugin-next/node_modules/path-scurry": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz", - "integrity": "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==", - "dev": true, - "license": "BlueOak-1.0.0", - "dependencies": { - "lru-cache": "^10.2.0", - "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" - }, - "engines": { - "node": ">=16 || 14 >=14.18" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/@next/swc-darwin-arm64": { - "version": "14.2.15", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.15.tgz", - "integrity": "sha512-Rvh7KU9hOUBnZ9TJ28n2Oa7dD9cvDBKua9IKx7cfQQ0GoYUwg9ig31O2oMwH3wm+pE3IkAQ67ZobPfEgurPZIA==", - "cpu": [ - "arm64" - ], - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/swc-darwin-x64": { - "version": "14.2.15", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.15.tgz", - "integrity": "sha512-5TGyjFcf8ampZP3e+FyCax5zFVHi+Oe7sZyaKOngsqyaNEpOgkKB3sqmymkZfowy3ufGA/tUgDPPxpQx931lHg==", - "cpu": [ - "x64" - ], - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/swc-linux-arm64-gnu": { - "version": "14.2.15", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.15.tgz", - "integrity": "sha512-3Bwv4oc08ONiQ3FiOLKT72Q+ndEMyLNsc/D3qnLMbtUYTQAmkx9E/JRu0DBpHxNddBmNT5hxz1mYBphJ3mfrrw==", - "cpu": [ - "arm64" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/swc-linux-arm64-musl": { - "version": "14.2.15", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.15.tgz", - "integrity": "sha512-k5xf/tg1FBv/M4CMd8S+JL3uV9BnnRmoe7F+GWC3DxkTCD9aewFRH1s5rJ1zkzDa+Do4zyN8qD0N8c84Hu96FQ==", - "cpu": [ - "arm64" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/swc-linux-x64-gnu": { - "version": "14.2.15", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.15.tgz", - "integrity": "sha512-kE6q38hbrRbKEkkVn62reLXhThLRh6/TvgSP56GkFNhU22TbIrQDEMrO7j0IcQHcew2wfykq8lZyHFabz0oBrA==", - "cpu": [ - "x64" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/swc-linux-x64-musl": { - "version": "14.2.15", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.15.tgz", - "integrity": "sha512-PZ5YE9ouy/IdO7QVJeIcyLn/Rc4ml9M2G4y3kCM9MNf1YKvFY4heg3pVa/jQbMro+tP6yc4G2o9LjAz1zxD7tQ==", - "cpu": [ - "x64" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/swc-win32-arm64-msvc": { - "version": "14.2.15", - "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.15.tgz", - "integrity": "sha512-2raR16703kBvYEQD9HNLyb0/394yfqzmIeyp2nDzcPV4yPjqNUG3ohX6jX00WryXz6s1FXpVhsCo3i+g4RUX+g==", - "cpu": [ - "arm64" - ], - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/swc-win32-ia32-msvc": { - "version": "14.2.15", - "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.15.tgz", - "integrity": "sha512-fyTE8cklgkyR1p03kJa5zXEaZ9El+kDNM5A+66+8evQS5e/6v0Gk28LqA0Jet8gKSOyP+OTm/tJHzMlGdQerdQ==", - "cpu": [ - "ia32" - ], - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/swc-win32-x64-msvc": { - "version": "14.2.15", - "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.15.tgz", - "integrity": "sha512-SzqGbsLsP9OwKNUG9nekShTwhj6JSB9ZLMWQ8g1gG6hdE5gQLncbnbymrwy2yVmH9nikSLYRYxYMFu78Ggp7/g==", - "cpu": [ - "x64" - ], - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@nicolo-ribaudo/eslint-scope-5-internals": { - "version": "5.1.1-v1", - "resolved": "https://registry.npmjs.org/@nicolo-ribaudo/eslint-scope-5-internals/-/eslint-scope-5-internals-5.1.1-v1.tgz", - "integrity": "sha512-54/JRvkLIzzDWshCWfuhadfrfZVPiElY8Fcgmg1HroEly/EDSszzhBAsarCux+D/kOslTRquNzuyGSmUSTTHGg==", - "dev": true, - "license": "MIT", - "dependencies": { - "eslint-scope": "5.1.1" - } - }, - "node_modules/@nicolo-ribaudo/eslint-scope-5-internals/node_modules/eslint-scope": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", - "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^4.1.1" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/@nicolo-ribaudo/eslint-scope-5-internals/node_modules/estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", - "dev": true, - "license": "BSD-2-Clause", - "engines": { - "node": ">=4.0" - } - }, - "node_modules/@nodelib/fs.scandir": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", - "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", - "license": "MIT", - "dependencies": { - "@nodelib/fs.stat": "2.0.5", - "run-parallel": "^1.1.9" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@nodelib/fs.stat": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", - "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", - "license": "MIT", - "engines": { - "node": ">= 8" - } - }, - "node_modules/@nodelib/fs.walk": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", - "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", - "license": "MIT", - "dependencies": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@nolyfill/is-core-module": { - "version": "1.0.39", - "resolved": "https://registry.npmjs.org/@nolyfill/is-core-module/-/is-core-module-1.0.39.tgz", - "integrity": "sha512-nn5ozdjYQpUCZlWGuxcJY/KpxkWQs4DcbMCmKojjyrYDEAGy4Ce19NN4v5MduafTwJlbKc99UA8YhSVqq9yPZA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12.4.0" - } - }, - "node_modules/@pkgjs/parseargs": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", - "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", - "dev": true, - "license": "MIT", - "optional": true, - "engines": { - "node": ">=14" - } - }, - "node_modules/@pkgr/core": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@pkgr/core/-/core-0.1.1.tgz", - "integrity": "sha512-cq8o4cWH0ibXh9VGi5P20Tu9XF/0fFXl9EUinr9QfTM7a7p0oTA4iJRCQWppXR1Pg8dSM0UCItCkPwsk9qWWYA==", - "dev": true, - "license": "MIT", - "engines": { - "node": "^12.20.0 || ^14.18.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/unts" - } - }, - "node_modules/@playwright/test": { - "version": "1.49.0", - "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.49.0.tgz", - "integrity": "sha512-DMulbwQURa8rNIQrf94+jPJQ4FmOVdpE5ZppRNvWVjvhC+6sOeo28r8MgIpQRYouXRtt/FCCXU7zn20jnHR4Qw==", - "devOptional": true, - "dependencies": { - "playwright": "1.49.0" - }, - "bin": { - "playwright": "cli.js" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/@pm2/agent": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@pm2/agent/-/agent-2.0.4.tgz", - "integrity": "sha512-n7WYvvTJhHLS2oBb1PjOtgLpMhgImOq8sXkPBw6smeg9LJBWZjiEgPKOpR8mn9UJZsB5P3W4V/MyvNnp31LKeA==", - "dev": true, - "license": "AGPL-3.0", - "dependencies": { - "async": "~3.2.0", - "chalk": "~3.0.0", - "dayjs": "~1.8.24", - "debug": "~4.3.1", - "eventemitter2": "~5.0.1", - "fast-json-patch": "^3.0.0-1", - "fclone": "~1.0.11", - "nssocket": "0.6.0", - "pm2-axon": "~4.0.1", - "pm2-axon-rpc": "~0.7.0", - "proxy-agent": "~6.3.0", - "semver": "~7.5.0", - "ws": "~7.5.10" - } - }, - "node_modules/@pm2/agent/node_modules/chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@pm2/agent/node_modules/dayjs": { - "version": "1.8.36", - "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.8.36.tgz", - "integrity": "sha512-3VmRXEtw7RZKAf+4Tv1Ym9AGeo8r8+CjDi26x+7SYQil1UqtqdaokhzoEJohqlzt0m5kacJSDhJQkG/LWhpRBw==", - "dev": true, - "license": "MIT" - }, - "node_modules/@pm2/agent/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "license": "ISC", - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@pm2/agent/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "license": "ISC", - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@pm2/io": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/@pm2/io/-/io-6.0.1.tgz", - "integrity": "sha512-KiA+shC6sULQAr9mGZ1pg+6KVW9MF8NpG99x26Lf/082/Qy8qsTCtnJy+HQReW1A9Rdf0C/404cz0RZGZro+IA==", - "dev": true, - "license": "Apache-2", - "dependencies": { - "async": "~2.6.1", - "debug": "~4.3.1", - "eventemitter2": "^6.3.1", - "require-in-the-middle": "^5.0.0", - "semver": "~7.5.4", - "shimmer": "^1.2.0", - "signal-exit": "^3.0.3", - "tslib": "1.9.3" - }, - "engines": { - "node": ">=6.0" - } - }, - "node_modules/@pm2/io/node_modules/async": { - "version": "2.6.4", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.4.tgz", - "integrity": "sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==", - "dev": true, - "license": "MIT", - "dependencies": { - "lodash": "^4.17.14" - } - }, - "node_modules/@pm2/io/node_modules/eventemitter2": { - "version": "6.4.9", - "resolved": "https://registry.npmjs.org/eventemitter2/-/eventemitter2-6.4.9.tgz", - "integrity": "sha512-JEPTiaOt9f04oa6NOkc4aH+nVp5I3wEjpHbIPqfgCdD5v5bUzy7xQqwcVO2aDQgOWhI28da57HksMrzK9HlRxg==", - "dev": true, - "license": "MIT" - }, - "node_modules/@pm2/io/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "license": "ISC", - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@pm2/io/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "license": "ISC", - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@pm2/io/node_modules/signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "dev": true, - "license": "ISC" - }, - "node_modules/@pm2/io/node_modules/tslib": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.9.3.tgz", - "integrity": "sha512-4krF8scpejhaOgqzBEcGM7yDIEfi0/8+8zDRZhNZZ2kjmHJ4hv3zCbQWxoJGz1iw5U0Jl0nma13xzHXcncMavQ==", - "dev": true, - "license": "Apache-2.0" - }, - "node_modules/@pm2/js-api": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/@pm2/js-api/-/js-api-0.8.0.tgz", - "integrity": "sha512-nmWzrA/BQZik3VBz+npRcNIu01kdBhWL0mxKmP1ciF/gTcujPTQqt027N9fc1pK9ERM8RipFhymw7RcmCyOEYA==", - "dev": true, - "license": "Apache-2", - "dependencies": { - "async": "^2.6.3", - "debug": "~4.3.1", - "eventemitter2": "^6.3.1", - "extrareqp2": "^1.0.0", - "ws": "^7.0.0" - }, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/@pm2/js-api/node_modules/async": { - "version": "2.6.4", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.4.tgz", - "integrity": "sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==", - "dev": true, - "license": "MIT", - "dependencies": { - "lodash": "^4.17.14" - } - }, - "node_modules/@pm2/js-api/node_modules/eventemitter2": { - "version": "6.4.9", - "resolved": "https://registry.npmjs.org/eventemitter2/-/eventemitter2-6.4.9.tgz", - "integrity": "sha512-JEPTiaOt9f04oa6NOkc4aH+nVp5I3wEjpHbIPqfgCdD5v5bUzy7xQqwcVO2aDQgOWhI28da57HksMrzK9HlRxg==", - "dev": true, - "license": "MIT" - }, - "node_modules/@pm2/pm2-version-check": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@pm2/pm2-version-check/-/pm2-version-check-1.0.4.tgz", - "integrity": "sha512-SXsM27SGH3yTWKc2fKR4SYNxsmnvuBQ9dd6QHtEWmiZ/VqaOYPAIlS8+vMcn27YLtAEBGvNRSh3TPNvtjZgfqA==", - "dev": true, - "license": "MIT", - "dependencies": { - "debug": "^4.3.1" - } - }, - "node_modules/@react-aria/focus": { - "version": "3.18.4", - "resolved": "https://registry.npmjs.org/@react-aria/focus/-/focus-3.18.4.tgz", - "integrity": "sha512-91J35077w9UNaMK1cpMUEFRkNNz0uZjnSwiyBCFuRdaVuivO53wNC9XtWSDNDdcO5cGy87vfJRVAiyoCn/mjqA==", - "license": "Apache-2.0", - "dependencies": { - "@react-aria/interactions": "^3.22.4", - "@react-aria/utils": "^3.25.3", - "@react-types/shared": "^3.25.0", - "@swc/helpers": "^0.5.0", - "clsx": "^2.0.0" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0" - } - }, - "node_modules/@react-aria/interactions": { - "version": "3.22.4", - "resolved": "https://registry.npmjs.org/@react-aria/interactions/-/interactions-3.22.4.tgz", - "integrity": "sha512-E0vsgtpItmknq/MJELqYJwib+YN18Qag8nroqwjk1qOnBa9ROIkUhWJerLi1qs5diXq9LHKehZDXRlwPvdEFww==", - "license": "Apache-2.0", - "dependencies": { - "@react-aria/ssr": "^3.9.6", - "@react-aria/utils": "^3.25.3", - "@react-types/shared": "^3.25.0", - "@swc/helpers": "^0.5.0" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0" - } - }, - "node_modules/@react-aria/ssr": { - "version": "3.9.6", - "resolved": "https://registry.npmjs.org/@react-aria/ssr/-/ssr-3.9.6.tgz", - "integrity": "sha512-iLo82l82ilMiVGy342SELjshuWottlb5+VefO3jOQqQRNYnJBFpUSadswDPbRimSgJUZuFwIEYs6AabkP038fA==", - "license": "Apache-2.0", - "dependencies": { - "@swc/helpers": "^0.5.0" - }, - "engines": { - "node": ">= 12" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0" - } - }, - "node_modules/@react-aria/utils": { - "version": "3.25.3", - "resolved": "https://registry.npmjs.org/@react-aria/utils/-/utils-3.25.3.tgz", - "integrity": "sha512-PR5H/2vaD8fSq0H/UB9inNbc8KDcVmW6fYAfSWkkn+OAdhTTMVKqXXrZuZBWyFfSD5Ze7VN6acr4hrOQm2bmrA==", - "license": "Apache-2.0", - "dependencies": { - "@react-aria/ssr": "^3.9.6", - "@react-stately/utils": "^3.10.4", - "@react-types/shared": "^3.25.0", - "@swc/helpers": "^0.5.0", - "clsx": "^2.0.0" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0" - } - }, - "node_modules/@react-stately/utils": { - "version": "3.10.4", - "resolved": "https://registry.npmjs.org/@react-stately/utils/-/utils-3.10.4.tgz", - "integrity": "sha512-gBEQEIMRh5f60KCm7QKQ2WfvhB2gLUr9b72sqUdIZ2EG+xuPgaIlCBeSicvjmjBvYZwOjoOEnmIkcx2GHp/HWw==", - "license": "Apache-2.0", - "dependencies": { - "@swc/helpers": "^0.5.0" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0" - } - }, - "node_modules/@react-types/shared": { - "version": "3.25.0", - "resolved": "https://registry.npmjs.org/@react-types/shared/-/shared-3.25.0.tgz", - "integrity": "sha512-OZSyhzU6vTdW3eV/mz5i6hQwQUhkRs7xwY2d1aqPvTdMe0+2cY7Fwp45PAiwYLEj73i9ro2FxF9qC4DvHGSCgQ==", - "license": "Apache-2.0", - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0" - } - }, - "node_modules/@redis/bloom": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@redis/bloom/-/bloom-1.2.0.tgz", - "integrity": "sha512-HG2DFjYKbpNmVXsa0keLHp/3leGJz1mjh09f2RLGGLQZzSHpkmZWuwJbAvo3QcRY8p80m5+ZdXZdYOSBLlp7Cg==", - "license": "MIT", - "peerDependencies": { - "@redis/client": "^1.0.0" - } - }, - "node_modules/@redis/client": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/@redis/client/-/client-1.6.0.tgz", - "integrity": "sha512-aR0uffYI700OEEH4gYnitAnv3vzVGXCFvYfdpu/CJKvk4pHfLPEy/JSZyrpQ+15WhXe1yJRXLtfQ84s4mEXnPg==", - "license": "MIT", - "dependencies": { - "cluster-key-slot": "1.1.2", - "generic-pool": "3.9.0", - "yallist": "4.0.0" - }, - "engines": { - "node": ">=14" - } - }, - "node_modules/@redis/graph": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@redis/graph/-/graph-1.1.1.tgz", - "integrity": "sha512-FEMTcTHZozZciLRl6GiiIB4zGm5z5F3F6a6FZCyrfxdKOhFlGkiAqlexWMBzCi4DcRoyiOsuLfW+cjlGWyExOw==", - "license": "MIT", - "peerDependencies": { - "@redis/client": "^1.0.0" - } - }, - "node_modules/@redis/json": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/@redis/json/-/json-1.0.7.tgz", - "integrity": "sha512-6UyXfjVaTBTJtKNG4/9Z8PSpKE6XgSyEb8iwaqDcy+uKrd/DGYHTWkUdnQDyzm727V7p21WUMhsqz5oy65kPcQ==", - "license": "MIT", - "peerDependencies": { - "@redis/client": "^1.0.0" - } - }, - "node_modules/@redis/search": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@redis/search/-/search-1.2.0.tgz", - "integrity": "sha512-tYoDBbtqOVigEDMAcTGsRlMycIIjwMCgD8eR2t0NANeQmgK/lvxNAvYyb6bZDD4frHRhIHkJu2TBRvB0ERkOmw==", - "license": "MIT", - "peerDependencies": { - "@redis/client": "^1.0.0" - } - }, - "node_modules/@redis/time-series": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@redis/time-series/-/time-series-1.1.0.tgz", - "integrity": "sha512-c1Q99M5ljsIuc4YdaCwfUEXsofakb9c8+Zse2qxTadu8TalLXuAESzLvFAvNVbkmSlvlzIQOLpBCmWI9wTOt+g==", - "license": "MIT", - "peerDependencies": { - "@redis/client": "^1.0.0" - } - }, - "node_modules/@repo/backend": { - "resolved": "internal/backend", - "link": true - }, - "node_modules/@repo/cache-handler-docs": { - "resolved": "docs/cache-handler-docs", - "link": true - }, - "node_modules/@repo/cache-testing": { - "resolved": "apps/cache-testing", - "link": true - }, - "node_modules/@repo/eslint-config": { - "resolved": "internal/eslint-config", - "link": true - }, - "node_modules/@repo/next-common": { - "resolved": "internal/next-common", - "link": true - }, - "node_modules/@repo/next-lru-cache": { - "resolved": "internal/next-lru-cache", - "link": true - }, - "node_modules/@repo/prettier-config": { - "resolved": "internal/prettier-config", - "link": true - }, - "node_modules/@repo/typescript-config": { - "resolved": "internal/typescript-config", - "link": true - }, - "node_modules/@rollup/rollup-android-arm-eabi": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.24.0.tgz", - "integrity": "sha512-Q6HJd7Y6xdB48x8ZNVDOqsbh2uByBhgK8PiQgPhwkIw/HC/YX5Ghq2mQY5sRMZWHb3VsFkWooUVOZHKr7DmDIA==", - "cpu": [ - "arm" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "android" - ] - }, - "node_modules/@rollup/rollup-android-arm64": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.24.0.tgz", - "integrity": "sha512-ijLnS1qFId8xhKjT81uBHuuJp2lU4x2yxa4ctFPtG+MqEE6+C5f/+X/bStmxapgmwLwiL3ih122xv8kVARNAZA==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "android" - ] - }, - "node_modules/@rollup/rollup-darwin-arm64": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.24.0.tgz", - "integrity": "sha512-bIv+X9xeSs1XCk6DVvkO+S/z8/2AMt/2lMqdQbMrmVpgFvXlmde9mLcbQpztXm1tajC3raFDqegsH18HQPMYtA==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ] - }, - "node_modules/@rollup/rollup-darwin-x64": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.24.0.tgz", - "integrity": "sha512-X6/nOwoFN7RT2svEQWUsW/5C/fYMBe4fnLK9DQk4SX4mgVBiTA9h64kjUYPvGQ0F/9xwJ5U5UfTbl6BEjaQdBQ==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ] - }, - "node_modules/@rollup/rollup-linux-arm-gnueabihf": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.24.0.tgz", - "integrity": "sha512-0KXvIJQMOImLCVCz9uvvdPgfyWo93aHHp8ui3FrtOP57svqrF/roSSR5pjqL2hcMp0ljeGlU4q9o/rQaAQ3AYA==", - "cpu": [ - "arm" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-arm-musleabihf": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.24.0.tgz", - "integrity": "sha512-it2BW6kKFVh8xk/BnHfakEeoLPv8STIISekpoF+nBgWM4d55CZKc7T4Dx1pEbTnYm/xEKMgy1MNtYuoA8RFIWw==", - "cpu": [ - "arm" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-arm64-gnu": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.24.0.tgz", - "integrity": "sha512-i0xTLXjqap2eRfulFVlSnM5dEbTVque/3Pi4g2y7cxrs7+a9De42z4XxKLYJ7+OhE3IgxvfQM7vQc43bwTgPwA==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-arm64-musl": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.24.0.tgz", - "integrity": "sha512-9E6MKUJhDuDh604Qco5yP/3qn3y7SLXYuiC0Rpr89aMScS2UAmK1wHP2b7KAa1nSjWJc/f/Lc0Wl1L47qjiyQw==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-powerpc64le-gnu": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.24.0.tgz", - "integrity": "sha512-2XFFPJ2XMEiF5Zi2EBf4h73oR1V/lycirxZxHZNc93SqDN/IWhYYSYj8I9381ikUFXZrz2v7r2tOVk2NBwxrWw==", - "cpu": [ - "ppc64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-riscv64-gnu": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.24.0.tgz", - "integrity": "sha512-M3Dg4hlwuntUCdzU7KjYqbbd+BLq3JMAOhCKdBE3TcMGMZbKkDdJ5ivNdehOssMCIokNHFOsv7DO4rlEOfyKpg==", - "cpu": [ - "riscv64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-s390x-gnu": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.24.0.tgz", - "integrity": "sha512-mjBaoo4ocxJppTorZVKWFpy1bfFj9FeCMJqzlMQGjpNPY9JwQi7OuS1axzNIk0nMX6jSgy6ZURDZ2w0QW6D56g==", - "cpu": [ - "s390x" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-x64-gnu": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.24.0.tgz", - "integrity": "sha512-ZXFk7M72R0YYFN5q13niV0B7G8/5dcQ9JDp8keJSfr3GoZeXEoMHP/HlvqROA3OMbMdfr19IjCeNAnPUG93b6A==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-x64-musl": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.24.0.tgz", - "integrity": "sha512-w1i+L7kAXZNdYl+vFvzSZy8Y1arS7vMgIy8wusXJzRrPyof5LAb02KGr1PD2EkRcl73kHulIID0M501lN+vobQ==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-win32-arm64-msvc": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.24.0.tgz", - "integrity": "sha512-VXBrnPWgBpVDCVY6XF3LEW0pOU51KbaHhccHw6AS6vBWIC60eqsH19DAeeObl+g8nKAz04QFdl/Cefta0xQtUQ==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ] - }, - "node_modules/@rollup/rollup-win32-ia32-msvc": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.24.0.tgz", - "integrity": "sha512-xrNcGDU0OxVcPTH/8n/ShH4UevZxKIO6HJFK0e15XItZP2UcaiLFd5kiX7hJnqCbSztUF8Qot+JWBC/QXRPYWQ==", - "cpu": [ - "ia32" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ] - }, - "node_modules/@rollup/rollup-win32-x64-msvc": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.24.0.tgz", - "integrity": "sha512-fbMkAF7fufku0N2dE5TBXcNlg0pt0cJue4xBRE2Qc5Vqikxr4VCgKj/ht6SMdFcOacVA9rqF70APJ8RN/4vMJw==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ] - }, - "node_modules/@rtsao/scc": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@rtsao/scc/-/scc-1.1.0.tgz", - "integrity": "sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g==", - "dev": true, - "license": "MIT" - }, - "node_modules/@rushstack/eslint-patch": { - "version": "1.10.4", - "resolved": "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.10.4.tgz", - "integrity": "sha512-WJgX9nzTqknM393q1QJDJmoW28kUfEnybeTfVNcNAPnIx210RXm2DiXiHzfNPJNIUUb1tJnz/l4QGtJ30PgWmA==", - "dev": true, - "license": "MIT" - }, - "node_modules/@shikijs/core": { - "version": "1.22.0", - "resolved": "https://registry.npmjs.org/@shikijs/core/-/core-1.22.0.tgz", - "integrity": "sha512-S8sMe4q71TJAW+qG93s5VaiihujRK6rqDFqBnxqvga/3LvqHEnxqBIOPkt//IdXVtHkQWKu4nOQNk0uBGicU7Q==", - "license": "MIT", - "dependencies": { - "@shikijs/engine-javascript": "1.22.0", - "@shikijs/engine-oniguruma": "1.22.0", - "@shikijs/types": "1.22.0", - "@shikijs/vscode-textmate": "^9.3.0", - "@types/hast": "^3.0.4", - "hast-util-to-html": "^9.0.3" - } - }, - "node_modules/@shikijs/engine-javascript": { - "version": "1.22.0", - "resolved": "https://registry.npmjs.org/@shikijs/engine-javascript/-/engine-javascript-1.22.0.tgz", - "integrity": "sha512-AeEtF4Gcck2dwBqCFUKYfsCq0s+eEbCEbkUuFou53NZ0sTGnJnJ/05KHQFZxpii5HMXbocV9URYVowOP2wH5kw==", - "license": "MIT", - "dependencies": { - "@shikijs/types": "1.22.0", - "@shikijs/vscode-textmate": "^9.3.0", - "oniguruma-to-js": "0.4.3" - } - }, - "node_modules/@shikijs/engine-oniguruma": { - "version": "1.22.0", - "resolved": "https://registry.npmjs.org/@shikijs/engine-oniguruma/-/engine-oniguruma-1.22.0.tgz", - "integrity": "sha512-5iBVjhu/DYs1HB0BKsRRFipRrD7rqjxlWTj4F2Pf+nQSPqc3kcyqFFeZXnBMzDf0HdqaFVvhDRAGiYNvyLP+Mw==", - "license": "MIT", - "dependencies": { - "@shikijs/types": "1.22.0", - "@shikijs/vscode-textmate": "^9.3.0" - } - }, - "node_modules/@shikijs/twoslash": { - "version": "1.22.0", - "resolved": "https://registry.npmjs.org/@shikijs/twoslash/-/twoslash-1.22.0.tgz", - "integrity": "sha512-r5F/x4GTh18XzhAREehgT9lCDFZlISBSIsOFZQQaqjiOLG81PIqJN1I1D6XY58UN9OJt+3mffuKq19K4FOJKJA==", - "license": "MIT", - "dependencies": { - "@shikijs/core": "1.22.0", - "@shikijs/types": "1.22.0", - "twoslash": "^0.2.12" - } - }, - "node_modules/@shikijs/types": { - "version": "1.22.0", - "resolved": "https://registry.npmjs.org/@shikijs/types/-/types-1.22.0.tgz", - "integrity": "sha512-Fw/Nr7FGFhlQqHfxzZY8Cwtwk5E9nKDUgeLjZgt3UuhcM3yJR9xj3ZGNravZZok8XmEZMiYkSMTPlPkULB8nww==", - "license": "MIT", - "dependencies": { - "@shikijs/vscode-textmate": "^9.3.0", - "@types/hast": "^3.0.4" - } - }, - "node_modules/@shikijs/vscode-textmate": { - "version": "9.3.0", - "resolved": "https://registry.npmjs.org/@shikijs/vscode-textmate/-/vscode-textmate-9.3.0.tgz", - "integrity": "sha512-jn7/7ky30idSkd/O5yDBfAnVt+JJpepofP/POZ1iMOxK59cOfqIgg/Dj0eFsjOTMw+4ycJN0uhZH/Eb0bs/EUA==", - "license": "MIT" - }, - "node_modules/@swc/counter": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/@swc/counter/-/counter-0.1.3.tgz", - "integrity": "sha512-e2BR4lsJkkRlKZ/qCHPw9ZaSxc0MVUd7gtbtaB7aMvHeJVYe8sOB8DBZkP2DtISHGSku9sCK6T6cnY0CtXrOCQ==", - "license": "Apache-2.0" - }, - "node_modules/@swc/helpers": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.5.tgz", - "integrity": "sha512-KGYxvIOXcceOAbEk4bi/dVLEK9z8sZ0uBB3Il5b1rhfClSpcX0yfRO0KmTkqR2cnQDymwLB+25ZyMzICg/cm/A==", - "license": "Apache-2.0", - "dependencies": { - "@swc/counter": "^0.1.3", - "tslib": "^2.4.0" - } - }, - "node_modules/@tanstack/react-virtual": { - "version": "3.10.8", - "resolved": "https://registry.npmjs.org/@tanstack/react-virtual/-/react-virtual-3.10.8.tgz", - "integrity": "sha512-VbzbVGSsZlQktyLrP5nxE+vE1ZR+U0NFAWPbJLoG2+DKPwd2D7dVICTVIIaYlJqX1ZCEnYDbaOpmMwbsyhBoIA==", - "license": "MIT", - "dependencies": { - "@tanstack/virtual-core": "3.10.8" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/tannerlinsley" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0 || ^18.0.0", - "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0" - } - }, - "node_modules/@tanstack/virtual-core": { - "version": "3.10.8", - "resolved": "https://registry.npmjs.org/@tanstack/virtual-core/-/virtual-core-3.10.8.tgz", - "integrity": "sha512-PBu00mtt95jbKFi6Llk9aik8bnR3tR/oQP1o3TSi+iG//+Q2RTIzCEgKkHG8BB86kxMNW6O8wku+Lmi+QFR6jA==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/tannerlinsley" - } - }, - "node_modules/@theguild/remark-mermaid": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/@theguild/remark-mermaid/-/remark-mermaid-0.1.3.tgz", - "integrity": "sha512-2FjVlaaKXK7Zj7UJAgOVTyaahn/3/EAfqYhyXg0BfDBVUl+lXcoIWRaxzqfnDr2rv8ax6GsC5mNh6hAaT86PDw==", - "license": "MIT", - "dependencies": { - "mermaid": "^11.0.0", - "unist-util-visit": "^5.0.0" - }, - "peerDependencies": { - "react": "^18.2.0" - } - }, - "node_modules/@theguild/remark-npm2yarn": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@theguild/remark-npm2yarn/-/remark-npm2yarn-0.3.2.tgz", - "integrity": "sha512-H9T/GOuS/+4H7AY1cfD5DJIIIcGIIw1zMCB8OeTgXk7azJULsnuOurZ/CR54rvuTD+Krx0MVQccaUCvCWfP+vw==", - "license": "MIT", - "dependencies": { - "npm-to-yarn": "^3.0.0", - "unist-util-visit": "^5.0.0" - } - }, - "node_modules/@tootallnate/quickjs-emscripten": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@tootallnate/quickjs-emscripten/-/quickjs-emscripten-0.23.0.tgz", - "integrity": "sha512-C5Mc6rdnsaJDjO3UpGW/CQTHtCKaYlScZTly4JIu97Jxo/odCiH0ITnDXSJPTOrEKk/ycSZ0AOgTmkDtkOsvIA==", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/acorn": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/@types/acorn/-/acorn-4.0.6.tgz", - "integrity": "sha512-veQTnWP+1D/xbxVrPC3zHnCZRjSrKfhbMUlEA43iMZLu7EsnTtkJklIuwrCPbOi8YkvDQAiW05VQQFvvz9oieQ==", - "license": "MIT", - "dependencies": { - "@types/estree": "*" - } - }, - "node_modules/@types/debug": { - "version": "4.1.12", - "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.12.tgz", - "integrity": "sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==", - "license": "MIT", - "dependencies": { - "@types/ms": "*" - } - }, - "node_modules/@types/eslint": { - "version": "8.56.12", - "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.56.12.tgz", - "integrity": "sha512-03ruubjWyOHlmljCVoxSuNDdmfZDzsrrz0P2LeJsOXr+ZwFQ+0yQIwNCwt/GYhV7Z31fgtXJTAEs+FYlEL851g==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/estree": "*", - "@types/json-schema": "*" - } - }, - "node_modules/@types/estree": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.6.tgz", - "integrity": "sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==", - "license": "MIT" - }, - "node_modules/@types/estree-jsx": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/@types/estree-jsx/-/estree-jsx-1.0.5.tgz", - "integrity": "sha512-52CcUVNFyfb1A2ALocQw/Dd1BQFNmSdkuC3BkZ6iqhdMfQz7JWOFRuJFloOzjk+6WijU56m9oKXFAXc7o3Towg==", - "license": "MIT", - "dependencies": { - "@types/estree": "*" - } - }, - "node_modules/@types/hast": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", - "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==", - "license": "MIT", - "dependencies": { - "@types/unist": "*" - } - }, - "node_modules/@types/json-schema": { - "version": "7.0.15", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", - "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/json5": { - "version": "0.0.29", - "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", - "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/katex": { - "version": "0.16.7", - "resolved": "https://registry.npmjs.org/@types/katex/-/katex-0.16.7.tgz", - "integrity": "sha512-HMwFiRujE5PjrgwHQ25+bsLJgowjGjm5Z8FVSf0N6PwgJrwxH0QxzHYDcKsTfV3wva0vzrpqMTJS2jXPr5BMEQ==", - "license": "MIT" - }, - "node_modules/@types/mdast": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-4.0.4.tgz", - "integrity": "sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==", - "license": "MIT", - "dependencies": { - "@types/unist": "*" - } - }, - "node_modules/@types/mdx": { - "version": "2.0.13", - "resolved": "https://registry.npmjs.org/@types/mdx/-/mdx-2.0.13.tgz", - "integrity": "sha512-+OWZQfAYyio6YkJb3HLxDrvnx6SWWDbC0zVPfBRzUk0/nqoDyf6dNxQi3eArPe8rJ473nobTMQ/8Zk+LxJ+Yuw==", - "license": "MIT" - }, - "node_modules/@types/ms": { - "version": "0.7.34", - "resolved": "https://registry.npmjs.org/@types/ms/-/ms-0.7.34.tgz", - "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==", - "license": "MIT" - }, - "node_modules/@types/nlcst": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@types/nlcst/-/nlcst-2.0.3.tgz", - "integrity": "sha512-vSYNSDe6Ix3q+6Z7ri9lyWqgGhJTmzRjZRqyq15N0Z/1/UnVsno9G/N40NBijoYx2seFDIl0+B2mgAb9mezUCA==", - "license": "MIT", - "dependencies": { - "@types/unist": "*" - } - }, - "node_modules/@types/node": { - "version": "22.10.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.10.0.tgz", - "integrity": "sha512-XC70cRZVElFHfIUB40FgZOBbgJYFKKMa5nb9lxcwYstFG/Mi+/Y0bGS+rs6Dmhmkpq4pnNiLiuZAbc02YCOnmA==", - "dev": true, - "dependencies": { - "undici-types": "~6.20.0" - } - }, - "node_modules/@types/normalize-package-data": { - "version": "2.4.4", - "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.4.tgz", - "integrity": "sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/prop-types": { - "version": "15.7.13", - "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.13.tgz", - "integrity": "sha512-hCZTSvwbzWGvhqxp/RqVqwU999pBf2vp7hzIjiYOsl8wqOmUxkQ6ddw1cV3l8811+kdUFus/q4d1Y3E3SyEifA==", - "license": "MIT" - }, - "node_modules/@types/react": { - "version": "18.3.12", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.12.tgz", - "integrity": "sha512-D2wOSq/d6Agt28q7rSI3jhU7G6aiuzljDGZ2hTZHIkrTLUI+AF3WMeKkEZ9nN2fkBAlcktT6vcZjDFiIhMYEQw==", - "dependencies": { - "@types/prop-types": "*", - "csstype": "^3.0.2" - } - }, - "node_modules/@types/react-dom": { - "version": "18.3.1", - "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.3.1.tgz", - "integrity": "sha512-qW1Mfv8taImTthu4KoXgDfLuk4bydU6Q/TkADnDWWHwi4NX4BR+LWfTp2sVmTqRrsHvyDDTelgelxJ+SsejKKQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/react": "*" - } - }, - "node_modules/@types/semver": { - "version": "7.5.8", - "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.8.tgz", - "integrity": "sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/unist": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", - "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==", - "license": "MIT" - }, - "node_modules/@typescript-eslint/eslint-plugin": { - "version": "7.18.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.18.0.tgz", - "integrity": "sha512-94EQTWZ40mzBc42ATNIBimBEDltSJ9RQHCC8vc/PDbxi4k8dVwUAv4o98dk50M1zB+JGFxp43FP7f8+FP8R6Sw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@eslint-community/regexpp": "^4.10.0", - "@typescript-eslint/scope-manager": "7.18.0", - "@typescript-eslint/type-utils": "7.18.0", - "@typescript-eslint/utils": "7.18.0", - "@typescript-eslint/visitor-keys": "7.18.0", - "graphemer": "^1.4.0", - "ignore": "^5.3.1", - "natural-compare": "^1.4.0", - "ts-api-utils": "^1.3.0" - }, - "engines": { - "node": "^18.18.0 || >=20.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "@typescript-eslint/parser": "^7.0.0", - "eslint": "^8.56.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/@typescript-eslint/parser": { - "version": "7.18.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-7.18.0.tgz", - "integrity": "sha512-4Z+L8I2OqhZV8qA132M4wNL30ypZGYOQVBfMgxDH/K5UX0PNqTu1c6za9ST5r9+tavvHiTWmBnKzpCJ/GlVFtg==", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "@typescript-eslint/scope-manager": "7.18.0", - "@typescript-eslint/types": "7.18.0", - "@typescript-eslint/typescript-estree": "7.18.0", - "@typescript-eslint/visitor-keys": "7.18.0", - "debug": "^4.3.4" - }, - "engines": { - "node": "^18.18.0 || >=20.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^8.56.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/@typescript-eslint/scope-manager": { - "version": "7.18.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-7.18.0.tgz", - "integrity": "sha512-jjhdIE/FPF2B7Z1uzc6i3oWKbGcHb87Qw7AWj6jmEqNOfDFbJWtjt/XfwCpvNkpGWlcJaog5vTR+VV8+w9JflA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@typescript-eslint/types": "7.18.0", - "@typescript-eslint/visitor-keys": "7.18.0" - }, - "engines": { - "node": "^18.18.0 || >=20.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/type-utils": { - "version": "7.18.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-7.18.0.tgz", - "integrity": "sha512-XL0FJXuCLaDuX2sYqZUUSOJ2sG5/i1AAze+axqmLnSkNEVMVYLF+cbwlB2w8D1tinFuSikHmFta+P+HOofrLeA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@typescript-eslint/typescript-estree": "7.18.0", - "@typescript-eslint/utils": "7.18.0", - "debug": "^4.3.4", - "ts-api-utils": "^1.3.0" - }, - "engines": { - "node": "^18.18.0 || >=20.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^8.56.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/@typescript-eslint/types": { - "version": "7.18.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.18.0.tgz", - "integrity": "sha512-iZqi+Ds1y4EDYUtlOOC+aUmxnE9xS/yCigkjA7XpTKV6nCBd3Hp/PRGGmdwnfkV2ThMyYldP1wRpm/id99spTQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": "^18.18.0 || >=20.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/typescript-estree": { - "version": "7.18.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-7.18.0.tgz", - "integrity": "sha512-aP1v/BSPnnyhMHts8cf1qQ6Q1IFwwRvAQGRvBFkWlo3/lH29OXA3Pts+c10nxRxIBrDnoMqzhgdwVe5f2D6OzA==", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "@typescript-eslint/types": "7.18.0", - "@typescript-eslint/visitor-keys": "7.18.0", - "debug": "^4.3.4", - "globby": "^11.1.0", - "is-glob": "^4.0.3", - "minimatch": "^9.0.4", - "semver": "^7.6.0", - "ts-api-utils": "^1.3.0" - }, - "engines": { - "node": "^18.18.0 || >=20.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/minimatch": { - "version": "9.0.5", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", - "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", - "dev": true, - "license": "ISC", - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/@typescript-eslint/utils": { - "version": "7.18.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-7.18.0.tgz", - "integrity": "sha512-kK0/rNa2j74XuHVcoCZxdFBMF+aq/vH83CXAOHieC+2Gis4mF8jJXT5eAfyD3K0sAxtPuwxaIOIOvhwzVDt/kw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@eslint-community/eslint-utils": "^4.4.0", - "@typescript-eslint/scope-manager": "7.18.0", - "@typescript-eslint/types": "7.18.0", - "@typescript-eslint/typescript-estree": "7.18.0" - }, - "engines": { - "node": "^18.18.0 || >=20.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^8.56.0" - } - }, - "node_modules/@typescript-eslint/visitor-keys": { - "version": "7.18.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-7.18.0.tgz", - "integrity": "sha512-cDF0/Gf81QpY3xYyJKDV14Zwdmid5+uuENhjH2EqFaF0ni+yAyq/LzMaIJdhNJXZI7uLzwIlA+V7oWoyn6Curg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@typescript-eslint/types": "7.18.0", - "eslint-visitor-keys": "^3.4.3" - }, - "engines": { - "node": "^18.18.0 || >=20.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript/vfs": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/@typescript/vfs/-/vfs-1.6.0.tgz", - "integrity": "sha512-hvJUjNVeBMp77qPINuUvYXj4FyWeeMMKZkxEATEU3hqBAQ7qdTBCUFT7Sp0Zu0faeEtFf+ldXxMEDr/bk73ISg==", - "license": "MIT", - "dependencies": { - "debug": "^4.1.1" - }, - "peerDependencies": { - "typescript": "*" - } - }, - "node_modules/@ungap/structured-clone": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz", - "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==", - "license": "ISC" - }, - "node_modules/@vercel/style-guide": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/@vercel/style-guide/-/style-guide-6.0.0.tgz", - "integrity": "sha512-tu0wFINGz91EPwaT5VjSqUwbvCY9pvLach7SPG4XyfJKPU9Vku2TFa6+AyzJ4oroGbo9fK+TQhIFHrnFl0nCdg==", - "dev": true, - "license": "MPL-2.0", - "dependencies": { - "@babel/core": "^7.24.0", - "@babel/eslint-parser": "^7.23.10", - "@rushstack/eslint-patch": "^1.7.2", - "@typescript-eslint/eslint-plugin": "^7.1.1", - "@typescript-eslint/parser": "^7.1.1", - "eslint-config-prettier": "^9.1.0", - "eslint-import-resolver-alias": "^1.1.2", - "eslint-import-resolver-typescript": "^3.6.1", - "eslint-plugin-eslint-comments": "^3.2.0", - "eslint-plugin-import": "^2.29.1", - "eslint-plugin-jest": "^27.9.0", - "eslint-plugin-jsx-a11y": "^6.8.0", - "eslint-plugin-playwright": "^1.5.2", - "eslint-plugin-react": "^7.34.0", - "eslint-plugin-react-hooks": "^4.6.0", - "eslint-plugin-testing-library": "^6.2.0", - "eslint-plugin-tsdoc": "^0.2.17", - "eslint-plugin-unicorn": "^51.0.1", - "eslint-plugin-vitest": "^0.3.22", - "prettier-plugin-packagejson": "^2.4.12" - }, - "engines": { - "node": ">=18.18" - }, - "peerDependencies": { - "@next/eslint-plugin-next": ">=12.3.0 <15.0.0-0", - "eslint": ">=8.48.0 <9", - "prettier": ">=3.0.0 <4", - "typescript": ">=4.8.0 <6" - }, - "peerDependenciesMeta": { - "@next/eslint-plugin-next": { - "optional": true - }, - "eslint": { - "optional": true - }, - "prettier": { - "optional": true - }, - "typescript": { - "optional": true - } - } - }, - "node_modules/@vercel/style-guide/node_modules/eslint-plugin-vitest": { - "version": "0.3.26", - "resolved": "https://registry.npmjs.org/eslint-plugin-vitest/-/eslint-plugin-vitest-0.3.26.tgz", - "integrity": "sha512-oxe5JSPgRjco8caVLTh7Ti8PxpwJdhSV0hTQAmkFcNcmy/9DnqLB/oNVRA11RmVRP//2+jIIT6JuBEcpW3obYg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@typescript-eslint/utils": "^7.1.1" - }, - "engines": { - "node": "^18.0.0 || >= 20.0.0" - }, - "peerDependencies": { - "eslint": ">=8.0.0", - "vitest": "*" - }, - "peerDependenciesMeta": { - "@typescript-eslint/eslint-plugin": { - "optional": true - }, - "vitest": { - "optional": true - } - } - }, - "node_modules/@zeit/schemas": { - "version": "2.36.0", - "resolved": "https://registry.npmjs.org/@zeit/schemas/-/schemas-2.36.0.tgz", - "integrity": "sha512-7kjMwcChYEzMKjeex9ZFXkt1AyNov9R5HZtjBKVsmVpw7pa7ZtlCGvCBC2vnnXctaYN+aRI61HjIqeetZW5ROg==", - "dev": true, - "license": "MIT" - }, - "node_modules/abstract-logging": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/abstract-logging/-/abstract-logging-2.0.1.tgz", - "integrity": "sha512-2BjRTZxTPvheOvGbBslFSYOUkr+SjPtOnrLP33f+VIWLzezQpZcqVg7ja3L4dBXmzzgwT+a029jRx5PCi3JuiA==", - "license": "MIT" - }, - "node_modules/accepts": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", - "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", - "dev": true, - "license": "MIT", - "dependencies": { - "mime-types": "~2.1.34", - "negotiator": "0.6.3" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/acorn": { - "version": "8.13.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.13.0.tgz", - "integrity": "sha512-8zSiw54Oxrdym50NlZ9sUusyO1Z1ZchgRLWRaK6c86XJFClyCgFKetdowBg5bKxyp/u+CDBJG4Mpp0m3HLZl9w==", - "license": "MIT", - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/acorn-jsx": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", - "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", - "license": "MIT", - "peerDependencies": { - "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" - } - }, - "node_modules/agent-base": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz", - "integrity": "sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==", - "dev": true, - "license": "MIT", - "dependencies": { - "debug": "^4.3.4" - }, - "engines": { - "node": ">= 14" - } - }, - "node_modules/ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "license": "MIT", - "dependencies": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/ajv-formats": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-3.0.1.tgz", - "integrity": "sha512-8iUql50EUR+uUcdRQ3HDqa6EVyo3docL8g5WJ3FNcWmu62IbkGUue/pEyLBW8VGKKucTPgqeks4fIU1DA4yowQ==", - "license": "MIT", - "dependencies": { - "ajv": "^8.0.0" - }, - "peerDependencies": { - "ajv": "^8.0.0" - }, - "peerDependenciesMeta": { - "ajv": { - "optional": true - } - } - }, - "node_modules/ajv-formats/node_modules/ajv": { - "version": "8.17.1", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.17.1.tgz", - "integrity": "sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==", - "license": "MIT", - "dependencies": { - "fast-deep-equal": "^3.1.3", - "fast-uri": "^3.0.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/ajv-formats/node_modules/json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "license": "MIT" - }, - "node_modules/amp": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/amp/-/amp-0.3.1.tgz", - "integrity": "sha512-OwIuC4yZaRogHKiuU5WlMR5Xk/jAcpPtawWL05Gj8Lvm2F6mwoJt4O/bHI+DHwG79vWd+8OFYM4/BzYqyRd3qw==", - "dev": true, - "license": "MIT" - }, - "node_modules/amp-message": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/amp-message/-/amp-message-0.1.2.tgz", - "integrity": "sha512-JqutcFwoU1+jhv7ArgW38bqrE+LQdcRv4NxNw0mp0JHQyB6tXesWRjtYKlDgHRY2o3JE5UTaBGUK8kSWUdxWUg==", - "dev": true, - "license": "MIT", - "dependencies": { - "amp": "0.3.1" - } - }, - "node_modules/ansi-align": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.1.tgz", - "integrity": "sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==", - "dev": true, - "license": "ISC", - "dependencies": { - "string-width": "^4.1.0" - } - }, - "node_modules/ansi-align/node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true, - "license": "MIT" - }, - "node_modules/ansi-align/node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "license": "MIT", - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/ansi-colors": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", - "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/any-promise": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", - "integrity": "sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==", - "dev": true, - "license": "MIT" - }, - "node_modules/anymatch": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", - "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", - "dev": true, - "license": "ISC", - "dependencies": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/arch": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/arch/-/arch-2.2.0.tgz", - "integrity": "sha512-Of/R0wqp83cgHozfIYLbBMnej79U/SVGOOyuB3VVFv1NRM/PSFMK12x9KVtiYzJqmnU5WR2qp0Z5rHb7sWGnFQ==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT" - }, - "node_modules/arg": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz", - "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==" - }, - "node_modules/argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "license": "MIT", - "dependencies": { - "sprintf-js": "~1.0.2" - } - }, - "node_modules/aria-query": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.1.3.tgz", - "integrity": "sha512-R5iJ5lkuHybztUfuOAznmboyjWq8O6sqNqtK7CLOqdydi54VNbORp49mb14KbWgG1QD3JFO9hJdZ+y4KutfdOQ==", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "deep-equal": "^2.0.5" - } - }, - "node_modules/array-buffer-byte-length": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.1.tgz", - "integrity": "sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.5", - "is-array-buffer": "^3.0.4" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array-includes": { - "version": "3.1.8", - "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.8.tgz", - "integrity": "sha512-itaWrbYbqpGXkGhZPGUulwnhVf5Hpy1xiCFsGqyIGglbBxmG5vSjxQen3/WGOjPpNEv1RtBLKxbmVXm8HpJStQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.2", - "es-object-atoms": "^1.0.0", - "get-intrinsic": "^1.2.4", - "is-string": "^1.0.7" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array-iterate": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/array-iterate/-/array-iterate-2.0.1.tgz", - "integrity": "sha512-I1jXZMjAgCMmxT4qxXfPXa6SthSoE8h6gkSI9BGGNv8mP8G/v0blc+qFnZu6K42vTOiuME596QaLO0TP3Lk0xg==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/array-union": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", - "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/array.prototype.findlast": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/array.prototype.findlast/-/array.prototype.findlast-1.2.5.tgz", - "integrity": "sha512-CVvd6FHg1Z3POpBLxO6E6zr+rSKEQ9L6rZHAaY7lLfhKsWYUBBOuMs0e9o24oopj6H+geRCX0YJ+TJLBK2eHyQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.2", - "es-errors": "^1.3.0", - "es-object-atoms": "^1.0.0", - "es-shim-unscopables": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array.prototype.findlastindex": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.5.tgz", - "integrity": "sha512-zfETvRFA8o7EiNn++N5f/kaCw221hrpGsDmcpndVupkPzEc1Wuf3VgC0qby1BbHs7f5DVYjgtEU2LLh5bqeGfQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.2", - "es-errors": "^1.3.0", - "es-object-atoms": "^1.0.0", - "es-shim-unscopables": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array.prototype.flat": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.2.tgz", - "integrity": "sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "es-shim-unscopables": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array.prototype.flatmap": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.2.tgz", - "integrity": "sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "es-shim-unscopables": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array.prototype.tosorted": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/array.prototype.tosorted/-/array.prototype.tosorted-1.1.4.tgz", - "integrity": "sha512-p6Fx8B7b7ZhL/gmUsAy0D15WhvDccw3mnGNbZpi3pmeJdxtWsj2jEaI4Y6oo3XiHfzuSgPwKc04MYt6KgvC/wA==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.3", - "es-errors": "^1.3.0", - "es-shim-unscopables": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/arraybuffer.prototype.slice": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.3.tgz", - "integrity": "sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A==", - "dev": true, - "license": "MIT", - "dependencies": { - "array-buffer-byte-length": "^1.0.1", - "call-bind": "^1.0.5", - "define-properties": "^1.2.1", - "es-abstract": "^1.22.3", - "es-errors": "^1.2.1", - "get-intrinsic": "^1.2.3", - "is-array-buffer": "^3.0.4", - "is-shared-array-buffer": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/ast-types": { - "version": "0.13.4", - "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.13.4.tgz", - "integrity": "sha512-x1FCFnFifvYDDzTaLII71vG5uvDwgtmDTEVWAxrgeiR8VjMONcCXJx7E+USjDtHlwFmt9MysbqgF9b9Vjr6w+w==", - "dev": true, - "license": "MIT", - "dependencies": { - "tslib": "^2.0.1" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/ast-types-flow": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/ast-types-flow/-/ast-types-flow-0.0.8.tgz", - "integrity": "sha512-OH/2E5Fg20h2aPrbe+QL8JZQFko0YZaF+j4mnQ7BGhfavO7OpSLa8a0y9sBwomHdSbkhTS8TQNayBfnW5DwbvQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/astring": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/astring/-/astring-1.9.0.tgz", - "integrity": "sha512-LElXdjswlqjWrPpJFg1Fx4wpkOCxj1TDHlSV4PlaRxHGWko024xICaa97ZkMfs6DRKlCguiAI+rbXv5GWwXIkg==", - "license": "MIT", - "bin": { - "astring": "bin/astring" - } - }, - "node_modules/async": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/async/-/async-3.2.6.tgz", - "integrity": "sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA==", - "dev": true, - "license": "MIT" - }, - "node_modules/asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", - "license": "MIT" - }, - "node_modules/atomic-sleep": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/atomic-sleep/-/atomic-sleep-1.0.0.tgz", - "integrity": "sha512-kNOjDqAh7px0XWNI+4QbzoiR/nTkHAWNud2uvnJquD1/x5a7EQZMJT0AczqK0Qn67oY/TTQ1LbUKajZpp3I9tQ==", - "license": "MIT", - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/available-typed-arrays": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", - "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "possible-typed-array-names": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/avvio": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/avvio/-/avvio-9.1.0.tgz", - "integrity": "sha512-fYASnYi600CsH/j9EQov7lECAniYiBFiiAtBNuZYLA2leLe9qOvZzqYHFjtIj6gD2VMoMLP14834LFWvr4IfDw==", - "license": "MIT", - "dependencies": { - "@fastify/error": "^4.0.0", - "fastq": "^1.17.1" - } - }, - "node_modules/axe-core": { - "version": "4.10.1", - "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.10.1.tgz", - "integrity": "sha512-qPC9o+kD8Tir0lzNGLeghbOrWMr3ZJpaRlCIb6Uobt/7N4FiEDvqUMnxzCHRHmg8vOg14kr5gVNyScRmbMaJ9g==", - "dev": true, - "license": "MPL-2.0", - "engines": { - "node": ">=4" - } - }, - "node_modules/axios": { - "version": "1.7.8", - "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.8.tgz", - "integrity": "sha512-Uu0wb7KNqK2t5K+YQyVCLM76prD5sRFjKHbJYCP1J7JFGEQ6nN7HWn9+04LAeiJ3ji54lgS/gZCH1oxyrf1SPw==", - "dependencies": { - "follow-redirects": "^1.15.6", - "form-data": "^4.0.0", - "proxy-from-env": "^1.1.0" - } - }, - "node_modules/axobject-query": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-4.1.0.tgz", - "integrity": "sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==", - "dev": true, - "license": "Apache-2.0", - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/bail": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/bail/-/bail-2.0.2.tgz", - "integrity": "sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "dev": true, - "license": "MIT" - }, - "node_modules/basic-ftp": { - "version": "5.0.5", - "resolved": "https://registry.npmjs.org/basic-ftp/-/basic-ftp-5.0.5.tgz", - "integrity": "sha512-4Bcg1P8xhUuqcii/S0Z9wiHIrQVPMermM1any+MX5GeGD7faD3/msQUDGLol9wOcz4/jbg/WJnGqoJF6LiBdtg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/better-path-resolve": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/better-path-resolve/-/better-path-resolve-1.0.0.tgz", - "integrity": "sha512-pbnl5XzGBdrFU/wT4jqmJVPn2B6UHPBOhzMQkY/SPUPB6QtUXtmBHBIwCbXJol93mOpGMnQyP/+BB19q04xj7g==", - "dependencies": { - "is-windows": "^1.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/better-react-mathjax": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/better-react-mathjax/-/better-react-mathjax-2.0.3.tgz", - "integrity": "sha512-wfifT8GFOKb1TWm2+E50I6DJpLZ5kLbch283Lu043EJtwSv0XvZDjr4YfR4d2MjAhqP6SH4VjjrKgbX8R00oCQ==", - "license": "MIT", - "dependencies": { - "mathjax-full": "^3.2.2" - }, - "peerDependencies": { - "react": ">=16.8" - } - }, - "node_modules/binary-extensions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", - "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/blessed": { - "version": "0.1.81", - "resolved": "https://registry.npmjs.org/blessed/-/blessed-0.1.81.tgz", - "integrity": "sha512-LoF5gae+hlmfORcG1M5+5XZi4LBmvlXTzwJWzUlPryN/SJdSflZvROM2TwkT0GMpq7oqT48NRd4GS7BiVBc5OQ==", - "dev": true, - "license": "MIT", - "bin": { - "blessed": "bin/tput.js" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/bodec": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/bodec/-/bodec-0.1.0.tgz", - "integrity": "sha512-Ylo+MAo5BDUq1KA3f3R/MFhh+g8cnHmo8bz3YPGhI1znrMaf77ol1sfvYJzsw3nTE+Y2GryfDxBaR+AqpAkEHQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/boxen": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/boxen/-/boxen-7.0.0.tgz", - "integrity": "sha512-j//dBVuyacJbvW+tvZ9HuH03fZ46QcaKvvhZickZqtB271DxJ7SNRSNxrV/dZX0085m7hISRZWbzWlJvx/rHSg==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-align": "^3.0.1", - "camelcase": "^7.0.0", - "chalk": "^5.0.1", - "cli-boxes": "^3.0.0", - "string-width": "^5.1.2", - "type-fest": "^2.13.0", - "widest-line": "^4.0.1", - "wrap-ansi": "^8.0.1" - }, - "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/boxen/node_modules/chalk": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.3.0.tgz", - "integrity": "sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==", - "dev": true, - "license": "MIT", - "engines": { - "node": "^12.17.0 || ^14.13 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/boxen/node_modules/type-fest": { - "version": "2.19.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz", - "integrity": "sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==", - "dev": true, - "license": "(MIT OR CC0-1.0)", - "engines": { - "node": ">=12.20" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/braces": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", - "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", - "license": "MIT", - "dependencies": { - "fill-range": "^7.1.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/browserslist": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.0.tgz", - "integrity": "sha512-Rmb62sR1Zpjql25eSanFGEhAxcFwfA1K0GuQcLoaJBAcENegrQut3hYdhXFF1obQfiDyqIW/cLM5HSJ/9k884A==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "license": "MIT", - "dependencies": { - "caniuse-lite": "^1.0.30001663", - "electron-to-chromium": "^1.5.28", - "node-releases": "^2.0.18", - "update-browserslist-db": "^1.1.0" - }, - "bin": { - "browserslist": "cli.js" - }, - "engines": { - "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" - } - }, - "node_modules/buffer-from": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/builtin-modules": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.3.0.tgz", - "integrity": "sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/bundle-require": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/bundle-require/-/bundle-require-5.0.0.tgz", - "integrity": "sha512-GuziW3fSSmopcx4KRymQEJVbZUfqlCqcq7dvs6TYwKRZiegK/2buMxQTPs6MGlNv50wms1699qYO54R8XfRX4w==", - "dev": true, - "license": "MIT", - "dependencies": { - "load-tsconfig": "^0.2.3" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "peerDependencies": { - "esbuild": ">=0.18" - } - }, - "node_modules/busboy": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/busboy/-/busboy-1.6.0.tgz", - "integrity": "sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==", - "dependencies": { - "streamsearch": "^1.1.0" - }, - "engines": { - "node": ">=10.16.0" - } - }, - "node_modules/bytes": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", - "integrity": "sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/cac": { - "version": "6.7.14", - "resolved": "https://registry.npmjs.org/cac/-/cac-6.7.14.tgz", - "integrity": "sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/call-bind": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.7.tgz", - "integrity": "sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==", - "dev": true, - "license": "MIT", - "dependencies": { - "es-define-property": "^1.0.0", - "es-errors": "^1.3.0", - "function-bind": "^1.1.2", - "get-intrinsic": "^1.2.4", - "set-function-length": "^1.2.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/camelcase": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-7.0.1.tgz", - "integrity": "sha512-xlx1yCK2Oc1APsPXDL2LdlNP6+uu8OCDdhOBSVT279M/S+y75O30C2VuD8T2ogdePBBl7PfPF4504tnLgX3zfw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/caniuse-lite": { - "version": "1.0.30001669", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001669.tgz", - "integrity": "sha512-DlWzFDJqstqtIVx1zeSpIMLjunf5SmwOw0N2Ck/QSQdS8PLS4+9HrLaYei4w8BIAL7IB/UEDu889d8vhCTPA0w==", - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/caniuse-lite" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "license": "CC-BY-4.0" - }, - "node_modules/ccount": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/ccount/-/ccount-2.0.1.tgz", - "integrity": "sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/chalk-template": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/chalk-template/-/chalk-template-0.4.0.tgz", - "integrity": "sha512-/ghrgmhfY8RaSdeo43hNXxpoHAtxdbskUHjPpfqUWGttFgycUhYPGx3YZBCnUCvOa7Doivn1IZec3DEGFoMgLg==", - "dev": true, - "license": "MIT", - "dependencies": { - "chalk": "^4.1.2" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/chalk-template?sponsor=1" - } - }, - "node_modules/character-entities": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/character-entities/-/character-entities-2.0.2.tgz", - "integrity": "sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/character-entities-html4": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/character-entities-html4/-/character-entities-html4-2.1.0.tgz", - "integrity": "sha512-1v7fgQRj6hnSwFpq1Eu0ynr/CDEw0rXo2B61qXrLNdHZmPKgb7fqS1a2JwF0rISo9q77jDI8VMEHoApn8qDoZA==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/character-entities-legacy": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-3.0.0.tgz", - "integrity": "sha512-RpPp0asT/6ufRm//AJVwpViZbGM/MkjQFxJccQRHmISF/22NBtsHqAWmL+/pmkPWoIUJdWyeVleTl1wydHATVQ==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/character-reference-invalid": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/character-reference-invalid/-/character-reference-invalid-2.0.1.tgz", - "integrity": "sha512-iBZ4F4wRbyORVsu0jPV7gXkOsGYjGHPmAyv+HiHG8gi5PtC9KI2j1+v8/tlibRvjoWX027ypmG/n0HtO5t7unw==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/chardet": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", - "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", - "license": "MIT" - }, - "node_modules/charm": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/charm/-/charm-0.1.2.tgz", - "integrity": "sha512-syedaZ9cPe7r3hoQA9twWYKu5AIyCswN5+szkmPBe9ccdLrj4bYaCnLVPTLd2kgVRc7+zoX4tyPgRnFKCj5YjQ==", - "dev": true, - "license": "MIT/X11" - }, - "node_modules/chevrotain": { - "version": "11.0.3", - "resolved": "https://registry.npmjs.org/chevrotain/-/chevrotain-11.0.3.tgz", - "integrity": "sha512-ci2iJH6LeIkvP9eJW6gpueU8cnZhv85ELY8w8WiFtNjMHA5ad6pQLaJo9mEly/9qUyCpvqX8/POVUTf18/HFdw==", - "license": "Apache-2.0", - "dependencies": { - "@chevrotain/cst-dts-gen": "11.0.3", - "@chevrotain/gast": "11.0.3", - "@chevrotain/regexp-to-ast": "11.0.3", - "@chevrotain/types": "11.0.3", - "@chevrotain/utils": "11.0.3", - "lodash-es": "4.17.21" - } - }, - "node_modules/chevrotain-allstar": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/chevrotain-allstar/-/chevrotain-allstar-0.3.1.tgz", - "integrity": "sha512-b7g+y9A0v4mxCW1qUhf3BSVPg+/NvGErk/dOkrDaHA0nQIQGAtrOjlX//9OQtRlSCy+x9rfB5N8yC71lH1nvMw==", - "license": "MIT", - "dependencies": { - "lodash-es": "^4.17.21" - }, - "peerDependencies": { - "chevrotain": "^11.0.0" - } - }, - "node_modules/chokidar": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", - "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", - "dev": true, - "license": "MIT", - "dependencies": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" - }, - "engines": { - "node": ">= 8.10.0" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - }, - "optionalDependencies": { - "fsevents": "~2.3.2" - } - }, - "node_modules/chokidar/node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, - "license": "ISC", - "dependencies": { - "is-glob": "^4.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/ci-info": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz", - "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/sibiraj-s" - } - ], - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/clean-regexp": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/clean-regexp/-/clean-regexp-1.0.0.tgz", - "integrity": "sha512-GfisEZEJvzKrmGWkvfhgzcz/BllN1USeqD2V6tg14OAOgaCD2Z/PUEuxnAZ/nPvmaHRG7a8y77p1T/IRQ4D1Hw==", - "dev": true, - "license": "MIT", - "dependencies": { - "escape-string-regexp": "^1.0.5" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/clean-regexp/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/cli-boxes": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-3.0.0.tgz", - "integrity": "sha512-/lzGpEWL/8PfI0BmBOPRwp0c/wFNX1RdUML3jK/RcSBA9T8mZDdQpqYBKtCFTOfQbwPqWEOpjqW+Fnayc0969g==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/cli-tableau": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/cli-tableau/-/cli-tableau-2.0.1.tgz", - "integrity": "sha512-he+WTicka9cl0Fg/y+YyxcN6/bfQ/1O3QmgxRXDhABKqLzvoOSM4fMzp39uMyLBulAFuywD2N7UaoQE7WaADxQ==", - "dev": true, - "dependencies": { - "chalk": "3.0.0" - }, - "engines": { - "node": ">=8.10.0" - } - }, - "node_modules/cli-tableau/node_modules/chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/client-only": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/client-only/-/client-only-0.0.1.tgz", - "integrity": "sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==", - "license": "MIT" - }, - "node_modules/clipboardy": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/clipboardy/-/clipboardy-4.0.0.tgz", - "integrity": "sha512-5mOlNS0mhX0707P2I0aZ2V/cmHUEO/fL7VFLqszkhUsxt7RwnmrInf/eEQKlf5GzvYeHIjT+Ov1HRfNmymlG0w==", - "dependencies": { - "execa": "^8.0.1", - "is-wsl": "^3.1.0", - "is64bit": "^2.0.0" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/clipboardy/node_modules/is-wsl": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-3.1.0.tgz", - "integrity": "sha512-UcVfVfaK4Sc4m7X3dUSoHoozQGBEFeDC+zVo06t98xe8CzHSZZBekNXH+tu0NalHolcJ/QAGqS46Hef7QXBIMw==", - "dependencies": { - "is-inside-container": "^1.0.0" - }, - "engines": { - "node": ">=16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/clsx": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/clsx/-/clsx-2.1.1.tgz", - "integrity": "sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==", - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/cluster-key-slot": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/cluster-key-slot/-/cluster-key-slot-1.1.2.tgz", - "integrity": "sha512-RMr0FhtfXemyinomL4hrWcYJxmX6deFdCxpJzhDttxgO1+bcCnkk+9drydLVDmAMG7NE6aN/fl4F7ucU/90gAA==", - "license": "Apache-2.0", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/collapse-white-space": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/collapse-white-space/-/collapse-white-space-2.1.0.tgz", - "integrity": "sha512-loKTxY1zCOuG4j9f6EPnuyyYkf58RnhhWTvRoZEokgB+WbdXehfjFviyOVYkqzEWz1Q5kRiZdBYS5SwxbQYwzw==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true, - "license": "MIT" - }, - "node_modules/colorette": { - "version": "2.0.20", - "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz", - "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==", - "dev": true, - "license": "MIT" - }, - "node_modules/combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", - "license": "MIT", - "dependencies": { - "delayed-stream": "~1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/comma-separated-tokens": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/comma-separated-tokens/-/comma-separated-tokens-2.0.3.tgz", - "integrity": "sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/commander": { - "version": "8.3.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz", - "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==", - "license": "MIT", - "engines": { - "node": ">= 12" - } - }, - "node_modules/compressible": { - "version": "2.0.18", - "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", - "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", - "dev": true, - "license": "MIT", - "dependencies": { - "mime-db": ">= 1.43.0 < 2" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/compression": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz", - "integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "accepts": "~1.3.5", - "bytes": "3.0.0", - "compressible": "~2.0.16", - "debug": "2.6.9", - "on-headers": "~1.0.2", - "safe-buffer": "5.1.2", - "vary": "~1.1.2" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/compression/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "license": "MIT", - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/compression/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true, - "license": "MIT" - }, - "node_modules/compression/node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true, - "license": "MIT" - }, - "node_modules/compute-scroll-into-view": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/compute-scroll-into-view/-/compute-scroll-into-view-3.1.0.tgz", - "integrity": "sha512-rj8l8pD4bJ1nx+dAkMhV1xB5RuZEyVysfxJqB1pRchh1KVvwOv9b7CGB8ZfjTImVv2oF+sYMUkMZq6Na5Ftmbg==", - "license": "MIT" - }, - "node_modules/concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", - "dev": true, - "license": "MIT" - }, - "node_modules/confbox": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/confbox/-/confbox-0.1.8.tgz", - "integrity": "sha512-RMtmw0iFkeR4YV+fUOSucriAQNb9g8zFR52MWCtl+cCZOFRNL6zeB395vPzFhEjjn4fMxXudmELnl/KF/WrK6w==", - "license": "MIT" - }, - "node_modules/consola": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/consola/-/consola-3.2.3.tgz", - "integrity": "sha512-I5qxpzLv+sJhTVEoLYNcTW+bThDCPsit0vLNKShZx6rLtpilNpmmeTPaeqJb9ZE9dV3DGaeby6Vuhrw38WjeyQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": "^14.18.0 || >=16.10.0" - } - }, - "node_modules/content-disposition": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.2.tgz", - "integrity": "sha512-kRGRZw3bLlFISDBgwTSA1TMBFN6J6GWDeubmDE3AF+3+yXL8hTWv8r5rkLbqYXY4RjPk/EzHnClI3zQf1cFmHA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/convert-source-map": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", - "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", - "dev": true, - "license": "MIT" - }, - "node_modules/cookie": { - "version": "0.7.2", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.2.tgz", - "integrity": "sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w==", - "license": "MIT", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/core-js-compat": { - "version": "3.38.1", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.38.1.tgz", - "integrity": "sha512-JRH6gfXxGmrzF3tZ57lFx97YARxCXPaMzPo6jELZhv88pBH5VXpQ+y0znKGlFnzuaihqhLbefxSJxWJMPtfDzw==", - "dev": true, - "license": "MIT", - "dependencies": { - "browserslist": "^4.23.3" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/core-js" - } - }, - "node_modules/cose-base": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/cose-base/-/cose-base-1.0.3.tgz", - "integrity": "sha512-s9whTXInMSgAp/NVXVNuVxVKzGH2qck3aQlVHxDCdAEPgtMKwc4Wq6/QKhgdEdgbLSi9rBTAcPoRa6JpiG4ksg==", - "license": "MIT", - "dependencies": { - "layout-base": "^1.0.0" - } - }, - "node_modules/croner": { - "version": "4.1.97", - "resolved": "https://registry.npmjs.org/croner/-/croner-4.1.97.tgz", - "integrity": "sha512-/f6gpQuxDaqXu+1kwQYSckUglPaOrHdbIlBAu0YuW8/Cdb45XwXYNUBXg3r/9Mo6n540Kn/smKcZWko5x99KrQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/cross-spawn": { - "version": "7.0.6", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", - "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", - "dependencies": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/csstype": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", - "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==", - "license": "MIT" - }, - "node_modules/culvert": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/culvert/-/culvert-0.1.2.tgz", - "integrity": "sha512-yi1x3EAWKjQTreYWeSd98431AV+IEE0qoDyOoaHJ7KJ21gv6HtBXHVLX74opVSGqcR8/AbjJBHAHpcOy2bj5Gg==", - "dev": true, - "license": "MIT" - }, - "node_modules/cytoscape": { - "version": "3.30.2", - "resolved": "https://registry.npmjs.org/cytoscape/-/cytoscape-3.30.2.tgz", - "integrity": "sha512-oICxQsjW8uSaRmn4UK/jkczKOqTrVqt5/1WL0POiJUT2EKNc9STM4hYFHv917yu55aTBMFNRzymlJhVAiWPCxw==", - "license": "MIT", - "engines": { - "node": ">=0.10" - } - }, - "node_modules/cytoscape-cose-bilkent": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/cytoscape-cose-bilkent/-/cytoscape-cose-bilkent-4.1.0.tgz", - "integrity": "sha512-wgQlVIUJF13Quxiv5e1gstZ08rnZj2XaLHGoFMYXz7SkNfCDOOteKBE6SYRfA9WxxI/iBc3ajfDoc6hb/MRAHQ==", - "license": "MIT", - "dependencies": { - "cose-base": "^1.0.0" - }, - "peerDependencies": { - "cytoscape": "^3.2.0" - } - }, - "node_modules/cytoscape-fcose": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/cytoscape-fcose/-/cytoscape-fcose-2.2.0.tgz", - "integrity": "sha512-ki1/VuRIHFCzxWNrsshHYPs6L7TvLu3DL+TyIGEsRcvVERmxokbf5Gdk7mFxZnTdiGtnA4cfSmjZJMviqSuZrQ==", - "license": "MIT", - "dependencies": { - "cose-base": "^2.2.0" - }, - "peerDependencies": { - "cytoscape": "^3.2.0" - } - }, - "node_modules/cytoscape-fcose/node_modules/cose-base": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/cose-base/-/cose-base-2.2.0.tgz", - "integrity": "sha512-AzlgcsCbUMymkADOJtQm3wO9S3ltPfYOFD5033keQn9NJzIbtnZj+UdBJe7DYml/8TdbtHJW3j58SOnKhWY/5g==", - "license": "MIT", - "dependencies": { - "layout-base": "^2.0.0" - } - }, - "node_modules/cytoscape-fcose/node_modules/layout-base": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/layout-base/-/layout-base-2.0.1.tgz", - "integrity": "sha512-dp3s92+uNI1hWIpPGH3jK2kxE2lMjdXdr+DH8ynZHpd6PUlH6x6cbuXnoMmiNumznqaNO31xu9e79F0uuZ0JFg==", - "license": "MIT" - }, - "node_modules/d3": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/d3/-/d3-7.9.0.tgz", - "integrity": "sha512-e1U46jVP+w7Iut8Jt8ri1YsPOvFpg46k+K8TpCb0P+zjCkjkPnV7WzfDJzMHy1LnA+wj5pLT1wjO901gLXeEhA==", - "license": "ISC", - "dependencies": { - "d3-array": "3", - "d3-axis": "3", - "d3-brush": "3", - "d3-chord": "3", - "d3-color": "3", - "d3-contour": "4", - "d3-delaunay": "6", - "d3-dispatch": "3", - "d3-drag": "3", - "d3-dsv": "3", - "d3-ease": "3", - "d3-fetch": "3", - "d3-force": "3", - "d3-format": "3", - "d3-geo": "3", - "d3-hierarchy": "3", - "d3-interpolate": "3", - "d3-path": "3", - "d3-polygon": "3", - "d3-quadtree": "3", - "d3-random": "3", - "d3-scale": "4", - "d3-scale-chromatic": "3", - "d3-selection": "3", - "d3-shape": "3", - "d3-time": "3", - "d3-time-format": "4", - "d3-timer": "3", - "d3-transition": "3", - "d3-zoom": "3" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-array": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/d3-array/-/d3-array-3.2.4.tgz", - "integrity": "sha512-tdQAmyA18i4J7wprpYq8ClcxZy3SC31QMeByyCFyRt7BVHdREQZ5lpzoe5mFEYZUWe+oq8HBvk9JjpibyEV4Jg==", - "license": "ISC", - "dependencies": { - "internmap": "1 - 2" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-axis": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/d3-axis/-/d3-axis-3.0.0.tgz", - "integrity": "sha512-IH5tgjV4jE/GhHkRV0HiVYPDtvfjHQlQfJHs0usq7M30XcSBvOotpmH1IgkcXsO/5gEQZD43B//fc7SRT5S+xw==", - "license": "ISC", - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-brush": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/d3-brush/-/d3-brush-3.0.0.tgz", - "integrity": "sha512-ALnjWlVYkXsVIGlOsuWH1+3udkYFI48Ljihfnh8FZPF2QS9o+PzGLBslO0PjzVoHLZ2KCVgAM8NVkXPJB2aNnQ==", - "license": "ISC", - "dependencies": { - "d3-dispatch": "1 - 3", - "d3-drag": "2 - 3", - "d3-interpolate": "1 - 3", - "d3-selection": "3", - "d3-transition": "3" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-chord": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/d3-chord/-/d3-chord-3.0.1.tgz", - "integrity": "sha512-VE5S6TNa+j8msksl7HwjxMHDM2yNK3XCkusIlpX5kwauBfXuyLAtNg9jCp/iHH61tgI4sb6R/EIMWCqEIdjT/g==", - "license": "ISC", - "dependencies": { - "d3-path": "1 - 3" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-color": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/d3-color/-/d3-color-3.1.0.tgz", - "integrity": "sha512-zg/chbXyeBtMQ1LbD/WSoW2DpC3I0mpmPdW+ynRTj/x2DAWYrIY7qeZIHidozwV24m4iavr15lNwIwLxRmOxhA==", - "license": "ISC", - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-contour": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/d3-contour/-/d3-contour-4.0.2.tgz", - "integrity": "sha512-4EzFTRIikzs47RGmdxbeUvLWtGedDUNkTcmzoeyg4sP/dvCexO47AaQL7VKy/gul85TOxw+IBgA8US2xwbToNA==", - "license": "ISC", - "dependencies": { - "d3-array": "^3.2.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-delaunay": { - "version": "6.0.4", - "resolved": "https://registry.npmjs.org/d3-delaunay/-/d3-delaunay-6.0.4.tgz", - "integrity": "sha512-mdjtIZ1XLAM8bm/hx3WwjfHt6Sggek7qH043O8KEjDXN40xi3vx/6pYSVTwLjEgiXQTbvaouWKynLBiUZ6SK6A==", - "license": "ISC", - "dependencies": { - "delaunator": "5" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-dispatch": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/d3-dispatch/-/d3-dispatch-3.0.1.tgz", - "integrity": "sha512-rzUyPU/S7rwUflMyLc1ETDeBj0NRuHKKAcvukozwhshr6g6c5d8zh4c2gQjY2bZ0dXeGLWc1PF174P2tVvKhfg==", - "license": "ISC", - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-drag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/d3-drag/-/d3-drag-3.0.0.tgz", - "integrity": "sha512-pWbUJLdETVA8lQNJecMxoXfH6x+mO2UQo8rSmZ+QqxcbyA3hfeprFgIT//HW2nlHChWeIIMwS2Fq+gEARkhTkg==", - "license": "ISC", - "dependencies": { - "d3-dispatch": "1 - 3", - "d3-selection": "3" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-dsv": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/d3-dsv/-/d3-dsv-3.0.1.tgz", - "integrity": "sha512-UG6OvdI5afDIFP9w4G0mNq50dSOsXHJaRE8arAS5o9ApWnIElp8GZw1Dun8vP8OyHOZ/QJUKUJwxiiCCnUwm+Q==", - "license": "ISC", - "dependencies": { - "commander": "7", - "iconv-lite": "0.6", - "rw": "1" - }, - "bin": { - "csv2json": "bin/dsv2json.js", - "csv2tsv": "bin/dsv2dsv.js", - "dsv2dsv": "bin/dsv2dsv.js", - "dsv2json": "bin/dsv2json.js", - "json2csv": "bin/json2dsv.js", - "json2dsv": "bin/json2dsv.js", - "json2tsv": "bin/json2dsv.js", - "tsv2csv": "bin/dsv2dsv.js", - "tsv2json": "bin/dsv2json.js" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-dsv/node_modules/commander": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz", - "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==", - "license": "MIT", - "engines": { - "node": ">= 10" - } - }, - "node_modules/d3-dsv/node_modules/iconv-lite": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", - "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", - "license": "MIT", - "dependencies": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/d3-ease": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/d3-ease/-/d3-ease-3.0.1.tgz", - "integrity": "sha512-wR/XK3D3XcLIZwpbvQwQ5fK+8Ykds1ip7A2Txe0yxncXSdq1L9skcG7blcedkOX+ZcgxGAmLX1FrRGbADwzi0w==", - "license": "BSD-3-Clause", - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-fetch": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/d3-fetch/-/d3-fetch-3.0.1.tgz", - "integrity": "sha512-kpkQIM20n3oLVBKGg6oHrUchHM3xODkTzjMoj7aWQFq5QEM+R6E4WkzT5+tojDY7yjez8KgCBRoj4aEr99Fdqw==", - "license": "ISC", - "dependencies": { - "d3-dsv": "1 - 3" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-force": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/d3-force/-/d3-force-3.0.0.tgz", - "integrity": "sha512-zxV/SsA+U4yte8051P4ECydjD/S+qeYtnaIyAs9tgHCqfguma/aAQDjo85A9Z6EKhBirHRJHXIgJUlffT4wdLg==", - "license": "ISC", - "dependencies": { - "d3-dispatch": "1 - 3", - "d3-quadtree": "1 - 3", - "d3-timer": "1 - 3" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-format": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/d3-format/-/d3-format-3.1.0.tgz", - "integrity": "sha512-YyUI6AEuY/Wpt8KWLgZHsIU86atmikuoOmCfommt0LYHiQSPjvX2AcFc38PX0CBpr2RCyZhjex+NS/LPOv6YqA==", - "license": "ISC", - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-geo": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/d3-geo/-/d3-geo-3.1.1.tgz", - "integrity": "sha512-637ln3gXKXOwhalDzinUgY83KzNWZRKbYubaG+fGVuc/dxO64RRljtCTnf5ecMyE1RIdtqpkVcq0IbtU2S8j2Q==", - "license": "ISC", - "dependencies": { - "d3-array": "2.5.0 - 3" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-hierarchy": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/d3-hierarchy/-/d3-hierarchy-3.1.2.tgz", - "integrity": "sha512-FX/9frcub54beBdugHjDCdikxThEqjnR93Qt7PvQTOHxyiNCAlvMrHhclk3cD5VeAaq9fxmfRp+CnWw9rEMBuA==", - "license": "ISC", - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-interpolate": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/d3-interpolate/-/d3-interpolate-3.0.1.tgz", - "integrity": "sha512-3bYs1rOD33uo8aqJfKP3JWPAibgw8Zm2+L9vBKEHJ2Rg+viTR7o5Mmv5mZcieN+FRYaAOWX5SJATX6k1PWz72g==", - "license": "ISC", - "dependencies": { - "d3-color": "1 - 3" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-path": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/d3-path/-/d3-path-3.1.0.tgz", - "integrity": "sha512-p3KP5HCf/bvjBSSKuXid6Zqijx7wIfNW+J/maPs+iwR35at5JCbLUT0LzF1cnjbCHWhqzQTIN2Jpe8pRebIEFQ==", - "license": "ISC", - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-polygon": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/d3-polygon/-/d3-polygon-3.0.1.tgz", - "integrity": "sha512-3vbA7vXYwfe1SYhED++fPUQlWSYTTGmFmQiany/gdbiWgU/iEyQzyymwL9SkJjFFuCS4902BSzewVGsHHmHtXg==", - "license": "ISC", - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-quadtree": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/d3-quadtree/-/d3-quadtree-3.0.1.tgz", - "integrity": "sha512-04xDrxQTDTCFwP5H6hRhsRcb9xxv2RzkcsygFzmkSIOJy3PeRJP7sNk3VRIbKXcog561P9oU0/rVH6vDROAgUw==", - "license": "ISC", - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-random": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/d3-random/-/d3-random-3.0.1.tgz", - "integrity": "sha512-FXMe9GfxTxqd5D6jFsQ+DJ8BJS4E/fT5mqqdjovykEB2oFbTMDVdg1MGFxfQW+FBOGoB++k8swBrgwSHT1cUXQ==", - "license": "ISC", - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-sankey": { - "version": "0.12.3", - "resolved": "https://registry.npmjs.org/d3-sankey/-/d3-sankey-0.12.3.tgz", - "integrity": "sha512-nQhsBRmM19Ax5xEIPLMY9ZmJ/cDvd1BG3UVvt5h3WRxKg5zGRbvnteTyWAbzeSvlh3tW7ZEmq4VwR5mB3tutmQ==", - "license": "BSD-3-Clause", - "dependencies": { - "d3-array": "1 - 2", - "d3-shape": "^1.2.0" - } - }, - "node_modules/d3-sankey/node_modules/d3-array": { - "version": "2.12.1", - "resolved": "https://registry.npmjs.org/d3-array/-/d3-array-2.12.1.tgz", - "integrity": "sha512-B0ErZK/66mHtEsR1TkPEEkwdy+WDesimkM5gpZr5Dsg54BiTA5RXtYW5qTLIAcekaS9xfZrzBLF/OAkB3Qn1YQ==", - "license": "BSD-3-Clause", - "dependencies": { - "internmap": "^1.0.0" - } - }, - "node_modules/d3-sankey/node_modules/d3-path": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/d3-path/-/d3-path-1.0.9.tgz", - "integrity": "sha512-VLaYcn81dtHVTjEHd8B+pbe9yHWpXKZUC87PzoFmsFrJqgFwDe/qxfp5MlfsfM1V5E/iVt0MmEbWQ7FVIXh/bg==", - "license": "BSD-3-Clause" - }, - "node_modules/d3-sankey/node_modules/d3-shape": { - "version": "1.3.7", - "resolved": "https://registry.npmjs.org/d3-shape/-/d3-shape-1.3.7.tgz", - "integrity": "sha512-EUkvKjqPFUAZyOlhY5gzCxCeI0Aep04LwIRpsZ/mLFelJiUfnK56jo5JMDSE7yyP2kLSb6LtF+S5chMk7uqPqw==", - "license": "BSD-3-Clause", - "dependencies": { - "d3-path": "1" - } - }, - "node_modules/d3-sankey/node_modules/internmap": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/internmap/-/internmap-1.0.1.tgz", - "integrity": "sha512-lDB5YccMydFBtasVtxnZ3MRBHuaoE8GKsppq+EchKL2U4nK/DmEpPHNH8MZe5HkMtpSiTSOZwfN0tzYjO/lJEw==", - "license": "ISC" - }, - "node_modules/d3-scale": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/d3-scale/-/d3-scale-4.0.2.tgz", - "integrity": "sha512-GZW464g1SH7ag3Y7hXjf8RoUuAFIqklOAq3MRl4OaWabTFJY9PN/E1YklhXLh+OQ3fM9yS2nOkCoS+WLZ6kvxQ==", - "license": "ISC", - "dependencies": { - "d3-array": "2.10.0 - 3", - "d3-format": "1 - 3", - "d3-interpolate": "1.2.0 - 3", - "d3-time": "2.1.1 - 3", - "d3-time-format": "2 - 4" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-scale-chromatic": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/d3-scale-chromatic/-/d3-scale-chromatic-3.1.0.tgz", - "integrity": "sha512-A3s5PWiZ9YCXFye1o246KoscMWqf8BsD9eRiJ3He7C9OBaxKhAd5TFCdEx/7VbKtxxTsu//1mMJFrEt572cEyQ==", - "license": "ISC", - "dependencies": { - "d3-color": "1 - 3", - "d3-interpolate": "1 - 3" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-selection": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/d3-selection/-/d3-selection-3.0.0.tgz", - "integrity": "sha512-fmTRWbNMmsmWq6xJV8D19U/gw/bwrHfNXxrIN+HfZgnzqTHp9jOmKMhsTUjXOJnZOdZY9Q28y4yebKzqDKlxlQ==", - "license": "ISC", - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-shape": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/d3-shape/-/d3-shape-3.2.0.tgz", - "integrity": "sha512-SaLBuwGm3MOViRq2ABk3eLoxwZELpH6zhl3FbAoJ7Vm1gofKx6El1Ib5z23NUEhF9AsGl7y+dzLe5Cw2AArGTA==", - "license": "ISC", - "dependencies": { - "d3-path": "^3.1.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-time": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/d3-time/-/d3-time-3.1.0.tgz", - "integrity": "sha512-VqKjzBLejbSMT4IgbmVgDjpkYrNWUYJnbCGo874u7MMKIWsILRX+OpX/gTk8MqjpT1A/c6HY2dCA77ZN0lkQ2Q==", - "license": "ISC", - "dependencies": { - "d3-array": "2 - 3" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-time-format": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/d3-time-format/-/d3-time-format-4.1.0.tgz", - "integrity": "sha512-dJxPBlzC7NugB2PDLwo9Q8JiTR3M3e4/XANkreKSUxF8vvXKqm1Yfq4Q5dl8budlunRVlUUaDUgFt7eA8D6NLg==", - "license": "ISC", - "dependencies": { - "d3-time": "1 - 3" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-timer": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/d3-timer/-/d3-timer-3.0.1.tgz", - "integrity": "sha512-ndfJ/JxxMd3nw31uyKoY2naivF+r29V+Lc0svZxe1JvvIRmi8hUsrMvdOwgS1o6uBHmiz91geQ0ylPP0aj1VUA==", - "license": "ISC", - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-transition": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/d3-transition/-/d3-transition-3.0.1.tgz", - "integrity": "sha512-ApKvfjsSR6tg06xrL434C0WydLr7JewBB3V+/39RMHsaXTOG0zmt/OAXeng5M5LBm0ojmxJrpomQVZ1aPvBL4w==", - "license": "ISC", - "dependencies": { - "d3-color": "1 - 3", - "d3-dispatch": "1 - 3", - "d3-ease": "1 - 3", - "d3-interpolate": "1 - 3", - "d3-timer": "1 - 3" - }, - "engines": { - "node": ">=12" - }, - "peerDependencies": { - "d3-selection": "2 - 3" - } - }, - "node_modules/d3-zoom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/d3-zoom/-/d3-zoom-3.0.0.tgz", - "integrity": "sha512-b8AmV3kfQaqWAuacbPuNbL6vahnOJflOhexLzMMNLga62+/nh0JzvJ0aO/5a5MVgUFGS7Hu1P9P03o3fJkDCyw==", - "license": "ISC", - "dependencies": { - "d3-dispatch": "1 - 3", - "d3-drag": "2 - 3", - "d3-interpolate": "1 - 3", - "d3-selection": "2 - 3", - "d3-transition": "2 - 3" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/dagre-d3-es": { - "version": "7.0.10", - "resolved": "https://registry.npmjs.org/dagre-d3-es/-/dagre-d3-es-7.0.10.tgz", - "integrity": "sha512-qTCQmEhcynucuaZgY5/+ti3X/rnszKZhEQH/ZdWdtP1tA/y3VoHJzcVrO9pjjJCNpigfscAtoUB5ONcd2wNn0A==", - "license": "MIT", - "dependencies": { - "d3": "^7.8.2", - "lodash-es": "^4.17.21" - } - }, - "node_modules/damerau-levenshtein": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/damerau-levenshtein/-/damerau-levenshtein-1.0.8.tgz", - "integrity": "sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==", - "dev": true, - "license": "BSD-2-Clause" - }, - "node_modules/data-uri-to-buffer": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-6.0.2.tgz", - "integrity": "sha512-7hvf7/GW8e86rW0ptuwS3OcBGDjIi6SZva7hCyWC0yYry2cOPmLIjXAUHI6DK2HsnwJd9ifmt57i8eV2n4YNpw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 14" - } - }, - "node_modules/data-view-buffer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.1.tgz", - "integrity": "sha512-0lht7OugA5x3iJLOWFhWK/5ehONdprk0ISXqVFn/NFrDu+cuc8iADFrGQz5BnRK7LLU3JmkbXSxaqX+/mXYtUA==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.6", - "es-errors": "^1.3.0", - "is-data-view": "^1.0.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/data-view-byte-length": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.1.tgz", - "integrity": "sha512-4J7wRJD3ABAzr8wP+OcIcqq2dlUKp4DVflx++hs5h5ZKydWMI6/D/fAot+yh6g2tHh8fLFTvNOaVN357NvSrOQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.7", - "es-errors": "^1.3.0", - "is-data-view": "^1.0.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/data-view-byte-offset": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.0.tgz", - "integrity": "sha512-t/Ygsytq+R995EJ5PZlD4Cu56sWa8InXySaViRzw9apusqsOO2bQP+SbYzAhR0pFKoB+43lYy8rWban9JSuXnA==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.6", - "es-errors": "^1.3.0", - "is-data-view": "^1.0.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/dateformat": { - "version": "4.6.3", - "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-4.6.3.tgz", - "integrity": "sha512-2P0p0pFGzHS5EMnhdxQi7aJN+iMheud0UhG4dlE1DLAlvL8JHjJJTX/CSm4JXwV0Ka5nGk3zC5mcb5bUQUxxMA==", - "dev": true, - "license": "MIT", - "engines": { - "node": "*" - } - }, - "node_modules/dayjs": { - "version": "1.11.13", - "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.13.tgz", - "integrity": "sha512-oaMBel6gjolK862uaPQOVTA7q3TZhuSvuMQAAglQDOWYO9A91IrAOUJEyKVlqJlHE0vq5p5UXxzdPfMH/x6xNg==", - "license": "MIT" - }, - "node_modules/debug": { - "version": "4.3.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz", - "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==", - "license": "MIT", - "dependencies": { - "ms": "^2.1.3" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/decode-named-character-reference": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/decode-named-character-reference/-/decode-named-character-reference-1.0.2.tgz", - "integrity": "sha512-O8x12RzrUF8xyVcY0KJowWsmaJxQbmy0/EtnNtHRpsOcT7dFk5W598coHqBVpmWo1oQQfsCqfCmkZN5DJrZVdg==", - "license": "MIT", - "dependencies": { - "character-entities": "^2.0.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/deep-equal": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-2.2.3.tgz", - "integrity": "sha512-ZIwpnevOurS8bpT4192sqAowWM76JDKSHYzMLty3BZGSswgq6pBaH3DhCSW5xVAZICZyKdOBPjwww5wfgT/6PA==", - "dev": true, - "license": "MIT", - "dependencies": { - "array-buffer-byte-length": "^1.0.0", - "call-bind": "^1.0.5", - "es-get-iterator": "^1.1.3", - "get-intrinsic": "^1.2.2", - "is-arguments": "^1.1.1", - "is-array-buffer": "^3.0.2", - "is-date-object": "^1.0.5", - "is-regex": "^1.1.4", - "is-shared-array-buffer": "^1.0.2", - "isarray": "^2.0.5", - "object-is": "^1.1.5", - "object-keys": "^1.1.1", - "object.assign": "^4.1.4", - "regexp.prototype.flags": "^1.5.1", - "side-channel": "^1.0.4", - "which-boxed-primitive": "^1.0.2", - "which-collection": "^1.0.1", - "which-typed-array": "^1.1.13" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/deep-extend": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", - "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/deep-is": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", - "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/define-data-property": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", - "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", - "dev": true, - "license": "MIT", - "dependencies": { - "es-define-property": "^1.0.0", - "es-errors": "^1.3.0", - "gopd": "^1.0.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/define-properties": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", - "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", - "dev": true, - "license": "MIT", - "dependencies": { - "define-data-property": "^1.0.1", - "has-property-descriptors": "^1.0.0", - "object-keys": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/degenerator": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/degenerator/-/degenerator-5.0.1.tgz", - "integrity": "sha512-TllpMR/t0M5sqCXfj85i4XaAzxmS5tVA16dqvdkMwGmzI+dXLXnw3J+3Vdv7VKw+ThlTMboK6i9rnZ6Nntj5CQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "ast-types": "^0.13.4", - "escodegen": "^2.1.0", - "esprima": "^4.0.1" - }, - "engines": { - "node": ">= 14" - } - }, - "node_modules/delaunator": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/delaunator/-/delaunator-5.0.1.tgz", - "integrity": "sha512-8nvh+XBe96aCESrGOqMp/84b13H9cdKbG5P2ejQCh4d4sK9RL4371qou9drQjMhvnPmhWl5hnmqbEE0fXr9Xnw==", - "license": "ISC", - "dependencies": { - "robust-predicates": "^3.0.2" - } - }, - "node_modules/delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", - "license": "MIT", - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/dequal": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/dequal/-/dequal-2.0.3.tgz", - "integrity": "sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==", - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/detect-indent": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-6.1.0.tgz", - "integrity": "sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA==", - "engines": { - "node": ">=8" - } - }, - "node_modules/detect-newline": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-4.0.1.tgz", - "integrity": "sha512-qE3Veg1YXzGHQhlA6jzebZN2qVf6NX+A7m7qlhCGG30dJixrAQhYOsJjsnBjJkCSmuOPpCk30145fr8FV0bzog==", - "dev": true, - "license": "MIT", - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/devlop": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/devlop/-/devlop-1.1.0.tgz", - "integrity": "sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==", - "license": "MIT", - "dependencies": { - "dequal": "^2.0.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/dir-glob": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", - "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", - "license": "MIT", - "dependencies": { - "path-type": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/doctrine": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", - "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "esutils": "^2.0.2" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/dompurify": { - "version": "3.1.6", - "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-3.1.6.tgz", - "integrity": "sha512-cTOAhc36AalkjtBpfG6O8JimdTMWNXjiePT2xQH/ppBGi/4uIpmj8eKyIkMJErXWARyINV/sB38yf8JCLF5pbQ==", - "license": "(MPL-2.0 OR Apache-2.0)" - }, - "node_modules/dotenv": { - "version": "16.4.5", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.4.5.tgz", - "integrity": "sha512-ZmdL2rui+eB2YwhsWzjInR8LldtZHGDoQ1ugH85ppHKwpUHL7j7rN0Ti9NCnGiQbhaZ11FpR+7ao1dNsmduNUg==", - "dev": true, - "license": "BSD-2-Clause", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://dotenvx.com" - } - }, - "node_modules/dotenv-cli": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/dotenv-cli/-/dotenv-cli-7.4.4.tgz", - "integrity": "sha512-XkBYCG0tPIes+YZr4SpfFv76SQrV/LeCE8CI7JSEMi3VR9MvTihCGTOtbIexD6i2mXF+6px7trb1imVCXSNMDw==", - "dev": true, - "dependencies": { - "cross-spawn": "^7.0.6", - "dotenv": "^16.3.0", - "dotenv-expand": "^10.0.0", - "minimist": "^1.2.6" - }, - "bin": { - "dotenv": "cli.js" - } - }, - "node_modules/dotenv-expand": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/dotenv-expand/-/dotenv-expand-10.0.0.tgz", - "integrity": "sha512-GopVGCpVS1UKH75VKHGuQFqS1Gusej0z4FyQkPdwjil2gNIv+LNsqBlboOzpJFZKVT95GkCyWJbBSdFEFUWI2A==", - "dev": true, - "license": "BSD-2-Clause", - "engines": { - "node": ">=12" - } - }, - "node_modules/eastasianwidth": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", - "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", - "dev": true, - "license": "MIT" - }, - "node_modules/electron-to-chromium": { - "version": "1.5.41", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.41.tgz", - "integrity": "sha512-dfdv/2xNjX0P8Vzme4cfzHqnPm5xsZXwsolTYr0eyW18IUmNyG08vL+fttvinTfhKfIKdRoqkDIC9e9iWQCNYQ==", - "dev": true, - "license": "ISC" - }, - "node_modules/emoji-regex": { - "version": "9.2.2", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", - "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", - "dev": true, - "license": "MIT" - }, - "node_modules/end-of-stream": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", - "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", - "dev": true, - "license": "MIT", - "dependencies": { - "once": "^1.4.0" - } - }, - "node_modules/enhanced-resolve": { - "version": "5.17.1", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.17.1.tgz", - "integrity": "sha512-LMHl3dXhTcfv8gM4kEzIUeTQ+7fpdA0l2tUf34BddXPkz2A5xJ5L/Pchd5BL6rdccM9QGvu0sWZzK1Z1t4wwyg==", - "dev": true, - "license": "MIT", - "dependencies": { - "graceful-fs": "^4.2.4", - "tapable": "^2.2.0" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/enquirer": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.4.1.tgz", - "integrity": "sha512-rRqJg/6gd538VHvR3PSrdRBb/1Vy2YfzHqzvbhGIQpDRKIa4FgV/54b5Q1xYSxOOwKvjXweS26E0Q+nAMwp2pQ==", - "license": "MIT", - "dependencies": { - "ansi-colors": "^4.1.1", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/entities": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", - "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", - "license": "BSD-2-Clause", - "engines": { - "node": ">=0.12" - }, - "funding": { - "url": "https://github.com/fb55/entities?sponsor=1" - } - }, - "node_modules/error-ex": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", - "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", - "dev": true, - "license": "MIT", - "dependencies": { - "is-arrayish": "^0.2.1" - } - }, - "node_modules/es-abstract": { - "version": "1.23.3", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.23.3.tgz", - "integrity": "sha512-e+HfNH61Bj1X9/jLc5v1owaLYuHdeHHSQlkhCBiTK8rBvKaULl/beGMxwrMXjpYrv4pz22BlY570vVePA2ho4A==", - "dev": true, - "license": "MIT", - "dependencies": { - "array-buffer-byte-length": "^1.0.1", - "arraybuffer.prototype.slice": "^1.0.3", - "available-typed-arrays": "^1.0.7", - "call-bind": "^1.0.7", - "data-view-buffer": "^1.0.1", - "data-view-byte-length": "^1.0.1", - "data-view-byte-offset": "^1.0.0", - "es-define-property": "^1.0.0", - "es-errors": "^1.3.0", - "es-object-atoms": "^1.0.0", - "es-set-tostringtag": "^2.0.3", - "es-to-primitive": "^1.2.1", - "function.prototype.name": "^1.1.6", - "get-intrinsic": "^1.2.4", - "get-symbol-description": "^1.0.2", - "globalthis": "^1.0.3", - "gopd": "^1.0.1", - "has-property-descriptors": "^1.0.2", - "has-proto": "^1.0.3", - "has-symbols": "^1.0.3", - "hasown": "^2.0.2", - "internal-slot": "^1.0.7", - "is-array-buffer": "^3.0.4", - "is-callable": "^1.2.7", - "is-data-view": "^1.0.1", - "is-negative-zero": "^2.0.3", - "is-regex": "^1.1.4", - "is-shared-array-buffer": "^1.0.3", - "is-string": "^1.0.7", - "is-typed-array": "^1.1.13", - "is-weakref": "^1.0.2", - "object-inspect": "^1.13.1", - "object-keys": "^1.1.1", - "object.assign": "^4.1.5", - "regexp.prototype.flags": "^1.5.2", - "safe-array-concat": "^1.1.2", - "safe-regex-test": "^1.0.3", - "string.prototype.trim": "^1.2.9", - "string.prototype.trimend": "^1.0.8", - "string.prototype.trimstart": "^1.0.8", - "typed-array-buffer": "^1.0.2", - "typed-array-byte-length": "^1.0.1", - "typed-array-byte-offset": "^1.0.2", - "typed-array-length": "^1.0.6", - "unbox-primitive": "^1.0.2", - "which-typed-array": "^1.1.15" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/es-define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.0.tgz", - "integrity": "sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "get-intrinsic": "^1.2.4" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/es-errors": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", - "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/es-get-iterator": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/es-get-iterator/-/es-get-iterator-1.1.3.tgz", - "integrity": "sha512-sPZmqHBe6JIiTfN5q2pEi//TwxmAFHwj/XEuYjTuse78i8KxaqMTTzxPoFKuzRpDpTJ+0NAbpfenkmH2rePtuw==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.3", - "has-symbols": "^1.0.3", - "is-arguments": "^1.1.1", - "is-map": "^2.0.2", - "is-set": "^2.0.2", - "is-string": "^1.0.7", - "isarray": "^2.0.5", - "stop-iteration-iterator": "^1.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/es-iterator-helpers": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/es-iterator-helpers/-/es-iterator-helpers-1.1.0.tgz", - "integrity": "sha512-/SurEfycdyssORP/E+bj4sEu1CWw4EmLDsHynHwSXQ7utgbrMRWW195pTrCjFgFCddf/UkYm3oqKPRq5i8bJbw==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.3", - "es-errors": "^1.3.0", - "es-set-tostringtag": "^2.0.3", - "function-bind": "^1.1.2", - "get-intrinsic": "^1.2.4", - "globalthis": "^1.0.4", - "has-property-descriptors": "^1.0.2", - "has-proto": "^1.0.3", - "has-symbols": "^1.0.3", - "internal-slot": "^1.0.7", - "iterator.prototype": "^1.1.3", - "safe-array-concat": "^1.1.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/es-object-atoms": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.0.0.tgz", - "integrity": "sha512-MZ4iQ6JwHOBQjahnjwaC1ZtIBH+2ohjamzAO3oaHcXYup7qxjF2fixyH+Q71voWHeOkI2q/TnJao/KfXYIZWbw==", - "dev": true, - "license": "MIT", - "dependencies": { - "es-errors": "^1.3.0" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/es-set-tostringtag": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.3.tgz", - "integrity": "sha512-3T8uNMC3OQTHkFUsFq8r/BwAXLHvU/9O9mE0fBc/MY5iq/8H7ncvO947LmYA6ldWw9Uh8Yhf25zu6n7nML5QWQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "get-intrinsic": "^1.2.4", - "has-tostringtag": "^1.0.2", - "hasown": "^2.0.1" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/es-shim-unscopables": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.2.tgz", - "integrity": "sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw==", - "dev": true, - "license": "MIT", - "dependencies": { - "hasown": "^2.0.0" - } - }, - "node_modules/es-to-primitive": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", - "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", - "dev": true, - "license": "MIT", - "dependencies": { - "is-callable": "^1.1.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/esbuild": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.23.1.tgz", - "integrity": "sha512-VVNz/9Sa0bs5SELtn3f7qhJCDPCF5oMEl5cO9/SSinpE9hbPVvxbd572HH5AKiP7WD8INO53GgfDDhRjkylHEg==", - "dev": true, - "hasInstallScript": true, - "license": "MIT", - "bin": { - "esbuild": "bin/esbuild" - }, - "engines": { - "node": ">=18" - }, - "optionalDependencies": { - "@esbuild/aix-ppc64": "0.23.1", - "@esbuild/android-arm": "0.23.1", - "@esbuild/android-arm64": "0.23.1", - "@esbuild/android-x64": "0.23.1", - "@esbuild/darwin-arm64": "0.23.1", - "@esbuild/darwin-x64": "0.23.1", - "@esbuild/freebsd-arm64": "0.23.1", - "@esbuild/freebsd-x64": "0.23.1", - "@esbuild/linux-arm": "0.23.1", - "@esbuild/linux-arm64": "0.23.1", - "@esbuild/linux-ia32": "0.23.1", - "@esbuild/linux-loong64": "0.23.1", - "@esbuild/linux-mips64el": "0.23.1", - "@esbuild/linux-ppc64": "0.23.1", - "@esbuild/linux-riscv64": "0.23.1", - "@esbuild/linux-s390x": "0.23.1", - "@esbuild/linux-x64": "0.23.1", - "@esbuild/netbsd-x64": "0.23.1", - "@esbuild/openbsd-arm64": "0.23.1", - "@esbuild/openbsd-x64": "0.23.1", - "@esbuild/sunos-x64": "0.23.1", - "@esbuild/win32-arm64": "0.23.1", - "@esbuild/win32-ia32": "0.23.1", - "@esbuild/win32-x64": "0.23.1" - } - }, - "node_modules/escalade": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", - "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/escodegen": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-2.1.0.tgz", - "integrity": "sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w==", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "esprima": "^4.0.1", - "estraverse": "^5.2.0", - "esutils": "^2.0.2" - }, - "bin": { - "escodegen": "bin/escodegen.js", - "esgenerate": "bin/esgenerate.js" - }, - "engines": { - "node": ">=6.0" - }, - "optionalDependencies": { - "source-map": "~0.6.1" - } - }, - "node_modules/escodegen/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "license": "BSD-3-Clause", - "optional": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/eslint": { - "version": "8.57.1", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.57.1.tgz", - "integrity": "sha512-ypowyDxpVSYpkXr9WPv2PAZCtNip1Mv5KTW0SCurXv/9iOpcrH9PaqUElksqEB6pChqHGDRCFTyrZlGhnLNGiA==", - "deprecated": "This version is no longer supported. Please see https://eslint.org/version-support for other options.", - "dev": true, - "license": "MIT", - "dependencies": { - "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.6.1", - "@eslint/eslintrc": "^2.1.4", - "@eslint/js": "8.57.1", - "@humanwhocodes/config-array": "^0.13.0", - "@humanwhocodes/module-importer": "^1.0.1", - "@nodelib/fs.walk": "^1.2.8", - "@ungap/structured-clone": "^1.2.0", - "ajv": "^6.12.4", - "chalk": "^4.0.0", - "cross-spawn": "^7.0.2", - "debug": "^4.3.2", - "doctrine": "^3.0.0", - "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.2.2", - "eslint-visitor-keys": "^3.4.3", - "espree": "^9.6.1", - "esquery": "^1.4.2", - "esutils": "^2.0.2", - "fast-deep-equal": "^3.1.3", - "file-entry-cache": "^6.0.1", - "find-up": "^5.0.0", - "glob-parent": "^6.0.2", - "globals": "^13.19.0", - "graphemer": "^1.4.0", - "ignore": "^5.2.0", - "imurmurhash": "^0.1.4", - "is-glob": "^4.0.0", - "is-path-inside": "^3.0.3", - "js-yaml": "^4.1.0", - "json-stable-stringify-without-jsonify": "^1.0.1", - "levn": "^0.4.1", - "lodash.merge": "^4.6.2", - "minimatch": "^3.1.2", - "natural-compare": "^1.4.0", - "optionator": "^0.9.3", - "strip-ansi": "^6.0.1", - "text-table": "^0.2.0" - }, - "bin": { - "eslint": "bin/eslint.js" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/eslint-config-prettier": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-9.1.0.tgz", - "integrity": "sha512-NSWl5BFQWEPi1j4TjVNItzYV7dZXZ+wP6I6ZhrBGpChQhZRUaElihE9uRRkcbRnNb76UMKDF3r+WTmNcGPKsqw==", - "dev": true, - "license": "MIT", - "bin": { - "eslint-config-prettier": "bin/cli.js" - }, - "peerDependencies": { - "eslint": ">=7.0.0" - } - }, - "node_modules/eslint-config-turbo": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/eslint-config-turbo/-/eslint-config-turbo-2.3.2.tgz", - "integrity": "sha512-gIH/BQdbfWNa9uw/Obo7PZa/NNilZNP8STD0ppVKd8ekSVFONm2GebvOxNiSr5zHregRzokfynnHjZfB5ngJig==", - "dev": true, - "dependencies": { - "eslint-plugin-turbo": "2.3.2" - }, - "peerDependencies": { - "eslint": ">6.6.0" - } - }, - "node_modules/eslint-import-resolver-alias": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/eslint-import-resolver-alias/-/eslint-import-resolver-alias-1.1.2.tgz", - "integrity": "sha512-WdviM1Eu834zsfjHtcGHtGfcu+F30Od3V7I9Fi57uhBEwPkjDcii7/yW8jAT+gOhn4P/vOxxNAXbFAKsrrc15w==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 4" - }, - "peerDependencies": { - "eslint-plugin-import": ">=1.4.0" - } - }, - "node_modules/eslint-import-resolver-node": { - "version": "0.3.9", - "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz", - "integrity": "sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==", - "dev": true, - "license": "MIT", - "dependencies": { - "debug": "^3.2.7", - "is-core-module": "^2.13.0", - "resolve": "^1.22.4" - } - }, - "node_modules/eslint-import-resolver-node/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "ms": "^2.1.1" - } - }, - "node_modules/eslint-import-resolver-typescript": { - "version": "3.6.3", - "resolved": "https://registry.npmjs.org/eslint-import-resolver-typescript/-/eslint-import-resolver-typescript-3.6.3.tgz", - "integrity": "sha512-ud9aw4szY9cCT1EWWdGv1L1XR6hh2PaRWif0j2QjQ0pgTY/69iw+W0Z4qZv5wHahOl8isEr+k/JnyAqNQkLkIA==", - "dev": true, - "license": "ISC", - "dependencies": { - "@nolyfill/is-core-module": "1.0.39", - "debug": "^4.3.5", - "enhanced-resolve": "^5.15.0", - "eslint-module-utils": "^2.8.1", - "fast-glob": "^3.3.2", - "get-tsconfig": "^4.7.5", - "is-bun-module": "^1.0.2", - "is-glob": "^4.0.3" - }, - "engines": { - "node": "^14.18.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/unts/projects/eslint-import-resolver-ts" - }, - "peerDependencies": { - "eslint": "*", - "eslint-plugin-import": "*", - "eslint-plugin-import-x": "*" - }, - "peerDependenciesMeta": { - "eslint-plugin-import": { - "optional": true - }, - "eslint-plugin-import-x": { - "optional": true - } - } - }, - "node_modules/eslint-module-utils": { - "version": "2.12.0", - "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.12.0.tgz", - "integrity": "sha512-wALZ0HFoytlyh/1+4wuZ9FJCD/leWHQzzrxJ8+rebyReSLk7LApMyd3WJaLVoN+D5+WIdJyDK1c6JnE65V4Zyg==", - "dev": true, - "license": "MIT", - "dependencies": { - "debug": "^3.2.7" - }, - "engines": { - "node": ">=4" - }, - "peerDependenciesMeta": { - "eslint": { - "optional": true - } - } - }, - "node_modules/eslint-module-utils/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "ms": "^2.1.1" - } - }, - "node_modules/eslint-plugin-eslint-comments": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-eslint-comments/-/eslint-plugin-eslint-comments-3.2.0.tgz", - "integrity": "sha512-0jkOl0hfojIHHmEHgmNdqv4fmh7300NdpA9FFpF7zaoLvB/QeXOGNLIo86oAveJFrfB1p05kC8hpEMHM8DwWVQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "escape-string-regexp": "^1.0.5", - "ignore": "^5.0.5" - }, - "engines": { - "node": ">=6.5.0" - }, - "funding": { - "url": "https://github.com/sponsors/mysticatea" - }, - "peerDependencies": { - "eslint": ">=4.19.1" - } - }, - "node_modules/eslint-plugin-eslint-comments/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/eslint-plugin-import": { - "version": "2.31.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.31.0.tgz", - "integrity": "sha512-ixmkI62Rbc2/w8Vfxyh1jQRTdRTF52VxwRVHl/ykPAmqG+Nb7/kNn+byLP0LxPgI7zWA16Jt82SybJInmMia3A==", - "dev": true, - "license": "MIT", - "dependencies": { - "@rtsao/scc": "^1.1.0", - "array-includes": "^3.1.8", - "array.prototype.findlastindex": "^1.2.5", - "array.prototype.flat": "^1.3.2", - "array.prototype.flatmap": "^1.3.2", - "debug": "^3.2.7", - "doctrine": "^2.1.0", - "eslint-import-resolver-node": "^0.3.9", - "eslint-module-utils": "^2.12.0", - "hasown": "^2.0.2", - "is-core-module": "^2.15.1", - "is-glob": "^4.0.3", - "minimatch": "^3.1.2", - "object.fromentries": "^2.0.8", - "object.groupby": "^1.0.3", - "object.values": "^1.2.0", - "semver": "^6.3.1", - "string.prototype.trimend": "^1.0.8", - "tsconfig-paths": "^3.15.0" - }, - "engines": { - "node": ">=4" - }, - "peerDependencies": { - "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 || ^9" - } - }, - "node_modules/eslint-plugin-import/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "ms": "^2.1.1" - } - }, - "node_modules/eslint-plugin-import/node_modules/doctrine": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "esutils": "^2.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/eslint-plugin-import/node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true, - "license": "ISC", - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/eslint-plugin-jest": { - "version": "27.9.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-jest/-/eslint-plugin-jest-27.9.0.tgz", - "integrity": "sha512-QIT7FH7fNmd9n4se7FFKHbsLKGQiw885Ds6Y/sxKgCZ6natwCsXdgPOADnYVxN2QrRweF0FZWbJ6S7Rsn7llug==", - "dev": true, - "license": "MIT", - "dependencies": { - "@typescript-eslint/utils": "^5.10.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - }, - "peerDependencies": { - "@typescript-eslint/eslint-plugin": "^5.0.0 || ^6.0.0 || ^7.0.0", - "eslint": "^7.0.0 || ^8.0.0", - "jest": "*" - }, - "peerDependenciesMeta": { - "@typescript-eslint/eslint-plugin": { - "optional": true - }, - "jest": { - "optional": true - } - } - }, - "node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/scope-manager": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.62.0.tgz", - "integrity": "sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==", - "dev": true, - "license": "MIT", - "dependencies": { - "@typescript-eslint/types": "5.62.0", - "@typescript-eslint/visitor-keys": "5.62.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/types": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.62.0.tgz", - "integrity": "sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.62.0.tgz", - "integrity": "sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "@typescript-eslint/types": "5.62.0", - "@typescript-eslint/visitor-keys": "5.62.0", - "debug": "^4.3.4", - "globby": "^11.1.0", - "is-glob": "^4.0.3", - "semver": "^7.3.7", - "tsutils": "^3.21.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/utils": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.62.0.tgz", - "integrity": "sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@eslint-community/eslint-utils": "^4.2.0", - "@types/json-schema": "^7.0.9", - "@types/semver": "^7.3.12", - "@typescript-eslint/scope-manager": "5.62.0", - "@typescript-eslint/types": "5.62.0", - "@typescript-eslint/typescript-estree": "5.62.0", - "eslint-scope": "^5.1.1", - "semver": "^7.3.7" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" - } - }, - "node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/visitor-keys": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.62.0.tgz", - "integrity": "sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@typescript-eslint/types": "5.62.0", - "eslint-visitor-keys": "^3.3.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/eslint-plugin-jest/node_modules/eslint-scope": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", - "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^4.1.1" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/eslint-plugin-jest/node_modules/estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", - "dev": true, - "license": "BSD-2-Clause", - "engines": { - "node": ">=4.0" - } - }, - "node_modules/eslint-plugin-jsx-a11y": { - "version": "6.10.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.10.0.tgz", - "integrity": "sha512-ySOHvXX8eSN6zz8Bywacm7CvGNhUtdjvqfQDVe6020TUK34Cywkw7m0KsCCk1Qtm9G1FayfTN1/7mMYnYO2Bhg==", - "dev": true, - "license": "MIT", - "dependencies": { - "aria-query": "~5.1.3", - "array-includes": "^3.1.8", - "array.prototype.flatmap": "^1.3.2", - "ast-types-flow": "^0.0.8", - "axe-core": "^4.10.0", - "axobject-query": "^4.1.0", - "damerau-levenshtein": "^1.0.8", - "emoji-regex": "^9.2.2", - "es-iterator-helpers": "^1.0.19", - "hasown": "^2.0.2", - "jsx-ast-utils": "^3.3.5", - "language-tags": "^1.0.9", - "minimatch": "^3.1.2", - "object.fromentries": "^2.0.8", - "safe-regex-test": "^1.0.3", - "string.prototype.includes": "^2.0.0" - }, - "engines": { - "node": ">=4.0" - }, - "peerDependencies": { - "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9" - } - }, - "node_modules/eslint-plugin-only-warn": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-only-warn/-/eslint-plugin-only-warn-1.1.0.tgz", - "integrity": "sha512-2tktqUAT+Q3hCAU0iSf4xAN1k9zOpjK5WO8104mB0rT/dGhOa09582HN5HlbxNbPRZ0THV7nLGvzugcNOSjzfA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/eslint-plugin-playwright": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-playwright/-/eslint-plugin-playwright-1.7.0.tgz", - "integrity": "sha512-pDp2jFeWbBmlwDfZ39Ypdlz1+IafmRKvFTnnonX0TbS7hAByy4oh7Y6ioZRKvLGE+djd/e2VbqOo9sxgZSY2ow==", - "dev": true, - "license": "MIT", - "workspaces": [ - "examples" - ], - "dependencies": { - "globals": "^13.23.0" - }, - "engines": { - "node": ">=16.6.0" - }, - "peerDependencies": { - "eslint": ">=8.40.0", - "eslint-plugin-jest": ">=25" - }, - "peerDependenciesMeta": { - "eslint-plugin-jest": { - "optional": true - } - } - }, - "node_modules/eslint-plugin-react": { - "version": "7.37.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.37.1.tgz", - "integrity": "sha512-xwTnwDqzbDRA8uJ7BMxPs/EXRB3i8ZfnOIp8BsxEQkT0nHPp+WWceqGgo6rKb9ctNi8GJLDT4Go5HAWELa/WMg==", - "dev": true, - "license": "MIT", - "dependencies": { - "array-includes": "^3.1.8", - "array.prototype.findlast": "^1.2.5", - "array.prototype.flatmap": "^1.3.2", - "array.prototype.tosorted": "^1.1.4", - "doctrine": "^2.1.0", - "es-iterator-helpers": "^1.0.19", - "estraverse": "^5.3.0", - "hasown": "^2.0.2", - "jsx-ast-utils": "^2.4.1 || ^3.0.0", - "minimatch": "^3.1.2", - "object.entries": "^1.1.8", - "object.fromentries": "^2.0.8", - "object.values": "^1.2.0", - "prop-types": "^15.8.1", - "resolve": "^2.0.0-next.5", - "semver": "^6.3.1", - "string.prototype.matchall": "^4.0.11", - "string.prototype.repeat": "^1.0.0" - }, - "engines": { - "node": ">=4" - }, - "peerDependencies": { - "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7" - } - }, - "node_modules/eslint-plugin-react-hooks": { - "version": "4.6.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.6.2.tgz", - "integrity": "sha512-QzliNJq4GinDBcD8gPB5v0wh6g8q3SUi6EFF0x8N/BL9PoVs0atuGc47ozMRyOWAKdwaZ5OnbOEa3WR+dSGKuQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - }, - "peerDependencies": { - "eslint": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0" - } - }, - "node_modules/eslint-plugin-react/node_modules/doctrine": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "esutils": "^2.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/eslint-plugin-react/node_modules/resolve": { - "version": "2.0.0-next.5", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.5.tgz", - "integrity": "sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==", - "dev": true, - "license": "MIT", - "dependencies": { - "is-core-module": "^2.13.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - }, - "bin": { - "resolve": "bin/resolve" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/eslint-plugin-react/node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true, - "license": "ISC", - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/eslint-plugin-testing-library": { - "version": "6.3.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-testing-library/-/eslint-plugin-testing-library-6.3.2.tgz", - "integrity": "sha512-Z+6gPhoxXoypKSX+GC3UNfxQtqE5VhBTymU8WmLqpfWCPZIEu+2UZcNYJbwuuGclWQtt6LzN95yEq79o5u4URA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@typescript-eslint/utils": "^5.58.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0", - "npm": ">=6" - }, - "peerDependencies": { - "eslint": "^7.5.0 || ^8.0.0" - } - }, - "node_modules/eslint-plugin-testing-library/node_modules/@typescript-eslint/scope-manager": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.62.0.tgz", - "integrity": "sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==", - "dev": true, - "license": "MIT", - "dependencies": { - "@typescript-eslint/types": "5.62.0", - "@typescript-eslint/visitor-keys": "5.62.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/eslint-plugin-testing-library/node_modules/@typescript-eslint/types": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.62.0.tgz", - "integrity": "sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/eslint-plugin-testing-library/node_modules/@typescript-eslint/typescript-estree": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.62.0.tgz", - "integrity": "sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "@typescript-eslint/types": "5.62.0", - "@typescript-eslint/visitor-keys": "5.62.0", - "debug": "^4.3.4", - "globby": "^11.1.0", - "is-glob": "^4.0.3", - "semver": "^7.3.7", - "tsutils": "^3.21.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/eslint-plugin-testing-library/node_modules/@typescript-eslint/utils": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.62.0.tgz", - "integrity": "sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@eslint-community/eslint-utils": "^4.2.0", - "@types/json-schema": "^7.0.9", - "@types/semver": "^7.3.12", - "@typescript-eslint/scope-manager": "5.62.0", - "@typescript-eslint/types": "5.62.0", - "@typescript-eslint/typescript-estree": "5.62.0", - "eslint-scope": "^5.1.1", - "semver": "^7.3.7" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" - } - }, - "node_modules/eslint-plugin-testing-library/node_modules/@typescript-eslint/visitor-keys": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.62.0.tgz", - "integrity": "sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@typescript-eslint/types": "5.62.0", - "eslint-visitor-keys": "^3.3.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/eslint-plugin-testing-library/node_modules/eslint-scope": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", - "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^4.1.1" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/eslint-plugin-testing-library/node_modules/estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", - "dev": true, - "license": "BSD-2-Clause", - "engines": { - "node": ">=4.0" - } - }, - "node_modules/eslint-plugin-tsdoc": { - "version": "0.2.17", - "resolved": "https://registry.npmjs.org/eslint-plugin-tsdoc/-/eslint-plugin-tsdoc-0.2.17.tgz", - "integrity": "sha512-xRmVi7Zx44lOBuYqG8vzTXuL6IdGOeF9nHX17bjJ8+VE6fsxpdGem0/SBTmAwgYMKYB1WBkqRJVQ+n8GK041pA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@microsoft/tsdoc": "0.14.2", - "@microsoft/tsdoc-config": "0.16.2" - } - }, - "node_modules/eslint-plugin-turbo": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-turbo/-/eslint-plugin-turbo-2.3.2.tgz", - "integrity": "sha512-NoGxnaFi/8KotvKdbwR+VJOB3nVvIOjS193qCjHz2eBKhnO+Wr3cFgw9IZvk1rBIqg3a6VtJQmxkwNIYo2yWOw==", - "dev": true, - "dependencies": { - "dotenv": "16.0.3" - }, - "peerDependencies": { - "eslint": ">6.6.0" - } - }, - "node_modules/eslint-plugin-turbo/node_modules/dotenv": { - "version": "16.0.3", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.0.3.tgz", - "integrity": "sha512-7GO6HghkA5fYG9TYnNxi14/7K9f5occMlp3zXAuSxn7CKCxt9xbNWG7yF8hTCSUchlfWSe3uLmlPfigevRItzQ==", - "dev": true, - "engines": { - "node": ">=12" - } - }, - "node_modules/eslint-plugin-unicorn": { - "version": "51.0.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-unicorn/-/eslint-plugin-unicorn-51.0.1.tgz", - "integrity": "sha512-MuR/+9VuB0fydoI0nIn2RDA5WISRn4AsJyNSaNKLVwie9/ONvQhxOBbkfSICBPnzKrB77Fh6CZZXjgTt/4Latw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/helper-validator-identifier": "^7.22.20", - "@eslint-community/eslint-utils": "^4.4.0", - "@eslint/eslintrc": "^2.1.4", - "ci-info": "^4.0.0", - "clean-regexp": "^1.0.0", - "core-js-compat": "^3.34.0", - "esquery": "^1.5.0", - "indent-string": "^4.0.0", - "is-builtin-module": "^3.2.1", - "jsesc": "^3.0.2", - "pluralize": "^8.0.0", - "read-pkg-up": "^7.0.1", - "regexp-tree": "^0.1.27", - "regjsparser": "^0.10.0", - "semver": "^7.5.4", - "strip-indent": "^3.0.0" - }, - "engines": { - "node": ">=16" - }, - "funding": { - "url": "https://github.com/sindresorhus/eslint-plugin-unicorn?sponsor=1" - }, - "peerDependencies": { - "eslint": ">=8.56.0" - } - }, - "node_modules/eslint-plugin-unicorn/node_modules/ci-info": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-4.0.0.tgz", - "integrity": "sha512-TdHqgGf9odd8SXNuxtUBVx8Nv+qZOejE6qyqiy5NtbYYQOeFa6zmHkxlPzmaLxWWHsU6nJmB7AETdVPi+2NBUg==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/sibiraj-s" - } - ], - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/eslint-scope": { - "version": "7.2.2", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", - "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^5.2.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/eslint-visitor-keys": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", - "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", - "dev": true, - "license": "Apache-2.0", - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/eslint/node_modules/argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", - "dev": true, - "license": "Python-2.0" - }, - "node_modules/eslint/node_modules/find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", - "dev": true, - "license": "MIT", - "dependencies": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/eslint/node_modules/js-yaml": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", - "dev": true, - "license": "MIT", - "dependencies": { - "argparse": "^2.0.1" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/eslint/node_modules/locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", - "dev": true, - "license": "MIT", - "dependencies": { - "p-locate": "^5.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/eslint/node_modules/p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "yocto-queue": "^0.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/eslint/node_modules/p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", - "dev": true, - "license": "MIT", - "dependencies": { - "p-limit": "^3.0.2" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/esm": { - "version": "3.2.25", - "resolved": "https://registry.npmjs.org/esm/-/esm-3.2.25.tgz", - "integrity": "sha512-U1suiZ2oDVWv4zPO56S0NcR5QriEahGtdN2OR6FiOG4WJvcjBVFB0qI4+eKoWFH483PKGuLuu6V8Z4T5g63UVA==", - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/espree": { - "version": "9.6.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", - "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "acorn": "^8.9.0", - "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^3.4.1" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "license": "BSD-2-Clause", - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/esquery": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.6.0.tgz", - "integrity": "sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==", - "dev": true, - "license": "BSD-3-Clause", - "dependencies": { - "estraverse": "^5.1.0" - }, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/esrecurse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", - "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "estraverse": "^5.2.0" - }, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true, - "license": "BSD-2-Clause", - "engines": { - "node": ">=4.0" - } - }, - "node_modules/estree-util-attach-comments": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/estree-util-attach-comments/-/estree-util-attach-comments-3.0.0.tgz", - "integrity": "sha512-cKUwm/HUcTDsYh/9FgnuFqpfquUbwIqwKM26BVCGDPVgvaCl/nDCCjUfiLlx6lsEZ3Z4RFxNbOQ60pkaEwFxGw==", - "license": "MIT", - "dependencies": { - "@types/estree": "^1.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/estree-util-build-jsx": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/estree-util-build-jsx/-/estree-util-build-jsx-3.0.1.tgz", - "integrity": "sha512-8U5eiL6BTrPxp/CHbs2yMgP8ftMhR5ww1eIKoWRMlqvltHF8fZn5LRDvTKuxD3DUn+shRbLGqXemcP51oFCsGQ==", - "license": "MIT", - "dependencies": { - "@types/estree-jsx": "^1.0.0", - "devlop": "^1.0.0", - "estree-util-is-identifier-name": "^3.0.0", - "estree-walker": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/estree-util-is-identifier-name": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/estree-util-is-identifier-name/-/estree-util-is-identifier-name-3.0.0.tgz", - "integrity": "sha512-hFtqIDZTIUZ9BXLb8y4pYGyk6+wekIivNVTcmvk8NoOh+VeRn5y6cEHzbURrWbfp1fIqdVipilzj+lfaadNZmg==", - "license": "MIT", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/estree-util-to-js": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/estree-util-to-js/-/estree-util-to-js-2.0.0.tgz", - "integrity": "sha512-WDF+xj5rRWmD5tj6bIqRi6CkLIXbbNQUcxQHzGysQzvHmdYG2G7p/Tf0J0gpxGgkeMZNTIjT/AoSvC9Xehcgdg==", - "license": "MIT", - "dependencies": { - "@types/estree-jsx": "^1.0.0", - "astring": "^1.8.0", - "source-map": "^0.7.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/estree-util-value-to-estree": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/estree-util-value-to-estree/-/estree-util-value-to-estree-3.1.2.tgz", - "integrity": "sha512-S0gW2+XZkmsx00tU2uJ4L9hUT7IFabbml9pHh2WQqFmAbxit++YGZne0sKJbNwkj9Wvg9E4uqWl4nCIFQMmfag==", - "license": "MIT", - "dependencies": { - "@types/estree": "^1.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/remcohaszing" - } - }, - "node_modules/estree-util-visit": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/estree-util-visit/-/estree-util-visit-2.0.0.tgz", - "integrity": "sha512-m5KgiH85xAhhW8Wta0vShLcUvOsh3LLPI2YVwcbio1l7E09NTLL1EyMZFM1OyWowoH0skScNbhOPl4kcBgzTww==", - "license": "MIT", - "dependencies": { - "@types/estree-jsx": "^1.0.0", - "@types/unist": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/estree-walker": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-3.0.3.tgz", - "integrity": "sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==", - "license": "MIT", - "dependencies": { - "@types/estree": "^1.0.0" - } - }, - "node_modules/esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true, - "license": "BSD-2-Clause", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/eventemitter2": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/eventemitter2/-/eventemitter2-5.0.1.tgz", - "integrity": "sha512-5EM1GHXycJBS6mauYAbVKT1cVs7POKWb2NXD4Vyt8dDqeZa7LaDK1/sjtL+Zb0lzTpSNil4596Dyu97hz37QLg==", - "dev": true, - "license": "MIT" - }, - "node_modules/execa": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/execa/-/execa-8.0.1.tgz", - "integrity": "sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==", - "dependencies": { - "cross-spawn": "^7.0.3", - "get-stream": "^8.0.1", - "human-signals": "^5.0.0", - "is-stream": "^3.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^5.1.0", - "onetime": "^6.0.0", - "signal-exit": "^4.1.0", - "strip-final-newline": "^3.0.0" - }, - "engines": { - "node": ">=16.17" - }, - "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" - } - }, - "node_modules/execa/node_modules/human-signals": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-5.0.0.tgz", - "integrity": "sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==", - "engines": { - "node": ">=16.17.0" - } - }, - "node_modules/execa/node_modules/mimic-fn": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz", - "integrity": "sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/execa/node_modules/onetime": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz", - "integrity": "sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==", - "dependencies": { - "mimic-fn": "^4.0.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/execa/node_modules/strip-final-newline": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz", - "integrity": "sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", - "license": "MIT" - }, - "node_modules/extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", - "license": "MIT", - "dependencies": { - "is-extendable": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/extendable-error": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/extendable-error/-/extendable-error-0.1.7.tgz", - "integrity": "sha512-UOiS2in6/Q0FK0R0q6UY9vYpQ21mr/Qn1KOnte7vsACuNJf514WvCCUHSRCPcgjPT2bAhNIJdlE6bVap1GKmeg==" - }, - "node_modules/external-editor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", - "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", - "license": "MIT", - "dependencies": { - "chardet": "^0.7.0", - "iconv-lite": "^0.4.24", - "tmp": "^0.0.33" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/extrareqp2": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/extrareqp2/-/extrareqp2-1.0.0.tgz", - "integrity": "sha512-Gum0g1QYb6wpPJCVypWP3bbIuaibcFiJcpuPM10YSXp/tzqi84x9PJageob+eN4xVRIOto4wjSGNLyMD54D2xA==", - "dev": true, - "license": "MIT", - "dependencies": { - "follow-redirects": "^1.14.0" - } - }, - "node_modules/fast-copy": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/fast-copy/-/fast-copy-3.0.2.tgz", - "integrity": "sha512-dl0O9Vhju8IrcLndv2eU4ldt1ftXMqqfgN4H1cpmGV7P6jeB9FwpN9a2c8DPGE1Ys88rNUJVYDHq73CGAGOPfQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/fast-decode-uri-component": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/fast-decode-uri-component/-/fast-decode-uri-component-1.0.1.tgz", - "integrity": "sha512-WKgKWg5eUxvRZGwW8FvfbaH7AXSh2cL+3j5fMGzUMCxWBJ3dV3a7Wz8y2f/uQ0e3B6WmodD3oS54jTQ9HVTIIg==", - "license": "MIT" - }, - "node_modules/fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", - "license": "MIT" - }, - "node_modules/fast-glob": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz", - "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==", - "license": "MIT", - "dependencies": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.2", - "merge2": "^1.3.0", - "micromatch": "^4.0.4" - }, - "engines": { - "node": ">=8.6.0" - } - }, - "node_modules/fast-glob/node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "license": "ISC", - "dependencies": { - "is-glob": "^4.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/fast-json-patch": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/fast-json-patch/-/fast-json-patch-3.1.1.tgz", - "integrity": "sha512-vf6IHUX2SBcA+5/+4883dsIjpBTqmfBjmYiWK1savxQmFk4JfBMLa7ynTYOs1Rolp/T1betJxHiGD3g1Mn8lUQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "dev": true, - "license": "MIT" - }, - "node_modules/fast-json-stringify": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/fast-json-stringify/-/fast-json-stringify-6.0.0.tgz", - "integrity": "sha512-FGMKZwniMTgZh7zQp9b6XnBVxUmKVahQLQeRQHqwYmPDqDhcEKZ3BaQsxelFFI5PY7nN71OEeiL47/zUWcYe1A==", - "license": "MIT", - "dependencies": { - "@fastify/merge-json-schemas": "^0.1.1", - "ajv": "^8.12.0", - "ajv-formats": "^3.0.1", - "fast-deep-equal": "^3.1.3", - "fast-uri": "^2.3.0", - "json-schema-ref-resolver": "^1.0.1", - "rfdc": "^1.2.0" - } - }, - "node_modules/fast-json-stringify/node_modules/ajv": { - "version": "8.17.1", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.17.1.tgz", - "integrity": "sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==", - "license": "MIT", - "dependencies": { - "fast-deep-equal": "^3.1.3", - "fast-uri": "^3.0.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/fast-json-stringify/node_modules/ajv/node_modules/fast-uri": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.0.3.tgz", - "integrity": "sha512-aLrHthzCjH5He4Z2H9YZ+v6Ujb9ocRuW6ZzkJQOrTxleEijANq4v1TsaPaVG1PZcuurEzrLcWRyYBYXD5cEiaw==", - "license": "BSD-3-Clause" - }, - "node_modules/fast-json-stringify/node_modules/fast-uri": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-2.4.0.tgz", - "integrity": "sha512-ypuAmmMKInk5q7XcepxlnUWDLWv4GFtaJqAzWKqn62IpQ3pejtr5dTVbt3vwqVaMKmkNR55sTT+CqUKIaT21BA==", - "license": "MIT" - }, - "node_modules/fast-json-stringify/node_modules/json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "license": "MIT" - }, - "node_modules/fast-levenshtein": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", - "dev": true, - "license": "MIT" - }, - "node_modules/fast-querystring": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/fast-querystring/-/fast-querystring-1.1.2.tgz", - "integrity": "sha512-g6KuKWmFXc0fID8WWH0jit4g0AGBoJhCkJMb1RmbsSEUNvQ+ZC8D6CUZ+GtF8nMzSPXnhiePyyqqipzNNEnHjg==", - "license": "MIT", - "dependencies": { - "fast-decode-uri-component": "^1.0.1" - } - }, - "node_modules/fast-redact": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/fast-redact/-/fast-redact-3.5.0.tgz", - "integrity": "sha512-dwsoQlS7h9hMeYUq1W++23NDcBLV4KqONnITDV9DjfS3q1SgDGVrBdvvTLUotWtPSD7asWDV9/CmsZPy8Hf70A==", - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/fast-safe-stringify": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz", - "integrity": "sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA==", - "dev": true, - "license": "MIT" - }, - "node_modules/fast-uri": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.0.3.tgz", - "integrity": "sha512-aLrHthzCjH5He4Z2H9YZ+v6Ujb9ocRuW6ZzkJQOrTxleEijANq4v1TsaPaVG1PZcuurEzrLcWRyYBYXD5cEiaw==", - "license": "BSD-3-Clause" - }, - "node_modules/fastify": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/fastify/-/fastify-5.1.0.tgz", - "integrity": "sha512-0SdUC5AoiSgMSc2Vxwv3WyKzyGMDJRAW/PgNsK1kZrnkO6MeqUIW9ovVg9F2UGIqtIcclYMyeJa4rK6OZc7Jxg==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/fastify" - }, - { - "type": "opencollective", - "url": "https://opencollective.com/fastify" - } - ], - "dependencies": { - "@fastify/ajv-compiler": "^4.0.0", - "@fastify/error": "^4.0.0", - "@fastify/fast-json-stringify-compiler": "^5.0.0", - "abstract-logging": "^2.0.1", - "avvio": "^9.0.0", - "fast-json-stringify": "^6.0.0", - "find-my-way": "^9.0.0", - "light-my-request": "^6.0.0", - "pino": "^9.0.0", - "process-warning": "^4.0.0", - "proxy-addr": "^2.0.7", - "rfdc": "^1.3.1", - "secure-json-parse": "^2.7.0", - "semver": "^7.6.0", - "toad-cache": "^3.7.0" - } - }, - "node_modules/fastq": { - "version": "1.17.1", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz", - "integrity": "sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==", - "license": "ISC", - "dependencies": { - "reusify": "^1.0.4" - } - }, - "node_modules/fault": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/fault/-/fault-2.0.1.tgz", - "integrity": "sha512-WtySTkS4OKev5JtpHXnib4Gxiurzh5NCGvWrFaZ34m6JehfTUhKZvn9njTfw48t6JumVQOmrKqpmGcdwxnhqBQ==", - "license": "MIT", - "dependencies": { - "format": "^0.2.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/fclone": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/fclone/-/fclone-1.0.11.tgz", - "integrity": "sha512-GDqVQezKzRABdeqflsgMr7ktzgF9CyS+p2oe0jJqUY6izSSbhPIQJDpoU4PtGcD7VPM9xh/dVrTu6z1nwgmEGw==", - "dev": true, - "license": "MIT" - }, - "node_modules/file-entry-cache": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", - "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", - "dev": true, - "license": "MIT", - "dependencies": { - "flat-cache": "^3.0.4" - }, - "engines": { - "node": "^10.12.0 || >=12.0.0" - } - }, - "node_modules/fill-range": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", - "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", - "license": "MIT", - "dependencies": { - "to-regex-range": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/find-my-way": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/find-my-way/-/find-my-way-9.1.0.tgz", - "integrity": "sha512-Y5jIsuYR4BwWDYYQ2A/RWWE6gD8a0FMgtU+HOq1WKku+Cwdz8M1v8wcAmRXXM1/iqtoqg06v+LjAxMYbCjViMw==", - "license": "MIT", - "dependencies": { - "fast-deep-equal": "^3.1.3", - "fast-querystring": "^1.0.0", - "safe-regex2": "^4.0.0" - }, - "engines": { - "node": ">=14" - } - }, - "node_modules/find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "license": "MIT", - "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/flat-cache": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz", - "integrity": "sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==", - "dev": true, - "license": "MIT", - "dependencies": { - "flatted": "^3.2.9", - "keyv": "^4.5.3", - "rimraf": "^3.0.2" - }, - "engines": { - "node": "^10.12.0 || >=12.0.0" - } - }, - "node_modules/flat-cache/node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "deprecated": "Glob versions prior to v9 are no longer supported", - "dev": true, - "license": "ISC", - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/flat-cache/node_modules/rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "deprecated": "Rimraf versions prior to v4 are no longer supported", - "dev": true, - "license": "ISC", - "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/flatted": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.1.tgz", - "integrity": "sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==", - "dev": true, - "license": "ISC" - }, - "node_modules/flexsearch": { - "version": "0.7.43", - "resolved": "https://registry.npmjs.org/flexsearch/-/flexsearch-0.7.43.tgz", - "integrity": "sha512-c5o/+Um8aqCSOXGcZoqZOm+NqtVwNsvVpWv6lfmSclU954O3wvQKxxK8zj74fPaSJbXpSLTs4PRhh+wnoCXnKg==", - "license": "Apache-2.0" - }, - "node_modules/follow-redirects": { - "version": "1.15.9", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.9.tgz", - "integrity": "sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==", - "funding": [ - { - "type": "individual", - "url": "https://github.com/sponsors/RubenVerborgh" - } - ], - "license": "MIT", - "engines": { - "node": ">=4.0" - }, - "peerDependenciesMeta": { - "debug": { - "optional": true - } - } - }, - "node_modules/for-each": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", - "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", - "dev": true, - "license": "MIT", - "dependencies": { - "is-callable": "^1.1.3" - } - }, - "node_modules/foreground-child": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.0.tgz", - "integrity": "sha512-Ld2g8rrAyMYFXBhEqMz8ZAHBi4J4uS1i/CxGMDnjyFWddMXLVcDp051DZfu+t7+ab7Wv6SMqpWmyFIj5UbfFvg==", - "dev": true, - "license": "ISC", - "dependencies": { - "cross-spawn": "^7.0.0", - "signal-exit": "^4.0.1" - }, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/form-data": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.1.tgz", - "integrity": "sha512-tzN8e4TX8+kkxGPK8D5u0FNmjPUjw3lwC9lSLxxoB/+GtsJG91CO8bSWy73APlgAZzZbXEYZJuxjkHH2w+Ezhw==", - "license": "MIT", - "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/format": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/format/-/format-0.2.2.tgz", - "integrity": "sha512-wzsgA6WOq+09wrU1tsJ09udeR/YZRaeArL9e1wPbFg3GG2yDnC2ldKpxs4xunpFF9DgqCqOIra3bc1HWrJ37Ww==", - "engines": { - "node": ">=0.4.x" - } - }, - "node_modules/forwarded": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", - "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", - "license": "MIT", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/fs-extra": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-7.0.1.tgz", - "integrity": "sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==", - "license": "MIT", - "dependencies": { - "graceful-fs": "^4.1.2", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - }, - "engines": { - "node": ">=6 <7 || >=8" - } - }, - "node_modules/fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", - "dev": true, - "license": "ISC" - }, - "node_modules/fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", - "hasInstallScript": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" - } - }, - "node_modules/function-bind": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", - "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", - "dev": true, - "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/function.prototype.name": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.6.tgz", - "integrity": "sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "functions-have-names": "^1.2.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/functions-have-names": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", - "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", - "dev": true, - "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/generic-pool": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/generic-pool/-/generic-pool-3.9.0.tgz", - "integrity": "sha512-hymDOu5B53XvN4QT9dBmZxPX4CWhBPPLguTZ9MMFeFa/Kg0xWVfylOVNlJji/E7yTZWFd/q9GO5TxDLq156D7g==", - "license": "MIT", - "engines": { - "node": ">= 4" - } - }, - "node_modules/gensync": { - "version": "1.0.0-beta.2", - "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", - "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/get-intrinsic": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz", - "integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "es-errors": "^1.3.0", - "function-bind": "^1.1.2", - "has-proto": "^1.0.1", - "has-symbols": "^1.0.3", - "hasown": "^2.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/get-stdin": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-9.0.0.tgz", - "integrity": "sha512-dVKBjfWisLAicarI2Sf+JuBE/DghV4UzNAVe9yhEJuzeREd3JhOTE9cUaJTeSa77fsbQUK3pcOpJfM59+VKZaA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/get-stream": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-8.0.1.tgz", - "integrity": "sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==", - "engines": { - "node": ">=16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/get-symbol-description": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.2.tgz", - "integrity": "sha512-g0QYk1dZBxGwk+Ngc+ltRH2IBp2f7zBkBMBJZCDerh6EhlhSR6+9irMCuT/09zD6qkarHUSn529sK/yL4S27mg==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.5", - "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.4" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/get-tsconfig": { - "version": "4.8.1", - "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.8.1.tgz", - "integrity": "sha512-k9PN+cFBmaLWtVz29SkUoqU5O0slLuHJXt/2P+tMVFT+phsSGXGkp9t3rQIqdz0e+06EHNGs3oM6ZX1s2zHxRg==", - "dev": true, - "license": "MIT", - "dependencies": { - "resolve-pkg-maps": "^1.0.0" - }, - "funding": { - "url": "https://github.com/privatenumber/get-tsconfig?sponsor=1" - } - }, - "node_modules/get-uri": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/get-uri/-/get-uri-6.0.3.tgz", - "integrity": "sha512-BzUrJBS9EcUb4cFol8r4W3v1cPsSyajLSthNkz5BxbpDcHN5tIrM10E2eNvfnvBn3DaT3DUgx0OpsBKkaOpanw==", - "dev": true, - "license": "MIT", - "dependencies": { - "basic-ftp": "^5.0.2", - "data-uri-to-buffer": "^6.0.2", - "debug": "^4.3.4", - "fs-extra": "^11.2.0" - }, - "engines": { - "node": ">= 14" - } - }, - "node_modules/get-uri/node_modules/fs-extra": { - "version": "11.2.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.2.0.tgz", - "integrity": "sha512-PmDi3uwK5nFuXh7XDTlVnS17xJS7vW36is2+w3xcv8SVxiB4NyATf4ctkVY5bkSjX0Y4nbvZCq1/EjtEyr9ktw==", - "dev": true, - "license": "MIT", - "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - }, - "engines": { - "node": ">=14.14" - } - }, - "node_modules/get-uri/node_modules/jsonfile": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", - "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "universalify": "^2.0.0" - }, - "optionalDependencies": { - "graceful-fs": "^4.1.6" - } - }, - "node_modules/get-uri/node_modules/universalify": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", - "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 10.0.0" - } - }, - "node_modules/git-hooks-list": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/git-hooks-list/-/git-hooks-list-3.1.0.tgz", - "integrity": "sha512-LF8VeHeR7v+wAbXqfgRlTSX/1BJR9Q1vEMR8JAz1cEg6GX07+zyj3sAdDvYjj/xnlIfVuGgj4qBei1K3hKH+PA==", - "dev": true, - "license": "MIT", - "funding": { - "url": "https://github.com/fisker/git-hooks-list?sponsor=1" - } - }, - "node_modules/git-node-fs": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/git-node-fs/-/git-node-fs-1.0.0.tgz", - "integrity": "sha512-bLQypt14llVXBg0S0u8q8HmU7g9p3ysH+NvVlae5vILuUvs759665HvmR5+wb04KjHyjFcDRxdYb4kyNnluMUQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/git-sha1": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/git-sha1/-/git-sha1-0.1.2.tgz", - "integrity": "sha512-2e/nZezdVlyCopOCYHeW0onkbZg7xP1Ad6pndPy1rCygeRykefUS6r7oA5cJRGEFvseiaz5a/qUHFVX1dd6Isg==", - "dev": true, - "license": "MIT" - }, - "node_modules/github-slugger": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/github-slugger/-/github-slugger-2.0.0.tgz", - "integrity": "sha512-IaOQ9puYtjrkq7Y0Ygl9KDZnrf/aiUJYUpVf89y8kyaxbRG7Y1SrX/jaumrv81vc61+kiMempujsM3Yw7w5qcw==", - "license": "ISC" - }, - "node_modules/glob": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-11.0.0.tgz", - "integrity": "sha512-9UiX/Bl6J2yaBbxKoEBRm4Cipxgok8kQYcOPEhScPwebu2I0HoQOuYdIO6S3hLuWoZgpDpwQZMzTFxgpkyT76g==", - "dev": true, - "license": "ISC", - "dependencies": { - "foreground-child": "^3.1.0", - "jackspeak": "^4.0.1", - "minimatch": "^10.0.0", - "minipass": "^7.1.2", - "package-json-from-dist": "^1.0.0", - "path-scurry": "^2.0.0" - }, - "bin": { - "glob": "dist/esm/bin.mjs" - }, - "engines": { - "node": "20 || >=22" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/glob-parent": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", - "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", - "dev": true, - "license": "ISC", - "dependencies": { - "is-glob": "^4.0.3" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/glob/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/glob/node_modules/minimatch": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.0.1.tgz", - "integrity": "sha512-ethXTt3SGGR+95gudmqJ1eNhRO7eGEGIgYA9vnPatK4/etz2MEVDno5GMCibdMTuBMyElzIlgxMna3K94XDIDQ==", - "dev": true, - "license": "ISC", - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": "20 || >=22" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/globals": { - "version": "13.24.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", - "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "type-fest": "^0.20.2" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/globalthis": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz", - "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "define-properties": "^1.2.1", - "gopd": "^1.0.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/globby": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", - "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", - "license": "MIT", - "dependencies": { - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.2.9", - "ignore": "^5.2.0", - "merge2": "^1.4.1", - "slash": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/gopd": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", - "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", - "dev": true, - "license": "MIT", - "dependencies": { - "get-intrinsic": "^1.1.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/graceful-fs": { - "version": "4.2.11", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", - "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", - "license": "ISC" - }, - "node_modules/graphemer": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", - "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", - "dev": true, - "license": "MIT" - }, - "node_modules/gray-matter": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/gray-matter/-/gray-matter-4.0.3.tgz", - "integrity": "sha512-5v6yZd4JK3eMI3FqqCouswVqwugaA9r4dNZB1wwcmrD02QkV5H0y7XBQW8QwQqEaZY1pM9aqORSORhJRdNK44Q==", - "license": "MIT", - "dependencies": { - "js-yaml": "^3.13.1", - "kind-of": "^6.0.2", - "section-matter": "^1.0.0", - "strip-bom-string": "^1.0.0" - }, - "engines": { - "node": ">=6.0" - } - }, - "node_modules/hachure-fill": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/hachure-fill/-/hachure-fill-0.5.2.tgz", - "integrity": "sha512-3GKBOn+m2LX9iq+JC1064cSFprJY4jL1jCXTcpnfER5HYE2l/4EfWSGzkPa/ZDBmYI0ZOEj5VHV/eKnPGkHuOg==", - "license": "MIT" - }, - "node_modules/has-bigints": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", - "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", - "dev": true, - "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/has-property-descriptors": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", - "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", - "dev": true, - "license": "MIT", - "dependencies": { - "es-define-property": "^1.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-proto": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.3.tgz", - "integrity": "sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-symbols": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", - "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-tostringtag": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", - "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", - "dev": true, - "license": "MIT", - "dependencies": { - "has-symbols": "^1.0.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/hasown": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", - "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "function-bind": "^1.1.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/hast-util-from-dom": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/hast-util-from-dom/-/hast-util-from-dom-5.0.0.tgz", - "integrity": "sha512-d6235voAp/XR3Hh5uy7aGLbM3S4KamdW0WEgOaU1YoewnuYw4HXb5eRtv9g65m/RFGEfUY1Mw4UqCc5Y8L4Stg==", - "license": "ISC", - "dependencies": { - "@types/hast": "^3.0.0", - "hastscript": "^8.0.0", - "web-namespaces": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hast-util-from-html": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/hast-util-from-html/-/hast-util-from-html-2.0.3.tgz", - "integrity": "sha512-CUSRHXyKjzHov8yKsQjGOElXy/3EKpyX56ELnkHH34vDVw1N1XSQ1ZcAvTyAPtGqLTuKP/uxM+aLkSPqF/EtMw==", - "license": "MIT", - "dependencies": { - "@types/hast": "^3.0.0", - "devlop": "^1.1.0", - "hast-util-from-parse5": "^8.0.0", - "parse5": "^7.0.0", - "vfile": "^6.0.0", - "vfile-message": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hast-util-from-html-isomorphic": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/hast-util-from-html-isomorphic/-/hast-util-from-html-isomorphic-2.0.0.tgz", - "integrity": "sha512-zJfpXq44yff2hmE0XmwEOzdWin5xwH+QIhMLOScpX91e/NSGPsAzNCvLQDIEPyO2TXi+lBmU6hjLIhV8MwP2kw==", - "license": "MIT", - "dependencies": { - "@types/hast": "^3.0.0", - "hast-util-from-dom": "^5.0.0", - "hast-util-from-html": "^2.0.0", - "unist-util-remove-position": "^5.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hast-util-from-parse5": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/hast-util-from-parse5/-/hast-util-from-parse5-8.0.1.tgz", - "integrity": "sha512-Er/Iixbc7IEa7r/XLtuG52zoqn/b3Xng/w6aZQ0xGVxzhw5xUFxcRqdPzP6yFi/4HBYRaifaI5fQ1RH8n0ZeOQ==", - "license": "MIT", - "dependencies": { - "@types/hast": "^3.0.0", - "@types/unist": "^3.0.0", - "devlop": "^1.0.0", - "hastscript": "^8.0.0", - "property-information": "^6.0.0", - "vfile": "^6.0.0", - "vfile-location": "^5.0.0", - "web-namespaces": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hast-util-is-element": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/hast-util-is-element/-/hast-util-is-element-3.0.0.tgz", - "integrity": "sha512-Val9mnv2IWpLbNPqc/pUem+a7Ipj2aHacCwgNfTiK0vJKl0LF+4Ba4+v1oPHFpf3bLYmreq0/l3Gud9S5OH42g==", - "license": "MIT", - "dependencies": { - "@types/hast": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hast-util-parse-selector": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/hast-util-parse-selector/-/hast-util-parse-selector-4.0.0.tgz", - "integrity": "sha512-wkQCkSYoOGCRKERFWcxMVMOcYE2K1AaNLU8DXS9arxnLOUEWbOXKXiJUNzEpqZ3JOKpnha3jkFrumEjVliDe7A==", - "license": "MIT", - "dependencies": { - "@types/hast": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hast-util-raw": { - "version": "9.0.4", - "resolved": "https://registry.npmjs.org/hast-util-raw/-/hast-util-raw-9.0.4.tgz", - "integrity": "sha512-LHE65TD2YiNsHD3YuXcKPHXPLuYh/gjp12mOfU8jxSrm1f/yJpsb0F/KKljS6U9LJoP0Ux+tCe8iJ2AsPzTdgA==", - "license": "MIT", - "dependencies": { - "@types/hast": "^3.0.0", - "@types/unist": "^3.0.0", - "@ungap/structured-clone": "^1.0.0", - "hast-util-from-parse5": "^8.0.0", - "hast-util-to-parse5": "^8.0.0", - "html-void-elements": "^3.0.0", - "mdast-util-to-hast": "^13.0.0", - "parse5": "^7.0.0", - "unist-util-position": "^5.0.0", - "unist-util-visit": "^5.0.0", - "vfile": "^6.0.0", - "web-namespaces": "^2.0.0", - "zwitch": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hast-util-to-estree": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/hast-util-to-estree/-/hast-util-to-estree-3.1.0.tgz", - "integrity": "sha512-lfX5g6hqVh9kjS/B9E2gSkvHH4SZNiQFiqWS0x9fENzEl+8W12RqdRxX6d/Cwxi30tPQs3bIO+aolQJNp1bIyw==", - "license": "MIT", - "dependencies": { - "@types/estree": "^1.0.0", - "@types/estree-jsx": "^1.0.0", - "@types/hast": "^3.0.0", - "comma-separated-tokens": "^2.0.0", - "devlop": "^1.0.0", - "estree-util-attach-comments": "^3.0.0", - "estree-util-is-identifier-name": "^3.0.0", - "hast-util-whitespace": "^3.0.0", - "mdast-util-mdx-expression": "^2.0.0", - "mdast-util-mdx-jsx": "^3.0.0", - "mdast-util-mdxjs-esm": "^2.0.0", - "property-information": "^6.0.0", - "space-separated-tokens": "^2.0.0", - "style-to-object": "^0.4.0", - "unist-util-position": "^5.0.0", - "zwitch": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hast-util-to-html": { - "version": "9.0.3", - "resolved": "https://registry.npmjs.org/hast-util-to-html/-/hast-util-to-html-9.0.3.tgz", - "integrity": "sha512-M17uBDzMJ9RPCqLMO92gNNUDuBSq10a25SDBI08iCCxmorf4Yy6sYHK57n9WAbRAAaU+DuR4W6GN9K4DFZesYg==", - "license": "MIT", - "dependencies": { - "@types/hast": "^3.0.0", - "@types/unist": "^3.0.0", - "ccount": "^2.0.0", - "comma-separated-tokens": "^2.0.0", - "hast-util-whitespace": "^3.0.0", - "html-void-elements": "^3.0.0", - "mdast-util-to-hast": "^13.0.0", - "property-information": "^6.0.0", - "space-separated-tokens": "^2.0.0", - "stringify-entities": "^4.0.0", - "zwitch": "^2.0.4" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hast-util-to-jsx-runtime": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/hast-util-to-jsx-runtime/-/hast-util-to-jsx-runtime-2.3.2.tgz", - "integrity": "sha512-1ngXYb+V9UT5h+PxNRa1O1FYguZK/XL+gkeqvp7EdHlB9oHUG0eYRo/vY5inBdcqo3RkPMC58/H94HvkbfGdyg==", - "license": "MIT", - "dependencies": { - "@types/estree": "^1.0.0", - "@types/hast": "^3.0.0", - "@types/unist": "^3.0.0", - "comma-separated-tokens": "^2.0.0", - "devlop": "^1.0.0", - "estree-util-is-identifier-name": "^3.0.0", - "hast-util-whitespace": "^3.0.0", - "mdast-util-mdx-expression": "^2.0.0", - "mdast-util-mdx-jsx": "^3.0.0", - "mdast-util-mdxjs-esm": "^2.0.0", - "property-information": "^6.0.0", - "space-separated-tokens": "^2.0.0", - "style-to-object": "^1.0.0", - "unist-util-position": "^5.0.0", - "vfile-message": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hast-util-to-jsx-runtime/node_modules/inline-style-parser": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/inline-style-parser/-/inline-style-parser-0.2.4.tgz", - "integrity": "sha512-0aO8FkhNZlj/ZIbNi7Lxxr12obT7cL1moPfE4tg1LkX7LlLfC6DeX4l2ZEud1ukP9jNQyNnfzQVqwbwmAATY4Q==", - "license": "MIT" - }, - "node_modules/hast-util-to-jsx-runtime/node_modules/style-to-object": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/style-to-object/-/style-to-object-1.0.8.tgz", - "integrity": "sha512-xT47I/Eo0rwJmaXC4oilDGDWLohVhR6o/xAQcPQN8q6QBuZVL8qMYL85kLmST5cPjAorwvqIA4qXTRQoYHaL6g==", - "license": "MIT", - "dependencies": { - "inline-style-parser": "0.2.4" - } - }, - "node_modules/hast-util-to-parse5": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/hast-util-to-parse5/-/hast-util-to-parse5-8.0.0.tgz", - "integrity": "sha512-3KKrV5ZVI8if87DVSi1vDeByYrkGzg4mEfeu4alwgmmIeARiBLKCZS2uw5Gb6nU9x9Yufyj3iudm6i7nl52PFw==", - "license": "MIT", - "dependencies": { - "@types/hast": "^3.0.0", - "comma-separated-tokens": "^2.0.0", - "devlop": "^1.0.0", - "property-information": "^6.0.0", - "space-separated-tokens": "^2.0.0", - "web-namespaces": "^2.0.0", - "zwitch": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hast-util-to-string": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/hast-util-to-string/-/hast-util-to-string-3.0.1.tgz", - "integrity": "sha512-XelQVTDWvqcl3axRfI0xSeoVKzyIFPwsAGSLIsKdJKQMXDYJS4WYrBNF/8J7RdhIcFI2BOHgAifggsvsxp/3+A==", - "license": "MIT", - "dependencies": { - "@types/hast": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hast-util-to-text": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/hast-util-to-text/-/hast-util-to-text-4.0.2.tgz", - "integrity": "sha512-KK6y/BN8lbaq654j7JgBydev7wuNMcID54lkRav1P0CaE1e47P72AWWPiGKXTJU271ooYzcvTAn/Zt0REnvc7A==", - "license": "MIT", - "dependencies": { - "@types/hast": "^3.0.0", - "@types/unist": "^3.0.0", - "hast-util-is-element": "^3.0.0", - "unist-util-find-after": "^5.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hast-util-whitespace": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/hast-util-whitespace/-/hast-util-whitespace-3.0.0.tgz", - "integrity": "sha512-88JUN06ipLwsnv+dVn+OIYOvAuvBMy/Qoi6O7mQHxdPXpjy+Cd6xRkWwux7DKO+4sYILtLBRIKgsdpS2gQc7qw==", - "license": "MIT", - "dependencies": { - "@types/hast": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hastscript": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/hastscript/-/hastscript-8.0.0.tgz", - "integrity": "sha512-dMOtzCEd3ABUeSIISmrETiKuyydk1w0pa+gE/uormcTpSYuaNJPbX1NU3JLyscSLjwAQM8bWMhhIlnCqnRvDTw==", - "license": "MIT", - "dependencies": { - "@types/hast": "^3.0.0", - "comma-separated-tokens": "^2.0.0", - "hast-util-parse-selector": "^4.0.0", - "property-information": "^6.0.0", - "space-separated-tokens": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/help-me": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/help-me/-/help-me-5.0.0.tgz", - "integrity": "sha512-7xgomUX6ADmcYzFik0HzAxh/73YlKR9bmFzf51CZwR+b6YtzU2m0u49hQCqV6SvlqIqsaxovfwdvbnsw3b/zpg==", - "dev": true, - "license": "MIT" - }, - "node_modules/hosted-git-info": { - "version": "2.8.9", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", - "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", - "dev": true, - "license": "ISC" - }, - "node_modules/html-void-elements": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/html-void-elements/-/html-void-elements-3.0.0.tgz", - "integrity": "sha512-bEqo66MRXsUGxWHV5IP0PUiAWwoEjba4VCzg0LjFJBpchPaTfyfCKTG6bc5F8ucKec3q5y6qOdGyYTSBEvhCrg==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/http-proxy-agent": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.2.tgz", - "integrity": "sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==", - "dev": true, - "license": "MIT", - "dependencies": { - "agent-base": "^7.1.0", - "debug": "^4.3.4" - }, - "engines": { - "node": ">= 14" - } - }, - "node_modules/https-proxy-agent": { - "version": "7.0.5", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.5.tgz", - "integrity": "sha512-1e4Wqeblerz+tMKPIq2EMGiiWW1dIjZOksyHWSUm1rmuvw/how9hBHZ38lAGj5ID4Ik6EdkOw7NmWPy6LAwalw==", - "dev": true, - "license": "MIT", - "dependencies": { - "agent-base": "^7.0.2", - "debug": "4" - }, - "engines": { - "node": ">= 14" - } - }, - "node_modules/human-id": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/human-id/-/human-id-1.0.2.tgz", - "integrity": "sha512-UNopramDEhHJD+VR+ehk8rOslwSfByxPIZyJRfV739NDhN5LF1fa1MqnzKm2lGTQRjNrjK19Q5fhkgIfjlVUKw==", - "license": "MIT" - }, - "node_modules/human-signals": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", - "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", - "dev": true, - "license": "Apache-2.0", - "engines": { - "node": ">=10.17.0" - } - }, - "node_modules/iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "license": "MIT", - "dependencies": { - "safer-buffer": ">= 2.1.2 < 3" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/ignore": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", - "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", - "license": "MIT", - "engines": { - "node": ">= 4" - } - }, - "node_modules/import-fresh": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", - "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", - "dev": true, - "license": "MIT", - "dependencies": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/import-fresh/node_modules/resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.8.19" - } - }, - "node_modules/indent-string": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", - "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", - "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", - "dev": true, - "license": "ISC", - "dependencies": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "node_modules/inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true, - "license": "ISC" - }, - "node_modules/ini": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", - "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", - "dev": true, - "license": "ISC" - }, - "node_modules/inline-style-parser": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/inline-style-parser/-/inline-style-parser-0.1.1.tgz", - "integrity": "sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q==", - "license": "MIT" - }, - "node_modules/internal-slot": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.7.tgz", - "integrity": "sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g==", - "dev": true, - "license": "MIT", - "dependencies": { - "es-errors": "^1.3.0", - "hasown": "^2.0.0", - "side-channel": "^1.0.4" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/internmap": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/internmap/-/internmap-2.0.3.tgz", - "integrity": "sha512-5Hh7Y1wQbvY5ooGgPbDaL5iYLAPzMTUrjMulskHLH6wnv/A+1q5rgEaiuqEjB+oxGXIVZs1FF+R/KPN3ZSQYYg==", - "license": "ISC", - "engines": { - "node": ">=12" - } - }, - "node_modules/ip-address": { - "version": "9.0.5", - "resolved": "https://registry.npmjs.org/ip-address/-/ip-address-9.0.5.tgz", - "integrity": "sha512-zHtQzGojZXTwZTHQqra+ETKd4Sn3vgi7uBmlPoXVWZqYvuKmtI0l/VZTjqGmJY9x88GGOaZ9+G9ES8hC4T4X8g==", - "dev": true, - "license": "MIT", - "dependencies": { - "jsbn": "1.1.0", - "sprintf-js": "^1.1.3" - }, - "engines": { - "node": ">= 12" - } - }, - "node_modules/ip-address/node_modules/sprintf-js": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.3.tgz", - "integrity": "sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA==", - "dev": true, - "license": "BSD-3-Clause" - }, - "node_modules/ipaddr.js": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", - "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", - "license": "MIT", - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/is-alphabetical": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-alphabetical/-/is-alphabetical-2.0.1.tgz", - "integrity": "sha512-FWyyY60MeTNyeSRpkM2Iry0G9hpr7/9kD40mD/cGQEuilcZYS4okz8SN2Q6rLCJ8gbCt6fN+rC+6tMGS99LaxQ==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/is-alphanumerical": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-alphanumerical/-/is-alphanumerical-2.0.1.tgz", - "integrity": "sha512-hmbYhX/9MUMF5uh7tOXyK/n0ZvWpad5caBA17GsC6vyuCqaWliRG5K1qS9inmUhEMaOBIW7/whAnSwveW/LtZw==", - "license": "MIT", - "dependencies": { - "is-alphabetical": "^2.0.0", - "is-decimal": "^2.0.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/is-arguments": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz", - "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-array-buffer": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.4.tgz", - "integrity": "sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-arrayish": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", - "dev": true, - "license": "MIT" - }, - "node_modules/is-async-function": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-async-function/-/is-async-function-2.0.0.tgz", - "integrity": "sha512-Y1JXKrfykRJGdlDwdKlLpLyMIiWqWvuSd17TvZk68PLAOGOoF4Xyav1z0Xhoi+gCYjZVeC5SI+hYFOfvXmGRCA==", - "dev": true, - "license": "MIT", - "dependencies": { - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-bigint": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", - "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", - "dev": true, - "license": "MIT", - "dependencies": { - "has-bigints": "^1.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "dev": true, - "license": "MIT", - "dependencies": { - "binary-extensions": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-boolean-object": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", - "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-builtin-module": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-3.2.1.tgz", - "integrity": "sha512-BSLE3HnV2syZ0FK0iMA/yUGplUeMmNz4AW5fnTunbCIqZi4vG3WjJT9FHMy5D69xmAYBHXQhJdALdpwVxV501A==", - "dev": true, - "license": "MIT", - "dependencies": { - "builtin-modules": "^3.3.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-bun-module": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/is-bun-module/-/is-bun-module-1.2.1.tgz", - "integrity": "sha512-AmidtEM6D6NmUiLOvvU7+IePxjEjOzra2h0pSrsfSAcXwl/83zLLXDByafUJy9k/rKK0pvXMLdwKwGHlX2Ke6Q==", - "dev": true, - "license": "MIT", - "dependencies": { - "semver": "^7.6.3" - } - }, - "node_modules/is-callable": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", - "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-core-module": { - "version": "2.15.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.15.1.tgz", - "integrity": "sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "hasown": "^2.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-data-view": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.1.tgz", - "integrity": "sha512-AHkaJrsUVW6wq6JS8y3JnM/GJF/9cf+k20+iDzlSaJrinEo5+7vRiteOSwBhHRiAyQATN1AmY4hwzxJKPmYf+w==", - "dev": true, - "license": "MIT", - "dependencies": { - "is-typed-array": "^1.1.13" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-date-object": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", - "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-decimal": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-decimal/-/is-decimal-2.0.1.tgz", - "integrity": "sha512-AAB9hiomQs5DXWcRB1rqsxGUstbRroFOPPVAomNk/3XHR5JyEZChOyTWe2oayKnsSsr/kcGqF+z6yuH6HHpN0A==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/is-docker": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", - "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", - "dev": true, - "license": "MIT", - "bin": { - "is-docker": "cli.js" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-extendable": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", - "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-finalizationregistry": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-finalizationregistry/-/is-finalizationregistry-1.0.2.tgz", - "integrity": "sha512-0by5vtUJs8iFQb5TYUHHPudOR+qXYIMKtiUzvLIZITZUjknFmziyBJuLhVRc+Ds0dREFlskDNJKYIdIzu/9pfw==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/is-generator-function": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.10.tgz", - "integrity": "sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==", - "dev": true, - "license": "MIT", - "dependencies": { - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "license": "MIT", - "dependencies": { - "is-extglob": "^2.1.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-hexadecimal": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-hexadecimal/-/is-hexadecimal-2.0.1.tgz", - "integrity": "sha512-DgZQp241c8oO6cA1SbTEWiXeoxV42vlcJxgH+B3hi1AiqqKruZR3ZGF8In3fj4+/y/7rHvlOZLZtgJ/4ttYGZg==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/is-inside-container": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-inside-container/-/is-inside-container-1.0.0.tgz", - "integrity": "sha512-KIYLCCJghfHZxqjYBE7rEy0OBuTd5xCHS7tHVgvCLkx7StIoaxwNW3hCALgEUjFfeRk+MG/Qxmp/vtETEF3tRA==", - "dependencies": { - "is-docker": "^3.0.0" - }, - "bin": { - "is-inside-container": "cli.js" - }, - "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-inside-container/node_modules/is-docker": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-3.0.0.tgz", - "integrity": "sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ==", - "bin": { - "is-docker": "cli.js" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-map": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.3.tgz", - "integrity": "sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-negative-zero": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.3.tgz", - "integrity": "sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "license": "MIT", - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/is-number-object": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", - "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-path-inside": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", - "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/is-plain-obj": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz", - "integrity": "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==", - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-port-reachable": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/is-port-reachable/-/is-port-reachable-4.0.0.tgz", - "integrity": "sha512-9UoipoxYmSk6Xy7QFgRv2HDyaysmgSG75TFQs6S+3pDM7ZhKTF/bskZV+0UlABHzKjNVhPjYCLfeZUEg1wXxig==", - "dev": true, - "license": "MIT", - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-reference": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/is-reference/-/is-reference-3.0.2.tgz", - "integrity": "sha512-v3rht/LgVcsdZa3O2Nqs+NMowLOxeOm7Ay9+/ARQ2F+qEoANRcqrjAZKGN0v8ymUetZGgkp26LTnGT7H0Qo9Pg==", - "license": "MIT", - "dependencies": { - "@types/estree": "*" - } - }, - "node_modules/is-regex": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", - "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-set": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.3.tgz", - "integrity": "sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-shared-array-buffer": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.3.tgz", - "integrity": "sha512-nA2hv5XIhLR3uVzDDfCIknerhx8XUKnstuOERPNNIinXG7v9u+ohXF67vxm4TPTEPU6lm61ZkwP3c9PCB97rhg==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.7" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-stream": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz", - "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==", - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-string": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", - "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", - "dev": true, - "license": "MIT", - "dependencies": { - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-subdir": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/is-subdir/-/is-subdir-1.2.0.tgz", - "integrity": "sha512-2AT6j+gXe/1ueqbW6fLZJiIw3F8iXGJtt0yDrZaBhAZEG1raiTxKWU+IPqMCzQAXOUCKdA4UDMgacKH25XG2Cw==", - "dependencies": { - "better-path-resolve": "1.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/is-symbol": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", - "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", - "dev": true, - "license": "MIT", - "dependencies": { - "has-symbols": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-typed-array": { - "version": "1.1.13", - "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.13.tgz", - "integrity": "sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw==", - "dev": true, - "license": "MIT", - "dependencies": { - "which-typed-array": "^1.1.14" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-weakmap": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.2.tgz", - "integrity": "sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-weakref": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", - "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-weakset": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.3.tgz", - "integrity": "sha512-LvIm3/KWzS9oRFHugab7d+M/GcBXuXX5xZkzPmN+NxihdQlZUQ4dWuSV1xR/sq6upL1TJEDrfBgRepHFdBtSNQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.7", - "get-intrinsic": "^1.2.4" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-windows": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", - "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-wsl": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", - "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", - "dev": true, - "license": "MIT", - "dependencies": { - "is-docker": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/is64bit": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is64bit/-/is64bit-2.0.0.tgz", - "integrity": "sha512-jv+8jaWCl0g2lSBkNSVXdzfBA0npK1HGC2KtWM9FumFRoGS94g3NbCCLVnCYHLjp4GrW2KZeeSTMo5ddtznmGw==", - "dependencies": { - "system-architecture": "^0.1.0" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/isarray": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", - "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", - "dev": true, - "license": "MIT" - }, - "node_modules/isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - "license": "ISC" - }, - "node_modules/iterator.prototype": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/iterator.prototype/-/iterator.prototype-1.1.3.tgz", - "integrity": "sha512-FW5iMbeQ6rBGm/oKgzq2aW4KvAGpxPzYES8N4g4xNXUKpL1mclMvOe+76AcLDTvD+Ze+sOpVhgdAQEKF4L9iGQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "define-properties": "^1.2.1", - "get-intrinsic": "^1.2.1", - "has-symbols": "^1.0.3", - "reflect.getprototypeof": "^1.0.4", - "set-function-name": "^2.0.1" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/jackspeak": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-4.0.2.tgz", - "integrity": "sha512-bZsjR/iRjl1Nk1UkjGpAzLNfQtzuijhn2g+pbZb98HQ1Gk8vM9hfbxeMBP+M2/UUdwj0RqGG3mlvk2MsAqwvEw==", - "dev": true, - "license": "BlueOak-1.0.0", - "dependencies": { - "@isaacs/cliui": "^8.0.2" - }, - "engines": { - "node": "20 || >=22" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/jju": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/jju/-/jju-1.4.0.tgz", - "integrity": "sha512-8wb9Yw966OSxApiCt0K3yNJL8pnNeIv+OEq2YMidz4FKP6nonSRoOXc80iXY4JaN2FC11B9qsNmDsm+ZOfMROA==", - "dev": true, - "license": "MIT" - }, - "node_modules/joycon": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/joycon/-/joycon-3.1.1.tgz", - "integrity": "sha512-34wB/Y7MW7bzjKRjUKTa46I2Z7eV62Rkhva+KkopW7Qvv/OSWBqvkSY7vusOPrNuZcUG3tApvdVgNB8POj3SPw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - } - }, - "node_modules/js-git": { - "version": "0.7.8", - "resolved": "https://registry.npmjs.org/js-git/-/js-git-0.7.8.tgz", - "integrity": "sha512-+E5ZH/HeRnoc/LW0AmAyhU+mNcWBzAKE+30+IDMLSLbbK+Tdt02AdkOKq9u15rlJsDEGFqtgckc8ZM59LhhiUA==", - "dev": true, - "license": "MIT", - "dependencies": { - "bodec": "^0.1.0", - "culvert": "^0.1.2", - "git-sha1": "^0.1.2", - "pako": "^0.2.5" - } - }, - "node_modules/js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "license": "MIT" - }, - "node_modules/js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", - "license": "MIT", - "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/jsbn": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-1.1.0.tgz", - "integrity": "sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A==", - "dev": true, - "license": "MIT" - }, - "node_modules/jsesc": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.0.2.tgz", - "integrity": "sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==", - "dev": true, - "license": "MIT", - "bin": { - "jsesc": "bin/jsesc" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/json-buffer": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", - "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/json-parse-even-better-errors": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", - "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", - "dev": true, - "license": "MIT" - }, - "node_modules/json-schema-ref-resolver": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-schema-ref-resolver/-/json-schema-ref-resolver-1.0.1.tgz", - "integrity": "sha512-EJAj1pgHc1hxF6vo2Z3s69fMjO1INq6eGHXZ8Z6wCQeldCuwxGK9Sxf4/cScGn3FZubCVUehfWtcDM/PLteCQw==", - "license": "MIT", - "dependencies": { - "fast-deep-equal": "^3.1.3" - } - }, - "node_modules/json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true, - "license": "MIT" - }, - "node_modules/json-stable-stringify-without-jsonify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", - "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", - "dev": true, - "license": "MIT" - }, - "node_modules/json-stringify-safe": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==", - "dev": true, - "license": "ISC", - "optional": true - }, - "node_modules/json5": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", - "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", - "dev": true, - "license": "MIT", - "bin": { - "json5": "lib/cli.js" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", - "license": "MIT", - "optionalDependencies": { - "graceful-fs": "^4.1.6" - } - }, - "node_modules/jsx-ast-utils": { - "version": "3.3.5", - "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.5.tgz", - "integrity": "sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "array-includes": "^3.1.6", - "array.prototype.flat": "^1.3.1", - "object.assign": "^4.1.4", - "object.values": "^1.1.6" - }, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/katex": { - "version": "0.16.11", - "resolved": "https://registry.npmjs.org/katex/-/katex-0.16.11.tgz", - "integrity": "sha512-RQrI8rlHY92OLf3rho/Ts8i/XvjgguEjOkO1BEXcU3N8BqPpSzBNwV/G0Ukr+P/l3ivvJUE/Fa/CwbS6HesGNQ==", - "funding": [ - "https://opencollective.com/katex", - "https://github.com/sponsors/katex" - ], - "license": "MIT", - "dependencies": { - "commander": "^8.3.0" - }, - "bin": { - "katex": "cli.js" - } - }, - "node_modules/keyv": { - "version": "4.5.4", - "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", - "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", - "dev": true, - "license": "MIT", - "dependencies": { - "json-buffer": "3.0.1" - } - }, - "node_modules/khroma": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/khroma/-/khroma-2.1.0.tgz", - "integrity": "sha512-Ls993zuzfayK269Svk9hzpeGUKob/sIgZzyHYdjQoAdQetRKpOLj+k/QQQ/6Qi0Yz65mlROrfd+Ev+1+7dz9Kw==" - }, - "node_modules/kind-of": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", - "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/kolorist": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/kolorist/-/kolorist-1.8.0.tgz", - "integrity": "sha512-Y+60/zizpJ3HRH8DCss+q95yr6145JXZo46OTpFvDZWLfRCE4qChOyk1b26nMaNpfHHgxagk9dXT5OP0Tfe+dQ==", - "license": "MIT" - }, - "node_modules/langium": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/langium/-/langium-3.0.0.tgz", - "integrity": "sha512-+Ez9EoiByeoTu/2BXmEaZ06iPNXM6thWJp02KfBO/raSMyCJ4jw7AkWWa+zBCTm0+Tw1Fj9FOxdqSskyN5nAwg==", - "license": "MIT", - "dependencies": { - "chevrotain": "~11.0.3", - "chevrotain-allstar": "~0.3.0", - "vscode-languageserver": "~9.0.1", - "vscode-languageserver-textdocument": "~1.0.11", - "vscode-uri": "~3.0.8" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/language-subtag-registry": { - "version": "0.3.23", - "resolved": "https://registry.npmjs.org/language-subtag-registry/-/language-subtag-registry-0.3.23.tgz", - "integrity": "sha512-0K65Lea881pHotoGEa5gDlMxt3pctLi2RplBb7Ezh4rRdLEOtgi7n4EwK9lamnUCkKBqaeKRVebTq6BAxSkpXQ==", - "dev": true, - "license": "CC0-1.0" - }, - "node_modules/language-tags": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/language-tags/-/language-tags-1.0.9.tgz", - "integrity": "sha512-MbjN408fEndfiQXbFQ1vnd+1NoLDsnQW41410oQBXiyXDMYH5z505juWa4KUE1LqxRC7DgOgZDbKLxHIwm27hA==", - "dev": true, - "license": "MIT", - "dependencies": { - "language-subtag-registry": "^0.3.20" - }, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/layout-base": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/layout-base/-/layout-base-1.0.2.tgz", - "integrity": "sha512-8h2oVEZNktL4BH2JCOI90iD1yXwL6iNW7KcCKT2QZgQJR2vbqDsldCTPRU9NifTCqHZci57XvQQ15YTu+sTYPg==", - "license": "MIT" - }, - "node_modules/lazy": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/lazy/-/lazy-1.0.11.tgz", - "integrity": "sha512-Y+CjUfLmIpoUCCRl0ub4smrYtGGr5AOa2AKOaWelGHOGz33X/Y/KizefGqbkwfz44+cnq/+9habclf8vOmu2LA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.2.0" - } - }, - "node_modules/levn": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", - "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "prelude-ls": "^1.2.1", - "type-check": "~0.4.0" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/light-my-request": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/light-my-request/-/light-my-request-6.1.0.tgz", - "integrity": "sha512-+NFuhlOGoEwxeQfJ/pobkVFxcnKyDtiX847hLjuB/IzBxIl3q4VJeFI8uRCgb3AlTWL1lgOr+u5+8QdUcr33ng==", - "license": "BSD-3-Clause", - "dependencies": { - "cookie": "^0.7.0", - "process-warning": "^4.0.0", - "set-cookie-parser": "^2.6.0" - } - }, - "node_modules/lilconfig": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-3.1.2.tgz", - "integrity": "sha512-eop+wDAvpItUys0FWkHIKeC9ybYrTGbU41U5K7+bttZZeohvnY7M9dZ5kB21GNWiFT2q1OoPTvncPCgSOVO5ow==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/antonk52" - } - }, - "node_modules/lines-and-columns": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", - "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", - "dev": true, - "license": "MIT" - }, - "node_modules/load-tsconfig": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/load-tsconfig/-/load-tsconfig-0.2.5.tgz", - "integrity": "sha512-IXO6OCs9yg8tMKzfPZ1YmheJbZCiEsnBdcB03l0OcfK9prKnJb96siuHCr5Fl37/yo9DnKU+TLpxzTUspw9shg==", - "dev": true, - "license": "MIT", - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - } - }, - "node_modules/local-pkg": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/local-pkg/-/local-pkg-0.5.0.tgz", - "integrity": "sha512-ok6z3qlYyCDS4ZEU27HaU6x/xZa9Whf8jD4ptH5UZTQYZVYeb9bnZ3ojVhiJNLiXK1Hfc0GNbLXcmZ5plLDDBg==", - "license": "MIT", - "dependencies": { - "mlly": "^1.4.2", - "pkg-types": "^1.0.3" - }, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/antfu" - } - }, - "node_modules/locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "license": "MIT", - "dependencies": { - "p-locate": "^4.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", - "dev": true, - "license": "MIT" - }, - "node_modules/lodash-es": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.21.tgz", - "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==", - "license": "MIT" - }, - "node_modules/lodash.merge": { - "version": "4.6.2", - "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", - "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/lodash.sortby": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz", - "integrity": "sha512-HDWXG8isMntAyRF5vZ7xKuEvOhT4AhlRt/3czTSjvGUxjYCBVRQY48ViDHyfYz9VIoBkW4TMGQNapx+l3RUwdA==", - "dev": true, - "license": "MIT" - }, - "node_modules/lodash.startcase": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/lodash.startcase/-/lodash.startcase-4.4.0.tgz", - "integrity": "sha512-+WKqsK294HMSc2jEbNgpHpd0JfIBhp7rEV4aqXWqFr6AlXov+SlcgB1Fv01y2kGe3Gc8nMW7VA0SrGuSkRfIEg==" - }, - "node_modules/longest-streak": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/longest-streak/-/longest-streak-3.1.0.tgz", - "integrity": "sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/loose-envify": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", - "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", - "license": "MIT", - "dependencies": { - "js-tokens": "^3.0.0 || ^4.0.0" - }, - "bin": { - "loose-envify": "cli.js" - } - }, - "node_modules/lru-cache": { - "version": "10.4.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", - "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==", - "license": "ISC" - }, - "node_modules/markdown-extensions": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/markdown-extensions/-/markdown-extensions-2.0.0.tgz", - "integrity": "sha512-o5vL7aDWatOTX8LzaS1WMoaoxIiLRQJuIKKe2wAw6IeULDHaqbiqiggmx+pKvZDb1Sj+pE46Sn1T7lCqfFtg1Q==", - "license": "MIT", - "engines": { - "node": ">=16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/markdown-table": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/markdown-table/-/markdown-table-3.0.3.tgz", - "integrity": "sha512-Z1NL3Tb1M9wH4XESsCDEksWoKTdlUafKc4pt0GRwjUyXaCFZ+dc3g2erqB6zm3szA2IUSi7VnPI+o/9jnxh9hw==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/marked": { - "version": "13.0.3", - "resolved": "https://registry.npmjs.org/marked/-/marked-13.0.3.tgz", - "integrity": "sha512-rqRix3/TWzE9rIoFGIn8JmsVfhiuC8VIQ8IdX5TfzmeBucdY05/0UlzKaw0eVtpcN/OdVFpBk7CjKGo9iHJ/zA==", - "license": "MIT", - "bin": { - "marked": "bin/marked.js" - }, - "engines": { - "node": ">= 18" - } - }, - "node_modules/mathjax-full": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/mathjax-full/-/mathjax-full-3.2.2.tgz", - "integrity": "sha512-+LfG9Fik+OuI8SLwsiR02IVdjcnRCy5MufYLi0C3TdMT56L/pjB0alMVGgoWJF8pN9Rc7FESycZB9BMNWIid5w==", - "license": "Apache-2.0", - "dependencies": { - "esm": "^3.2.25", - "mhchemparser": "^4.1.0", - "mj-context-menu": "^0.6.1", - "speech-rule-engine": "^4.0.6" - } - }, - "node_modules/mdast-util-find-and-replace": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/mdast-util-find-and-replace/-/mdast-util-find-and-replace-3.0.1.tgz", - "integrity": "sha512-SG21kZHGC3XRTSUhtofZkBzZTJNM5ecCi0SK2IMKmSXR8vO3peL+kb1O0z7Zl83jKtutG4k5Wv/W7V3/YHvzPA==", - "license": "MIT", - "dependencies": { - "@types/mdast": "^4.0.0", - "escape-string-regexp": "^5.0.0", - "unist-util-is": "^6.0.0", - "unist-util-visit-parents": "^6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-find-and-replace/node_modules/escape-string-regexp": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", - "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/mdast-util-from-markdown": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-2.0.1.tgz", - "integrity": "sha512-aJEUyzZ6TzlsX2s5B4Of7lN7EQtAxvtradMMglCQDyaTFgse6CmtmdJ15ElnVRlCg1vpNyVtbem0PWzlNieZsA==", - "license": "MIT", - "dependencies": { - "@types/mdast": "^4.0.0", - "@types/unist": "^3.0.0", - "decode-named-character-reference": "^1.0.0", - "devlop": "^1.0.0", - "mdast-util-to-string": "^4.0.0", - "micromark": "^4.0.0", - "micromark-util-decode-numeric-character-reference": "^2.0.0", - "micromark-util-decode-string": "^2.0.0", - "micromark-util-normalize-identifier": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0", - "unist-util-stringify-position": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-frontmatter": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/mdast-util-frontmatter/-/mdast-util-frontmatter-2.0.1.tgz", - "integrity": "sha512-LRqI9+wdgC25P0URIJY9vwocIzCcksduHQ9OF2joxQoyTNVduwLAFUzjoopuRJbJAReaKrNQKAZKL3uCMugWJA==", - "license": "MIT", - "dependencies": { - "@types/mdast": "^4.0.0", - "devlop": "^1.0.0", - "escape-string-regexp": "^5.0.0", - "mdast-util-from-markdown": "^2.0.0", - "mdast-util-to-markdown": "^2.0.0", - "micromark-extension-frontmatter": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-frontmatter/node_modules/escape-string-regexp": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", - "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/mdast-util-gfm": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/mdast-util-gfm/-/mdast-util-gfm-3.0.0.tgz", - "integrity": "sha512-dgQEX5Amaq+DuUqf26jJqSK9qgixgd6rYDHAv4aTBuA92cTknZlKpPfa86Z/s8Dj8xsAQpFfBmPUHWJBWqS4Bw==", - "license": "MIT", - "dependencies": { - "mdast-util-from-markdown": "^2.0.0", - "mdast-util-gfm-autolink-literal": "^2.0.0", - "mdast-util-gfm-footnote": "^2.0.0", - "mdast-util-gfm-strikethrough": "^2.0.0", - "mdast-util-gfm-table": "^2.0.0", - "mdast-util-gfm-task-list-item": "^2.0.0", - "mdast-util-to-markdown": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-gfm-autolink-literal": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/mdast-util-gfm-autolink-literal/-/mdast-util-gfm-autolink-literal-2.0.1.tgz", - "integrity": "sha512-5HVP2MKaP6L+G6YaxPNjuL0BPrq9orG3TsrZ9YXbA3vDw/ACI4MEsnoDpn6ZNm7GnZgtAcONJyPhOP8tNJQavQ==", - "license": "MIT", - "dependencies": { - "@types/mdast": "^4.0.0", - "ccount": "^2.0.0", - "devlop": "^1.0.0", - "mdast-util-find-and-replace": "^3.0.0", - "micromark-util-character": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-gfm-footnote": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/mdast-util-gfm-footnote/-/mdast-util-gfm-footnote-2.0.0.tgz", - "integrity": "sha512-5jOT2boTSVkMnQ7LTrd6n/18kqwjmuYqo7JUPe+tRCY6O7dAuTFMtTPauYYrMPpox9hlN0uOx/FL8XvEfG9/mQ==", - "license": "MIT", - "dependencies": { - "@types/mdast": "^4.0.0", - "devlop": "^1.1.0", - "mdast-util-from-markdown": "^2.0.0", - "mdast-util-to-markdown": "^2.0.0", - "micromark-util-normalize-identifier": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-gfm-strikethrough": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/mdast-util-gfm-strikethrough/-/mdast-util-gfm-strikethrough-2.0.0.tgz", - "integrity": "sha512-mKKb915TF+OC5ptj5bJ7WFRPdYtuHv0yTRxK2tJvi+BDqbkiG7h7u/9SI89nRAYcmap2xHQL9D+QG/6wSrTtXg==", - "license": "MIT", - "dependencies": { - "@types/mdast": "^4.0.0", - "mdast-util-from-markdown": "^2.0.0", - "mdast-util-to-markdown": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-gfm-table": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/mdast-util-gfm-table/-/mdast-util-gfm-table-2.0.0.tgz", - "integrity": "sha512-78UEvebzz/rJIxLvE7ZtDd/vIQ0RHv+3Mh5DR96p7cS7HsBhYIICDBCu8csTNWNO6tBWfqXPWekRuj2FNOGOZg==", - "license": "MIT", - "dependencies": { - "@types/mdast": "^4.0.0", - "devlop": "^1.0.0", - "markdown-table": "^3.0.0", - "mdast-util-from-markdown": "^2.0.0", - "mdast-util-to-markdown": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-gfm-task-list-item": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/mdast-util-gfm-task-list-item/-/mdast-util-gfm-task-list-item-2.0.0.tgz", - "integrity": "sha512-IrtvNvjxC1o06taBAVJznEnkiHxLFTzgonUdy8hzFVeDun0uTjxxrRGVaNFqkU1wJR3RBPEfsxmU6jDWPofrTQ==", - "license": "MIT", - "dependencies": { - "@types/mdast": "^4.0.0", - "devlop": "^1.0.0", - "mdast-util-from-markdown": "^2.0.0", - "mdast-util-to-markdown": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-math": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/mdast-util-math/-/mdast-util-math-3.0.0.tgz", - "integrity": "sha512-Tl9GBNeG/AhJnQM221bJR2HPvLOSnLE/T9cJI9tlc6zwQk2nPk/4f0cHkOdEixQPC/j8UtKDdITswvLAy1OZ1w==", - "license": "MIT", - "dependencies": { - "@types/hast": "^3.0.0", - "@types/mdast": "^4.0.0", - "devlop": "^1.0.0", - "longest-streak": "^3.0.0", - "mdast-util-from-markdown": "^2.0.0", - "mdast-util-to-markdown": "^2.1.0", - "unist-util-remove-position": "^5.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-mdx": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/mdast-util-mdx/-/mdast-util-mdx-3.0.0.tgz", - "integrity": "sha512-JfbYLAW7XnYTTbUsmpu0kdBUVe+yKVJZBItEjwyYJiDJuZ9w4eeaqks4HQO+R7objWgS2ymV60GYpI14Ug554w==", - "license": "MIT", - "dependencies": { - "mdast-util-from-markdown": "^2.0.0", - "mdast-util-mdx-expression": "^2.0.0", - "mdast-util-mdx-jsx": "^3.0.0", - "mdast-util-mdxjs-esm": "^2.0.0", - "mdast-util-to-markdown": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-mdx-expression": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/mdast-util-mdx-expression/-/mdast-util-mdx-expression-2.0.1.tgz", - "integrity": "sha512-J6f+9hUp+ldTZqKRSg7Vw5V6MqjATc+3E4gf3CFNcuZNWD8XdyI6zQ8GqH7f8169MM6P7hMBRDVGnn7oHB9kXQ==", - "license": "MIT", - "dependencies": { - "@types/estree-jsx": "^1.0.0", - "@types/hast": "^3.0.0", - "@types/mdast": "^4.0.0", - "devlop": "^1.0.0", - "mdast-util-from-markdown": "^2.0.0", - "mdast-util-to-markdown": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-mdx-jsx": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/mdast-util-mdx-jsx/-/mdast-util-mdx-jsx-3.1.3.tgz", - "integrity": "sha512-bfOjvNt+1AcbPLTFMFWY149nJz0OjmewJs3LQQ5pIyVGxP4CdOqNVJL6kTaM5c68p8q82Xv3nCyFfUnuEcH3UQ==", - "license": "MIT", - "dependencies": { - "@types/estree-jsx": "^1.0.0", - "@types/hast": "^3.0.0", - "@types/mdast": "^4.0.0", - "@types/unist": "^3.0.0", - "ccount": "^2.0.0", - "devlop": "^1.1.0", - "mdast-util-from-markdown": "^2.0.0", - "mdast-util-to-markdown": "^2.0.0", - "parse-entities": "^4.0.0", - "stringify-entities": "^4.0.0", - "unist-util-stringify-position": "^4.0.0", - "vfile-message": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-mdxjs-esm": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/mdast-util-mdxjs-esm/-/mdast-util-mdxjs-esm-2.0.1.tgz", - "integrity": "sha512-EcmOpxsZ96CvlP03NghtH1EsLtr0n9Tm4lPUJUBccV9RwUOneqSycg19n5HGzCf+10LozMRSObtVr3ee1WoHtg==", - "license": "MIT", - "dependencies": { - "@types/estree-jsx": "^1.0.0", - "@types/hast": "^3.0.0", - "@types/mdast": "^4.0.0", - "devlop": "^1.0.0", - "mdast-util-from-markdown": "^2.0.0", - "mdast-util-to-markdown": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-phrasing": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/mdast-util-phrasing/-/mdast-util-phrasing-4.1.0.tgz", - "integrity": "sha512-TqICwyvJJpBwvGAMZjj4J2n0X8QWp21b9l0o7eXyVJ25YNWYbJDVIyD1bZXE6WtV6RmKJVYmQAKWa0zWOABz2w==", - "license": "MIT", - "dependencies": { - "@types/mdast": "^4.0.0", - "unist-util-is": "^6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-to-hast": { - "version": "13.2.0", - "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-13.2.0.tgz", - "integrity": "sha512-QGYKEuUsYT9ykKBCMOEDLsU5JRObWQusAolFMeko/tYPufNkRffBAQjIE+99jbA87xv6FgmjLtwjh9wBWajwAA==", - "license": "MIT", - "dependencies": { - "@types/hast": "^3.0.0", - "@types/mdast": "^4.0.0", - "@ungap/structured-clone": "^1.0.0", - "devlop": "^1.0.0", - "micromark-util-sanitize-uri": "^2.0.0", - "trim-lines": "^3.0.0", - "unist-util-position": "^5.0.0", - "unist-util-visit": "^5.0.0", - "vfile": "^6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-to-markdown": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mdast-util-to-markdown/-/mdast-util-to-markdown-2.1.0.tgz", - "integrity": "sha512-SR2VnIEdVNCJbP6y7kVTJgPLifdr8WEU440fQec7qHoHOUz/oJ2jmNRqdDQ3rbiStOXb2mCDGTuwsK5OPUgYlQ==", - "license": "MIT", - "dependencies": { - "@types/mdast": "^4.0.0", - "@types/unist": "^3.0.0", - "longest-streak": "^3.0.0", - "mdast-util-phrasing": "^4.0.0", - "mdast-util-to-string": "^4.0.0", - "micromark-util-decode-string": "^2.0.0", - "unist-util-visit": "^5.0.0", - "zwitch": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-to-string": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-4.0.0.tgz", - "integrity": "sha512-0H44vDimn51F0YwvxSJSm0eCDOJTRlmN0R1yBh4HLj9wiV1Dn0QoXGbvFAWj2hSItVTlCmBF1hqKlIyUBVFLPg==", - "license": "MIT", - "dependencies": { - "@types/mdast": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/merge-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", - "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", - "license": "MIT" - }, - "node_modules/merge2": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", - "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", - "license": "MIT", - "engines": { - "node": ">= 8" - } - }, - "node_modules/mermaid": { - "version": "11.3.0", - "resolved": "https://registry.npmjs.org/mermaid/-/mermaid-11.3.0.tgz", - "integrity": "sha512-fFmf2gRXLtlGzug4wpIGN+rQdZ30M8IZEB1D3eZkXNqC7puhqeURBcD/9tbwXsqBO+A6Nzzo3MSSepmnw5xSeg==", - "license": "MIT", - "dependencies": { - "@braintree/sanitize-url": "^7.0.1", - "@iconify/utils": "^2.1.32", - "@mermaid-js/parser": "^0.3.0", - "cytoscape": "^3.29.2", - "cytoscape-cose-bilkent": "^4.1.0", - "cytoscape-fcose": "^2.2.0", - "d3": "^7.9.0", - "d3-sankey": "^0.12.3", - "dagre-d3-es": "7.0.10", - "dayjs": "^1.11.10", - "dompurify": "^3.0.11 <3.1.7", - "katex": "^0.16.9", - "khroma": "^2.1.0", - "lodash-es": "^4.17.21", - "marked": "^13.0.2", - "roughjs": "^4.6.6", - "stylis": "^4.3.1", - "ts-dedent": "^2.2.0", - "uuid": "^9.0.1" - } - }, - "node_modules/mhchemparser": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/mhchemparser/-/mhchemparser-4.2.1.tgz", - "integrity": "sha512-kYmyrCirqJf3zZ9t/0wGgRZ4/ZJw//VwaRVGA75C4nhE60vtnIzhl9J9ndkX/h6hxSN7pjg/cE0VxbnNM+bnDQ==", - "license": "Apache-2.0" - }, - "node_modules/micromark": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/micromark/-/micromark-4.0.0.tgz", - "integrity": "sha512-o/sd0nMof8kYff+TqcDx3VSrgBTcZpSvYcAHIfHhv5VAuNmisCxjhx6YmxS8PFEpb9z5WKWKPdzf0jM23ro3RQ==", - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT", - "dependencies": { - "@types/debug": "^4.0.0", - "debug": "^4.0.0", - "decode-named-character-reference": "^1.0.0", - "devlop": "^1.0.0", - "micromark-core-commonmark": "^2.0.0", - "micromark-factory-space": "^2.0.0", - "micromark-util-character": "^2.0.0", - "micromark-util-chunked": "^2.0.0", - "micromark-util-combine-extensions": "^2.0.0", - "micromark-util-decode-numeric-character-reference": "^2.0.0", - "micromark-util-encode": "^2.0.0", - "micromark-util-normalize-identifier": "^2.0.0", - "micromark-util-resolve-all": "^2.0.0", - "micromark-util-sanitize-uri": "^2.0.0", - "micromark-util-subtokenize": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" - } - }, - "node_modules/micromark-core-commonmark": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-core-commonmark/-/micromark-core-commonmark-2.0.1.tgz", - "integrity": "sha512-CUQyKr1e///ZODyD1U3xit6zXwy1a8q2a1S1HKtIlmgvurrEpaw/Y9y6KSIbF8P59cn/NjzHyO+Q2fAyYLQrAA==", - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT", - "dependencies": { - "decode-named-character-reference": "^1.0.0", - "devlop": "^1.0.0", - "micromark-factory-destination": "^2.0.0", - "micromark-factory-label": "^2.0.0", - "micromark-factory-space": "^2.0.0", - "micromark-factory-title": "^2.0.0", - "micromark-factory-whitespace": "^2.0.0", - "micromark-util-character": "^2.0.0", - "micromark-util-chunked": "^2.0.0", - "micromark-util-classify-character": "^2.0.0", - "micromark-util-html-tag-name": "^2.0.0", - "micromark-util-normalize-identifier": "^2.0.0", - "micromark-util-resolve-all": "^2.0.0", - "micromark-util-subtokenize": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" - } - }, - "node_modules/micromark-extension-frontmatter": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-extension-frontmatter/-/micromark-extension-frontmatter-2.0.0.tgz", - "integrity": "sha512-C4AkuM3dA58cgZha7zVnuVxBhDsbttIMiytjgsM2XbHAB2faRVaHRle40558FBN+DJcrLNCoqG5mlrpdU4cRtg==", - "license": "MIT", - "dependencies": { - "fault": "^2.0.0", - "micromark-util-character": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/micromark-extension-gfm": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm/-/micromark-extension-gfm-3.0.0.tgz", - "integrity": "sha512-vsKArQsicm7t0z2GugkCKtZehqUm31oeGBV/KVSorWSy8ZlNAv7ytjFhvaryUiCUJYqs+NoE6AFhpQvBTM6Q4w==", - "license": "MIT", - "dependencies": { - "micromark-extension-gfm-autolink-literal": "^2.0.0", - "micromark-extension-gfm-footnote": "^2.0.0", - "micromark-extension-gfm-strikethrough": "^2.0.0", - "micromark-extension-gfm-table": "^2.0.0", - "micromark-extension-gfm-tagfilter": "^2.0.0", - "micromark-extension-gfm-task-list-item": "^2.0.0", - "micromark-util-combine-extensions": "^2.0.0", - "micromark-util-types": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/micromark-extension-gfm-autolink-literal": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-autolink-literal/-/micromark-extension-gfm-autolink-literal-2.1.0.tgz", - "integrity": "sha512-oOg7knzhicgQ3t4QCjCWgTmfNhvQbDDnJeVu9v81r7NltNCVmhPy1fJRX27pISafdjL+SVc4d3l48Gb6pbRypw==", - "license": "MIT", - "dependencies": { - "micromark-util-character": "^2.0.0", - "micromark-util-sanitize-uri": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/micromark-extension-gfm-footnote": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-footnote/-/micromark-extension-gfm-footnote-2.1.0.tgz", - "integrity": "sha512-/yPhxI1ntnDNsiHtzLKYnE3vf9JZ6cAisqVDauhp4CEHxlb4uoOTxOCJ+9s51bIB8U1N1FJ1RXOKTIlD5B/gqw==", - "license": "MIT", - "dependencies": { - "devlop": "^1.0.0", - "micromark-core-commonmark": "^2.0.0", - "micromark-factory-space": "^2.0.0", - "micromark-util-character": "^2.0.0", - "micromark-util-normalize-identifier": "^2.0.0", - "micromark-util-sanitize-uri": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/micromark-extension-gfm-strikethrough": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-strikethrough/-/micromark-extension-gfm-strikethrough-2.1.0.tgz", - "integrity": "sha512-ADVjpOOkjz1hhkZLlBiYA9cR2Anf8F4HqZUO6e5eDcPQd0Txw5fxLzzxnEkSkfnD0wziSGiv7sYhk/ktvbf1uw==", - "license": "MIT", - "dependencies": { - "devlop": "^1.0.0", - "micromark-util-chunked": "^2.0.0", - "micromark-util-classify-character": "^2.0.0", - "micromark-util-resolve-all": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/micromark-extension-gfm-table": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-table/-/micromark-extension-gfm-table-2.1.0.tgz", - "integrity": "sha512-Ub2ncQv+fwD70/l4ou27b4YzfNaCJOvyX4HxXU15m7mpYY+rjuWzsLIPZHJL253Z643RpbcP1oeIJlQ/SKW67g==", - "license": "MIT", - "dependencies": { - "devlop": "^1.0.0", - "micromark-factory-space": "^2.0.0", - "micromark-util-character": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/micromark-extension-gfm-tagfilter": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-tagfilter/-/micromark-extension-gfm-tagfilter-2.0.0.tgz", - "integrity": "sha512-xHlTOmuCSotIA8TW1mDIM6X2O1SiX5P9IuDtqGonFhEK0qgRI4yeC6vMxEV2dgyr2TiD+2PQ10o+cOhdVAcwfg==", - "license": "MIT", - "dependencies": { - "micromark-util-types": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/micromark-extension-gfm-task-list-item": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-task-list-item/-/micromark-extension-gfm-task-list-item-2.1.0.tgz", - "integrity": "sha512-qIBZhqxqI6fjLDYFTBIa4eivDMnP+OZqsNwmQ3xNLE4Cxwc+zfQEfbs6tzAo2Hjq+bh6q5F+Z8/cksrLFYWQQw==", - "license": "MIT", - "dependencies": { - "devlop": "^1.0.0", - "micromark-factory-space": "^2.0.0", - "micromark-util-character": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/micromark-extension-math": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/micromark-extension-math/-/micromark-extension-math-3.1.0.tgz", - "integrity": "sha512-lvEqd+fHjATVs+2v/8kg9i5Q0AP2k85H0WUOwpIVvUML8BapsMvh1XAogmQjOCsLpoKRCVQqEkQBB3NhVBcsOg==", - "license": "MIT", - "dependencies": { - "@types/katex": "^0.16.0", - "devlop": "^1.0.0", - "katex": "^0.16.0", - "micromark-factory-space": "^2.0.0", - "micromark-util-character": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/micromark-extension-mdx-expression": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/micromark-extension-mdx-expression/-/micromark-extension-mdx-expression-3.0.0.tgz", - "integrity": "sha512-sI0nwhUDz97xyzqJAbHQhp5TfaxEvZZZ2JDqUo+7NvyIYG6BZ5CPPqj2ogUoPJlmXHBnyZUzISg9+oUmU6tUjQ==", - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT", - "dependencies": { - "@types/estree": "^1.0.0", - "devlop": "^1.0.0", - "micromark-factory-mdx-expression": "^2.0.0", - "micromark-factory-space": "^2.0.0", - "micromark-util-character": "^2.0.0", - "micromark-util-events-to-acorn": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" - } - }, - "node_modules/micromark-extension-mdx-jsx": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/micromark-extension-mdx-jsx/-/micromark-extension-mdx-jsx-3.0.1.tgz", - "integrity": "sha512-vNuFb9czP8QCtAQcEJn0UJQJZA8Dk6DXKBqx+bg/w0WGuSxDxNr7hErW89tHUY31dUW4NqEOWwmEUNhjTFmHkg==", - "license": "MIT", - "dependencies": { - "@types/acorn": "^4.0.0", - "@types/estree": "^1.0.0", - "devlop": "^1.0.0", - "estree-util-is-identifier-name": "^3.0.0", - "micromark-factory-mdx-expression": "^2.0.0", - "micromark-factory-space": "^2.0.0", - "micromark-util-character": "^2.0.0", - "micromark-util-events-to-acorn": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0", - "vfile-message": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/micromark-extension-mdx-md": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-extension-mdx-md/-/micromark-extension-mdx-md-2.0.0.tgz", - "integrity": "sha512-EpAiszsB3blw4Rpba7xTOUptcFeBFi+6PY8VnJ2hhimH+vCQDirWgsMpz7w1XcZE7LVrSAUGb9VJpG9ghlYvYQ==", - "license": "MIT", - "dependencies": { - "micromark-util-types": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/micromark-extension-mdxjs": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/micromark-extension-mdxjs/-/micromark-extension-mdxjs-3.0.0.tgz", - "integrity": "sha512-A873fJfhnJ2siZyUrJ31l34Uqwy4xIFmvPY1oj+Ean5PHcPBYzEsvqvWGaWcfEIr11O5Dlw3p2y0tZWpKHDejQ==", - "license": "MIT", - "dependencies": { - "acorn": "^8.0.0", - "acorn-jsx": "^5.0.0", - "micromark-extension-mdx-expression": "^3.0.0", - "micromark-extension-mdx-jsx": "^3.0.0", - "micromark-extension-mdx-md": "^2.0.0", - "micromark-extension-mdxjs-esm": "^3.0.0", - "micromark-util-combine-extensions": "^2.0.0", - "micromark-util-types": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/micromark-extension-mdxjs-esm": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/micromark-extension-mdxjs-esm/-/micromark-extension-mdxjs-esm-3.0.0.tgz", - "integrity": "sha512-DJFl4ZqkErRpq/dAPyeWp15tGrcrrJho1hKK5uBS70BCtfrIFg81sqcTVu3Ta+KD1Tk5vAtBNElWxtAa+m8K9A==", - "license": "MIT", - "dependencies": { - "@types/estree": "^1.0.0", - "devlop": "^1.0.0", - "micromark-core-commonmark": "^2.0.0", - "micromark-util-character": "^2.0.0", - "micromark-util-events-to-acorn": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0", - "unist-util-position-from-estree": "^2.0.0", - "vfile-message": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/micromark-factory-destination": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-factory-destination/-/micromark-factory-destination-2.0.0.tgz", - "integrity": "sha512-j9DGrQLm/Uhl2tCzcbLhy5kXsgkHUrjJHg4fFAeoMRwJmJerT9aw4FEhIbZStWN8A3qMwOp1uzHr4UL8AInxtA==", - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT", - "dependencies": { - "micromark-util-character": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" - } - }, - "node_modules/micromark-factory-label": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-factory-label/-/micromark-factory-label-2.0.0.tgz", - "integrity": "sha512-RR3i96ohZGde//4WSe/dJsxOX6vxIg9TimLAS3i4EhBAFx8Sm5SmqVfR8E87DPSR31nEAjZfbt91OMZWcNgdZw==", - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT", - "dependencies": { - "devlop": "^1.0.0", - "micromark-util-character": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" - } - }, - "node_modules/micromark-factory-mdx-expression": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/micromark-factory-mdx-expression/-/micromark-factory-mdx-expression-2.0.2.tgz", - "integrity": "sha512-5E5I2pFzJyg2CtemqAbcyCktpHXuJbABnsb32wX2U8IQKhhVFBqkcZR5LRm1WVoFqa4kTueZK4abep7wdo9nrw==", - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT", - "dependencies": { - "@types/estree": "^1.0.0", - "devlop": "^1.0.0", - "micromark-factory-space": "^2.0.0", - "micromark-util-character": "^2.0.0", - "micromark-util-events-to-acorn": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0", - "unist-util-position-from-estree": "^2.0.0", - "vfile-message": "^4.0.0" - } - }, - "node_modules/micromark-factory-space": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-factory-space/-/micromark-factory-space-2.0.0.tgz", - "integrity": "sha512-TKr+LIDX2pkBJXFLzpyPyljzYK3MtmllMUMODTQJIUfDGncESaqB90db9IAUcz4AZAJFdd8U9zOp9ty1458rxg==", - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT", - "dependencies": { - "micromark-util-character": "^2.0.0", - "micromark-util-types": "^2.0.0" - } - }, - "node_modules/micromark-factory-title": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-factory-title/-/micromark-factory-title-2.0.0.tgz", - "integrity": "sha512-jY8CSxmpWLOxS+t8W+FG3Xigc0RDQA9bKMY/EwILvsesiRniiVMejYTE4wumNc2f4UbAa4WsHqe3J1QS1sli+A==", - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT", - "dependencies": { - "micromark-factory-space": "^2.0.0", - "micromark-util-character": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" - } - }, - "node_modules/micromark-factory-whitespace": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-factory-whitespace/-/micromark-factory-whitespace-2.0.0.tgz", - "integrity": "sha512-28kbwaBjc5yAI1XadbdPYHX/eDnqaUFVikLwrO7FDnKG7lpgxnvk/XGRhX/PN0mOZ+dBSZ+LgunHS+6tYQAzhA==", - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT", - "dependencies": { - "micromark-factory-space": "^2.0.0", - "micromark-util-character": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" - } - }, - "node_modules/micromark-util-character": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-2.1.0.tgz", - "integrity": "sha512-KvOVV+X1yLBfs9dCBSopq/+G1PcgT3lAK07mC4BzXi5E7ahzMAF8oIupDDJ6mievI6F+lAATkbQQlQixJfT3aQ==", - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT", - "dependencies": { - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" - } - }, - "node_modules/micromark-util-chunked": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-chunked/-/micromark-util-chunked-2.0.0.tgz", - "integrity": "sha512-anK8SWmNphkXdaKgz5hJvGa7l00qmcaUQoMYsBwDlSKFKjc6gjGXPDw3FNL3Nbwq5L8gE+RCbGqTw49FK5Qyvg==", - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT", - "dependencies": { - "micromark-util-symbol": "^2.0.0" - } - }, - "node_modules/micromark-util-classify-character": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-classify-character/-/micromark-util-classify-character-2.0.0.tgz", - "integrity": "sha512-S0ze2R9GH+fu41FA7pbSqNWObo/kzwf8rN/+IGlW/4tC6oACOs8B++bh+i9bVyNnwCcuksbFwsBme5OCKXCwIw==", - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT", - "dependencies": { - "micromark-util-character": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" - } - }, - "node_modules/micromark-util-combine-extensions": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-combine-extensions/-/micromark-util-combine-extensions-2.0.0.tgz", - "integrity": "sha512-vZZio48k7ON0fVS3CUgFatWHoKbbLTK/rT7pzpJ4Bjp5JjkZeasRfrS9wsBdDJK2cJLHMckXZdzPSSr1B8a4oQ==", - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT", - "dependencies": { - "micromark-util-chunked": "^2.0.0", - "micromark-util-types": "^2.0.0" - } - }, - "node_modules/micromark-util-decode-numeric-character-reference": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-decode-numeric-character-reference/-/micromark-util-decode-numeric-character-reference-2.0.1.tgz", - "integrity": "sha512-bmkNc7z8Wn6kgjZmVHOX3SowGmVdhYS7yBpMnuMnPzDq/6xwVA604DuOXMZTO1lvq01g+Adfa0pE2UKGlxL1XQ==", - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT", - "dependencies": { - "micromark-util-symbol": "^2.0.0" - } - }, - "node_modules/micromark-util-decode-string": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-decode-string/-/micromark-util-decode-string-2.0.0.tgz", - "integrity": "sha512-r4Sc6leeUTn3P6gk20aFMj2ntPwn6qpDZqWvYmAG6NgvFTIlj4WtrAudLi65qYoaGdXYViXYw2pkmn7QnIFasA==", - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT", - "dependencies": { - "decode-named-character-reference": "^1.0.0", - "micromark-util-character": "^2.0.0", - "micromark-util-decode-numeric-character-reference": "^2.0.0", - "micromark-util-symbol": "^2.0.0" - } - }, - "node_modules/micromark-util-encode": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-encode/-/micromark-util-encode-2.0.0.tgz", - "integrity": "sha512-pS+ROfCXAGLWCOc8egcBvT0kf27GoWMqtdarNfDcjb6YLuV5cM3ioG45Ys2qOVqeqSbjaKg72vU+Wby3eddPsA==", - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT" - }, - "node_modules/micromark-util-events-to-acorn": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/micromark-util-events-to-acorn/-/micromark-util-events-to-acorn-2.0.2.tgz", - "integrity": "sha512-Fk+xmBrOv9QZnEDguL9OI9/NQQp6Hz4FuQ4YmCb/5V7+9eAh1s6AYSvL20kHkD67YIg7EpE54TiSlcsf3vyZgA==", - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT", - "dependencies": { - "@types/acorn": "^4.0.0", - "@types/estree": "^1.0.0", - "@types/unist": "^3.0.0", - "devlop": "^1.0.0", - "estree-util-visit": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0", - "vfile-message": "^4.0.0" - } - }, - "node_modules/micromark-util-html-tag-name": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-html-tag-name/-/micromark-util-html-tag-name-2.0.0.tgz", - "integrity": "sha512-xNn4Pqkj2puRhKdKTm8t1YHC/BAjx6CEwRFXntTaRf/x16aqka6ouVoutm+QdkISTlT7e2zU7U4ZdlDLJd2Mcw==", - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT" - }, - "node_modules/micromark-util-normalize-identifier": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-normalize-identifier/-/micromark-util-normalize-identifier-2.0.0.tgz", - "integrity": "sha512-2xhYT0sfo85FMrUPtHcPo2rrp1lwbDEEzpx7jiH2xXJLqBuy4H0GgXk5ToU8IEwoROtXuL8ND0ttVa4rNqYK3w==", - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT", - "dependencies": { - "micromark-util-symbol": "^2.0.0" - } - }, - "node_modules/micromark-util-resolve-all": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-resolve-all/-/micromark-util-resolve-all-2.0.0.tgz", - "integrity": "sha512-6KU6qO7DZ7GJkaCgwBNtplXCvGkJToU86ybBAUdavvgsCiG8lSSvYxr9MhwmQ+udpzywHsl4RpGJsYWG1pDOcA==", - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT", - "dependencies": { - "micromark-util-types": "^2.0.0" - } - }, - "node_modules/micromark-util-sanitize-uri": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-2.0.0.tgz", - "integrity": "sha512-WhYv5UEcZrbAtlsnPuChHUAsu/iBPOVaEVsntLBIdpibO0ddy8OzavZz3iL2xVvBZOpolujSliP65Kq0/7KIYw==", - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT", - "dependencies": { - "micromark-util-character": "^2.0.0", - "micromark-util-encode": "^2.0.0", - "micromark-util-symbol": "^2.0.0" - } - }, - "node_modules/micromark-util-subtokenize": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-subtokenize/-/micromark-util-subtokenize-2.0.1.tgz", - "integrity": "sha512-jZNtiFl/1aY73yS3UGQkutD0UbhTt68qnRpw2Pifmz5wV9h8gOVsN70v+Lq/f1rKaU/W8pxRe8y8Q9FX1AOe1Q==", - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT", - "dependencies": { - "devlop": "^1.0.0", - "micromark-util-chunked": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" - } - }, - "node_modules/micromark-util-symbol": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-2.0.0.tgz", - "integrity": "sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw==", - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT" - }, - "node_modules/micromark-util-types": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-2.0.0.tgz", - "integrity": "sha512-oNh6S2WMHWRZrmutsRmDDfkzKtxF+bc2VxLC9dvtrDIRFln627VsFP6fLMgTryGDljgLPjkrzQSDcPrjPyDJ5w==", - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT" - }, - "node_modules/micromatch": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", - "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", - "license": "MIT", - "dependencies": { - "braces": "^3.0.3", - "picomatch": "^2.3.1" - }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", - "license": "MIT", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "license": "MIT", - "dependencies": { - "mime-db": "1.52.0" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/mimic-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/min-indent": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", - "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "license": "ISC", - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/minimist": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", - "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", - "dev": true, - "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/minipass": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", - "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==", - "dev": true, - "license": "ISC", - "engines": { - "node": ">=16 || 14 >=14.17" - } - }, - "node_modules/mj-context-menu": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/mj-context-menu/-/mj-context-menu-0.6.1.tgz", - "integrity": "sha512-7NO5s6n10TIV96d4g2uDpG7ZDpIhMh0QNfGdJw/W47JswFcosz457wqz/b5sAKvl12sxINGFCn80NZHKwxQEXA==", - "license": "Apache-2.0" - }, - "node_modules/mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - "dev": true, - "license": "MIT", - "bin": { - "mkdirp": "bin/cmd.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/mlly": { - "version": "1.7.2", - "resolved": "https://registry.npmjs.org/mlly/-/mlly-1.7.2.tgz", - "integrity": "sha512-tN3dvVHYVz4DhSXinXIk7u9syPYaJvio118uomkovAtWBT+RdbP6Lfh/5Lvo519YMmwBafwlh20IPTXIStscpA==", - "license": "MIT", - "dependencies": { - "acorn": "^8.12.1", - "pathe": "^1.1.2", - "pkg-types": "^1.2.0", - "ufo": "^1.5.4" - } - }, - "node_modules/module-details-from-path": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/module-details-from-path/-/module-details-from-path-1.0.3.tgz", - "integrity": "sha512-ySViT69/76t8VhE1xXHK6Ch4NcDd26gx0MzKXLO+F7NOtnqH68d9zF94nT8ZWSxXh8ELOERsnJO/sWt1xZYw5A==", - "dev": true, - "license": "MIT" - }, - "node_modules/mri": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/mri/-/mri-1.2.0.tgz", - "integrity": "sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==", - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", - "license": "MIT" - }, - "node_modules/mute-stream": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", - "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", - "dev": true, - "license": "ISC" - }, - "node_modules/mz": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz", - "integrity": "sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==", - "dev": true, - "license": "MIT", - "dependencies": { - "any-promise": "^1.0.0", - "object-assign": "^4.0.1", - "thenify-all": "^1.0.0" - } - }, - "node_modules/nanoid": { - "version": "3.3.7", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz", - "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "license": "MIT", - "bin": { - "nanoid": "bin/nanoid.cjs" - }, - "engines": { - "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" - } - }, - "node_modules/natural-compare": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", - "dev": true, - "license": "MIT" - }, - "node_modules/needle": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/needle/-/needle-2.4.0.tgz", - "integrity": "sha512-4Hnwzr3mi5L97hMYeNl8wRW/Onhy4nUKR/lVemJ8gJedxxUyBLm9kkrDColJvoSfwi0jCNhD+xCdOtiGDQiRZg==", - "dev": true, - "license": "MIT", - "dependencies": { - "debug": "^3.2.6", - "iconv-lite": "^0.4.4", - "sax": "^1.2.4" - }, - "bin": { - "needle": "bin/needle" - }, - "engines": { - "node": ">= 4.4.x" - } - }, - "node_modules/needle/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "ms": "^2.1.1" - } - }, - "node_modules/negotiator": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", - "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/netmask": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/netmask/-/netmask-2.0.2.tgz", - "integrity": "sha512-dBpDMdxv9Irdq66304OLfEmQ9tbNRFnFTuZiLo+bD+r332bBmMJ8GBLXklIXXgxd3+v9+KUnZaUR5PJMa75Gsg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4.0" - } - }, - "node_modules/next": { - "version": "14.2.15", - "resolved": "https://registry.npmjs.org/next/-/next-14.2.15.tgz", - "integrity": "sha512-h9ctmOokpoDphRvMGnwOJAedT6zKhwqyZML9mDtspgf4Rh3Pn7UTYKqePNoDvhsWBAO5GoPNYshnAUGIazVGmw==", - "license": "MIT", - "dependencies": { - "@next/env": "14.2.15", - "@swc/helpers": "0.5.5", - "busboy": "1.6.0", - "caniuse-lite": "^1.0.30001579", - "graceful-fs": "^4.2.11", - "postcss": "8.4.31", - "styled-jsx": "5.1.1" - }, - "bin": { - "next": "dist/bin/next" - }, - "engines": { - "node": ">=18.17.0" - }, - "optionalDependencies": { - "@next/swc-darwin-arm64": "14.2.15", - "@next/swc-darwin-x64": "14.2.15", - "@next/swc-linux-arm64-gnu": "14.2.15", - "@next/swc-linux-arm64-musl": "14.2.15", - "@next/swc-linux-x64-gnu": "14.2.15", - "@next/swc-linux-x64-musl": "14.2.15", - "@next/swc-win32-arm64-msvc": "14.2.15", - "@next/swc-win32-ia32-msvc": "14.2.15", - "@next/swc-win32-x64-msvc": "14.2.15" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.1.0", - "@playwright/test": "^1.41.2", - "react": "^18.2.0", - "react-dom": "^18.2.0", - "sass": "^1.3.0" - }, - "peerDependenciesMeta": { - "@opentelemetry/api": { - "optional": true - }, - "@playwright/test": { - "optional": true - }, - "sass": { - "optional": true - } - } - }, - "node_modules/next-themes": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/next-themes/-/next-themes-0.4.3.tgz", - "integrity": "sha512-nG84VPkTdUHR2YeD89YchvV4I9RbiMAql3GiLEQlPvq1ioaqPaIReK+yMRdg/zgiXws620qS1rU30TiWmmG9lA==", - "peerDependencies": { - "react": "^16.8 || ^17 || ^18 || ^19 || ^19.0.0-rc", - "react-dom": "^16.8 || ^17 || ^18 || ^19 || ^19.0.0-rc" - } - }, - "node_modules/nextra": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/nextra/-/nextra-3.2.4.tgz", - "integrity": "sha512-xvQuPVtRoJTz4ynIbEkxYkEtviIX699lt4coij2IMmafYrBNaD0Ofj93jIz7VngYxyT9f4gWSiwqNgoIlnbsjQ==", - "dependencies": { - "@formatjs/intl-localematcher": "^0.5.4", - "@headlessui/react": "^2.1.2", - "@mdx-js/mdx": "^3.0.0", - "@mdx-js/react": "^3.0.0", - "@napi-rs/simple-git": "^0.1.9", - "@shikijs/twoslash": "^1.0.0", - "@theguild/remark-mermaid": "^0.1.3", - "@theguild/remark-npm2yarn": "^0.3.2", - "better-react-mathjax": "^2.0.3", - "clsx": "^2.0.0", - "estree-util-to-js": "^2.0.0", - "estree-util-value-to-estree": "^3.0.1", - "github-slugger": "^2.0.0", - "graceful-fs": "^4.2.11", - "gray-matter": "^4.0.3", - "hast-util-to-estree": "^3.1.0", - "katex": "^0.16.9", - "mdast-util-from-markdown": "^2.0.1", - "mdast-util-gfm": "^3.0.0", - "mdast-util-to-hast": "^13.2.0", - "negotiator": "^1.0.0", - "p-limit": "^6.0.0", - "rehype-katex": "^7.0.0", - "rehype-pretty-code": "0.14.0", - "rehype-raw": "^7.0.0", - "remark-frontmatter": "^5.0.0", - "remark-gfm": "^4.0.0", - "remark-math": "^6.0.0", - "remark-reading-time": "^2.0.1", - "remark-smartypants": "^3.0.0", - "shiki": "^1.0.0", - "slash": "^5.1.0", - "title": "^4.0.0", - "unist-util-remove": "^4.0.0", - "unist-util-visit": "^5.0.0", - "yaml": "^2.3.2", - "zod": "^3.22.3", - "zod-validation-error": "^3.0.0" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "next": ">=13", - "react": ">=18", - "react-dom": ">=18" - } - }, - "node_modules/nextra-theme-docs": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/nextra-theme-docs/-/nextra-theme-docs-3.2.4.tgz", - "integrity": "sha512-3fg7zMHInuvSDURRJjh6UrbdqkK8uLs8RNriY38kVukWLvaVP2f6mmVJKIYqxVv6qAKWEzDLTr4dlJCY81eXuQ==", - "dependencies": { - "@headlessui/react": "^2.1.2", - "clsx": "^2.0.0", - "escape-string-regexp": "^5.0.0", - "flexsearch": "^0.7.43", - "next-themes": "^0.4.0", - "scroll-into-view-if-needed": "^3.1.0", - "zod": "^3.22.3" - }, - "peerDependencies": { - "next": ">=13", - "nextra": "3.2.4", - "react": ">=18", - "react-dom": ">=18" - } - }, - "node_modules/nextra-theme-docs/node_modules/escape-string-regexp": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", - "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/nextra/node_modules/negotiator": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-1.0.0.tgz", - "integrity": "sha512-8Ofs/AUQh8MaEcrlq5xOX0CQ9ypTF5dl78mjlMNfOK08fzpgTHQRQPBxcPlEtIw0yRpws+Zo/3r+5WRby7u3Gg==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/nextra/node_modules/p-limit": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-6.1.0.tgz", - "integrity": "sha512-H0jc0q1vOzlEk0TqAKXKZxdl7kX3OFUzCnNVUnq5Pc3DGo0kpeaMuPqxQn235HibwBEb0/pm9dgKTjXy66fBkg==", - "license": "MIT", - "dependencies": { - "yocto-queue": "^1.1.1" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/nextra/node_modules/slash": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-5.1.0.tgz", - "integrity": "sha512-ZA6oR3T/pEyuqwMgAKT0/hAv8oAXckzbkmR0UkUosQ+Mc4RxGoJkRmwHgHufaenlyAgE1Mxgpdcrf75y6XcnDg==", - "license": "MIT", - "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/nextra/node_modules/yocto-queue": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.1.1.tgz", - "integrity": "sha512-b4JR1PFR10y1mKjhHY9LaGo6tmrgjit7hxVIeAmyMw3jegXR4dhYqLaQF5zMXZxY7tLpMyJeLjr1C4rLmkVe8g==", - "license": "MIT", - "engines": { - "node": ">=12.20" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/nlcst-to-string": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/nlcst-to-string/-/nlcst-to-string-4.0.0.tgz", - "integrity": "sha512-YKLBCcUYKAg0FNlOBT6aI91qFmSiFKiluk655WzPF+DDMA02qIyy8uiRqI8QXtcFpEvll12LpL5MXqEmAZ+dcA==", - "license": "MIT", - "dependencies": { - "@types/nlcst": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/node-releases": { - "version": "2.0.18", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.18.tgz", - "integrity": "sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==", - "dev": true, - "license": "MIT" - }, - "node_modules/normalize-package-data": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", - "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" - } - }, - "node_modules/normalize-package-data/node_modules/semver": { - "version": "5.7.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", - "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", - "dev": true, - "license": "ISC", - "bin": { - "semver": "bin/semver" - } - }, - "node_modules/normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/npm-run-path": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.3.0.tgz", - "integrity": "sha512-ppwTtiJZq0O/ai0z7yfudtBpWIoxM8yE6nHi1X47eFR2EWORqfbu6CnPlNsjeN683eT0qG6H/Pyf9fCcvjnnnQ==", - "dependencies": { - "path-key": "^4.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/npm-run-path/node_modules/path-key": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz", - "integrity": "sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/npm-to-yarn": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/npm-to-yarn/-/npm-to-yarn-3.0.0.tgz", - "integrity": "sha512-76YnmsbfrYp0tMsWxM0RNX0Vs+x8JxpJGu6B/jDn4lW8+laiTcKmKi9MeMh4UikO4RkJ1oqURoDy9bXJmMXS6A==", - "license": "MIT", - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/nebrelbug/npm-to-yarn?sponsor=1" - } - }, - "node_modules/nssocket": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/nssocket/-/nssocket-0.6.0.tgz", - "integrity": "sha512-a9GSOIql5IqgWJR3F/JXG4KpJTA3Z53Cj0MeMvGpglytB1nxE4PdFNC0jINe27CS7cGivoynwc054EzCcT3M3w==", - "dev": true, - "license": "MIT", - "dependencies": { - "eventemitter2": "~0.4.14", - "lazy": "~1.0.11" - }, - "engines": { - "node": ">= 0.10.x" - } - }, - "node_modules/nssocket/node_modules/eventemitter2": { - "version": "0.4.14", - "resolved": "https://registry.npmjs.org/eventemitter2/-/eventemitter2-0.4.14.tgz", - "integrity": "sha512-K7J4xq5xAD5jHsGM5ReWXRTFa3JRGofHiMcVgQ8PRwgWxzjHpMWCIzsmyf60+mh8KLsqYPcjUMa0AC4hd6lPyQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object-inspect": { - "version": "1.13.2", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.2.tgz", - "integrity": "sha512-IRZSRuzJiynemAXPYtPe5BoI/RESNYR7TYm50MC5Mqbd3Jmw5y790sErYw3V6SryFJD64b74qQQs9wn5Bg/k3g==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object-is": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.6.tgz", - "integrity": "sha512-F8cZ+KfGlSGi09lJT7/Nd6KJZ9ygtvYC0/UYYLI9nmQKLMnydpB9yvbv9K1uSkEu7FU9vYPmVwLg328tX+ot3Q==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/object.assign": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.5.tgz", - "integrity": "sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.5", - "define-properties": "^1.2.1", - "has-symbols": "^1.0.3", - "object-keys": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object.entries": { - "version": "1.1.8", - "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.8.tgz", - "integrity": "sha512-cmopxi8VwRIAw/fkijJohSfpef5PdN0pMQJN6VC/ZKvn0LIknWD8KtgY6KlQdEc4tIjcQ3HxSMmnvtzIscdaYQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-object-atoms": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/object.fromentries": { - "version": "2.0.8", - "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.8.tgz", - "integrity": "sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.2", - "es-object-atoms": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object.groupby": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/object.groupby/-/object.groupby-1.0.3.tgz", - "integrity": "sha512-+Lhy3TQTuzXI5hevh8sBGqbmurHbbIjAi0Z4S63nthVLmLxfbj4T54a4CfZrXIrt9iP4mVAPYMo/v99taj3wjQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/object.values": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.2.0.tgz", - "integrity": "sha512-yBYjY9QX2hnRmZHAjG/f13MzmBzxzYgQhFrke06TTyKY5zSTEqkOeukBzIdVA3j3ulu8Qa3MbVFShV7T2RmGtQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-object-atoms": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/on-exit-leak-free": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/on-exit-leak-free/-/on-exit-leak-free-2.1.2.tgz", - "integrity": "sha512-0eJJY6hXLGf1udHwfNftBqH+g73EU4B504nZeKpz1sYRKafAghwxEJunB2O7rDZkL4PGfsMVnTXZ2EjibbqcsA==", - "license": "MIT", - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/on-headers": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", - "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", - "dev": true, - "license": "ISC", - "dependencies": { - "wrappy": "1" - } - }, - "node_modules/onetime": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", - "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", - "dev": true, - "license": "MIT", - "dependencies": { - "mimic-fn": "^2.1.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/oniguruma-to-js": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/oniguruma-to-js/-/oniguruma-to-js-0.4.3.tgz", - "integrity": "sha512-X0jWUcAlxORhOqqBREgPMgnshB7ZGYszBNspP+tS9hPD3l13CdaXcHbgImoHUHlrvGx/7AvFEkTRhAGYh+jzjQ==", - "license": "MIT", - "dependencies": { - "regex": "^4.3.2" - }, - "funding": { - "url": "https://github.com/sponsors/antfu" - } - }, - "node_modules/optionator": { - "version": "0.9.4", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz", - "integrity": "sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==", - "dev": true, - "license": "MIT", - "dependencies": { - "deep-is": "^0.1.3", - "fast-levenshtein": "^2.0.6", - "levn": "^0.4.1", - "prelude-ls": "^1.2.1", - "type-check": "^0.4.0", - "word-wrap": "^1.2.5" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/os-tmpdir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/outdent": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/outdent/-/outdent-0.5.0.tgz", - "integrity": "sha512-/jHxFIzoMXdqPzTaCpFzAAWhpkSjZPF4Vsn6jAfNpmbH/ymsmd7Qc6VE9BGn0L6YMj6uwpQLxCECpus4ukKS9Q==" - }, - "node_modules/p-filter": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/p-filter/-/p-filter-2.1.0.tgz", - "integrity": "sha512-ZBxxZ5sL2HghephhpGAQdoskxplTwr7ICaehZwLIlfL6acuVgZPm8yBNuRAFBGEqtD/hmUeq9eqLg2ys9Xr/yw==", - "dependencies": { - "p-map": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "license": "MIT", - "dependencies": { - "p-try": "^2.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "license": "MIT", - "dependencies": { - "p-limit": "^2.2.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/p-map": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-2.1.0.tgz", - "integrity": "sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==", - "engines": { - "node": ">=6" - } - }, - "node_modules/p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/pac-proxy-agent": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/pac-proxy-agent/-/pac-proxy-agent-7.0.2.tgz", - "integrity": "sha512-BFi3vZnO9X5Qt6NRz7ZOaPja3ic0PhlsmCRYLOpN11+mWBCR6XJDqW5RF3j8jm4WGGQZtBA+bTfxYzeKW73eHg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@tootallnate/quickjs-emscripten": "^0.23.0", - "agent-base": "^7.0.2", - "debug": "^4.3.4", - "get-uri": "^6.0.1", - "http-proxy-agent": "^7.0.0", - "https-proxy-agent": "^7.0.5", - "pac-resolver": "^7.0.1", - "socks-proxy-agent": "^8.0.4" - }, - "engines": { - "node": ">= 14" - } - }, - "node_modules/pac-resolver": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/pac-resolver/-/pac-resolver-7.0.1.tgz", - "integrity": "sha512-5NPgf87AT2STgwa2ntRMr45jTKrYBGkVU36yT0ig/n/GMAa3oPqhZfIQ2kMEimReg0+t9kZViDVZ83qfVUlckg==", - "dev": true, - "license": "MIT", - "dependencies": { - "degenerator": "^5.0.0", - "netmask": "^2.0.2" - }, - "engines": { - "node": ">= 14" - } - }, - "node_modules/package-json-from-dist": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz", - "integrity": "sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==", - "dev": true, - "license": "BlueOak-1.0.0" - }, - "node_modules/package-manager-detector": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/package-manager-detector/-/package-manager-detector-0.2.2.tgz", - "integrity": "sha512-VgXbyrSNsml4eHWIvxxG/nTL4wgybMTXCV2Un/+yEc3aDKKU6nQBZjbeP3Pl3qm9Qg92X/1ng4ffvCeD/zwHgg==", - "license": "MIT" - }, - "node_modules/pako": { - "version": "0.2.9", - "resolved": "https://registry.npmjs.org/pako/-/pako-0.2.9.tgz", - "integrity": "sha512-NUcwaKxUxWrZLpDG+z/xZaCgQITkA/Dv4V/T6bw7VON6l1Xz/VnrBqrYjZQ12TamKHzITTfOEIYUj48y2KXImA==", - "dev": true, - "license": "MIT" - }, - "node_modules/parent-module": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", - "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", - "dev": true, - "license": "MIT", - "dependencies": { - "callsites": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/parse-entities": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/parse-entities/-/parse-entities-4.0.1.tgz", - "integrity": "sha512-SWzvYcSJh4d/SGLIOQfZ/CoNv6BTlI6YEQ7Nj82oDVnRpwe/Z/F1EMx42x3JAOwGBlCjeCH0BRJQbQ/opHL17w==", - "license": "MIT", - "dependencies": { - "@types/unist": "^2.0.0", - "character-entities": "^2.0.0", - "character-entities-legacy": "^3.0.0", - "character-reference-invalid": "^2.0.0", - "decode-named-character-reference": "^1.0.0", - "is-alphanumerical": "^2.0.0", - "is-decimal": "^2.0.0", - "is-hexadecimal": "^2.0.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/parse-entities/node_modules/@types/unist": { - "version": "2.0.11", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.11.tgz", - "integrity": "sha512-CmBKiL6NNo/OqgmMn95Fk9Whlp2mtvIv+KNpQKN2F4SjvrEesubTRWGYSg+BnWZOnlCaSTU1sMpsBOzgbYhnsA==", - "license": "MIT" - }, - "node_modules/parse-json": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", - "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/code-frame": "^7.0.0", - "error-ex": "^1.3.1", - "json-parse-even-better-errors": "^2.3.0", - "lines-and-columns": "^1.1.6" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/parse-latin": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/parse-latin/-/parse-latin-7.0.0.tgz", - "integrity": "sha512-mhHgobPPua5kZ98EF4HWiH167JWBfl4pvAIXXdbaVohtK7a6YBOy56kvhCqduqyo/f3yrHFWmqmiMg/BkBkYYQ==", - "license": "MIT", - "dependencies": { - "@types/nlcst": "^2.0.0", - "@types/unist": "^3.0.0", - "nlcst-to-string": "^4.0.0", - "unist-util-modify-children": "^4.0.0", - "unist-util-visit-children": "^3.0.0", - "vfile": "^6.0.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/parse-numeric-range": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/parse-numeric-range/-/parse-numeric-range-1.3.0.tgz", - "integrity": "sha512-twN+njEipszzlMJd4ONUYgSfZPDxgHhT9Ahed5uTigpQn90FggW4SA/AIPq/6a149fTbE9qBEcSwE3FAEp6wQQ==", - "license": "ISC" - }, - "node_modules/parse5": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.2.0.tgz", - "integrity": "sha512-ZkDsAOcxsUMZ4Lz5fVciOehNcJ+Gb8gTzcA4yl3wnc273BAybYWrQ+Ks/OjCjSEpjvQkDSeZbybK9qj2VHHdGA==", - "license": "MIT", - "dependencies": { - "entities": "^4.5.0" - }, - "funding": { - "url": "https://github.com/inikulin/parse5?sponsor=1" - } - }, - "node_modules/path-data-parser": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/path-data-parser/-/path-data-parser-0.1.0.tgz", - "integrity": "sha512-NOnmBpt5Y2RWbuv0LMzsayp3lVylAHLPUTut412ZA3l+C4uw4ZVkQbjShYCQ8TCpUMdPapr4YjUqLYD6v68j+w==", - "license": "MIT" - }, - "node_modules/path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/path-is-inside": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", - "integrity": "sha512-DUWJr3+ULp4zXmol/SZkFf3JGsS9/SIv+Y3Rt93/UjPpDpklB5f1er4O3POIbUuUJ3FXgqte2Q7SrU6zAqwk8w==", - "dev": true, - "license": "(WTFPL OR MIT)" - }, - "node_modules/path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true, - "license": "MIT" - }, - "node_modules/path-scurry": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-2.0.0.tgz", - "integrity": "sha512-ypGJsmGtdXUOeM5u93TyeIEfEhM6s+ljAhrk5vAvSx8uyY/02OvrZnA0YNGUrPXfpJMgI1ODd3nwz8Npx4O4cg==", - "dev": true, - "license": "BlueOak-1.0.0", - "dependencies": { - "lru-cache": "^11.0.0", - "minipass": "^7.1.2" - }, - "engines": { - "node": "20 || >=22" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/path-scurry/node_modules/lru-cache": { - "version": "11.0.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.0.1.tgz", - "integrity": "sha512-CgeuL5uom6j/ZVrg7G/+1IXqRY8JXX4Hghfy5YE0EhoYQWvndP1kufu58cmZLNIDKnRhZrXfdS9urVWx98AipQ==", - "dev": true, - "license": "ISC", - "engines": { - "node": "20 || >=22" - } - }, - "node_modules/path-to-regexp": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-3.3.0.tgz", - "integrity": "sha512-qyCH421YQPS2WFDxDjftfc1ZR5WKQzVzqsp4n9M2kQhVOo/ByahFoUNJfl58kOcEGfQ//7weFTDhm+ss8Ecxgw==", - "dev": true, - "license": "MIT" - }, - "node_modules/path-type": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", - "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/pathe": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.2.tgz", - "integrity": "sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==", - "license": "MIT" - }, - "node_modules/periscopic": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/periscopic/-/periscopic-3.1.0.tgz", - "integrity": "sha512-vKiQ8RRtkl9P+r/+oefh25C3fhybptkHKCZSPlcXiJux2tJF55GnEj3BVn4A5gKfq9NWWXXrxkHBwVPUfH0opw==", - "license": "MIT", - "dependencies": { - "@types/estree": "^1.0.0", - "estree-walker": "^3.0.0", - "is-reference": "^3.0.0" - } - }, - "node_modules/picocolors": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", - "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", - "license": "ISC" - }, - "node_modules/picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "license": "MIT", - "engines": { - "node": ">=8.6" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, - "node_modules/pidusage": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/pidusage/-/pidusage-3.0.2.tgz", - "integrity": "sha512-g0VU+y08pKw5M8EZ2rIGiEBaB8wrQMjYGFfW2QVIfyT8V+fq8YFLkvlz4bz5ljvFDJYNFCWT3PWqcRr2FKO81w==", - "dev": true, - "license": "MIT", - "dependencies": { - "safe-buffer": "^5.2.1" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "engines": { - "node": ">=6" - } - }, - "node_modules/pino": { - "version": "9.5.0", - "resolved": "https://registry.npmjs.org/pino/-/pino-9.5.0.tgz", - "integrity": "sha512-xSEmD4pLnV54t0NOUN16yCl7RIB1c5UUOse5HSyEXtBp+FgFQyPeDutc+Q2ZO7/22vImV7VfEjH/1zV2QuqvYw==", - "license": "MIT", - "dependencies": { - "atomic-sleep": "^1.0.0", - "fast-redact": "^3.1.1", - "on-exit-leak-free": "^2.1.0", - "pino-abstract-transport": "^2.0.0", - "pino-std-serializers": "^7.0.0", - "process-warning": "^4.0.0", - "quick-format-unescaped": "^4.0.3", - "real-require": "^0.2.0", - "safe-stable-stringify": "^2.3.1", - "sonic-boom": "^4.0.1", - "thread-stream": "^3.0.0" - }, - "bin": { - "pino": "bin.js" - } - }, - "node_modules/pino-abstract-transport": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/pino-abstract-transport/-/pino-abstract-transport-2.0.0.tgz", - "integrity": "sha512-F63x5tizV6WCh4R6RHyi2Ml+M70DNRXt/+HANowMflpgGFMAym/VKm6G7ZOQRjqN7XbGxK1Lg9t6ZrtzOaivMw==", - "license": "MIT", - "dependencies": { - "split2": "^4.0.0" - } - }, - "node_modules/pino-pretty": { - "version": "13.0.0", - "resolved": "https://registry.npmjs.org/pino-pretty/-/pino-pretty-13.0.0.tgz", - "integrity": "sha512-cQBBIVG3YajgoUjo1FdKVRX6t9XPxwB9lcNJVD5GCnNM4Y6T12YYx8c6zEejxQsU0wrg9TwmDulcE9LR7qcJqA==", - "dev": true, - "dependencies": { - "colorette": "^2.0.7", - "dateformat": "^4.6.3", - "fast-copy": "^3.0.2", - "fast-safe-stringify": "^2.1.1", - "help-me": "^5.0.0", - "joycon": "^3.1.1", - "minimist": "^1.2.6", - "on-exit-leak-free": "^2.1.0", - "pino-abstract-transport": "^2.0.0", - "pump": "^3.0.0", - "secure-json-parse": "^2.4.0", - "sonic-boom": "^4.0.1", - "strip-json-comments": "^3.1.1" - }, - "bin": { - "pino-pretty": "bin.js" - } - }, - "node_modules/pino-std-serializers": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/pino-std-serializers/-/pino-std-serializers-7.0.0.tgz", - "integrity": "sha512-e906FRY0+tV27iq4juKzSYPbUj2do2X2JX4EzSca1631EB2QJQUqGbDuERal7LCtOpxl6x3+nvo9NPZcmjkiFA==", - "license": "MIT" - }, - "node_modules/pirates": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz", - "integrity": "sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 6" - } - }, - "node_modules/pkg-types": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/pkg-types/-/pkg-types-1.2.1.tgz", - "integrity": "sha512-sQoqa8alT3nHjGuTjuKgOnvjo4cljkufdtLMnO2LBP/wRwuDlo1tkaEdMxCRhyGRPacv/ztlZgDPm2b7FAmEvw==", - "license": "MIT", - "dependencies": { - "confbox": "^0.1.8", - "mlly": "^1.7.2", - "pathe": "^1.1.2" - } - }, - "node_modules/playwright": { - "version": "1.49.0", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.49.0.tgz", - "integrity": "sha512-eKpmys0UFDnfNb3vfsf8Vx2LEOtflgRebl0Im2eQQnYMA4Aqd+Zw8bEOB+7ZKvN76901mRnqdsiOGKxzVTbi7A==", - "devOptional": true, - "dependencies": { - "playwright-core": "1.49.0" - }, - "bin": { - "playwright": "cli.js" - }, - "engines": { - "node": ">=18" - }, - "optionalDependencies": { - "fsevents": "2.3.2" - } - }, - "node_modules/playwright-core": { - "version": "1.49.0", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.49.0.tgz", - "integrity": "sha512-R+3KKTQF3npy5GTiKH/T+kdhoJfJojjHESR1YEWhYuEKRVfVaxH3+4+GvXE5xyCngCxhxnykk0Vlah9v8fs3jA==", - "devOptional": true, - "bin": { - "playwright-core": "cli.js" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/pluralize": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-8.0.0.tgz", - "integrity": "sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/pm2": { - "version": "5.4.3", - "resolved": "https://registry.npmjs.org/pm2/-/pm2-5.4.3.tgz", - "integrity": "sha512-4/I1htIHzZk1Y67UgOCo4F1cJtas1kSds31N8zN0PybO230id1nigyjGuGFzUnGmUFPmrJ0On22fO1ChFlp7VQ==", - "dev": true, - "dependencies": { - "@pm2/agent": "~2.0.0", - "@pm2/io": "~6.0.1", - "@pm2/js-api": "~0.8.0", - "@pm2/pm2-version-check": "latest", - "async": "~3.2.0", - "blessed": "0.1.81", - "chalk": "3.0.0", - "chokidar": "^3.5.3", - "cli-tableau": "^2.0.0", - "commander": "2.15.1", - "croner": "~4.1.92", - "dayjs": "~1.11.5", - "debug": "^4.3.1", - "enquirer": "2.3.6", - "eventemitter2": "5.0.1", - "fclone": "1.0.11", - "js-yaml": "~4.1.0", - "mkdirp": "1.0.4", - "needle": "2.4.0", - "pidusage": "~3.0", - "pm2-axon": "~4.0.1", - "pm2-axon-rpc": "~0.7.1", - "pm2-deploy": "~1.0.2", - "pm2-multimeter": "^0.1.2", - "promptly": "^2", - "semver": "^7.2", - "source-map-support": "0.5.21", - "sprintf-js": "1.1.2", - "vizion": "~2.2.1" - }, - "bin": { - "pm2": "bin/pm2", - "pm2-dev": "bin/pm2-dev", - "pm2-docker": "bin/pm2-docker", - "pm2-runtime": "bin/pm2-runtime" - }, - "engines": { - "node": ">=12.0.0" - }, - "optionalDependencies": { - "pm2-sysmonit": "^1.2.8" - } - }, - "node_modules/pm2-axon": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pm2-axon/-/pm2-axon-4.0.1.tgz", - "integrity": "sha512-kES/PeSLS8orT8dR5jMlNl+Yu4Ty3nbvZRmaAtROuVm9nYYGiaoXqqKQqQYzWQzMYWUKHMQTvBlirjE5GIIxqg==", - "dev": true, - "license": "MIT", - "dependencies": { - "amp": "~0.3.1", - "amp-message": "~0.1.1", - "debug": "^4.3.1", - "escape-string-regexp": "^4.0.0" - }, - "engines": { - "node": ">=5" - } - }, - "node_modules/pm2-axon-rpc": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/pm2-axon-rpc/-/pm2-axon-rpc-0.7.1.tgz", - "integrity": "sha512-FbLvW60w+vEyvMjP/xom2UPhUN/2bVpdtLfKJeYM3gwzYhoTEEChCOICfFzxkxuoEleOlnpjie+n1nue91bDQw==", - "dev": true, - "license": "MIT", - "dependencies": { - "debug": "^4.3.1" - }, - "engines": { - "node": ">=5" - } - }, - "node_modules/pm2-deploy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/pm2-deploy/-/pm2-deploy-1.0.2.tgz", - "integrity": "sha512-YJx6RXKrVrWaphEYf++EdOOx9EH18vM8RSZN/P1Y+NokTKqYAca/ejXwVLyiEpNju4HPZEk3Y2uZouwMqUlcgg==", - "dev": true, - "license": "MIT", - "dependencies": { - "run-series": "^1.1.8", - "tv4": "^1.3.0" - }, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/pm2-multimeter": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/pm2-multimeter/-/pm2-multimeter-0.1.2.tgz", - "integrity": "sha512-S+wT6XfyKfd7SJIBqRgOctGxaBzUOmVQzTAS+cg04TsEUObJVreha7lvCfX8zzGVr871XwCSnHUU7DQQ5xEsfA==", - "dev": true, - "license": "MIT/X11", - "dependencies": { - "charm": "~0.1.1" - } - }, - "node_modules/pm2-sysmonit": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/pm2-sysmonit/-/pm2-sysmonit-1.2.8.tgz", - "integrity": "sha512-ACOhlONEXdCTVwKieBIQLSi2tQZ8eKinhcr9JpZSUAL8Qy0ajIgRtsLxG/lwPOW3JEKqPyw/UaHmTWhUzpP4kA==", - "dev": true, - "license": "Apache", - "optional": true, - "dependencies": { - "async": "^3.2.0", - "debug": "^4.3.1", - "pidusage": "^2.0.21", - "systeminformation": "^5.7", - "tx2": "~1.0.4" - } - }, - "node_modules/pm2-sysmonit/node_modules/pidusage": { - "version": "2.0.21", - "resolved": "https://registry.npmjs.org/pidusage/-/pidusage-2.0.21.tgz", - "integrity": "sha512-cv3xAQos+pugVX+BfXpHsbyz/dLzX+lr44zNMsYiGxUw+kV5sgQCIcLd1z+0vq+KyC7dJ+/ts2PsfgWfSC3WXA==", - "dev": true, - "license": "MIT", - "optional": true, - "dependencies": { - "safe-buffer": "^5.2.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/pm2/node_modules/argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", - "dev": true, - "license": "Python-2.0" - }, - "node_modules/pm2/node_modules/chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/pm2/node_modules/commander": { - "version": "2.15.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.15.1.tgz", - "integrity": "sha512-VlfT9F3V0v+jr4yxPc5gg9s62/fIVWsd2Bk2iD435um1NlGMYdVCq+MjcXnhYq2icNOizHr1kK+5TI6H0Hy0ag==", - "dev": true, - "license": "MIT" - }, - "node_modules/pm2/node_modules/enquirer": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz", - "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-colors": "^4.1.1" - }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/pm2/node_modules/js-yaml": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", - "dev": true, - "license": "MIT", - "dependencies": { - "argparse": "^2.0.1" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/pm2/node_modules/sprintf-js": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.2.tgz", - "integrity": "sha512-VE0SOVEHCk7Qc8ulkWw3ntAzXuqf7S2lvwQaDLRnUeIEaKNQJzV6BwmLKhOqT61aGhfUMrXeaBk+oDGCzvhcug==", - "dev": true, - "license": "BSD-3-Clause" - }, - "node_modules/points-on-curve": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/points-on-curve/-/points-on-curve-0.2.0.tgz", - "integrity": "sha512-0mYKnYYe9ZcqMCWhUjItv/oHjvgEsfKvnUTg8sAtnHr3GVy7rGkXCb6d5cSyqrWqL4k81b9CPg3urd+T7aop3A==", - "license": "MIT" - }, - "node_modules/points-on-path": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/points-on-path/-/points-on-path-0.2.1.tgz", - "integrity": "sha512-25ClnWWuw7JbWZcgqY/gJ4FQWadKxGWk+3kR/7kD0tCaDtPPMj7oHu2ToLaVhfpnHrZzYby2w6tUA0eOIuUg8g==", - "license": "MIT", - "dependencies": { - "path-data-parser": "0.1.0", - "points-on-curve": "0.2.0" - } - }, - "node_modules/possible-typed-array-names": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.0.0.tgz", - "integrity": "sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/postcss": { - "version": "8.4.31", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz", - "integrity": "sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==", - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/postcss" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "license": "MIT", - "dependencies": { - "nanoid": "^3.3.6", - "picocolors": "^1.0.0", - "source-map-js": "^1.0.2" - }, - "engines": { - "node": "^10 || ^12 || >=14" - } - }, - "node_modules/postcss-load-config": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-6.0.1.tgz", - "integrity": "sha512-oPtTM4oerL+UXmx+93ytZVN82RrlY/wPUV8IeDxFrzIjXOLF1pN+EmKPLbubvKHT2HC20xXsCAH2Z+CKV6Oz/g==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "license": "MIT", - "dependencies": { - "lilconfig": "^3.1.1" - }, - "engines": { - "node": ">= 18" - }, - "peerDependencies": { - "jiti": ">=1.21.0", - "postcss": ">=8.0.9", - "tsx": "^4.8.1", - "yaml": "^2.4.2" - }, - "peerDependenciesMeta": { - "jiti": { - "optional": true - }, - "postcss": { - "optional": true - }, - "tsx": { - "optional": true - }, - "yaml": { - "optional": true - } - } - }, - "node_modules/prelude-ls": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", - "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/prettier": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.4.1.tgz", - "integrity": "sha512-G+YdqtITVZmOJje6QkXQWzl3fSfMxFwm1tjTyo9exhkmWSqC4Yhd1+lug++IlR2mvRVAxEDDWYkQdeSztajqgg==", - "dev": true, - "bin": { - "prettier": "bin/prettier.cjs" - }, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/prettier/prettier?sponsor=1" - } - }, - "node_modules/prettier-plugin-packagejson": { - "version": "2.5.3", - "resolved": "https://registry.npmjs.org/prettier-plugin-packagejson/-/prettier-plugin-packagejson-2.5.3.tgz", - "integrity": "sha512-ATMEEXr+ywls1kgrZEWl4SBPEm0uDdyDAjyNzUC0/Z8WZTD3RqbJcQDR+Dau+wYkW9KHK6zqQIsFyfn+9aduWg==", - "dev": true, - "license": "MIT", - "dependencies": { - "sort-package-json": "2.10.1", - "synckit": "0.9.2" - }, - "peerDependencies": { - "prettier": ">= 1.16.0" - }, - "peerDependenciesMeta": { - "prettier": { - "optional": true - } - } - }, - "node_modules/process-warning": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/process-warning/-/process-warning-4.0.0.tgz", - "integrity": "sha512-/MyYDxttz7DfGMMHiysAsFE4qF+pQYAA8ziO/3NcRVrQ5fSk+Mns4QZA/oRPFzvcqNoVJXQNWNAsdwBXLUkQKw==", - "license": "MIT" - }, - "node_modules/promptly": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/promptly/-/promptly-2.2.0.tgz", - "integrity": "sha512-aC9j+BZsRSSzEsXBNBwDnAxujdx19HycZoKgRgzWnS8eOHg1asuf9heuLprfbe739zY3IdUQx+Egv6Jn135WHA==", - "dev": true, - "license": "MIT", - "dependencies": { - "read": "^1.0.4" - } - }, - "node_modules/prop-types": { - "version": "15.8.1", - "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", - "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", - "dev": true, - "license": "MIT", - "dependencies": { - "loose-envify": "^1.4.0", - "object-assign": "^4.1.1", - "react-is": "^16.13.1" - } - }, - "node_modules/property-information": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/property-information/-/property-information-6.5.0.tgz", - "integrity": "sha512-PgTgs/BlvHxOu8QuEN7wi5A0OmXaBcHpmCSTehcs6Uuu9IkDIEo13Hy7n898RHfrQ49vKCoGeWZSaAK01nwVig==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/proxy-addr": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", - "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", - "license": "MIT", - "dependencies": { - "forwarded": "0.2.0", - "ipaddr.js": "1.9.1" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/proxy-agent": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/proxy-agent/-/proxy-agent-6.3.1.tgz", - "integrity": "sha512-Rb5RVBy1iyqOtNl15Cw/llpeLH8bsb37gM1FUfKQ+Wck6xHlbAhWGUFiTRHtkjqGTA5pSHz6+0hrPW/oECihPQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "agent-base": "^7.0.2", - "debug": "^4.3.4", - "http-proxy-agent": "^7.0.0", - "https-proxy-agent": "^7.0.2", - "lru-cache": "^7.14.1", - "pac-proxy-agent": "^7.0.1", - "proxy-from-env": "^1.1.0", - "socks-proxy-agent": "^8.0.2" - }, - "engines": { - "node": ">= 14" - } - }, - "node_modules/proxy-agent/node_modules/lru-cache": { - "version": "7.18.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", - "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", - "dev": true, - "license": "ISC", - "engines": { - "node": ">=12" - } - }, - "node_modules/proxy-from-env": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", - "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==", - "license": "MIT" - }, - "node_modules/pump": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.2.tgz", - "integrity": "sha512-tUPXtzlGM8FE3P0ZL6DVs/3P58k9nk8/jZeQCurTJylQA8qFYzHFfhBJkuqyE0FifOsQ0uKWekiZ5g8wtr28cw==", - "dev": true, - "license": "MIT", - "dependencies": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - }, - "node_modules/punycode": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", - "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/queue-microtask": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", - "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT" - }, - "node_modules/quick-format-unescaped": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/quick-format-unescaped/-/quick-format-unescaped-4.0.4.tgz", - "integrity": "sha512-tYC1Q1hgyRuHgloV/YXs2w15unPVh8qfu/qCTfhTYamaw7fyhumKa2yGpdSo87vY32rIclj+4fWYQXUMs9EHvg==", - "license": "MIT" - }, - "node_modules/range-parser": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz", - "integrity": "sha512-kA5WQoNVo4t9lNx2kQNFCxKeBl5IbbSNBl1M/tLkw9WCn+hxNBAW5Qh8gdhs63CJnhjJ2zQWFoqPJP2sK1AV5A==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/rc": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", - "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", - "dev": true, - "license": "(BSD-2-Clause OR MIT OR Apache-2.0)", - "dependencies": { - "deep-extend": "^0.6.0", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" - }, - "bin": { - "rc": "cli.js" - } - }, - "node_modules/rc/node_modules/strip-json-comments": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/react": { - "version": "18.3.1", - "resolved": "https://registry.npmjs.org/react/-/react-18.3.1.tgz", - "integrity": "sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==", - "license": "MIT", - "dependencies": { - "loose-envify": "^1.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/react-dom": { - "version": "18.3.1", - "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.3.1.tgz", - "integrity": "sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw==", - "license": "MIT", - "dependencies": { - "loose-envify": "^1.1.0", - "scheduler": "^0.23.2" - }, - "peerDependencies": { - "react": "^18.3.1" - } - }, - "node_modules/react-is": { - "version": "16.13.1", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", - "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/read": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/read/-/read-1.0.7.tgz", - "integrity": "sha512-rSOKNYUmaxy0om1BNjMN4ezNT6VKK+2xF4GBhc81mkH7L60i6dp8qPYrkndNLT3QPphoII3maL9PVC9XmhHwVQ==", - "dev": true, - "license": "ISC", - "dependencies": { - "mute-stream": "~0.0.4" - }, - "engines": { - "node": ">=0.8" - } - }, - "node_modules/read-pkg": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", - "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/normalize-package-data": "^2.4.0", - "normalize-package-data": "^2.5.0", - "parse-json": "^5.0.0", - "type-fest": "^0.6.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/read-pkg-up": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz", - "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==", - "dev": true, - "license": "MIT", - "dependencies": { - "find-up": "^4.1.0", - "read-pkg": "^5.2.0", - "type-fest": "^0.8.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/read-pkg-up/node_modules/type-fest": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", - "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", - "dev": true, - "license": "(MIT OR CC0-1.0)", - "engines": { - "node": ">=8" - } - }, - "node_modules/read-pkg/node_modules/type-fest": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", - "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==", - "dev": true, - "license": "(MIT OR CC0-1.0)", - "engines": { - "node": ">=8" - } - }, - "node_modules/read-yaml-file": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/read-yaml-file/-/read-yaml-file-1.1.0.tgz", - "integrity": "sha512-VIMnQi/Z4HT2Fxuwg5KrY174U1VdUIASQVWXXyqtNRtxSr9IYkn1rsI6Tb6HsrHCmB7gVpNwX6JxPTHcH6IoTA==", - "dependencies": { - "graceful-fs": "^4.1.5", - "js-yaml": "^3.6.1", - "pify": "^4.0.1", - "strip-bom": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", - "dev": true, - "license": "MIT", - "dependencies": { - "picomatch": "^2.2.1" - }, - "engines": { - "node": ">=8.10.0" - } - }, - "node_modules/reading-time": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/reading-time/-/reading-time-1.5.0.tgz", - "integrity": "sha512-onYyVhBNr4CmAxFsKS7bz+uTLRakypIe4R+5A824vBSkQy/hB3fZepoVEf8OVAxzLvK+H/jm9TzpI3ETSm64Kg==", - "license": "MIT" - }, - "node_modules/real-require": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/real-require/-/real-require-0.2.0.tgz", - "integrity": "sha512-57frrGM/OCTLqLOAh0mhVA9VBMHd+9U7Zb2THMGdBUoZVOtGbJzjxsYGDJ3A9AYYCP4hn6y1TVbaOfzWtm5GFg==", - "license": "MIT", - "engines": { - "node": ">= 12.13.0" - } - }, - "node_modules/redis": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/redis/-/redis-4.7.0.tgz", - "integrity": "sha512-zvmkHEAdGMn+hMRXuMBtu4Vo5P6rHQjLoHftu+lBqq8ZTA3RCVC/WzD790bkKKiNFp7d5/9PcSD19fJyyRvOdQ==", - "license": "MIT", - "workspaces": [ - "./packages/*" - ], - "dependencies": { - "@redis/bloom": "1.2.0", - "@redis/client": "1.6.0", - "@redis/graph": "1.1.1", - "@redis/json": "1.0.7", - "@redis/search": "1.2.0", - "@redis/time-series": "1.1.0" - } - }, - "node_modules/reflect.getprototypeof": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/reflect.getprototypeof/-/reflect.getprototypeof-1.0.6.tgz", - "integrity": "sha512-fmfw4XgoDke3kdI6h4xcUz1dG8uaiv5q9gcEwLS4Pnth2kxT+GZ7YehS1JTMGBQmtV7Y4GFGbs2re2NqhdozUg==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.1", - "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.4", - "globalthis": "^1.0.3", - "which-builtin-type": "^1.1.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/regenerator-runtime": { - "version": "0.14.1", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz", - "integrity": "sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==" - }, - "node_modules/regex": { - "version": "4.3.3", - "resolved": "https://registry.npmjs.org/regex/-/regex-4.3.3.tgz", - "integrity": "sha512-r/AadFO7owAq1QJVeZ/nq9jNS1vyZt+6t1p/E59B56Rn2GCya+gr1KSyOzNL/er+r+B7phv5jG2xU2Nz1YkmJg==", - "license": "MIT" - }, - "node_modules/regexp-tree": { - "version": "0.1.27", - "resolved": "https://registry.npmjs.org/regexp-tree/-/regexp-tree-0.1.27.tgz", - "integrity": "sha512-iETxpjK6YoRWJG5o6hXLwvjYAoW+FEZn9os0PD/b6AP6xQwsa/Y7lCVgIixBbUPMfhu+i2LtdeAqVTgGlQarfA==", - "dev": true, - "license": "MIT", - "bin": { - "regexp-tree": "bin/regexp-tree" - } - }, - "node_modules/regexp.prototype.flags": { - "version": "1.5.3", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.3.tgz", - "integrity": "sha512-vqlC04+RQoFalODCbCumG2xIOvapzVMHwsyIGM/SIE8fRhFFsXeH8/QQ+s0T0kDAhKc4k30s73/0ydkHQz6HlQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-errors": "^1.3.0", - "set-function-name": "^2.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/registry-auth-token": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-3.3.2.tgz", - "integrity": "sha512-JL39c60XlzCVgNrO+qq68FoNb56w/m7JYvGR2jT5iR1xBrUA3Mfx5Twk5rqTThPmQKMWydGmq8oFtDlxfrmxnQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "rc": "^1.1.6", - "safe-buffer": "^5.0.1" - } - }, - "node_modules/registry-url": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-3.1.0.tgz", - "integrity": "sha512-ZbgR5aZEdf4UKZVBPYIgaglBmSF2Hi94s2PcIHhRGFjKYu+chjJdYfHn4rt3hB6eCKLJ8giVIIfgMa1ehDfZKA==", - "dev": true, - "license": "MIT", - "dependencies": { - "rc": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/regjsparser": { - "version": "0.10.0", - "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.10.0.tgz", - "integrity": "sha512-qx+xQGZVsy55CH0a1hiVwHmqjLryfh7wQyF5HO07XJ9f7dQMY/gPQHhlyDkIzJKC+x2fUCpCcUODUUUFrm7SHA==", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "jsesc": "~0.5.0" - }, - "bin": { - "regjsparser": "bin/parser" - } - }, - "node_modules/regjsparser/node_modules/jsesc": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", - "integrity": "sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==", - "dev": true, - "bin": { - "jsesc": "bin/jsesc" - } - }, - "node_modules/rehype-katex": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/rehype-katex/-/rehype-katex-7.0.1.tgz", - "integrity": "sha512-OiM2wrZ/wuhKkigASodFoo8wimG3H12LWQaH8qSPVJn9apWKFSH3YOCtbKpBorTVw/eI7cuT21XBbvwEswbIOA==", - "license": "MIT", - "dependencies": { - "@types/hast": "^3.0.0", - "@types/katex": "^0.16.0", - "hast-util-from-html-isomorphic": "^2.0.0", - "hast-util-to-text": "^4.0.0", - "katex": "^0.16.0", - "unist-util-visit-parents": "^6.0.0", - "vfile": "^6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/rehype-parse": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/rehype-parse/-/rehype-parse-9.0.1.tgz", - "integrity": "sha512-ksCzCD0Fgfh7trPDxr2rSylbwq9iYDkSn8TCDmEJ49ljEUBxDVCzCHv7QNzZOfODanX4+bWQ4WZqLCRWYLfhag==", - "license": "MIT", - "dependencies": { - "@types/hast": "^3.0.0", - "hast-util-from-html": "^2.0.0", - "unified": "^11.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/rehype-pretty-code": { - "version": "0.14.0", - "resolved": "https://registry.npmjs.org/rehype-pretty-code/-/rehype-pretty-code-0.14.0.tgz", - "integrity": "sha512-hBeKF/Wkkf3zyUS8lal9RCUuhypDWLQc+h9UrP9Pav25FUm/AQAVh4m5gdvJxh4Oz+U+xKvdsV01p1LdvsZTiQ==", - "license": "MIT", - "dependencies": { - "@types/hast": "^3.0.4", - "hast-util-to-string": "^3.0.0", - "parse-numeric-range": "^1.3.0", - "rehype-parse": "^9.0.0", - "unified": "^11.0.5", - "unist-util-visit": "^5.0.0" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "shiki": "^1.3.0" - } - }, - "node_modules/rehype-raw": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/rehype-raw/-/rehype-raw-7.0.0.tgz", - "integrity": "sha512-/aE8hCfKlQeA8LmyeyQvQF3eBiLRGNlfBJEvWH7ivp9sBqs7TNqBL5X3v157rM4IFETqDnIOO+z5M/biZbo9Ww==", - "license": "MIT", - "dependencies": { - "@types/hast": "^3.0.0", - "hast-util-raw": "^9.0.0", - "vfile": "^6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/remark-frontmatter": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/remark-frontmatter/-/remark-frontmatter-5.0.0.tgz", - "integrity": "sha512-XTFYvNASMe5iPN0719nPrdItC9aU0ssC4v14mH1BCi1u0n1gAocqcujWUrByftZTbLhRtiKRyjYTSIOcr69UVQ==", - "license": "MIT", - "dependencies": { - "@types/mdast": "^4.0.0", - "mdast-util-frontmatter": "^2.0.0", - "micromark-extension-frontmatter": "^2.0.0", - "unified": "^11.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/remark-gfm": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/remark-gfm/-/remark-gfm-4.0.0.tgz", - "integrity": "sha512-U92vJgBPkbw4Zfu/IiW2oTZLSL3Zpv+uI7My2eq8JxKgqraFdU8YUGicEJCEgSbeaG+QDFqIcwwfMTOEelPxuA==", - "license": "MIT", - "dependencies": { - "@types/mdast": "^4.0.0", - "mdast-util-gfm": "^3.0.0", - "micromark-extension-gfm": "^3.0.0", - "remark-parse": "^11.0.0", - "remark-stringify": "^11.0.0", - "unified": "^11.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/remark-math": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/remark-math/-/remark-math-6.0.0.tgz", - "integrity": "sha512-MMqgnP74Igy+S3WwnhQ7kqGlEerTETXMvJhrUzDikVZ2/uogJCb+WHUg97hK9/jcfc0dkD73s3LN8zU49cTEtA==", - "license": "MIT", - "dependencies": { - "@types/mdast": "^4.0.0", - "mdast-util-math": "^3.0.0", - "micromark-extension-math": "^3.0.0", - "unified": "^11.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/remark-mdx": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/remark-mdx/-/remark-mdx-3.0.1.tgz", - "integrity": "sha512-3Pz3yPQ5Rht2pM5R+0J2MrGoBSrzf+tJG94N+t/ilfdh8YLyyKYtidAYwTveB20BoHAcwIopOUqhcmh2F7hGYA==", - "license": "MIT", - "dependencies": { - "mdast-util-mdx": "^3.0.0", - "micromark-extension-mdxjs": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/remark-parse": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-11.0.0.tgz", - "integrity": "sha512-FCxlKLNGknS5ba/1lmpYijMUzX2esxW5xQqjWxw2eHFfS2MSdaHVINFmhjo+qN1WhZhNimq0dZATN9pH0IDrpA==", - "license": "MIT", - "dependencies": { - "@types/mdast": "^4.0.0", - "mdast-util-from-markdown": "^2.0.0", - "micromark-util-types": "^2.0.0", - "unified": "^11.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/remark-reading-time": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/remark-reading-time/-/remark-reading-time-2.0.1.tgz", - "integrity": "sha512-fy4BKy9SRhtYbEHvp6AItbRTnrhiDGbqLQTSYVbQPGuRCncU1ubSsh9p/W5QZSxtYcUXv8KGL0xBgPLyNJA1xw==", - "license": "ISC", - "dependencies": { - "estree-util-is-identifier-name": "^2.0.0", - "estree-util-value-to-estree": "^1.3.0", - "reading-time": "^1.3.0", - "unist-util-visit": "^3.1.0" - } - }, - "node_modules/remark-reading-time/node_modules/@types/unist": { - "version": "2.0.11", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.11.tgz", - "integrity": "sha512-CmBKiL6NNo/OqgmMn95Fk9Whlp2mtvIv+KNpQKN2F4SjvrEesubTRWGYSg+BnWZOnlCaSTU1sMpsBOzgbYhnsA==", - "license": "MIT" - }, - "node_modules/remark-reading-time/node_modules/estree-util-is-identifier-name": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/estree-util-is-identifier-name/-/estree-util-is-identifier-name-2.1.0.tgz", - "integrity": "sha512-bEN9VHRyXAUOjkKVQVvArFym08BTWB0aJPppZZr0UNyAqWsLaVfAqP7hbaTJjzHifmB5ebnR8Wm7r7yGN/HonQ==", - "license": "MIT", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/remark-reading-time/node_modules/estree-util-value-to-estree": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/estree-util-value-to-estree/-/estree-util-value-to-estree-1.3.0.tgz", - "integrity": "sha512-Y+ughcF9jSUJvncXwqRageavjrNPAI+1M/L3BI3PyLp1nmgYTGUXU6t5z1Y7OWuThoDdhPME07bQU+d5LxdJqw==", - "license": "MIT", - "dependencies": { - "is-plain-obj": "^3.0.0" - }, - "engines": { - "node": ">=12.0.0" - } - }, - "node_modules/remark-reading-time/node_modules/is-plain-obj": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-3.0.0.tgz", - "integrity": "sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==", - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/remark-reading-time/node_modules/unist-util-is": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-5.2.1.tgz", - "integrity": "sha512-u9njyyfEh43npf1M+yGKDGVPbY/JWEemg5nH05ncKPfi+kBbKBJoTdsogMu33uhytuLlv9y0O7GH7fEdwLdLQw==", - "license": "MIT", - "dependencies": { - "@types/unist": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/remark-reading-time/node_modules/unist-util-visit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-3.1.0.tgz", - "integrity": "sha512-Szoh+R/Ll68QWAyQyZZpQzZQm2UPbxibDvaY8Xc9SUtYgPsDzx5AWSk++UUt2hJuow8mvwR+rG+LQLw+KsuAKA==", - "license": "MIT", - "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-is": "^5.0.0", - "unist-util-visit-parents": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/remark-reading-time/node_modules/unist-util-visit-parents": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-4.1.1.tgz", - "integrity": "sha512-1xAFJXAKpnnJl8G7K5KgU7FY55y3GcLIXqkzUj5QF/QVP7biUm0K0O2oqVkYsdjzJKifYeWn9+o6piAK2hGSHw==", - "license": "MIT", - "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-is": "^5.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/remark-rehype": { - "version": "11.1.1", - "resolved": "https://registry.npmjs.org/remark-rehype/-/remark-rehype-11.1.1.tgz", - "integrity": "sha512-g/osARvjkBXb6Wo0XvAeXQohVta8i84ACbenPpoSsxTOQH/Ae0/RGP4WZgnMH5pMLpsj4FG7OHmcIcXxpza8eQ==", - "license": "MIT", - "dependencies": { - "@types/hast": "^3.0.0", - "@types/mdast": "^4.0.0", - "mdast-util-to-hast": "^13.0.0", - "unified": "^11.0.0", - "vfile": "^6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/remark-smartypants": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/remark-smartypants/-/remark-smartypants-3.0.2.tgz", - "integrity": "sha512-ILTWeOriIluwEvPjv67v7Blgrcx+LZOkAUVtKI3putuhlZm84FnqDORNXPPm+HY3NdZOMhyDwZ1E+eZB/Df5dA==", - "license": "MIT", - "dependencies": { - "retext": "^9.0.0", - "retext-smartypants": "^6.0.0", - "unified": "^11.0.4", - "unist-util-visit": "^5.0.0" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/remark-stringify": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/remark-stringify/-/remark-stringify-11.0.0.tgz", - "integrity": "sha512-1OSmLd3awB/t8qdoEOMazZkNsfVTeY4fTsgzcQFdXNq8ToTN4ZGwrMnlda4K6smTFKD+GRV6O48i6Z4iKgPPpw==", - "license": "MIT", - "dependencies": { - "@types/mdast": "^4.0.0", - "mdast-util-to-markdown": "^2.0.0", - "unified": "^11.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/require-from-string": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", - "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/require-in-the-middle": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/require-in-the-middle/-/require-in-the-middle-5.2.0.tgz", - "integrity": "sha512-efCx3b+0Z69/LGJmm9Yvi4cqEdxnoGnxYxGxBghkkTTFeXRtTCmmhO0AnAfHz59k957uTSuy8WaHqOs8wbYUWg==", - "dev": true, - "license": "MIT", - "dependencies": { - "debug": "^4.1.1", - "module-details-from-path": "^1.0.3", - "resolve": "^1.22.1" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/resolve": { - "version": "1.22.8", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", - "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", - "dev": true, - "license": "MIT", - "dependencies": { - "is-core-module": "^2.13.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - }, - "bin": { - "resolve": "bin/resolve" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/resolve-from": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", - "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/resolve-pkg-maps": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz", - "integrity": "sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==", - "dev": true, - "license": "MIT", - "funding": { - "url": "https://github.com/privatenumber/resolve-pkg-maps?sponsor=1" - } - }, - "node_modules/ret": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/ret/-/ret-0.5.0.tgz", - "integrity": "sha512-I1XxrZSQ+oErkRR4jYbAyEEu2I0avBvvMM5JN+6EBprOGRCs63ENqZ3vjavq8fBw2+62G5LF5XelKwuJpcvcxw==", - "license": "MIT", - "engines": { - "node": ">=10" - } - }, - "node_modules/retext": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/retext/-/retext-9.0.0.tgz", - "integrity": "sha512-sbMDcpHCNjvlheSgMfEcVrZko3cDzdbe1x/e7G66dFp0Ff7Mldvi2uv6JkJQzdRcvLYE8CA8Oe8siQx8ZOgTcA==", - "license": "MIT", - "dependencies": { - "@types/nlcst": "^2.0.0", - "retext-latin": "^4.0.0", - "retext-stringify": "^4.0.0", - "unified": "^11.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/retext-latin": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/retext-latin/-/retext-latin-4.0.0.tgz", - "integrity": "sha512-hv9woG7Fy0M9IlRQloq/N6atV82NxLGveq+3H2WOi79dtIYWN8OaxogDm77f8YnVXJL2VD3bbqowu5E3EMhBYA==", - "license": "MIT", - "dependencies": { - "@types/nlcst": "^2.0.0", - "parse-latin": "^7.0.0", - "unified": "^11.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/retext-smartypants": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/retext-smartypants/-/retext-smartypants-6.2.0.tgz", - "integrity": "sha512-kk0jOU7+zGv//kfjXEBjdIryL1Acl4i9XNkHxtM7Tm5lFiCog576fjNC9hjoR7LTKQ0DsPWy09JummSsH1uqfQ==", - "license": "MIT", - "dependencies": { - "@types/nlcst": "^2.0.0", - "nlcst-to-string": "^4.0.0", - "unist-util-visit": "^5.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/retext-stringify": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/retext-stringify/-/retext-stringify-4.0.0.tgz", - "integrity": "sha512-rtfN/0o8kL1e+78+uxPTqu1Klt0yPzKuQ2BfWwwfgIUSayyzxpM1PJzkKt4V8803uB9qSy32MvI7Xep9khTpiA==", - "license": "MIT", - "dependencies": { - "@types/nlcst": "^2.0.0", - "nlcst-to-string": "^4.0.0", - "unified": "^11.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/reusify": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", - "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", - "license": "MIT", - "engines": { - "iojs": ">=1.0.0", - "node": ">=0.10.0" - } - }, - "node_modules/rfdc": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.4.1.tgz", - "integrity": "sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==", - "license": "MIT" - }, - "node_modules/rimraf": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-6.0.1.tgz", - "integrity": "sha512-9dkvaxAsk/xNXSJzMgFqqMCuFgt2+KsOFek3TMLfo8NCPfWpBmqwyNn5Y+NX56QUYfCtsyhF3ayiboEoUmJk/A==", - "dev": true, - "license": "ISC", - "dependencies": { - "glob": "^11.0.0", - "package-json-from-dist": "^1.0.0" - }, - "bin": { - "rimraf": "dist/esm/bin.mjs" - }, - "engines": { - "node": "20 || >=22" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/robust-predicates": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/robust-predicates/-/robust-predicates-3.0.2.tgz", - "integrity": "sha512-IXgzBWvWQwE6PrDI05OvmXUIruQTcoMDzRsOd5CDvHCVLcLHMTSYvOK5Cm46kWqlV3yAbuSpBZdJ5oP5OUoStg==", - "license": "Unlicense" - }, - "node_modules/rollup": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.24.0.tgz", - "integrity": "sha512-DOmrlGSXNk1DM0ljiQA+i+o0rSLhtii1je5wgk60j49d1jHT5YYttBv1iWOnYSTG+fZZESUOSNiAl89SIet+Cg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/estree": "1.0.6" - }, - "bin": { - "rollup": "dist/bin/rollup" - }, - "engines": { - "node": ">=18.0.0", - "npm": ">=8.0.0" - }, - "optionalDependencies": { - "@rollup/rollup-android-arm-eabi": "4.24.0", - "@rollup/rollup-android-arm64": "4.24.0", - "@rollup/rollup-darwin-arm64": "4.24.0", - "@rollup/rollup-darwin-x64": "4.24.0", - "@rollup/rollup-linux-arm-gnueabihf": "4.24.0", - "@rollup/rollup-linux-arm-musleabihf": "4.24.0", - "@rollup/rollup-linux-arm64-gnu": "4.24.0", - "@rollup/rollup-linux-arm64-musl": "4.24.0", - "@rollup/rollup-linux-powerpc64le-gnu": "4.24.0", - "@rollup/rollup-linux-riscv64-gnu": "4.24.0", - "@rollup/rollup-linux-s390x-gnu": "4.24.0", - "@rollup/rollup-linux-x64-gnu": "4.24.0", - "@rollup/rollup-linux-x64-musl": "4.24.0", - "@rollup/rollup-win32-arm64-msvc": "4.24.0", - "@rollup/rollup-win32-ia32-msvc": "4.24.0", - "@rollup/rollup-win32-x64-msvc": "4.24.0", - "fsevents": "~2.3.2" - } - }, - "node_modules/roughjs": { - "version": "4.6.6", - "resolved": "https://registry.npmjs.org/roughjs/-/roughjs-4.6.6.tgz", - "integrity": "sha512-ZUz/69+SYpFN/g/lUlo2FXcIjRkSu3nDarreVdGGndHEBJ6cXPdKguS8JGxwj5HA5xIbVKSmLgr5b3AWxtRfvQ==", - "license": "MIT", - "dependencies": { - "hachure-fill": "^0.5.2", - "path-data-parser": "^0.1.0", - "points-on-curve": "^0.2.0", - "points-on-path": "^0.2.1" - } - }, - "node_modules/run-parallel": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", - "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT", - "dependencies": { - "queue-microtask": "^1.2.2" - } - }, - "node_modules/run-series": { - "version": "1.1.9", - "resolved": "https://registry.npmjs.org/run-series/-/run-series-1.1.9.tgz", - "integrity": "sha512-Arc4hUN896vjkqCYrUXquBFtRZdv1PfLbTYP71efP6butxyQ0kWpiNJyAgsxscmQg1cqvHY32/UCBzXedTpU2g==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT" - }, - "node_modules/rw": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/rw/-/rw-1.3.3.tgz", - "integrity": "sha512-PdhdWy89SiZogBLaw42zdeqtRJ//zFd2PgQavcICDUgJT5oW10QCRKbJ6bg4r0/UY2M6BWd5tkxuGFRvCkgfHQ==", - "license": "BSD-3-Clause" - }, - "node_modules/safe-array-concat": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.2.tgz", - "integrity": "sha512-vj6RsCsWBCf19jIeHEfkRMw8DPiBb+DMXklQ/1SGDHOMlHdPUkZXFQ2YdplS23zESTijAcurb1aSgJA3AgMu1Q==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.7", - "get-intrinsic": "^1.2.4", - "has-symbols": "^1.0.3", - "isarray": "^2.0.5" - }, - "engines": { - "node": ">=0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT" - }, - "node_modules/safe-regex-test": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.3.tgz", - "integrity": "sha512-CdASjNJPvRa7roO6Ra/gLYBTzYzzPyyBXxIMdGW3USQLyjWEls2RgW5UBTXaQVp+OrpeCK3bLem8smtmheoRuw==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.6", - "es-errors": "^1.3.0", - "is-regex": "^1.1.4" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/safe-regex2": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/safe-regex2/-/safe-regex2-4.0.0.tgz", - "integrity": "sha512-Hvjfv25jPDVr3U+4LDzBuZPPOymELG3PYcSk5hcevooo1yxxamQL/bHs/GrEPGmMoMEwRrHVGiCA1pXi97B8Ew==", - "license": "MIT", - "dependencies": { - "ret": "~0.5.0" - } - }, - "node_modules/safe-stable-stringify": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.5.0.tgz", - "integrity": "sha512-b3rppTKm9T+PsVCBEOUR46GWI7fdOs00VKZ1+9c1EWDaDMvjQc6tUwuFyIprgGgTcWoVHSKrU8H31ZHA2e0RHA==", - "license": "MIT", - "engines": { - "node": ">=10" - } - }, - "node_modules/safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", - "license": "MIT" - }, - "node_modules/sax": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.4.1.tgz", - "integrity": "sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg==", - "dev": true, - "license": "ISC" - }, - "node_modules/scheduler": { - "version": "0.23.2", - "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.2.tgz", - "integrity": "sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==", - "license": "MIT", - "dependencies": { - "loose-envify": "^1.1.0" - } - }, - "node_modules/scroll-into-view-if-needed": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/scroll-into-view-if-needed/-/scroll-into-view-if-needed-3.1.0.tgz", - "integrity": "sha512-49oNpRjWRvnU8NyGVmUaYG4jtTkNonFZI86MmGRDqBphEK2EXT9gdEUoQPZhuBM8yWHxCWbobltqYO5M4XrUvQ==", - "license": "MIT", - "dependencies": { - "compute-scroll-into-view": "^3.0.2" - } - }, - "node_modules/section-matter": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/section-matter/-/section-matter-1.0.0.tgz", - "integrity": "sha512-vfD3pmTzGpufjScBh50YHKzEu2lxBWhVEHsNGoEXmCmn2hKGfeNLYMzCJpe8cD7gqX7TJluOVpBkAequ6dgMmA==", - "license": "MIT", - "dependencies": { - "extend-shallow": "^2.0.1", - "kind-of": "^6.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/secure-json-parse": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/secure-json-parse/-/secure-json-parse-2.7.0.tgz", - "integrity": "sha512-6aU+Rwsezw7VR8/nyvKTx8QpWH9FrcYiXXlqC4z5d5XQBDRqtbfsRjnwGyqbi3gddNtWHuEk9OANUotL26qKUw==", - "license": "BSD-3-Clause" - }, - "node_modules/semver": { - "version": "7.6.3", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", - "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", - "license": "ISC", - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/serve": { - "version": "14.2.4", - "resolved": "https://registry.npmjs.org/serve/-/serve-14.2.4.tgz", - "integrity": "sha512-qy1S34PJ/fcY8gjVGszDB3EXiPSk5FKhUa7tQe0UPRddxRidc2V6cNHPNewbE1D7MAkgLuWEt3Vw56vYy73tzQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@zeit/schemas": "2.36.0", - "ajv": "8.12.0", - "arg": "5.0.2", - "boxen": "7.0.0", - "chalk": "5.0.1", - "chalk-template": "0.4.0", - "clipboardy": "3.0.0", - "compression": "1.7.4", - "is-port-reachable": "4.0.0", - "serve-handler": "6.1.6", - "update-check": "1.5.4" - }, - "bin": { - "serve": "build/main.js" - }, - "engines": { - "node": ">= 14" - } - }, - "node_modules/serve-handler": { - "version": "6.1.6", - "resolved": "https://registry.npmjs.org/serve-handler/-/serve-handler-6.1.6.tgz", - "integrity": "sha512-x5RL9Y2p5+Sh3D38Fh9i/iQ5ZK+e4xuXRd/pGbM4D13tgo/MGwbttUk8emytcr1YYzBYs+apnUngBDFYfpjPuQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "bytes": "3.0.0", - "content-disposition": "0.5.2", - "mime-types": "2.1.18", - "minimatch": "3.1.2", - "path-is-inside": "1.0.2", - "path-to-regexp": "3.3.0", - "range-parser": "1.2.0" - } - }, - "node_modules/serve-handler/node_modules/mime-db": { - "version": "1.33.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.33.0.tgz", - "integrity": "sha512-BHJ/EKruNIqJf/QahvxwQZXKygOQ256myeN/Ew+THcAa5q+PjyTTMMeNQC4DZw5AwfvelsUrA6B67NKMqXDbzQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/serve-handler/node_modules/mime-types": { - "version": "2.1.18", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.18.tgz", - "integrity": "sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "mime-db": "~1.33.0" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/serve/node_modules/ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", - "dev": true, - "license": "MIT", - "dependencies": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/serve/node_modules/chalk": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.0.1.tgz", - "integrity": "sha512-Fo07WOYGqMfCWHOzSXOt2CxDbC6skS/jO9ynEcmpANMoPrD+W1r1K6Vx7iNm+AQmETU1Xr2t+n8nzkV9t6xh3w==", - "dev": true, - "license": "MIT", - "engines": { - "node": "^12.17.0 || ^14.13 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/serve/node_modules/clipboardy": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/clipboardy/-/clipboardy-3.0.0.tgz", - "integrity": "sha512-Su+uU5sr1jkUy1sGRpLKjKrvEOVXgSgiSInwa/qeID6aJ07yh+5NWc3h2QfjHjBnfX4LhtFcuAWKUsJ3r+fjbg==", - "dev": true, - "license": "MIT", - "dependencies": { - "arch": "^2.2.0", - "execa": "^5.1.1", - "is-wsl": "^2.2.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/serve/node_modules/execa": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", - "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", - "dev": true, - "license": "MIT", - "dependencies": { - "cross-spawn": "^7.0.3", - "get-stream": "^6.0.0", - "human-signals": "^2.1.0", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.1", - "onetime": "^5.1.2", - "signal-exit": "^3.0.3", - "strip-final-newline": "^2.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" - } - }, - "node_modules/serve/node_modules/get-stream": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", - "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/serve/node_modules/is-stream": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", - "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/serve/node_modules/json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "dev": true, - "license": "MIT" - }, - "node_modules/serve/node_modules/npm-run-path": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", - "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", - "dev": true, - "license": "MIT", - "dependencies": { - "path-key": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/serve/node_modules/signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "dev": true, - "license": "ISC" - }, - "node_modules/set-cookie-parser": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/set-cookie-parser/-/set-cookie-parser-2.7.0.tgz", - "integrity": "sha512-lXLOiqpkUumhRdFF3k1osNXCy9akgx/dyPZ5p8qAg9seJzXr5ZrlqZuWIMuY6ejOsVLE6flJ5/h3lsn57fQ/PQ==", - "license": "MIT" - }, - "node_modules/set-function-length": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", - "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", - "dev": true, - "license": "MIT", - "dependencies": { - "define-data-property": "^1.1.4", - "es-errors": "^1.3.0", - "function-bind": "^1.1.2", - "get-intrinsic": "^1.2.4", - "gopd": "^1.0.1", - "has-property-descriptors": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/set-function-name": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz", - "integrity": "sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "define-data-property": "^1.1.4", - "es-errors": "^1.3.0", - "functions-have-names": "^1.2.3", - "has-property-descriptors": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "license": "MIT", - "dependencies": { - "shebang-regex": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/shiki": { - "version": "1.22.0", - "resolved": "https://registry.npmjs.org/shiki/-/shiki-1.22.0.tgz", - "integrity": "sha512-/t5LlhNs+UOKQCYBtl5ZsH/Vclz73GIqT2yQsCBygr8L/ppTdmpL4w3kPLoZJbMKVWtoG77Ue1feOjZfDxvMkw==", - "license": "MIT", - "dependencies": { - "@shikijs/core": "1.22.0", - "@shikijs/engine-javascript": "1.22.0", - "@shikijs/engine-oniguruma": "1.22.0", - "@shikijs/types": "1.22.0", - "@shikijs/vscode-textmate": "^9.3.0", - "@types/hast": "^3.0.4" - } - }, - "node_modules/shimmer": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/shimmer/-/shimmer-1.2.1.tgz", - "integrity": "sha512-sQTKC1Re/rM6XyFM6fIAGHRPVGvyXfgzIDvzoq608vM+jeyVD0Tu1E6Np0Kc2zAIFWIj963V2800iF/9LPieQw==", - "dev": true, - "license": "BSD-2-Clause" - }, - "node_modules/side-channel": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.6.tgz", - "integrity": "sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.7", - "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.4", - "object-inspect": "^1.13.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/signal-exit": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", - "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", - "license": "ISC", - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/smart-buffer": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", - "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 6.0.0", - "npm": ">= 3.0.0" - } - }, - "node_modules/socks": { - "version": "2.8.3", - "resolved": "https://registry.npmjs.org/socks/-/socks-2.8.3.tgz", - "integrity": "sha512-l5x7VUUWbjVFbafGLxPWkYsHIhEvmF85tbIeFZWc8ZPtoMyybuEhL7Jye/ooC4/d48FgOjSJXgsF/AJPYCW8Zw==", - "dev": true, - "license": "MIT", - "dependencies": { - "ip-address": "^9.0.5", - "smart-buffer": "^4.2.0" - }, - "engines": { - "node": ">= 10.0.0", - "npm": ">= 3.0.0" - } - }, - "node_modules/socks-proxy-agent": { - "version": "8.0.4", - "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-8.0.4.tgz", - "integrity": "sha512-GNAq/eg8Udq2x0eNiFkr9gRg5bA7PXEWagQdeRX4cPSG+X/8V38v637gim9bjFptMk1QWsCTr0ttrJEiXbNnRw==", - "dev": true, - "license": "MIT", - "dependencies": { - "agent-base": "^7.1.1", - "debug": "^4.3.4", - "socks": "^2.8.3" - }, - "engines": { - "node": ">= 14" - } - }, - "node_modules/sonic-boom": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/sonic-boom/-/sonic-boom-4.2.0.tgz", - "integrity": "sha512-INb7TM37/mAcsGmc9hyyI6+QR3rR1zVRu36B0NeGXKnOOLiZOfER5SA+N7X7k3yUYRzLWafduTDvJAfDswwEww==", - "license": "MIT", - "dependencies": { - "atomic-sleep": "^1.0.0" - } - }, - "node_modules/sort-object-keys": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/sort-object-keys/-/sort-object-keys-1.1.3.tgz", - "integrity": "sha512-855pvK+VkU7PaKYPc+Jjnmt4EzejQHyhhF33q31qG8x7maDzkeFhAAThdCYay11CISO+qAMwjOBP+fPZe0IPyg==", - "dev": true, - "license": "MIT" - }, - "node_modules/sort-package-json": { - "version": "2.10.1", - "resolved": "https://registry.npmjs.org/sort-package-json/-/sort-package-json-2.10.1.tgz", - "integrity": "sha512-d76wfhgUuGypKqY72Unm5LFnMpACbdxXsLPcL27pOsSrmVqH3PztFp1uq+Z22suk15h7vXmTesuh2aEjdCqb5w==", - "dev": true, - "license": "MIT", - "dependencies": { - "detect-indent": "^7.0.1", - "detect-newline": "^4.0.0", - "get-stdin": "^9.0.0", - "git-hooks-list": "^3.0.0", - "globby": "^13.1.2", - "is-plain-obj": "^4.1.0", - "semver": "^7.6.0", - "sort-object-keys": "^1.1.3" - }, - "bin": { - "sort-package-json": "cli.js" - } - }, - "node_modules/sort-package-json/node_modules/detect-indent": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-7.0.1.tgz", - "integrity": "sha512-Mc7QhQ8s+cLrnUfU/Ji94vG/r8M26m8f++vyres4ZoojaRDpZ1eSIh/EpzLNwlWuvzSZ3UbDFspjFvTDXe6e/g==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12.20" - } - }, - "node_modules/sort-package-json/node_modules/globby": { - "version": "13.2.2", - "resolved": "https://registry.npmjs.org/globby/-/globby-13.2.2.tgz", - "integrity": "sha512-Y1zNGV+pzQdh7H39l9zgB4PJqjRNqydvdYCDG4HFXM4XuvSaQQlEc91IU1yALL8gUTDomgBAfz3XJdmUS+oo0w==", - "dev": true, - "license": "MIT", - "dependencies": { - "dir-glob": "^3.0.1", - "fast-glob": "^3.3.0", - "ignore": "^5.2.4", - "merge2": "^1.4.1", - "slash": "^4.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/sort-package-json/node_modules/slash": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", - "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/source-map": { - "version": "0.7.4", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", - "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", - "license": "BSD-3-Clause", - "engines": { - "node": ">= 8" - } - }, - "node_modules/source-map-js": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", - "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", - "license": "BSD-3-Clause", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/source-map-support": { - "version": "0.5.21", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", - "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", - "dev": true, - "license": "MIT", - "dependencies": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - } - }, - "node_modules/source-map-support/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "license": "BSD-3-Clause", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/space-separated-tokens": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/space-separated-tokens/-/space-separated-tokens-2.0.2.tgz", - "integrity": "sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/spawndamnit": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/spawndamnit/-/spawndamnit-3.0.1.tgz", - "integrity": "sha512-MmnduQUuHCoFckZoWnXsTg7JaiLBJrKFj9UI2MbRPGaJeVpsLcVBu6P/IGZovziM/YBsellCmsprgNA+w0CzVg==", - "dependencies": { - "cross-spawn": "^7.0.5", - "signal-exit": "^4.0.1" - } - }, - "node_modules/spdx-correct": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.2.0.tgz", - "integrity": "sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } - }, - "node_modules/spdx-exceptions": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.5.0.tgz", - "integrity": "sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w==", - "dev": true, - "license": "CC-BY-3.0" - }, - "node_modules/spdx-expression-parse": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", - "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", - "dev": true, - "license": "MIT", - "dependencies": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "node_modules/spdx-license-ids": { - "version": "3.0.20", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.20.tgz", - "integrity": "sha512-jg25NiDV/1fLtSgEgyvVyDunvaNHbuwF9lfNV17gSmPFAlYzdfNBlLtLzXTevwkPj7DhGbmN9VnmJIgLnhvaBw==", - "dev": true, - "license": "CC0-1.0" - }, - "node_modules/speech-rule-engine": { - "version": "4.0.7", - "resolved": "https://registry.npmjs.org/speech-rule-engine/-/speech-rule-engine-4.0.7.tgz", - "integrity": "sha512-sJrL3/wHzNwJRLBdf6CjJWIlxC04iYKkyXvYSVsWVOiC2DSkHmxsqOhEeMsBA9XK+CHuNcsdkbFDnoUfAsmp9g==", - "license": "Apache-2.0", - "dependencies": { - "commander": "9.2.0", - "wicked-good-xpath": "1.3.0", - "xmldom-sre": "0.1.31" - }, - "bin": { - "sre": "bin/sre" - } - }, - "node_modules/speech-rule-engine/node_modules/commander": { - "version": "9.2.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-9.2.0.tgz", - "integrity": "sha512-e2i4wANQiSXgnrBlIatyHtP1odfUp0BbV5Y5nEGbxtIrStkEOAAzCUirvLBNXHLr7kwLvJl6V+4V3XV9x7Wd9w==", - "license": "MIT", - "engines": { - "node": "^12.20.0 || >=14" - } - }, - "node_modules/split2": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/split2/-/split2-4.2.0.tgz", - "integrity": "sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg==", - "license": "ISC", - "engines": { - "node": ">= 10.x" - } - }, - "node_modules/sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", - "license": "BSD-3-Clause" - }, - "node_modules/stop-iteration-iterator": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.0.0.tgz", - "integrity": "sha512-iCGQj+0l0HOdZ2AEeBADlsRC+vsnDsZsbdSiH1yNSjcfKM7fdpCMfqAL/dwF5BLiw/XhRft/Wax6zQbhq2BcjQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "internal-slot": "^1.0.4" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/streamsearch": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/streamsearch/-/streamsearch-1.1.0.tgz", - "integrity": "sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==", - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/string-width": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", - "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", - "dev": true, - "license": "MIT", - "dependencies": { - "eastasianwidth": "^0.2.0", - "emoji-regex": "^9.2.2", - "strip-ansi": "^7.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/string-width-cjs": { - "name": "string-width", - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "license": "MIT", - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/string-width-cjs/node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true, - "license": "MIT" - }, - "node_modules/string-width/node_modules/ansi-regex": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.1.0.tgz", - "integrity": "sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/ansi-regex?sponsor=1" - } - }, - "node_modules/string-width/node_modules/strip-ansi": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", - "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-regex": "^6.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/strip-ansi?sponsor=1" - } - }, - "node_modules/string.prototype.includes": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/string.prototype.includes/-/string.prototype.includes-2.0.1.tgz", - "integrity": "sha512-o7+c9bW6zpAdJHTtujeePODAhkuicdAryFsfVKwA+wGw89wJ4GTY484WTucM9hLtDEOpOvI+aHnzqnC5lHp4Rg==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.3" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/string.prototype.matchall": { - "version": "4.0.11", - "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.11.tgz", - "integrity": "sha512-NUdh0aDavY2og7IbBPenWqR9exH+E26Sv8e0/eTe1tltDGZL+GtBkDAnnyBtmekfK6/Dq3MkcGtzXFEd1LQrtg==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.2", - "es-errors": "^1.3.0", - "es-object-atoms": "^1.0.0", - "get-intrinsic": "^1.2.4", - "gopd": "^1.0.1", - "has-symbols": "^1.0.3", - "internal-slot": "^1.0.7", - "regexp.prototype.flags": "^1.5.2", - "set-function-name": "^2.0.2", - "side-channel": "^1.0.6" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/string.prototype.repeat": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/string.prototype.repeat/-/string.prototype.repeat-1.0.0.tgz", - "integrity": "sha512-0u/TldDbKD8bFCQ/4f5+mNRrXwZ8hg2w7ZR8wa16e8z9XpePWl3eGEcUD0OXpEH/VJH/2G3gjUtR3ZOiBe2S/w==", - "dev": true, - "license": "MIT", - "dependencies": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.5" - } - }, - "node_modules/string.prototype.trim": { - "version": "1.2.9", - "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.9.tgz", - "integrity": "sha512-klHuCNxiMZ8MlsOihJhJEBJAiMVqU3Z2nEXWfWnIqjN0gEFS9J9+IxKozWWtQGcgoa1WUZzLjKPTr4ZHNFTFxw==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.0", - "es-object-atoms": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/string.prototype.trimend": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.8.tgz", - "integrity": "sha512-p73uL5VCHCO2BZZ6krwwQE3kCzM7NKmis8S//xEC6fQonchbum4eP6kR4DLEjQFO3Wnj3Fuo8NM0kOSjVdHjZQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-object-atoms": "^1.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/string.prototype.trimstart": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz", - "integrity": "sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-object-atoms": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/stringify-entities": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/stringify-entities/-/stringify-entities-4.0.4.tgz", - "integrity": "sha512-IwfBptatlO+QCJUo19AqvrPNqlVMpW9YEL2LIVY+Rpv2qsjCGxaDLNRgeGsQWJhfItebuJhsGSLjaBbNSQ+ieg==", - "license": "MIT", - "dependencies": { - "character-entities-html4": "^2.0.0", - "character-entities-legacy": "^3.0.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "license": "MIT", - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-ansi-cjs": { - "name": "strip-ansi", - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-bom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/strip-bom-string": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/strip-bom-string/-/strip-bom-string-1.0.0.tgz", - "integrity": "sha512-uCC2VHvQRYu+lMh4My/sFNmF2klFymLX1wHJeXnbEJERpV/ZsVuonzerjfrGpIGF7LBVa1O7i9kjiWvJiFck8g==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/strip-final-newline": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", - "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/strip-indent": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz", - "integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "min-indent": "^1.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-json-comments": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", - "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/style-to-object": { - "version": "0.4.4", - "resolved": "https://registry.npmjs.org/style-to-object/-/style-to-object-0.4.4.tgz", - "integrity": "sha512-HYNoHZa2GorYNyqiCaBgsxvcJIn7OHq6inEga+E6Ke3m5JkoqpQbnFssk4jwe+K7AhGa2fcha4wSOf1Kn01dMg==", - "license": "MIT", - "dependencies": { - "inline-style-parser": "0.1.1" - } - }, - "node_modules/styled-jsx": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/styled-jsx/-/styled-jsx-5.1.1.tgz", - "integrity": "sha512-pW7uC1l4mBZ8ugbiZrcIsiIvVx1UmTfw7UkC3Um2tmfUq9Bhk8IiyEIPl6F8agHgjzku6j0xQEZbfA5uSgSaCw==", - "license": "MIT", - "dependencies": { - "client-only": "0.0.1" - }, - "engines": { - "node": ">= 12.0.0" - }, - "peerDependencies": { - "react": ">= 16.8.0 || 17.x.x || ^18.0.0-0" - }, - "peerDependenciesMeta": { - "@babel/core": { - "optional": true - }, - "babel-plugin-macros": { - "optional": true - } - } - }, - "node_modules/stylis": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.3.4.tgz", - "integrity": "sha512-osIBl6BGUmSfDkyH2mB7EFvCJntXDrLhKjHTRj/rK6xLH0yuPrHULDRQzKokSOD4VoorhtKpfcfW1GAntu8now==", - "license": "MIT" - }, - "node_modules/sucrase": { - "version": "3.35.0", - "resolved": "https://registry.npmjs.org/sucrase/-/sucrase-3.35.0.tgz", - "integrity": "sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@jridgewell/gen-mapping": "^0.3.2", - "commander": "^4.0.0", - "glob": "^10.3.10", - "lines-and-columns": "^1.1.6", - "mz": "^2.7.0", - "pirates": "^4.0.1", - "ts-interface-checker": "^0.1.9" - }, - "bin": { - "sucrase": "bin/sucrase", - "sucrase-node": "bin/sucrase-node" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - } - }, - "node_modules/sucrase/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/sucrase/node_modules/commander": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", - "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 6" - } - }, - "node_modules/sucrase/node_modules/glob": { - "version": "10.4.5", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz", - "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==", - "dev": true, - "license": "ISC", - "dependencies": { - "foreground-child": "^3.1.0", - "jackspeak": "^3.1.2", - "minimatch": "^9.0.4", - "minipass": "^7.1.2", - "package-json-from-dist": "^1.0.0", - "path-scurry": "^1.11.1" - }, - "bin": { - "glob": "dist/esm/bin.mjs" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/sucrase/node_modules/jackspeak": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.3.tgz", - "integrity": "sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==", - "dev": true, - "license": "BlueOak-1.0.0", - "dependencies": { - "@isaacs/cliui": "^8.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - }, - "optionalDependencies": { - "@pkgjs/parseargs": "^0.11.0" - } - }, - "node_modules/sucrase/node_modules/minimatch": { - "version": "9.0.5", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", - "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", - "dev": true, - "license": "ISC", - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/sucrase/node_modules/path-scurry": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz", - "integrity": "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==", - "dev": true, - "license": "BlueOak-1.0.0", - "dependencies": { - "lru-cache": "^10.2.0", - "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" - }, - "engines": { - "node": ">=16 || 14 >=14.18" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/supports-preserve-symlinks-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/synckit": { - "version": "0.9.2", - "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.9.2.tgz", - "integrity": "sha512-vrozgXDQwYO72vHjUb/HnFbQx1exDjoKzqx23aXEg2a9VIg2TSFZ8FmeZpTjUCFMYw7mpX4BE2SFu8wI7asYsw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@pkgr/core": "^0.1.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": "^14.18.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/unts" - } - }, - "node_modules/system-architecture": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/system-architecture/-/system-architecture-0.1.0.tgz", - "integrity": "sha512-ulAk51I9UVUyJgxlv9M6lFot2WP3e7t8Kz9+IS6D4rVba1tR9kON+Ey69f+1R4Q8cd45Lod6a4IcJIxnzGc/zA==", - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/systeminformation": { - "version": "5.23.5", - "resolved": "https://registry.npmjs.org/systeminformation/-/systeminformation-5.23.5.tgz", - "integrity": "sha512-PEpJwhRYxZgBCAlWZhWIgfMTjXLqfcaZ1pJsJn9snWNfBW/Z1YQg1mbIUSWrEV3ErAHF7l/OoVLQeaZDlPzkpA==", - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin", - "linux", - "win32", - "freebsd", - "openbsd", - "netbsd", - "sunos", - "android" - ], - "bin": { - "systeminformation": "lib/cli.js" - }, - "engines": { - "node": ">=8.0.0" - }, - "funding": { - "type": "Buy me a coffee", - "url": "https://www.buymeacoffee.com/systeminfo" - } - }, - "node_modules/tabbable": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/tabbable/-/tabbable-6.2.0.tgz", - "integrity": "sha512-Cat63mxsVJlzYvN51JmVXIgNoUokrIaT2zLclCXjRd8boZ0004U4KCs/sToJ75C6sdlByWxpYnb5Boif1VSFew==", - "license": "MIT" - }, - "node_modules/tapable": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", - "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/term-size": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/term-size/-/term-size-2.2.1.tgz", - "integrity": "sha512-wK0Ri4fOGjv/XPy8SBHZChl8CM7uMc5VML7SqiQ0zG7+J5Vr+RMQDoHa2CNT6KHUnTGIXH34UDMkPzAUyapBZg==", - "license": "MIT", - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/text-table": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", - "dev": true, - "license": "MIT" - }, - "node_modules/thenify": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/thenify/-/thenify-3.3.1.tgz", - "integrity": "sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==", - "dev": true, - "license": "MIT", - "dependencies": { - "any-promise": "^1.0.0" - } - }, - "node_modules/thenify-all": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz", - "integrity": "sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==", - "dev": true, - "license": "MIT", - "dependencies": { - "thenify": ">= 3.1.0 < 4" - }, - "engines": { - "node": ">=0.8" - } - }, - "node_modules/thread-stream": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/thread-stream/-/thread-stream-3.1.0.tgz", - "integrity": "sha512-OqyPZ9u96VohAyMfJykzmivOrY2wfMSf3C5TtFJVgN+Hm6aj+voFhlK+kZEIv2FBh1X6Xp3DlnCOfEQ3B2J86A==", - "license": "MIT", - "dependencies": { - "real-require": "^0.2.0" - } - }, - "node_modules/tinyexec": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/tinyexec/-/tinyexec-0.3.1.tgz", - "integrity": "sha512-WiCJLEECkO18gwqIp6+hJg0//p23HXp4S+gGtAKu3mI2F2/sXC4FvHvXvB0zJVVaTPhx1/tOwdbRsa1sOBIKqQ==", - "license": "MIT" - }, - "node_modules/tinyglobby": { - "version": "0.2.9", - "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.9.tgz", - "integrity": "sha512-8or1+BGEdk1Zkkw2ii16qSS7uVrQJPre5A9o/XkWPATkk23FZh/15BKFxPnlTy6vkljZxLqYCzzBMj30ZrSvjw==", - "dev": true, - "license": "MIT", - "dependencies": { - "fdir": "^6.4.0", - "picomatch": "^4.0.2" - }, - "engines": { - "node": ">=12.0.0" - } - }, - "node_modules/tinyglobby/node_modules/fdir": { - "version": "6.4.2", - "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.4.2.tgz", - "integrity": "sha512-KnhMXsKSPZlAhp7+IjUkRZKPb4fUyccpDrdFXbi4QL1qkmFh9kVY09Yox+n4MaOb3lHZ1Tv829C3oaaXoMYPDQ==", - "dev": true, - "license": "MIT", - "peerDependencies": { - "picomatch": "^3 || ^4" - }, - "peerDependenciesMeta": { - "picomatch": { - "optional": true - } - } - }, - "node_modules/tinyglobby/node_modules/picomatch": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.2.tgz", - "integrity": "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, - "node_modules/title": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/title/-/title-4.0.1.tgz", - "integrity": "sha512-xRnPkJx9nvE5MF6LkB5e8QJjE2FW8269wTu/LQdf7zZqBgPly0QJPf/CWAo7srj5so4yXfoLEdCFgurlpi47zg==", - "dependencies": { - "arg": "^5.0.0", - "chalk": "^5.0.0", - "clipboardy": "^4.0.0" - }, - "bin": { - "title": "dist/esm/bin.js" - } - }, - "node_modules/title/node_modules/chalk": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.3.0.tgz", - "integrity": "sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==", - "engines": { - "node": "^12.17.0 || ^14.13 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/tmp": { - "version": "0.0.33", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", - "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", - "license": "MIT", - "dependencies": { - "os-tmpdir": "~1.0.2" - }, - "engines": { - "node": ">=0.6.0" - } - }, - "node_modules/to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "license": "MIT", - "dependencies": { - "is-number": "^7.0.0" - }, - "engines": { - "node": ">=8.0" - } - }, - "node_modules/toad-cache": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/toad-cache/-/toad-cache-3.7.0.tgz", - "integrity": "sha512-/m8M+2BJUpoJdgAHoG+baCwBT+tf2VraSfkBgl0Y00qIWt41DJ8R5B8nsEw0I58YwF5IZH6z24/2TobDKnqSWw==", - "license": "MIT", - "engines": { - "node": ">=12" - } - }, - "node_modules/tr46": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-1.0.1.tgz", - "integrity": "sha512-dTpowEjclQ7Kgx5SdBkqRzVhERQXov8/l9Ft9dVM9fmg0W0KQSVaXX9T4i6twCPNtYiZM53lpSSUAwJbFPOHxA==", - "dev": true, - "license": "MIT", - "dependencies": { - "punycode": "^2.1.0" - } - }, - "node_modules/tree-kill": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz", - "integrity": "sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==", - "dev": true, - "license": "MIT", - "bin": { - "tree-kill": "cli.js" - } - }, - "node_modules/trim-lines": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/trim-lines/-/trim-lines-3.0.1.tgz", - "integrity": "sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/trough": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/trough/-/trough-2.2.0.tgz", - "integrity": "sha512-tmMpK00BjZiUyVyvrBK7knerNgmgvcV/KLVyuma/SC+TQN167GrMRciANTz09+k3zW8L8t60jWO1GpfkZdjTaw==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/ts-api-utils": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.3.0.tgz", - "integrity": "sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=16" - }, - "peerDependencies": { - "typescript": ">=4.2.0" - } - }, - "node_modules/ts-dedent": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/ts-dedent/-/ts-dedent-2.2.0.tgz", - "integrity": "sha512-q5W7tVM71e2xjHZTlgfTDoPF/SmqKG5hddq9SzR49CH2hayqRKJtQ4mtRlSxKaJlR/+9rEM+mnBHf7I2/BQcpQ==", - "license": "MIT", - "engines": { - "node": ">=6.10" - } - }, - "node_modules/ts-interface-checker": { - "version": "0.1.13", - "resolved": "https://registry.npmjs.org/ts-interface-checker/-/ts-interface-checker-0.1.13.tgz", - "integrity": "sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==", - "dev": true, - "license": "Apache-2.0" - }, - "node_modules/tsconfig-paths": { - "version": "3.15.0", - "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.15.0.tgz", - "integrity": "sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/json5": "^0.0.29", - "json5": "^1.0.2", - "minimist": "^1.2.6", - "strip-bom": "^3.0.0" - } - }, - "node_modules/tsconfig-paths/node_modules/json5": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", - "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", - "dev": true, - "license": "MIT", - "dependencies": { - "minimist": "^1.2.0" - }, - "bin": { - "json5": "lib/cli.js" - } - }, - "node_modules/tslib": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.0.tgz", - "integrity": "sha512-jWVzBLplnCmoaTr13V9dYbiQ99wvZRd0vNWaDRg+aVYRcjDF3nDksxFDE/+fkXnKhpnUUkmx5pK/v8mCtLVqZA==", - "license": "0BSD" - }, - "node_modules/tsup": { - "version": "8.3.5", - "resolved": "https://registry.npmjs.org/tsup/-/tsup-8.3.5.tgz", - "integrity": "sha512-Tunf6r6m6tnZsG9GYWndg0z8dEV7fD733VBFzFJ5Vcm1FtlXB8xBD/rtrBi2a3YKEV7hHtxiZtW5EAVADoe1pA==", - "dev": true, - "dependencies": { - "bundle-require": "^5.0.0", - "cac": "^6.7.14", - "chokidar": "^4.0.1", - "consola": "^3.2.3", - "debug": "^4.3.7", - "esbuild": "^0.24.0", - "joycon": "^3.1.1", - "picocolors": "^1.1.1", - "postcss-load-config": "^6.0.1", - "resolve-from": "^5.0.0", - "rollup": "^4.24.0", - "source-map": "0.8.0-beta.0", - "sucrase": "^3.35.0", - "tinyexec": "^0.3.1", - "tinyglobby": "^0.2.9", - "tree-kill": "^1.2.2" - }, - "bin": { - "tsup": "dist/cli-default.js", - "tsup-node": "dist/cli-node.js" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "@microsoft/api-extractor": "^7.36.0", - "@swc/core": "^1", - "postcss": "^8.4.12", - "typescript": ">=4.5.0" - }, - "peerDependenciesMeta": { - "@microsoft/api-extractor": { - "optional": true - }, - "@swc/core": { - "optional": true - }, - "postcss": { - "optional": true - }, - "typescript": { - "optional": true - } - } - }, - "node_modules/tsup/node_modules/@esbuild/aix-ppc64": { - "version": "0.24.0", - "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.24.0.tgz", - "integrity": "sha512-WtKdFM7ls47zkKHFVzMz8opM7LkcsIp9amDUBIAWirg70RM71WRSjdILPsY5Uv1D42ZpUfaPILDlfactHgsRkw==", - "cpu": [ - "ppc64" - ], - "dev": true, - "optional": true, - "os": [ - "aix" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/tsup/node_modules/@esbuild/android-arm": { - "version": "0.24.0", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.24.0.tgz", - "integrity": "sha512-arAtTPo76fJ/ICkXWetLCc9EwEHKaeya4vMrReVlEIUCAUncH7M4bhMQ+M9Vf+FFOZJdTNMXNBrWwW+OXWpSew==", - "cpu": [ - "arm" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/tsup/node_modules/@esbuild/android-arm64": { - "version": "0.24.0", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.24.0.tgz", - "integrity": "sha512-Vsm497xFM7tTIPYK9bNTYJyF/lsP590Qc1WxJdlB6ljCbdZKU9SY8i7+Iin4kyhV/KV5J2rOKsBQbB77Ab7L/w==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/tsup/node_modules/@esbuild/android-x64": { - "version": "0.24.0", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.24.0.tgz", - "integrity": "sha512-t8GrvnFkiIY7pa7mMgJd7p8p8qqYIz1NYiAoKc75Zyv73L3DZW++oYMSHPRarcotTKuSs6m3hTOa5CKHaS02TQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/tsup/node_modules/@esbuild/darwin-arm64": { - "version": "0.24.0", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.24.0.tgz", - "integrity": "sha512-CKyDpRbK1hXwv79soeTJNHb5EiG6ct3efd/FTPdzOWdbZZfGhpbcqIpiD0+vwmpu0wTIL97ZRPZu8vUt46nBSw==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/tsup/node_modules/@esbuild/darwin-x64": { - "version": "0.24.0", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.24.0.tgz", - "integrity": "sha512-rgtz6flkVkh58od4PwTRqxbKH9cOjaXCMZgWD905JOzjFKW+7EiUObfd/Kav+A6Gyud6WZk9w+xu6QLytdi2OA==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/tsup/node_modules/@esbuild/freebsd-arm64": { - "version": "0.24.0", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.24.0.tgz", - "integrity": "sha512-6Mtdq5nHggwfDNLAHkPlyLBpE5L6hwsuXZX8XNmHno9JuL2+bg2BX5tRkwjyfn6sKbxZTq68suOjgWqCicvPXA==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/tsup/node_modules/@esbuild/freebsd-x64": { - "version": "0.24.0", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.24.0.tgz", - "integrity": "sha512-D3H+xh3/zphoX8ck4S2RxKR6gHlHDXXzOf6f/9dbFt/NRBDIE33+cVa49Kil4WUjxMGW0ZIYBYtaGCa2+OsQwQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/tsup/node_modules/@esbuild/linux-arm": { - "version": "0.24.0", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.24.0.tgz", - "integrity": "sha512-gJKIi2IjRo5G6Glxb8d3DzYXlxdEj2NlkixPsqePSZMhLudqPhtZ4BUrpIuTjJYXxvF9njql+vRjB2oaC9XpBw==", - "cpu": [ - "arm" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/tsup/node_modules/@esbuild/linux-arm64": { - "version": "0.24.0", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.24.0.tgz", - "integrity": "sha512-TDijPXTOeE3eaMkRYpcy3LarIg13dS9wWHRdwYRnzlwlA370rNdZqbcp0WTyyV/k2zSxfko52+C7jU5F9Tfj1g==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/tsup/node_modules/@esbuild/linux-ia32": { - "version": "0.24.0", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.24.0.tgz", - "integrity": "sha512-K40ip1LAcA0byL05TbCQ4yJ4swvnbzHscRmUilrmP9Am7//0UjPreh4lpYzvThT2Quw66MhjG//20mrufm40mA==", - "cpu": [ - "ia32" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/tsup/node_modules/@esbuild/linux-loong64": { - "version": "0.24.0", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.24.0.tgz", - "integrity": "sha512-0mswrYP/9ai+CU0BzBfPMZ8RVm3RGAN/lmOMgW4aFUSOQBjA31UP8Mr6DDhWSuMwj7jaWOT0p0WoZ6jeHhrD7g==", - "cpu": [ - "loong64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/tsup/node_modules/@esbuild/linux-mips64el": { - "version": "0.24.0", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.24.0.tgz", - "integrity": "sha512-hIKvXm0/3w/5+RDtCJeXqMZGkI2s4oMUGj3/jM0QzhgIASWrGO5/RlzAzm5nNh/awHE0A19h/CvHQe6FaBNrRA==", - "cpu": [ - "mips64el" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/tsup/node_modules/@esbuild/linux-ppc64": { - "version": "0.24.0", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.24.0.tgz", - "integrity": "sha512-HcZh5BNq0aC52UoocJxaKORfFODWXZxtBaaZNuN3PUX3MoDsChsZqopzi5UupRhPHSEHotoiptqikjN/B77mYQ==", - "cpu": [ - "ppc64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/tsup/node_modules/@esbuild/linux-riscv64": { - "version": "0.24.0", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.24.0.tgz", - "integrity": "sha512-bEh7dMn/h3QxeR2KTy1DUszQjUrIHPZKyO6aN1X4BCnhfYhuQqedHaa5MxSQA/06j3GpiIlFGSsy1c7Gf9padw==", - "cpu": [ - "riscv64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/tsup/node_modules/@esbuild/linux-s390x": { - "version": "0.24.0", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.24.0.tgz", - "integrity": "sha512-ZcQ6+qRkw1UcZGPyrCiHHkmBaj9SiCD8Oqd556HldP+QlpUIe2Wgn3ehQGVoPOvZvtHm8HPx+bH20c9pvbkX3g==", - "cpu": [ - "s390x" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/tsup/node_modules/@esbuild/linux-x64": { - "version": "0.24.0", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.24.0.tgz", - "integrity": "sha512-vbutsFqQ+foy3wSSbmjBXXIJ6PL3scghJoM8zCL142cGaZKAdCZHyf+Bpu/MmX9zT9Q0zFBVKb36Ma5Fzfa8xA==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/tsup/node_modules/@esbuild/netbsd-x64": { - "version": "0.24.0", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.24.0.tgz", - "integrity": "sha512-hjQ0R/ulkO8fCYFsG0FZoH+pWgTTDreqpqY7UnQntnaKv95uP5iW3+dChxnx7C3trQQU40S+OgWhUVwCjVFLvg==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "netbsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/tsup/node_modules/@esbuild/openbsd-arm64": { - "version": "0.24.0", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.24.0.tgz", - "integrity": "sha512-MD9uzzkPQbYehwcN583yx3Tu5M8EIoTD+tUgKF982WYL9Pf5rKy9ltgD0eUgs8pvKnmizxjXZyLt0z6DC3rRXg==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "openbsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/tsup/node_modules/@esbuild/openbsd-x64": { - "version": "0.24.0", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.24.0.tgz", - "integrity": "sha512-4ir0aY1NGUhIC1hdoCzr1+5b43mw99uNwVzhIq1OY3QcEwPDO3B7WNXBzaKY5Nsf1+N11i1eOfFcq+D/gOS15Q==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "openbsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/tsup/node_modules/@esbuild/sunos-x64": { - "version": "0.24.0", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.24.0.tgz", - "integrity": "sha512-jVzdzsbM5xrotH+W5f1s+JtUy1UWgjU0Cf4wMvffTB8m6wP5/kx0KiaLHlbJO+dMgtxKV8RQ/JvtlFcdZ1zCPA==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "sunos" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/tsup/node_modules/@esbuild/win32-arm64": { - "version": "0.24.0", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.24.0.tgz", - "integrity": "sha512-iKc8GAslzRpBytO2/aN3d2yb2z8XTVfNV0PjGlCxKo5SgWmNXx82I/Q3aG1tFfS+A2igVCY97TJ8tnYwpUWLCA==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/tsup/node_modules/@esbuild/win32-ia32": { - "version": "0.24.0", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.24.0.tgz", - "integrity": "sha512-vQW36KZolfIudCcTnaTpmLQ24Ha1RjygBo39/aLkM2kmjkWmZGEJ5Gn9l5/7tzXA42QGIoWbICfg6KLLkIw6yw==", - "cpu": [ - "ia32" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/tsup/node_modules/@esbuild/win32-x64": { - "version": "0.24.0", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.24.0.tgz", - "integrity": "sha512-7IAFPrjSQIJrGsK6flwg7NFmwBoSTyF3rl7If0hNUFQU4ilTsEPL6GuMuU9BfIWVVGuRnuIidkSMC+c0Otu8IA==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/tsup/node_modules/chokidar": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.1.tgz", - "integrity": "sha512-n8enUVCED/KVRQlab1hr3MVpcVMvxtZjmEa956u+4YijlmQED223XMSYj2tLuKvr4jcCTzNNMpQDUer72MMmzA==", - "dev": true, - "dependencies": { - "readdirp": "^4.0.1" - }, - "engines": { - "node": ">= 14.16.0" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/tsup/node_modules/esbuild": { - "version": "0.24.0", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.24.0.tgz", - "integrity": "sha512-FuLPevChGDshgSicjisSooU0cemp/sGXR841D5LHMB7mTVOmsEHcAxaH3irL53+8YDIeVNQEySh4DaYU/iuPqQ==", - "dev": true, - "hasInstallScript": true, - "bin": { - "esbuild": "bin/esbuild" - }, - "engines": { - "node": ">=18" - }, - "optionalDependencies": { - "@esbuild/aix-ppc64": "0.24.0", - "@esbuild/android-arm": "0.24.0", - "@esbuild/android-arm64": "0.24.0", - "@esbuild/android-x64": "0.24.0", - "@esbuild/darwin-arm64": "0.24.0", - "@esbuild/darwin-x64": "0.24.0", - "@esbuild/freebsd-arm64": "0.24.0", - "@esbuild/freebsd-x64": "0.24.0", - "@esbuild/linux-arm": "0.24.0", - "@esbuild/linux-arm64": "0.24.0", - "@esbuild/linux-ia32": "0.24.0", - "@esbuild/linux-loong64": "0.24.0", - "@esbuild/linux-mips64el": "0.24.0", - "@esbuild/linux-ppc64": "0.24.0", - "@esbuild/linux-riscv64": "0.24.0", - "@esbuild/linux-s390x": "0.24.0", - "@esbuild/linux-x64": "0.24.0", - "@esbuild/netbsd-x64": "0.24.0", - "@esbuild/openbsd-arm64": "0.24.0", - "@esbuild/openbsd-x64": "0.24.0", - "@esbuild/sunos-x64": "0.24.0", - "@esbuild/win32-arm64": "0.24.0", - "@esbuild/win32-ia32": "0.24.0", - "@esbuild/win32-x64": "0.24.0" - } - }, - "node_modules/tsup/node_modules/readdirp": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.0.2.tgz", - "integrity": "sha512-yDMz9g+VaZkqBYS/ozoBJwaBhTbZo3UNYQHNRw1D3UFQB8oHB4uS/tAODO+ZLjGWmUbKnIlOWO+aaIiAxrUWHA==", - "dev": true, - "engines": { - "node": ">= 14.16.0" - }, - "funding": { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/tsup/node_modules/source-map": { - "version": "0.8.0-beta.0", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.8.0-beta.0.tgz", - "integrity": "sha512-2ymg6oRBpebeZi9UUNsgQ89bhx01TcTkmNTGnNO88imTmbSgy4nfujrgVEFKWpMTEGA11EDkTt7mqObTPdigIA==", - "dev": true, - "license": "BSD-3-Clause", - "dependencies": { - "whatwg-url": "^7.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/tsutils": { - "version": "3.21.0", - "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", - "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", - "dev": true, - "license": "MIT", - "dependencies": { - "tslib": "^1.8.1" - }, - "engines": { - "node": ">= 6" - }, - "peerDependencies": { - "typescript": ">=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta" - } - }, - "node_modules/tsutils/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true, - "license": "0BSD" - }, - "node_modules/tsx": { - "version": "4.19.2", - "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.19.2.tgz", - "integrity": "sha512-pOUl6Vo2LUq/bSa8S5q7b91cgNSjctn9ugq/+Mvow99qW6x/UZYwzxy/3NmqoT66eHYfCVvFvACC58UBPFf28g==", - "dev": true, - "dependencies": { - "esbuild": "~0.23.0", - "get-tsconfig": "^4.7.5" - }, - "bin": { - "tsx": "dist/cli.mjs" - }, - "engines": { - "node": ">=18.0.0" - }, - "optionalDependencies": { - "fsevents": "~2.3.3" - } - }, - "node_modules/tsx/node_modules/fsevents": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", - "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", - "dev": true, - "hasInstallScript": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" - } - }, - "node_modules/tunnel": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/tunnel/-/tunnel-0.0.6.tgz", - "integrity": "sha512-1h/Lnq9yajKY2PEbBadPXj3VxsDDu844OnaAo52UVmIzIvwwtBPIuNvkjuzBlTWpfJyUbG3ez0KSBibQkj4ojg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.6.11 <=0.7.0 || >=0.7.3" - } - }, - "node_modules/turbo": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/turbo/-/turbo-2.3.2.tgz", - "integrity": "sha512-vCJPoy8/3KkqY3W0cX2nrwhmtBQSZhEyrVgeJ4NlEXwGxu5vNRQDyV6se5VVAQMwfBsBJswlo87B7ai7Dr1MpQ==", - "dev": true, - "bin": { - "turbo": "bin/turbo" - }, - "optionalDependencies": { - "turbo-darwin-64": "2.3.2", - "turbo-darwin-arm64": "2.3.2", - "turbo-linux-64": "2.3.2", - "turbo-linux-arm64": "2.3.2", - "turbo-windows-64": "2.3.2", - "turbo-windows-arm64": "2.3.2" - } - }, - "node_modules/turbo-darwin-64": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/turbo-darwin-64/-/turbo-darwin-64-2.3.2.tgz", - "integrity": "sha512-B1lS/UqjXNsG+kx1uzJNwXMuw2i5wavcyNy8opvSLjfuECdsqQU9B1wPqkSTU+mZjFTJcEfiGKyJ/I2EVk8vdw==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ] - }, - "node_modules/turbo-darwin-arm64": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/turbo-darwin-arm64/-/turbo-darwin-arm64-2.3.2.tgz", - "integrity": "sha512-XHeuEdk9tHaw2Bsr3rTzFtZyldeSyagDZkOSPIJ1zioavMjWEFPA75vdgy4j8ns96EBpZMaPXVEnODuEHfiZfQ==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ] - }, - "node_modules/turbo-linux-64": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/turbo-linux-64/-/turbo-linux-64-2.3.2.tgz", - "integrity": "sha512-oKDsO5+flqpPx5tNLFGVUYpJ/sBc3KvaGpyNzXl2u3epzyafgblFKWMG5YsSiU1ruouPpcC6YG5SN5chA7Abfg==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/turbo-linux-arm64": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/turbo-linux-arm64/-/turbo-linux-arm64-2.3.2.tgz", - "integrity": "sha512-luyvTl3wQ1hF+ljK7ljH4TL7rg4pmx5pQ2mzvfMvPo5eaLuKr/tImmbdH6/vr56iffUIISkIsLVhVxgZeAsUOw==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/turbo-windows-64": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/turbo-windows-64/-/turbo-windows-64-2.3.2.tgz", - "integrity": "sha512-yw7BnTU5cE7GdUnZEW3jIAI98hh4dcWk+Jwza8X7CXpxpill2zteq7VPf+a/B3o/xm+oVXzLmP83YP91Bm0SaA==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ] - }, - "node_modules/turbo-windows-arm64": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/turbo-windows-arm64/-/turbo-windows-arm64-2.3.2.tgz", - "integrity": "sha512-Hgp6V7jaIYlDcy5xpKN+XXyYCf5afT690GmXcEsMoUawd5dStvZe0QHWcGxuqho497BAlx0XGAWftm0KelNePA==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ] - }, - "node_modules/tv4": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/tv4/-/tv4-1.3.0.tgz", - "integrity": "sha512-afizzfpJgvPr+eDkREK4MxJ/+r8nEEHcmitwgnPUqpaP+FpwQyadnxNoSACbgc/b1LsZYtODGoPiFxQrgJgjvw==", - "dev": true, - "license": [ - { - "type": "Public Domain", - "url": "http://geraintluff.github.io/tv4/LICENSE.txt" - }, - { - "type": "MIT", - "url": "http://jsonary.com/LICENSE.txt" - } - ], - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/twoslash": { - "version": "0.2.12", - "resolved": "https://registry.npmjs.org/twoslash/-/twoslash-0.2.12.tgz", - "integrity": "sha512-tEHPASMqi7kqwfJbkk7hc/4EhlrKCSLcur+TcvYki3vhIfaRMXnXjaYFgXpoZRbT6GdprD4tGuVBEmTpUgLBsw==", - "license": "MIT", - "dependencies": { - "@typescript/vfs": "^1.6.0", - "twoslash-protocol": "0.2.12" - }, - "peerDependencies": { - "typescript": "*" - } - }, - "node_modules/twoslash-protocol": { - "version": "0.2.12", - "resolved": "https://registry.npmjs.org/twoslash-protocol/-/twoslash-protocol-0.2.12.tgz", - "integrity": "sha512-5qZLXVYfZ9ABdjqbvPc4RWMr7PrpPaaDSeaYY55vl/w1j6H6kzsWK/urAEIXlzYlyrFmyz1UbwIt+AA0ck+wbg==", - "license": "MIT" - }, - "node_modules/tx2": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/tx2/-/tx2-1.0.5.tgz", - "integrity": "sha512-sJ24w0y03Md/bxzK4FU8J8JveYYUbSs2FViLJ2D/8bytSiyPRbuE3DyL/9UKYXTZlV3yXq0L8GLlhobTnekCVg==", - "dev": true, - "license": "MIT", - "optional": true, - "dependencies": { - "json-stringify-safe": "^5.0.1" - } - }, - "node_modules/type-check": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", - "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", - "dev": true, - "license": "MIT", - "dependencies": { - "prelude-ls": "^1.2.1" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/type-fest": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", - "dev": true, - "license": "(MIT OR CC0-1.0)", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/typed-array-buffer": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.2.tgz", - "integrity": "sha512-gEymJYKZtKXzzBzM4jqa9w6Q1Jjm7x2d+sh19AdsD4wqnMPDYyvwpsIc2Q/835kHuo3BEQ7CjelGhfTsoBb2MQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.7", - "es-errors": "^1.3.0", - "is-typed-array": "^1.1.13" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/typed-array-byte-length": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.1.tgz", - "integrity": "sha512-3iMJ9q0ao7WE9tWcaYKIptkNBuOIcZCCT0d4MRvuuH88fEoEH62IuQe0OtraD3ebQEoTRk8XCBoknUNc1Y67pw==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.7", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-proto": "^1.0.3", - "is-typed-array": "^1.1.13" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/typed-array-byte-offset": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.2.tgz", - "integrity": "sha512-Ous0vodHa56FviZucS2E63zkgtgrACj7omjwd/8lTEMEPFFyjfixMZ1ZXenpgCFBBt4EC1J2XsyVS2gkG0eTFA==", - "dev": true, - "license": "MIT", - "dependencies": { - "available-typed-arrays": "^1.0.7", - "call-bind": "^1.0.7", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-proto": "^1.0.3", - "is-typed-array": "^1.1.13" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/typed-array-length": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.6.tgz", - "integrity": "sha512-/OxDN6OtAk5KBpGb28T+HZc2M+ADtvRxXrKKbUwtsLgdoxgX13hyy7ek6bFRl5+aBs2yZzB0c4CnQfAtVypW/g==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.7", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-proto": "^1.0.3", - "is-typed-array": "^1.1.13", - "possible-typed-array-names": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/typescript": { - "version": "5.7.2", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.7.2.tgz", - "integrity": "sha512-i5t66RHxDvVN40HfDd1PsEThGNnlMCMT3jMUuoh9/0TaqWevNontacunWyN02LA9/fIbEWlcHZcgTKb9QoaLfg==", - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" - }, - "engines": { - "node": ">=14.17" - } - }, - "node_modules/ufo": { - "version": "1.5.4", - "resolved": "https://registry.npmjs.org/ufo/-/ufo-1.5.4.tgz", - "integrity": "sha512-UsUk3byDzKd04EyoZ7U4DOlxQaD14JUKQl6/P7wiX4FNvUfm3XL246n9W5AmqwW5RSFJ27NAuM0iLscAOYUiGQ==", - "license": "MIT" - }, - "node_modules/unbox-primitive": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", - "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.2", - "has-bigints": "^1.0.2", - "has-symbols": "^1.0.3", - "which-boxed-primitive": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/undici": { - "version": "5.28.4", - "resolved": "https://registry.npmjs.org/undici/-/undici-5.28.4.tgz", - "integrity": "sha512-72RFADWFqKmUb2hmmvNODKL3p9hcB6Gt2DOQMis1SEBaV6a4MH8soBvzg+95CYhCKPFedut2JY9bMfrDl9D23g==", - "dev": true, - "license": "MIT", - "dependencies": { - "@fastify/busboy": "^2.0.0" - }, - "engines": { - "node": ">=14.0" - } - }, - "node_modules/undici-types": { - "version": "6.20.0", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.20.0.tgz", - "integrity": "sha512-Ny6QZ2Nju20vw1SRHe3d9jVu6gJ+4e3+MMpqu7pqE5HT6WsTSlce++GQmK5UXS8mzV8DSYHrQH+Xrf2jVcuKNg==", - "dev": true - }, - "node_modules/unified": { - "version": "11.0.5", - "resolved": "https://registry.npmjs.org/unified/-/unified-11.0.5.tgz", - "integrity": "sha512-xKvGhPWw3k84Qjh8bI3ZeJjqnyadK+GEFtazSfZv/rKeTkTjOJho6mFqh2SM96iIcZokxiOpg78GazTSg8+KHA==", - "license": "MIT", - "dependencies": { - "@types/unist": "^3.0.0", - "bail": "^2.0.0", - "devlop": "^1.0.0", - "extend": "^3.0.0", - "is-plain-obj": "^4.0.0", - "trough": "^2.0.0", - "vfile": "^6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unist-util-find-after": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/unist-util-find-after/-/unist-util-find-after-5.0.0.tgz", - "integrity": "sha512-amQa0Ep2m6hE2g72AugUItjbuM8X8cGQnFoHk0pGfrFeT9GZhzN5SW8nRsiGKK7Aif4CrACPENkA6P/Lw6fHGQ==", - "license": "MIT", - "dependencies": { - "@types/unist": "^3.0.0", - "unist-util-is": "^6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unist-util-is": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-6.0.0.tgz", - "integrity": "sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==", - "license": "MIT", - "dependencies": { - "@types/unist": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unist-util-modify-children": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/unist-util-modify-children/-/unist-util-modify-children-4.0.0.tgz", - "integrity": "sha512-+tdN5fGNddvsQdIzUF3Xx82CU9sMM+fA0dLgR9vOmT0oPT2jH+P1nd5lSqfCfXAw+93NhcXNY2qqvTUtE4cQkw==", - "license": "MIT", - "dependencies": { - "@types/unist": "^3.0.0", - "array-iterate": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unist-util-position": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/unist-util-position/-/unist-util-position-5.0.0.tgz", - "integrity": "sha512-fucsC7HjXvkB5R3kTCO7kUjRdrS0BJt3M/FPxmHMBOm8JQi2BsHAHFsy27E0EolP8rp0NzXsJ+jNPyDWvOJZPA==", - "license": "MIT", - "dependencies": { - "@types/unist": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unist-util-position-from-estree": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unist-util-position-from-estree/-/unist-util-position-from-estree-2.0.0.tgz", - "integrity": "sha512-KaFVRjoqLyF6YXCbVLNad/eS4+OfPQQn2yOd7zF/h5T/CSL2v8NpN6a5TPvtbXthAGw5nG+PuTtq+DdIZr+cRQ==", - "license": "MIT", - "dependencies": { - "@types/unist": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unist-util-remove": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/unist-util-remove/-/unist-util-remove-4.0.0.tgz", - "integrity": "sha512-b4gokeGId57UVRX/eVKej5gXqGlc9+trkORhFJpu9raqZkZhU0zm8Doi05+HaiBsMEIJowL+2WtQ5ItjsngPXg==", - "license": "MIT", - "dependencies": { - "@types/unist": "^3.0.0", - "unist-util-is": "^6.0.0", - "unist-util-visit-parents": "^6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unist-util-remove-position": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/unist-util-remove-position/-/unist-util-remove-position-5.0.0.tgz", - "integrity": "sha512-Hp5Kh3wLxv0PHj9m2yZhhLt58KzPtEYKQQ4yxfYFEO7EvHwzyDYnduhHnY1mDxoqr7VUwVuHXk9RXKIiYS1N8Q==", - "license": "MIT", - "dependencies": { - "@types/unist": "^3.0.0", - "unist-util-visit": "^5.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unist-util-stringify-position": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-4.0.0.tgz", - "integrity": "sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==", - "license": "MIT", - "dependencies": { - "@types/unist": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unist-util-visit": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-5.0.0.tgz", - "integrity": "sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==", - "license": "MIT", - "dependencies": { - "@types/unist": "^3.0.0", - "unist-util-is": "^6.0.0", - "unist-util-visit-parents": "^6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unist-util-visit-children": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/unist-util-visit-children/-/unist-util-visit-children-3.0.0.tgz", - "integrity": "sha512-RgmdTfSBOg04sdPcpTSD1jzoNBjt9a80/ZCzp5cI9n1qPzLZWF9YdvWGN2zmTumP1HWhXKdUWexjy/Wy/lJ7tA==", - "license": "MIT", - "dependencies": { - "@types/unist": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unist-util-visit-parents": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-6.0.1.tgz", - "integrity": "sha512-L/PqWzfTP9lzzEa6CKs0k2nARxTdZduw3zyh8d2NVBnsyvHjSX4TWse388YrrQKbvI8w20fGjGlhgT96WwKykw==", - "license": "MIT", - "dependencies": { - "@types/unist": "^3.0.0", - "unist-util-is": "^6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", - "license": "MIT", - "engines": { - "node": ">= 4.0.0" - } - }, - "node_modules/update-browserslist-db": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.1.tgz", - "integrity": "sha512-R8UzCaa9Az+38REPiJ1tXlImTJXlVfgHZsglwBD/k6nj76ctsH1E3q4doGrukiLQd3sGQYu56r5+lo5r94l29A==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "license": "MIT", - "dependencies": { - "escalade": "^3.2.0", - "picocolors": "^1.1.0" - }, - "bin": { - "update-browserslist-db": "cli.js" - }, - "peerDependencies": { - "browserslist": ">= 4.21.0" - } - }, - "node_modules/update-check": { - "version": "1.5.4", - "resolved": "https://registry.npmjs.org/update-check/-/update-check-1.5.4.tgz", - "integrity": "sha512-5YHsflzHP4t1G+8WGPlvKbJEbAJGCgw+Em+dGR1KmBUbr1J36SJBqlHLjR7oob7sco5hWHGQVcr9B2poIVDDTQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "registry-auth-token": "3.3.2", - "registry-url": "3.1.0" - } - }, - "node_modules/uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "punycode": "^2.1.0" - } - }, - "node_modules/uuid": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz", - "integrity": "sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==", - "funding": [ - "https://github.com/sponsors/broofa", - "https://github.com/sponsors/ctavan" - ], - "license": "MIT", - "bin": { - "uuid": "dist/bin/uuid" - } - }, - "node_modules/validate-npm-package-license": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" - } - }, - "node_modules/vary": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", - "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/vfile": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.3.tgz", - "integrity": "sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==", - "license": "MIT", - "dependencies": { - "@types/unist": "^3.0.0", - "vfile-message": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/vfile-location": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/vfile-location/-/vfile-location-5.0.3.tgz", - "integrity": "sha512-5yXvWDEgqeiYiBe1lbxYF7UMAIm/IcopxMHrMQDq3nvKcjPKIhZklUKL+AE7J7uApI4kwe2snsK+eI6UTj9EHg==", - "license": "MIT", - "dependencies": { - "@types/unist": "^3.0.0", - "vfile": "^6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/vfile-message": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-4.0.2.tgz", - "integrity": "sha512-jRDZ1IMLttGj41KcZvlrYAaI3CfqpLpfpf+Mfig13viT6NKvRzWZ+lXz0Y5D60w6uJIBAOGq9mSHf0gktF0duw==", - "license": "MIT", - "dependencies": { - "@types/unist": "^3.0.0", - "unist-util-stringify-position": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/vizion": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/vizion/-/vizion-2.2.1.tgz", - "integrity": "sha512-sfAcO2yeSU0CSPFI/DmZp3FsFE9T+8913nv1xWBOyzODv13fwkn6Vl7HqxGpkr9F608M+8SuFId3s+BlZqfXww==", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "async": "^2.6.3", - "git-node-fs": "^1.0.0", - "ini": "^1.3.5", - "js-git": "^0.7.8" - }, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/vizion/node_modules/async": { - "version": "2.6.4", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.4.tgz", - "integrity": "sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==", - "dev": true, - "license": "MIT", - "dependencies": { - "lodash": "^4.17.14" - } - }, - "node_modules/vscode-jsonrpc": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/vscode-jsonrpc/-/vscode-jsonrpc-8.2.0.tgz", - "integrity": "sha512-C+r0eKJUIfiDIfwJhria30+TYWPtuHJXHtI7J0YlOmKAo7ogxP20T0zxB7HZQIFhIyvoBPwWskjxrvAtfjyZfA==", - "license": "MIT", - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/vscode-languageserver": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/vscode-languageserver/-/vscode-languageserver-9.0.1.tgz", - "integrity": "sha512-woByF3PDpkHFUreUa7Hos7+pUWdeWMXRd26+ZX2A8cFx6v/JPTtd4/uN0/jB6XQHYaOlHbio03NTHCqrgG5n7g==", - "license": "MIT", - "dependencies": { - "vscode-languageserver-protocol": "3.17.5" - }, - "bin": { - "installServerIntoExtension": "bin/installServerIntoExtension" - } - }, - "node_modules/vscode-languageserver-protocol": { - "version": "3.17.5", - "resolved": "https://registry.npmjs.org/vscode-languageserver-protocol/-/vscode-languageserver-protocol-3.17.5.tgz", - "integrity": "sha512-mb1bvRJN8SVznADSGWM9u/b07H7Ecg0I3OgXDuLdn307rl/J3A9YD6/eYOssqhecL27hK1IPZAsaqh00i/Jljg==", - "license": "MIT", - "dependencies": { - "vscode-jsonrpc": "8.2.0", - "vscode-languageserver-types": "3.17.5" - } - }, - "node_modules/vscode-languageserver-textdocument": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/vscode-languageserver-textdocument/-/vscode-languageserver-textdocument-1.0.12.tgz", - "integrity": "sha512-cxWNPesCnQCcMPeenjKKsOCKQZ/L6Tv19DTRIGuLWe32lyzWhihGVJ/rcckZXJxfdKCFvRLS3fpBIsV/ZGX4zA==", - "license": "MIT" - }, - "node_modules/vscode-languageserver-types": { - "version": "3.17.5", - "resolved": "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.17.5.tgz", - "integrity": "sha512-Ld1VelNuX9pdF39h2Hgaeb5hEZM2Z3jUrrMgWQAu82jMtZp7p3vJT3BzToKtZI7NgQssZje5o0zryOrhQvzQAg==", - "license": "MIT" - }, - "node_modules/vscode-uri": { - "version": "3.0.8", - "resolved": "https://registry.npmjs.org/vscode-uri/-/vscode-uri-3.0.8.tgz", - "integrity": "sha512-AyFQ0EVmsOZOlAnxoFOGOq1SQDWAB7C6aqMGS23svWAllfOaxbuFvcT8D1i8z3Gyn8fraVeZNNmN6e9bxxXkKw==", - "license": "MIT" - }, - "node_modules/web-namespaces": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/web-namespaces/-/web-namespaces-2.0.1.tgz", - "integrity": "sha512-bKr1DkiNa2krS7qxNtdrtHAmzuYGFQLiQ13TsorsdT6ULTkPLKuu5+GsFpDlg6JFjUTwX2DyhMPG2be8uPrqsQ==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/webidl-conversions": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz", - "integrity": "sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==", - "dev": true, - "license": "BSD-2-Clause" - }, - "node_modules/whatwg-url": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-7.1.0.tgz", - "integrity": "sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg==", - "dev": true, - "license": "MIT", - "dependencies": { - "lodash.sortby": "^4.7.0", - "tr46": "^1.0.1", - "webidl-conversions": "^4.0.2" - } - }, - "node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "license": "ISC", - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/which-boxed-primitive": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", - "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", - "dev": true, - "license": "MIT", - "dependencies": { - "is-bigint": "^1.0.1", - "is-boolean-object": "^1.1.0", - "is-number-object": "^1.0.4", - "is-string": "^1.0.5", - "is-symbol": "^1.0.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/which-builtin-type": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/which-builtin-type/-/which-builtin-type-1.1.4.tgz", - "integrity": "sha512-bppkmBSsHFmIMSl8BO9TbsyzsvGjVoppt8xUiGzwiu/bhDCGxnpOKCxgqj6GuyHE0mINMDecBFPlOm2hzY084w==", - "dev": true, - "license": "MIT", - "dependencies": { - "function.prototype.name": "^1.1.6", - "has-tostringtag": "^1.0.2", - "is-async-function": "^2.0.0", - "is-date-object": "^1.0.5", - "is-finalizationregistry": "^1.0.2", - "is-generator-function": "^1.0.10", - "is-regex": "^1.1.4", - "is-weakref": "^1.0.2", - "isarray": "^2.0.5", - "which-boxed-primitive": "^1.0.2", - "which-collection": "^1.0.2", - "which-typed-array": "^1.1.15" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/which-collection": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.2.tgz", - "integrity": "sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==", - "dev": true, - "license": "MIT", - "dependencies": { - "is-map": "^2.0.3", - "is-set": "^2.0.3", - "is-weakmap": "^2.0.2", - "is-weakset": "^2.0.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/which-typed-array": { - "version": "1.1.15", - "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.15.tgz", - "integrity": "sha512-oV0jmFtUky6CXfkqehVvBP/LSWJ2sy4vWMioiENyJLePrBO/yKyV9OyJySfAKosh+RYkIl5zJCNZ8/4JncrpdA==", - "dev": true, - "license": "MIT", - "dependencies": { - "available-typed-arrays": "^1.0.7", - "call-bind": "^1.0.7", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-tostringtag": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/wicked-good-xpath": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/wicked-good-xpath/-/wicked-good-xpath-1.3.0.tgz", - "integrity": "sha512-Gd9+TUn5nXdwj/hFsPVx5cuHHiF5Bwuc30jZ4+ronF1qHK5O7HD0sgmXWSEgwKquT3ClLoKPVbO6qGwVwLzvAw==", - "license": "MIT" - }, - "node_modules/widest-line": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-4.0.1.tgz", - "integrity": "sha512-o0cyEG0e8GPzT4iGHphIOh0cJOV8fivsXxddQasHPHfoZf1ZexrfeA21w2NaEN1RHE+fXlfISmOE8R9N3u3Qig==", - "dev": true, - "license": "MIT", - "dependencies": { - "string-width": "^5.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/word-wrap": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", - "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/wrap-ansi": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", - "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^6.1.0", - "string-width": "^5.0.1", - "strip-ansi": "^7.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" - } - }, - "node_modules/wrap-ansi-cjs": { - "name": "wrap-ansi", - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" - } - }, - "node_modules/wrap-ansi-cjs/node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true, - "license": "MIT" - }, - "node_modules/wrap-ansi-cjs/node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "license": "MIT", - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/wrap-ansi/node_modules/ansi-regex": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.1.0.tgz", - "integrity": "sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/ansi-regex?sponsor=1" - } - }, - "node_modules/wrap-ansi/node_modules/ansi-styles": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", - "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/wrap-ansi/node_modules/strip-ansi": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", - "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-regex": "^6.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/strip-ansi?sponsor=1" - } - }, - "node_modules/wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", - "dev": true, - "license": "ISC" - }, - "node_modules/ws": { - "version": "7.5.10", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.10.tgz", - "integrity": "sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8.3.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": "^5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } - } - }, - "node_modules/xmldom-sre": { - "version": "0.1.31", - "resolved": "https://registry.npmjs.org/xmldom-sre/-/xmldom-sre-0.1.31.tgz", - "integrity": "sha512-f9s+fUkX04BxQf+7mMWAp5zk61pciie+fFLC9hX9UVvCeJQfNHRHXpeo5MPcR0EUf57PYLdt+ZO4f3Ipk2oZUw==", - "license": "(LGPL-2.0 or MIT)", - "engines": { - "node": ">=0.1" - } - }, - "node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "license": "ISC" - }, - "node_modules/yaml": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.6.0.tgz", - "integrity": "sha512-a6ae//JvKDEra2kdi1qzCyrJW/WZCgFi8ydDV+eXExl95t+5R+ijnqHJbz9tmMh8FUjx3iv2fCQ4dclAQlO2UQ==", - "license": "ISC", - "bin": { - "yaml": "bin.mjs" - }, - "engines": { - "node": ">= 14" - } - }, - "node_modules/yocto-queue": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", - "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/zod": { - "version": "3.23.8", - "resolved": "https://registry.npmjs.org/zod/-/zod-3.23.8.tgz", - "integrity": "sha512-XBx9AXhXktjUqnepgTiE5flcKIYWi/rme0Eaj+5Y0lftuGBq+jyRu/md4WnuxqgP1ubdpNCsYEYPxrzVHD8d6g==", - "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/colinhacks" - } - }, - "node_modules/zod-validation-error": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/zod-validation-error/-/zod-validation-error-3.4.0.tgz", - "integrity": "sha512-ZOPR9SVY6Pb2qqO5XHt+MkkTRxGXb4EVtnjc9JpXUOtUB1T9Ru7mZOT361AN3MsetVe7R0a1KZshJDZdgp9miQ==", - "license": "MIT", - "engines": { - "node": ">=18.0.0" - }, - "peerDependencies": { - "zod": "^3.18.0" - } - }, - "node_modules/zwitch": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/zwitch/-/zwitch-2.0.4.tgz", - "integrity": "sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "packages/cache-handler": { - "name": "@neshca/cache-handler", - "version": "1.9.0", - "license": "MIT", - "dependencies": { - "cluster-key-slot": "1.1.2", - "lru-cache": "10.4.3" - }, - "devDependencies": { - "@repo/next-common": "*", - "@repo/next-lru-cache": "*", - "@repo/typescript-config": "*", - "@types/node": "22.10.0", - "tsup": "8.3.5", - "tsx": "4.19.2", - "typescript": "5.7.2" - }, - "peerDependencies": { - "next": ">= 13.5.1 < 15", - "redis": ">= 4.6" - } - }, - "packages/json-replacer-reviver": { - "name": "@neshca/json-replacer-reviver", - "version": "1.1.3", - "license": "MIT", - "devDependencies": { - "@repo/typescript-config": "*", - "@types/node": "22.10.0", - "tsup": "8.3.5", - "tsx": "4.19.2", - "typescript": "5.7.2" - } - }, - "packages/server": { - "name": "@neshca/server", - "version": "1.1.2", - "license": "MIT", - "dependencies": { - "fastify": "5.1.0", - "pino": "9.5.0" - }, - "bin": { - "next-cache-server": "dist/server.js" - }, - "devDependencies": { - "@repo/next-common": "*", - "@repo/next-lru-cache": "*", - "@repo/typescript-config": "*", - "@types/node": "22.10.0", - "tsup": "8.3.5", - "tsx": "4.19.2", - "typescript": "5.7.2" - } - } - } -} diff --git a/package.json b/package.json index 0b3ad8a2..4b5c9156 100644 --- a/package.json +++ b/package.json @@ -1,51 +1,44 @@ { - "name": "neshca", - "version": "0.0.0", - "private": true, - "license": "MIT", - "workspaces": [ - "apps/*", - "packages/*", - "docs/cache-handler-docs", - "internal/*" - ], - "scripts": { - "build:docs": "turbo run build:docs --filter=@repo/cache-handler-docs", - "build:packages": "turbo run build --filter=!./apps/* --filter=!./docs/*", - "build:test-app": "turbo run build --filter=@repo/cache-testing", - "changeset": "changeset", - "ci:publish": "changeset publish", - "ci:version": "changeset version && npm run codestyle:fix", - "clean": "rimraf -g **/{node_modules,dist,.next,test-results,playwright-report}", - "codestyle:check": "biome check . && npm run eslint:check && npm run prettier:check", - "codestyle:fix": "biome check --write . && npm run eslint:fix && npm run prettier:fix", - "dev:docs": "turbo run dev:docs --filter=@repo/cache-handler-docs", - "dev:packages": "turbo run dev --filter=!@neshca/server", - "e2e": "turbo run e2e", - "eslint:check": "turbo run eslint:check", - "eslint:fix": "turbo run eslint:fix", - "prettier:check": "prettier --check **/*.{md,mdx,yml,json}", - "prettier:fix": "prettier --write **/*.{md,mdx,yml,json}", - "start:backend": "turbo run start --filter=@repo/backend", - "start:test-app": "turbo run start --filter=@repo/cache-testing", - "test": "turbo run test" - }, - "dependencies": { - "@changesets/cli": "2.27.10" - }, - "devDependencies": { - "@actions/core": "1.11.1", - "@biomejs/biome": "1.9.4", - "@repo/prettier-config": "*", - "@repo/typescript-config": "*", - "glob": "11.0.0", - "prettier": "3.4.1", - "rimraf": "6.0.1", - "turbo": "2.3.2" - }, - "packageManager": "npm@10.7.0", - "engines": { - "node": ">=20.9.0", - "npm": ">=10.1.0" - } + "name": "neshca", + "version": "0.0.0", + "private": true, + "license": "MIT", + "type": "module", + "scripts": { + "build:docs": "turbo run build:docs --filter=@repo/cache-handler-docs", + "build:packages": "turbo run build --filter=!./apps/* --filter=!./docs/*", + "build:test-app": "turbo run build --filter=@repo/cache-testing", + "changeset": "changeset", + "ci:publish": "changeset publish", + "ci:version": "changeset version && pnpm codestyle:fix", + "codestyle:check": "biome check . && pnpm prettier:check", + "codestyle:fix": "biome check --write . && pnpm prettier:fix", + "dev:docs": "turbo run dev:docs --filter=@repo/cache-handler-docs", + "dev:packages": "turbo run dev --filter=!@neshca/server", + "e2e": "turbo run e2e", + "eslint:check": "turbo run eslint:check", + "eslint:fix": "turbo run eslint:fix", + "prettier:check": "prettier --check **/*.{md,mdx,yml,json}", + "prettier:fix": "prettier --write **/*.{md,mdx,yml,json}", + "start:backend": "turbo run start --filter=@repo/backend", + "start:test-app": "turbo run start --filter=@repo/cache-testing", + "test": "turbo run test" + }, + "devDependencies": { + "@biomejs/biome": "1.9.4", + "@changesets/cli": "2.27.12", + "prettier": "3.4.2", + "prettier-plugin-packagejson": "2.5.8", + "turbo": "2.4.0" + }, + "packageManager": "pnpm@10.2.1+sha512.398035c7bd696d0ba0b10a688ed558285329d27ea994804a52bad9167d8e3a72bcb993f9699585d3ca25779ac64949ef422757a6c31102c12ab932e5cbe5cc92", + "engines": { + "node": ">=22.11.0" + }, + "pnpm": { + "onlyBuiltDependencies": [ + "@biomejs/biome", + "esbuild" + ] + } } diff --git a/packages/cache-handler/LICENSE b/packages/cache-handler/LICENSE index fbb67bf3..5b65b185 100644 --- a/packages/cache-handler/LICENSE +++ b/packages/cache-handler/LICENSE @@ -1,6 +1,6 @@ MIT License -Copyright (c) 2024 Arseny Kruglikov +Copyright (c) 2025 Arseny Kruglikov Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/packages/cache-handler/package.json b/packages/cache-handler/package.json index 4282a7b1..dbce7c73 100644 --- a/packages/cache-handler/package.json +++ b/packages/cache-handler/package.json @@ -1,102 +1,102 @@ { - "name": "@neshca/cache-handler", - "version": "1.9.0", - "description": "Next.js self-hosting simplified.", - "keywords": [ - "cache", - "isr", - "ssg", - "cache-handler", - "next", - "redis" - ], - "homepage": "https://github.com/caching-tools/next-shared-cache/tree/canary/packages/cache-handler", - "bugs": "https://github.com/caching-tools/next-shared-cache/issues", - "repository": { - "type": "git", - "url": "git+https://github.com/caching-tools/next-shared-cache.git" + "name": "@neshca/cache-handler", + "version": "1.9.0", + "description": "Next.js self-hosting simplified.", + "keywords": [ + "cache", + "isr", + "ssg", + "cache-handler", + "next", + "redis" + ], + "homepage": "https://github.com/caching-tools/next-shared-cache/tree/canary/packages/cache-handler", + "bugs": "https://github.com/caching-tools/next-shared-cache/issues", + "repository": { + "type": "git", + "url": "git+https://github.com/caching-tools/next-shared-cache.git" + }, + "license": "MIT", + "author": { + "name": "Arseny Kruglikov", + "email": "caching.tools@proton.me" + }, + "type": "module", + "exports": { + ".": { + "require": "./dist/cache-handler.cjs", + "import": "./dist/cache-handler.js" }, - "license": "MIT", - "author": { - "name": "Arseny Kruglikov", - "email": "caching.tools@proton.me" + "./helpers": { + "require": "./dist/helpers/helpers.cjs", + "import": "./dist/helpers/helpers.js" }, - "type": "module", - "exports": { - ".": { - "require": "./dist/cache-handler.cjs", - "import": "./dist/cache-handler.js" - }, - "./helpers": { - "require": "./dist/helpers/helpers.cjs", - "import": "./dist/helpers/helpers.js" - }, - "./functions": { - "require": "./dist/functions/functions.cjs", - "import": "./dist/functions/functions.js" - }, - "./instrumentation": { - "require": "./dist/instrumentation/instrumentation.cjs", - "import": "./dist/instrumentation/instrumentation.js" - }, - "./*": { - "require": "./dist/handlers/*.cjs", - "import": "./dist/handlers/*.js" - } + "./functions": { + "require": "./dist/functions/functions.cjs", + "import": "./dist/functions/functions.js" }, - "typesVersions": { - "*": { - "*": [ - "dist/cache-handler.d.ts" - ], - "helpers": [ - "dist/helpers/helpers.d.ts" - ], - "functions": [ - "dist/functions/functions.d.ts" - ], - "redis-stack": [ - "dist/handlers/redis-stack.d.ts" - ], - "redis-strings": [ - "dist/handlers/redis-strings.d.ts" - ], - "server": [ - "dist/handlers/server.d.ts" - ], - "local-lru": [ - "dist/handlers/local-lru.d.ts" - ], - "instrumentation": [ - "dist/instrumentation/instrumentation.d.ts" - ] - } + "./instrumentation": { + "require": "./dist/instrumentation/instrumentation.cjs", + "import": "./dist/instrumentation/instrumentation.js" }, - "scripts": { - "build": "tsup --dts-resolve", - "dev": "tsup --watch", - "test": "tsx --test src/**/*.test.ts", - "test:watch": "tsx --watch --test src/**/*.test.ts" - }, - "dependencies": { - "cluster-key-slot": "1.1.2", - "lru-cache": "10.4.3" - }, - "devDependencies": { - "@repo/next-common": "*", - "@repo/next-lru-cache": "*", - "@repo/typescript-config": "*", - "@types/node": "22.10.0", - "tsup": "8.3.5", - "tsx": "4.19.2", - "typescript": "5.7.2" - }, - "peerDependencies": { - "next": ">= 13.5.1 < 15", - "redis": ">= 4.6" - }, - "distTags": [ - "next13.5", - "next14" - ] + "./*": { + "require": "./dist/handlers/*.cjs", + "import": "./dist/handlers/*.js" + } + }, + "typesVersions": { + "*": { + "*": [ + "dist/cache-handler.d.ts" + ], + "helpers": [ + "dist/helpers/helpers.d.ts" + ], + "functions": [ + "dist/functions/functions.d.ts" + ], + "redis-stack": [ + "dist/handlers/redis-stack.d.ts" + ], + "redis-strings": [ + "dist/handlers/redis-strings.d.ts" + ], + "server": [ + "dist/handlers/server.d.ts" + ], + "local-lru": [ + "dist/handlers/local-lru.d.ts" + ], + "instrumentation": [ + "dist/instrumentation/instrumentation.d.ts" + ] + } + }, + "scripts": { + "build": "tsup --dts-resolve", + "dev": "tsup --watch", + "test": "tsx --test src/**/*.test.ts", + "test:watch": "tsx --watch --test src/**/*.test.ts" + }, + "dependencies": { + "cluster-key-slot": "1.1.2", + "lru-cache": "10.4.3" + }, + "devDependencies": { + "@repo/next-common": "workspace:*", + "@repo/next-lru-cache": "workspace:*", + "@repo/typescript-config": "workspace:*", + "@types/node": "22.13.1", + "tsup": "8.3.6", + "tsx": "4.19.2", + "typescript": "5.7.3" + }, + "peerDependencies": { + "next": ">= 13.5.1 < 15", + "redis": ">= 4.6" + }, + "distTags": [ + "next13.5", + "next14" + ] } diff --git a/packages/cache-handler/src/cache-handler.ts b/packages/cache-handler/src/cache-handler.ts index 4c49b0e5..60528f8c 100644 --- a/packages/cache-handler/src/cache-handler.ts +++ b/packages/cache-handler/src/cache-handler.ts @@ -2,16 +2,16 @@ import { promises as fsPromises } from 'node:fs'; import path from 'node:path'; import type { - CacheHandlerParametersGet, - CacheHandlerParametersRevalidateTag, - CacheHandlerParametersSet, - CacheHandlerValue, - FileSystemCacheContext, - IncrementalCachedPageValue, - LifespanParameters, - CacheHandler as NextCacheHandler, - PrerenderManifest, - Revalidate, + CacheHandlerParametersGet, + CacheHandlerParametersRevalidateTag, + CacheHandlerParametersSet, + CacheHandlerValue, + FileSystemCacheContext, + IncrementalCachedPageValue, + LifespanParameters, + CacheHandler as NextCacheHandler, + PrerenderManifest, + Revalidate, } from '@repo/next-common'; import { createValidatedAgeEstimationFunction } from './helpers/create-validated-age-estimation-function'; @@ -28,12 +28,12 @@ const PRERENDER_MANIFEST_VERSION = 4; * @since 1.1.0 */ type HandlerGetMeta = { - /** - * An array of tags that are implicitly associated with the cache entry. - * - * @since 1.1.0 - */ - implicitTags: string[]; + /** + * An array of tags that are implicitly associated with the cache entry. + * + * @since 1.1.0 + */ + implicitTags: string[]; }; /** @@ -42,109 +42,112 @@ type HandlerGetMeta = { * @since 1.0.0 */ export type Handler = { - /** - * A descriptive name for the cache Handler. - * - * @since 1.0.0 - */ - name: string; - /** - * Retrieves the value associated with the given key from the cache. - * - * @param key - The unique string identifier for the cache entry. - * - * @param meta - The metadata object for the `get` method. See {@link HandlerGetMeta}. - * - * @returns A Promise that resolves to the cached value (if found), `null` or `undefined` if the entry is not found. - * - * @example - * ### With auto expiration - * - * If your cache store supports time based key eviction, the `get` method is straightforward. - * - * ```js - * const handler = { - * async get(key) { - * const cacheValue = await cacheStore.get(key); - * - * if (!cacheValue) { - * return null; - * } - * - * return cacheValue; - * } - * } - * ``` - * - * ### Without auto expiration - * - * If your cache store does not support time based key eviction, - * you can implement the `delete` method to remove the cache entry when it becomes expired. - * - * ```js - * const handler = { - * async get(key) { - * const cacheValue = await cacheStore.get(key); - * - * if (!cacheValue) { - * return null; - * } - * - * return cacheValue; - * }, - * async delete(key) { - * await cacheStore.delete(key); - * } - * } - * ``` - * - * @since 1.0.0 - */ - get: (key: string, meta: HandlerGetMeta) => Promise; - /** - * Sets or updates a value in the cache store. - * - * @param key - The unique string identifier for the cache entry. - * - * @param value - The value to be stored in the cache. See {@link CacheHandlerValue}. - * - * @returns A Promise that resolves when the value has been successfully set in the cache. - * - * @remarks - * - * Read more about the `lifespan` parameter: {@link LifespanParameters}. - * - * ### LifespanParameters - * If no `revalidate` option or `revalidate: false` is set in your [`getStaticProps` ↗](https://nextjs.org/docs/pages/api-reference/functions/get-static-props#revalidate) - * the `lifespan` parameter will be `null` and you should consider the cache entry as always fresh and never stale. - * - * Use the absolute time (`expireAt`) to set and expiration time for the cache entry in your cache store to be in sync with the file system cache. - * - * @since 1.0.0 - */ - set: (key: string, value: CacheHandlerValue) => Promise; - /** - * Deletes all cache entries that are associated with the specified tag. - * See [fetch `options.next.tags` and `revalidateTag` ↗](https://nextjs.org/docs/app/building-your-application/caching#fetch-optionsnexttags-and-revalidatetag) - * - * @param tag - A string representing the cache tag associated with the data you want to revalidate. - * Must be less than or equal to 256 characters. This value is case-sensitive. - * - * @since 1.0.0 - */ - revalidateTag: (tag: string) => Promise; - /** - * Deletes the cache entry associated with the given key from the cache store. - * This method is optional and supposed to be used only when the cache store does not support time based key eviction. - * This method will be automatically called by the `CacheHandler` class when the retrieved cache entry is stale. - * - * @param key - The unique string identifier for the cache entry with prefix if present. - * - * @returns A Promise that resolves when the cache entry has been successfully deleted. - * - * @since 1.0.0 - */ - delete?: (key: string) => Promise; + /** + * A descriptive name for the cache Handler. + * + * @since 1.0.0 + */ + name: string; + /** + * Retrieves the value associated with the given key from the cache. + * + * @param key - The unique string identifier for the cache entry. + * + * @param meta - The metadata object for the `get` method. See {@link HandlerGetMeta}. + * + * @returns A Promise that resolves to the cached value (if found), `null` or `undefined` if the entry is not found. + * + * @example + * ### With auto expiration + * + * If your cache store supports time based key eviction, the `get` method is straightforward. + * + * ```js + * const handler = { + * async get(key) { + * const cacheValue = await cacheStore.get(key); + * + * if (!cacheValue) { + * return null; + * } + * + * return cacheValue; + * } + * } + * ``` + * + * ### Without auto expiration + * + * If your cache store does not support time based key eviction, + * you can implement the `delete` method to remove the cache entry when it becomes expired. + * + * ```js + * const handler = { + * async get(key) { + * const cacheValue = await cacheStore.get(key); + * + * if (!cacheValue) { + * return null; + * } + * + * return cacheValue; + * }, + * async delete(key) { + * await cacheStore.delete(key); + * } + * } + * ``` + * + * @since 1.0.0 + */ + get: ( + key: string, + meta: HandlerGetMeta, + ) => Promise; + /** + * Sets or updates a value in the cache store. + * + * @param key - The unique string identifier for the cache entry. + * + * @param value - The value to be stored in the cache. See {@link CacheHandlerValue}. + * + * @returns A Promise that resolves when the value has been successfully set in the cache. + * + * @remarks + * + * Read more about the `lifespan` parameter: {@link LifespanParameters}. + * + * ### LifespanParameters + * If no `revalidate` option or `revalidate: false` is set in your [`getStaticProps` ↗](https://nextjs.org/docs/pages/api-reference/functions/get-static-props#revalidate) + * the `lifespan` parameter will be `null` and you should consider the cache entry as always fresh and never stale. + * + * Use the absolute time (`expireAt`) to set and expiration time for the cache entry in your cache store to be in sync with the file system cache. + * + * @since 1.0.0 + */ + set: (key: string, value: CacheHandlerValue) => Promise; + /** + * Deletes all cache entries that are associated with the specified tag. + * See [fetch `options.next.tags` and `revalidateTag` ↗](https://nextjs.org/docs/app/building-your-application/caching#fetch-optionsnexttags-and-revalidatetag) + * + * @param tag - A string representing the cache tag associated with the data you want to revalidate. + * Must be less than or equal to 256 characters. This value is case-sensitive. + * + * @since 1.0.0 + */ + revalidateTag: (tag: string) => Promise; + /** + * Deletes the cache entry associated with the given key from the cache store. + * This method is optional and supposed to be used only when the cache store does not support time based key eviction. + * This method will be automatically called by the `CacheHandler` class when the retrieved cache entry is stale. + * + * @param key - The unique string identifier for the cache entry with prefix if present. + * + * @returns A Promise that resolves when the cache entry has been successfully deleted. + * + * @since 1.0.0 + */ + delete?: (key: string) => Promise; }; /** @@ -153,28 +156,28 @@ export type Handler = { * @since 1.0.0 */ export type TTLParameters = { - /** - * The time in seconds for when the cache entry becomes stale. - * - * @default 31536000 // 1 year - * - * @since 1.0.0 - */ - defaultStaleAge: number; - /** - * Estimates the expiration age based on the stale age. - * - * @param staleAge - The stale age in seconds. - * After the stale age, the cache entry is considered stale, can be served from the cache, and should be revalidated. - * Revalidation is handled by the `CacheHandler` class. - * - * @default (staleAge) => staleAge * 1.5 - * - * @returns The expiration age in seconds. - * - * @since 1.0.0 - */ - estimateExpireAge(staleAge: number): number; + /** + * The time in seconds for when the cache entry becomes stale. + * + * @default 31536000 // 1 year + * + * @since 1.0.0 + */ + defaultStaleAge: number; + /** + * Estimates the expiration age based on the stale age. + * + * @param staleAge - The stale age in seconds. + * After the stale age, the cache entry is considered stale, can be served from the cache, and should be revalidated. + * Revalidation is handled by the `CacheHandler` class. + * + * @default (staleAge) => staleAge * 1.5 + * + * @returns The expiration age in seconds. + * + * @since 1.0.0 + */ + estimateExpireAge(staleAge: number): number; }; /** @@ -183,19 +186,19 @@ export type TTLParameters = { * @since 1.0.0 */ export type CacheHandlerConfig = { - /** - * An array of cache instances that conform to the Handler interface. - * Multiple caches can be used to implement various caching strategies or layers. - * - * @since 1.0.0 - */ - handlers: (Handler | undefined | null)[]; - /** - * Time-to-live (TTL) options for the cache entries. - * - * @since 1.0.0 - */ - ttl?: Partial; + /** + * An array of cache instances that conform to the Handler interface. + * Multiple caches can be used to implement various caching strategies or layers. + * + * @since 1.0.0 + */ + handlers: (Handler | undefined | null)[]; + /** + * Time-to-live (TTL) options for the cache entries. + * + * @since 1.0.0 + */ + ttl?: Partial; }; /** @@ -204,54 +207,54 @@ export type CacheHandlerConfig = { * @since 1.0.0 */ export type CacheCreationContext = { - /** - * The absolute path to the Next.js server directory. - * - * @since 1.0.0 - */ - serverDistDir: string; - /** - * Indicates if the Next.js application is running in development mode. - * When in development mode, caching behavior might differ. - * - * @since 1.0.0 - */ - dev?: boolean; - /** - * The unique identifier for the current build of the Next.js application. - * This build ID is generated during the `next build` process and is used - * to ensure consistency across multiple instances of the application, - * especially when running in containerized environments. It helps in - * identifying which version of the application is being served. - * - * https://nextjs.org/docs/pages/building-your-application/deploying#build-cache - * - * @example - * ```js - * // cache-handler.mjs - * CacheHandler.onCreation(async ({ buildId }) => { - * let redisHandler; - * - * if (buildId) { - * await client.connect(); - * - * redisHandler = await createRedisHandler({ - * client, - * keyPrefix: `${buildId}:`, - * }); - * } - * - * const localHandler = createLruHandler(); - * - * return { - * handlers: [redisHandler, localHandler], - * }; - * }); - * ``` - * - * @since 1.0.0 - */ - buildId?: string; + /** + * The absolute path to the Next.js server directory. + * + * @since 1.0.0 + */ + serverDistDir: string; + /** + * Indicates if the Next.js application is running in development mode. + * When in development mode, caching behavior might differ. + * + * @since 1.0.0 + */ + dev?: boolean; + /** + * The unique identifier for the current build of the Next.js application. + * This build ID is generated during the `next build` process and is used + * to ensure consistency across multiple instances of the application, + * especially when running in containerized environments. It helps in + * identifying which version of the application is being served. + * + * https://nextjs.org/docs/pages/building-your-application/deploying#build-cache + * + * @example + * ```js + * // cache-handler.mjs + * CacheHandler.onCreation(async ({ buildId }) => { + * let redisHandler; + * + * if (buildId) { + * await client.connect(); + * + * redisHandler = await createRedisHandler({ + * client, + * keyPrefix: `${buildId}:`, + * }); + * } + * + * const localHandler = createLruHandler(); + * + * return { + * handlers: [redisHandler, localHandler], + * }; + * }); + * ``` + * + * @since 1.0.0 + */ + buildId?: string; }; /** @@ -265,7 +268,9 @@ export type CacheCreationContext = { * * @since 1.0.0 */ -export type OnCreationHook = (context: CacheCreationContext) => Promise | CacheHandlerConfig; +export type OnCreationHook = ( + context: CacheCreationContext, +) => Promise | CacheHandlerConfig; /** * Deletes an entry from all handlers. @@ -276,607 +281,689 @@ export type OnCreationHook = (context: CacheCreationContext) => Promise { - if (debug) { - console.info( - '[CacheHandler] [method: %s] [key: %s] %s', - 'delete', - key, - 'Started deleting entry from Handlers.', - ); - } - - const operationsResults = await Promise.allSettled(handlers.map((handler) => handler.delete?.(key))); - - if (!debug) { - return; +async function removeEntryFromHandlers( + handlers: Handler[], + key: string, + debug: boolean, +): Promise { + if (debug) { + console.info( + '[CacheHandler] [method: %s] [key: %s] %s', + 'delete', + key, + 'Started deleting entry from Handlers.', + ); + } + + const operationsResults = await Promise.allSettled( + handlers.map((handler) => handler.delete?.(key)), + ); + + if (!debug) { + return; + } + + operationsResults.forEach((handlerResult, index) => { + if (handlerResult.status === 'rejected') { + console.warn( + '[CacheHandler] [handler: %s] [method: %s] [key: %s] %s', + handlers[index]?.name ?? `unknown-${index}`, + 'delete', + key, + `Error: ${handlerResult.reason}`, + ); + } else { + console.info( + '[CacheHandler] [handler: %s] [method: %s] [key: %s] %s', + handlers[index]?.name ?? `unknown-${index}`, + 'delete', + key, + 'Successfully deleted value.', + ); } - - operationsResults.forEach((handlerResult, index) => { - if (handlerResult.status === 'rejected') { - console.warn( - '[CacheHandler] [handler: %s] [method: %s] [key: %s] %s', - handlers[index]?.name ?? `unknown-${index}`, - 'delete', - key, - `Error: ${handlerResult.reason}`, - ); - } else { - console.info( - '[CacheHandler] [handler: %s] [method: %s] [key: %s] %s', - handlers[index]?.name ?? `unknown-${index}`, - 'delete', - key, - 'Successfully deleted value.', - ); - } - }); + }); } export class CacheHandler implements NextCacheHandler { - /** - * Provides a descriptive name for the CacheHandler class. - * - * The name includes the number of handlers and whether file system caching is used. - * If the cache handler is not configured yet, it will return a string indicating so. - * - * This property is primarily intended for debugging purposes - * and its visibility is controlled by the `NEXT_PRIVATE_DEBUG_CACHE` environment variable. - * - * @returns A string describing the cache handler configuration. - * - * @example - * ```js - * // cache-handler.mjs - * CacheHandler.onCreation(async () => { - * const redisHandler = await createRedisHandler({ - * client, - * }); - * - * const localHandler = createLruHandler(); - * - * return { - * handlers: [redisHandler, localHandler], - * }; - * }); - * - * // after the Next.js called the onCreation hook - * console.log(CacheHandler.name); - * // Output: "@neshca/cache-handler with 2 Handlers" - * ``` - */ - static get name(): string { - if (CacheHandler.#cacheListLength === undefined) { - return '@neshca/cache-handler is not configured yet'; - } - - return `@neshca/cache-handler with ${CacheHandler.#cacheListLength} Handler${ - CacheHandler.#cacheListLength > 1 ? 's' : '' - }`; + /** + * Provides a descriptive name for the CacheHandler class. + * + * The name includes the number of handlers and whether file system caching is used. + * If the cache handler is not configured yet, it will return a string indicating so. + * + * This property is primarily intended for debugging purposes + * and its visibility is controlled by the `NEXT_PRIVATE_DEBUG_CACHE` environment variable. + * + * @returns A string describing the cache handler configuration. + * + * @example + * ```js + * // cache-handler.mjs + * CacheHandler.onCreation(async () => { + * const redisHandler = await createRedisHandler({ + * client, + * }); + * + * const localHandler = createLruHandler(); + * + * return { + * handlers: [redisHandler, localHandler], + * }; + * }); + * + * // after the Next.js called the onCreation hook + * console.log(CacheHandler.name); + * // Output: "@neshca/cache-handler with 2 Handlers" + * ``` + */ + static get name(): string { + if (CacheHandler.#cacheListLength === undefined) { + return '@neshca/cache-handler is not configured yet'; } - static #context: FileSystemCacheContext; + return `@neshca/cache-handler with ${CacheHandler.#cacheListLength} Handler${ + CacheHandler.#cacheListLength > 1 ? 's' : '' + }`; + } - static #mergedHandler: Omit; + static #context: FileSystemCacheContext; - static #cacheListLength: number; + static #mergedHandler: Omit; - static #debug = typeof process.env.NEXT_PRIVATE_DEBUG_CACHE !== 'undefined'; + static #cacheListLength: number; - // Default stale age is 1 year in seconds - static #defaultStaleAge = 60 * 60 * 24 * 365; + static #debug = typeof process.env.NEXT_PRIVATE_DEBUG_CACHE !== 'undefined'; - static #estimateExpireAge: (staleAge: number) => number; + // Default stale age is 1 year in seconds + static #defaultStaleAge = 60 * 60 * 24 * 365; - static #fallbackFalseRoutes = new Set(); + static #estimateExpireAge: (staleAge: number) => number; - static #onCreationHook: OnCreationHook; + static #fallbackFalseRoutes = new Set(); - static #serverDistDir: string; + static #onCreationHook: OnCreationHook; - static async #readPagesRouterPage(cacheKey: string): Promise { - let cacheHandlerValue: CacheHandlerValue | null = null; - let pageHtmlHandle: fsPromises.FileHandle | null = null; + static #serverDistDir: string; - if (CacheHandler.#debug) { - console.info( - '[CacheHandler] [handler: %s] [method: %s] [key: %s] %s', - 'file system', - 'get', - cacheKey, - 'Started retrieving value.', - ); - } + static async #readPagesRouterPage( + cacheKey: string, + ): Promise { + let cacheHandlerValue: CacheHandlerValue | null = null; + let pageHtmlHandle: fsPromises.FileHandle | null = null; - try { - const pageHtmlPath = path.join(CacheHandler.#serverDistDir, 'pages', `${cacheKey}.html`); - const pageDataPath = path.join(CacheHandler.#serverDistDir, 'pages', `${cacheKey}.json`); - - pageHtmlHandle = await fsPromises.open(pageHtmlPath, 'r'); - - const [pageHtmlFile, { mtimeMs }, pageData] = await Promise.all([ - pageHtmlHandle.readFile('utf-8'), - pageHtmlHandle.stat(), - fsPromises.readFile(pageDataPath, 'utf-8').then((data) => JSON.parse(data) as object), - ]); - - if (CacheHandler.#debug) { - console.info( - '[CacheHandler] [handler: %s] [method: %s] [key: %s] %s', - 'file system', - 'get', - cacheKey, - 'Successfully retrieved value.', - ); - } - - cacheHandlerValue = { - lastModified: mtimeMs, - lifespan: null, - tags: [], - value: { - kind: 'PAGE', - html: pageHtmlFile, - pageData, - postponed: undefined, - headers: undefined, - status: undefined, - }, - }; - } catch (error) { - cacheHandlerValue = null; - - if (CacheHandler.#debug) { - console.warn( - '[CacheHandler] [handler: %s] [method: %s] [key: %s] %s', - 'file system', - 'get', - cacheKey, - `Error: ${error}`, - ); - } - } finally { - await pageHtmlHandle?.close(); - } + if (CacheHandler.#debug) { + console.info( + '[CacheHandler] [handler: %s] [method: %s] [key: %s] %s', + 'file system', + 'get', + cacheKey, + 'Started retrieving value.', + ); + } - return cacheHandlerValue; + try { + const pageHtmlPath = path.join( + CacheHandler.#serverDistDir, + 'pages', + `${cacheKey}.html`, + ); + const pageDataPath = path.join( + CacheHandler.#serverDistDir, + 'pages', + `${cacheKey}.json`, + ); + + pageHtmlHandle = await fsPromises.open(pageHtmlPath, 'r'); + + const [pageHtmlFile, { mtimeMs }, pageData] = await Promise.all([ + pageHtmlHandle.readFile('utf-8'), + pageHtmlHandle.stat(), + fsPromises + .readFile(pageDataPath, 'utf-8') + .then((data) => JSON.parse(data) as object), + ]); + + if (CacheHandler.#debug) { + console.info( + '[CacheHandler] [handler: %s] [method: %s] [key: %s] %s', + 'file system', + 'get', + cacheKey, + 'Successfully retrieved value.', + ); + } + + cacheHandlerValue = { + lastModified: mtimeMs, + lifespan: null, + tags: [], + value: { + kind: 'PAGE', + html: pageHtmlFile, + pageData, + postponed: undefined, + headers: undefined, + status: undefined, + }, + }; + } catch (error) { + cacheHandlerValue = null; + + if (CacheHandler.#debug) { + console.warn( + '[CacheHandler] [handler: %s] [method: %s] [key: %s] %s', + 'file system', + 'get', + cacheKey, + `Error: ${error}`, + ); + } + } finally { + await pageHtmlHandle?.close(); } - static async #writePagesRouterPage(cacheKey: string, pageData: IncrementalCachedPageValue): Promise { - try { - const pageHtmlPath = path.join(CacheHandler.#serverDistDir, 'pages', `${cacheKey}.html`); - const pageDataPath = path.join(CacheHandler.#serverDistDir, 'pages', `${cacheKey}.json`); + return cacheHandlerValue; + } + + static async #writePagesRouterPage( + cacheKey: string, + pageData: IncrementalCachedPageValue, + ): Promise { + try { + const pageHtmlPath = path.join( + CacheHandler.#serverDistDir, + 'pages', + `${cacheKey}.html`, + ); + const pageDataPath = path.join( + CacheHandler.#serverDistDir, + 'pages', + `${cacheKey}.json`, + ); + + await fsPromises.mkdir(path.dirname(pageHtmlPath), { + recursive: true, + }); + + await Promise.all([ + fsPromises.writeFile(pageHtmlPath, pageData.html), + fsPromises.writeFile(pageDataPath, JSON.stringify(pageData.pageData)), + ]); + + if (CacheHandler.#debug) { + console.info( + '[CacheHandler] [handler: %s] [method: %s] [key: %s] %s', + 'file system', + 'set', + cacheKey, + 'Successfully set value.', + ); + } + } catch (error) { + if (CacheHandler.#debug) { + console.warn( + '[CacheHandler] [handler: %s] [method: %s] [key: %s] %s', + 'file system', + 'set', + cacheKey, + `Error: ${error}`, + ); + } + } + } + + /** + * Returns the cache control parameters based on the last modified timestamp and revalidate option. + * + * @param lastModified - The last modified timestamp in milliseconds. + * + * @param revalidate - The revalidate option, representing the maximum age of stale data in seconds. + * + * @returns The cache control parameters including expire age, expire at, last modified at, stale age, stale at and revalidate. + * + * @remarks + * - `lastModifiedAt` is the Unix timestamp (in seconds) for when the cache entry was last modified. + * - `staleAge` is the time in seconds which equals to the `revalidate` option from Next.js pages. + * If page has no `revalidate` option, it will be set to 1 year. + * - `expireAge` is the time in seconds for when the cache entry becomes expired. + * - `staleAt` is the Unix timestamp (in seconds) for when the cache entry becomes stale. + * - `expireAt` is the Unix timestamp (in seconds) for when the cache entry must be removed from the cache. + * - `revalidate` is the value from Next.js revalidate option. + * May be false if the page has no revalidate option or the revalidate option is set to false. + */ + static #getLifespanParameters( + lastModified: number, + revalidate?: Revalidate, + ): LifespanParameters { + const lastModifiedAt = Math.floor(lastModified / 1000); + const staleAge = revalidate || CacheHandler.#defaultStaleAge; + const staleAt = lastModifiedAt + staleAge; + const expireAge = CacheHandler.#estimateExpireAge(staleAge); + const expireAt = lastModifiedAt + expireAge; + + return { + expireAge, + expireAt, + lastModifiedAt, + revalidate, + staleAge, + staleAt, + }; + } + + /** + * Registers a hook to be called during the creation of an CacheHandler instance. + * This method allows for custom cache configurations to be applied at the time of cache instantiation. + * + * The provided {@link OnCreationHook} function can perform initialization tasks, modify cache settings, + * or integrate additional logic into the cache creation process. This function can either return a {@link CacheHandlerConfig} + * object directly for synchronous operations, or a `Promise` that resolves to a {@link CacheHandlerConfig} for asynchronous operations. + * + * Usage of this method is typically for advanced scenarios where default caching behavior needs to be altered + * or extended based on specific application requirements or environmental conditions. + * + * @param onCreationHook - The {@link OnCreationHook} function to be called during cache creation. + * + * @since 1.0.0 + */ + static onCreation(onCreationHook: OnCreationHook): void { + CacheHandler.#onCreationHook = onCreationHook; + } + + static async #configureCacheHandler(): Promise { + if (CacheHandler.#mergedHandler) { + if (CacheHandler.#debug) { + console.info( + '[CacheHandler] %s', + 'Using existing CacheHandler configuration.', + ); + } + return; + } - await fsPromises.mkdir(path.dirname(pageHtmlPath), { recursive: true }); + if (CacheHandler.#debug) { + console.info( + '[CacheHandler] %s', + 'Creating new CacheHandler configuration.', + ); + } - await Promise.all([ - fsPromises.writeFile(pageHtmlPath, pageData.html), - fsPromises.writeFile(pageDataPath, JSON.stringify(pageData.pageData)), - ]); + const { serverDistDir, dev } = CacheHandler.#context; - if (CacheHandler.#debug) { - console.info( - '[CacheHandler] [handler: %s] [method: %s] [key: %s] %s', - 'file system', - 'set', - cacheKey, - 'Successfully set value.', - ); - } - } catch (error) { - if (CacheHandler.#debug) { - console.warn( - '[CacheHandler] [handler: %s] [method: %s] [key: %s] %s', - 'file system', - 'set', - cacheKey, - `Error: ${error}`, - ); - } - } - } + let buildId: string | undefined; - /** - * Returns the cache control parameters based on the last modified timestamp and revalidate option. - * - * @param lastModified - The last modified timestamp in milliseconds. - * - * @param revalidate - The revalidate option, representing the maximum age of stale data in seconds. - * - * @returns The cache control parameters including expire age, expire at, last modified at, stale age, stale at and revalidate. - * - * @remarks - * - `lastModifiedAt` is the Unix timestamp (in seconds) for when the cache entry was last modified. - * - `staleAge` is the time in seconds which equals to the `revalidate` option from Next.js pages. - * If page has no `revalidate` option, it will be set to 1 year. - * - `expireAge` is the time in seconds for when the cache entry becomes expired. - * - `staleAt` is the Unix timestamp (in seconds) for when the cache entry becomes stale. - * - `expireAt` is the Unix timestamp (in seconds) for when the cache entry must be removed from the cache. - * - `revalidate` is the value from Next.js revalidate option. - * May be false if the page has no revalidate option or the revalidate option is set to false. - */ - static #getLifespanParameters(lastModified: number, revalidate?: Revalidate): LifespanParameters { - const lastModifiedAt = Math.floor(lastModified / 1000); - const staleAge = revalidate || CacheHandler.#defaultStaleAge; - const staleAt = lastModifiedAt + staleAge; - const expireAge = CacheHandler.#estimateExpireAge(staleAge); - const expireAt = lastModifiedAt + expireAge; - - return { expireAge, expireAt, lastModifiedAt, revalidate, staleAge, staleAt }; + try { + buildId = await fsPromises.readFile( + path.join(serverDistDir, '..', 'BUILD_ID'), + 'utf-8', + ); + } catch (_error) { + buildId = undefined; } + // Retrieve cache configuration by invoking the onCreation hook with the provided context + const config = CacheHandler.#onCreationHook({ + serverDistDir, + dev, + buildId, + }); - /** - * Registers a hook to be called during the creation of an CacheHandler instance. - * This method allows for custom cache configurations to be applied at the time of cache instantiation. - * - * The provided {@link OnCreationHook} function can perform initialization tasks, modify cache settings, - * or integrate additional logic into the cache creation process. This function can either return a {@link CacheHandlerConfig} - * object directly for synchronous operations, or a `Promise` that resolves to a {@link CacheHandlerConfig} for asynchronous operations. - * - * Usage of this method is typically for advanced scenarios where default caching behavior needs to be altered - * or extended based on specific application requirements or environmental conditions. - * - * @param onCreationHook - The {@link OnCreationHook} function to be called during cache creation. - * - * @since 1.0.0 - */ - static onCreation(onCreationHook: OnCreationHook): void { - CacheHandler.#onCreationHook = onCreationHook; + if (CacheHandler.#debug) { + console.info( + '[CacheHandler] %s', + 'Cache configuration retrieved from onCreation hook.', + ); } - static async #configureCacheHandler(): Promise { - if (CacheHandler.#mergedHandler) { - if (CacheHandler.#debug) { - console.info('[CacheHandler] %s', 'Using existing CacheHandler configuration.'); - } - return; - } + // Wait for the cache configuration to be resolved + const { handlers, ttl = {} } = await config; - if (CacheHandler.#debug) { - console.info('[CacheHandler] %s', 'Creating new CacheHandler configuration.'); - } + const { defaultStaleAge, estimateExpireAge } = ttl; - const { serverDistDir, dev } = CacheHandler.#context; + if (typeof defaultStaleAge === 'number') { + CacheHandler.#defaultStaleAge = Math.floor(defaultStaleAge); + } - let buildId: string | undefined; + CacheHandler.#estimateExpireAge = + createValidatedAgeEstimationFunction(estimateExpireAge); - try { - buildId = await fsPromises.readFile(path.join(serverDistDir, '..', 'BUILD_ID'), 'utf-8'); - } catch (_error) { - buildId = undefined; - } - // Retrieve cache configuration by invoking the onCreation hook with the provided context - const config = CacheHandler.#onCreationHook({ serverDistDir, dev, buildId }); + CacheHandler.#serverDistDir = serverDistDir; - if (CacheHandler.#debug) { - console.info('[CacheHandler] %s', 'Cache configuration retrieved from onCreation hook.'); - } + // Notify the user that the cache is not used in development mode + if (dev) { + console.warn( + '[CacheHandler] %s', + 'Next.js does not use the cache in development mode. Use production mode to enable caching.', + ); + } - // Wait for the cache configuration to be resolved - const { handlers, ttl = {} } = await config; + try { + const prerenderManifestData = await fsPromises.readFile( + path.join(serverDistDir, '..', 'prerender-manifest.json'), + 'utf-8', + ); - const { defaultStaleAge, estimateExpireAge } = ttl; + const prerenderManifest = JSON.parse( + prerenderManifestData, + ) as PrerenderManifest; - if (typeof defaultStaleAge === 'number') { - CacheHandler.#defaultStaleAge = Math.floor(defaultStaleAge); + if (prerenderManifest.version !== PRERENDER_MANIFEST_VERSION) { + throw new Error( + `Invalid prerender manifest version. Expected version ${PRERENDER_MANIFEST_VERSION}. Please check if the Next.js version is compatible with the CacheHandler version.`, + ); + } + + for (const [route, { srcRoute, dataRoute }] of Object.entries( + prerenderManifest.routes, + )) { + const isPagesRouter = dataRoute?.endsWith('.json'); + + if ( + isPagesRouter && + prerenderManifest.dynamicRoutes[srcRoute || '']?.fallback === false + ) { + CacheHandler.#fallbackFalseRoutes.add(route); } + } + } catch (_error) { + if (CacheHandler.#debug) { + console.warn( + '[CacheHandler] [%s] %s %s', + 'instrumentation.cache', + 'Failed to read prerender manifest. Pages from the Pages Router with `fallback: false` will return 404 errors.', + `Error: ${_error}`, + ); + } + } - CacheHandler.#estimateExpireAge = createValidatedAgeEstimationFunction(estimateExpireAge); - - CacheHandler.#serverDistDir = serverDistDir; + const handlersList: Handler[] = handlers.filter((handler) => !!handler); - // Notify the user that the cache is not used in development mode - if (dev) { - console.warn( - '[CacheHandler] %s', - 'Next.js does not use the cache in development mode. Use production mode to enable caching.', - ); - } + CacheHandler.#cacheListLength = handlersList.length; - try { - const prerenderManifestData = await fsPromises.readFile( - path.join(serverDistDir, '..', 'prerender-manifest.json'), - 'utf-8', + CacheHandler.#mergedHandler = { + async get(key, meta) { + for (const handler of handlersList) { + if (CacheHandler.#debug) { + console.info( + '[CacheHandler] [handler: %s] [method: %s] [key: %s] %s', + handler.name, + 'get', + key, + 'Started retrieving value.', ); + } - const prerenderManifest = JSON.parse(prerenderManifestData) as PrerenderManifest; + try { + let cacheHandlerValue = await handler.get(key, meta); - if (prerenderManifest.version !== PRERENDER_MANIFEST_VERSION) { - throw new Error( - `Invalid prerender manifest version. Expected version ${PRERENDER_MANIFEST_VERSION}. Please check if the Next.js version is compatible with the CacheHandler version.`, + if ( + cacheHandlerValue?.lifespan && + cacheHandlerValue.lifespan.expireAt < + Math.floor(Date.now() / 1000) + ) { + if (CacheHandler.#debug) { + console.info( + '[CacheHandler] [handler: %s] [method: %s] [key: %s] %s', + handler.name, + 'get', + key, + 'Entry expired.', ); - } + } - for (const [route, { srcRoute, dataRoute }] of Object.entries(prerenderManifest.routes)) { - const isPagesRouter = dataRoute?.endsWith('.json'); + cacheHandlerValue = null; - if (isPagesRouter && prerenderManifest.dynamicRoutes[srcRoute || '']?.fallback === false) { - CacheHandler.#fallbackFalseRoutes.add(route); - } + // remove the entry from all handlers in background + removeEntryFromHandlers(handlersList, key, CacheHandler.#debug); } - } catch (_error) { + + if (cacheHandlerValue && CacheHandler.#debug) { + console.info( + '[CacheHandler] [handler: %s] [method: %s] [key: %s] %s', + handler.name, + 'get', + key, + 'Successfully retrieved value.', + ); + } + + return cacheHandlerValue; + } catch (error) { if (CacheHandler.#debug) { - console.warn( - '[CacheHandler] [%s] %s %s', - 'instrumentation.cache', - 'Failed to read prerender manifest. Pages from the Pages Router with `fallback: false` will return 404 errors.', - `Error: ${_error}`, - ); + console.warn( + '[CacheHandler] [handler: %s] [method: %s] [key: %s] %s', + handler.name, + 'get', + key, + `Error: ${error}`, + ); } + } } - const handlersList: Handler[] = handlers.filter((handler) => !!handler); - - CacheHandler.#cacheListLength = handlersList.length; - - CacheHandler.#mergedHandler = { - async get(key, meta) { - for (const handler of handlersList) { - if (CacheHandler.#debug) { - console.info( - '[CacheHandler] [handler: %s] [method: %s] [key: %s] %s', - handler.name, - 'get', - key, - 'Started retrieving value.', - ); - } - - try { - let cacheHandlerValue = await handler.get(key, meta); - - if ( - cacheHandlerValue?.lifespan && - cacheHandlerValue.lifespan.expireAt < Math.floor(Date.now() / 1000) - ) { - if (CacheHandler.#debug) { - console.info( - '[CacheHandler] [handler: %s] [method: %s] [key: %s] %s', - handler.name, - 'get', - key, - 'Entry expired.', - ); - } - - cacheHandlerValue = null; - - // remove the entry from all handlers in background - removeEntryFromHandlers(handlersList, key, CacheHandler.#debug); - } - - if (cacheHandlerValue && CacheHandler.#debug) { - console.info( - '[CacheHandler] [handler: %s] [method: %s] [key: %s] %s', - handler.name, - 'get', - key, - 'Successfully retrieved value.', - ); - } - - return cacheHandlerValue; - } catch (error) { - if (CacheHandler.#debug) { - console.warn( - '[CacheHandler] [handler: %s] [method: %s] [key: %s] %s', - handler.name, - 'get', - key, - `Error: ${error}`, - ); - } - } - } - - return null; - }, - async set(key, cacheHandlerValue) { - const operationsResults = await Promise.allSettled( - handlersList.map((handler) => handler.set(key, { ...cacheHandlerValue })), - ); - - if (!CacheHandler.#debug) { - return; - } - - operationsResults.forEach((handlerResult, index) => { - if (handlerResult.status === 'rejected') { - console.warn( - '[CacheHandler] [handler: %s] [method: %s] [key: %s] %s', - handlersList[index]?.name ?? `unknown-${index}`, - 'set', - key, - `Error: ${handlerResult.reason}`, - ); - } else { - console.info( - '[CacheHandler] [handler: %s] [method: %s] [key: %s] %s', - handlersList[index]?.name ?? `unknown-${index}`, - 'set', - key, - 'Successfully set value.', - ); - } - }); - }, - async revalidateTag(tag) { - const operationsResults = await Promise.allSettled( - handlersList.map((handler) => handler.revalidateTag(tag)), - ); + return null; + }, + async set(key, cacheHandlerValue) { + const operationsResults = await Promise.allSettled( + handlersList.map((handler) => + handler.set(key, { ...cacheHandlerValue }), + ), + ); - if (!CacheHandler.#debug) { - return; - } - - operationsResults.forEach((handlerResult, index) => { - if (handlerResult.status === 'rejected') { - console.warn( - '[CacheHandler] [handler: %s] [method: %s] [tag: %s] %s', - handlersList[index]?.name ?? `unknown-${index}`, - 'revalidateTag', - tag, - `Error: ${handlerResult.reason}`, - ); - } else { - console.info( - '[CacheHandler] [handler: %s] [method: %s] [tag: %s] %s', - handlersList[index]?.name ?? `unknown-${index}`, - 'revalidateTag', - tag, - 'Successfully revalidated tag.', - ); - } - }); - }, - }; + if (!CacheHandler.#debug) { + return; + } - if (CacheHandler.#debug) { + operationsResults.forEach((handlerResult, index) => { + if (handlerResult.status === 'rejected') { + console.warn( + '[CacheHandler] [handler: %s] [method: %s] [key: %s] %s', + handlersList[index]?.name ?? `unknown-${index}`, + 'set', + key, + `Error: ${handlerResult.reason}`, + ); + } else { console.info( - '[CacheHandler] [handlers: [%s]] %s', - handlersList.map((handler) => handler.name).join(', '), - 'Successfully created CacheHandler configuration.', + '[CacheHandler] [handler: %s] [method: %s] [key: %s] %s', + handlersList[index]?.name ?? `unknown-${index}`, + 'set', + key, + 'Successfully set value.', ); - } - } - - /** - * Creates a new CacheHandler instance. Constructor is intended for internal use only. - */ - constructor(context: FileSystemCacheContext) { - CacheHandler.#context = context; + } + }); + }, + async revalidateTag(tag) { + const operationsResults = await Promise.allSettled( + handlersList.map((handler) => handler.revalidateTag(tag)), + ); - if (CacheHandler.#debug) { - console.info('[CacheHandler] %s', 'Instance created with provided context.'); + if (!CacheHandler.#debug) { + return; } - } - - async get( - cacheKey: CacheHandlerParametersGet[0], - ctx: CacheHandlerParametersGet[1] = {}, - ): Promise { - await CacheHandler.#configureCacheHandler(); - const { softTags = [] } = ctx; - - if (CacheHandler.#debug) { + operationsResults.forEach((handlerResult, index) => { + if (handlerResult.status === 'rejected') { + console.warn( + '[CacheHandler] [handler: %s] [method: %s] [tag: %s] %s', + handlersList[index]?.name ?? `unknown-${index}`, + 'revalidateTag', + tag, + `Error: ${handlerResult.reason}`, + ); + } else { console.info( - '[CacheHandler] [method: %s] [key: %s] %s', - 'get', - cacheKey, - 'Started retrieving value in order.', + '[CacheHandler] [handler: %s] [method: %s] [tag: %s] %s', + handlersList[index]?.name ?? `unknown-${index}`, + 'revalidateTag', + tag, + 'Successfully revalidated tag.', ); - } - - let cachedData: CacheHandlerValue | null | undefined = await CacheHandler.#mergedHandler.get(cacheKey, { - implicitTags: softTags, + } }); - - if (cachedData?.value?.kind === 'ROUTE') { - cachedData.value.body = Buffer.from(cachedData.value.body as unknown as string, 'base64'); - } - - if (!cachedData && CacheHandler.#fallbackFalseRoutes.has(cacheKey)) { - cachedData = await CacheHandler.#readPagesRouterPage(cacheKey); - - // if we have a value from the file system, we should set it to the cache store - if (cachedData) { - await CacheHandler.#mergedHandler.set(cacheKey, cachedData); - } - } - - return cachedData ?? null; + }, + }; + + if (CacheHandler.#debug) { + console.info( + '[CacheHandler] [handlers: [%s]] %s', + handlersList.map((handler) => handler.name).join(', '), + 'Successfully created CacheHandler configuration.', + ); + } + } + + /** + * Creates a new CacheHandler instance. Constructor is intended for internal use only. + */ + constructor(context: FileSystemCacheContext) { + CacheHandler.#context = context; + + if (CacheHandler.#debug) { + console.info( + '[CacheHandler] %s', + 'Instance created with provided context.', + ); + } + } + + async get( + cacheKey: CacheHandlerParametersGet[0], + ctx: CacheHandlerParametersGet[1] = {}, + ): Promise { + await CacheHandler.#configureCacheHandler(); + + const { softTags = [] } = ctx; + + if (CacheHandler.#debug) { + console.info( + '[CacheHandler] [method: %s] [key: %s] %s', + 'get', + cacheKey, + 'Started retrieving value in order.', + ); } - async set( - cacheKey: CacheHandlerParametersSet[0], - incrementalCacheValue: CacheHandlerParametersSet[1], - ctx: CacheHandlerParametersSet[2] & { neshca_lastModified?: number }, - ): Promise { - await CacheHandler.#configureCacheHandler(); + let cachedData: CacheHandlerValue | null | undefined = + await CacheHandler.#mergedHandler.get(cacheKey, { + implicitTags: softTags, + }); - if (CacheHandler.#debug) { - console.info( - '[CacheHandler] [method: %s] [key: %s] %s', - 'set', - cacheKey, - 'Started setting value in parallel.', - ); - } + if (cachedData?.value?.kind === 'ROUTE') { + cachedData.value.body = Buffer.from( + cachedData.value.body as unknown as string, + 'base64', + ); + } - const { revalidate, tags = [], neshca_lastModified } = ctx; + if (!cachedData && CacheHandler.#fallbackFalseRoutes.has(cacheKey)) { + cachedData = await CacheHandler.#readPagesRouterPage(cacheKey); - const lastModified = Math.round(neshca_lastModified ?? Date.now()); + // if we have a value from the file system, we should set it to the cache store + if (cachedData) { + await CacheHandler.#mergedHandler.set(cacheKey, cachedData); + } + } - const hasFallbackFalse = CacheHandler.#fallbackFalseRoutes.has(cacheKey); + return cachedData ?? null; + } + + async set( + cacheKey: CacheHandlerParametersSet[0], + incrementalCacheValue: CacheHandlerParametersSet[1], + ctx: CacheHandlerParametersSet[2] & { neshca_lastModified?: number }, + ): Promise { + await CacheHandler.#configureCacheHandler(); + + if (CacheHandler.#debug) { + console.info( + '[CacheHandler] [method: %s] [key: %s] %s', + 'set', + cacheKey, + 'Started setting value in parallel.', + ); + } - const lifespan = hasFallbackFalse ? null : CacheHandler.#getLifespanParameters(lastModified, revalidate); + const { revalidate, tags = [], neshca_lastModified } = ctx; - // If expireAt is in the past, do not cache - if (lifespan !== null && Date.now() > lifespan.expireAt * 1000) { - return; - } + const lastModified = Math.round(neshca_lastModified ?? Date.now()); - let cacheHandlerValueTags = tags; + const hasFallbackFalse = CacheHandler.#fallbackFalseRoutes.has(cacheKey); - let value = incrementalCacheValue; + const lifespan = hasFallbackFalse + ? null + : CacheHandler.#getLifespanParameters(lastModified, revalidate); - switch (value?.kind) { - case 'PAGE': { - cacheHandlerValueTags = getTagsFromHeaders(value.headers ?? {}); - break; - } - case 'ROUTE': { - // create a new object to avoid mutating the original value - value = { - // replace the body with a base64 encoded string to save space - body: value.body.toString('base64') as unknown as Buffer, - headers: value.headers, - kind: value.kind, - status: value.status, - }; - - break; - } - default: { - break; - } - } + // If expireAt is in the past, do not cache + if (lifespan !== null && Date.now() > lifespan.expireAt * 1000) { + return; + } - const cacheHandlerValue: CacheHandlerValue = { - lastModified, - lifespan, - tags: Object.freeze(cacheHandlerValueTags), - value, + let cacheHandlerValueTags = tags; + + let value = incrementalCacheValue; + + switch (value?.kind) { + case 'PAGE': { + cacheHandlerValueTags = getTagsFromHeaders(value.headers ?? {}); + break; + } + case 'ROUTE': { + // create a new object to avoid mutating the original value + value = { + // replace the body with a base64 encoded string to save space + body: value.body.toString('base64') as unknown as Buffer, + headers: value.headers, + kind: value.kind, + status: value.status, }; - await CacheHandler.#mergedHandler.set(cacheKey, cacheHandlerValue); - - if (hasFallbackFalse && cacheHandlerValue.value?.kind === 'PAGE') { - await CacheHandler.#writePagesRouterPage(cacheKey, cacheHandlerValue.value); - } + break; + } + default: { + break; + } } - async revalidateTag(tag: CacheHandlerParametersRevalidateTag[0]): Promise { - await CacheHandler.#configureCacheHandler(); - - const tags = typeof tag === 'string' ? [tag] : tag; + const cacheHandlerValue: CacheHandlerValue = { + lastModified, + lifespan, + tags: Object.freeze(cacheHandlerValueTags), + value, + }; - if (CacheHandler.#debug) { - console.info( - '[CacheHandler] [method: %s] [tags: [%s]] %s', - 'revalidateTag', - tags.join(', '), - 'Started revalidating tag in parallel.', - ); - } + await CacheHandler.#mergedHandler.set(cacheKey, cacheHandlerValue); - for (const tag of tags) { - await CacheHandler.#mergedHandler.revalidateTag(tag); - } + if (hasFallbackFalse && cacheHandlerValue.value?.kind === 'PAGE') { + await CacheHandler.#writePagesRouterPage( + cacheKey, + cacheHandlerValue.value, + ); + } + } + + async revalidateTag( + tag: CacheHandlerParametersRevalidateTag[0], + ): Promise { + await CacheHandler.#configureCacheHandler(); + + const tags = typeof tag === 'string' ? [tag] : tag; + + if (CacheHandler.#debug) { + console.info( + '[CacheHandler] [method: %s] [tags: [%s]] %s', + 'revalidateTag', + tags.join(', '), + 'Started revalidating tag in parallel.', + ); } - resetRequestCache(): void { - // not implemented yet + for (const tag of tags) { + await CacheHandler.#mergedHandler.revalidateTag(tag); } + } + + resetRequestCache(): void { + // not implemented yet + } } diff --git a/packages/cache-handler/src/common-types.ts b/packages/cache-handler/src/common-types.ts index cdd32742..2b63fe1e 100644 --- a/packages/cache-handler/src/common-types.ts +++ b/packages/cache-handler/src/common-types.ts @@ -7,49 +7,52 @@ export type RedisJSON = Parameters['2']; * * @since 1.0.0 */ -export type CreateRedisStackHandlerOptions> = { - /** - * The Redis client instance. - * - * @since 1.0.0 - */ - client: T; - /** - * Optional. Prefix for all keys, useful for namespacing. - * - * @default '' // empty string - * - * @since 1.0.0 - */ - keyPrefix?: string; - /** - * Optional. Timeout in milliseconds for Redis operations. - * - * @default 5000 // 5000 ms - * - * @since 1.0.0 - * - * @remarks - * To disable timeout of Redis operations, set this option to 0. - */ - timeoutMs?: number; - /** - * Optional. The number of tags in a single query retrieved from Redis when scanning or searching for tags. - * - * @default 100 // 100 tags - * - * @since 1.4.0 - * - * @remarks - * You can adjust this value to optimize the number of commands sent to Redis when scanning or searching for tags. - * A higher value will reduce the number of commands sent to Redis, - * but it will also increase the amount of data transferred over the network. - * Redis uses TCP and typically has 65,535 bytes as the maximum size of a packet (it can be lower depending on MTU). - */ - revalidateTagQuerySize?: number; +export type CreateRedisStackHandlerOptions< + T = ReturnType, +> = { + /** + * The Redis client instance. + * + * @since 1.0.0 + */ + client: T; + /** + * Optional. Prefix for all keys, useful for namespacing. + * + * @default '' // empty string + * + * @since 1.0.0 + */ + keyPrefix?: string; + /** + * Optional. Timeout in milliseconds for Redis operations. + * + * @default 5000 // 5000 ms + * + * @since 1.0.0 + * + * @remarks + * To disable timeout of Redis operations, set this option to 0. + */ + timeoutMs?: number; + /** + * Optional. The number of tags in a single query retrieved from Redis when scanning or searching for tags. + * + * @default 100 // 100 tags + * + * @since 1.4.0 + * + * @remarks + * You can adjust this value to optimize the number of commands sent to Redis when scanning or searching for tags. + * A higher value will reduce the number of commands sent to Redis, + * but it will also increase the amount of data transferred over the network. + * Redis uses TCP and typically has 65,535 bytes as the maximum size of a packet (it can be lower depending on MTU). + */ + revalidateTagQuerySize?: number; }; -export type CreateRedisStringsHandlerOptions = CreateRedisStackHandlerOptions & { +export type CreateRedisStringsHandlerOptions = + CreateRedisStackHandlerOptions & { /** * Optional. Key for storing cache tags. * @@ -75,4 +78,4 @@ export type CreateRedisStringsHandlerOptions = CreateRedisStackHandlerOptions & * - The `'EXAT'` strategy requires Redis server 6.2.0 or newer. */ keyExpirationStrategy?: 'EXAT' | 'EXPIREAT'; -}; + }; diff --git a/packages/cache-handler/src/functions/nesh-cache.ts b/packages/cache-handler/src/functions/nesh-cache.ts index b108639e..8d9ddee2 100644 --- a/packages/cache-handler/src/functions/nesh-cache.ts +++ b/packages/cache-handler/src/functions/nesh-cache.ts @@ -1,67 +1,71 @@ import assert from 'node:assert/strict'; -import { type IncrementalCacheEntry, NEXT_CACHE_IMPLICIT_TAG_ID, type Revalidate } from '@repo/next-common'; import { - type StaticGenerationStore, - staticGenerationAsyncStorage, + type IncrementalCacheEntry, + NEXT_CACHE_IMPLICIT_TAG_ID, + type Revalidate, +} from '@repo/next-common'; +import { + type StaticGenerationStore, + staticGenerationAsyncStorage, } from 'next/dist/client/components/static-generation-async-storage.external.js'; import { TIME_ONE_YEAR } from '../constants'; function getDerivedTags(pathname: string): string[] { - const derivedTags: string[] = ['/layout']; + const derivedTags: string[] = ['/layout']; - if (!pathname.startsWith('/')) { - return derivedTags; - } + if (!pathname.startsWith('/')) { + return derivedTags; + } - const pathnameParts = pathname.split('/'); + const pathnameParts = pathname.split('/'); - for (let i = 1; i < pathnameParts.length + 1; i++) { - let curPathname = pathnameParts.slice(0, i).join('/'); + for (let i = 1; i < pathnameParts.length + 1; i++) { + let curPathname = pathnameParts.slice(0, i).join('/'); - if (curPathname) { - if (!(curPathname.endsWith('/page') || curPathname.endsWith('/route'))) { - curPathname = `${curPathname}${curPathname.endsWith('/') ? '' : '/'}layout`; - } + if (curPathname) { + if (!(curPathname.endsWith('/page') || curPathname.endsWith('/route'))) { + curPathname = `${curPathname}${curPathname.endsWith('/') ? '' : '/'}layout`; + } - derivedTags.push(curPathname); - } + derivedTags.push(curPathname); } + } - return derivedTags; + return derivedTags; } function addImplicitTags(staticGenerationStore: StaticGenerationStore) { - const newTags: string[] = []; + const newTags: string[] = []; - const { pagePath, urlPathname } = staticGenerationStore; + const { pagePath, urlPathname } = staticGenerationStore; - if (!Array.isArray(staticGenerationStore.tags)) { - staticGenerationStore.tags = []; - } + if (!Array.isArray(staticGenerationStore.tags)) { + staticGenerationStore.tags = []; + } - if (pagePath) { - const derivedTags = getDerivedTags(pagePath); + if (pagePath) { + const derivedTags = getDerivedTags(pagePath); - for (let tag of derivedTags) { - tag = `${NEXT_CACHE_IMPLICIT_TAG_ID}${tag}`; - if (!staticGenerationStore.tags?.includes(tag)) { - staticGenerationStore.tags.push(tag); - } - newTags.push(tag); - } + for (let tag of derivedTags) { + tag = `${NEXT_CACHE_IMPLICIT_TAG_ID}${tag}`; + if (!staticGenerationStore.tags?.includes(tag)) { + staticGenerationStore.tags.push(tag); + } + newTags.push(tag); } + } - if (urlPathname) { - const parsedPathname = new URL(urlPathname, 'http://n').pathname; + if (urlPathname) { + const parsedPathname = new URL(urlPathname, 'http://n').pathname; - const tag = `${NEXT_CACHE_IMPLICIT_TAG_ID}${parsedPathname}`; - if (!staticGenerationStore.tags?.includes(tag)) { - staticGenerationStore.tags.push(tag); - } - newTags.push(tag); + const tag = `${NEXT_CACHE_IMPLICIT_TAG_ID}${parsedPathname}`; + if (!staticGenerationStore.tags?.includes(tag)) { + staticGenerationStore.tags.push(tag); } + newTags.push(tag); + } - return newTags; + return newTags; } /** @@ -72,7 +76,7 @@ function addImplicitTags(staticGenerationStore: StaticGenerationStore) { * @returns The serialized string representation of the arguments. */ function serializeArguments(object: object): string { - return JSON.stringify(object); + return JSON.stringify(object); } /** @@ -83,7 +87,7 @@ function serializeArguments(object: object): string { * @returns The serialized string representation of the object. */ function serializeResult(object: object): string { - return Buffer.from(JSON.stringify(object), 'utf-8').toString('base64'); + return Buffer.from(JSON.stringify(object), 'utf-8').toString('base64'); } /** @@ -94,7 +98,7 @@ function serializeResult(object: object): string { * @returns The deserialized object. */ function deserializeResult(string: string): T { - return JSON.parse(Buffer.from(string, 'base64').toString('utf-8')); + return JSON.parse(Buffer.from(string, 'base64').toString('utf-8')); } /** @@ -102,62 +106,64 @@ function deserializeResult(string: string): T { * * @template Result - The type of the value returned by the callback function. */ -type Callback = (...args: Arguments) => Result; +type Callback = ( + ...args: Arguments +) => Result; /** * An object containing options for the cache. */ type NeshCacheOptions = { - /** - * An array of tags to associate with the cached result. - * Tags are used to revalidate the cache using the `revalidateTag` function. - */ - tags?: string[]; - /** - * The revalidation interval in seconds. - * Must be a positive integer or `false` to disable revalidation. - * - * @default revalidate // of the current route - */ - revalidate?: Revalidate; - /** - * A custom cache key to be used instead of creating one from the arguments. - */ - cacheKey?: string; - /** - * A function that serializes the arguments passed to the callback function. - * Use it to create a cache key. - * - * @default (args) => JSON.stringify(args) - * - * @param callbackArguments - The arguments passed to the callback function. - */ - argumentsSerializer?(callbackArguments: Arguments): string; - /** - * - * A function that serializes the result of the callback function. - * - * @default (result) => Buffer.from(JSON.stringify(result)).toString('base64') - * - * @param result - The result of the callback function. - */ - resultSerializer?(result: Result): string; - /** - * A function that deserializes the string representation of the result of the callback function. - * - * @default (string) => JSON.parse(Buffer.from(string, 'base64').toString('utf-8')) - * - * @param string - The string representation of the result of the callback function. - */ - resultDeserializer?(string: string): Result; + /** + * An array of tags to associate with the cached result. + * Tags are used to revalidate the cache using the `revalidateTag` function. + */ + tags?: string[]; + /** + * The revalidation interval in seconds. + * Must be a positive integer or `false` to disable revalidation. + * + * @default revalidate // of the current route + */ + revalidate?: Revalidate; + /** + * A custom cache key to be used instead of creating one from the arguments. + */ + cacheKey?: string; + /** + * A function that serializes the arguments passed to the callback function. + * Use it to create a cache key. + * + * @default (args) => JSON.stringify(args) + * + * @param callbackArguments - The arguments passed to the callback function. + */ + argumentsSerializer?(callbackArguments: Arguments): string; + /** + * + * A function that serializes the result of the callback function. + * + * @default (result) => Buffer.from(JSON.stringify(result)).toString('base64') + * + * @param result - The result of the callback function. + */ + resultSerializer?(result: Result): string; + /** + * A function that deserializes the string representation of the result of the callback function. + * + * @default (string) => JSON.parse(Buffer.from(string, 'base64').toString('utf-8')) + * + * @param string - The string representation of the result of the callback function. + */ + resultDeserializer?(string: string): Result; }; /** * An object containing common options for the cache. */ type CommonNeshCacheOptions = Omit< - NeshCacheOptions, - 'cacheKey' + NeshCacheOptions, + 'cacheKey' >; /** @@ -199,133 +205,160 @@ type CommonNeshCacheOptions = Omit< * * @since 1.2.0 */ -export function neshCache>( - callback: Callback, - commonOptions?: CommonNeshCacheOptions, +export function neshCache< + Arguments extends unknown[], + Result extends Promise, +>( + callback: Callback, + commonOptions?: CommonNeshCacheOptions, ) { - if (commonOptions?.resultSerializer && !commonOptions?.resultDeserializer) { - throw new Error('neshCache: if you provide a resultSerializer, you must provide a resultDeserializer.'); + if (commonOptions?.resultSerializer && !commonOptions?.resultDeserializer) { + throw new Error( + 'neshCache: if you provide a resultSerializer, you must provide a resultDeserializer.', + ); + } + + if (commonOptions?.resultDeserializer && !commonOptions?.resultSerializer) { + throw new Error( + 'neshCache: if you provide a resultDeserializer, you must provide a resultSerializer.', + ); + } + + const commonTags = commonOptions?.tags ?? []; + const commonRevalidate = commonOptions?.revalidate ?? false; + const commonArgumentsSerializer = + commonOptions?.argumentsSerializer ?? serializeArguments; + const commonResultSerializer = + commonOptions?.resultSerializer ?? serializeResult; + const commonResultDeserializer = + commonOptions?.resultDeserializer ?? deserializeResult; + + async function cachedCallback( + options: NeshCacheOptions, + ...args: Arguments + ): Promise { + const store = staticGenerationAsyncStorage.getStore(); + + assert( + store?.incrementalCache, + 'neshCache must be used in a Next.js app directory.', + ); + + const { + tags = [], + revalidate = commonRevalidate, + cacheKey, + argumentsSerializer = commonArgumentsSerializer, + resultDeserializer = commonResultDeserializer, + resultSerializer = commonResultSerializer, + } = options ?? {}; + + assert( + revalidate === false || (revalidate > 0 && Number.isInteger(revalidate)), + 'neshCache: revalidate must be a positive integer or false.', + ); + + if ( + store.fetchCache === 'force-no-store' || + store.isDraftMode || + store.incrementalCache.dev + ) { + return await callback(...args); } - if (commonOptions?.resultDeserializer && !commonOptions?.resultSerializer) { - throw new Error('neshCache: if you provide a resultDeserializer, you must provide a resultSerializer.'); - } + const uniqueTags = new Set(store.tags); - const commonTags = commonOptions?.tags ?? []; - const commonRevalidate = commonOptions?.revalidate ?? false; - const commonArgumentsSerializer = commonOptions?.argumentsSerializer ?? serializeArguments; - const commonResultSerializer = commonOptions?.resultSerializer ?? serializeResult; - const commonResultDeserializer = commonOptions?.resultDeserializer ?? deserializeResult; - - async function cachedCallback( - options: NeshCacheOptions, - ...args: Arguments - ): Promise { - const store = staticGenerationAsyncStorage.getStore(); - - assert(store?.incrementalCache, 'neshCache must be used in a Next.js app directory.'); - - const { - tags = [], - revalidate = commonRevalidate, - cacheKey, - argumentsSerializer = commonArgumentsSerializer, - resultDeserializer = commonResultDeserializer, - resultSerializer = commonResultSerializer, - } = options ?? {}; - - assert( - revalidate === false || (revalidate > 0 && Number.isInteger(revalidate)), - 'neshCache: revalidate must be a positive integer or false.', - ); + const combinedTags = [...tags, ...commonTags]; - if (store.fetchCache === 'force-no-store' || store.isDraftMode || store.incrementalCache.dev) { - return await callback(...args); - } - - const uniqueTags = new Set(store.tags); - - const combinedTags = [...tags, ...commonTags]; - - for (const tag of combinedTags) { - if (typeof tag === 'string') { - uniqueTags.add(tag); - } else { - console.warn(`neshCache: Invalid tag: ${tag}. Skipping it. Expected a string.`); - } - } - - const allTags = Array.from(uniqueTags); - - // TODO: Find out why this is necessary - store.tags = allTags; - store.revalidate = revalidate; - const fetchIdx = store.nextFetchId ?? 1; - store.nextFetchId = fetchIdx + 1; - - const key = await store.incrementalCache.fetchCacheKey(`nesh-cache-${cacheKey ?? argumentsSerializer(args)}`); - - const handleUnlock = await store.incrementalCache.lock(key); - - let cacheData: IncrementalCacheEntry | null = null; - - try { - cacheData = await store.incrementalCache.get(key, { - revalidate, - tags: allTags, - softTags: addImplicitTags(store), - kindHint: 'fetch', - fetchIdx, - fetchUrl: 'neshCache', - }); - } catch (error) { - await handleUnlock(); - - throw error; - } - - if (cacheData?.value?.kind === 'FETCH' && cacheData.isStale === false) { - await handleUnlock(); - - return resultDeserializer(cacheData.value.data.body); - } - - let data: Result; - - try { - data = await staticGenerationAsyncStorage.run( - { - ...store, - // force any nested fetches to bypass cache so they revalidate - // when the unstable_cache call is revalidated - fetchCache: 'force-no-store', - }, - callback, - ...args, - ); - } catch (error) { - // biome-ignore lint/complexity/noUselessCatch: we need to rethrow the error - throw error; - } finally { - await handleUnlock(); - } - - store.incrementalCache.set( - key, - { - kind: 'FETCH', - data: { - body: resultSerializer(data), - headers: {}, - url: 'neshCache', - }, - revalidate: revalidate || TIME_ONE_YEAR, - }, - { revalidate, tags, fetchCache: true, fetchIdx, fetchUrl: 'neshCache' }, + for (const tag of combinedTags) { + if (typeof tag === 'string') { + uniqueTags.add(tag); + } else { + console.warn( + `neshCache: Invalid tag: ${tag}. Skipping it. Expected a string.`, ); + } + } + + const allTags = Array.from(uniqueTags); + + // TODO: Find out why this is necessary + store.tags = allTags; + store.revalidate = revalidate; + const fetchIdx = store.nextFetchId ?? 1; + store.nextFetchId = fetchIdx + 1; + + const key = await store.incrementalCache.fetchCacheKey( + `nesh-cache-${cacheKey ?? argumentsSerializer(args)}`, + ); + + const handleUnlock = await store.incrementalCache.lock(key); + + let cacheData: IncrementalCacheEntry | null = null; + + try { + cacheData = await store.incrementalCache.get(key, { + revalidate, + tags: allTags, + softTags: addImplicitTags(store), + kindHint: 'fetch', + fetchIdx, + fetchUrl: 'neshCache', + }); + } catch (error) { + await handleUnlock(); + + throw error; + } + + if (cacheData?.value?.kind === 'FETCH' && cacheData.isStale === false) { + await handleUnlock(); + + return resultDeserializer(cacheData.value.data.body); + } - return data; + let data: Result; + + try { + data = await staticGenerationAsyncStorage.run( + { + ...store, + // force any nested fetches to bypass cache so they revalidate + // when the unstable_cache call is revalidated + fetchCache: 'force-no-store', + }, + callback, + ...args, + ); + } catch (error) { + // biome-ignore lint/complexity/noUselessCatch: we need to rethrow the error + throw error; + } finally { + await handleUnlock(); } - return cachedCallback; + store.incrementalCache.set( + key, + { + kind: 'FETCH', + data: { + body: resultSerializer(data), + headers: {}, + url: 'neshCache', + }, + revalidate: revalidate || TIME_ONE_YEAR, + }, + { + revalidate, + tags, + fetchCache: true, + fetchIdx, + fetchUrl: 'neshCache', + }, + ); + + return data; + } + + return cachedCallback; } diff --git a/packages/cache-handler/src/functions/nesh-classic-cache.ts b/packages/cache-handler/src/functions/nesh-classic-cache.ts index b8ef0c7a..a802b180 100644 --- a/packages/cache-handler/src/functions/nesh-classic-cache.ts +++ b/packages/cache-handler/src/functions/nesh-classic-cache.ts @@ -7,17 +7,17 @@ import type { CacheHandler } from '../cache-handler'; import { TIME_ONE_YEAR } from '../constants'; declare global { - var __incrementalCache: IncrementalCache | undefined; + var __incrementalCache: IncrementalCache | undefined; } function hashCacheKey(url: string): string { - // this should be bumped anytime a fix is made to cache entries - // that should bust the cache - const MAIN_KEY_PREFIX = 'nesh-pages-cache-v1'; + // this should be bumped anytime a fix is made to cache entries + // that should bust the cache + const MAIN_KEY_PREFIX = 'nesh-pages-cache-v1'; - const cacheString = JSON.stringify([MAIN_KEY_PREFIX, url]); + const cacheString = JSON.stringify([MAIN_KEY_PREFIX, url]); - return createHash('sha256').update(cacheString).digest('hex'); + return createHash('sha256').update(cacheString).digest('hex'); } /** @@ -28,7 +28,7 @@ function hashCacheKey(url: string): string { * @returns The serialized string representation of the arguments. */ function serializeArguments(object: object): string { - return JSON.stringify(object); + return JSON.stringify(object); } /** @@ -39,7 +39,7 @@ function serializeArguments(object: object): string { * @returns The serialized string representation of the object. */ function serializeResult(object: object): string { - return Buffer.from(JSON.stringify(object), 'utf-8').toString('base64'); + return Buffer.from(JSON.stringify(object), 'utf-8').toString('base64'); } /** @@ -50,7 +50,7 @@ function serializeResult(object: object): string { * @returns The deserialized object. */ function deserializeResult(string: string): T { - return JSON.parse(Buffer.from(string, 'base64').toString('utf-8')); + return JSON.parse(Buffer.from(string, 'base64').toString('utf-8')); } /** @@ -58,69 +58,74 @@ function deserializeResult(string: string): T { * * @template Result - The type of the value returned by the callback function. */ -type Callback = (...args: Arguments) => Result; +type Callback = ( + ...args: Arguments +) => Result; /** * An object containing options for the cache. */ type NeshClassicCacheOptions = { - /** - * The response context object. - * It is used to set the cache headers. - */ - responseContext?: object & { - setHeader(name: string, value: number | string | readonly string[]): unknown; - }; - /** - * An array of tags to associate with the cached result. - * Tags are used to revalidate the cache using the `revalidateTag` function. - */ - tags?: string[]; - /** - * The revalidation interval in seconds. - * Must be a positive integer or `false` to disable revalidation. - * - * @default revalidate // of the current route - */ - revalidate?: Revalidate; - /** - * A custom cache key to be used instead of creating one from the arguments. - */ - cacheKey?: string; - /** - * A function that serializes the arguments passed to the callback function. - * Use it to create a cache key. - * - * @default (args) => JSON.stringify(args) - * - * @param callbackArguments - The arguments passed to the callback function. - */ - argumentsSerializer?(callbackArguments: Arguments): string; - /** - * - * A function that serializes the result of the callback function. - * - * @default (result) => Buffer.from(JSON.stringify(result)).toString('base64') - * - * @param result - The result of the callback function. - */ - resultSerializer?(result: Result): string; - /** - * A function that deserializes the string representation of the result of the callback function. - * - * @default (string) => JSON.parse(Buffer.from(string, 'base64').toString('utf-8')) - * - * @param string - The string representation of the result of the callback function. - */ - resultDeserializer?(string: string): Result; + /** + * The response context object. + * It is used to set the cache headers. + */ + responseContext?: object & { + setHeader( + name: string, + value: number | string | readonly string[], + ): unknown; + }; + /** + * An array of tags to associate with the cached result. + * Tags are used to revalidate the cache using the `revalidateTag` function. + */ + tags?: string[]; + /** + * The revalidation interval in seconds. + * Must be a positive integer or `false` to disable revalidation. + * + * @default revalidate // of the current route + */ + revalidate?: Revalidate; + /** + * A custom cache key to be used instead of creating one from the arguments. + */ + cacheKey?: string; + /** + * A function that serializes the arguments passed to the callback function. + * Use it to create a cache key. + * + * @default (args) => JSON.stringify(args) + * + * @param callbackArguments - The arguments passed to the callback function. + */ + argumentsSerializer?(callbackArguments: Arguments): string; + /** + * + * A function that serializes the result of the callback function. + * + * @default (result) => Buffer.from(JSON.stringify(result)).toString('base64') + * + * @param result - The result of the callback function. + */ + resultSerializer?(result: Result): string; + /** + * A function that deserializes the string representation of the result of the callback function. + * + * @default (string) => JSON.parse(Buffer.from(string, 'base64').toString('utf-8')) + * + * @param string - The string representation of the result of the callback function. + */ + resultDeserializer?(string: string): Result; }; /** * An object containing common options for the cache. */ type CommonNeshClassicCacheOptions = Omit< - NeshClassicCacheOptions, - 'cacheKey' | 'responseContext' + NeshClassicCacheOptions, + 'cacheKey' | 'responseContext' >; /** @@ -208,109 +213,137 @@ type CommonNeshClassicCacheOptions = Omit< * * @since 1.8.0 */ -export function neshClassicCache>( - callback: Callback, - commonOptions?: CommonNeshClassicCacheOptions, +export function neshClassicCache< + Arguments extends unknown[], + Result extends Promise, +>( + callback: Callback, + commonOptions?: CommonNeshClassicCacheOptions, ) { - if (commonOptions?.resultSerializer && !commonOptions?.resultDeserializer) { - throw new Error('neshClassicCache: if you provide a resultSerializer, you must provide a resultDeserializer.'); - } + if (commonOptions?.resultSerializer && !commonOptions?.resultDeserializer) { + throw new Error( + 'neshClassicCache: if you provide a resultSerializer, you must provide a resultDeserializer.', + ); + } - if (commonOptions?.resultDeserializer && !commonOptions?.resultSerializer) { - throw new Error('neshClassicCache: if you provide a resultDeserializer, you must provide a resultSerializer.'); - } + if (commonOptions?.resultDeserializer && !commonOptions?.resultSerializer) { + throw new Error( + 'neshClassicCache: if you provide a resultDeserializer, you must provide a resultSerializer.', + ); + } - const commonRevalidate = commonOptions?.revalidate ?? false; - const commonArgumentsSerializer = commonOptions?.argumentsSerializer ?? serializeArguments; - const commonResultSerializer = commonOptions?.resultSerializer ?? serializeResult; - const commonResultDeserializer = commonOptions?.resultDeserializer ?? deserializeResult; + const commonRevalidate = commonOptions?.revalidate ?? false; + const commonArgumentsSerializer = + commonOptions?.argumentsSerializer ?? serializeArguments; + const commonResultSerializer = + commonOptions?.resultSerializer ?? serializeResult; + const commonResultDeserializer = + commonOptions?.resultDeserializer ?? deserializeResult; - async function cachedCallback( - options: NeshClassicCacheOptions, - ...args: Arguments - ): Promise { - const store = staticGenerationAsyncStorage.getStore(); + async function cachedCallback( + options: NeshClassicCacheOptions, + ...args: Arguments + ): Promise { + const store = staticGenerationAsyncStorage.getStore(); - assert(!store?.incrementalCache, 'neshClassicCache must be used in a Next.js Pages directory.'); + assert( + !store?.incrementalCache, + 'neshClassicCache must be used in a Next.js Pages directory.', + ); - const cacheHandler = globalThis?.__incrementalCache?.cacheHandler as - | InstanceType - | undefined; + const cacheHandler = globalThis?.__incrementalCache?.cacheHandler as + | InstanceType + | undefined; - assert(cacheHandler, 'neshClassicCache must be used in a Next.js Pages directory.'); + assert( + cacheHandler, + 'neshClassicCache must be used in a Next.js Pages directory.', + ); - const { - responseContext, - tags = [], - revalidate = commonRevalidate, - cacheKey, - argumentsSerializer = commonArgumentsSerializer, - resultDeserializer = commonResultDeserializer, - resultSerializer = commonResultSerializer, - } = options ?? {}; + const { + responseContext, + tags = [], + revalidate = commonRevalidate, + cacheKey, + argumentsSerializer = commonArgumentsSerializer, + resultDeserializer = commonResultDeserializer, + resultSerializer = commonResultSerializer, + } = options ?? {}; - assert( - revalidate === false || (revalidate > 0 && Number.isInteger(revalidate)), - 'neshClassicCache: revalidate must be a positive integer or false.', - ); + assert( + revalidate === false || (revalidate > 0 && Number.isInteger(revalidate)), + 'neshClassicCache: revalidate must be a positive integer or false.', + ); - responseContext?.setHeader('Cache-Control', `public, s-maxage=${revalidate}, stale-while-revalidate`); + responseContext?.setHeader( + 'Cache-Control', + `public, s-maxage=${revalidate}, stale-while-revalidate`, + ); - const uniqueTags = new Set(); + const uniqueTags = new Set(); - for (const tag of tags) { - if (typeof tag === 'string') { - uniqueTags.add(tag); - } else { - console.warn(`neshClassicCache: Invalid tag: ${tag}. Skipping it. Expected a string.`); - } - } - - const allTags = Array.from(uniqueTags); + for (const tag of tags) { + if (typeof tag === 'string') { + uniqueTags.add(tag); + } else { + console.warn( + `neshClassicCache: Invalid tag: ${tag}. Skipping it. Expected a string.`, + ); + } + } - const key = hashCacheKey(`nesh-classic-cache-${cacheKey ?? argumentsSerializer(args)}`); + const allTags = Array.from(uniqueTags); - const cacheData = await cacheHandler.get(key, { - revalidate, - tags: allTags, - kindHint: 'fetch', - fetchUrl: 'neshClassicCache', - }); + const key = hashCacheKey( + `nesh-classic-cache-${cacheKey ?? argumentsSerializer(args)}`, + ); - if ( - cacheData?.value?.kind === 'FETCH' && - cacheData.lifespan && - cacheData.lifespan.staleAt > Date.now() / 1000 - ) { - return resultDeserializer(cacheData.value.data.body); - } + const cacheData = await cacheHandler.get(key, { + revalidate, + tags: allTags, + kindHint: 'fetch', + fetchUrl: 'neshClassicCache', + }); - const data: Result = await callback(...args); + if ( + cacheData?.value?.kind === 'FETCH' && + cacheData.lifespan && + cacheData.lifespan.staleAt > Date.now() / 1000 + ) { + return resultDeserializer(cacheData.value.data.body); + } - cacheHandler.set( - key, - { - kind: 'FETCH', - data: { - body: resultSerializer(data), - headers: {}, - url: 'neshClassicCache', - }, - revalidate: revalidate || TIME_ONE_YEAR, - }, - { revalidate, tags, fetchCache: true, fetchUrl: 'neshClassicCache' }, - ); + const data: Result = await callback(...args); - if ( - cacheData?.value?.kind === 'FETCH' && - cacheData?.lifespan && - cacheData.lifespan.expireAt > Date.now() / 1000 - ) { - return resultDeserializer(cacheData.value.data.body); - } + cacheHandler.set( + key, + { + kind: 'FETCH', + data: { + body: resultSerializer(data), + headers: {}, + url: 'neshClassicCache', + }, + revalidate: revalidate || TIME_ONE_YEAR, + }, + { + revalidate, + tags, + fetchCache: true, + fetchUrl: 'neshClassicCache', + }, + ); - return data; + if ( + cacheData?.value?.kind === 'FETCH' && + cacheData?.lifespan && + cacheData.lifespan.expireAt > Date.now() / 1000 + ) { + return resultDeserializer(cacheData.value.data.body); } - return cachedCallback; + return data; + } + + return cachedCallback; } diff --git a/packages/cache-handler/src/handlers/experimental-redis-cluster.ts b/packages/cache-handler/src/handlers/experimental-redis-cluster.ts index 5e378c89..fdb8f0e2 100644 --- a/packages/cache-handler/src/handlers/experimental-redis-cluster.ts +++ b/packages/cache-handler/src/handlers/experimental-redis-cluster.ts @@ -7,7 +7,8 @@ import { REVALIDATED_TAGS_KEY } from '../constants'; import { getTimeoutRedisCommandOptions } from '../helpers/get-timeout-redis-command-options'; import { isImplicitTag } from '../helpers/is-implicit-tag'; -type CreateRedisClusterHandlerOptions> = CreateRedisStringsHandlerOptions & { +type CreateRedisClusterHandlerOptions> = + CreateRedisStringsHandlerOptions & { /** * Use `cluster` instead of `client`. */ @@ -18,24 +19,24 @@ type CreateRedisClusterHandlerOptions> = Cr * @since 1.5.0 */ cluster: T; -}; + }; function groupKeysBySlot(keys: string[]): Map { - const slotKeysMap: Map = new Map(); + const slotKeysMap: Map = new Map(); - for (const key of keys) { - const slot = calculate(key); + for (const key of keys) { + const slot = calculate(key); - const slotKeys = slotKeysMap.get(slot); + const slotKeys = slotKeysMap.get(slot); - if (slotKeys) { - slotKeys.push(key); - } else { - slotKeysMap.set(slot, [key]); - } + if (slotKeys) { + slotKeys.push(key); + } else { + slotKeysMap.set(slot, [key]); } + } - return slotKeysMap; + return slotKeysMap; } /** @@ -69,165 +70,197 @@ function groupKeysBySlot(keys: string[]): Map { * - the `revalidateTag` methods are used for handling tag-based cache revalidation. */ export default function createHandler({ - cluster, - keyPrefix = '', - sharedTagsKey = '__sharedTags__', - timeoutMs = 5000, - keyExpirationStrategy = 'EXPIREAT', - revalidateTagQuerySize = 100, + cluster, + keyPrefix = '', + sharedTagsKey = '__sharedTags__', + timeoutMs = 5000, + keyExpirationStrategy = 'EXPIREAT', + revalidateTagQuerySize = 100, }: CreateRedisClusterHandlerOptions): Handler { - const revalidatedTagsKey = keyPrefix + REVALIDATED_TAGS_KEY; - - return { - name: 'experimental-redis-cluster', - async get(key, { implicitTags }) { - const result = await cluster.get(getTimeoutRedisCommandOptions(timeoutMs), keyPrefix + key); - - if (!result) { - return null; - } - - const cacheValue = JSON.parse(result) as CacheHandlerValue | null; - - if (!cacheValue) { - return null; - } - - const combinedTags = new Set([...cacheValue.tags, ...implicitTags]); - - if (combinedTags.size === 0) { - return cacheValue; - } - - const revalidationTimes = await cluster.hmGet( - getTimeoutRedisCommandOptions(timeoutMs), - revalidatedTagsKey, - Array.from(combinedTags), - ); - - for (const timeString of revalidationTimes) { - if (timeString && Number.parseInt(timeString, 10) > cacheValue.lastModified) { - await cluster.unlink(getTimeoutRedisCommandOptions(timeoutMs), keyPrefix + key); - - return null; - } - } - - return cacheValue; - }, - async set(key, cacheHandlerValue) { - const options = getTimeoutRedisCommandOptions(timeoutMs); - - let setOperation: Promise; - - let expireOperation: Promise | undefined; - - switch (keyExpirationStrategy) { - case 'EXAT': { - setOperation = cluster.set( - options, - keyPrefix + key, - JSON.stringify(cacheHandlerValue), - typeof cacheHandlerValue.lifespan?.expireAt === 'number' - ? { - EXAT: cacheHandlerValue.lifespan.expireAt, - } - : undefined, - ); - break; - } - case 'EXPIREAT': { - setOperation = cluster.set(options, keyPrefix + key, JSON.stringify(cacheHandlerValue)); - - expireOperation = cacheHandlerValue.lifespan - ? cluster.expireAt(options, keyPrefix + key, cacheHandlerValue.lifespan.expireAt) - : undefined; - break; - } - default: { - throw new Error(`Invalid keyExpirationStrategy: ${keyExpirationStrategy}`); - } - } - - const setTagsOperation = - cacheHandlerValue.tags.length > 0 - ? cluster.hSet(options, keyPrefix + sharedTagsKey, key, JSON.stringify(cacheHandlerValue.tags)) - : undefined; - - await Promise.all([setOperation, expireOperation, setTagsOperation]); - }, - async revalidateTag(tag) { - // If the tag is an implicit tag, we need to mark it as revalidated. - // The revalidation process is done by the CacheHandler class on the next get operation. - if (isImplicitTag(tag)) { - await cluster.hSet(getTimeoutRedisCommandOptions(timeoutMs), revalidatedTagsKey, tag, Date.now()); - } - - const tagsMap: Map = new Map(); - - let cursor = 0; - - const hScanOptions = { COUNT: revalidateTagQuerySize }; - - do { - const remoteTagsPortion = await cluster.hScan( - getTimeoutRedisCommandOptions(timeoutMs), - keyPrefix + sharedTagsKey, - cursor, - hScanOptions, - ); - - for (const { field, value } of remoteTagsPortion.tuples) { - tagsMap.set(field, JSON.parse(value)); + const revalidatedTagsKey = keyPrefix + REVALIDATED_TAGS_KEY; + + return { + name: 'experimental-redis-cluster', + async get(key, { implicitTags }) { + const result = await cluster.get( + getTimeoutRedisCommandOptions(timeoutMs), + keyPrefix + key, + ); + + if (!result) { + return null; + } + + const cacheValue = JSON.parse(result) as CacheHandlerValue | null; + + if (!cacheValue) { + return null; + } + + const combinedTags = new Set([...cacheValue.tags, ...implicitTags]); + + if (combinedTags.size === 0) { + return cacheValue; + } + + const revalidationTimes = await cluster.hmGet( + getTimeoutRedisCommandOptions(timeoutMs), + revalidatedTagsKey, + Array.from(combinedTags), + ); + + for (const timeString of revalidationTimes) { + if ( + timeString && + Number.parseInt(timeString, 10) > cacheValue.lastModified + ) { + await cluster.unlink( + getTimeoutRedisCommandOptions(timeoutMs), + keyPrefix + key, + ); + + return null; + } + } + + return cacheValue; + }, + async set(key, cacheHandlerValue) { + const options = getTimeoutRedisCommandOptions(timeoutMs); + + let setOperation: Promise; + + let expireOperation: Promise | undefined; + + switch (keyExpirationStrategy) { + case 'EXAT': { + setOperation = cluster.set( + options, + keyPrefix + key, + JSON.stringify(cacheHandlerValue), + typeof cacheHandlerValue.lifespan?.expireAt === 'number' + ? { + EXAT: cacheHandlerValue.lifespan.expireAt, } + : undefined, + ); + break; + } + case 'EXPIREAT': { + setOperation = cluster.set( + options, + keyPrefix + key, + JSON.stringify(cacheHandlerValue), + ); + + expireOperation = cacheHandlerValue.lifespan + ? cluster.expireAt( + options, + keyPrefix + key, + cacheHandlerValue.lifespan.expireAt, + ) + : undefined; + break; + } + default: { + throw new Error( + `Invalid keyExpirationStrategy: ${keyExpirationStrategy}`, + ); + } + } + + const setTagsOperation = + cacheHandlerValue.tags.length > 0 + ? cluster.hSet( + options, + keyPrefix + sharedTagsKey, + key, + JSON.stringify(cacheHandlerValue.tags), + ) + : undefined; + + await Promise.all([setOperation, expireOperation, setTagsOperation]); + }, + async revalidateTag(tag) { + // If the tag is an implicit tag, we need to mark it as revalidated. + // The revalidation process is done by the CacheHandler class on the next get operation. + if (isImplicitTag(tag)) { + await cluster.hSet( + getTimeoutRedisCommandOptions(timeoutMs), + revalidatedTagsKey, + tag, + Date.now(), + ); + } + + const tagsMap: Map = new Map(); + + let cursor = 0; + + const hScanOptions = { COUNT: revalidateTagQuerySize }; + + do { + const remoteTagsPortion = await cluster.hScan( + getTimeoutRedisCommandOptions(timeoutMs), + keyPrefix + sharedTagsKey, + cursor, + hScanOptions, + ); + + for (const { field, value } of remoteTagsPortion.tuples) { + tagsMap.set(field, JSON.parse(value)); + } - cursor = remoteTagsPortion.cursor; - } while (cursor !== 0); + cursor = remoteTagsPortion.cursor; + } while (cursor !== 0); - const keysToDelete: string[] = []; + const keysToDelete: string[] = []; - const tagsToDelete: string[] = []; + const tagsToDelete: string[] = []; - for (const [key, tags] of tagsMap) { - if (tags.includes(tag)) { - keysToDelete.push(keyPrefix + key); - tagsToDelete.push(key); - } - } + for (const [key, tags] of tagsMap) { + if (tags.includes(tag)) { + keysToDelete.push(keyPrefix + key); + tagsToDelete.push(key); + } + } - if (keysToDelete.length === 0) { - return; - } + if (keysToDelete.length === 0) { + return; + } - const slotKeysMap = groupKeysBySlot(keysToDelete); + const slotKeysMap = groupKeysBySlot(keysToDelete); - const unlinkPromises: Promise[] = []; + const unlinkPromises: Promise[] = []; - for (const [slot, keys] of slotKeysMap) { - const targetMasterNode = cluster.slots[slot]?.master; - const client = await targetMasterNode?.client; + for (const [slot, keys] of slotKeysMap) { + const targetMasterNode = cluster.slots[slot]?.master; + const client = await targetMasterNode?.client; - if (keys.length === 0 || !client) { - continue; - } + if (keys.length === 0 || !client) { + continue; + } - const unlinkPromisesForSlot = client.unlink(getTimeoutRedisCommandOptions(timeoutMs), keys); + const unlinkPromisesForSlot = client.unlink( + getTimeoutRedisCommandOptions(timeoutMs), + keys, + ); - if (unlinkPromisesForSlot) { - unlinkPromises.push(unlinkPromisesForSlot); - } - } - - const updateTagsOperation = cluster.hDel( - { isolated: true, ...getTimeoutRedisCommandOptions(timeoutMs) }, - keyPrefix + sharedTagsKey, - tagsToDelete, - ); - - await Promise.allSettled([...unlinkPromises, updateTagsOperation]); - }, - async delete(key) { - await cluster.unlink(getTimeoutRedisCommandOptions(timeoutMs), key); - }, - }; + if (unlinkPromisesForSlot) { + unlinkPromises.push(unlinkPromisesForSlot); + } + } + + const updateTagsOperation = cluster.hDel( + { isolated: true, ...getTimeoutRedisCommandOptions(timeoutMs) }, + keyPrefix + sharedTagsKey, + tagsToDelete, + ); + + await Promise.allSettled([...unlinkPromises, updateTagsOperation]); + }, + async delete(key) { + await cluster.unlink(getTimeoutRedisCommandOptions(timeoutMs), key); + }, + }; } diff --git a/packages/cache-handler/src/handlers/local-lru.ts b/packages/cache-handler/src/handlers/local-lru.ts index 6c2bb254..917334cd 100644 --- a/packages/cache-handler/src/handlers/local-lru.ts +++ b/packages/cache-handler/src/handlers/local-lru.ts @@ -36,64 +36,69 @@ export type { LruCacheOptions }; * * @since 1.0.0 */ -export default function createHandler({ ...lruOptions }: LruCacheOptions = {}): Handler { - const lruCacheStore = createCacheStore(lruOptions); - - const revalidatedTags = new Map(); - - return { - name: 'local-lru', - get(key, { implicitTags }) { - const cacheValue = lruCacheStore.get(key); - - if (!cacheValue) { - return Promise.resolve(null); - } - - const sanitizedImplicitTags = implicitTags; - - const combinedTags = new Set([...cacheValue.tags, ...sanitizedImplicitTags]); - - if (combinedTags.size === 0) { - return Promise.resolve(cacheValue); - } - - for (const tag of combinedTags) { - const revalidationTime = revalidatedTags.get(tag); - - if (revalidationTime && revalidationTime > cacheValue.lastModified) { - lruCacheStore.delete(key); - - return Promise.resolve(null); - } - } - - return Promise.resolve(cacheValue); - }, - set(key, cacheHandlerValue) { - lruCacheStore.set(key, cacheHandlerValue); - - return Promise.resolve(); - }, - revalidateTag(tag) { - // Iterate over all entries in the cache - for (const [key, { tags }] of lruCacheStore.entries()) { - // If the value's tags include the specified tag, delete this entry - if (tags.includes(tag)) { - lruCacheStore.delete(key); - } - } - - if (tag.startsWith(NEXT_CACHE_IMPLICIT_TAG_ID)) { - revalidatedTags.set(tag, Date.now()); - } - - return Promise.resolve(); - }, - delete(key) { - lruCacheStore.delete(key); - - return Promise.resolve(); - }, - }; +export default function createHandler({ + ...lruOptions +}: LruCacheOptions = {}): Handler { + const lruCacheStore = createCacheStore(lruOptions); + + const revalidatedTags = new Map(); + + return { + name: 'local-lru', + get(key, { implicitTags }) { + const cacheValue = lruCacheStore.get(key); + + if (!cacheValue) { + return Promise.resolve(null); + } + + const sanitizedImplicitTags = implicitTags; + + const combinedTags = new Set([ + ...cacheValue.tags, + ...sanitizedImplicitTags, + ]); + + if (combinedTags.size === 0) { + return Promise.resolve(cacheValue); + } + + for (const tag of combinedTags) { + const revalidationTime = revalidatedTags.get(tag); + + if (revalidationTime && revalidationTime > cacheValue.lastModified) { + lruCacheStore.delete(key); + + return Promise.resolve(null); + } + } + + return Promise.resolve(cacheValue); + }, + set(key, cacheHandlerValue) { + lruCacheStore.set(key, cacheHandlerValue); + + return Promise.resolve(); + }, + revalidateTag(tag) { + // Iterate over all entries in the cache + for (const [key, { tags }] of lruCacheStore.entries()) { + // If the value's tags include the specified tag, delete this entry + if (tags.includes(tag)) { + lruCacheStore.delete(key); + } + } + + if (tag.startsWith(NEXT_CACHE_IMPLICIT_TAG_ID)) { + revalidatedTags.set(tag, Date.now()); + } + + return Promise.resolve(); + }, + delete(key) { + lruCacheStore.delete(key); + + return Promise.resolve(); + }, + }; } diff --git a/packages/cache-handler/src/handlers/redis-stack.ts b/packages/cache-handler/src/handlers/redis-stack.ts index 116a959f..d26f0211 100644 --- a/packages/cache-handler/src/handlers/redis-stack.ts +++ b/packages/cache-handler/src/handlers/redis-stack.ts @@ -2,7 +2,10 @@ import { ErrorReply, SchemaFieldTypes } from 'redis'; import { randomBytes } from 'node:crypto'; import type { CacheHandlerValue, Handler } from '../cache-handler'; -import type { CreateRedisStackHandlerOptions, RedisJSON } from '../common-types'; +import type { + CreateRedisStackHandlerOptions, + RedisJSON, +} from '../common-types'; import { REVALIDATED_TAGS_KEY, TIME_ONE_YEAR } from '../constants'; import { getTimeoutRedisCommandOptions } from '../helpers/get-timeout-redis-command-options'; import { isImplicitTag } from '../helpers/is-implicit-tag'; @@ -36,158 +39,174 @@ export type { CreateRedisStackHandlerOptions }; * - the `revalidateTag` methods are used for handling tag-based cache revalidation. */ export default function createHandler({ - client, - keyPrefix = '', - timeoutMs = 5000, - revalidateTagQuerySize = 100, + client, + keyPrefix = '', + timeoutMs = 5000, + revalidateTagQuerySize = 100, }: CreateRedisStackHandlerOptions): Handler { - function assertClientIsReady(): void { - if (!client.isReady) { - throw new Error('Redis client is not ready'); - } - } - - function sanitizeTag(str: string) { - return str.replace(/[^a-zA-Z0-9]/gi, '_'); - } - - const indexName = `idx:tags-${randomBytes(32).toString('hex')}`; - - async function createIndexIfNotExists(): Promise { - try { - await client.ft.create( - indexName, - { - '$.tags': { type: SchemaFieldTypes.TEXT, AS: 'tag' }, - }, - { - ON: 'JSON', - TEMPORARY: TIME_ONE_YEAR, - }, - ); - } catch (error) { - if (error instanceof ErrorReply && error.message === 'Index already exists') { - return; - } - - throw error; - } + function assertClientIsReady(): void { + if (!client.isReady) { + throw new Error('Redis client is not ready'); } + } - const revalidatedTagsKey = keyPrefix + REVALIDATED_TAGS_KEY; - - return { - name: 'redis-stack', - async get(key, { implicitTags }) { - assertClientIsReady(); - - const cacheValue = (await client.json.get( - getTimeoutRedisCommandOptions(timeoutMs), - keyPrefix + key, - )) as CacheHandlerValue | null; + function sanitizeTag(str: string) { + return str.replace(/[^a-zA-Z0-9]/gi, '_'); + } - if (!cacheValue) { - return null; - } + const indexName = `idx:tags-${randomBytes(32).toString('hex')}`; - const sanitizedImplicitTags = implicitTags.map(sanitizeTag); - - const combinedTags = new Set([...cacheValue.tags, ...sanitizedImplicitTags]); - - if (combinedTags.size === 0) { - return cacheValue; - } - - const revalidationTimes = await client.hmGet( - getTimeoutRedisCommandOptions(timeoutMs), - revalidatedTagsKey, - Array.from(combinedTags), - ); - - for (const timeString of revalidationTimes) { - if (timeString && Number.parseInt(timeString, 10) > cacheValue.lastModified) { - await client.unlink(getTimeoutRedisCommandOptions(timeoutMs), keyPrefix + key); - - return null; - } - } - - return cacheValue; + async function createIndexIfNotExists(): Promise { + try { + await client.ft.create( + indexName, + { + '$.tags': { type: SchemaFieldTypes.TEXT, AS: 'tag' }, }, - async set(key, cacheHandlerValue) { - assertClientIsReady(); - - cacheHandlerValue.tags = cacheHandlerValue.tags.map(sanitizeTag); - - const options = getTimeoutRedisCommandOptions(timeoutMs); - - const setCacheValue = client.json.set( - options, - keyPrefix + key, - '.', - cacheHandlerValue as unknown as RedisJSON, - ); - - const expireCacheValue = cacheHandlerValue.lifespan - ? client.expireAt(options, keyPrefix + key, cacheHandlerValue.lifespan.expireAt) - : undefined; - - await Promise.all([setCacheValue, expireCacheValue]); + { + ON: 'JSON', + TEMPORARY: TIME_ONE_YEAR, }, - async revalidateTag(tag) { - assertClientIsReady(); - - await createIndexIfNotExists(); - - const sanitizedTag = sanitizeTag(tag); - - // If the tag is an implicit tag, we need to mark it as revalidated. - // The revalidation process is done by the CacheHandler class on the next get operation. - if (isImplicitTag(tag)) { - await client.hSet( - getTimeoutRedisCommandOptions(timeoutMs), - revalidatedTagsKey, - sanitizedTag, - Date.now(), - ); - } - - let from = 0; - - const keysToDelete: string[] = []; - - while (true) { - const { documents: documentIds } = await client.ft.searchNoContent( - getTimeoutRedisCommandOptions(timeoutMs), - indexName, - `@tag:(${sanitizedTag})`, - { - LIMIT: { from, size: revalidateTagQuerySize }, - TIMEOUT: timeoutMs, - }, - ); - - for (const id of documentIds) { - keysToDelete.push(id); - } + ); + } catch (error) { + if ( + error instanceof ErrorReply && + error.message === 'Index already exists' + ) { + return; + } + + throw error; + } + } + + const revalidatedTagsKey = keyPrefix + REVALIDATED_TAGS_KEY; + + return { + name: 'redis-stack', + async get(key, { implicitTags }) { + assertClientIsReady(); + + const cacheValue = (await client.json.get( + getTimeoutRedisCommandOptions(timeoutMs), + keyPrefix + key, + )) as CacheHandlerValue | null; + + if (!cacheValue) { + return null; + } + + const sanitizedImplicitTags = implicitTags.map(sanitizeTag); + + const combinedTags = new Set([ + ...cacheValue.tags, + ...sanitizedImplicitTags, + ]); + + if (combinedTags.size === 0) { + return cacheValue; + } + + const revalidationTimes = await client.hmGet( + getTimeoutRedisCommandOptions(timeoutMs), + revalidatedTagsKey, + Array.from(combinedTags), + ); + + for (const timeString of revalidationTimes) { + if ( + timeString && + Number.parseInt(timeString, 10) > cacheValue.lastModified + ) { + await client.unlink( + getTimeoutRedisCommandOptions(timeoutMs), + keyPrefix + key, + ); + + return null; + } + } + + return cacheValue; + }, + async set(key, cacheHandlerValue) { + assertClientIsReady(); + + cacheHandlerValue.tags = cacheHandlerValue.tags.map(sanitizeTag); + + const options = getTimeoutRedisCommandOptions(timeoutMs); + + const setCacheValue = client.json.set( + options, + keyPrefix + key, + '.', + cacheHandlerValue as unknown as RedisJSON, + ); + + const expireCacheValue = cacheHandlerValue.lifespan + ? client.expireAt( + options, + keyPrefix + key, + cacheHandlerValue.lifespan.expireAt, + ) + : undefined; + + await Promise.all([setCacheValue, expireCacheValue]); + }, + async revalidateTag(tag) { + assertClientIsReady(); + + await createIndexIfNotExists(); + + const sanitizedTag = sanitizeTag(tag); + + // If the tag is an implicit tag, we need to mark it as revalidated. + // The revalidation process is done by the CacheHandler class on the next get operation. + if (isImplicitTag(tag)) { + await client.hSet( + getTimeoutRedisCommandOptions(timeoutMs), + revalidatedTagsKey, + sanitizedTag, + Date.now(), + ); + } + + let from = 0; + + const keysToDelete: string[] = []; + + while (true) { + const { documents: documentIds } = await client.ft.searchNoContent( + getTimeoutRedisCommandOptions(timeoutMs), + indexName, + `@tag:(${sanitizedTag})`, + { + LIMIT: { from, size: revalidateTagQuerySize }, + TIMEOUT: timeoutMs, + }, + ); + + for (const id of documentIds) { + keysToDelete.push(id); + } - if (documentIds.length < revalidateTagQuerySize) { - break; - } + if (documentIds.length < revalidateTagQuerySize) { + break; + } - from += revalidateTagQuerySize; - } + from += revalidateTagQuerySize; + } - if (keysToDelete.length === 0) { - return; - } + if (keysToDelete.length === 0) { + return; + } - const options = getTimeoutRedisCommandOptions(timeoutMs); + const options = getTimeoutRedisCommandOptions(timeoutMs); - await client.unlink(options, keysToDelete); - }, - async delete(key) { - await client.unlink(getTimeoutRedisCommandOptions(timeoutMs), key); - }, - }; + await client.unlink(options, keysToDelete); + }, + async delete(key) { + await client.unlink(getTimeoutRedisCommandOptions(timeoutMs), key); + }, + }; } diff --git a/packages/cache-handler/src/handlers/redis-strings.ts b/packages/cache-handler/src/handlers/redis-strings.ts index 889430e0..8cf8d4cd 100644 --- a/packages/cache-handler/src/handlers/redis-strings.ts +++ b/packages/cache-handler/src/handlers/redis-strings.ts @@ -35,160 +35,194 @@ export type { CreateRedisStringsHandlerOptions }; * - the `revalidateTag` methods are used for handling tag-based cache revalidation. */ export default function createHandler({ - client, - keyPrefix = '', - sharedTagsKey = '__sharedTags__', - timeoutMs = 5000, - keyExpirationStrategy = 'EXPIREAT', - revalidateTagQuerySize = 100, + client, + keyPrefix = '', + sharedTagsKey = '__sharedTags__', + timeoutMs = 5000, + keyExpirationStrategy = 'EXPIREAT', + revalidateTagQuerySize = 100, }: CreateRedisStringsHandlerOptions): Handler { - function assertClientIsReady(): void { - if (!client.isReady) { - throw new Error('Redis client is not ready yet or connection is lost. Keep trying...'); - } + function assertClientIsReady(): void { + if (!client.isReady) { + throw new Error( + 'Redis client is not ready yet or connection is lost. Keep trying...', + ); } + } - const revalidatedTagsKey = keyPrefix + REVALIDATED_TAGS_KEY; - - return { - name: 'redis-strings', - async get(key, { implicitTags }) { - assertClientIsReady(); - - const result = await client.get(getTimeoutRedisCommandOptions(timeoutMs), keyPrefix + key); - - if (!result) { - return null; - } + const revalidatedTagsKey = keyPrefix + REVALIDATED_TAGS_KEY; - const cacheValue = JSON.parse(result) as CacheHandlerValue | null; + return { + name: 'redis-strings', + async get(key, { implicitTags }) { + assertClientIsReady(); - if (!cacheValue) { - return null; - } + const result = await client.get( + getTimeoutRedisCommandOptions(timeoutMs), + keyPrefix + key, + ); - const combinedTags = new Set([...cacheValue.tags, ...implicitTags]); + if (!result) { + return null; + } - if (combinedTags.size === 0) { - return cacheValue; - } + const cacheValue = JSON.parse(result) as CacheHandlerValue | null; - const revalidationTimes = await client.hmGet( - getTimeoutRedisCommandOptions(timeoutMs), - revalidatedTagsKey, - Array.from(combinedTags), - ); + if (!cacheValue) { + return null; + } - for (const timeString of revalidationTimes) { - if (timeString && Number.parseInt(timeString, 10) > cacheValue.lastModified) { - await client.unlink(getTimeoutRedisCommandOptions(timeoutMs), keyPrefix + key); + const combinedTags = new Set([...cacheValue.tags, ...implicitTags]); - return null; - } - } - - return cacheValue; - }, - async set(key, cacheHandlerValue) { - assertClientIsReady(); - - const options = getTimeoutRedisCommandOptions(timeoutMs); - - let setOperation: Promise; - - let expireOperation: Promise | undefined; - - switch (keyExpirationStrategy) { - case 'EXAT': { - setOperation = client.set( - options, - keyPrefix + key, - JSON.stringify(cacheHandlerValue), - typeof cacheHandlerValue.lifespan?.expireAt === 'number' - ? { - EXAT: cacheHandlerValue.lifespan.expireAt, - } - : undefined, - ); - break; - } - case 'EXPIREAT': { - setOperation = client.set(options, keyPrefix + key, JSON.stringify(cacheHandlerValue)); - - expireOperation = cacheHandlerValue.lifespan - ? client.expireAt(options, keyPrefix + key, cacheHandlerValue.lifespan.expireAt) - : undefined; - break; - } - default: { - throw new Error(`Invalid keyExpirationStrategy: ${keyExpirationStrategy}`); - } - } + if (combinedTags.size === 0) { + return cacheValue; + } - const setTagsOperation = - cacheHandlerValue.tags.length > 0 - ? client.hSet(options, keyPrefix + sharedTagsKey, key, JSON.stringify(cacheHandlerValue.tags)) - : undefined; + const revalidationTimes = await client.hmGet( + getTimeoutRedisCommandOptions(timeoutMs), + revalidatedTagsKey, + Array.from(combinedTags), + ); - await Promise.all([setOperation, expireOperation, setTagsOperation]); - }, - async revalidateTag(tag) { - assertClientIsReady(); + for (const timeString of revalidationTimes) { + if ( + timeString && + Number.parseInt(timeString, 10) > cacheValue.lastModified + ) { + await client.unlink( + getTimeoutRedisCommandOptions(timeoutMs), + keyPrefix + key, + ); - // If the tag is an implicit tag, we need to mark it as revalidated. - // The revalidation process is done by the CacheHandler class on the next get operation. - if (isImplicitTag(tag)) { - await client.hSet(getTimeoutRedisCommandOptions(timeoutMs), revalidatedTagsKey, tag, Date.now()); - } + return null; + } + } - const tagsMap: Map = new Map(); + return cacheValue; + }, + async set(key, cacheHandlerValue) { + assertClientIsReady(); - let cursor = 0; + const options = getTimeoutRedisCommandOptions(timeoutMs); - const hScanOptions = { COUNT: revalidateTagQuerySize }; + let setOperation: Promise; - do { - const remoteTagsPortion = await client.hScan( - getTimeoutRedisCommandOptions(timeoutMs), - keyPrefix + sharedTagsKey, - cursor, - hScanOptions, - ); + let expireOperation: Promise | undefined; - for (const { field, value } of remoteTagsPortion.tuples) { - tagsMap.set(field, JSON.parse(value)); + switch (keyExpirationStrategy) { + case 'EXAT': { + setOperation = client.set( + options, + keyPrefix + key, + JSON.stringify(cacheHandlerValue), + typeof cacheHandlerValue.lifespan?.expireAt === 'number' + ? { + EXAT: cacheHandlerValue.lifespan.expireAt, } + : undefined, + ); + break; + } + case 'EXPIREAT': { + setOperation = client.set( + options, + keyPrefix + key, + JSON.stringify(cacheHandlerValue), + ); + + expireOperation = cacheHandlerValue.lifespan + ? client.expireAt( + options, + keyPrefix + key, + cacheHandlerValue.lifespan.expireAt, + ) + : undefined; + break; + } + default: { + throw new Error( + `Invalid keyExpirationStrategy: ${keyExpirationStrategy}`, + ); + } + } + + const setTagsOperation = + cacheHandlerValue.tags.length > 0 + ? client.hSet( + options, + keyPrefix + sharedTagsKey, + key, + JSON.stringify(cacheHandlerValue.tags), + ) + : undefined; + + await Promise.all([setOperation, expireOperation, setTagsOperation]); + }, + async revalidateTag(tag) { + assertClientIsReady(); + + // If the tag is an implicit tag, we need to mark it as revalidated. + // The revalidation process is done by the CacheHandler class on the next get operation. + if (isImplicitTag(tag)) { + await client.hSet( + getTimeoutRedisCommandOptions(timeoutMs), + revalidatedTagsKey, + tag, + Date.now(), + ); + } + + const tagsMap: Map = new Map(); + + let cursor = 0; + + const hScanOptions = { COUNT: revalidateTagQuerySize }; + + do { + const remoteTagsPortion = await client.hScan( + getTimeoutRedisCommandOptions(timeoutMs), + keyPrefix + sharedTagsKey, + cursor, + hScanOptions, + ); + + for (const { field, value } of remoteTagsPortion.tuples) { + tagsMap.set(field, JSON.parse(value)); + } - cursor = remoteTagsPortion.cursor; - } while (cursor !== 0); + cursor = remoteTagsPortion.cursor; + } while (cursor !== 0); - const keysToDelete: string[] = []; + const keysToDelete: string[] = []; - const tagsToDelete: string[] = []; + const tagsToDelete: string[] = []; - for (const [key, tags] of tagsMap) { - if (tags.includes(tag)) { - keysToDelete.push(keyPrefix + key); - tagsToDelete.push(key); - } - } - - if (keysToDelete.length === 0) { - return; - } - - const deleteKeysOperation = client.unlink(getTimeoutRedisCommandOptions(timeoutMs), keysToDelete); - - const updateTagsOperation = client.hDel( - { isolated: true, ...getTimeoutRedisCommandOptions(timeoutMs) }, - keyPrefix + sharedTagsKey, - tagsToDelete, - ); - - await Promise.all([deleteKeysOperation, updateTagsOperation]); - }, - async delete(key) { - await client.unlink(getTimeoutRedisCommandOptions(timeoutMs), key); - }, - }; + for (const [key, tags] of tagsMap) { + if (tags.includes(tag)) { + keysToDelete.push(keyPrefix + key); + tagsToDelete.push(key); + } + } + + if (keysToDelete.length === 0) { + return; + } + + const deleteKeysOperation = client.unlink( + getTimeoutRedisCommandOptions(timeoutMs), + keysToDelete, + ); + + const updateTagsOperation = client.hDel( + { isolated: true, ...getTimeoutRedisCommandOptions(timeoutMs) }, + keyPrefix + sharedTagsKey, + tagsToDelete, + ); + + await Promise.all([deleteKeysOperation, updateTagsOperation]); + }, + async delete(key) { + await client.unlink(getTimeoutRedisCommandOptions(timeoutMs), key); + }, + }; } diff --git a/packages/cache-handler/src/handlers/server.ts b/packages/cache-handler/src/handlers/server.ts index 909bd227..8bc2f9d3 100644 --- a/packages/cache-handler/src/handlers/server.ts +++ b/packages/cache-handler/src/handlers/server.ts @@ -1,18 +1,18 @@ import type { CacheHandlerValue, Handler } from '../cache-handler'; export type ServerCacheHandlerOptions = { - /** - * The base URL of the cache store server. - * - * @since 1.0.0 - */ - baseUrl: URL | string; - /** - * Timeout in milliseconds for remote cache store operations. - * - * @since 1.0.0 - */ - timeoutMs?: number; + /** + * The base URL of the cache store server. + * + * @since 1.0.0 + */ + baseUrl: URL | string; + /** + * Timeout in milliseconds for remote cache store operations. + * + * @since 1.0.0 + */ + timeoutMs?: number; }; /** @@ -40,89 +40,92 @@ export type ServerCacheHandlerOptions = { * - the `set` method allows setting a value in the server cache. * - the `revalidateTag` methods are used for handling tag-based cache revalidation. */ -export default function createHandler({ baseUrl, timeoutMs }: ServerCacheHandlerOptions): Handler { - return { - name: 'server', - async get(key, { implicitTags }) { - const url = new URL('/get', baseUrl); +export default function createHandler({ + baseUrl, + timeoutMs, +}: ServerCacheHandlerOptions): Handler { + return { + name: 'server', + async get(key, { implicitTags }) { + const url = new URL('/get', baseUrl); - url.searchParams.set('key', key); - url.searchParams.set('implicitTags', JSON.stringify(implicitTags)); + url.searchParams.set('key', key); + url.searchParams.set('implicitTags', JSON.stringify(implicitTags)); - const response = await fetch(url, { - signal: timeoutMs ? AbortSignal.timeout(timeoutMs) : undefined, - // @ts-expect-error -- act as an internal fetch call - next: { - internal: true, - }, - }); - - if (response.status === 404) { - return null; - } + const response = await fetch(url, { + signal: timeoutMs ? AbortSignal.timeout(timeoutMs) : undefined, + // @ts-expect-error -- act as an internal fetch call + next: { + internal: true, + }, + }); - if (!response.ok) { - throw new Error(`get error: ${response.status}`); - } + if (response.status === 404) { + return null; + } - const string = await response.text(); + if (!response.ok) { + throw new Error(`get error: ${response.status}`); + } - return JSON.parse(string) as CacheHandlerValue; - }, - async set(key, cacheHandlerValue) { - const url = new URL('/set', baseUrl); + const string = await response.text(); - const response = await fetch(url, { - method: 'POST', - body: JSON.stringify([key, JSON.stringify(cacheHandlerValue)]), - headers: { - 'Content-Type': 'application/json', - }, - signal: timeoutMs ? AbortSignal.timeout(timeoutMs) : undefined, - // @ts-expect-error -- act as an internal fetch call - next: { - internal: true, - }, - }); + return JSON.parse(string) as CacheHandlerValue; + }, + async set(key, cacheHandlerValue) { + const url = new URL('/set', baseUrl); - if (!response.ok) { - throw new Error(`set error: ${response.status}`); - } + const response = await fetch(url, { + method: 'POST', + body: JSON.stringify([key, JSON.stringify(cacheHandlerValue)]), + headers: { + 'Content-Type': 'application/json', }, - async revalidateTag(tag) { - const url = new URL('/revalidateTag', baseUrl); + signal: timeoutMs ? AbortSignal.timeout(timeoutMs) : undefined, + // @ts-expect-error -- act as an internal fetch call + next: { + internal: true, + }, + }); - const response = await fetch(url, { - method: 'POST', - body: JSON.stringify([tag]), - headers: { - 'Content-Type': 'application/json', - }, - signal: timeoutMs ? AbortSignal.timeout(timeoutMs) : undefined, - // @ts-expect-error -- act as an internal fetch call - next: { - internal: true, - }, - }); + if (!response.ok) { + throw new Error(`set error: ${response.status}`); + } + }, + async revalidateTag(tag) { + const url = new URL('/revalidateTag', baseUrl); - if (!response.ok) { - throw new Error(`revalidateTag error: ${response.status}`); - } + const response = await fetch(url, { + method: 'POST', + body: JSON.stringify([tag]), + headers: { + 'Content-Type': 'application/json', + }, + signal: timeoutMs ? AbortSignal.timeout(timeoutMs) : undefined, + // @ts-expect-error -- act as an internal fetch call + next: { + internal: true, }, - async delete(key) { - const url = new URL(`/${key}`, baseUrl); + }); - const response = await fetch(url, { - method: 'DELETE', - // @ts-expect-error -- act as an internal fetch call - next: { - internal: true, - }, - }); + if (!response.ok) { + throw new Error(`revalidateTag error: ${response.status}`); + } + }, + async delete(key) { + const url = new URL(`/${key}`, baseUrl); - if (!response.ok) { - throw new Error(`delete error: ${response.status}`); - } + const response = await fetch(url, { + method: 'DELETE', + // @ts-expect-error -- act as an internal fetch call + next: { + internal: true, }, - }; + }); + + if (!response.ok) { + throw new Error(`delete error: ${response.status}`); + } + }, + }; } diff --git a/packages/cache-handler/src/helpers/create-validated-age-estimation-function.test.ts b/packages/cache-handler/src/helpers/create-validated-age-estimation-function.test.ts index 406ca279..adf33d44 100644 --- a/packages/cache-handler/src/helpers/create-validated-age-estimation-function.test.ts +++ b/packages/cache-handler/src/helpers/create-validated-age-estimation-function.test.ts @@ -4,71 +4,93 @@ import { MAX_INT32 } from '../constants'; import { createValidatedAgeEstimationFunction } from './create-validated-age-estimation-function'; await test('returns the same age for simple callback', () => { - const estimateAge = createValidatedAgeEstimationFunction((age) => age); - const testAge = 100; - assert.strictEqual(estimateAge(testAge), testAge, 'The estimated age should equal the input age.'); + const estimateAge = createValidatedAgeEstimationFunction((age) => age); + const testAge = 100; + assert.strictEqual( + estimateAge(testAge), + testAge, + 'The estimated age should equal the input age.', + ); }); await test('throws error for negative age', () => { - const estimateAge = createValidatedAgeEstimationFunction((age) => age); - const testAge = -1; - assert.throws( - () => estimateAge(testAge), - /The expire age must be a positive integer but got/, - 'Should throw error for negative age.', - ); + const estimateAge = createValidatedAgeEstimationFunction((age) => age); + const testAge = -1; + assert.throws( + () => estimateAge(testAge), + /The expire age must be a positive integer but got/, + 'Should throw error for negative age.', + ); }); await test('handles float by flooring', () => { - const estimateAge = createValidatedAgeEstimationFunction((age) => age + 0.9); - const testAge = 100; - assert.strictEqual(estimateAge(testAge), 100, 'The estimated age should be floored to the nearest lower integer.'); + const estimateAge = createValidatedAgeEstimationFunction((age) => age + 0.9); + const testAge = 100; + assert.strictEqual( + estimateAge(testAge), + 100, + 'The estimated age should be floored to the nearest lower integer.', + ); }); await test('handles numbers bigger than MAX_INT32 by returning MAX_INT32', () => { - const estimateAge = createValidatedAgeEstimationFunction((age) => age + MAX_INT32); - assert.strictEqual( - estimateAge(100), - MAX_INT32, - 'The estimated age should return MAX_INT32 for numbers bigger than MAX_INT32.', - ); + const estimateAge = createValidatedAgeEstimationFunction( + (age) => age + MAX_INT32, + ); + assert.strictEqual( + estimateAge(100), + MAX_INT32, + 'The estimated age should return MAX_INT32 for numbers bigger than MAX_INT32.', + ); }); await test('throws error for non-integer', () => { - const estimateAge = createValidatedAgeEstimationFunction((age) => age + Number.NaN); - assert.throws( - () => estimateAge(10), - /The expire age must be a positive integer but got/, - 'Should throw error for non-integer values.', - ); + const estimateAge = createValidatedAgeEstimationFunction( + (age) => age + Number.NaN, + ); + assert.throws( + () => estimateAge(10), + /The expire age must be a positive integer but got/, + 'Should throw error for non-integer values.', + ); }); await test('throws error for zero', () => { - const estimateAge = createValidatedAgeEstimationFunction((age) => age * 0); - assert.throws( - () => estimateAge(10), - /The expire age must be a positive integer but got/, - 'Should throw error for zero.', - ); + const estimateAge = createValidatedAgeEstimationFunction((age) => age * 0); + assert.throws( + () => estimateAge(10), + /The expire age must be a positive integer but got/, + 'Should throw error for zero.', + ); }); await test('handles MAX_INT32 correctly', () => { - const estimateAge = createValidatedAgeEstimationFunction((_age) => MAX_INT32); - assert.strictEqual(estimateAge(0), MAX_INT32, 'The estimated age should handle MAX_INT32 correctly.'); + const estimateAge = createValidatedAgeEstimationFunction((_age) => MAX_INT32); + assert.strictEqual( + estimateAge(0), + MAX_INT32, + 'The estimated age should handle MAX_INT32 correctly.', + ); }); await test('throws error for non-numeric input', () => { - const estimateAge = createValidatedAgeEstimationFunction((_age) => 'non-numeric' as unknown as number); - assert.throws( - () => estimateAge(10), - /The expire age must be a positive integer but got/, - 'Should throw error for non-numeric input.', - ); + const estimateAge = createValidatedAgeEstimationFunction( + (_age) => 'non-numeric' as unknown as number, + ); + assert.throws( + () => estimateAge(10), + /The expire age must be a positive integer but got/, + 'Should throw error for non-numeric input.', + ); }); await test('callback throws an error', () => { - const estimateAge = createValidatedAgeEstimationFunction(() => { - throw new Error('Test error'); - }); - assert.throws(() => estimateAge(10), /Test error/, 'Should propagate callback errors.'); + const estimateAge = createValidatedAgeEstimationFunction(() => { + throw new Error('Test error'); + }); + assert.throws( + () => estimateAge(10), + /Test error/, + 'Should propagate callback errors.', + ); }); diff --git a/packages/cache-handler/src/helpers/create-validated-age-estimation-function.ts b/packages/cache-handler/src/helpers/create-validated-age-estimation-function.ts index 5535b25c..601abe6f 100644 --- a/packages/cache-handler/src/helpers/create-validated-age-estimation-function.ts +++ b/packages/cache-handler/src/helpers/create-validated-age-estimation-function.ts @@ -11,7 +11,7 @@ type EstimateExpireAgeFunction = typeof getInitialExpireAge; * @returns The initial expire age. */ export function getInitialExpireAge(staleAge: number): number { - return staleAge * 1.5; + return staleAge * 1.5; } /** @@ -22,18 +22,20 @@ export function getInitialExpireAge(staleAge: number): number { * @returns The age estimation function. This function will return the expire age based on the stale age. * Its return value will be a positive integer and less than 2147483647. */ -export function createValidatedAgeEstimationFunction(callback = getInitialExpireAge): EstimateExpireAgeFunction { - return function estimateExpireAge(staleAge: number): number { - const rawExpireAge = callback(staleAge); +export function createValidatedAgeEstimationFunction( + callback = getInitialExpireAge, +): EstimateExpireAgeFunction { + return function estimateExpireAge(staleAge: number): number { + const rawExpireAge = callback(staleAge); - const expireAge = Math.min(Math.floor(rawExpireAge), MAX_INT32); + const expireAge = Math.min(Math.floor(rawExpireAge), MAX_INT32); - // Number.isInteger also checks for NaN, Infinity, -Infinity and non-numeric values. - assert( - Number.isInteger(expireAge) && expireAge > 0, - `The expire age must be a positive integer but got a ${expireAge}.`, - ); + // Number.isInteger also checks for NaN, Infinity, -Infinity and non-numeric values. + assert( + Number.isInteger(expireAge) && expireAge > 0, + `The expire age must be a positive integer but got a ${expireAge}.`, + ); - return expireAge; - }; + return expireAge; + }; } diff --git a/packages/cache-handler/src/helpers/get-tags-from-headers.ts b/packages/cache-handler/src/helpers/get-tags-from-headers.ts index 14233a80..83e676f1 100644 --- a/packages/cache-handler/src/helpers/get-tags-from-headers.ts +++ b/packages/cache-handler/src/helpers/get-tags-from-headers.ts @@ -9,15 +9,15 @@ import type { OutgoingHttpHeaders } from 'http'; * @returns An array of cache tags. */ export function getTagsFromHeaders(headers: OutgoingHttpHeaders): string[] { - const tagsHeader = headers['x-next-cache-tags']; + const tagsHeader = headers['x-next-cache-tags']; - if (Array.isArray(tagsHeader)) { - return tagsHeader; - } + if (Array.isArray(tagsHeader)) { + return tagsHeader; + } - if (typeof tagsHeader === 'string') { - return tagsHeader.split(','); - } + if (typeof tagsHeader === 'string') { + return tagsHeader.split(','); + } - return []; + return []; } diff --git a/packages/cache-handler/src/helpers/get-timeout-redis-command-options.ts b/packages/cache-handler/src/helpers/get-timeout-redis-command-options.ts index fca89f30..453be3c8 100644 --- a/packages/cache-handler/src/helpers/get-timeout-redis-command-options.ts +++ b/packages/cache-handler/src/helpers/get-timeout-redis-command-options.ts @@ -2,10 +2,12 @@ import { commandOptions } from 'redis'; type CommandOptions = ReturnType; -export function getTimeoutRedisCommandOptions(timeoutMs: number): CommandOptions { - if (timeoutMs === 0) { - return commandOptions({}); - } +export function getTimeoutRedisCommandOptions( + timeoutMs: number, +): CommandOptions { + if (timeoutMs === 0) { + return commandOptions({}); + } - return commandOptions({ signal: AbortSignal.timeout(timeoutMs) }); + return commandOptions({ signal: AbortSignal.timeout(timeoutMs) }); } diff --git a/packages/cache-handler/src/helpers/is-implicit-tag.ts b/packages/cache-handler/src/helpers/is-implicit-tag.ts index 71cd8af2..a97db76f 100644 --- a/packages/cache-handler/src/helpers/is-implicit-tag.ts +++ b/packages/cache-handler/src/helpers/is-implicit-tag.ts @@ -8,5 +8,5 @@ import { NEXT_CACHE_IMPLICIT_TAG_ID } from '@repo/next-common'; * @returns A boolean indicating whether the tag is an implicit tag. */ export function isImplicitTag(tag: string): boolean { - return tag.startsWith(NEXT_CACHE_IMPLICIT_TAG_ID); + return tag.startsWith(NEXT_CACHE_IMPLICIT_TAG_ID); } diff --git a/packages/cache-handler/src/helpers/is-tags-manifest.ts b/packages/cache-handler/src/helpers/is-tags-manifest.ts index c65617a3..d585cd18 100644 --- a/packages/cache-handler/src/helpers/is-tags-manifest.ts +++ b/packages/cache-handler/src/helpers/is-tags-manifest.ts @@ -1,20 +1,20 @@ import type { TagsManifest } from '@repo/next-common'; function hasItems(object: object): object is { items: unknown } { - return Object.hasOwn(object, 'items'); + return Object.hasOwn(object, 'items'); } function hasVersion(object: object): object is { version: unknown } { - return Object.hasOwn(object, 'version'); + return Object.hasOwn(object, 'version'); } export function isTagsManifest(object: unknown): object is TagsManifest { - return ( - typeof object === 'object' && - object !== null && - hasItems(object) && - hasVersion(object) && - typeof object.version === 'number' && - object.version === 1 - ); + return ( + typeof object === 'object' && + object !== null && + hasItems(object) && + hasVersion(object) && + typeof object.version === 'number' && + object.version === 1 + ); } diff --git a/packages/cache-handler/src/helpers/promise-with-timeout.test.ts b/packages/cache-handler/src/helpers/promise-with-timeout.test.ts index 3bfa90f0..8afb62ba 100644 --- a/packages/cache-handler/src/helpers/promise-with-timeout.test.ts +++ b/packages/cache-handler/src/helpers/promise-with-timeout.test.ts @@ -5,73 +5,76 @@ import Timers from 'node:timers/promises'; import { promiseWithTimeout } from './promise-with-timeout'; async function simulateOperation(duration: number): Promise { - await Timers.scheduler.wait(duration); + await Timers.scheduler.wait(duration); - return 'completed'; + return 'completed'; } async function simulateOperationError(duration: number): Promise { - await Timers.scheduler.wait(duration); + await Timers.scheduler.wait(duration); - throw new Error('Operation error'); + throw new Error('Operation error'); } await test('should resolve if operation finishes before timeout', async () => { - const fastOperation = simulateOperation(100); - const result = await promiseWithTimeout(fastOperation, 200); - assert.strictEqual(result, 'completed'); + const fastOperation = simulateOperation(100); + const result = await promiseWithTimeout(fastOperation, 200); + assert.strictEqual(result, 'completed'); }); await test('should reject if operation times out', async () => { - const slowOperation = simulateOperation(300); - try { - await promiseWithTimeout(slowOperation, 100); - assert.fail('Expected operation to time out'); - } catch (error) { - if (error instanceof Error) { - assert.match(error.message, /timed out/); - } + const slowOperation = simulateOperation(300); + try { + await promiseWithTimeout(slowOperation, 100); + assert.fail('Expected operation to time out'); + } catch (error) { + if (error instanceof Error) { + assert.match(error.message, /timed out/); } + } }); await test('should allow operation without timeout when timeoutMs is undefined', async () => { - const operation = simulateOperation(100); - const result = await promiseWithTimeout(operation); - assert.strictEqual(result, 'completed'); + const operation = simulateOperation(100); + const result = await promiseWithTimeout(operation); + assert.strictEqual(result, 'completed'); }); await test('should return original operation if timeoutMs is not a number', async () => { - const operation = simulateOperation(100); - const result = await promiseWithTimeout(operation, 'not a number' as unknown as number); - assert.strictEqual(result, 'completed'); + const operation = simulateOperation(100); + const result = await promiseWithTimeout( + operation, + 'not a number' as unknown as number, + ); + assert.strictEqual(result, 'completed'); }); await test('should return original operation if timeoutMs is NaN', async () => { - const operation = simulateOperation(100); - const result = await promiseWithTimeout(operation, Number.NaN); - assert.strictEqual(result, 'completed'); + const operation = simulateOperation(100); + const result = await promiseWithTimeout(operation, Number.NaN); + assert.strictEqual(result, 'completed'); }); await test('should return original operation if timeoutMs is less than or equal to 0', async () => { - const operation = simulateOperation(100); - const result = await promiseWithTimeout(operation, 0); - assert.strictEqual(result, 'completed'); + const operation = simulateOperation(100); + const result = await promiseWithTimeout(operation, 0); + assert.strictEqual(result, 'completed'); }); await test('should return original operation if timeoutMs is greater than MAX_INT32', async () => { - const operation = simulateOperation(100); - const result = await promiseWithTimeout(operation, Number.MAX_SAFE_INTEGER); - assert.strictEqual(result, 'completed'); + const operation = simulateOperation(100); + const result = await promiseWithTimeout(operation, Number.MAX_SAFE_INTEGER); + assert.strictEqual(result, 'completed'); }); await test('should reject if operation throws an error', async () => { - try { - const operationError = simulateOperationError(100); - await promiseWithTimeout(operationError, 200); - assert.fail('Expected operation to throw an error'); - } catch (error) { - if (error instanceof Error) { - assert.match(error.message, /Operation error/); - } + try { + const operationError = simulateOperationError(100); + await promiseWithTimeout(operationError, 200); + assert.fail('Expected operation to throw an error'); + } catch (error) { + if (error instanceof Error) { + assert.match(error.message, /Operation error/); } + } }); diff --git a/packages/cache-handler/src/helpers/promise-with-timeout.ts b/packages/cache-handler/src/helpers/promise-with-timeout.ts index 7cac6fcd..1afac29e 100644 --- a/packages/cache-handler/src/helpers/promise-with-timeout.ts +++ b/packages/cache-handler/src/helpers/promise-with-timeout.ts @@ -13,22 +13,34 @@ import { MAX_INT32 } from '../constants'; * @throws If the operation does not complete within the specified timeout, * the returned Promise will be rejected with an Error that has a message indicating the timeout period. */ -export function promiseWithTimeout(operation: Promise, timeoutMs?: number): Promise { - if (typeof timeoutMs !== 'number' || Number.isNaN(timeoutMs) || timeoutMs <= 0 || timeoutMs > MAX_INT32) { - return operation; - } +export function promiseWithTimeout( + operation: Promise, + timeoutMs?: number, +): Promise { + if ( + typeof timeoutMs !== 'number' || + Number.isNaN(timeoutMs) || + timeoutMs <= 0 || + timeoutMs > MAX_INT32 + ) { + return operation; + } - return new Promise((resolve, reject) => { - const timeoutId = setTimeout(reject, timeoutMs, new Error(`Operation timed out after ${timeoutMs} ms`)); + return new Promise((resolve, reject) => { + const timeoutId = setTimeout( + reject, + timeoutMs, + new Error(`Operation timed out after ${timeoutMs} ms`), + ); - operation - .then((result) => { - clearTimeout(timeoutId); - resolve(result); - }) - .catch((error) => { - clearTimeout(timeoutId); - reject(error as Error); - }); - }); + operation + .then((result) => { + clearTimeout(timeoutId); + resolve(result); + }) + .catch((error) => { + clearTimeout(timeoutId); + reject(error as Error); + }); + }); } diff --git a/packages/cache-handler/src/instrumentation/instrumentation.ts b/packages/cache-handler/src/instrumentation/instrumentation.ts index ae364500..ec501a50 100644 --- a/packages/cache-handler/src/instrumentation/instrumentation.ts +++ b/packages/cache-handler/src/instrumentation/instrumentation.ts @@ -1 +1,4 @@ -export { registerInitialCache, type RegisterInitialCacheOptions } from './register-initial-cache'; +export { + registerInitialCache, + type RegisterInitialCacheOptions, +} from './register-initial-cache'; diff --git a/packages/cache-handler/src/instrumentation/register-initial-cache.ts b/packages/cache-handler/src/instrumentation/register-initial-cache.ts index 53ca9547..d6d0a35b 100644 --- a/packages/cache-handler/src/instrumentation/register-initial-cache.ts +++ b/packages/cache-handler/src/instrumentation/register-initial-cache.ts @@ -1,6 +1,10 @@ import { promises as fsPromises } from 'node:fs'; import path from 'node:path'; -import type { CachedFetchValue, Revalidate, RouteMetadata } from '@repo/next-common'; +import type { + CachedFetchValue, + Revalidate, + RouteMetadata, +} from '@repo/next-common'; import { PRERENDER_MANIFEST, SERVER_DIRECTORY } from 'next/constants'; import type { PrerenderManifest } from 'next/dist/build'; import { CACHE_ONE_YEAR } from 'next/dist/lib/constants'; @@ -18,30 +22,30 @@ const PRERENDER_MANIFEST_VERSION = 4; * @since 1.7.0 */ export type RegisterInitialCacheOptions = { - /** - * Whether to populate the cache with fetch calls. - * - * @default true - * - * @since 1.7.0 - */ - fetch?: boolean; - /** - * Whether to populate the cache with pre-rendered pages. - * - * @default true - * - * @since 1.7.0 - */ - pages?: boolean; - /** - * Whether to populate the cache with routes. - * - * @default true - * - * @since 1.7.0 - */ - routes?: boolean; + /** + * Whether to populate the cache with fetch calls. + * + * @default true + * + * @since 1.7.0 + */ + fetch?: boolean; + /** + * Whether to populate the cache with pre-rendered pages. + * + * @default true + * + * @since 1.7.0 + */ + pages?: boolean; + /** + * Whether to populate the cache with routes. + * + * @default true + * + * @since 1.7.0 + */ + routes?: boolean; }; /** @@ -79,301 +83,328 @@ export type RegisterInitialCacheOptions = { * * @since 1.7.0 */ -export async function registerInitialCache(CacheHandler: CacheHandlerType, options: RegisterInitialCacheOptions = {}) { - const debug = typeof process.env.NEXT_PRIVATE_DEBUG_CACHE !== 'undefined'; - const nextJsPath = path.join(process.cwd(), '.next'); - const prerenderManifestPath = path.join(nextJsPath, PRERENDER_MANIFEST); - const serverDistDir = path.join(nextJsPath, SERVER_DIRECTORY); - const fetchCacheDir = path.join(nextJsPath, 'cache', 'fetch-cache'); +export async function registerInitialCache( + CacheHandler: CacheHandlerType, + options: RegisterInitialCacheOptions = {}, +) { + const debug = typeof process.env.NEXT_PRIVATE_DEBUG_CACHE !== 'undefined'; + const nextJsPath = path.join(process.cwd(), '.next'); + const prerenderManifestPath = path.join(nextJsPath, PRERENDER_MANIFEST); + const serverDistDir = path.join(nextJsPath, SERVER_DIRECTORY); + const fetchCacheDir = path.join(nextJsPath, 'cache', 'fetch-cache'); + + const populateFetch = options.fetch ?? true; + const populatePages = options.pages ?? true; + const populateRoutes = options.routes ?? true; + + let prerenderManifest: PrerenderManifest | undefined; + + try { + const prerenderManifestData = await fsPromises.readFile( + prerenderManifestPath, + 'utf-8', + ); + prerenderManifest = JSON.parse(prerenderManifestData) as PrerenderManifest; + + if (prerenderManifest.version !== PRERENDER_MANIFEST_VERSION) { + throw new Error( + `Invalid prerender manifest version. Expected version ${PRERENDER_MANIFEST_VERSION}. Please check if the Next.js version is compatible with the CacheHandler version.`, + ); + } + } catch (error) { + if (debug) { + console.warn( + '[CacheHandler] [%s] %s %s', + 'registerInitialCache', + 'Failed to read prerender manifest', + `Error: ${error}`, + ); + } + + return; + } + + const context = { + serverDistDir, + dev: process.env.NODE_ENV === 'development', + }; + + let cacheHandler: InstanceType; + + try { + cacheHandler = new CacheHandler( + context as ConstructorParameters[0], + ); + } catch (error) { + if (debug) { + console.warn( + '[CacheHandler] [%s] %s %s', + 'registerInitialCache', + 'Failed to create CacheHandler instance', + `Error: ${error}`, + ); + } - const populateFetch = options.fetch ?? true; - const populatePages = options.pages ?? true; - const populateRoutes = options.routes ?? true; + return; + } - let prerenderManifest: PrerenderManifest | undefined; + async function setRouteCache( + cachePath: string, + router: Router, + revalidate: Revalidate, + ) { + const pathToRouteFiles = path.join(serverDistDir, router, cachePath); + + let lastModified: number | undefined; try { - const prerenderManifestData = await fsPromises.readFile(prerenderManifestPath, 'utf-8'); - prerenderManifest = JSON.parse(prerenderManifestData) as PrerenderManifest; - - if (prerenderManifest.version !== PRERENDER_MANIFEST_VERSION) { - throw new Error( - `Invalid prerender manifest version. Expected version ${PRERENDER_MANIFEST_VERSION}. Please check if the Next.js version is compatible with the CacheHandler version.`, - ); - } + const stats = await fsPromises.stat(`${pathToRouteFiles}.body`); + lastModified = stats.mtimeMs; } catch (error) { - if (debug) { - console.warn( - '[CacheHandler] [%s] %s %s', - 'registerInitialCache', - 'Failed to read prerender manifest', - `Error: ${error}`, - ); - } - - return; + if (debug) { + console.warn( + '[CacheHandler] [%s] %s %s', + 'registerInitialCache', + 'Failed to read route body file', + `Error: ${error}`, + ); + } + + return; } - const context = { - serverDistDir, - dev: process.env.NODE_ENV === 'development', - }; - - let cacheHandler: InstanceType; + let body: Buffer; + let meta: RouteMetadata; try { - cacheHandler = new CacheHandler(context as ConstructorParameters[0]); + [body, meta] = await Promise.all([ + fsPromises.readFile(`${pathToRouteFiles}.body`), + fsPromises + .readFile(`${pathToRouteFiles}.meta`, 'utf-8') + .then((data) => JSON.parse(data) as RouteMetadata), + ]); + + if (!(meta.headers && meta.status)) { + throw new Error('Invalid route metadata. Missing headers or status.'); + } } catch (error) { - if (debug) { - console.warn( - '[CacheHandler] [%s] %s %s', - 'registerInitialCache', - 'Failed to create CacheHandler instance', - `Error: ${error}`, - ); - } - - return; + if (debug) { + console.warn( + '[CacheHandler] [%s] %s %s', + 'registerInitialCache', + 'Failed to read route body or metadata file, or parse metadata', + `Error: ${error}`, + ); + } + + return; } - async function setRouteCache(cachePath: string, router: Router, revalidate: Revalidate) { - const pathToRouteFiles = path.join(serverDistDir, router, cachePath); - - let lastModified: number | undefined; - - try { - const stats = await fsPromises.stat(`${pathToRouteFiles}.body`); - lastModified = stats.mtimeMs; - } catch (error) { - if (debug) { - console.warn( - '[CacheHandler] [%s] %s %s', - 'registerInitialCache', - 'Failed to read route body file', - `Error: ${error}`, - ); - } - - return; - } - - let body: Buffer; - let meta: RouteMetadata; - - try { - [body, meta] = await Promise.all([ - fsPromises.readFile(`${pathToRouteFiles}.body`), - fsPromises - .readFile(`${pathToRouteFiles}.meta`, 'utf-8') - .then((data) => JSON.parse(data) as RouteMetadata), - ]); - - if (!(meta.headers && meta.status)) { - throw new Error('Invalid route metadata. Missing headers or status.'); - } - } catch (error) { - if (debug) { - console.warn( - '[CacheHandler] [%s] %s %s', - 'registerInitialCache', - 'Failed to read route body or metadata file, or parse metadata', - `Error: ${error}`, - ); - } - - return; - } - - try { - await cacheHandler.set( - cachePath, - { - kind: 'ROUTE', - body, - headers: meta.headers, - status: meta.status, - }, - { revalidate, neshca_lastModified: lastModified, tags: getTagsFromHeaders(meta.headers) }, - ); - } catch (error) { - if (debug) { - console.warn( - '[CacheHandler] [%s] %s %s', - 'registerInitialCache', - 'Failed to set route cache. Please check if the CacheHandler is configured correctly', - `Error: ${error}`, - ); - } - - return; - } + try { + await cacheHandler.set( + cachePath, + { + kind: 'ROUTE', + body, + headers: meta.headers, + status: meta.status, + }, + { + revalidate, + neshca_lastModified: lastModified, + tags: getTagsFromHeaders(meta.headers), + }, + ); + } catch (error) { + if (debug) { + console.warn( + '[CacheHandler] [%s] %s %s', + 'registerInitialCache', + 'Failed to set route cache. Please check if the CacheHandler is configured correctly', + `Error: ${error}`, + ); + } + + return; } + } - async function setPageCache(cachePath: string, router: Router, revalidate: Revalidate) { - const pathToRouteFiles = path.join(serverDistDir, router, cachePath); - - const isAppRouter = router === 'app'; - - let lastModified: number | undefined; - - try { - const stats = await fsPromises.stat(`${pathToRouteFiles}.html`); - lastModified = stats.mtimeMs; - } catch (error) { - if (debug) { - console.warn( - '[CacheHandler] [%s] %s %s', - 'registerInitialCache', - 'Failed to read page html file', - `Error: ${error}`, - ); - } - return; - } - - let html: string | undefined; - let pageData: string | object | undefined; - let meta: RouteMetadata | undefined; - - try { - [html, pageData, meta] = await Promise.all([ - fsPromises.readFile(`${pathToRouteFiles}.html`, 'utf-8'), - fsPromises - .readFile(`${pathToRouteFiles}.${isAppRouter ? 'rsc' : 'json'}`, 'utf-8') - .then((data) => (isAppRouter ? data : (JSON.parse(data) as object))), - isAppRouter - ? fsPromises - .readFile(`${pathToRouteFiles}.meta`, 'utf-8') - .then((data) => JSON.parse(data) as RouteMetadata) - : undefined, - ]); - } catch (error) { - if (debug) { - console.warn( - '[CacheHandler] [%s] %s %s', - 'registerInitialCache', - 'Failed to read page html, page data, or metadata file, or parse metadata', - `Error: ${error}`, - ); - } - - return; - } - - try { - await cacheHandler.set( - cachePath, - { - kind: 'PAGE', - html, - pageData, - postponed: meta?.postponed, - headers: meta?.headers, - status: meta?.status, - }, - { revalidate, neshca_lastModified: lastModified }, - ); - } catch (error) { - if (debug) { - console.warn( - '[CacheHandler] [%s] %s %s', - 'registerInitialCache', - 'Failed to set page cache. Please check if the CacheHandler is configured correctly', - `Error: ${error}`, - ); - } - - return; - } + async function setPageCache( + cachePath: string, + router: Router, + revalidate: Revalidate, + ) { + const pathToRouteFiles = path.join(serverDistDir, router, cachePath); + + const isAppRouter = router === 'app'; + + let lastModified: number | undefined; + + try { + const stats = await fsPromises.stat(`${pathToRouteFiles}.html`); + lastModified = stats.mtimeMs; + } catch (error) { + if (debug) { + console.warn( + '[CacheHandler] [%s] %s %s', + 'registerInitialCache', + 'Failed to read page html file', + `Error: ${error}`, + ); + } + return; } - for (const [cachePath, { dataRoute, initialRevalidateSeconds }] of Object.entries(prerenderManifest.routes)) { - if (populatePages && dataRoute?.endsWith('.json')) { - await setPageCache(cachePath, 'pages', initialRevalidateSeconds); - } else if (populatePages && dataRoute?.endsWith('.rsc')) { - await setPageCache(cachePath, 'app', initialRevalidateSeconds); - } else if (populateRoutes && dataRoute === null) { - await setRouteCache(cachePath, 'app', initialRevalidateSeconds); - } + let html: string | undefined; + let pageData: string | object | undefined; + let meta: RouteMetadata | undefined; + + try { + [html, pageData, meta] = await Promise.all([ + fsPromises.readFile(`${pathToRouteFiles}.html`, 'utf-8'), + fsPromises + .readFile( + `${pathToRouteFiles}.${isAppRouter ? 'rsc' : 'json'}`, + 'utf-8', + ) + .then((data) => (isAppRouter ? data : (JSON.parse(data) as object))), + isAppRouter + ? fsPromises + .readFile(`${pathToRouteFiles}.meta`, 'utf-8') + .then((data) => JSON.parse(data) as RouteMetadata) + : undefined, + ]); + } catch (error) { + if (debug) { + console.warn( + '[CacheHandler] [%s] %s %s', + 'registerInitialCache', + 'Failed to read page html, page data, or metadata file, or parse metadata', + `Error: ${error}`, + ); + } + + return; } - if (!populateFetch) { - return; + try { + await cacheHandler.set( + cachePath, + { + kind: 'PAGE', + html, + pageData, + postponed: meta?.postponed, + headers: meta?.headers, + status: meta?.status, + }, + { revalidate, neshca_lastModified: lastModified }, + ); + } catch (error) { + if (debug) { + console.warn( + '[CacheHandler] [%s] %s %s', + 'registerInitialCache', + 'Failed to set page cache. Please check if the CacheHandler is configured correctly', + `Error: ${error}`, + ); + } + + return; + } + } + + for (const [ + cachePath, + { dataRoute, initialRevalidateSeconds }, + ] of Object.entries(prerenderManifest.routes)) { + if (populatePages && dataRoute?.endsWith('.json')) { + await setPageCache(cachePath, 'pages', initialRevalidateSeconds); + } else if (populatePages && dataRoute?.endsWith('.rsc')) { + await setPageCache(cachePath, 'app', initialRevalidateSeconds); + } else if (populateRoutes && dataRoute === null) { + await setRouteCache(cachePath, 'app', initialRevalidateSeconds); } + } + + if (!populateFetch) { + return; + } + + let fetchFiles: string[]; + + try { + fetchFiles = await fsPromises.readdir(fetchCacheDir); + } catch (error) { + if (debug) { + console.warn( + '[CacheHandler] [%s] %s %s', + 'registerInitialCache', + 'Failed to read cache/fetch-cache directory', + `Error: ${error}`, + ); + } + + return; + } + + for (const fetchCacheKey of fetchFiles) { + const filePath = path.join(fetchCacheDir, fetchCacheKey); - let fetchFiles: string[]; + let lastModified: number | undefined; try { - fetchFiles = await fsPromises.readdir(fetchCacheDir); + const stats = await fsPromises.stat(filePath); + lastModified = stats.mtimeMs; } catch (error) { - if (debug) { - console.warn( - '[CacheHandler] [%s] %s %s', - 'registerInitialCache', - 'Failed to read cache/fetch-cache directory', - `Error: ${error}`, - ); - } - - return; + if (debug) { + console.warn( + '[CacheHandler] [%s] %s %s', + 'registerInitialCache', + 'Failed to read fetch cache file', + `Error: ${error}`, + ); + } + return; } - for (const fetchCacheKey of fetchFiles) { - const filePath = path.join(fetchCacheDir, fetchCacheKey); - - let lastModified: number | undefined; - - try { - const stats = await fsPromises.stat(filePath); - lastModified = stats.mtimeMs; - } catch (error) { - if (debug) { - console.warn( - '[CacheHandler] [%s] %s %s', - 'registerInitialCache', - 'Failed to read fetch cache file', - `Error: ${error}`, - ); - } - return; - } - - let fetchCache: CachedFetchValue; - try { - fetchCache = await fsPromises - .readFile(filePath, 'utf-8') - .then((data) => JSON.parse(data) as CachedFetchValue); - } catch (error) { - if (debug) { - console.warn( - '[CacheHandler] [%s] %s %s', - 'registerInitialCache', - 'Failed to parse fetch cache file', - `Error: ${error}`, - ); - } - - return; - } - - // HACK: By default, Next.js sets the revalidate option to CACHE_ONE_YEAR if the revalidate option is set - const revalidate = fetchCache.revalidate === CACHE_ONE_YEAR ? false : fetchCache.revalidate; - - try { - await cacheHandler.set(fetchCacheKey, fetchCache, { - revalidate, - neshca_lastModified: lastModified, - tags: fetchCache.tags, - }); - } catch (error) { - if (debug) { - console.warn( - '[CacheHandler] [%s] %s %s', - 'registerInitialCache', - 'Failed to set fetch cache. Please check if the CacheHandler is configured correctly', - `Error: ${error}`, - ); - } - } + let fetchCache: CachedFetchValue; + try { + fetchCache = await fsPromises + .readFile(filePath, 'utf-8') + .then((data) => JSON.parse(data) as CachedFetchValue); + } catch (error) { + if (debug) { + console.warn( + '[CacheHandler] [%s] %s %s', + 'registerInitialCache', + 'Failed to parse fetch cache file', + `Error: ${error}`, + ); + } + + return; + } + + // HACK: By default, Next.js sets the revalidate option to CACHE_ONE_YEAR if the revalidate option is set + const revalidate = + fetchCache.revalidate === CACHE_ONE_YEAR ? false : fetchCache.revalidate; + + try { + await cacheHandler.set(fetchCacheKey, fetchCache, { + revalidate, + neshca_lastModified: lastModified, + tags: fetchCache.tags, + }); + } catch (error) { + if (debug) { + console.warn( + '[CacheHandler] [%s] %s %s', + 'registerInitialCache', + 'Failed to set fetch cache. Please check if the CacheHandler is configured correctly', + `Error: ${error}`, + ); + } } + } } diff --git a/packages/cache-handler/tsconfig.json b/packages/cache-handler/tsconfig.json index e2d33901..3b78eb2d 100644 --- a/packages/cache-handler/tsconfig.json +++ b/packages/cache-handler/tsconfig.json @@ -1,13 +1,13 @@ { - "extends": "@repo/typescript-config/library.json", - "include": ["."], - "exclude": ["dist", "node_modules"], - "compilerOptions": { - "paths": { - "@repo/next-common": ["../../internal/next-common/src/next-common.ts"], - "@repo/next-lru-cache/next-cache-handler-value": [ - "../../internal/next-lru-cache/src/cache-types/next-cache-handler-value.ts" - ] - } + "extends": "@repo/typescript-config/base.json", + "include": ["."], + "exclude": ["dist", "node_modules"], + "compilerOptions": { + "paths": { + "@repo/next-common": ["../../internal/next-common/src/next-common.ts"], + "@repo/next-lru-cache/next-cache-handler-value": [ + "../../internal/next-lru-cache/src/cache-types/next-cache-handler-value.ts" + ] } + } } diff --git a/packages/cache-handler/tsup.config.ts b/packages/cache-handler/tsup.config.ts index 262119ad..1f91cdfc 100644 --- a/packages/cache-handler/tsup.config.ts +++ b/packages/cache-handler/tsup.config.ts @@ -1,19 +1,19 @@ import { defineConfig } from 'tsup'; export const tsup = defineConfig({ - name: 'Build cache-handler', - entry: [ - 'src/cache-handler.ts', - 'src/handlers/*.ts', - 'src/helpers/helpers.ts', - 'src/functions/functions.ts', - 'src/instrumentation/instrumentation.ts', - ], - splitting: false, - outDir: 'dist', - clean: false, - format: ['cjs', 'esm'], - dts: { resolve: true }, - target: 'node18', - noExternal: ['lru-cache', 'cluster-key-slot'], + name: 'Build cache-handler', + entry: [ + 'src/cache-handler.ts', + 'src/handlers/*.ts', + 'src/helpers/helpers.ts', + 'src/functions/functions.ts', + 'src/instrumentation/instrumentation.ts', + ], + splitting: false, + outDir: 'dist', + clean: false, + format: ['cjs', 'esm'], + dts: { resolve: true }, + target: 'node18', + noExternal: ['lru-cache', 'cluster-key-slot'], }); diff --git a/.npmignore b/packages/json-replacer-reviver/.npmignore similarity index 100% rename from .npmignore rename to packages/json-replacer-reviver/.npmignore diff --git a/packages/json-replacer-reviver/LICENSE b/packages/json-replacer-reviver/LICENSE index fbb67bf3..5b65b185 100644 --- a/packages/json-replacer-reviver/LICENSE +++ b/packages/json-replacer-reviver/LICENSE @@ -1,6 +1,6 @@ MIT License -Copyright (c) 2024 Arseny Kruglikov +Copyright (c) 2025 Arseny Kruglikov Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/packages/json-replacer-reviver/README.md b/packages/json-replacer-reviver/README.md index 3bd9a978..df318081 100644 --- a/packages/json-replacer-reviver/README.md +++ b/packages/json-replacer-reviver/README.md @@ -9,7 +9,19 @@ Utility library for handling `Buffer` object serialization and deserialization w ## Installation ```bash -npm i @neshca/json-replacer-reviver +npm add @neshca/json-replacer-reviver +``` + +```bash +pnpm add @neshca/json-replacer-reviver +``` + +```bash +yarn add @neshca/json-replacer-reviver +``` + +```bash +bun add @neshca/json-replacer-reviver ``` ## Usage @@ -43,7 +55,7 @@ console.log(parsed); // ### Running tests locally ```bash -npm run test -w ./packages/json-replacer-reviver +pnpm -F @repo/json-replacer-reviver test ``` ## License diff --git a/packages/json-replacer-reviver/package.json b/packages/json-replacer-reviver/package.json index c5da8fa3..fa9b19b7 100644 --- a/packages/json-replacer-reviver/package.json +++ b/packages/json-replacer-reviver/package.json @@ -1,35 +1,35 @@ { - "name": "@neshca/json-replacer-reviver", - "version": "1.1.3", - "description": "Utility library for handling `Buffer` object serialization and deserialization with JSON, offering base64 representations", - "homepage": "https://github.com/caching-tools/next-shared-cache/tree/canary/packages/json-replacer-reviver", - "bugs": "https://github.com/caching-tools/next-shared-cache/issues", - "repository": { - "type": "git", - "url": "git+https://github.com/caching-tools/next-shared-cache.git" - }, - "license": "MIT", - "author": { - "name": "Arseny Kruglikov", - "email": "caching.tools@proton.me" - }, - "type": "module", - "exports": { - "import": "./dist/json-replacer-reviver.js", - "require": "./dist/json-replacer-reviver.cjs", - "types": "./dist/json-replacer-reviver.d.ts" - }, - "scripts": { - "build": "tsup", - "dev": "tsup --watch", - "test": "tsx --test **/*.test.ts", - "test:watch": "tsx --watch --test **/*.test.ts" - }, - "devDependencies": { - "@repo/typescript-config": "*", - "@types/node": "22.10.0", - "tsup": "8.3.5", - "tsx": "4.19.2", - "typescript": "5.7.2" - } + "name": "@neshca/json-replacer-reviver", + "version": "1.1.3", + "description": "Utility library for handling `Buffer` object serialization and deserialization with JSON, offering base64 representations", + "homepage": "https://github.com/caching-tools/next-shared-cache/tree/canary/packages/json-replacer-reviver", + "bugs": "https://github.com/caching-tools/next-shared-cache/issues", + "repository": { + "type": "git", + "url": "git+https://github.com/caching-tools/next-shared-cache.git" + }, + "license": "MIT", + "author": { + "name": "Arseny Kruglikov", + "email": "caching.tools@proton.me" + }, + "type": "module", + "exports": { + "import": "./dist/json-replacer-reviver.js", + "require": "./dist/json-replacer-reviver.cjs", + "types": "./dist/json-replacer-reviver.d.ts" + }, + "scripts": { + "build": "tsup", + "dev": "tsup --watch", + "test": "tsx --test **/*.test.ts", + "test:watch": "tsx --watch --test **/*.test.ts" + }, + "devDependencies": { + "@repo/typescript-config": "workspace:*", + "@types/node": "22.13.1", + "tsup": "8.3.6", + "tsx": "4.19.2", + "typescript": "5.7.3" + } } diff --git a/packages/json-replacer-reviver/src/json-replacer-reviver.test.ts b/packages/json-replacer-reviver/src/json-replacer-reviver.test.ts index 7544c569..a1b1a4ed 100644 --- a/packages/json-replacer-reviver/src/json-replacer-reviver.test.ts +++ b/packages/json-replacer-reviver/src/json-replacer-reviver.test.ts @@ -2,11 +2,11 @@ import assert from 'node:assert/strict'; import { describe, it } from 'node:test'; import { - isBufferBase64Representation, - isBufferJsonRepresentation, - replaceJsonWithBase64, - reviveFromBase64Representation, - reviveFromJsonRepresentation, + isBufferBase64Representation, + isBufferJsonRepresentation, + replaceJsonWithBase64, + reviveFromBase64Representation, + reviveFromJsonRepresentation, } from './json-replacer-reviver'; const TEST_STRING = 'Hello'; @@ -15,67 +15,79 @@ const JSON_REPRESENTATION = { type: 'Buffer', data: [72, 101, 108, 108, 111] }; const BASE64_REPRESENTATION = { type: 'BufferBase64', data: 'SGVsbG8=' }; const INVALID_INPUTS = [ - {}, - null, - undefined, - 'hello', - 123, - true, - false, - { type: 'Buffer', data: 'hello' }, - { type: 'BufferBase64', data: [1, 2, 3] }, + {}, + null, + undefined, + 'hello', + 123, + true, + false, + { type: 'Buffer', data: 'hello' }, + { type: 'BufferBase64', data: [1, 2, 3] }, ]; await describe('Buffer JSON Representation', async () => { - await it('should identify and revive valid JSON representations', () => { - const json = JSON.stringify(TEST_BUFFER); - const revivedFromJson = JSON.parse(json, reviveFromJsonRepresentation) as Buffer; + await it('should identify and revive valid JSON representations', () => { + const json = JSON.stringify(TEST_BUFFER); + const revivedFromJson = JSON.parse( + json, + reviveFromJsonRepresentation, + ) as Buffer; - assert.strictEqual(isBufferJsonRepresentation(JSON_REPRESENTATION), true); - assert.strictEqual(TEST_BUFFER.equals(revivedFromJson), true); - }); + assert.strictEqual(isBufferJsonRepresentation(JSON_REPRESENTATION), true); + assert.strictEqual(TEST_BUFFER.equals(revivedFromJson), true); + }); - await it('should reject invalid JSON representations', () => { - for (const input of INVALID_INPUTS) { - assert.strictEqual(isBufferJsonRepresentation(input), false); - } - }); + await it('should reject invalid JSON representations', () => { + for (const input of INVALID_INPUTS) { + assert.strictEqual(isBufferJsonRepresentation(input), false); + } + }); - await it('should handle non-Buffer JSON representations during revival', () => { - const value = 'hello'; - const revived = reviveFromJsonRepresentation('', value); - assert.strictEqual(revived, value); - }); + await it('should handle non-Buffer JSON representations during revival', () => { + const value = 'hello'; + const revived = reviveFromJsonRepresentation('', value); + assert.strictEqual(revived, value); + }); - await it('should convert JSON representation to its Base64 format', () => { - const converted = replaceJsonWithBase64('', JSON_REPRESENTATION); - assert.deepStrictEqual(converted, BASE64_REPRESENTATION); - }); + await it('should convert JSON representation to its Base64 format', () => { + const converted = replaceJsonWithBase64('', JSON_REPRESENTATION); + assert.deepStrictEqual(converted, BASE64_REPRESENTATION); + }); }); await describe('Buffer Base64 Representation', async () => { - await it('should identify and revive valid Base64 representations', () => { - const revived = reviveFromBase64Representation('', BASE64_REPRESENTATION); + await it('should identify and revive valid Base64 representations', () => { + const revived = reviveFromBase64Representation('', BASE64_REPRESENTATION); - assert.strictEqual(isBufferBase64Representation(BASE64_REPRESENTATION), true); - assert.strictEqual(TEST_BUFFER.equals(revived as Buffer), true); - }); + assert.strictEqual( + isBufferBase64Representation(BASE64_REPRESENTATION), + true, + ); + assert.strictEqual(TEST_BUFFER.equals(revived as Buffer), true); + }); - await it('should reject invalid Base64 representations', () => { - for (const input of INVALID_INPUTS) { - assert.strictEqual(isBufferBase64Representation(input), false); - } - }); + await it('should reject invalid Base64 representations', () => { + for (const input of INVALID_INPUTS) { + assert.strictEqual(isBufferBase64Representation(input), false); + } + }); - await it('should handle Buffer serialization and deserialization', () => { - const object = { - someKey: { - name: 'someName', - buffer: TEST_BUFFER, - }, - }; - const serialized = JSON.stringify(object, replaceJsonWithBase64); - const deserialized = JSON.parse(serialized, reviveFromBase64Representation) as typeof object; - assert.strictEqual(object.someKey.buffer.equals(deserialized.someKey.buffer), true); - }); + await it('should handle Buffer serialization and deserialization', () => { + const object = { + someKey: { + name: 'someName', + buffer: TEST_BUFFER, + }, + }; + const serialized = JSON.stringify(object, replaceJsonWithBase64); + const deserialized = JSON.parse( + serialized, + reviveFromBase64Representation, + ) as typeof object; + assert.strictEqual( + object.someKey.buffer.equals(deserialized.someKey.buffer), + true, + ); + }); }); diff --git a/packages/json-replacer-reviver/src/json-replacer-reviver.ts b/packages/json-replacer-reviver/src/json-replacer-reviver.ts index dfbb852f..f2019890 100644 --- a/packages/json-replacer-reviver/src/json-replacer-reviver.ts +++ b/packages/json-replacer-reviver/src/json-replacer-reviver.ts @@ -4,28 +4,28 @@ import { Buffer } from 'node:buffer'; * Represents the JSON structure of a `Buffer` object. */ export type BufferJsonRepresentation = { - /** - * Indicates the representation type; always 'Buffer' for this structure. - */ - type: 'Buffer'; - /** - * An array of numbers representing the buffer's byte data. - */ - data: number[]; + /** + * Indicates the representation type; always 'Buffer' for this structure. + */ + type: 'Buffer'; + /** + * An array of numbers representing the buffer's byte data. + */ + data: number[]; }; /** * Represents the base64-encoded JSON structure of a `Buffer` object. */ export type BufferBase64Representation = { - /** - * Indicates the representation type; always 'BufferBase64' for this structure. - */ - type: 'BufferBase64'; - /** - * A string containing the base64-encoded data of the buffer. - */ - data: string; + /** + * Indicates the representation type; always 'BufferBase64' for this structure. + */ + type: 'BufferBase64'; + /** + * A string containing the base64-encoded data of the buffer. + */ + data: string; }; /** @@ -34,13 +34,15 @@ export type BufferBase64Representation = { * @param value - Value to be verified. * @returns `true` if the value matches the JSON representation of a `Buffer`, otherwise `false`. */ -export function isBufferJsonRepresentation(value: unknown): value is BufferJsonRepresentation { - return ( - typeof value === 'object' && - value !== null && - (value as BufferJsonRepresentation).type === 'Buffer' && - Array.isArray((value as BufferJsonRepresentation).data) - ); +export function isBufferJsonRepresentation( + value: unknown, +): value is BufferJsonRepresentation { + return ( + typeof value === 'object' && + value !== null && + (value as BufferJsonRepresentation).type === 'Buffer' && + Array.isArray((value as BufferJsonRepresentation).data) + ); } /** @@ -49,13 +51,15 @@ export function isBufferJsonRepresentation(value: unknown): value is BufferJsonR * @param value - Value to be verified. * @returns `true` if the value matches the base64-encoded JSON format of a `Buffer`, otherwise `false`. */ -export function isBufferBase64Representation(value: unknown): value is BufferBase64Representation { - return ( - typeof value === 'object' && - value !== null && - (value as BufferBase64Representation).type === 'BufferBase64' && - typeof (value as BufferBase64Representation).data === 'string' - ); +export function isBufferBase64Representation( + value: unknown, +): value is BufferBase64Representation { + return ( + typeof value === 'object' && + value !== null && + (value as BufferBase64Representation).type === 'BufferBase64' && + typeof (value as BufferBase64Representation).data === 'string' + ); } /** @@ -76,13 +80,16 @@ export function isBufferBase64Representation(value: unknown): value is BufferBas * console.log(parsed); // * ``` */ -export function reviveFromJsonRepresentation(_key: string, value: unknown): unknown { - if (isBufferJsonRepresentation(value)) { - // @ts-expect-error -- TS doesn't know that Buffer.from can accept a BufferJsonRepresentation - return Buffer.from(value); - } +export function reviveFromJsonRepresentation( + _key: string, + value: unknown, +): unknown { + if (isBufferJsonRepresentation(value)) { + // @ts-expect-error -- TS doesn't know that Buffer.from can accept a BufferJsonRepresentation + return Buffer.from(value); + } - return value; + return value; } /** @@ -104,11 +111,14 @@ export function reviveFromJsonRepresentation(_key: string, value: unknown): unkn * ``` */ export function replaceJsonWithBase64(_key: string, value: unknown): unknown { - if (isBufferJsonRepresentation(value)) { - return { type: 'BufferBase64', data: Buffer.from(value.data).toString('base64') }; - } + if (isBufferJsonRepresentation(value)) { + return { + type: 'BufferBase64', + data: Buffer.from(value.data).toString('base64'), + }; + } - return value; + return value; } /** @@ -129,10 +139,13 @@ export function replaceJsonWithBase64(_key: string, value: unknown): unknown { * console.log(parsed); // * ``` */ -export function reviveFromBase64Representation(_key: string, value: unknown): unknown { - if (isBufferBase64Representation(value)) { - return Buffer.from(value.data, 'base64'); - } +export function reviveFromBase64Representation( + _key: string, + value: unknown, +): unknown { + if (isBufferBase64Representation(value)) { + return Buffer.from(value.data, 'base64'); + } - return value; + return value; } diff --git a/packages/json-replacer-reviver/tsconfig.json b/packages/json-replacer-reviver/tsconfig.json index b0d5b0ac..9c5847bc 100644 --- a/packages/json-replacer-reviver/tsconfig.json +++ b/packages/json-replacer-reviver/tsconfig.json @@ -1,5 +1,5 @@ { - "extends": "@repo/typescript-config/library.json", - "include": ["."], - "exclude": ["dist", "node_modules"] + "extends": "@repo/typescript-config/base.json", + "include": ["."], + "exclude": ["dist", "node_modules"] } diff --git a/packages/json-replacer-reviver/tsup.config.ts b/packages/json-replacer-reviver/tsup.config.ts index 67fc7f77..3259797c 100644 --- a/packages/json-replacer-reviver/tsup.config.ts +++ b/packages/json-replacer-reviver/tsup.config.ts @@ -1,12 +1,12 @@ import { defineConfig } from 'tsup'; export const tsup = defineConfig({ - name: 'Build json-replacer-reviver', - entry: ['src/json-replacer-reviver.ts'], - splitting: false, - outDir: 'dist', - clean: false, - format: ['cjs', 'esm'], - dts: true, - target: 'node18', + name: 'Build json-replacer-reviver', + entry: ['src/json-replacer-reviver.ts'], + splitting: false, + outDir: 'dist', + clean: false, + format: ['cjs', 'esm'], + dts: true, + target: 'node18', }); diff --git a/packages/server/.npmignore b/packages/server/.npmignore new file mode 100644 index 00000000..b097392b --- /dev/null +++ b/packages/server/.npmignore @@ -0,0 +1,5 @@ +!dist +.turbo +src +tsconfig.json +tsup.config.ts diff --git a/packages/server/LICENSE b/packages/server/LICENSE index fbb67bf3..5b65b185 100644 --- a/packages/server/LICENSE +++ b/packages/server/LICENSE @@ -1,6 +1,6 @@ MIT License -Copyright (c) 2024 Arseny Kruglikov +Copyright (c) 2025 Arseny Kruglikov Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/packages/server/package.json b/packages/server/package.json index eba2d748..1ce0ee23 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -1,43 +1,43 @@ { - "name": "@neshca/server", - "version": "1.1.2", - "description": "Efficient and simple HTTP caching server with LRU eviction, tailored for seamless integration with `@neshca/cache-handler/server` Handler", - "homepage": "https://github.com/caching-tools/next-shared-cache/tree/canary/packages/server", - "bugs": "https://github.com/caching-tools/next-shared-cache/issues", - "repository": { - "type": "git", - "url": "git+https://github.com/caching-tools/next-shared-cache.git" - }, - "license": "MIT", - "author": { - "name": "Arseny Kruglikov", - "email": "caching.tools@proton.me" - }, - "type": "module", - "exports": null, - "bin": { - "next-cache-server": "dist/server.js" - }, - "scripts": { - "build": "tsup", - "dev": "tsx --watch ./src/server.ts", - "start": "tsx ./src/server.ts" - }, - "dependencies": { - "fastify": "5.1.0", - "pino": "9.5.0" - }, - "devDependencies": { - "@repo/next-common": "*", - "@repo/next-lru-cache": "*", - "@repo/typescript-config": "*", - "@types/node": "22.10.0", - "tsup": "8.3.5", - "tsx": "4.19.2", - "typescript": "5.7.2" - }, - "distTags": [ - "next13.5", - "next14" - ] + "name": "@neshca/server", + "version": "1.1.2", + "description": "Efficient and simple HTTP caching server with LRU eviction, tailored for seamless integration with `@neshca/cache-handler/server` Handler", + "homepage": "https://github.com/caching-tools/next-shared-cache/tree/canary/packages/server", + "bugs": "https://github.com/caching-tools/next-shared-cache/issues", + "repository": { + "type": "git", + "url": "git+https://github.com/caching-tools/next-shared-cache.git" + }, + "license": "MIT", + "author": { + "name": "Arseny Kruglikov", + "email": "caching.tools@proton.me" + }, + "type": "module", + "exports": null, + "bin": { + "next-cache-server": "dist/server.js" + }, + "scripts": { + "build": "tsup", + "dev": "tsx --watch ./src/server.ts", + "start": "tsx ./src/server.ts" + }, + "dependencies": { + "fastify": "5.2.1", + "pino": "9.6.0" + }, + "devDependencies": { + "@repo/next-common": "workspace:*", + "@repo/next-lru-cache": "workspace:*", + "@repo/typescript-config": "workspace:*", + "@types/node": "22.13.1", + "tsup": "8.3.6", + "tsx": "4.19.2", + "typescript": "5.7.3" + }, + "distTags": [ + "next13.5", + "next14" + ] } diff --git a/packages/server/src/server.ts b/packages/server/src/server.ts index 94dd55a6..3e890a86 100644 --- a/packages/server/src/server.ts +++ b/packages/server/src/server.ts @@ -6,10 +6,10 @@ import Fastify from 'fastify'; import { pino } from 'pino'; const logger = pino({ - transport: { - target: 'pino-pretty', - }, - level: process.env.CI ? 'silent' : 'info', + transport: { + target: 'pino-pretty', + }, + level: process.env.CI ? 'silent' : 'info', }); const server = Fastify(); @@ -22,94 +22,97 @@ const port = Number.parseInt(process.env.PORT ?? '8080', 10); const revalidatedTags = new Map(); server.get('/get', async (request, reply): Promise => { - const { key, implicitTags: implicitTagsString } = request.query as { key: string; implicitTags: string }; + const { key, implicitTags: implicitTagsString } = request.query as { + key: string; + implicitTags: string; + }; - const cacheValue = lruCacheStore.get(key); + const cacheValue = lruCacheStore.get(key); - if (!cacheValue) { - await reply.code(404).send(null); + if (!cacheValue) { + await reply.code(404).send(null); - return; - } + return; + } - if (cacheValue.lifespan && cacheValue.lifespan.expireAt < Date.now() / 1000) { - lruCacheStore.delete(key); + if (cacheValue.lifespan && cacheValue.lifespan.expireAt < Date.now() / 1000) { + lruCacheStore.delete(key); - await reply.code(404).send(null); - } + await reply.code(404).send(null); + } - const implicitTags = JSON.parse(implicitTagsString); + const implicitTags = JSON.parse(implicitTagsString); - const combinedTags = new Set([...cacheValue.tags, ...implicitTags]); + const combinedTags = new Set([...cacheValue.tags, ...implicitTags]); - if (combinedTags.size === 0) { - await reply.code(404).send(null); - } + if (combinedTags.size === 0) { + await reply.code(404).send(null); + } - for (const tag of combinedTags) { - const revalidationTime = revalidatedTags.get(tag); + for (const tag of combinedTags) { + const revalidationTime = revalidatedTags.get(tag); - if (revalidationTime && revalidationTime > cacheValue.lastModified) { - lruCacheStore.delete(key); + if (revalidationTime && revalidationTime > cacheValue.lastModified) { + lruCacheStore.delete(key); - await reply.code(404).send(null); - } + await reply.code(404).send(null); } + } - await reply.code(200).send(cacheValue); + await reply.code(200).send(cacheValue); }); server.post('/set', async (request, reply): Promise => { - const [key, data] = request.body as [string, string, number]; + const [key, data] = request.body as [string, string, number]; - lruCacheStore.set(key, JSON.parse(data)); + lruCacheStore.set(key, JSON.parse(data)); - await reply.code(200).send(); + await reply.code(200).send(); }); server.post('/revalidateTag', async (request, reply): Promise => { - const [tag] = request.body as [string]; + const [tag] = request.body as [string]; - for (const [key, { tags }] of lruCacheStore.entries()) { - // If the value's tags include the specified tag, delete this entry - if (tags.includes(tag)) { - lruCacheStore.delete(key); - } + for (const [key, { tags }] of lruCacheStore.entries()) { + // If the value's tags include the specified tag, delete this entry + if (tags.includes(tag)) { + lruCacheStore.delete(key); } + } - if (tag.startsWith(NEXT_CACHE_IMPLICIT_TAG_ID)) { - revalidatedTags.set(tag, Date.now()); - } + if (tag.startsWith(NEXT_CACHE_IMPLICIT_TAG_ID)) { + revalidatedTags.set(tag, Date.now()); + } - await reply.code(200).send(); + await reply.code(200).send(); }); server.get('/clear-cache', async (_request, reply): Promise => { - lruCacheStore.clear(); + lruCacheStore.clear(); - await reply.code(200).send(true); + await reply.code(200).send(true); }); server.delete('/:key', async (request, reply): Promise => { - const { key } = request.params as { key?: string }; + const { key } = request.params as { key?: string }; - if (!key) { - await reply.code(200).send(false); + if (!key) { + await reply.code(200).send(false); - return; - } + return; + } - lruCacheStore.delete(key); + lruCacheStore.delete(key); - await reply.code(200).send(true); + await reply.code(200).send(true); }); server - .listen({ port, host }) - .then((address) => { - logger.info('next-cache-server listening on %s', address); - }) - .catch((err) => { - logger.error(err); - process.exit(1); - }); + .listen({ port, host }) + .then((address) => { + logger.info('next-cache-server listening on %s', address); + }) + .catch((err) => { + logger.error(err); + process.exit(1); + }); diff --git a/packages/server/tsconfig.json b/packages/server/tsconfig.json index 039069de..27e7353d 100644 --- a/packages/server/tsconfig.json +++ b/packages/server/tsconfig.json @@ -1,10 +1,10 @@ { - "extends": "@repo/typescript-config/library.json", - "include": ["."], - "exclude": ["dist", "node_modules"], - "compilerOptions": { - "paths": { - "@repo/next-common": ["../../internal/next-common/src/next-common.ts"] - } + "extends": "@repo/typescript-config/base.json", + "include": ["."], + "exclude": ["dist", "node_modules"], + "compilerOptions": { + "paths": { + "@repo/next-common": ["../../internal/next-common/src/next-common.ts"] } + } } diff --git a/packages/server/tsup.config.ts b/packages/server/tsup.config.ts index e45658d1..919757c6 100644 --- a/packages/server/tsup.config.ts +++ b/packages/server/tsup.config.ts @@ -1,15 +1,15 @@ import { defineConfig } from 'tsup'; export const tsup = defineConfig(() => { - return { - name: 'Build server', - entry: ['src/server.ts', 'src/types.ts'], - splitting: false, - dts: true, - clean: true, - outDir: 'dist', - format: 'esm', - target: 'node18', - noExternal: ['@repo/next-lru-cache/string'], - }; + return { + name: 'Build server', + entry: ['src/server.ts', 'src/types.ts'], + splitting: false, + dts: true, + clean: true, + outDir: 'dist', + format: 'esm', + target: 'node18', + noExternal: ['@repo/next-lru-cache/string'], + }; }); diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml new file mode 100644 index 00000000..fa05c160 --- /dev/null +++ b/pnpm-lock.yaml @@ -0,0 +1,10063 @@ +lockfileVersion: '9.0' + +settings: + autoInstallPeers: true + excludeLinksFromLockfile: false + +importers: + + .: + devDependencies: + '@biomejs/biome': + specifier: 1.9.4 + version: 1.9.4 + '@changesets/cli': + specifier: 2.27.12 + version: 2.27.12 + prettier: + specifier: 3.4.2 + version: 3.4.2 + prettier-plugin-packagejson: + specifier: 2.5.8 + version: 2.5.8(prettier@3.4.2) + turbo: + specifier: 2.4.0 + version: 2.4.0 + + apps/cache-testing: + dependencies: + '@neshca/cache-handler': + specifier: workspace:* + version: link:../../packages/cache-handler + axios: + specifier: 1.7.9 + version: 1.7.9 + next: + specifier: 14.2.15 + version: 14.2.15(@playwright/test@1.50.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + react: + specifier: 18.3.1 + version: 18.3.1 + react-dom: + specifier: 18.3.1 + version: 18.3.1(react@18.3.1) + redis: + specifier: 4.7.0 + version: 4.7.0 + devDependencies: + '@playwright/test': + specifier: 1.50.1 + version: 1.50.1 + '@repo/eslint-config': + specifier: workspace:* + version: link:../../internal/eslint-config + '@repo/typescript-config': + specifier: workspace:* + version: link:../../internal/typescript-config + '@types/node': + specifier: 22.13.1 + version: 22.13.1 + '@types/react': + specifier: 18.3.12 + version: 18.3.12 + '@types/react-dom': + specifier: 18.3.1 + version: 18.3.1 + eslint: + specifier: 9.20.0 + version: 9.20.0 + fastify: + specifier: 5.2.1 + version: 5.2.1 + pm2: + specifier: 5.4.3 + version: 5.4.3 + tsx: + specifier: 4.19.2 + version: 4.19.2 + typescript: + specifier: 5.7.3 + version: 5.7.3 + + docs/cache-handler-docs: + dependencies: + next: + specifier: 14.2.15 + version: 14.2.15(@playwright/test@1.50.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + nextra: + specifier: 3.2.4 + version: 3.2.4(@types/react@18.3.12)(acorn@8.14.0)(next@14.2.15(@playwright/test@1.50.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.3) + nextra-theme-docs: + specifier: 3.2.4 + version: 3.2.4(next@14.2.15(@playwright/test@1.50.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(nextra@3.2.4(@types/react@18.3.12)(acorn@8.14.0)(next@14.2.15(@playwright/test@1.50.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.3))(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + react: + specifier: 18.3.1 + version: 18.3.1 + react-dom: + specifier: 18.3.1 + version: 18.3.1(react@18.3.1) + devDependencies: + '@repo/eslint-config': + specifier: workspace:* + version: link:../../internal/eslint-config + '@repo/typescript-config': + specifier: workspace:* + version: link:../../internal/typescript-config + '@types/node': + specifier: 22.13.1 + version: 22.13.1 + '@types/react': + specifier: 18.3.12 + version: 18.3.12 + '@types/react-dom': + specifier: 18.3.1 + version: 18.3.1 + eslint: + specifier: 9.20.0 + version: 9.20.0 + serve: + specifier: 14.2.4 + version: 14.2.4 + typescript: + specifier: 5.7.3 + version: 5.7.3 + + internal/backend: + dependencies: + fastify: + specifier: 5.2.1 + version: 5.2.1 + pino: + specifier: 9.6.0 + version: 9.6.0 + devDependencies: + '@repo/typescript-config': + specifier: workspace:* + version: link:../typescript-config + '@types/node': + specifier: 22.13.1 + version: 22.13.1 + pino-pretty: + specifier: 13.0.0 + version: 13.0.0 + tsx: + specifier: 4.19.2 + version: 4.19.2 + typescript: + specifier: 5.7.3 + version: 5.7.3 + + internal/eslint-config: + devDependencies: + '@eslint/js': + specifier: 9.20.0 + version: 9.20.0 + '@next/eslint-plugin-next': + specifier: 15.1.6 + version: 15.1.6 + eslint: + specifier: 9.20.0 + version: 9.20.0 + eslint-config-prettier: + specifier: 10.0.1 + version: 10.0.1(eslint@9.20.0) + eslint-plugin-react: + specifier: 7.37.4 + version: 7.37.4(eslint@9.20.0) + eslint-plugin-react-hooks: + specifier: 5.1.0 + version: 5.1.0(eslint@9.20.0) + eslint-plugin-turbo: + specifier: 2.4.0 + version: 2.4.0(eslint@9.20.0)(turbo@2.4.0) + globals: + specifier: 15.14.0 + version: 15.14.0 + typescript: + specifier: 5.7.3 + version: 5.7.3 + typescript-eslint: + specifier: 8.23.0 + version: 8.23.0(eslint@9.20.0)(typescript@5.7.3) + + internal/next-common: + dependencies: + next: + specifier: 14.2.15 + version: 14.2.15(@playwright/test@1.50.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + devDependencies: + '@repo/typescript-config': + specifier: workspace:* + version: link:../typescript-config + '@types/node': + specifier: 22.13.1 + version: 22.13.1 + typescript: + specifier: 5.7.3 + version: 5.7.3 + + internal/next-lru-cache: + dependencies: + lru-cache: + specifier: 10.4.3 + version: 10.4.3 + devDependencies: + '@repo/next-common': + specifier: workspace:* + version: link:../next-common + '@repo/typescript-config': + specifier: workspace:* + version: link:../typescript-config + '@types/node': + specifier: 22.13.1 + version: 22.13.1 + typescript: + specifier: 5.7.3 + version: 5.7.3 + + internal/typescript-config: {} + + packages/cache-handler: + dependencies: + cluster-key-slot: + specifier: 1.1.2 + version: 1.1.2 + lru-cache: + specifier: 10.4.3 + version: 10.4.3 + next: + specifier: '>= 13.5.1 < 15' + version: 14.2.15(@playwright/test@1.50.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + redis: + specifier: '>= 4.6' + version: 4.7.0 + devDependencies: + '@repo/next-common': + specifier: workspace:* + version: link:../../internal/next-common + '@repo/next-lru-cache': + specifier: workspace:* + version: link:../../internal/next-lru-cache + '@repo/typescript-config': + specifier: workspace:* + version: link:../../internal/typescript-config + '@types/node': + specifier: 22.13.1 + version: 22.13.1 + tsup: + specifier: 8.3.6 + version: 8.3.6(postcss@8.4.31)(tsx@4.19.2)(typescript@5.7.3)(yaml@2.7.0) + tsx: + specifier: 4.19.2 + version: 4.19.2 + typescript: + specifier: 5.7.3 + version: 5.7.3 + + packages/json-replacer-reviver: + devDependencies: + '@repo/typescript-config': + specifier: workspace:* + version: link:../../internal/typescript-config + '@types/node': + specifier: 22.13.1 + version: 22.13.1 + tsup: + specifier: 8.3.6 + version: 8.3.6(postcss@8.4.31)(tsx@4.19.2)(typescript@5.7.3)(yaml@2.7.0) + tsx: + specifier: 4.19.2 + version: 4.19.2 + typescript: + specifier: 5.7.3 + version: 5.7.3 + + packages/server: + dependencies: + fastify: + specifier: 5.2.1 + version: 5.2.1 + pino: + specifier: 9.6.0 + version: 9.6.0 + devDependencies: + '@repo/next-common': + specifier: workspace:* + version: link:../../internal/next-common + '@repo/next-lru-cache': + specifier: workspace:* + version: link:../../internal/next-lru-cache + '@repo/typescript-config': + specifier: workspace:* + version: link:../../internal/typescript-config + '@types/node': + specifier: 22.13.1 + version: 22.13.1 + tsup: + specifier: 8.3.6 + version: 8.3.6(postcss@8.4.31)(tsx@4.19.2)(typescript@5.7.3)(yaml@2.7.0) + tsx: + specifier: 4.19.2 + version: 4.19.2 + typescript: + specifier: 5.7.3 + version: 5.7.3 + +packages: + + '@antfu/install-pkg@1.0.0': + resolution: {integrity: sha512-xvX6P/lo1B3ej0OsaErAjqgFYzYVcJpamjLAFLYh9vRJngBrMoUG7aVnrGTeqM7yxbyTD5p3F2+0/QUEh8Vzhw==} + + '@antfu/utils@8.1.0': + resolution: {integrity: sha512-XPR7Jfwp0FFl/dFYPX8ZjpmU4/1mIXTjnZ1ba48BLMyKOV62/tiRjdsFcPs2hsYcSud4tzk7w3a3LjX8Fu3huA==} + + '@babel/runtime@7.26.7': + resolution: {integrity: sha512-AOPI3D+a8dXnja+iwsUqGRjr1BbZIe771sXdapOtYI531gSqpi92vXivKcq2asu/DFpdl1ceFAKZyRzK2PCVcQ==} + engines: {node: '>=6.9.0'} + + '@biomejs/biome@1.9.4': + resolution: {integrity: sha512-1rkd7G70+o9KkTn5KLmDYXihGoTaIGO9PIIN2ZB7UJxFrWw04CZHPYiMRjYsaDvVV7hP1dYNRLxSANLaBFGpog==} + engines: {node: '>=14.21.3'} + hasBin: true + + '@biomejs/cli-darwin-arm64@1.9.4': + resolution: {integrity: sha512-bFBsPWrNvkdKrNCYeAp+xo2HecOGPAy9WyNyB/jKnnedgzl4W4Hb9ZMzYNbf8dMCGmUdSavlYHiR01QaYR58cw==} + engines: {node: '>=14.21.3'} + cpu: [arm64] + os: [darwin] + + '@biomejs/cli-darwin-x64@1.9.4': + resolution: {integrity: sha512-ngYBh/+bEedqkSevPVhLP4QfVPCpb+4BBe2p7Xs32dBgs7rh9nY2AIYUL6BgLw1JVXV8GlpKmb/hNiuIxfPfZg==} + engines: {node: '>=14.21.3'} + cpu: [x64] + os: [darwin] + + '@biomejs/cli-linux-arm64-musl@1.9.4': + resolution: {integrity: sha512-v665Ct9WCRjGa8+kTr0CzApU0+XXtRgwmzIf1SeKSGAv+2scAlW6JR5PMFo6FzqqZ64Po79cKODKf3/AAmECqA==} + engines: {node: '>=14.21.3'} + cpu: [arm64] + os: [linux] + + '@biomejs/cli-linux-arm64@1.9.4': + resolution: {integrity: sha512-fJIW0+LYujdjUgJJuwesP4EjIBl/N/TcOX3IvIHJQNsAqvV2CHIogsmA94BPG6jZATS4Hi+xv4SkBBQSt1N4/g==} + engines: {node: '>=14.21.3'} + cpu: [arm64] + os: [linux] + + '@biomejs/cli-linux-x64-musl@1.9.4': + resolution: {integrity: sha512-gEhi/jSBhZ2m6wjV530Yy8+fNqG8PAinM3oV7CyO+6c3CEh16Eizm21uHVsyVBEB6RIM8JHIl6AGYCv6Q6Q9Tg==} + engines: {node: '>=14.21.3'} + cpu: [x64] + os: [linux] + + '@biomejs/cli-linux-x64@1.9.4': + resolution: {integrity: sha512-lRCJv/Vi3Vlwmbd6K+oQ0KhLHMAysN8lXoCI7XeHlxaajk06u7G+UsFSO01NAs5iYuWKmVZjmiOzJ0OJmGsMwg==} + engines: {node: '>=14.21.3'} + cpu: [x64] + os: [linux] + + '@biomejs/cli-win32-arm64@1.9.4': + resolution: {integrity: sha512-tlbhLk+WXZmgwoIKwHIHEBZUwxml7bRJgk0X2sPyNR3S93cdRq6XulAZRQJ17FYGGzWne0fgrXBKpl7l4M87Hg==} + engines: {node: '>=14.21.3'} + cpu: [arm64] + os: [win32] + + '@biomejs/cli-win32-x64@1.9.4': + resolution: {integrity: sha512-8Y5wMhVIPaWe6jw2H+KlEm4wP/f7EW3810ZLmDlrEEy5KvBsb9ECEfu/kMWD484ijfQ8+nIi0giMgu9g1UAuuA==} + engines: {node: '>=14.21.3'} + cpu: [x64] + os: [win32] + + '@braintree/sanitize-url@7.1.1': + resolution: {integrity: sha512-i1L7noDNxtFyL5DmZafWy1wRVhGehQmzZaz1HiN5e7iylJMSZR7ekOV7NsIqa5qBldlLrsKv4HbgFUVlQrz8Mw==} + + '@changesets/apply-release-plan@7.0.8': + resolution: {integrity: sha512-qjMUj4DYQ1Z6qHawsn7S71SujrExJ+nceyKKyI9iB+M5p9lCL55afuEd6uLBPRpLGWQwkwvWegDHtwHJb1UjpA==} + + '@changesets/assemble-release-plan@6.0.5': + resolution: {integrity: sha512-IgvBWLNKZd6k4t72MBTBK3nkygi0j3t3zdC1zrfusYo0KpdsvnDjrMM9vPnTCLCMlfNs55jRL4gIMybxa64FCQ==} + + '@changesets/changelog-git@0.2.0': + resolution: {integrity: sha512-bHOx97iFI4OClIT35Lok3sJAwM31VbUM++gnMBV16fdbtBhgYu4dxsphBF/0AZZsyAHMrnM0yFcj5gZM1py6uQ==} + + '@changesets/cli@2.27.12': + resolution: {integrity: sha512-9o3fOfHYOvBnyEn0mcahB7wzaA3P4bGJf8PNqGit5PKaMEFdsRixik+txkrJWd2VX+O6wRFXpxQL8j/1ANKE9g==} + hasBin: true + + '@changesets/config@3.0.5': + resolution: {integrity: sha512-QyXLSSd10GquX7hY0Mt4yQFMEeqnO5z/XLpbIr4PAkNNoQNKwDyiSrx4yd749WddusH1v3OSiA0NRAYmH/APpQ==} + + '@changesets/errors@0.2.0': + resolution: {integrity: sha512-6BLOQUscTpZeGljvyQXlWOItQyU71kCdGz7Pi8H8zdw6BI0g3m43iL4xKUVPWtG+qrrL9DTjpdn8eYuCQSRpow==} + + '@changesets/get-dependents-graph@2.1.2': + resolution: {integrity: sha512-sgcHRkiBY9i4zWYBwlVyAjEM9sAzs4wYVwJUdnbDLnVG3QwAaia1Mk5P8M7kraTOZN+vBET7n8KyB0YXCbFRLQ==} + + '@changesets/get-release-plan@4.0.6': + resolution: {integrity: sha512-FHRwBkY7Eili04Y5YMOZb0ezQzKikTka4wL753vfUA5COSebt7KThqiuCN9BewE4/qFGgF/5t3AuzXx1/UAY4w==} + + '@changesets/get-version-range-type@0.4.0': + resolution: {integrity: sha512-hwawtob9DryoGTpixy1D3ZXbGgJu1Rhr+ySH2PvTLHvkZuQ7sRT4oQwMh0hbqZH1weAooedEjRsbrWcGLCeyVQ==} + + '@changesets/git@3.0.2': + resolution: {integrity: sha512-r1/Kju9Y8OxRRdvna+nxpQIsMsRQn9dhhAZt94FLDeu0Hij2hnOozW8iqnHBgvu+KdnJppCveQwK4odwfw/aWQ==} + + '@changesets/logger@0.1.1': + resolution: {integrity: sha512-OQtR36ZlnuTxKqoW4Sv6x5YIhOmClRd5pWsjZsddYxpWs517R0HkyiefQPIytCVh4ZcC5x9XaG8KTdd5iRQUfg==} + + '@changesets/parse@0.4.0': + resolution: {integrity: sha512-TS/9KG2CdGXS27S+QxbZXgr8uPsP4yNJYb4BC2/NeFUj80Rni3TeD2qwWmabymxmrLo7JEsytXH1FbpKTbvivw==} + + '@changesets/pre@2.0.1': + resolution: {integrity: sha512-vvBJ/If4jKM4tPz9JdY2kGOgWmCowUYOi5Ycv8dyLnEE8FgpYYUo1mgJZxcdtGGP3aG8rAQulGLyyXGSLkIMTQ==} + + '@changesets/read@0.6.2': + resolution: {integrity: sha512-wjfQpJvryY3zD61p8jR87mJdyx2FIhEcdXhKUqkja87toMrP/3jtg/Yg29upN+N4Ckf525/uvV7a4tzBlpk6gg==} + + '@changesets/should-skip-package@0.1.1': + resolution: {integrity: sha512-H9LjLbF6mMHLtJIc/eHR9Na+MifJ3VxtgP/Y+XLn4BF7tDTEN1HNYtH6QMcjP1uxp9sjaFYmW8xqloaCi/ckTg==} + + '@changesets/types@4.1.0': + resolution: {integrity: sha512-LDQvVDv5Kb50ny2s25Fhm3d9QSZimsoUGBsUioj6MC3qbMUCuC8GPIvk/M6IvXx3lYhAs0lwWUQLb+VIEUCECw==} + + '@changesets/types@6.0.0': + resolution: {integrity: sha512-b1UkfNulgKoWfqyHtzKS5fOZYSJO+77adgL7DLRDr+/7jhChN+QcHnbjiQVOz/U+Ts3PGNySq7diAItzDgugfQ==} + + '@changesets/write@0.3.2': + resolution: {integrity: sha512-kDxDrPNpUgsjDbWBvUo27PzKX4gqeKOlhibaOXDJA6kuBisGqNHv/HwGJrAu8U/dSf8ZEFIeHIPtvSlZI1kULw==} + + '@chevrotain/cst-dts-gen@11.0.3': + resolution: {integrity: sha512-BvIKpRLeS/8UbfxXxgC33xOumsacaeCKAjAeLyOn7Pcp95HiRbrpl14S+9vaZLolnbssPIUuiUd8IvgkRyt6NQ==} + + '@chevrotain/gast@11.0.3': + resolution: {integrity: sha512-+qNfcoNk70PyS/uxmj3li5NiECO+2YKZZQMbmjTqRI3Qchu8Hig/Q9vgkHpI3alNjr7M+a2St5pw5w5F6NL5/Q==} + + '@chevrotain/regexp-to-ast@11.0.3': + resolution: {integrity: sha512-1fMHaBZxLFvWI067AVbGJav1eRY7N8DDvYCTwGBiE/ytKBgP8azTdgyrKyWZ9Mfh09eHWb5PgTSO8wi7U824RA==} + + '@chevrotain/types@11.0.3': + resolution: {integrity: sha512-gsiM3G8b58kZC2HaWR50gu6Y1440cHiJ+i3JUvcp/35JchYejb2+5MVeJK0iKThYpAa/P2PYFV4hoi44HD+aHQ==} + + '@chevrotain/utils@11.0.3': + resolution: {integrity: sha512-YslZMgtJUyuMbZ+aKvfF3x1f5liK4mWNxghFRv7jqRR9C3R3fAOGTTKvxXDa2Y1s9zSbcpuO0cAxDYsc9SrXoQ==} + + '@esbuild/aix-ppc64@0.23.1': + resolution: {integrity: sha512-6VhYk1diRqrhBAqpJEdjASR/+WVRtfjpqKuNw11cLiaWpAT/Uu+nokB+UJnevzy/P9C/ty6AOe0dwueMrGh/iQ==} + engines: {node: '>=18'} + cpu: [ppc64] + os: [aix] + + '@esbuild/aix-ppc64@0.24.2': + resolution: {integrity: sha512-thpVCb/rhxE/BnMLQ7GReQLLN8q9qbHmI55F4489/ByVg2aQaQ6kbcLb6FHkocZzQhxc4gx0sCk0tJkKBFzDhA==} + engines: {node: '>=18'} + cpu: [ppc64] + os: [aix] + + '@esbuild/android-arm64@0.23.1': + resolution: {integrity: sha512-xw50ipykXcLstLeWH7WRdQuysJqejuAGPd30vd1i5zSyKK3WE+ijzHmLKxdiCMtH1pHz78rOg0BKSYOSB/2Khw==} + engines: {node: '>=18'} + cpu: [arm64] + os: [android] + + '@esbuild/android-arm64@0.24.2': + resolution: {integrity: sha512-cNLgeqCqV8WxfcTIOeL4OAtSmL8JjcN6m09XIgro1Wi7cF4t/THaWEa7eL5CMoMBdjoHOTh/vwTO/o2TRXIyzg==} + engines: {node: '>=18'} + cpu: [arm64] + os: [android] + + '@esbuild/android-arm@0.23.1': + resolution: {integrity: sha512-uz6/tEy2IFm9RYOyvKl88zdzZfwEfKZmnX9Cj1BHjeSGNuGLuMD1kR8y5bteYmwqKm1tj8m4cb/aKEorr6fHWQ==} + engines: {node: '>=18'} + cpu: [arm] + os: [android] + + '@esbuild/android-arm@0.24.2': + resolution: {integrity: sha512-tmwl4hJkCfNHwFB3nBa8z1Uy3ypZpxqxfTQOcHX+xRByyYgunVbZ9MzUUfb0RxaHIMnbHagwAxuTL+tnNM+1/Q==} + engines: {node: '>=18'} + cpu: [arm] + os: [android] + + '@esbuild/android-x64@0.23.1': + resolution: {integrity: sha512-nlN9B69St9BwUoB+jkyU090bru8L0NA3yFvAd7k8dNsVH8bi9a8cUAUSEcEEgTp2z3dbEDGJGfP6VUnkQnlReg==} + engines: {node: '>=18'} + cpu: [x64] + os: [android] + + '@esbuild/android-x64@0.24.2': + resolution: {integrity: sha512-B6Q0YQDqMx9D7rvIcsXfmJfvUYLoP722bgfBlO5cGvNVb5V/+Y7nhBE3mHV9OpxBf4eAS2S68KZztiPaWq4XYw==} + engines: {node: '>=18'} + cpu: [x64] + os: [android] + + '@esbuild/darwin-arm64@0.23.1': + resolution: {integrity: sha512-YsS2e3Wtgnw7Wq53XXBLcV6JhRsEq8hkfg91ESVadIrzr9wO6jJDMZnCQbHm1Guc5t/CdDiFSSfWP58FNuvT3Q==} + engines: {node: '>=18'} + cpu: [arm64] + os: [darwin] + + '@esbuild/darwin-arm64@0.24.2': + resolution: {integrity: sha512-kj3AnYWc+CekmZnS5IPu9D+HWtUI49hbnyqk0FLEJDbzCIQt7hg7ucF1SQAilhtYpIujfaHr6O0UHlzzSPdOeA==} + engines: {node: '>=18'} + cpu: [arm64] + os: [darwin] + + '@esbuild/darwin-x64@0.23.1': + resolution: {integrity: sha512-aClqdgTDVPSEGgoCS8QDG37Gu8yc9lTHNAQlsztQ6ENetKEO//b8y31MMu2ZaPbn4kVsIABzVLXYLhCGekGDqw==} + engines: {node: '>=18'} + cpu: [x64] + os: [darwin] + + '@esbuild/darwin-x64@0.24.2': + resolution: {integrity: sha512-WeSrmwwHaPkNR5H3yYfowhZcbriGqooyu3zI/3GGpF8AyUdsrrP0X6KumITGA9WOyiJavnGZUwPGvxvwfWPHIA==} + engines: {node: '>=18'} + cpu: [x64] + os: [darwin] + + '@esbuild/freebsd-arm64@0.23.1': + resolution: {integrity: sha512-h1k6yS8/pN/NHlMl5+v4XPfikhJulk4G+tKGFIOwURBSFzE8bixw1ebjluLOjfwtLqY0kewfjLSrO6tN2MgIhA==} + engines: {node: '>=18'} + cpu: [arm64] + os: [freebsd] + + '@esbuild/freebsd-arm64@0.24.2': + resolution: {integrity: sha512-UN8HXjtJ0k/Mj6a9+5u6+2eZ2ERD7Edt1Q9IZiB5UZAIdPnVKDoG7mdTVGhHJIeEml60JteamR3qhsr1r8gXvg==} + engines: {node: '>=18'} + cpu: [arm64] + os: [freebsd] + + '@esbuild/freebsd-x64@0.23.1': + resolution: {integrity: sha512-lK1eJeyk1ZX8UklqFd/3A60UuZ/6UVfGT2LuGo3Wp4/z7eRTRYY+0xOu2kpClP+vMTi9wKOfXi2vjUpO1Ro76g==} + engines: {node: '>=18'} + cpu: [x64] + os: [freebsd] + + '@esbuild/freebsd-x64@0.24.2': + resolution: {integrity: sha512-TvW7wE/89PYW+IevEJXZ5sF6gJRDY/14hyIGFXdIucxCsbRmLUcjseQu1SyTko+2idmCw94TgyaEZi9HUSOe3Q==} + engines: {node: '>=18'} + cpu: [x64] + os: [freebsd] + + '@esbuild/linux-arm64@0.23.1': + resolution: {integrity: sha512-/93bf2yxencYDnItMYV/v116zff6UyTjo4EtEQjUBeGiVpMmffDNUyD9UN2zV+V3LRV3/on4xdZ26NKzn6754g==} + engines: {node: '>=18'} + cpu: [arm64] + os: [linux] + + '@esbuild/linux-arm64@0.24.2': + resolution: {integrity: sha512-7HnAD6074BW43YvvUmE/35Id9/NB7BeX5EoNkK9obndmZBUk8xmJJeU7DwmUeN7tkysslb2eSl6CTrYz6oEMQg==} + engines: {node: '>=18'} + cpu: [arm64] + os: [linux] + + '@esbuild/linux-arm@0.23.1': + resolution: {integrity: sha512-CXXkzgn+dXAPs3WBwE+Kvnrf4WECwBdfjfeYHpMeVxWE0EceB6vhWGShs6wi0IYEqMSIzdOF1XjQ/Mkm5d7ZdQ==} + engines: {node: '>=18'} + cpu: [arm] + os: [linux] + + '@esbuild/linux-arm@0.24.2': + resolution: {integrity: sha512-n0WRM/gWIdU29J57hJyUdIsk0WarGd6To0s+Y+LwvlC55wt+GT/OgkwoXCXvIue1i1sSNWblHEig00GBWiJgfA==} + engines: {node: '>=18'} + cpu: [arm] + os: [linux] + + '@esbuild/linux-ia32@0.23.1': + resolution: {integrity: sha512-VTN4EuOHwXEkXzX5nTvVY4s7E/Krz7COC8xkftbbKRYAl96vPiUssGkeMELQMOnLOJ8k3BY1+ZY52tttZnHcXQ==} + engines: {node: '>=18'} + cpu: [ia32] + os: [linux] + + '@esbuild/linux-ia32@0.24.2': + resolution: {integrity: sha512-sfv0tGPQhcZOgTKO3oBE9xpHuUqguHvSo4jl+wjnKwFpapx+vUDcawbwPNuBIAYdRAvIDBfZVvXprIj3HA+Ugw==} + engines: {node: '>=18'} + cpu: [ia32] + os: [linux] + + '@esbuild/linux-loong64@0.23.1': + resolution: {integrity: sha512-Vx09LzEoBa5zDnieH8LSMRToj7ir/Jeq0Gu6qJ/1GcBq9GkfoEAoXvLiW1U9J1qE/Y/Oyaq33w5p2ZWrNNHNEw==} + engines: {node: '>=18'} + cpu: [loong64] + os: [linux] + + '@esbuild/linux-loong64@0.24.2': + resolution: {integrity: sha512-CN9AZr8kEndGooS35ntToZLTQLHEjtVB5n7dl8ZcTZMonJ7CCfStrYhrzF97eAecqVbVJ7APOEe18RPI4KLhwQ==} + engines: {node: '>=18'} + cpu: [loong64] + os: [linux] + + '@esbuild/linux-mips64el@0.23.1': + resolution: {integrity: sha512-nrFzzMQ7W4WRLNUOU5dlWAqa6yVeI0P78WKGUo7lg2HShq/yx+UYkeNSE0SSfSure0SqgnsxPvmAUu/vu0E+3Q==} + engines: {node: '>=18'} + cpu: [mips64el] + os: [linux] + + '@esbuild/linux-mips64el@0.24.2': + resolution: {integrity: sha512-iMkk7qr/wl3exJATwkISxI7kTcmHKE+BlymIAbHO8xanq/TjHaaVThFF6ipWzPHryoFsesNQJPE/3wFJw4+huw==} + engines: {node: '>=18'} + cpu: [mips64el] + os: [linux] + + '@esbuild/linux-ppc64@0.23.1': + resolution: {integrity: sha512-dKN8fgVqd0vUIjxuJI6P/9SSSe/mB9rvA98CSH2sJnlZ/OCZWO1DJvxj8jvKTfYUdGfcq2dDxoKaC6bHuTlgcw==} + engines: {node: '>=18'} + cpu: [ppc64] + os: [linux] + + '@esbuild/linux-ppc64@0.24.2': + resolution: {integrity: sha512-shsVrgCZ57Vr2L8mm39kO5PPIb+843FStGt7sGGoqiiWYconSxwTiuswC1VJZLCjNiMLAMh34jg4VSEQb+iEbw==} + engines: {node: '>=18'} + cpu: [ppc64] + os: [linux] + + '@esbuild/linux-riscv64@0.23.1': + resolution: {integrity: sha512-5AV4Pzp80fhHL83JM6LoA6pTQVWgB1HovMBsLQ9OZWLDqVY8MVobBXNSmAJi//Csh6tcY7e7Lny2Hg1tElMjIA==} + engines: {node: '>=18'} + cpu: [riscv64] + os: [linux] + + '@esbuild/linux-riscv64@0.24.2': + resolution: {integrity: sha512-4eSFWnU9Hhd68fW16GD0TINewo1L6dRrB+oLNNbYyMUAeOD2yCK5KXGK1GH4qD/kT+bTEXjsyTCiJGHPZ3eM9Q==} + engines: {node: '>=18'} + cpu: [riscv64] + os: [linux] + + '@esbuild/linux-s390x@0.23.1': + resolution: {integrity: sha512-9ygs73tuFCe6f6m/Tb+9LtYxWR4c9yg7zjt2cYkjDbDpV/xVn+68cQxMXCjUpYwEkze2RcU/rMnfIXNRFmSoDw==} + engines: {node: '>=18'} + cpu: [s390x] + os: [linux] + + '@esbuild/linux-s390x@0.24.2': + resolution: {integrity: sha512-S0Bh0A53b0YHL2XEXC20bHLuGMOhFDO6GN4b3YjRLK//Ep3ql3erpNcPlEFed93hsQAjAQDNsvcK+hV90FubSw==} + engines: {node: '>=18'} + cpu: [s390x] + os: [linux] + + '@esbuild/linux-x64@0.23.1': + resolution: {integrity: sha512-EV6+ovTsEXCPAp58g2dD68LxoP/wK5pRvgy0J/HxPGB009omFPv3Yet0HiaqvrIrgPTBuC6wCH1LTOY91EO5hQ==} + engines: {node: '>=18'} + cpu: [x64] + os: [linux] + + '@esbuild/linux-x64@0.24.2': + resolution: {integrity: sha512-8Qi4nQcCTbLnK9WoMjdC9NiTG6/E38RNICU6sUNqK0QFxCYgoARqVqxdFmWkdonVsvGqWhmm7MO0jyTqLqwj0Q==} + engines: {node: '>=18'} + cpu: [x64] + os: [linux] + + '@esbuild/netbsd-arm64@0.24.2': + resolution: {integrity: sha512-wuLK/VztRRpMt9zyHSazyCVdCXlpHkKm34WUyinD2lzK07FAHTq0KQvZZlXikNWkDGoT6x3TD51jKQ7gMVpopw==} + engines: {node: '>=18'} + cpu: [arm64] + os: [netbsd] + + '@esbuild/netbsd-x64@0.23.1': + resolution: {integrity: sha512-aevEkCNu7KlPRpYLjwmdcuNz6bDFiE7Z8XC4CPqExjTvrHugh28QzUXVOZtiYghciKUacNktqxdpymplil1beA==} + engines: {node: '>=18'} + cpu: [x64] + os: [netbsd] + + '@esbuild/netbsd-x64@0.24.2': + resolution: {integrity: sha512-VefFaQUc4FMmJuAxmIHgUmfNiLXY438XrL4GDNV1Y1H/RW3qow68xTwjZKfj/+Plp9NANmzbH5R40Meudu8mmw==} + engines: {node: '>=18'} + cpu: [x64] + os: [netbsd] + + '@esbuild/openbsd-arm64@0.23.1': + resolution: {integrity: sha512-3x37szhLexNA4bXhLrCC/LImN/YtWis6WXr1VESlfVtVeoFJBRINPJ3f0a/6LV8zpikqoUg4hyXw0sFBt5Cr+Q==} + engines: {node: '>=18'} + cpu: [arm64] + os: [openbsd] + + '@esbuild/openbsd-arm64@0.24.2': + resolution: {integrity: sha512-YQbi46SBct6iKnszhSvdluqDmxCJA+Pu280Av9WICNwQmMxV7nLRHZfjQzwbPs3jeWnuAhE9Jy0NrnJ12Oz+0A==} + engines: {node: '>=18'} + cpu: [arm64] + os: [openbsd] + + '@esbuild/openbsd-x64@0.23.1': + resolution: {integrity: sha512-aY2gMmKmPhxfU+0EdnN+XNtGbjfQgwZj43k8G3fyrDM/UdZww6xrWxmDkuz2eCZchqVeABjV5BpildOrUbBTqA==} + engines: {node: '>=18'} + cpu: [x64] + os: [openbsd] + + '@esbuild/openbsd-x64@0.24.2': + resolution: {integrity: sha512-+iDS6zpNM6EnJyWv0bMGLWSWeXGN/HTaF/LXHXHwejGsVi+ooqDfMCCTerNFxEkM3wYVcExkeGXNqshc9iMaOA==} + engines: {node: '>=18'} + cpu: [x64] + os: [openbsd] + + '@esbuild/sunos-x64@0.23.1': + resolution: {integrity: sha512-RBRT2gqEl0IKQABT4XTj78tpk9v7ehp+mazn2HbUeZl1YMdaGAQqhapjGTCe7uw7y0frDi4gS0uHzhvpFuI1sA==} + engines: {node: '>=18'} + cpu: [x64] + os: [sunos] + + '@esbuild/sunos-x64@0.24.2': + resolution: {integrity: sha512-hTdsW27jcktEvpwNHJU4ZwWFGkz2zRJUz8pvddmXPtXDzVKTTINmlmga3ZzwcuMpUvLw7JkLy9QLKyGpD2Yxig==} + engines: {node: '>=18'} + cpu: [x64] + os: [sunos] + + '@esbuild/win32-arm64@0.23.1': + resolution: {integrity: sha512-4O+gPR5rEBe2FpKOVyiJ7wNDPA8nGzDuJ6gN4okSA1gEOYZ67N8JPk58tkWtdtPeLz7lBnY6I5L3jdsr3S+A6A==} + engines: {node: '>=18'} + cpu: [arm64] + os: [win32] + + '@esbuild/win32-arm64@0.24.2': + resolution: {integrity: sha512-LihEQ2BBKVFLOC9ZItT9iFprsE9tqjDjnbulhHoFxYQtQfai7qfluVODIYxt1PgdoyQkz23+01rzwNwYfutxUQ==} + engines: {node: '>=18'} + cpu: [arm64] + os: [win32] + + '@esbuild/win32-ia32@0.23.1': + resolution: {integrity: sha512-BcaL0Vn6QwCwre3Y717nVHZbAa4UBEigzFm6VdsVdT/MbZ38xoj1X9HPkZhbmaBGUD1W8vxAfffbDe8bA6AKnQ==} + engines: {node: '>=18'} + cpu: [ia32] + os: [win32] + + '@esbuild/win32-ia32@0.24.2': + resolution: {integrity: sha512-q+iGUwfs8tncmFC9pcnD5IvRHAzmbwQ3GPS5/ceCyHdjXubwQWI12MKWSNSMYLJMq23/IUCvJMS76PDqXe1fxA==} + engines: {node: '>=18'} + cpu: [ia32] + os: [win32] + + '@esbuild/win32-x64@0.23.1': + resolution: {integrity: sha512-BHpFFeslkWrXWyUPnbKm+xYYVYruCinGcftSBaa8zoF9hZO4BcSCFUvHVTtzpIY6YzUnYtuEhZ+C9iEXjxnasg==} + engines: {node: '>=18'} + cpu: [x64] + os: [win32] + + '@esbuild/win32-x64@0.24.2': + resolution: {integrity: sha512-7VTgWzgMGvup6aSqDPLiW5zHaxYJGTO4OokMjIlrCtf+VpEL+cXKtCvg723iguPYI5oaUNdS+/V7OU2gvXVWEg==} + engines: {node: '>=18'} + cpu: [x64] + os: [win32] + + '@eslint-community/eslint-utils@4.4.1': + resolution: {integrity: sha512-s3O3waFUrMV8P/XaF/+ZTp1X9XBZW1a4B97ZnjQF2KYWaFD2A8KyFBsrsfSjEmjn3RGWAIuvlneuZm3CUK3jbA==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 + + '@eslint-community/regexpp@4.12.1': + resolution: {integrity: sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==} + engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} + + '@eslint/config-array@0.19.2': + resolution: {integrity: sha512-GNKqxfHG2ySmJOBSHg7LxeUx4xpuCoFjacmlCoYWEbaPXLwvfIjixRI12xCQZeULksQb23uiA8F40w5TojpV7w==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@eslint/core@0.10.0': + resolution: {integrity: sha512-gFHJ+xBOo4G3WRlR1e/3G8A6/KZAH6zcE/hkLRCZTi/B9avAG365QhFA8uOGzTMqgTghpn7/fSnscW++dpMSAw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@eslint/core@0.11.0': + resolution: {integrity: sha512-DWUB2pksgNEb6Bz2fggIy1wh6fGgZP4Xyy/Mt0QZPiloKKXerbqq9D3SBQTlCRYOrcRPu4vuz+CGjwdfqxnoWA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@eslint/eslintrc@3.2.0': + resolution: {integrity: sha512-grOjVNN8P3hjJn/eIETF1wwd12DdnwFDoyceUJLYYdkpbwq3nLi+4fqrTAONx7XDALqlL220wC/RHSC/QTI/0w==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@eslint/js@9.20.0': + resolution: {integrity: sha512-iZA07H9io9Wn836aVTytRaNqh00Sad+EamwOVJT12GTLw1VGMFV/4JaME+JjLtr9fiGaoWgYnS54wrfWsSs4oQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@eslint/object-schema@2.1.6': + resolution: {integrity: sha512-RBMg5FRL0I0gs51M/guSAj5/e14VQ4tpZnQNWwuDT66P14I43ItmPfIZRhO9fUVIPOAQXU47atlywZ/czoqFPA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@eslint/plugin-kit@0.2.5': + resolution: {integrity: sha512-lB05FkqEdUg2AA0xEbUz0SnkXT1LcCTa438W4IWTUh4hdOnVbQyOJ81OrDXsJk/LSiJHubgGEFoR5EHq1NsH1A==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@fastify/ajv-compiler@4.0.2': + resolution: {integrity: sha512-Rkiu/8wIjpsf46Rr+Fitd3HRP+VsxUFDDeag0hs9L0ksfnwx2g7SPQQTFL0E8Qv+rfXzQOxBJnjUB9ITUDjfWQ==} + + '@fastify/error@4.0.0': + resolution: {integrity: sha512-OO/SA8As24JtT1usTUTKgGH7uLvhfwZPwlptRi2Dp5P4KKmJI3gvsZ8MIHnNwDs4sLf/aai5LzTyl66xr7qMxA==} + + '@fastify/fast-json-stringify-compiler@5.0.2': + resolution: {integrity: sha512-YdR7gqlLg1xZAQa+SX4sMNzQHY5pC54fu9oC5aYSUqBhyn6fkLkrdtKlpVdCNPlwuUuXA1PjFTEmvMF6ZVXVGw==} + + '@fastify/forwarded@3.0.0': + resolution: {integrity: sha512-kJExsp4JCms7ipzg7SJ3y8DwmePaELHxKYtg+tZow+k0znUTf3cb+npgyqm8+ATZOdmfgfydIebPDWM172wfyA==} + + '@fastify/merge-json-schemas@0.2.1': + resolution: {integrity: sha512-OA3KGBCy6KtIvLf8DINC5880o5iBlDX4SxzLQS8HorJAbqluzLRn80UXU0bxZn7UOFhFgpRJDasfwn9nG4FG4A==} + + '@fastify/proxy-addr@5.0.0': + resolution: {integrity: sha512-37qVVA1qZ5sgH7KpHkkC4z9SK6StIsIcOmpjvMPXNb3vx2GQxhZocogVYbr2PbbeLCQxYIPDok307xEvRZOzGA==} + + '@floating-ui/core@1.6.9': + resolution: {integrity: sha512-uMXCuQ3BItDUbAMhIXw7UPXRfAlOAvZzdK9BWpE60MCn+Svt3aLn9jsPTi/WNGlRUu2uI0v5S7JiIUsbsvh3fw==} + + '@floating-ui/dom@1.6.13': + resolution: {integrity: sha512-umqzocjDgNRGTuO7Q8CU32dkHkECqI8ZdMZ5Swb6QAM0t5rnlrN3lGo1hdpscRd3WS8T6DKYK4ephgIH9iRh3w==} + + '@floating-ui/react-dom@2.1.2': + resolution: {integrity: sha512-06okr5cgPzMNBy+Ycse2A6udMi4bqwW/zgBF/rwjcNqWkyr82Mcg8b0vjX8OJpZFy/FKjJmw6wV7t44kK6kW7A==} + peerDependencies: + react: '>=16.8.0' + react-dom: '>=16.8.0' + + '@floating-ui/react@0.26.28': + resolution: {integrity: sha512-yORQuuAtVpiRjpMhdc0wJj06b9JFjrYF4qp96j++v2NBpbi6SEGF7donUJ3TMieerQ6qVkAv1tgr7L4r5roTqw==} + peerDependencies: + react: '>=16.8.0' + react-dom: '>=16.8.0' + + '@floating-ui/utils@0.2.9': + resolution: {integrity: sha512-MDWhGtE+eHw5JW7lq4qhc5yRLS11ERl1c7Z6Xd0a58DozHES6EnNNwUWbMiG4J9Cgj053Bhk8zvlhFYKVhULwg==} + + '@formatjs/intl-localematcher@0.5.10': + resolution: {integrity: sha512-af3qATX+m4Rnd9+wHcjJ4w2ijq+rAVP3CCinJQvFv1kgSu1W6jypUmvleJxcewdxmutM8dmIRZFxO/IQBZmP2Q==} + + '@headlessui/react@2.2.0': + resolution: {integrity: sha512-RzCEg+LXsuI7mHiSomsu/gBJSjpupm6A1qIZ5sWjd7JhARNlMiSA4kKfJpCKwU9tE+zMRterhhrP74PvfJrpXQ==} + engines: {node: '>=10'} + peerDependencies: + react: ^18 || ^19 || ^19.0.0-rc + react-dom: ^18 || ^19 || ^19.0.0-rc + + '@humanfs/core@0.19.1': + resolution: {integrity: sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA==} + engines: {node: '>=18.18.0'} + + '@humanfs/node@0.16.6': + resolution: {integrity: sha512-YuI2ZHQL78Q5HbhDiBA1X4LmYdXCKCMQIfw0pw7piHJwyREFebJUvrQN4cMssyES6x+vfUbx1CIpaQUKYdQZOw==} + engines: {node: '>=18.18.0'} + + '@humanwhocodes/module-importer@1.0.1': + resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==} + engines: {node: '>=12.22'} + + '@humanwhocodes/retry@0.3.1': + resolution: {integrity: sha512-JBxkERygn7Bv/GbN5Rv8Ul6LVknS+5Bp6RgDC/O8gEBU/yeH5Ui5C/OlWrTb6qct7LjjfT6Re2NxB0ln0yYybA==} + engines: {node: '>=18.18'} + + '@humanwhocodes/retry@0.4.1': + resolution: {integrity: sha512-c7hNEllBlenFTHBky65mhq8WD2kbN9Q6gk0bTk8lSBvc554jpXSkST1iePudpt7+A/AQvuHs9EMqjHDXMY1lrA==} + engines: {node: '>=18.18'} + + '@iconify/types@2.0.0': + resolution: {integrity: sha512-+wluvCrRhXrhyOmRDJ3q8mux9JkKy5SJ/v8ol2tu4FVjyYvtEzkc/3pK15ET6RKg4b4w4BmTk1+gsCUhf21Ykg==} + + '@iconify/utils@2.3.0': + resolution: {integrity: sha512-GmQ78prtwYW6EtzXRU1rY+KwOKfz32PD7iJh6Iyqw68GiKuoZ2A6pRtzWONz5VQJbp50mEjXh/7NkumtrAgRKA==} + + '@isaacs/cliui@8.0.2': + resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==} + engines: {node: '>=12'} + + '@jridgewell/gen-mapping@0.3.8': + resolution: {integrity: sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==} + engines: {node: '>=6.0.0'} + + '@jridgewell/resolve-uri@3.1.2': + resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==} + engines: {node: '>=6.0.0'} + + '@jridgewell/set-array@1.2.1': + resolution: {integrity: sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==} + engines: {node: '>=6.0.0'} + + '@jridgewell/sourcemap-codec@1.5.0': + resolution: {integrity: sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==} + + '@jridgewell/trace-mapping@0.3.25': + resolution: {integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==} + + '@manypkg/find-root@1.1.0': + resolution: {integrity: sha512-mki5uBvhHzO8kYYix/WRy2WX8S3B5wdVSc9D6KcU5lQNglP2yt58/VfLuAK49glRXChosY8ap2oJ1qgma3GUVA==} + + '@manypkg/get-packages@1.1.3': + resolution: {integrity: sha512-fo+QhuU3qE/2TQMQmbVMqaQ6EWbMhi4ABWP+O4AM1NqPBuy0OrApV5LO6BrrgnhtAHS2NH6RrVk9OL181tTi8A==} + + '@mdx-js/mdx@3.1.0': + resolution: {integrity: sha512-/QxEhPAvGwbQmy1Px8F899L5Uc2KZ6JtXwlCgJmjSTBedwOZkByYcBG4GceIGPXRDsmfxhHazuS+hlOShRLeDw==} + + '@mdx-js/react@3.1.0': + resolution: {integrity: sha512-QjHtSaoameoalGnKDT3FoIl4+9RwyTmo9ZJGBdLOks/YOiWHoRDI3PUwEzOE7kEmGcV3AFcp9K6dYu9rEuKLAQ==} + peerDependencies: + '@types/react': '>=16' + react: '>=16' + + '@mermaid-js/parser@0.3.0': + resolution: {integrity: sha512-HsvL6zgE5sUPGgkIDlmAWR1HTNHz2Iy11BAWPTa4Jjabkpguy4Ze2gzfLrg6pdRuBvFwgUYyxiaNqZwrEEXepA==} + + '@napi-rs/simple-git-android-arm-eabi@0.1.19': + resolution: {integrity: sha512-XryEH/hadZ4Duk/HS/HC/cA1j0RHmqUGey3MsCf65ZS0VrWMqChXM/xlTPWuY5jfCc/rPubHaqI7DZlbexnX/g==} + engines: {node: '>= 10'} + cpu: [arm] + os: [android] + + '@napi-rs/simple-git-android-arm64@0.1.19': + resolution: {integrity: sha512-ZQ0cPvY6nV9p7zrR9ZPo7hQBkDAcY/CHj3BjYNhykeUCiSNCrhvwX+WEeg5on8M1j4d5jcI/cwVG2FslfiByUg==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [android] + + '@napi-rs/simple-git-darwin-arm64@0.1.19': + resolution: {integrity: sha512-viZB5TYgjA1vH+QluhxZo0WKro3xBA+1xSzYx8mcxUMO5gnAoUMwXn0ZO/6Zy6pai+aGae+cj6XihGnrBRu3Pg==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [darwin] + + '@napi-rs/simple-git-darwin-x64@0.1.19': + resolution: {integrity: sha512-6dNkzSNUV5X9rsVYQbpZLyJu4Gtkl2vNJ3abBXHX/Etk0ILG5ZasO3ncznIANZQpqcbn/QPHr49J2QYAXGoKJA==} + engines: {node: '>= 10'} + cpu: [x64] + os: [darwin] + + '@napi-rs/simple-git-freebsd-x64@0.1.19': + resolution: {integrity: sha512-sB9krVIchzd20FjI2ZZ8FDsTSsXLBdnwJ6CpeVyrhXHnoszfcqxt49ocZHujAS9lMpXq7i2Nv1EXJmCy4KdhwA==} + engines: {node: '>= 10'} + cpu: [x64] + os: [freebsd] + + '@napi-rs/simple-git-linux-arm-gnueabihf@0.1.19': + resolution: {integrity: sha512-6HPn09lr9N1n5/XKfP8Np53g4fEXVxOFqNkS6rTH3Rm1lZHdazTRH62RggXLTguZwjcE+MvOLvoTIoR5kAS8+g==} + engines: {node: '>= 10'} + cpu: [arm] + os: [linux] + + '@napi-rs/simple-git-linux-arm64-gnu@0.1.19': + resolution: {integrity: sha512-G0gISckt4cVDp3oh5Z6PV3GHJrJO6Z8bIS+9xA7vTtKdqB1i5y0n3cSFLlzQciLzhr+CajFD27doW4lEyErQ/Q==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [linux] + + '@napi-rs/simple-git-linux-arm64-musl@0.1.19': + resolution: {integrity: sha512-OwTRF+H4IZYxmDFRi1IrLMfqbdIpvHeYbJl2X94NVsLVOY+3NUHvEzL3fYaVx5urBaMnIK0DD3wZLbcueWvxbA==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [linux] + + '@napi-rs/simple-git-linux-powerpc64le-gnu@0.1.19': + resolution: {integrity: sha512-p7zuNNVyzpRvkCt2RIGv9FX/WPcPbZ6/FRUgUTZkA2WU33mrbvNqSi4AOqCCl6mBvEd+EOw5NU4lS9ORRJvAEg==} + engines: {node: '>= 10'} + cpu: [powerpc64le] + os: [linux] + + '@napi-rs/simple-git-linux-s390x-gnu@0.1.19': + resolution: {integrity: sha512-6N2vwJUPLiak8GLrS0a3is0gSb0UwI2CHOOqtvQxPmv+JVI8kn3vKiUscsktdDb0wGEPeZ8PvZs0y8UWix7K4g==} + engines: {node: '>= 10'} + cpu: [s390x] + os: [linux] + + '@napi-rs/simple-git-linux-x64-gnu@0.1.19': + resolution: {integrity: sha512-61YfeO1J13WK7MalLgP3QlV6of2rWnVw1aqxWkAgy/lGxoOFSJ4Wid6ANVCEZk4tJpPX/XNeneqkUz5xpeb2Cw==} + engines: {node: '>= 10'} + cpu: [x64] + os: [linux] + + '@napi-rs/simple-git-linux-x64-musl@0.1.19': + resolution: {integrity: sha512-cCTWNpMJnN3PrUBItWcs3dQKCydsIasbrS3laMzq8k7OzF93Zrp2LWDTPlLCO9brbBVpBzy2Qk5Xg9uAfe/Ukw==} + engines: {node: '>= 10'} + cpu: [x64] + os: [linux] + + '@napi-rs/simple-git-win32-arm64-msvc@0.1.19': + resolution: {integrity: sha512-sWavb1BjeLKKBA+PbTsRSSzVNfb7V/dOpaJvkgR5d2kWFn/AHmCZHSSj/3nyZdYf0BdDC+DIvqk3daAEZ6QMVw==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [win32] + + '@napi-rs/simple-git-win32-x64-msvc@0.1.19': + resolution: {integrity: sha512-FmNuPoK4+qwaSCkp8lm3sJlrxk374enW+zCE5ZksXlZzj/9BDJAULJb5QUJ7o9Y8A/G+d8LkdQLPBE2Jaxe5XA==} + engines: {node: '>= 10'} + cpu: [x64] + os: [win32] + + '@napi-rs/simple-git@0.1.19': + resolution: {integrity: sha512-jMxvwzkKzd3cXo2EB9GM2ic0eYo2rP/BS6gJt6HnWbsDO1O8GSD4k7o2Cpr2YERtMpGF/MGcDfsfj2EbQPtrXw==} + engines: {node: '>= 10'} + + '@next/env@14.2.15': + resolution: {integrity: sha512-S1qaj25Wru2dUpcIZMjxeMVSwkt8BK4dmWHHiBuRstcIyOsMapqT4A4jSB6onvqeygkSSmOkyny9VVx8JIGamQ==} + + '@next/eslint-plugin-next@15.1.6': + resolution: {integrity: sha512-+slMxhTgILUntZDGNgsKEYHUvpn72WP1YTlkmEhS51vnVd7S9jEEy0n9YAMcI21vUG4akTw9voWH02lrClt/yw==} + + '@next/swc-darwin-arm64@14.2.15': + resolution: {integrity: sha512-Rvh7KU9hOUBnZ9TJ28n2Oa7dD9cvDBKua9IKx7cfQQ0GoYUwg9ig31O2oMwH3wm+pE3IkAQ67ZobPfEgurPZIA==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [darwin] + + '@next/swc-darwin-x64@14.2.15': + resolution: {integrity: sha512-5TGyjFcf8ampZP3e+FyCax5zFVHi+Oe7sZyaKOngsqyaNEpOgkKB3sqmymkZfowy3ufGA/tUgDPPxpQx931lHg==} + engines: {node: '>= 10'} + cpu: [x64] + os: [darwin] + + '@next/swc-linux-arm64-gnu@14.2.15': + resolution: {integrity: sha512-3Bwv4oc08ONiQ3FiOLKT72Q+ndEMyLNsc/D3qnLMbtUYTQAmkx9E/JRu0DBpHxNddBmNT5hxz1mYBphJ3mfrrw==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [linux] + + '@next/swc-linux-arm64-musl@14.2.15': + resolution: {integrity: sha512-k5xf/tg1FBv/M4CMd8S+JL3uV9BnnRmoe7F+GWC3DxkTCD9aewFRH1s5rJ1zkzDa+Do4zyN8qD0N8c84Hu96FQ==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [linux] + + '@next/swc-linux-x64-gnu@14.2.15': + resolution: {integrity: sha512-kE6q38hbrRbKEkkVn62reLXhThLRh6/TvgSP56GkFNhU22TbIrQDEMrO7j0IcQHcew2wfykq8lZyHFabz0oBrA==} + engines: {node: '>= 10'} + cpu: [x64] + os: [linux] + + '@next/swc-linux-x64-musl@14.2.15': + resolution: {integrity: sha512-PZ5YE9ouy/IdO7QVJeIcyLn/Rc4ml9M2G4y3kCM9MNf1YKvFY4heg3pVa/jQbMro+tP6yc4G2o9LjAz1zxD7tQ==} + engines: {node: '>= 10'} + cpu: [x64] + os: [linux] + + '@next/swc-win32-arm64-msvc@14.2.15': + resolution: {integrity: sha512-2raR16703kBvYEQD9HNLyb0/394yfqzmIeyp2nDzcPV4yPjqNUG3ohX6jX00WryXz6s1FXpVhsCo3i+g4RUX+g==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [win32] + + '@next/swc-win32-ia32-msvc@14.2.15': + resolution: {integrity: sha512-fyTE8cklgkyR1p03kJa5zXEaZ9El+kDNM5A+66+8evQS5e/6v0Gk28LqA0Jet8gKSOyP+OTm/tJHzMlGdQerdQ==} + engines: {node: '>= 10'} + cpu: [ia32] + os: [win32] + + '@next/swc-win32-x64-msvc@14.2.15': + resolution: {integrity: sha512-SzqGbsLsP9OwKNUG9nekShTwhj6JSB9ZLMWQ8g1gG6hdE5gQLncbnbymrwy2yVmH9nikSLYRYxYMFu78Ggp7/g==} + engines: {node: '>= 10'} + cpu: [x64] + os: [win32] + + '@nodelib/fs.scandir@2.1.5': + resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} + engines: {node: '>= 8'} + + '@nodelib/fs.stat@2.0.5': + resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} + engines: {node: '>= 8'} + + '@nodelib/fs.walk@1.2.8': + resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} + engines: {node: '>= 8'} + + '@pkgjs/parseargs@0.11.0': + resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} + engines: {node: '>=14'} + + '@pkgr/core@0.1.1': + resolution: {integrity: sha512-cq8o4cWH0ibXh9VGi5P20Tu9XF/0fFXl9EUinr9QfTM7a7p0oTA4iJRCQWppXR1Pg8dSM0UCItCkPwsk9qWWYA==} + engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0} + + '@playwright/test@1.50.1': + resolution: {integrity: sha512-Jii3aBg+CEDpgnuDxEp/h7BimHcUTDlpEtce89xEumlJ5ef2hqepZ+PWp1DDpYC/VO9fmWVI1IlEaoI5fK9FXQ==} + engines: {node: '>=18'} + hasBin: true + + '@pm2/agent@2.0.4': + resolution: {integrity: sha512-n7WYvvTJhHLS2oBb1PjOtgLpMhgImOq8sXkPBw6smeg9LJBWZjiEgPKOpR8mn9UJZsB5P3W4V/MyvNnp31LKeA==} + + '@pm2/io@6.0.1': + resolution: {integrity: sha512-KiA+shC6sULQAr9mGZ1pg+6KVW9MF8NpG99x26Lf/082/Qy8qsTCtnJy+HQReW1A9Rdf0C/404cz0RZGZro+IA==} + engines: {node: '>=6.0'} + + '@pm2/js-api@0.8.0': + resolution: {integrity: sha512-nmWzrA/BQZik3VBz+npRcNIu01kdBhWL0mxKmP1ciF/gTcujPTQqt027N9fc1pK9ERM8RipFhymw7RcmCyOEYA==} + engines: {node: '>=4.0'} + + '@pm2/pm2-version-check@1.0.4': + resolution: {integrity: sha512-SXsM27SGH3yTWKc2fKR4SYNxsmnvuBQ9dd6QHtEWmiZ/VqaOYPAIlS8+vMcn27YLtAEBGvNRSh3TPNvtjZgfqA==} + + '@react-aria/focus@3.19.1': + resolution: {integrity: sha512-bix9Bu1Ue7RPcYmjwcjhB14BMu2qzfJ3tMQLqDc9pweJA66nOw8DThy3IfVr8Z7j2PHktOLf9kcbiZpydKHqzg==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 + react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 + + '@react-aria/interactions@3.23.0': + resolution: {integrity: sha512-0qR1atBIWrb7FzQ+Tmr3s8uH5mQdyRH78n0krYaG8tng9+u1JlSi8DGRSaC9ezKyNB84m7vHT207xnHXGeJ3Fg==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 + react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 + + '@react-aria/ssr@3.9.7': + resolution: {integrity: sha512-GQygZaGlmYjmYM+tiNBA5C6acmiDWF52Nqd40bBp0Znk4M4hP+LTmI0lpI1BuKMw45T8RIhrAsICIfKwZvi2Gg==} + engines: {node: '>= 12'} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 + + '@react-aria/utils@3.27.0': + resolution: {integrity: sha512-p681OtApnKOdbeN8ITfnnYqfdHS0z7GE+4l8EXlfLnr70Rp/9xicBO6d2rU+V/B3JujDw2gPWxYKEnEeh0CGCw==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 + react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 + + '@react-stately/utils@3.10.5': + resolution: {integrity: sha512-iMQSGcpaecghDIh3mZEpZfoFH3ExBwTtuBEcvZ2XnGzCgQjeYXcMdIUwAfVQLXFTdHUHGF6Gu6/dFrYsCzySBQ==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 + + '@react-types/shared@3.27.0': + resolution: {integrity: sha512-gvznmLhi6JPEf0bsq7SwRYTHAKKq/wcmKqFez9sRdbED+SPMUmK5omfZ6w3EwUFQHbYUa4zPBYedQ7Knv70RMw==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 + + '@redis/bloom@1.2.0': + resolution: {integrity: sha512-HG2DFjYKbpNmVXsa0keLHp/3leGJz1mjh09f2RLGGLQZzSHpkmZWuwJbAvo3QcRY8p80m5+ZdXZdYOSBLlp7Cg==} + peerDependencies: + '@redis/client': ^1.0.0 + + '@redis/client@1.6.0': + resolution: {integrity: sha512-aR0uffYI700OEEH4gYnitAnv3vzVGXCFvYfdpu/CJKvk4pHfLPEy/JSZyrpQ+15WhXe1yJRXLtfQ84s4mEXnPg==} + engines: {node: '>=14'} + + '@redis/graph@1.1.1': + resolution: {integrity: sha512-FEMTcTHZozZciLRl6GiiIB4zGm5z5F3F6a6FZCyrfxdKOhFlGkiAqlexWMBzCi4DcRoyiOsuLfW+cjlGWyExOw==} + peerDependencies: + '@redis/client': ^1.0.0 + + '@redis/json@1.0.7': + resolution: {integrity: sha512-6UyXfjVaTBTJtKNG4/9Z8PSpKE6XgSyEb8iwaqDcy+uKrd/DGYHTWkUdnQDyzm727V7p21WUMhsqz5oy65kPcQ==} + peerDependencies: + '@redis/client': ^1.0.0 + + '@redis/search@1.2.0': + resolution: {integrity: sha512-tYoDBbtqOVigEDMAcTGsRlMycIIjwMCgD8eR2t0NANeQmgK/lvxNAvYyb6bZDD4frHRhIHkJu2TBRvB0ERkOmw==} + peerDependencies: + '@redis/client': ^1.0.0 + + '@redis/time-series@1.1.0': + resolution: {integrity: sha512-c1Q99M5ljsIuc4YdaCwfUEXsofakb9c8+Zse2qxTadu8TalLXuAESzLvFAvNVbkmSlvlzIQOLpBCmWI9wTOt+g==} + peerDependencies: + '@redis/client': ^1.0.0 + + '@rollup/rollup-android-arm-eabi@4.34.6': + resolution: {integrity: sha512-+GcCXtOQoWuC7hhX1P00LqjjIiS/iOouHXhMdiDSnq/1DGTox4SpUvO52Xm+div6+106r+TcvOeo/cxvyEyTgg==} + cpu: [arm] + os: [android] + + '@rollup/rollup-android-arm64@4.34.6': + resolution: {integrity: sha512-E8+2qCIjciYUnCa1AiVF1BkRgqIGW9KzJeesQqVfyRITGQN+dFuoivO0hnro1DjT74wXLRZ7QF8MIbz+luGaJA==} + cpu: [arm64] + os: [android] + + '@rollup/rollup-darwin-arm64@4.34.6': + resolution: {integrity: sha512-z9Ib+OzqN3DZEjX7PDQMHEhtF+t6Mi2z/ueChQPLS/qUMKY7Ybn5A2ggFoKRNRh1q1T03YTQfBTQCJZiepESAg==} + cpu: [arm64] + os: [darwin] + + '@rollup/rollup-darwin-x64@4.34.6': + resolution: {integrity: sha512-PShKVY4u0FDAR7jskyFIYVyHEPCPnIQY8s5OcXkdU8mz3Y7eXDJPdyM/ZWjkYdR2m0izD9HHWA8sGcXn+Qrsyg==} + cpu: [x64] + os: [darwin] + + '@rollup/rollup-freebsd-arm64@4.34.6': + resolution: {integrity: sha512-YSwyOqlDAdKqs0iKuqvRHLN4SrD2TiswfoLfvYXseKbL47ht1grQpq46MSiQAx6rQEN8o8URtpXARCpqabqxGQ==} + cpu: [arm64] + os: [freebsd] + + '@rollup/rollup-freebsd-x64@4.34.6': + resolution: {integrity: sha512-HEP4CgPAY1RxXwwL5sPFv6BBM3tVeLnshF03HMhJYCNc6kvSqBgTMmsEjb72RkZBAWIqiPUyF1JpEBv5XT9wKQ==} + cpu: [x64] + os: [freebsd] + + '@rollup/rollup-linux-arm-gnueabihf@4.34.6': + resolution: {integrity: sha512-88fSzjC5xeH9S2Vg3rPgXJULkHcLYMkh8faix8DX4h4TIAL65ekwuQMA/g2CXq8W+NJC43V6fUpYZNjaX3+IIg==} + cpu: [arm] + os: [linux] + + '@rollup/rollup-linux-arm-musleabihf@4.34.6': + resolution: {integrity: sha512-wM4ztnutBqYFyvNeR7Av+reWI/enK9tDOTKNF+6Kk2Q96k9bwhDDOlnCUNRPvromlVXo04riSliMBs/Z7RteEg==} + cpu: [arm] + os: [linux] + + '@rollup/rollup-linux-arm64-gnu@4.34.6': + resolution: {integrity: sha512-9RyprECbRa9zEjXLtvvshhw4CMrRa3K+0wcp3KME0zmBe1ILmvcVHnypZ/aIDXpRyfhSYSuN4EPdCCj5Du8FIA==} + cpu: [arm64] + os: [linux] + + '@rollup/rollup-linux-arm64-musl@4.34.6': + resolution: {integrity: sha512-qTmklhCTyaJSB05S+iSovfo++EwnIEZxHkzv5dep4qoszUMX5Ca4WM4zAVUMbfdviLgCSQOu5oU8YoGk1s6M9Q==} + cpu: [arm64] + os: [linux] + + '@rollup/rollup-linux-loongarch64-gnu@4.34.6': + resolution: {integrity: sha512-4Qmkaps9yqmpjY5pvpkfOerYgKNUGzQpFxV6rnS7c/JfYbDSU0y6WpbbredB5cCpLFGJEqYX40WUmxMkwhWCjw==} + cpu: [loong64] + os: [linux] + + '@rollup/rollup-linux-powerpc64le-gnu@4.34.6': + resolution: {integrity: sha512-Zsrtux3PuaxuBTX/zHdLaFmcofWGzaWW1scwLU3ZbW/X+hSsFbz9wDIp6XvnT7pzYRl9MezWqEqKy7ssmDEnuQ==} + cpu: [ppc64] + os: [linux] + + '@rollup/rollup-linux-riscv64-gnu@4.34.6': + resolution: {integrity: sha512-aK+Zp+CRM55iPrlyKiU3/zyhgzWBxLVrw2mwiQSYJRobCURb781+XstzvA8Gkjg/hbdQFuDw44aUOxVQFycrAg==} + cpu: [riscv64] + os: [linux] + + '@rollup/rollup-linux-s390x-gnu@4.34.6': + resolution: {integrity: sha512-WoKLVrY9ogmaYPXwTH326+ErlCIgMmsoRSx6bO+l68YgJnlOXhygDYSZe/qbUJCSiCiZAQ+tKm88NcWuUXqOzw==} + cpu: [s390x] + os: [linux] + + '@rollup/rollup-linux-x64-gnu@4.34.6': + resolution: {integrity: sha512-Sht4aFvmA4ToHd2vFzwMFaQCiYm2lDFho5rPcvPBT5pCdC+GwHG6CMch4GQfmWTQ1SwRKS0dhDYb54khSrjDWw==} + cpu: [x64] + os: [linux] + + '@rollup/rollup-linux-x64-musl@4.34.6': + resolution: {integrity: sha512-zmmpOQh8vXc2QITsnCiODCDGXFC8LMi64+/oPpPx5qz3pqv0s6x46ps4xoycfUiVZps5PFn1gksZzo4RGTKT+A==} + cpu: [x64] + os: [linux] + + '@rollup/rollup-win32-arm64-msvc@4.34.6': + resolution: {integrity: sha512-3/q1qUsO/tLqGBaD4uXsB6coVGB3usxw3qyeVb59aArCgedSF66MPdgRStUd7vbZOsko/CgVaY5fo2vkvPLWiA==} + cpu: [arm64] + os: [win32] + + '@rollup/rollup-win32-ia32-msvc@4.34.6': + resolution: {integrity: sha512-oLHxuyywc6efdKVTxvc0135zPrRdtYVjtVD5GUm55I3ODxhU/PwkQFD97z16Xzxa1Fz0AEe4W/2hzRtd+IfpOA==} + cpu: [ia32] + os: [win32] + + '@rollup/rollup-win32-x64-msvc@4.34.6': + resolution: {integrity: sha512-0PVwmgzZ8+TZ9oGBmdZoQVXflbvuwzN/HRclujpl4N/q3i+y0lqLw8n1bXA8ru3sApDjlmONaNAuYr38y1Kr9w==} + cpu: [x64] + os: [win32] + + '@shikijs/core@1.29.2': + resolution: {integrity: sha512-vju0lY9r27jJfOY4Z7+Rt/nIOjzJpZ3y+nYpqtUZInVoXQ/TJZcfGnNOGnKjFdVZb8qexiCuSlZRKcGfhhTTZQ==} + + '@shikijs/engine-javascript@1.29.2': + resolution: {integrity: sha512-iNEZv4IrLYPv64Q6k7EPpOCE/nuvGiKl7zxdq0WFuRPF5PAE9PRo2JGq/d8crLusM59BRemJ4eOqrFrC4wiQ+A==} + + '@shikijs/engine-oniguruma@1.29.2': + resolution: {integrity: sha512-7iiOx3SG8+g1MnlzZVDYiaeHe7Ez2Kf2HrJzdmGwkRisT7r4rak0e655AcM/tF9JG/kg5fMNYlLLKglbN7gBqA==} + + '@shikijs/langs@1.29.2': + resolution: {integrity: sha512-FIBA7N3LZ+223U7cJDUYd5shmciFQlYkFXlkKVaHsCPgfVLiO+e12FmQE6Tf9vuyEsFe3dIl8qGWKXgEHL9wmQ==} + + '@shikijs/themes@1.29.2': + resolution: {integrity: sha512-i9TNZlsq4uoyqSbluIcZkmPL9Bfi3djVxRnofUHwvx/h6SRW3cwgBC5SML7vsDcWyukY0eCzVN980rqP6qNl9g==} + + '@shikijs/twoslash@1.29.2': + resolution: {integrity: sha512-2S04ppAEa477tiaLfGEn1QJWbZUmbk8UoPbAEw4PifsrxkBXtAtOflIZJNtuCwz8ptc/TPxy7CO7gW4Uoi6o/g==} + + '@shikijs/types@1.29.2': + resolution: {integrity: sha512-VJjK0eIijTZf0QSTODEXCqinjBn0joAHQ+aPSBzrv4O2d/QSbsMw+ZeSRx03kV34Hy7NzUvV/7NqfYGRLrASmw==} + + '@shikijs/vscode-textmate@10.0.1': + resolution: {integrity: sha512-fTIQwLF+Qhuws31iw7Ncl1R3HUDtGwIipiJ9iU+UsDUwMhegFcQKQHd51nZjb7CArq0MvON8rbgCGQYWHUKAdg==} + + '@swc/counter@0.1.3': + resolution: {integrity: sha512-e2BR4lsJkkRlKZ/qCHPw9ZaSxc0MVUd7gtbtaB7aMvHeJVYe8sOB8DBZkP2DtISHGSku9sCK6T6cnY0CtXrOCQ==} + + '@swc/helpers@0.5.15': + resolution: {integrity: sha512-JQ5TuMi45Owi4/BIMAJBoSQoOJu12oOk/gADqlcUL9JEdHB8vyjUSsxqeNXnmXHjYKMi2WcYtezGEEhqUI/E2g==} + + '@swc/helpers@0.5.5': + resolution: {integrity: sha512-KGYxvIOXcceOAbEk4bi/dVLEK9z8sZ0uBB3Il5b1rhfClSpcX0yfRO0KmTkqR2cnQDymwLB+25ZyMzICg/cm/A==} + + '@tanstack/react-virtual@3.13.0': + resolution: {integrity: sha512-CchF0NlLIowiM2GxtsoKBkXA4uqSnY2KvnXo+kyUFD4a4ll6+J0qzoRsUPMwXV/H26lRsxgJIr/YmjYum2oEjg==} + peerDependencies: + react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 + react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 + + '@tanstack/virtual-core@3.13.0': + resolution: {integrity: sha512-NBKJP3OIdmZY3COJdWkSonr50FMVIi+aj5ZJ7hI/DTpEKg2RMfo/KvP8A3B/zOSpMgIe52B5E2yn7rryULzA6g==} + + '@theguild/remark-mermaid@0.1.3': + resolution: {integrity: sha512-2FjVlaaKXK7Zj7UJAgOVTyaahn/3/EAfqYhyXg0BfDBVUl+lXcoIWRaxzqfnDr2rv8ax6GsC5mNh6hAaT86PDw==} + peerDependencies: + react: ^18.2.0 + + '@theguild/remark-npm2yarn@0.3.3': + resolution: {integrity: sha512-ma6DvR03gdbvwqfKx1omqhg9May/VYGdMHvTzB4VuxkyS7KzfZ/lzrj43hmcsggpMje0x7SADA/pcMph0ejRnA==} + + '@tootallnate/quickjs-emscripten@0.23.0': + resolution: {integrity: sha512-C5Mc6rdnsaJDjO3UpGW/CQTHtCKaYlScZTly4JIu97Jxo/odCiH0ITnDXSJPTOrEKk/ycSZ0AOgTmkDtkOsvIA==} + + '@types/acorn@4.0.6': + resolution: {integrity: sha512-veQTnWP+1D/xbxVrPC3zHnCZRjSrKfhbMUlEA43iMZLu7EsnTtkJklIuwrCPbOi8YkvDQAiW05VQQFvvz9oieQ==} + + '@types/d3-array@3.2.1': + resolution: {integrity: sha512-Y2Jn2idRrLzUfAKV2LyRImR+y4oa2AntrgID95SHJxuMUrkNXmanDSed71sRNZysveJVt1hLLemQZIady0FpEg==} + + '@types/d3-axis@3.0.6': + resolution: {integrity: sha512-pYeijfZuBd87T0hGn0FO1vQ/cgLk6E1ALJjfkC0oJ8cbwkZl3TpgS8bVBLZN+2jjGgg38epgxb2zmoGtSfvgMw==} + + '@types/d3-brush@3.0.6': + resolution: {integrity: sha512-nH60IZNNxEcrh6L1ZSMNA28rj27ut/2ZmI3r96Zd+1jrZD++zD3LsMIjWlvg4AYrHn/Pqz4CF3veCxGjtbqt7A==} + + '@types/d3-chord@3.0.6': + resolution: {integrity: sha512-LFYWWd8nwfwEmTZG9PfQxd17HbNPksHBiJHaKuY1XeqscXacsS2tyoo6OdRsjf+NQYeB6XrNL3a25E3gH69lcg==} + + '@types/d3-color@3.1.3': + resolution: {integrity: sha512-iO90scth9WAbmgv7ogoq57O9YpKmFBbmoEoCHDB2xMBY0+/KVrqAaCDyCE16dUspeOvIxFFRI+0sEtqDqy2b4A==} + + '@types/d3-contour@3.0.6': + resolution: {integrity: sha512-BjzLgXGnCWjUSYGfH1cpdo41/hgdWETu4YxpezoztawmqsvCeep+8QGfiY6YbDvfgHz/DkjeIkkZVJavB4a3rg==} + + '@types/d3-delaunay@6.0.4': + resolution: {integrity: sha512-ZMaSKu4THYCU6sV64Lhg6qjf1orxBthaC161plr5KuPHo3CNm8DTHiLw/5Eq2b6TsNP0W0iJrUOFscY6Q450Hw==} + + '@types/d3-dispatch@3.0.6': + resolution: {integrity: sha512-4fvZhzMeeuBJYZXRXrRIQnvUYfyXwYmLsdiN7XXmVNQKKw1cM8a5WdID0g1hVFZDqT9ZqZEY5pD44p24VS7iZQ==} + + '@types/d3-drag@3.0.7': + resolution: {integrity: sha512-HE3jVKlzU9AaMazNufooRJ5ZpWmLIoc90A37WU2JMmeq28w1FQqCZswHZ3xR+SuxYftzHq6WU6KJHvqxKzTxxQ==} + + '@types/d3-dsv@3.0.7': + resolution: {integrity: sha512-n6QBF9/+XASqcKK6waudgL0pf/S5XHPPI8APyMLLUHd8NqouBGLsU8MgtO7NINGtPBtk9Kko/W4ea0oAspwh9g==} + + '@types/d3-ease@3.0.2': + resolution: {integrity: sha512-NcV1JjO5oDzoK26oMzbILE6HW7uVXOHLQvHshBUW4UMdZGfiY6v5BeQwh9a9tCzv+CeefZQHJt5SRgK154RtiA==} + + '@types/d3-fetch@3.0.7': + resolution: {integrity: sha512-fTAfNmxSb9SOWNB9IoG5c8Hg6R+AzUHDRlsXsDZsNp6sxAEOP0tkP3gKkNSO/qmHPoBFTxNrjDprVHDQDvo5aA==} + + '@types/d3-force@3.0.10': + resolution: {integrity: sha512-ZYeSaCF3p73RdOKcjj+swRlZfnYpK1EbaDiYICEEp5Q6sUiqFaFQ9qgoshp5CzIyyb/yD09kD9o2zEltCexlgw==} + + '@types/d3-format@3.0.4': + resolution: {integrity: sha512-fALi2aI6shfg7vM5KiR1wNJnZ7r6UuggVqtDA+xiEdPZQwy/trcQaHnwShLuLdta2rTymCNpxYTiMZX/e09F4g==} + + '@types/d3-geo@3.1.0': + resolution: {integrity: sha512-856sckF0oP/diXtS4jNsiQw/UuK5fQG8l/a9VVLeSouf1/PPbBE1i1W852zVwKwYCBkFJJB7nCFTbk6UMEXBOQ==} + + '@types/d3-hierarchy@3.1.7': + resolution: {integrity: sha512-tJFtNoYBtRtkNysX1Xq4sxtjK8YgoWUNpIiUee0/jHGRwqvzYxkq0hGVbbOGSz+JgFxxRu4K8nb3YpG3CMARtg==} + + '@types/d3-interpolate@3.0.4': + resolution: {integrity: sha512-mgLPETlrpVV1YRJIglr4Ez47g7Yxjl1lj7YKsiMCb27VJH9W8NVM6Bb9d8kkpG/uAQS5AmbA48q2IAolKKo1MA==} + + '@types/d3-path@3.1.1': + resolution: {integrity: sha512-VMZBYyQvbGmWyWVea0EHs/BwLgxc+MKi1zLDCONksozI4YJMcTt8ZEuIR4Sb1MMTE8MMW49v0IwI5+b7RmfWlg==} + + '@types/d3-polygon@3.0.2': + resolution: {integrity: sha512-ZuWOtMaHCkN9xoeEMr1ubW2nGWsp4nIql+OPQRstu4ypeZ+zk3YKqQT0CXVe/PYqrKpZAi+J9mTs05TKwjXSRA==} + + '@types/d3-quadtree@3.0.6': + resolution: {integrity: sha512-oUzyO1/Zm6rsxKRHA1vH0NEDG58HrT5icx/azi9MF1TWdtttWl0UIUsjEQBBh+SIkrpd21ZjEv7ptxWys1ncsg==} + + '@types/d3-random@3.0.3': + resolution: {integrity: sha512-Imagg1vJ3y76Y2ea0871wpabqp613+8/r0mCLEBfdtqC7xMSfj9idOnmBYyMoULfHePJyxMAw3nWhJxzc+LFwQ==} + + '@types/d3-scale-chromatic@3.1.0': + resolution: {integrity: sha512-iWMJgwkK7yTRmWqRB5plb1kadXyQ5Sj8V/zYlFGMUBbIPKQScw+Dku9cAAMgJG+z5GYDoMjWGLVOvjghDEFnKQ==} + + '@types/d3-scale@4.0.9': + resolution: {integrity: sha512-dLmtwB8zkAeO/juAMfnV+sItKjlsw2lKdZVVy6LRr0cBmegxSABiLEpGVmSJJ8O08i4+sGR6qQtb6WtuwJdvVw==} + + '@types/d3-selection@3.0.11': + resolution: {integrity: sha512-bhAXu23DJWsrI45xafYpkQ4NtcKMwWnAC/vKrd2l+nxMFuvOT3XMYTIj2opv8vq8AO5Yh7Qac/nSeP/3zjTK0w==} + + '@types/d3-shape@3.1.7': + resolution: {integrity: sha512-VLvUQ33C+3J+8p+Daf+nYSOsjB4GXp19/S/aGo60m9h1v6XaxjiT82lKVWJCfzhtuZ3yD7i/TPeC/fuKLLOSmg==} + + '@types/d3-time-format@4.0.3': + resolution: {integrity: sha512-5xg9rC+wWL8kdDj153qZcsJ0FWiFt0J5RB6LYUNZjwSnesfblqrI/bJ1wBdJ8OQfncgbJG5+2F+qfqnqyzYxyg==} + + '@types/d3-time@3.0.4': + resolution: {integrity: sha512-yuzZug1nkAAaBlBBikKZTgzCeA+k1uy4ZFwWANOfKw5z5LRhV0gNA7gNkKm7HoK+HRN0wX3EkxGk0fpbWhmB7g==} + + '@types/d3-timer@3.0.2': + resolution: {integrity: sha512-Ps3T8E8dZDam6fUyNiMkekK3XUsaUEik+idO9/YjPtfj2qruF8tFBXS7XhtE4iIXBLxhmLjP3SXpLhVf21I9Lw==} + + '@types/d3-transition@3.0.9': + resolution: {integrity: sha512-uZS5shfxzO3rGlu0cC3bjmMFKsXv+SmZZcgp0KD22ts4uGXp5EVYGzu/0YdwZeKmddhcAccYtREJKkPfXkZuCg==} + + '@types/d3-zoom@3.0.8': + resolution: {integrity: sha512-iqMC4/YlFCSlO8+2Ii1GGGliCAY4XdeG748w5vQUbevlbDu0zSjH/+jojorQVBK/se0j6DUFNPBGSqD3YWYnDw==} + + '@types/d3@7.4.3': + resolution: {integrity: sha512-lZXZ9ckh5R8uiFVt8ogUNf+pIrK4EsWrx2Np75WvF/eTpJ0FMHNhjXk8CKEx/+gpHbNQyJWehbFaTvqmHWB3ww==} + + '@types/debug@4.1.12': + resolution: {integrity: sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==} + + '@types/estree-jsx@1.0.5': + resolution: {integrity: sha512-52CcUVNFyfb1A2ALocQw/Dd1BQFNmSdkuC3BkZ6iqhdMfQz7JWOFRuJFloOzjk+6WijU56m9oKXFAXc7o3Towg==} + + '@types/estree@1.0.6': + resolution: {integrity: sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==} + + '@types/geojson@7946.0.16': + resolution: {integrity: sha512-6C8nqWur3j98U6+lXDfTUWIfgvZU+EumvpHKcYjujKH7woYyLj2sUmff0tRhrqM7BohUw7Pz3ZB1jj2gW9Fvmg==} + + '@types/hast@3.0.4': + resolution: {integrity: sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==} + + '@types/json-schema@7.0.15': + resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==} + + '@types/katex@0.16.7': + resolution: {integrity: sha512-HMwFiRujE5PjrgwHQ25+bsLJgowjGjm5Z8FVSf0N6PwgJrwxH0QxzHYDcKsTfV3wva0vzrpqMTJS2jXPr5BMEQ==} + + '@types/mdast@4.0.4': + resolution: {integrity: sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==} + + '@types/mdx@2.0.13': + resolution: {integrity: sha512-+OWZQfAYyio6YkJb3HLxDrvnx6SWWDbC0zVPfBRzUk0/nqoDyf6dNxQi3eArPe8rJ473nobTMQ/8Zk+LxJ+Yuw==} + + '@types/ms@2.1.0': + resolution: {integrity: sha512-GsCCIZDE/p3i96vtEqx+7dBUGXrc7zeSK3wwPHIaRThS+9OhWIXRqzs4d6k1SVU8g91DrNRWxWUGhp5KXQb2VA==} + + '@types/nlcst@2.0.3': + resolution: {integrity: sha512-vSYNSDe6Ix3q+6Z7ri9lyWqgGhJTmzRjZRqyq15N0Z/1/UnVsno9G/N40NBijoYx2seFDIl0+B2mgAb9mezUCA==} + + '@types/node@12.20.55': + resolution: {integrity: sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==} + + '@types/node@22.13.1': + resolution: {integrity: sha512-jK8uzQlrvXqEU91UxiK5J7pKHyzgnI1Qnl0QDHIgVGuolJhRb9EEl28Cj9b3rGR8B2lhFCtvIm5os8lFnO/1Ew==} + + '@types/prop-types@15.7.14': + resolution: {integrity: sha512-gNMvNH49DJ7OJYv+KAKn0Xp45p8PLl6zo2YnvDIbTd4J6MER2BmWN49TG7n9LvkyihINxeKW8+3bfS2yDC9dzQ==} + + '@types/react-dom@18.3.1': + resolution: {integrity: sha512-qW1Mfv8taImTthu4KoXgDfLuk4bydU6Q/TkADnDWWHwi4NX4BR+LWfTp2sVmTqRrsHvyDDTelgelxJ+SsejKKQ==} + + '@types/react@18.3.12': + resolution: {integrity: sha512-D2wOSq/d6Agt28q7rSI3jhU7G6aiuzljDGZ2hTZHIkrTLUI+AF3WMeKkEZ9nN2fkBAlcktT6vcZjDFiIhMYEQw==} + + '@types/trusted-types@2.0.7': + resolution: {integrity: sha512-ScaPdn1dQczgbl0QFTeTOmVHFULt394XJgOQNoyVhZ6r2vLnMLJfBPd53SB52T/3G36VI1/g2MZaX0cwDuXsfw==} + + '@types/unist@2.0.11': + resolution: {integrity: sha512-CmBKiL6NNo/OqgmMn95Fk9Whlp2mtvIv+KNpQKN2F4SjvrEesubTRWGYSg+BnWZOnlCaSTU1sMpsBOzgbYhnsA==} + + '@types/unist@3.0.3': + resolution: {integrity: sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==} + + '@typescript-eslint/eslint-plugin@8.23.0': + resolution: {integrity: sha512-vBz65tJgRrA1Q5gWlRfvoH+w943dq9K1p1yDBY2pc+a1nbBLZp7fB9+Hk8DaALUbzjqlMfgaqlVPT1REJdkt/w==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + '@typescript-eslint/parser': ^8.0.0 || ^8.0.0-alpha.0 + eslint: ^8.57.0 || ^9.0.0 + typescript: '>=4.8.4 <5.8.0' + + '@typescript-eslint/parser@8.23.0': + resolution: {integrity: sha512-h2lUByouOXFAlMec2mILeELUbME5SZRN/7R9Cw2RD2lRQQY08MWMM+PmVVKKJNK1aIwqTo9t/0CvOxwPbRIE2Q==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 + typescript: '>=4.8.4 <5.8.0' + + '@typescript-eslint/scope-manager@8.23.0': + resolution: {integrity: sha512-OGqo7+dXHqI7Hfm+WqkZjKjsiRtFUQHPdGMXzk5mYXhJUedO7e/Y7i8AK3MyLMgZR93TX4bIzYrfyVjLC+0VSw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@typescript-eslint/type-utils@8.23.0': + resolution: {integrity: sha512-iIuLdYpQWZKbiH+RkCGc6iu+VwscP5rCtQ1lyQ7TYuKLrcZoeJVpcLiG8DliXVkUxirW/PWlmS+d6yD51L9jvA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 + typescript: '>=4.8.4 <5.8.0' + + '@typescript-eslint/types@8.23.0': + resolution: {integrity: sha512-1sK4ILJbCmZOTt9k4vkoulT6/y5CHJ1qUYxqpF1K/DBAd8+ZUL4LlSCxOssuH5m4rUaaN0uS0HlVPvd45zjduQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@typescript-eslint/typescript-estree@8.23.0': + resolution: {integrity: sha512-LcqzfipsB8RTvH8FX24W4UUFk1bl+0yTOf9ZA08XngFwMg4Kj8A+9hwz8Cr/ZS4KwHrmo9PJiLZkOt49vPnuvQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + typescript: '>=4.8.4 <5.8.0' + + '@typescript-eslint/utils@8.23.0': + resolution: {integrity: sha512-uB/+PSo6Exu02b5ZEiVtmY6RVYO7YU5xqgzTIVZwTHvvK3HsL8tZZHFaTLFtRG3CsV4A5mhOv+NZx5BlhXPyIA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 + typescript: '>=4.8.4 <5.8.0' + + '@typescript-eslint/visitor-keys@8.23.0': + resolution: {integrity: sha512-oWWhcWDLwDfu++BGTZcmXWqpwtkwb5o7fxUIGksMQQDSdPW9prsSnfIOZMlsj4vBOSrcnjIUZMiIjODgGosFhQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@typescript/vfs@1.6.1': + resolution: {integrity: sha512-JwoxboBh7Oz1v38tPbkrZ62ZXNHAk9bJ7c9x0eI5zBfBnBYGhURdbnh7Z4smN/MV48Y5OCcZb58n972UtbazsA==} + peerDependencies: + typescript: '*' + + '@ungap/structured-clone@1.3.0': + resolution: {integrity: sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g==} + + '@zeit/schemas@2.36.0': + resolution: {integrity: sha512-7kjMwcChYEzMKjeex9ZFXkt1AyNov9R5HZtjBKVsmVpw7pa7ZtlCGvCBC2vnnXctaYN+aRI61HjIqeetZW5ROg==} + + abstract-logging@2.0.1: + resolution: {integrity: sha512-2BjRTZxTPvheOvGbBslFSYOUkr+SjPtOnrLP33f+VIWLzezQpZcqVg7ja3L4dBXmzzgwT+a029jRx5PCi3JuiA==} + + accepts@1.3.8: + resolution: {integrity: sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==} + engines: {node: '>= 0.6'} + + acorn-jsx@5.3.2: + resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} + peerDependencies: + acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 + + acorn@8.14.0: + resolution: {integrity: sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA==} + engines: {node: '>=0.4.0'} + hasBin: true + + agent-base@7.1.3: + resolution: {integrity: sha512-jRR5wdylq8CkOe6hei19GGZnxM6rBGwFl3Bg0YItGDimvjGtAvdZk4Pu6Cl4u4Igsws4a1fd1Vq3ezrhn4KmFw==} + engines: {node: '>= 14'} + + ajv-formats@3.0.1: + resolution: {integrity: sha512-8iUql50EUR+uUcdRQ3HDqa6EVyo3docL8g5WJ3FNcWmu62IbkGUue/pEyLBW8VGKKucTPgqeks4fIU1DA4yowQ==} + peerDependencies: + ajv: ^8.0.0 + peerDependenciesMeta: + ajv: + optional: true + + ajv@6.12.6: + resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} + + ajv@8.12.0: + resolution: {integrity: sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==} + + ajv@8.17.1: + resolution: {integrity: sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==} + + amp-message@0.1.2: + resolution: {integrity: sha512-JqutcFwoU1+jhv7ArgW38bqrE+LQdcRv4NxNw0mp0JHQyB6tXesWRjtYKlDgHRY2o3JE5UTaBGUK8kSWUdxWUg==} + + amp@0.3.1: + resolution: {integrity: sha512-OwIuC4yZaRogHKiuU5WlMR5Xk/jAcpPtawWL05Gj8Lvm2F6mwoJt4O/bHI+DHwG79vWd+8OFYM4/BzYqyRd3qw==} + + ansi-align@3.0.1: + resolution: {integrity: sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==} + + ansi-colors@4.1.3: + resolution: {integrity: sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==} + engines: {node: '>=6'} + + ansi-regex@5.0.1: + resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} + engines: {node: '>=8'} + + ansi-regex@6.1.0: + resolution: {integrity: sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==} + engines: {node: '>=12'} + + ansi-styles@4.3.0: + resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} + engines: {node: '>=8'} + + ansi-styles@6.2.1: + resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==} + engines: {node: '>=12'} + + any-promise@1.3.0: + resolution: {integrity: sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==} + + anymatch@3.1.3: + resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} + engines: {node: '>= 8'} + + arch@2.2.0: + resolution: {integrity: sha512-Of/R0wqp83cgHozfIYLbBMnej79U/SVGOOyuB3VVFv1NRM/PSFMK12x9KVtiYzJqmnU5WR2qp0Z5rHb7sWGnFQ==} + + arg@5.0.2: + resolution: {integrity: sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==} + + argparse@1.0.10: + resolution: {integrity: sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==} + + argparse@2.0.1: + resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} + + array-buffer-byte-length@1.0.2: + resolution: {integrity: sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw==} + engines: {node: '>= 0.4'} + + array-includes@3.1.8: + resolution: {integrity: sha512-itaWrbYbqpGXkGhZPGUulwnhVf5Hpy1xiCFsGqyIGglbBxmG5vSjxQen3/WGOjPpNEv1RtBLKxbmVXm8HpJStQ==} + engines: {node: '>= 0.4'} + + array-iterate@2.0.1: + resolution: {integrity: sha512-I1jXZMjAgCMmxT4qxXfPXa6SthSoE8h6gkSI9BGGNv8mP8G/v0blc+qFnZu6K42vTOiuME596QaLO0TP3Lk0xg==} + + array-union@2.1.0: + resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} + engines: {node: '>=8'} + + array.prototype.findlast@1.2.5: + resolution: {integrity: sha512-CVvd6FHg1Z3POpBLxO6E6zr+rSKEQ9L6rZHAaY7lLfhKsWYUBBOuMs0e9o24oopj6H+geRCX0YJ+TJLBK2eHyQ==} + engines: {node: '>= 0.4'} + + array.prototype.flat@1.3.3: + resolution: {integrity: sha512-rwG/ja1neyLqCuGZ5YYrznA62D4mZXg0i1cIskIUKSiqF3Cje9/wXAls9B9s1Wa2fomMsIv8czB8jZcPmxCXFg==} + engines: {node: '>= 0.4'} + + array.prototype.flatmap@1.3.3: + resolution: {integrity: sha512-Y7Wt51eKJSyi80hFrJCePGGNo5ktJCslFuboqJsbf57CCPcm5zztluPlc4/aD8sWsKvlwatezpV4U1efk8kpjg==} + engines: {node: '>= 0.4'} + + array.prototype.tosorted@1.1.4: + resolution: {integrity: sha512-p6Fx8B7b7ZhL/gmUsAy0D15WhvDccw3mnGNbZpi3pmeJdxtWsj2jEaI4Y6oo3XiHfzuSgPwKc04MYt6KgvC/wA==} + engines: {node: '>= 0.4'} + + arraybuffer.prototype.slice@1.0.4: + resolution: {integrity: sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ==} + engines: {node: '>= 0.4'} + + ast-types@0.13.4: + resolution: {integrity: sha512-x1FCFnFifvYDDzTaLII71vG5uvDwgtmDTEVWAxrgeiR8VjMONcCXJx7E+USjDtHlwFmt9MysbqgF9b9Vjr6w+w==} + engines: {node: '>=4'} + + astring@1.9.0: + resolution: {integrity: sha512-LElXdjswlqjWrPpJFg1Fx4wpkOCxj1TDHlSV4PlaRxHGWko024xICaa97ZkMfs6DRKlCguiAI+rbXv5GWwXIkg==} + hasBin: true + + async-function@1.0.0: + resolution: {integrity: sha512-hsU18Ae8CDTR6Kgu9DYf0EbCr/a5iGL0rytQDobUcdpYOKokk8LEjVphnXkDkgpi0wYVsqrXuP0bZxJaTqdgoA==} + engines: {node: '>= 0.4'} + + async@2.6.4: + resolution: {integrity: sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==} + + async@3.2.6: + resolution: {integrity: sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA==} + + asynckit@0.4.0: + resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} + + atomic-sleep@1.0.0: + resolution: {integrity: sha512-kNOjDqAh7px0XWNI+4QbzoiR/nTkHAWNud2uvnJquD1/x5a7EQZMJT0AczqK0Qn67oY/TTQ1LbUKajZpp3I9tQ==} + engines: {node: '>=8.0.0'} + + available-typed-arrays@1.0.7: + resolution: {integrity: sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==} + engines: {node: '>= 0.4'} + + avvio@9.1.0: + resolution: {integrity: sha512-fYASnYi600CsH/j9EQov7lECAniYiBFiiAtBNuZYLA2leLe9qOvZzqYHFjtIj6gD2VMoMLP14834LFWvr4IfDw==} + + axios@1.7.9: + resolution: {integrity: sha512-LhLcE7Hbiryz8oMDdDptSrWowmB4Bl6RCt6sIJKpRB4XtVf0iEgewX3au/pJqm+Py1kCASkb/FFKjxQaLtxJvw==} + + bail@2.0.2: + resolution: {integrity: sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw==} + + balanced-match@1.0.2: + resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} + + basic-ftp@5.0.5: + resolution: {integrity: sha512-4Bcg1P8xhUuqcii/S0Z9wiHIrQVPMermM1any+MX5GeGD7faD3/msQUDGLol9wOcz4/jbg/WJnGqoJF6LiBdtg==} + engines: {node: '>=10.0.0'} + + better-path-resolve@1.0.0: + resolution: {integrity: sha512-pbnl5XzGBdrFU/wT4jqmJVPn2B6UHPBOhzMQkY/SPUPB6QtUXtmBHBIwCbXJol93mOpGMnQyP/+BB19q04xj7g==} + engines: {node: '>=4'} + + better-react-mathjax@2.1.0: + resolution: {integrity: sha512-RrHudli76sgoVu+YtjHTKhCkjO2eH1B7Xje1sa0YPjhKzq2y/GIwOt9+tuel3s2L+mCPmFbYBFLDFfo3pEa8rQ==} + peerDependencies: + react: '>=16.8' + + binary-extensions@2.3.0: + resolution: {integrity: sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==} + engines: {node: '>=8'} + + blessed@0.1.81: + resolution: {integrity: sha512-LoF5gae+hlmfORcG1M5+5XZi4LBmvlXTzwJWzUlPryN/SJdSflZvROM2TwkT0GMpq7oqT48NRd4GS7BiVBc5OQ==} + engines: {node: '>= 0.8.0'} + hasBin: true + + bodec@0.1.0: + resolution: {integrity: sha512-Ylo+MAo5BDUq1KA3f3R/MFhh+g8cnHmo8bz3YPGhI1znrMaf77ol1sfvYJzsw3nTE+Y2GryfDxBaR+AqpAkEHQ==} + + boxen@7.0.0: + resolution: {integrity: sha512-j//dBVuyacJbvW+tvZ9HuH03fZ46QcaKvvhZickZqtB271DxJ7SNRSNxrV/dZX0085m7hISRZWbzWlJvx/rHSg==} + engines: {node: '>=14.16'} + + brace-expansion@1.1.11: + resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} + + brace-expansion@2.0.1: + resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==} + + braces@3.0.3: + resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} + engines: {node: '>=8'} + + buffer-from@1.1.2: + resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==} + + bundle-require@5.1.0: + resolution: {integrity: sha512-3WrrOuZiyaaZPWiEt4G3+IffISVC9HYlWueJEBWED4ZH4aIAC2PnkdnuRrR94M+w6yGWn4AglWtJtBI8YqvgoA==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + peerDependencies: + esbuild: '>=0.18' + + busboy@1.6.0: + resolution: {integrity: sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==} + engines: {node: '>=10.16.0'} + + bytes@3.0.0: + resolution: {integrity: sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==} + engines: {node: '>= 0.8'} + + cac@6.7.14: + resolution: {integrity: sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==} + engines: {node: '>=8'} + + call-bind-apply-helpers@1.0.1: + resolution: {integrity: sha512-BhYE+WDaywFg2TBWYNXAE+8B1ATnThNBqXHP5nQu0jWJdVvY2hvkpyB3qOmtmDePiS5/BDQ8wASEWGMWRG148g==} + engines: {node: '>= 0.4'} + + call-bind@1.0.8: + resolution: {integrity: sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==} + engines: {node: '>= 0.4'} + + call-bound@1.0.3: + resolution: {integrity: sha512-YTd+6wGlNlPxSuri7Y6X8tY2dmm12UMH66RpKMhiX6rsk5wXXnYgbUcOt8kiS31/AjfoTOvCsE+w8nZQLQnzHA==} + engines: {node: '>= 0.4'} + + callsites@3.1.0: + resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} + engines: {node: '>=6'} + + camelcase@7.0.1: + resolution: {integrity: sha512-xlx1yCK2Oc1APsPXDL2LdlNP6+uu8OCDdhOBSVT279M/S+y75O30C2VuD8T2ogdePBBl7PfPF4504tnLgX3zfw==} + engines: {node: '>=14.16'} + + caniuse-lite@1.0.30001698: + resolution: {integrity: sha512-xJ3km2oiG/MbNU8G6zIq6XRZ6HtAOVXsbOrP/blGazi52kc5Yy7b6sDA5O+FbROzRrV7BSTllLHuNvmawYUJjw==} + + ccount@2.0.1: + resolution: {integrity: sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==} + + chalk-template@0.4.0: + resolution: {integrity: sha512-/ghrgmhfY8RaSdeo43hNXxpoHAtxdbskUHjPpfqUWGttFgycUhYPGx3YZBCnUCvOa7Doivn1IZec3DEGFoMgLg==} + engines: {node: '>=12'} + + chalk@3.0.0: + resolution: {integrity: sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==} + engines: {node: '>=8'} + + chalk@4.1.2: + resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} + engines: {node: '>=10'} + + chalk@5.0.1: + resolution: {integrity: sha512-Fo07WOYGqMfCWHOzSXOt2CxDbC6skS/jO9ynEcmpANMoPrD+W1r1K6Vx7iNm+AQmETU1Xr2t+n8nzkV9t6xh3w==} + engines: {node: ^12.17.0 || ^14.13 || >=16.0.0} + + chalk@5.4.1: + resolution: {integrity: sha512-zgVZuo2WcZgfUEmsn6eO3kINexW8RAE4maiQ8QNs8CtpPCSyMiYsULR3HQYkm3w8FIA3SberyMJMSldGsW+U3w==} + engines: {node: ^12.17.0 || ^14.13 || >=16.0.0} + + character-entities-html4@2.1.0: + resolution: {integrity: sha512-1v7fgQRj6hnSwFpq1Eu0ynr/CDEw0rXo2B61qXrLNdHZmPKgb7fqS1a2JwF0rISo9q77jDI8VMEHoApn8qDoZA==} + + character-entities-legacy@3.0.0: + resolution: {integrity: sha512-RpPp0asT/6ufRm//AJVwpViZbGM/MkjQFxJccQRHmISF/22NBtsHqAWmL+/pmkPWoIUJdWyeVleTl1wydHATVQ==} + + character-entities@2.0.2: + resolution: {integrity: sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ==} + + character-reference-invalid@2.0.1: + resolution: {integrity: sha512-iBZ4F4wRbyORVsu0jPV7gXkOsGYjGHPmAyv+HiHG8gi5PtC9KI2j1+v8/tlibRvjoWX027ypmG/n0HtO5t7unw==} + + chardet@0.7.0: + resolution: {integrity: sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==} + + charm@0.1.2: + resolution: {integrity: sha512-syedaZ9cPe7r3hoQA9twWYKu5AIyCswN5+szkmPBe9ccdLrj4bYaCnLVPTLd2kgVRc7+zoX4tyPgRnFKCj5YjQ==} + + chevrotain-allstar@0.3.1: + resolution: {integrity: sha512-b7g+y9A0v4mxCW1qUhf3BSVPg+/NvGErk/dOkrDaHA0nQIQGAtrOjlX//9OQtRlSCy+x9rfB5N8yC71lH1nvMw==} + peerDependencies: + chevrotain: ^11.0.0 + + chevrotain@11.0.3: + resolution: {integrity: sha512-ci2iJH6LeIkvP9eJW6gpueU8cnZhv85ELY8w8WiFtNjMHA5ad6pQLaJo9mEly/9qUyCpvqX8/POVUTf18/HFdw==} + + chokidar@3.6.0: + resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==} + engines: {node: '>= 8.10.0'} + + chokidar@4.0.3: + resolution: {integrity: sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==} + engines: {node: '>= 14.16.0'} + + ci-info@3.9.0: + resolution: {integrity: sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==} + engines: {node: '>=8'} + + cli-boxes@3.0.0: + resolution: {integrity: sha512-/lzGpEWL/8PfI0BmBOPRwp0c/wFNX1RdUML3jK/RcSBA9T8mZDdQpqYBKtCFTOfQbwPqWEOpjqW+Fnayc0969g==} + engines: {node: '>=10'} + + cli-tableau@2.0.1: + resolution: {integrity: sha512-he+WTicka9cl0Fg/y+YyxcN6/bfQ/1O3QmgxRXDhABKqLzvoOSM4fMzp39uMyLBulAFuywD2N7UaoQE7WaADxQ==} + engines: {node: '>=8.10.0'} + + client-only@0.0.1: + resolution: {integrity: sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==} + + clipboardy@3.0.0: + resolution: {integrity: sha512-Su+uU5sr1jkUy1sGRpLKjKrvEOVXgSgiSInwa/qeID6aJ07yh+5NWc3h2QfjHjBnfX4LhtFcuAWKUsJ3r+fjbg==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + + clipboardy@4.0.0: + resolution: {integrity: sha512-5mOlNS0mhX0707P2I0aZ2V/cmHUEO/fL7VFLqszkhUsxt7RwnmrInf/eEQKlf5GzvYeHIjT+Ov1HRfNmymlG0w==} + engines: {node: '>=18'} + + clsx@2.1.1: + resolution: {integrity: sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==} + engines: {node: '>=6'} + + cluster-key-slot@1.1.2: + resolution: {integrity: sha512-RMr0FhtfXemyinomL4hrWcYJxmX6deFdCxpJzhDttxgO1+bcCnkk+9drydLVDmAMG7NE6aN/fl4F7ucU/90gAA==} + engines: {node: '>=0.10.0'} + + collapse-white-space@2.1.0: + resolution: {integrity: sha512-loKTxY1zCOuG4j9f6EPnuyyYkf58RnhhWTvRoZEokgB+WbdXehfjFviyOVYkqzEWz1Q5kRiZdBYS5SwxbQYwzw==} + + color-convert@2.0.1: + resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} + engines: {node: '>=7.0.0'} + + color-name@1.1.4: + resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} + + colorette@2.0.20: + resolution: {integrity: sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==} + + combined-stream@1.0.8: + resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==} + engines: {node: '>= 0.8'} + + comma-separated-tokens@2.0.3: + resolution: {integrity: sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==} + + commander@2.15.1: + resolution: {integrity: sha512-VlfT9F3V0v+jr4yxPc5gg9s62/fIVWsd2Bk2iD435um1NlGMYdVCq+MjcXnhYq2icNOizHr1kK+5TI6H0Hy0ag==} + + commander@4.1.1: + resolution: {integrity: sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==} + engines: {node: '>= 6'} + + commander@7.2.0: + resolution: {integrity: sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==} + engines: {node: '>= 10'} + + commander@8.3.0: + resolution: {integrity: sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==} + engines: {node: '>= 12'} + + commander@9.2.0: + resolution: {integrity: sha512-e2i4wANQiSXgnrBlIatyHtP1odfUp0BbV5Y5nEGbxtIrStkEOAAzCUirvLBNXHLr7kwLvJl6V+4V3XV9x7Wd9w==} + engines: {node: ^12.20.0 || >=14} + + compressible@2.0.18: + resolution: {integrity: sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==} + engines: {node: '>= 0.6'} + + compression@1.7.4: + resolution: {integrity: sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==} + engines: {node: '>= 0.8.0'} + + compute-scroll-into-view@3.1.1: + resolution: {integrity: sha512-VRhuHOLoKYOy4UbilLbUzbYg93XLjv2PncJC50EuTWPA3gaja1UjBsUP/D/9/juV3vQFr6XBEzn9KCAHdUvOHw==} + + concat-map@0.0.1: + resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} + + confbox@0.1.8: + resolution: {integrity: sha512-RMtmw0iFkeR4YV+fUOSucriAQNb9g8zFR52MWCtl+cCZOFRNL6zeB395vPzFhEjjn4fMxXudmELnl/KF/WrK6w==} + + consola@3.4.0: + resolution: {integrity: sha512-EiPU8G6dQG0GFHNR8ljnZFki/8a+cQwEQ+7wpxdChl02Q8HXlwEZWD5lqAF8vC2sEC3Tehr8hy7vErz88LHyUA==} + engines: {node: ^14.18.0 || >=16.10.0} + + content-disposition@0.5.2: + resolution: {integrity: sha512-kRGRZw3bLlFISDBgwTSA1TMBFN6J6GWDeubmDE3AF+3+yXL8hTWv8r5rkLbqYXY4RjPk/EzHnClI3zQf1cFmHA==} + engines: {node: '>= 0.6'} + + cookie@1.0.2: + resolution: {integrity: sha512-9Kr/j4O16ISv8zBBhJoi4bXOYNTkFLOqSL3UDB0njXxCXNezjeyVrJyGOWtgfs/q2km1gwBcfH8q1yEGoMYunA==} + engines: {node: '>=18'} + + cose-base@1.0.3: + resolution: {integrity: sha512-s9whTXInMSgAp/NVXVNuVxVKzGH2qck3aQlVHxDCdAEPgtMKwc4Wq6/QKhgdEdgbLSi9rBTAcPoRa6JpiG4ksg==} + + cose-base@2.2.0: + resolution: {integrity: sha512-AzlgcsCbUMymkADOJtQm3wO9S3ltPfYOFD5033keQn9NJzIbtnZj+UdBJe7DYml/8TdbtHJW3j58SOnKhWY/5g==} + + croner@4.1.97: + resolution: {integrity: sha512-/f6gpQuxDaqXu+1kwQYSckUglPaOrHdbIlBAu0YuW8/Cdb45XwXYNUBXg3r/9Mo6n540Kn/smKcZWko5x99KrQ==} + + cross-spawn@7.0.6: + resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==} + engines: {node: '>= 8'} + + csstype@3.1.3: + resolution: {integrity: sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==} + + culvert@0.1.2: + resolution: {integrity: sha512-yi1x3EAWKjQTreYWeSd98431AV+IEE0qoDyOoaHJ7KJ21gv6HtBXHVLX74opVSGqcR8/AbjJBHAHpcOy2bj5Gg==} + + cytoscape-cose-bilkent@4.1.0: + resolution: {integrity: sha512-wgQlVIUJF13Quxiv5e1gstZ08rnZj2XaLHGoFMYXz7SkNfCDOOteKBE6SYRfA9WxxI/iBc3ajfDoc6hb/MRAHQ==} + peerDependencies: + cytoscape: ^3.2.0 + + cytoscape-fcose@2.2.0: + resolution: {integrity: sha512-ki1/VuRIHFCzxWNrsshHYPs6L7TvLu3DL+TyIGEsRcvVERmxokbf5Gdk7mFxZnTdiGtnA4cfSmjZJMviqSuZrQ==} + peerDependencies: + cytoscape: ^3.2.0 + + cytoscape@3.31.0: + resolution: {integrity: sha512-zDGn1K/tfZwEnoGOcHc0H4XazqAAXAuDpcYw9mUnUjATjqljyCNGJv8uEvbvxGaGHaVshxMecyl6oc6uKzRfbw==} + engines: {node: '>=0.10'} + + d3-array@2.12.1: + resolution: {integrity: sha512-B0ErZK/66mHtEsR1TkPEEkwdy+WDesimkM5gpZr5Dsg54BiTA5RXtYW5qTLIAcekaS9xfZrzBLF/OAkB3Qn1YQ==} + + d3-array@3.2.4: + resolution: {integrity: sha512-tdQAmyA18i4J7wprpYq8ClcxZy3SC31QMeByyCFyRt7BVHdREQZ5lpzoe5mFEYZUWe+oq8HBvk9JjpibyEV4Jg==} + engines: {node: '>=12'} + + d3-axis@3.0.0: + resolution: {integrity: sha512-IH5tgjV4jE/GhHkRV0HiVYPDtvfjHQlQfJHs0usq7M30XcSBvOotpmH1IgkcXsO/5gEQZD43B//fc7SRT5S+xw==} + engines: {node: '>=12'} + + d3-brush@3.0.0: + resolution: {integrity: sha512-ALnjWlVYkXsVIGlOsuWH1+3udkYFI48Ljihfnh8FZPF2QS9o+PzGLBslO0PjzVoHLZ2KCVgAM8NVkXPJB2aNnQ==} + engines: {node: '>=12'} + + d3-chord@3.0.1: + resolution: {integrity: sha512-VE5S6TNa+j8msksl7HwjxMHDM2yNK3XCkusIlpX5kwauBfXuyLAtNg9jCp/iHH61tgI4sb6R/EIMWCqEIdjT/g==} + engines: {node: '>=12'} + + d3-color@3.1.0: + resolution: {integrity: sha512-zg/chbXyeBtMQ1LbD/WSoW2DpC3I0mpmPdW+ynRTj/x2DAWYrIY7qeZIHidozwV24m4iavr15lNwIwLxRmOxhA==} + engines: {node: '>=12'} + + d3-contour@4.0.2: + resolution: {integrity: sha512-4EzFTRIikzs47RGmdxbeUvLWtGedDUNkTcmzoeyg4sP/dvCexO47AaQL7VKy/gul85TOxw+IBgA8US2xwbToNA==} + engines: {node: '>=12'} + + d3-delaunay@6.0.4: + resolution: {integrity: sha512-mdjtIZ1XLAM8bm/hx3WwjfHt6Sggek7qH043O8KEjDXN40xi3vx/6pYSVTwLjEgiXQTbvaouWKynLBiUZ6SK6A==} + engines: {node: '>=12'} + + d3-dispatch@3.0.1: + resolution: {integrity: sha512-rzUyPU/S7rwUflMyLc1ETDeBj0NRuHKKAcvukozwhshr6g6c5d8zh4c2gQjY2bZ0dXeGLWc1PF174P2tVvKhfg==} + engines: {node: '>=12'} + + d3-drag@3.0.0: + resolution: {integrity: sha512-pWbUJLdETVA8lQNJecMxoXfH6x+mO2UQo8rSmZ+QqxcbyA3hfeprFgIT//HW2nlHChWeIIMwS2Fq+gEARkhTkg==} + engines: {node: '>=12'} + + d3-dsv@3.0.1: + resolution: {integrity: sha512-UG6OvdI5afDIFP9w4G0mNq50dSOsXHJaRE8arAS5o9ApWnIElp8GZw1Dun8vP8OyHOZ/QJUKUJwxiiCCnUwm+Q==} + engines: {node: '>=12'} + hasBin: true + + d3-ease@3.0.1: + resolution: {integrity: sha512-wR/XK3D3XcLIZwpbvQwQ5fK+8Ykds1ip7A2Txe0yxncXSdq1L9skcG7blcedkOX+ZcgxGAmLX1FrRGbADwzi0w==} + engines: {node: '>=12'} + + d3-fetch@3.0.1: + resolution: {integrity: sha512-kpkQIM20n3oLVBKGg6oHrUchHM3xODkTzjMoj7aWQFq5QEM+R6E4WkzT5+tojDY7yjez8KgCBRoj4aEr99Fdqw==} + engines: {node: '>=12'} + + d3-force@3.0.0: + resolution: {integrity: sha512-zxV/SsA+U4yte8051P4ECydjD/S+qeYtnaIyAs9tgHCqfguma/aAQDjo85A9Z6EKhBirHRJHXIgJUlffT4wdLg==} + engines: {node: '>=12'} + + d3-format@3.1.0: + resolution: {integrity: sha512-YyUI6AEuY/Wpt8KWLgZHsIU86atmikuoOmCfommt0LYHiQSPjvX2AcFc38PX0CBpr2RCyZhjex+NS/LPOv6YqA==} + engines: {node: '>=12'} + + d3-geo@3.1.1: + resolution: {integrity: sha512-637ln3gXKXOwhalDzinUgY83KzNWZRKbYubaG+fGVuc/dxO64RRljtCTnf5ecMyE1RIdtqpkVcq0IbtU2S8j2Q==} + engines: {node: '>=12'} + + d3-hierarchy@3.1.2: + resolution: {integrity: sha512-FX/9frcub54beBdugHjDCdikxThEqjnR93Qt7PvQTOHxyiNCAlvMrHhclk3cD5VeAaq9fxmfRp+CnWw9rEMBuA==} + engines: {node: '>=12'} + + d3-interpolate@3.0.1: + resolution: {integrity: sha512-3bYs1rOD33uo8aqJfKP3JWPAibgw8Zm2+L9vBKEHJ2Rg+viTR7o5Mmv5mZcieN+FRYaAOWX5SJATX6k1PWz72g==} + engines: {node: '>=12'} + + d3-path@1.0.9: + resolution: {integrity: sha512-VLaYcn81dtHVTjEHd8B+pbe9yHWpXKZUC87PzoFmsFrJqgFwDe/qxfp5MlfsfM1V5E/iVt0MmEbWQ7FVIXh/bg==} + + d3-path@3.1.0: + resolution: {integrity: sha512-p3KP5HCf/bvjBSSKuXid6Zqijx7wIfNW+J/maPs+iwR35at5JCbLUT0LzF1cnjbCHWhqzQTIN2Jpe8pRebIEFQ==} + engines: {node: '>=12'} + + d3-polygon@3.0.1: + resolution: {integrity: sha512-3vbA7vXYwfe1SYhED++fPUQlWSYTTGmFmQiany/gdbiWgU/iEyQzyymwL9SkJjFFuCS4902BSzewVGsHHmHtXg==} + engines: {node: '>=12'} + + d3-quadtree@3.0.1: + resolution: {integrity: sha512-04xDrxQTDTCFwP5H6hRhsRcb9xxv2RzkcsygFzmkSIOJy3PeRJP7sNk3VRIbKXcog561P9oU0/rVH6vDROAgUw==} + engines: {node: '>=12'} + + d3-random@3.0.1: + resolution: {integrity: sha512-FXMe9GfxTxqd5D6jFsQ+DJ8BJS4E/fT5mqqdjovykEB2oFbTMDVdg1MGFxfQW+FBOGoB++k8swBrgwSHT1cUXQ==} + engines: {node: '>=12'} + + d3-sankey@0.12.3: + resolution: {integrity: sha512-nQhsBRmM19Ax5xEIPLMY9ZmJ/cDvd1BG3UVvt5h3WRxKg5zGRbvnteTyWAbzeSvlh3tW7ZEmq4VwR5mB3tutmQ==} + + d3-scale-chromatic@3.1.0: + resolution: {integrity: sha512-A3s5PWiZ9YCXFye1o246KoscMWqf8BsD9eRiJ3He7C9OBaxKhAd5TFCdEx/7VbKtxxTsu//1mMJFrEt572cEyQ==} + engines: {node: '>=12'} + + d3-scale@4.0.2: + resolution: {integrity: sha512-GZW464g1SH7ag3Y7hXjf8RoUuAFIqklOAq3MRl4OaWabTFJY9PN/E1YklhXLh+OQ3fM9yS2nOkCoS+WLZ6kvxQ==} + engines: {node: '>=12'} + + d3-selection@3.0.0: + resolution: {integrity: sha512-fmTRWbNMmsmWq6xJV8D19U/gw/bwrHfNXxrIN+HfZgnzqTHp9jOmKMhsTUjXOJnZOdZY9Q28y4yebKzqDKlxlQ==} + engines: {node: '>=12'} + + d3-shape@1.3.7: + resolution: {integrity: sha512-EUkvKjqPFUAZyOlhY5gzCxCeI0Aep04LwIRpsZ/mLFelJiUfnK56jo5JMDSE7yyP2kLSb6LtF+S5chMk7uqPqw==} + + d3-shape@3.2.0: + resolution: {integrity: sha512-SaLBuwGm3MOViRq2ABk3eLoxwZELpH6zhl3FbAoJ7Vm1gofKx6El1Ib5z23NUEhF9AsGl7y+dzLe5Cw2AArGTA==} + engines: {node: '>=12'} + + d3-time-format@4.1.0: + resolution: {integrity: sha512-dJxPBlzC7NugB2PDLwo9Q8JiTR3M3e4/XANkreKSUxF8vvXKqm1Yfq4Q5dl8budlunRVlUUaDUgFt7eA8D6NLg==} + engines: {node: '>=12'} + + d3-time@3.1.0: + resolution: {integrity: sha512-VqKjzBLejbSMT4IgbmVgDjpkYrNWUYJnbCGo874u7MMKIWsILRX+OpX/gTk8MqjpT1A/c6HY2dCA77ZN0lkQ2Q==} + engines: {node: '>=12'} + + d3-timer@3.0.1: + resolution: {integrity: sha512-ndfJ/JxxMd3nw31uyKoY2naivF+r29V+Lc0svZxe1JvvIRmi8hUsrMvdOwgS1o6uBHmiz91geQ0ylPP0aj1VUA==} + engines: {node: '>=12'} + + d3-transition@3.0.1: + resolution: {integrity: sha512-ApKvfjsSR6tg06xrL434C0WydLr7JewBB3V+/39RMHsaXTOG0zmt/OAXeng5M5LBm0ojmxJrpomQVZ1aPvBL4w==} + engines: {node: '>=12'} + peerDependencies: + d3-selection: 2 - 3 + + d3-zoom@3.0.0: + resolution: {integrity: sha512-b8AmV3kfQaqWAuacbPuNbL6vahnOJflOhexLzMMNLga62+/nh0JzvJ0aO/5a5MVgUFGS7Hu1P9P03o3fJkDCyw==} + engines: {node: '>=12'} + + d3@7.9.0: + resolution: {integrity: sha512-e1U46jVP+w7Iut8Jt8ri1YsPOvFpg46k+K8TpCb0P+zjCkjkPnV7WzfDJzMHy1LnA+wj5pLT1wjO901gLXeEhA==} + engines: {node: '>=12'} + + dagre-d3-es@7.0.11: + resolution: {integrity: sha512-tvlJLyQf834SylNKax8Wkzco/1ias1OPw8DcUMDE7oUIoSEW25riQVuiu/0OWEFqT0cxHT3Pa9/D82Jr47IONw==} + + data-uri-to-buffer@6.0.2: + resolution: {integrity: sha512-7hvf7/GW8e86rW0ptuwS3OcBGDjIi6SZva7hCyWC0yYry2cOPmLIjXAUHI6DK2HsnwJd9ifmt57i8eV2n4YNpw==} + engines: {node: '>= 14'} + + data-view-buffer@1.0.2: + resolution: {integrity: sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ==} + engines: {node: '>= 0.4'} + + data-view-byte-length@1.0.2: + resolution: {integrity: sha512-tuhGbE6CfTM9+5ANGf+oQb72Ky/0+s3xKUpHvShfiz2RxMFgFPjsXuRLBVMtvMs15awe45SRb83D6wH4ew6wlQ==} + engines: {node: '>= 0.4'} + + data-view-byte-offset@1.0.1: + resolution: {integrity: sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ==} + engines: {node: '>= 0.4'} + + dateformat@4.6.3: + resolution: {integrity: sha512-2P0p0pFGzHS5EMnhdxQi7aJN+iMheud0UhG4dlE1DLAlvL8JHjJJTX/CSm4JXwV0Ka5nGk3zC5mcb5bUQUxxMA==} + + dayjs@1.11.13: + resolution: {integrity: sha512-oaMBel6gjolK862uaPQOVTA7q3TZhuSvuMQAAglQDOWYO9A91IrAOUJEyKVlqJlHE0vq5p5UXxzdPfMH/x6xNg==} + + dayjs@1.8.36: + resolution: {integrity: sha512-3VmRXEtw7RZKAf+4Tv1Ym9AGeo8r8+CjDi26x+7SYQil1UqtqdaokhzoEJohqlzt0m5kacJSDhJQkG/LWhpRBw==} + + debug@2.6.9: + resolution: {integrity: sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==} + peerDependencies: + supports-color: '*' + peerDependenciesMeta: + supports-color: + optional: true + + debug@3.2.7: + resolution: {integrity: sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==} + peerDependencies: + supports-color: '*' + peerDependenciesMeta: + supports-color: + optional: true + + debug@4.3.7: + resolution: {integrity: sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==} + engines: {node: '>=6.0'} + peerDependencies: + supports-color: '*' + peerDependenciesMeta: + supports-color: + optional: true + + debug@4.4.0: + resolution: {integrity: sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==} + engines: {node: '>=6.0'} + peerDependencies: + supports-color: '*' + peerDependenciesMeta: + supports-color: + optional: true + + decode-named-character-reference@1.0.2: + resolution: {integrity: sha512-O8x12RzrUF8xyVcY0KJowWsmaJxQbmy0/EtnNtHRpsOcT7dFk5W598coHqBVpmWo1oQQfsCqfCmkZN5DJrZVdg==} + + deep-extend@0.6.0: + resolution: {integrity: sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==} + engines: {node: '>=4.0.0'} + + deep-is@0.1.4: + resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} + + define-data-property@1.1.4: + resolution: {integrity: sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==} + engines: {node: '>= 0.4'} + + define-properties@1.2.1: + resolution: {integrity: sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==} + engines: {node: '>= 0.4'} + + degenerator@5.0.1: + resolution: {integrity: sha512-TllpMR/t0M5sqCXfj85i4XaAzxmS5tVA16dqvdkMwGmzI+dXLXnw3J+3Vdv7VKw+ThlTMboK6i9rnZ6Nntj5CQ==} + engines: {node: '>= 14'} + + delaunator@5.0.1: + resolution: {integrity: sha512-8nvh+XBe96aCESrGOqMp/84b13H9cdKbG5P2ejQCh4d4sK9RL4371qou9drQjMhvnPmhWl5hnmqbEE0fXr9Xnw==} + + delayed-stream@1.0.0: + resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==} + engines: {node: '>=0.4.0'} + + dequal@2.0.3: + resolution: {integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==} + engines: {node: '>=6'} + + detect-indent@6.1.0: + resolution: {integrity: sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA==} + engines: {node: '>=8'} + + detect-indent@7.0.1: + resolution: {integrity: sha512-Mc7QhQ8s+cLrnUfU/Ji94vG/r8M26m8f++vyres4ZoojaRDpZ1eSIh/EpzLNwlWuvzSZ3UbDFspjFvTDXe6e/g==} + engines: {node: '>=12.20'} + + detect-newline@4.0.1: + resolution: {integrity: sha512-qE3Veg1YXzGHQhlA6jzebZN2qVf6NX+A7m7qlhCGG30dJixrAQhYOsJjsnBjJkCSmuOPpCk30145fr8FV0bzog==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + + devlop@1.1.0: + resolution: {integrity: sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==} + + dir-glob@3.0.1: + resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} + engines: {node: '>=8'} + + doctrine@2.1.0: + resolution: {integrity: sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==} + engines: {node: '>=0.10.0'} + + dompurify@3.2.4: + resolution: {integrity: sha512-ysFSFEDVduQpyhzAob/kkuJjf5zWkZD8/A9ywSp1byueyuCfHamrCBa14/Oc2iiB0e51B+NpxSl5gmzn+Ms/mg==} + + dotenv@16.0.3: + resolution: {integrity: sha512-7GO6HghkA5fYG9TYnNxi14/7K9f5occMlp3zXAuSxn7CKCxt9xbNWG7yF8hTCSUchlfWSe3uLmlPfigevRItzQ==} + engines: {node: '>=12'} + + dunder-proto@1.0.1: + resolution: {integrity: sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==} + engines: {node: '>= 0.4'} + + eastasianwidth@0.2.0: + resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} + + emoji-regex-xs@1.0.0: + resolution: {integrity: sha512-LRlerrMYoIDrT6jgpeZ2YYl/L8EulRTt5hQcYjy5AInh7HWXKimpqx68aknBFpGL2+/IcogTcaydJEgaTmOpDg==} + + emoji-regex@8.0.0: + resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} + + emoji-regex@9.2.2: + resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} + + end-of-stream@1.4.4: + resolution: {integrity: sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==} + + enquirer@2.3.6: + resolution: {integrity: sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==} + engines: {node: '>=8.6'} + + enquirer@2.4.1: + resolution: {integrity: sha512-rRqJg/6gd538VHvR3PSrdRBb/1Vy2YfzHqzvbhGIQpDRKIa4FgV/54b5Q1xYSxOOwKvjXweS26E0Q+nAMwp2pQ==} + engines: {node: '>=8.6'} + + entities@4.5.0: + resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==} + engines: {node: '>=0.12'} + + es-abstract@1.23.9: + resolution: {integrity: sha512-py07lI0wjxAC/DcfK1S6G7iANonniZwTISvdPzk9hzeH0IZIshbuuFxLIU96OyF89Yb9hiqWn8M/bY83KY5vzA==} + engines: {node: '>= 0.4'} + + es-define-property@1.0.1: + resolution: {integrity: sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==} + engines: {node: '>= 0.4'} + + es-errors@1.3.0: + resolution: {integrity: sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==} + engines: {node: '>= 0.4'} + + es-iterator-helpers@1.2.1: + resolution: {integrity: sha512-uDn+FE1yrDzyC0pCo961B2IHbdM8y/ACZsKD4dG6WqrjV53BADjwa7D+1aom2rsNVfLyDgU/eigvlJGJ08OQ4w==} + engines: {node: '>= 0.4'} + + es-object-atoms@1.1.1: + resolution: {integrity: sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==} + engines: {node: '>= 0.4'} + + es-set-tostringtag@2.1.0: + resolution: {integrity: sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==} + engines: {node: '>= 0.4'} + + es-shim-unscopables@1.0.2: + resolution: {integrity: sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw==} + + es-to-primitive@1.3.0: + resolution: {integrity: sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g==} + engines: {node: '>= 0.4'} + + esast-util-from-estree@2.0.0: + resolution: {integrity: sha512-4CyanoAudUSBAn5K13H4JhsMH6L9ZP7XbLVe/dKybkxMO7eDyLsT8UHl9TRNrU2Gr9nz+FovfSIjuXWJ81uVwQ==} + + esast-util-from-js@2.0.1: + resolution: {integrity: sha512-8Ja+rNJ0Lt56Pcf3TAmpBZjmx8ZcK5Ts4cAzIOjsjevg9oSXJnl6SUQ2EevU8tv3h6ZLWmoKL5H4fgWvdvfETw==} + + esbuild@0.23.1: + resolution: {integrity: sha512-VVNz/9Sa0bs5SELtn3f7qhJCDPCF5oMEl5cO9/SSinpE9hbPVvxbd572HH5AKiP7WD8INO53GgfDDhRjkylHEg==} + engines: {node: '>=18'} + hasBin: true + + esbuild@0.24.2: + resolution: {integrity: sha512-+9egpBW8I3CD5XPe0n6BfT5fxLzxrlDzqydF3aviG+9ni1lDC/OvMHcxqEFV0+LANZG5R1bFMWfUrjVsdwxJvA==} + engines: {node: '>=18'} + hasBin: true + + escape-string-regexp@4.0.0: + resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} + engines: {node: '>=10'} + + escape-string-regexp@5.0.0: + resolution: {integrity: sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==} + engines: {node: '>=12'} + + escodegen@2.1.0: + resolution: {integrity: sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w==} + engines: {node: '>=6.0'} + hasBin: true + + eslint-config-prettier@10.0.1: + resolution: {integrity: sha512-lZBts941cyJyeaooiKxAtzoPHTN+GbQTJFAIdQbRhA4/8whaAraEh47Whw/ZFfrjNSnlAxqfm9i0XVAEkULjCw==} + hasBin: true + peerDependencies: + eslint: '>=7.0.0' + + eslint-plugin-react-hooks@5.1.0: + resolution: {integrity: sha512-mpJRtPgHN2tNAvZ35AMfqeB3Xqeo273QxrHJsbBEPWODRM4r0yB6jfoROqKEYrOn27UtRPpcpHc2UqyBSuUNTw==} + engines: {node: '>=10'} + peerDependencies: + eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 || ^9.0.0 + + eslint-plugin-react@7.37.4: + resolution: {integrity: sha512-BGP0jRmfYyvOyvMoRX/uoUeW+GqNj9y16bPQzqAHf3AYII/tDs+jMN0dBVkl88/OZwNGwrVFxE7riHsXVfy/LQ==} + engines: {node: '>=4'} + peerDependencies: + eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7 + + eslint-plugin-turbo@2.4.0: + resolution: {integrity: sha512-qCgoRi/OTc1VMxab7+sdKiV1xlkY4qjK9sM+kS7+WogrB1DxLguJSQXvk4HA13SD5VmJsq+8FYOw5q4EUk6Ixg==} + peerDependencies: + eslint: '>6.6.0' + turbo: '>2.0.0' + + eslint-scope@8.2.0: + resolution: {integrity: sha512-PHlWUfG6lvPc3yvP5A4PNyBL1W8fkDUccmI21JUu/+GKZBoH/W5u6usENXUrWFRsyoW5ACUjFGgAFQp5gUlb/A==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + eslint-visitor-keys@3.4.3: + resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + + eslint-visitor-keys@4.2.0: + resolution: {integrity: sha512-UyLnSehNt62FFhSwjZlHmeokpRK59rcz29j+F1/aDgbkbRTk7wIc9XzdoasMUbRNKDM0qQt/+BJ4BrpFeABemw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + eslint@9.20.0: + resolution: {integrity: sha512-aL4F8167Hg4IvsW89ejnpTwx+B/UQRzJPGgbIOl+4XqffWsahVVsLEWoZvnrVuwpWmnRd7XeXmQI1zlKcFDteA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + hasBin: true + peerDependencies: + jiti: '*' + peerDependenciesMeta: + jiti: + optional: true + + esm@3.2.25: + resolution: {integrity: sha512-U1suiZ2oDVWv4zPO56S0NcR5QriEahGtdN2OR6FiOG4WJvcjBVFB0qI4+eKoWFH483PKGuLuu6V8Z4T5g63UVA==} + engines: {node: '>=6'} + + espree@10.3.0: + resolution: {integrity: sha512-0QYC8b24HWY8zjRnDTL6RiHfDbAWn63qb4LMj1Z4b076A4une81+z03Kg7l7mn/48PUTqoLptSXez8oknU8Clg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + esprima@4.0.1: + resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==} + engines: {node: '>=4'} + hasBin: true + + esquery@1.6.0: + resolution: {integrity: sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==} + engines: {node: '>=0.10'} + + esrecurse@4.3.0: + resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==} + engines: {node: '>=4.0'} + + estraverse@5.3.0: + resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} + engines: {node: '>=4.0'} + + estree-util-attach-comments@3.0.0: + resolution: {integrity: sha512-cKUwm/HUcTDsYh/9FgnuFqpfquUbwIqwKM26BVCGDPVgvaCl/nDCCjUfiLlx6lsEZ3Z4RFxNbOQ60pkaEwFxGw==} + + estree-util-build-jsx@3.0.1: + resolution: {integrity: sha512-8U5eiL6BTrPxp/CHbs2yMgP8ftMhR5ww1eIKoWRMlqvltHF8fZn5LRDvTKuxD3DUn+shRbLGqXemcP51oFCsGQ==} + + estree-util-is-identifier-name@2.1.0: + resolution: {integrity: sha512-bEN9VHRyXAUOjkKVQVvArFym08BTWB0aJPppZZr0UNyAqWsLaVfAqP7hbaTJjzHifmB5ebnR8Wm7r7yGN/HonQ==} + + estree-util-is-identifier-name@3.0.0: + resolution: {integrity: sha512-hFtqIDZTIUZ9BXLb8y4pYGyk6+wekIivNVTcmvk8NoOh+VeRn5y6cEHzbURrWbfp1fIqdVipilzj+lfaadNZmg==} + + estree-util-scope@1.0.0: + resolution: {integrity: sha512-2CAASclonf+JFWBNJPndcOpA8EMJwa0Q8LUFJEKqXLW6+qBvbFZuF5gItbQOs/umBUkjviCSDCbBwU2cXbmrhQ==} + + estree-util-to-js@2.0.0: + resolution: {integrity: sha512-WDF+xj5rRWmD5tj6bIqRi6CkLIXbbNQUcxQHzGysQzvHmdYG2G7p/Tf0J0gpxGgkeMZNTIjT/AoSvC9Xehcgdg==} + + estree-util-value-to-estree@1.3.0: + resolution: {integrity: sha512-Y+ughcF9jSUJvncXwqRageavjrNPAI+1M/L3BI3PyLp1nmgYTGUXU6t5z1Y7OWuThoDdhPME07bQU+d5LxdJqw==} + engines: {node: '>=12.0.0'} + + estree-util-value-to-estree@3.3.2: + resolution: {integrity: sha512-hYH1aSvQI63Cvq3T3loaem6LW4u72F187zW4FHpTrReJSm6W66vYTFNO1vH/chmcOulp1HlAj1pxn8Ag0oXI5Q==} + + estree-util-visit@2.0.0: + resolution: {integrity: sha512-m5KgiH85xAhhW8Wta0vShLcUvOsh3LLPI2YVwcbio1l7E09NTLL1EyMZFM1OyWowoH0skScNbhOPl4kcBgzTww==} + + estree-walker@3.0.3: + resolution: {integrity: sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==} + + esutils@2.0.3: + resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} + engines: {node: '>=0.10.0'} + + eventemitter2@0.4.14: + resolution: {integrity: sha512-K7J4xq5xAD5jHsGM5ReWXRTFa3JRGofHiMcVgQ8PRwgWxzjHpMWCIzsmyf60+mh8KLsqYPcjUMa0AC4hd6lPyQ==} + + eventemitter2@5.0.1: + resolution: {integrity: sha512-5EM1GHXycJBS6mauYAbVKT1cVs7POKWb2NXD4Vyt8dDqeZa7LaDK1/sjtL+Zb0lzTpSNil4596Dyu97hz37QLg==} + + eventemitter2@6.4.9: + resolution: {integrity: sha512-JEPTiaOt9f04oa6NOkc4aH+nVp5I3wEjpHbIPqfgCdD5v5bUzy7xQqwcVO2aDQgOWhI28da57HksMrzK9HlRxg==} + + execa@5.1.1: + resolution: {integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==} + engines: {node: '>=10'} + + execa@8.0.1: + resolution: {integrity: sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==} + engines: {node: '>=16.17'} + + extend-shallow@2.0.1: + resolution: {integrity: sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==} + engines: {node: '>=0.10.0'} + + extend@3.0.2: + resolution: {integrity: sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==} + + extendable-error@0.1.7: + resolution: {integrity: sha512-UOiS2in6/Q0FK0R0q6UY9vYpQ21mr/Qn1KOnte7vsACuNJf514WvCCUHSRCPcgjPT2bAhNIJdlE6bVap1GKmeg==} + + external-editor@3.1.0: + resolution: {integrity: sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==} + engines: {node: '>=4'} + + extrareqp2@1.0.0: + resolution: {integrity: sha512-Gum0g1QYb6wpPJCVypWP3bbIuaibcFiJcpuPM10YSXp/tzqi84x9PJageob+eN4xVRIOto4wjSGNLyMD54D2xA==} + + fast-copy@3.0.2: + resolution: {integrity: sha512-dl0O9Vhju8IrcLndv2eU4ldt1ftXMqqfgN4H1cpmGV7P6jeB9FwpN9a2c8DPGE1Ys88rNUJVYDHq73CGAGOPfQ==} + + fast-decode-uri-component@1.0.1: + resolution: {integrity: sha512-WKgKWg5eUxvRZGwW8FvfbaH7AXSh2cL+3j5fMGzUMCxWBJ3dV3a7Wz8y2f/uQ0e3B6WmodD3oS54jTQ9HVTIIg==} + + fast-deep-equal@3.1.3: + resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} + + fast-glob@3.3.1: + resolution: {integrity: sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==} + engines: {node: '>=8.6.0'} + + fast-glob@3.3.3: + resolution: {integrity: sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==} + engines: {node: '>=8.6.0'} + + fast-json-patch@3.1.1: + resolution: {integrity: sha512-vf6IHUX2SBcA+5/+4883dsIjpBTqmfBjmYiWK1savxQmFk4JfBMLa7ynTYOs1Rolp/T1betJxHiGD3g1Mn8lUQ==} + + fast-json-stable-stringify@2.1.0: + resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} + + fast-json-stringify@6.0.1: + resolution: {integrity: sha512-s7SJE83QKBZwg54dIbD5rCtzOBVD43V1ReWXXYqBgwCwHLYAAT0RQc/FmrQglXqWPpz6omtryJQOau5jI4Nrvg==} + + fast-levenshtein@2.0.6: + resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==} + + fast-querystring@1.1.2: + resolution: {integrity: sha512-g6KuKWmFXc0fID8WWH0jit4g0AGBoJhCkJMb1RmbsSEUNvQ+ZC8D6CUZ+GtF8nMzSPXnhiePyyqqipzNNEnHjg==} + + fast-redact@3.5.0: + resolution: {integrity: sha512-dwsoQlS7h9hMeYUq1W++23NDcBLV4KqONnITDV9DjfS3q1SgDGVrBdvvTLUotWtPSD7asWDV9/CmsZPy8Hf70A==} + engines: {node: '>=6'} + + fast-safe-stringify@2.1.1: + resolution: {integrity: sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA==} + + fast-uri@3.0.6: + resolution: {integrity: sha512-Atfo14OibSv5wAp4VWNsFYE1AchQRTv9cBGWET4pZWHzYshFSS9NQI6I57rdKn9croWVMbYFbLhJ+yJvmZIIHw==} + + fastify@5.2.1: + resolution: {integrity: sha512-rslrNBF67eg8/Gyn7P2URV8/6pz8kSAscFL4EThZJ8JBMaXacVdVE4hmUcnPNKERl5o/xTiBSLfdowBRhVF1WA==} + + fastq@1.19.0: + resolution: {integrity: sha512-7SFSRCNjBQIZH/xZR3iy5iQYR8aGBE0h3VG6/cwlbrpdciNYBMotQav8c1XI3HjHH+NikUpP53nPdlZSdWmFzA==} + + fault@2.0.1: + resolution: {integrity: sha512-WtySTkS4OKev5JtpHXnib4Gxiurzh5NCGvWrFaZ34m6JehfTUhKZvn9njTfw48t6JumVQOmrKqpmGcdwxnhqBQ==} + + fclone@1.0.11: + resolution: {integrity: sha512-GDqVQezKzRABdeqflsgMr7ktzgF9CyS+p2oe0jJqUY6izSSbhPIQJDpoU4PtGcD7VPM9xh/dVrTu6z1nwgmEGw==} + + fdir@6.4.3: + resolution: {integrity: sha512-PMXmW2y1hDDfTSRc9gaXIuCCRpuoz3Kaz8cUelp3smouvfT632ozg2vrT6lJsHKKOF59YLbOGfAWGUcKEfRMQw==} + peerDependencies: + picomatch: ^3 || ^4 + peerDependenciesMeta: + picomatch: + optional: true + + file-entry-cache@8.0.0: + resolution: {integrity: sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==} + engines: {node: '>=16.0.0'} + + fill-range@7.1.1: + resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} + engines: {node: '>=8'} + + find-my-way@9.2.0: + resolution: {integrity: sha512-d3uCir8Hmg7W1Ywp8nKf2lJJYU9Nwinvo+1D39Dn09nz65UKXIxUh7j7K8zeWhxqe1WrkS7FJyON/Q/3lPoc6w==} + engines: {node: '>=14'} + + find-up@4.1.0: + resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==} + engines: {node: '>=8'} + + find-up@5.0.0: + resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} + engines: {node: '>=10'} + + flat-cache@4.0.1: + resolution: {integrity: sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==} + engines: {node: '>=16'} + + flatted@3.3.2: + resolution: {integrity: sha512-AiwGJM8YcNOaobumgtng+6NHuOqC3A7MixFeDafM3X9cIUM+xUXoS5Vfgf+OihAYe20fxqNM9yPBXJzRtZ/4eA==} + + flexsearch@0.7.43: + resolution: {integrity: sha512-c5o/+Um8aqCSOXGcZoqZOm+NqtVwNsvVpWv6lfmSclU954O3wvQKxxK8zj74fPaSJbXpSLTs4PRhh+wnoCXnKg==} + + follow-redirects@1.15.9: + resolution: {integrity: sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==} + engines: {node: '>=4.0'} + peerDependencies: + debug: '*' + peerDependenciesMeta: + debug: + optional: true + + for-each@0.3.4: + resolution: {integrity: sha512-kKaIINnFpzW6ffJNDjjyjrk21BkDx38c0xa/klsT8VzLCaMEefv4ZTacrcVR4DmgTeBra++jMDAfS/tS799YDw==} + engines: {node: '>= 0.4'} + + foreground-child@3.3.0: + resolution: {integrity: sha512-Ld2g8rrAyMYFXBhEqMz8ZAHBi4J4uS1i/CxGMDnjyFWddMXLVcDp051DZfu+t7+ab7Wv6SMqpWmyFIj5UbfFvg==} + engines: {node: '>=14'} + + form-data@4.0.1: + resolution: {integrity: sha512-tzN8e4TX8+kkxGPK8D5u0FNmjPUjw3lwC9lSLxxoB/+GtsJG91CO8bSWy73APlgAZzZbXEYZJuxjkHH2w+Ezhw==} + engines: {node: '>= 6'} + + format@0.2.2: + resolution: {integrity: sha512-wzsgA6WOq+09wrU1tsJ09udeR/YZRaeArL9e1wPbFg3GG2yDnC2ldKpxs4xunpFF9DgqCqOIra3bc1HWrJ37Ww==} + engines: {node: '>=0.4.x'} + + fs-extra@7.0.1: + resolution: {integrity: sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==} + engines: {node: '>=6 <7 || >=8'} + + fs-extra@8.1.0: + resolution: {integrity: sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==} + engines: {node: '>=6 <7 || >=8'} + + fsevents@2.3.2: + resolution: {integrity: sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==} + engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} + os: [darwin] + + fsevents@2.3.3: + resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} + engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} + os: [darwin] + + function-bind@1.1.2: + resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} + + function.prototype.name@1.1.8: + resolution: {integrity: sha512-e5iwyodOHhbMr/yNrc7fDYG4qlbIvI5gajyzPnb5TCwyhjApznQh1BMFou9b30SevY43gCJKXycoCBjMbsuW0Q==} + engines: {node: '>= 0.4'} + + functions-have-names@1.2.3: + resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==} + + generic-pool@3.9.0: + resolution: {integrity: sha512-hymDOu5B53XvN4QT9dBmZxPX4CWhBPPLguTZ9MMFeFa/Kg0xWVfylOVNlJji/E7yTZWFd/q9GO5TxDLq156D7g==} + engines: {node: '>= 4'} + + get-intrinsic@1.2.7: + resolution: {integrity: sha512-VW6Pxhsrk0KAOqs3WEd0klDiF/+V7gQOpAvY1jVU/LHmaD/kQO4523aiJuikX/QAKYiW6x8Jh+RJej1almdtCA==} + engines: {node: '>= 0.4'} + + get-proto@1.0.1: + resolution: {integrity: sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==} + engines: {node: '>= 0.4'} + + get-stdin@9.0.0: + resolution: {integrity: sha512-dVKBjfWisLAicarI2Sf+JuBE/DghV4UzNAVe9yhEJuzeREd3JhOTE9cUaJTeSa77fsbQUK3pcOpJfM59+VKZaA==} + engines: {node: '>=12'} + + get-stream@6.0.1: + resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==} + engines: {node: '>=10'} + + get-stream@8.0.1: + resolution: {integrity: sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==} + engines: {node: '>=16'} + + get-symbol-description@1.1.0: + resolution: {integrity: sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==} + engines: {node: '>= 0.4'} + + get-tsconfig@4.10.0: + resolution: {integrity: sha512-kGzZ3LWWQcGIAmg6iWvXn0ei6WDtV26wzHRMwDSzmAbcXrTEXxHy6IehI6/4eT6VRKyMP1eF1VqwrVUmE/LR7A==} + + get-uri@6.0.4: + resolution: {integrity: sha512-E1b1lFFLvLgak2whF2xDBcOy6NLVGZBqqjJjsIhvopKfWWEi64pLVTWWehV8KlLerZkfNTA95sTe2OdJKm1OzQ==} + engines: {node: '>= 14'} + + git-hooks-list@3.2.0: + resolution: {integrity: sha512-ZHG9a1gEhUMX1TvGrLdyWb9kDopCBbTnI8z4JgRMYxsijWipgjSEYoPWqBuIB0DnRnvqlQSEeVmzpeuPm7NdFQ==} + + git-node-fs@1.0.0: + resolution: {integrity: sha512-bLQypt14llVXBg0S0u8q8HmU7g9p3ysH+NvVlae5vILuUvs759665HvmR5+wb04KjHyjFcDRxdYb4kyNnluMUQ==} + peerDependencies: + js-git: ^0.7.8 + peerDependenciesMeta: + js-git: + optional: true + + git-sha1@0.1.2: + resolution: {integrity: sha512-2e/nZezdVlyCopOCYHeW0onkbZg7xP1Ad6pndPy1rCygeRykefUS6r7oA5cJRGEFvseiaz5a/qUHFVX1dd6Isg==} + + github-slugger@2.0.0: + resolution: {integrity: sha512-IaOQ9puYtjrkq7Y0Ygl9KDZnrf/aiUJYUpVf89y8kyaxbRG7Y1SrX/jaumrv81vc61+kiMempujsM3Yw7w5qcw==} + + glob-parent@5.1.2: + resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} + engines: {node: '>= 6'} + + glob-parent@6.0.2: + resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==} + engines: {node: '>=10.13.0'} + + glob@10.4.5: + resolution: {integrity: sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==} + hasBin: true + + globals@14.0.0: + resolution: {integrity: sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==} + engines: {node: '>=18'} + + globals@15.14.0: + resolution: {integrity: sha512-OkToC372DtlQeje9/zHIo5CT8lRP/FUgEOKBEhU4e0abL7J7CD24fD9ohiLN5hagG/kWCYj4K5oaxxtj2Z0Dig==} + engines: {node: '>=18'} + + globalthis@1.0.4: + resolution: {integrity: sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==} + engines: {node: '>= 0.4'} + + globby@11.1.0: + resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==} + engines: {node: '>=10'} + + gopd@1.2.0: + resolution: {integrity: sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==} + engines: {node: '>= 0.4'} + + graceful-fs@4.2.11: + resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} + + graphemer@1.4.0: + resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==} + + gray-matter@4.0.3: + resolution: {integrity: sha512-5v6yZd4JK3eMI3FqqCouswVqwugaA9r4dNZB1wwcmrD02QkV5H0y7XBQW8QwQqEaZY1pM9aqORSORhJRdNK44Q==} + engines: {node: '>=6.0'} + + hachure-fill@0.5.2: + resolution: {integrity: sha512-3GKBOn+m2LX9iq+JC1064cSFprJY4jL1jCXTcpnfER5HYE2l/4EfWSGzkPa/ZDBmYI0ZOEj5VHV/eKnPGkHuOg==} + + has-bigints@1.1.0: + resolution: {integrity: sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg==} + engines: {node: '>= 0.4'} + + has-flag@4.0.0: + resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} + engines: {node: '>=8'} + + has-property-descriptors@1.0.2: + resolution: {integrity: sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==} + + has-proto@1.2.0: + resolution: {integrity: sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ==} + engines: {node: '>= 0.4'} + + has-symbols@1.1.0: + resolution: {integrity: sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==} + engines: {node: '>= 0.4'} + + has-tostringtag@1.0.2: + resolution: {integrity: sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==} + engines: {node: '>= 0.4'} + + hasown@2.0.2: + resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==} + engines: {node: '>= 0.4'} + + hast-util-from-dom@5.0.1: + resolution: {integrity: sha512-N+LqofjR2zuzTjCPzyDUdSshy4Ma6li7p/c3pA78uTwzFgENbgbUrm2ugwsOdcjI1muO+o6Dgzp9p8WHtn/39Q==} + + hast-util-from-html-isomorphic@2.0.0: + resolution: {integrity: sha512-zJfpXq44yff2hmE0XmwEOzdWin5xwH+QIhMLOScpX91e/NSGPsAzNCvLQDIEPyO2TXi+lBmU6hjLIhV8MwP2kw==} + + hast-util-from-html@2.0.3: + resolution: {integrity: sha512-CUSRHXyKjzHov8yKsQjGOElXy/3EKpyX56ELnkHH34vDVw1N1XSQ1ZcAvTyAPtGqLTuKP/uxM+aLkSPqF/EtMw==} + + hast-util-from-parse5@8.0.2: + resolution: {integrity: sha512-SfMzfdAi/zAoZ1KkFEyyeXBn7u/ShQrfd675ZEE9M3qj+PMFX05xubzRyF76CCSJu8au9jgVxDV1+okFvgZU4A==} + + hast-util-is-element@3.0.0: + resolution: {integrity: sha512-Val9mnv2IWpLbNPqc/pUem+a7Ipj2aHacCwgNfTiK0vJKl0LF+4Ba4+v1oPHFpf3bLYmreq0/l3Gud9S5OH42g==} + + hast-util-parse-selector@4.0.0: + resolution: {integrity: sha512-wkQCkSYoOGCRKERFWcxMVMOcYE2K1AaNLU8DXS9arxnLOUEWbOXKXiJUNzEpqZ3JOKpnha3jkFrumEjVliDe7A==} + + hast-util-raw@9.1.0: + resolution: {integrity: sha512-Y8/SBAHkZGoNkpzqqfCldijcuUKh7/su31kEBp67cFY09Wy0mTRgtsLYsiIxMJxlu0f6AA5SUTbDR8K0rxnbUw==} + + hast-util-to-estree@3.1.1: + resolution: {integrity: sha512-IWtwwmPskfSmma9RpzCappDUitC8t5jhAynHhc1m2+5trOgsrp7txscUSavc5Ic8PATyAjfrCK1wgtxh2cICVQ==} + + hast-util-to-html@9.0.4: + resolution: {integrity: sha512-wxQzXtdbhiwGAUKrnQJXlOPmHnEehzphwkK7aluUPQ+lEc1xefC8pblMgpp2w5ldBTEfveRIrADcrhGIWrlTDA==} + + hast-util-to-jsx-runtime@2.3.2: + resolution: {integrity: sha512-1ngXYb+V9UT5h+PxNRa1O1FYguZK/XL+gkeqvp7EdHlB9oHUG0eYRo/vY5inBdcqo3RkPMC58/H94HvkbfGdyg==} + + hast-util-to-parse5@8.0.0: + resolution: {integrity: sha512-3KKrV5ZVI8if87DVSi1vDeByYrkGzg4mEfeu4alwgmmIeARiBLKCZS2uw5Gb6nU9x9Yufyj3iudm6i7nl52PFw==} + + hast-util-to-string@3.0.1: + resolution: {integrity: sha512-XelQVTDWvqcl3axRfI0xSeoVKzyIFPwsAGSLIsKdJKQMXDYJS4WYrBNF/8J7RdhIcFI2BOHgAifggsvsxp/3+A==} + + hast-util-to-text@4.0.2: + resolution: {integrity: sha512-KK6y/BN8lbaq654j7JgBydev7wuNMcID54lkRav1P0CaE1e47P72AWWPiGKXTJU271ooYzcvTAn/Zt0REnvc7A==} + + hast-util-whitespace@3.0.0: + resolution: {integrity: sha512-88JUN06ipLwsnv+dVn+OIYOvAuvBMy/Qoi6O7mQHxdPXpjy+Cd6xRkWwux7DKO+4sYILtLBRIKgsdpS2gQc7qw==} + + hastscript@9.0.0: + resolution: {integrity: sha512-jzaLBGavEDKHrc5EfFImKN7nZKKBdSLIdGvCwDZ9TfzbF2ffXiov8CKE445L2Z1Ek2t/m4SKQ2j6Ipv7NyUolw==} + + help-me@5.0.0: + resolution: {integrity: sha512-7xgomUX6ADmcYzFik0HzAxh/73YlKR9bmFzf51CZwR+b6YtzU2m0u49hQCqV6SvlqIqsaxovfwdvbnsw3b/zpg==} + + html-void-elements@3.0.0: + resolution: {integrity: sha512-bEqo66MRXsUGxWHV5IP0PUiAWwoEjba4VCzg0LjFJBpchPaTfyfCKTG6bc5F8ucKec3q5y6qOdGyYTSBEvhCrg==} + + http-proxy-agent@7.0.2: + resolution: {integrity: sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==} + engines: {node: '>= 14'} + + https-proxy-agent@7.0.6: + resolution: {integrity: sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==} + engines: {node: '>= 14'} + + human-id@1.0.2: + resolution: {integrity: sha512-UNopramDEhHJD+VR+ehk8rOslwSfByxPIZyJRfV739NDhN5LF1fa1MqnzKm2lGTQRjNrjK19Q5fhkgIfjlVUKw==} + + human-signals@2.1.0: + resolution: {integrity: sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==} + engines: {node: '>=10.17.0'} + + human-signals@5.0.0: + resolution: {integrity: sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==} + engines: {node: '>=16.17.0'} + + iconv-lite@0.4.24: + resolution: {integrity: sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==} + engines: {node: '>=0.10.0'} + + iconv-lite@0.6.3: + resolution: {integrity: sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==} + engines: {node: '>=0.10.0'} + + ignore@5.3.2: + resolution: {integrity: sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==} + engines: {node: '>= 4'} + + import-fresh@3.3.1: + resolution: {integrity: sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==} + engines: {node: '>=6'} + + imurmurhash@0.1.4: + resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} + engines: {node: '>=0.8.19'} + + ini@1.3.8: + resolution: {integrity: sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==} + + inline-style-parser@0.2.4: + resolution: {integrity: sha512-0aO8FkhNZlj/ZIbNi7Lxxr12obT7cL1moPfE4tg1LkX7LlLfC6DeX4l2ZEud1ukP9jNQyNnfzQVqwbwmAATY4Q==} + + internal-slot@1.1.0: + resolution: {integrity: sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==} + engines: {node: '>= 0.4'} + + internmap@1.0.1: + resolution: {integrity: sha512-lDB5YccMydFBtasVtxnZ3MRBHuaoE8GKsppq+EchKL2U4nK/DmEpPHNH8MZe5HkMtpSiTSOZwfN0tzYjO/lJEw==} + + internmap@2.0.3: + resolution: {integrity: sha512-5Hh7Y1wQbvY5ooGgPbDaL5iYLAPzMTUrjMulskHLH6wnv/A+1q5rgEaiuqEjB+oxGXIVZs1FF+R/KPN3ZSQYYg==} + engines: {node: '>=12'} + + ip-address@9.0.5: + resolution: {integrity: sha512-zHtQzGojZXTwZTHQqra+ETKd4Sn3vgi7uBmlPoXVWZqYvuKmtI0l/VZTjqGmJY9x88GGOaZ9+G9ES8hC4T4X8g==} + engines: {node: '>= 12'} + + ipaddr.js@2.2.0: + resolution: {integrity: sha512-Ag3wB2o37wslZS19hZqorUnrnzSkpOVy+IiiDEiTqNubEYpYuHWIf6K4psgN2ZWKExS4xhVCrRVfb/wfW8fWJA==} + engines: {node: '>= 10'} + + is-alphabetical@2.0.1: + resolution: {integrity: sha512-FWyyY60MeTNyeSRpkM2Iry0G9hpr7/9kD40mD/cGQEuilcZYS4okz8SN2Q6rLCJ8gbCt6fN+rC+6tMGS99LaxQ==} + + is-alphanumerical@2.0.1: + resolution: {integrity: sha512-hmbYhX/9MUMF5uh7tOXyK/n0ZvWpad5caBA17GsC6vyuCqaWliRG5K1qS9inmUhEMaOBIW7/whAnSwveW/LtZw==} + + is-array-buffer@3.0.5: + resolution: {integrity: sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==} + engines: {node: '>= 0.4'} + + is-async-function@2.1.1: + resolution: {integrity: sha512-9dgM/cZBnNvjzaMYHVoxxfPj2QXt22Ev7SuuPrs+xav0ukGB0S6d4ydZdEiM48kLx5kDV+QBPrpVnFyefL8kkQ==} + engines: {node: '>= 0.4'} + + is-bigint@1.1.0: + resolution: {integrity: sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ==} + engines: {node: '>= 0.4'} + + is-binary-path@2.1.0: + resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} + engines: {node: '>=8'} + + is-boolean-object@1.2.2: + resolution: {integrity: sha512-wa56o2/ElJMYqjCjGkXri7it5FbebW5usLw/nPmCMs5DeZ7eziSYZhSmPRn0txqeW4LnAmQQU7FgqLpsEFKM4A==} + engines: {node: '>= 0.4'} + + is-callable@1.2.7: + resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==} + engines: {node: '>= 0.4'} + + is-core-module@2.16.1: + resolution: {integrity: sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==} + engines: {node: '>= 0.4'} + + is-data-view@1.0.2: + resolution: {integrity: sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw==} + engines: {node: '>= 0.4'} + + is-date-object@1.1.0: + resolution: {integrity: sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==} + engines: {node: '>= 0.4'} + + is-decimal@2.0.1: + resolution: {integrity: sha512-AAB9hiomQs5DXWcRB1rqsxGUstbRroFOPPVAomNk/3XHR5JyEZChOyTWe2oayKnsSsr/kcGqF+z6yuH6HHpN0A==} + + is-docker@2.2.1: + resolution: {integrity: sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==} + engines: {node: '>=8'} + hasBin: true + + is-docker@3.0.0: + resolution: {integrity: sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + hasBin: true + + is-extendable@0.1.1: + resolution: {integrity: sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==} + engines: {node: '>=0.10.0'} + + is-extglob@2.1.1: + resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} + engines: {node: '>=0.10.0'} + + is-finalizationregistry@1.1.1: + resolution: {integrity: sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg==} + engines: {node: '>= 0.4'} + + is-fullwidth-code-point@3.0.0: + resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} + engines: {node: '>=8'} + + is-generator-function@1.1.0: + resolution: {integrity: sha512-nPUB5km40q9e8UfN/Zc24eLlzdSf9OfKByBw9CIdw4H1giPMeA0OIJvbchsCu4npfI2QcMVBsGEBHKZ7wLTWmQ==} + engines: {node: '>= 0.4'} + + is-glob@4.0.3: + resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} + engines: {node: '>=0.10.0'} + + is-hexadecimal@2.0.1: + resolution: {integrity: sha512-DgZQp241c8oO6cA1SbTEWiXeoxV42vlcJxgH+B3hi1AiqqKruZR3ZGF8In3fj4+/y/7rHvlOZLZtgJ/4ttYGZg==} + + is-inside-container@1.0.0: + resolution: {integrity: sha512-KIYLCCJghfHZxqjYBE7rEy0OBuTd5xCHS7tHVgvCLkx7StIoaxwNW3hCALgEUjFfeRk+MG/Qxmp/vtETEF3tRA==} + engines: {node: '>=14.16'} + hasBin: true + + is-map@2.0.3: + resolution: {integrity: sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==} + engines: {node: '>= 0.4'} + + is-number-object@1.1.1: + resolution: {integrity: sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw==} + engines: {node: '>= 0.4'} + + is-number@7.0.0: + resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} + engines: {node: '>=0.12.0'} + + is-plain-obj@3.0.0: + resolution: {integrity: sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==} + engines: {node: '>=10'} + + is-plain-obj@4.1.0: + resolution: {integrity: sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==} + engines: {node: '>=12'} + + is-port-reachable@4.0.0: + resolution: {integrity: sha512-9UoipoxYmSk6Xy7QFgRv2HDyaysmgSG75TFQs6S+3pDM7ZhKTF/bskZV+0UlABHzKjNVhPjYCLfeZUEg1wXxig==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + + is-regex@1.2.1: + resolution: {integrity: sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==} + engines: {node: '>= 0.4'} + + is-set@2.0.3: + resolution: {integrity: sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==} + engines: {node: '>= 0.4'} + + is-shared-array-buffer@1.0.4: + resolution: {integrity: sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A==} + engines: {node: '>= 0.4'} + + is-stream@2.0.1: + resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==} + engines: {node: '>=8'} + + is-stream@3.0.0: + resolution: {integrity: sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + + is-string@1.1.1: + resolution: {integrity: sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA==} + engines: {node: '>= 0.4'} + + is-subdir@1.2.0: + resolution: {integrity: sha512-2AT6j+gXe/1ueqbW6fLZJiIw3F8iXGJtt0yDrZaBhAZEG1raiTxKWU+IPqMCzQAXOUCKdA4UDMgacKH25XG2Cw==} + engines: {node: '>=4'} + + is-symbol@1.1.1: + resolution: {integrity: sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w==} + engines: {node: '>= 0.4'} + + is-typed-array@1.1.15: + resolution: {integrity: sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==} + engines: {node: '>= 0.4'} + + is-weakmap@2.0.2: + resolution: {integrity: sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==} + engines: {node: '>= 0.4'} + + is-weakref@1.1.1: + resolution: {integrity: sha512-6i9mGWSlqzNMEqpCp93KwRS1uUOodk2OJ6b+sq7ZPDSy2WuI5NFIxp/254TytR8ftefexkWn5xNiHUNpPOfSew==} + engines: {node: '>= 0.4'} + + is-weakset@2.0.4: + resolution: {integrity: sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ==} + engines: {node: '>= 0.4'} + + is-windows@1.0.2: + resolution: {integrity: sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==} + engines: {node: '>=0.10.0'} + + is-wsl@2.2.0: + resolution: {integrity: sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==} + engines: {node: '>=8'} + + is-wsl@3.1.0: + resolution: {integrity: sha512-UcVfVfaK4Sc4m7X3dUSoHoozQGBEFeDC+zVo06t98xe8CzHSZZBekNXH+tu0NalHolcJ/QAGqS46Hef7QXBIMw==} + engines: {node: '>=16'} + + is64bit@2.0.0: + resolution: {integrity: sha512-jv+8jaWCl0g2lSBkNSVXdzfBA0npK1HGC2KtWM9FumFRoGS94g3NbCCLVnCYHLjp4GrW2KZeeSTMo5ddtznmGw==} + engines: {node: '>=18'} + + isarray@2.0.5: + resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==} + + isexe@2.0.0: + resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} + + iterator.prototype@1.1.5: + resolution: {integrity: sha512-H0dkQoCa3b2VEeKQBOxFph+JAbcrQdE7KC0UkqwpLmv2EC4P41QXP+rqo9wYodACiG5/WM5s9oDApTU8utwj9g==} + engines: {node: '>= 0.4'} + + jackspeak@3.4.3: + resolution: {integrity: sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==} + + joycon@3.1.1: + resolution: {integrity: sha512-34wB/Y7MW7bzjKRjUKTa46I2Z7eV62Rkhva+KkopW7Qvv/OSWBqvkSY7vusOPrNuZcUG3tApvdVgNB8POj3SPw==} + engines: {node: '>=10'} + + js-git@0.7.8: + resolution: {integrity: sha512-+E5ZH/HeRnoc/LW0AmAyhU+mNcWBzAKE+30+IDMLSLbbK+Tdt02AdkOKq9u15rlJsDEGFqtgckc8ZM59LhhiUA==} + + js-tokens@4.0.0: + resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} + + js-yaml@3.14.1: + resolution: {integrity: sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==} + hasBin: true + + js-yaml@4.1.0: + resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} + hasBin: true + + jsbn@1.1.0: + resolution: {integrity: sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A==} + + json-buffer@3.0.1: + resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==} + + json-schema-ref-resolver@2.0.1: + resolution: {integrity: sha512-HG0SIB9X4J8bwbxCbnd5FfPEbcXAJYTi1pBJeP/QPON+w8ovSME8iRG+ElHNxZNX2Qh6eYn1GdzJFS4cDFfx0Q==} + + json-schema-traverse@0.4.1: + resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} + + json-schema-traverse@1.0.0: + resolution: {integrity: sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==} + + json-stable-stringify-without-jsonify@1.0.1: + resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==} + + json-stringify-safe@5.0.1: + resolution: {integrity: sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==} + + jsonfile@4.0.0: + resolution: {integrity: sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==} + + jsx-ast-utils@3.3.5: + resolution: {integrity: sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==} + engines: {node: '>=4.0'} + + katex@0.16.21: + resolution: {integrity: sha512-XvqR7FgOHtWupfMiigNzmh+MgUVmDGU2kXZm899ZkPfcuoPuFxyHmXsgATDpFZDAXCI8tvinaVcDo8PIIJSo4A==} + hasBin: true + + keyv@4.5.4: + resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==} + + khroma@2.1.0: + resolution: {integrity: sha512-Ls993zuzfayK269Svk9hzpeGUKob/sIgZzyHYdjQoAdQetRKpOLj+k/QQQ/6Qi0Yz65mlROrfd+Ev+1+7dz9Kw==} + + kind-of@6.0.3: + resolution: {integrity: sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==} + engines: {node: '>=0.10.0'} + + kolorist@1.8.0: + resolution: {integrity: sha512-Y+60/zizpJ3HRH8DCss+q95yr6145JXZo46OTpFvDZWLfRCE4qChOyk1b26nMaNpfHHgxagk9dXT5OP0Tfe+dQ==} + + langium@3.0.0: + resolution: {integrity: sha512-+Ez9EoiByeoTu/2BXmEaZ06iPNXM6thWJp02KfBO/raSMyCJ4jw7AkWWa+zBCTm0+Tw1Fj9FOxdqSskyN5nAwg==} + engines: {node: '>=16.0.0'} + + layout-base@1.0.2: + resolution: {integrity: sha512-8h2oVEZNktL4BH2JCOI90iD1yXwL6iNW7KcCKT2QZgQJR2vbqDsldCTPRU9NifTCqHZci57XvQQ15YTu+sTYPg==} + + layout-base@2.0.1: + resolution: {integrity: sha512-dp3s92+uNI1hWIpPGH3jK2kxE2lMjdXdr+DH8ynZHpd6PUlH6x6cbuXnoMmiNumznqaNO31xu9e79F0uuZ0JFg==} + + lazy@1.0.11: + resolution: {integrity: sha512-Y+CjUfLmIpoUCCRl0ub4smrYtGGr5AOa2AKOaWelGHOGz33X/Y/KizefGqbkwfz44+cnq/+9habclf8vOmu2LA==} + engines: {node: '>=0.2.0'} + + levn@0.4.1: + resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} + engines: {node: '>= 0.8.0'} + + light-my-request@6.5.1: + resolution: {integrity: sha512-0q82RyxIextuDtkA0UDofhPHIiQ2kmpa7fwElCSlm/8nQl36cDU1Cw+CAO90Es0lReH2HChClKL84I86Nc52hg==} + + lilconfig@3.1.3: + resolution: {integrity: sha512-/vlFKAoH5Cgt3Ie+JLhRbwOsCQePABiU3tJ1egGvyQ+33R/vcwM2Zl2QR/LzjsBeItPt3oSVXapn+m4nQDvpzw==} + engines: {node: '>=14'} + + lines-and-columns@1.2.4: + resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} + + load-tsconfig@0.2.5: + resolution: {integrity: sha512-IXO6OCs9yg8tMKzfPZ1YmheJbZCiEsnBdcB03l0OcfK9prKnJb96siuHCr5Fl37/yo9DnKU+TLpxzTUspw9shg==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + + local-pkg@1.0.0: + resolution: {integrity: sha512-bbgPw/wmroJsil/GgL4qjDzs5YLTBMQ99weRsok1XCDccQeehbHA/I1oRvk2NPtr7KGZgT/Y5tPRnAtMqeG2Kg==} + engines: {node: '>=14'} + + locate-path@5.0.0: + resolution: {integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==} + engines: {node: '>=8'} + + locate-path@6.0.0: + resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} + engines: {node: '>=10'} + + lodash-es@4.17.21: + resolution: {integrity: sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==} + + lodash.merge@4.6.2: + resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} + + lodash.sortby@4.7.0: + resolution: {integrity: sha512-HDWXG8isMntAyRF5vZ7xKuEvOhT4AhlRt/3czTSjvGUxjYCBVRQY48ViDHyfYz9VIoBkW4TMGQNapx+l3RUwdA==} + + lodash.startcase@4.4.0: + resolution: {integrity: sha512-+WKqsK294HMSc2jEbNgpHpd0JfIBhp7rEV4aqXWqFr6AlXov+SlcgB1Fv01y2kGe3Gc8nMW7VA0SrGuSkRfIEg==} + + lodash@4.17.21: + resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} + + longest-streak@3.1.0: + resolution: {integrity: sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g==} + + loose-envify@1.4.0: + resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==} + hasBin: true + + lru-cache@10.4.3: + resolution: {integrity: sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==} + + lru-cache@6.0.0: + resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==} + engines: {node: '>=10'} + + lru-cache@7.18.3: + resolution: {integrity: sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==} + engines: {node: '>=12'} + + markdown-extensions@2.0.0: + resolution: {integrity: sha512-o5vL7aDWatOTX8LzaS1WMoaoxIiLRQJuIKKe2wAw6IeULDHaqbiqiggmx+pKvZDb1Sj+pE46Sn1T7lCqfFtg1Q==} + engines: {node: '>=16'} + + markdown-table@3.0.4: + resolution: {integrity: sha512-wiYz4+JrLyb/DqW2hkFJxP7Vd7JuTDm77fvbM8VfEQdmSMqcImWeeRbHwZjBjIFki/VaMK2BhFi7oUUZeM5bqw==} + + marked@13.0.3: + resolution: {integrity: sha512-rqRix3/TWzE9rIoFGIn8JmsVfhiuC8VIQ8IdX5TfzmeBucdY05/0UlzKaw0eVtpcN/OdVFpBk7CjKGo9iHJ/zA==} + engines: {node: '>= 18'} + hasBin: true + + math-intrinsics@1.1.0: + resolution: {integrity: sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==} + engines: {node: '>= 0.4'} + + mathjax-full@3.2.2: + resolution: {integrity: sha512-+LfG9Fik+OuI8SLwsiR02IVdjcnRCy5MufYLi0C3TdMT56L/pjB0alMVGgoWJF8pN9Rc7FESycZB9BMNWIid5w==} + + mdast-util-find-and-replace@3.0.2: + resolution: {integrity: sha512-Tmd1Vg/m3Xz43afeNxDIhWRtFZgM2VLyaf4vSTYwudTyeuTneoL3qtWMA5jeLyz/O1vDJmmV4QuScFCA2tBPwg==} + + mdast-util-from-markdown@2.0.2: + resolution: {integrity: sha512-uZhTV/8NBuw0WHkPTrCqDOl0zVe1BIng5ZtHoDk49ME1qqcjYmmLmOf0gELgcRMxN4w2iuIeVso5/6QymSrgmA==} + + mdast-util-frontmatter@2.0.1: + resolution: {integrity: sha512-LRqI9+wdgC25P0URIJY9vwocIzCcksduHQ9OF2joxQoyTNVduwLAFUzjoopuRJbJAReaKrNQKAZKL3uCMugWJA==} + + mdast-util-gfm-autolink-literal@2.0.1: + resolution: {integrity: sha512-5HVP2MKaP6L+G6YaxPNjuL0BPrq9orG3TsrZ9YXbA3vDw/ACI4MEsnoDpn6ZNm7GnZgtAcONJyPhOP8tNJQavQ==} + + mdast-util-gfm-footnote@2.0.0: + resolution: {integrity: sha512-5jOT2boTSVkMnQ7LTrd6n/18kqwjmuYqo7JUPe+tRCY6O7dAuTFMtTPauYYrMPpox9hlN0uOx/FL8XvEfG9/mQ==} + + mdast-util-gfm-strikethrough@2.0.0: + resolution: {integrity: sha512-mKKb915TF+OC5ptj5bJ7WFRPdYtuHv0yTRxK2tJvi+BDqbkiG7h7u/9SI89nRAYcmap2xHQL9D+QG/6wSrTtXg==} + + mdast-util-gfm-table@2.0.0: + resolution: {integrity: sha512-78UEvebzz/rJIxLvE7ZtDd/vIQ0RHv+3Mh5DR96p7cS7HsBhYIICDBCu8csTNWNO6tBWfqXPWekRuj2FNOGOZg==} + + mdast-util-gfm-task-list-item@2.0.0: + resolution: {integrity: sha512-IrtvNvjxC1o06taBAVJznEnkiHxLFTzgonUdy8hzFVeDun0uTjxxrRGVaNFqkU1wJR3RBPEfsxmU6jDWPofrTQ==} + + mdast-util-gfm@3.0.0: + resolution: {integrity: sha512-dgQEX5Amaq+DuUqf26jJqSK9qgixgd6rYDHAv4aTBuA92cTknZlKpPfa86Z/s8Dj8xsAQpFfBmPUHWJBWqS4Bw==} + + mdast-util-math@3.0.0: + resolution: {integrity: sha512-Tl9GBNeG/AhJnQM221bJR2HPvLOSnLE/T9cJI9tlc6zwQk2nPk/4f0cHkOdEixQPC/j8UtKDdITswvLAy1OZ1w==} + + mdast-util-mdx-expression@2.0.1: + resolution: {integrity: sha512-J6f+9hUp+ldTZqKRSg7Vw5V6MqjATc+3E4gf3CFNcuZNWD8XdyI6zQ8GqH7f8169MM6P7hMBRDVGnn7oHB9kXQ==} + + mdast-util-mdx-jsx@3.2.0: + resolution: {integrity: sha512-lj/z8v0r6ZtsN/cGNNtemmmfoLAFZnjMbNyLzBafjzikOM+glrjNHPlf6lQDOTccj9n5b0PPihEBbhneMyGs1Q==} + + mdast-util-mdx@3.0.0: + resolution: {integrity: sha512-JfbYLAW7XnYTTbUsmpu0kdBUVe+yKVJZBItEjwyYJiDJuZ9w4eeaqks4HQO+R7objWgS2ymV60GYpI14Ug554w==} + + mdast-util-mdxjs-esm@2.0.1: + resolution: {integrity: sha512-EcmOpxsZ96CvlP03NghtH1EsLtr0n9Tm4lPUJUBccV9RwUOneqSycg19n5HGzCf+10LozMRSObtVr3ee1WoHtg==} + + mdast-util-phrasing@4.1.0: + resolution: {integrity: sha512-TqICwyvJJpBwvGAMZjj4J2n0X8QWp21b9l0o7eXyVJ25YNWYbJDVIyD1bZXE6WtV6RmKJVYmQAKWa0zWOABz2w==} + + mdast-util-to-hast@13.2.0: + resolution: {integrity: sha512-QGYKEuUsYT9ykKBCMOEDLsU5JRObWQusAolFMeko/tYPufNkRffBAQjIE+99jbA87xv6FgmjLtwjh9wBWajwAA==} + + mdast-util-to-markdown@2.1.2: + resolution: {integrity: sha512-xj68wMTvGXVOKonmog6LwyJKrYXZPvlwabaryTjLh9LuvovB/KAH+kvi8Gjj+7rJjsFi23nkUxRQv1KqSroMqA==} + + mdast-util-to-string@4.0.0: + resolution: {integrity: sha512-0H44vDimn51F0YwvxSJSm0eCDOJTRlmN0R1yBh4HLj9wiV1Dn0QoXGbvFAWj2hSItVTlCmBF1hqKlIyUBVFLPg==} + + merge-stream@2.0.0: + resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==} + + merge2@1.4.1: + resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} + engines: {node: '>= 8'} + + mermaid@11.4.1: + resolution: {integrity: sha512-Mb01JT/x6CKDWaxigwfZYuYmDZ6xtrNwNlidKZwkSrDaY9n90tdrJTV5Umk+wP1fZscGptmKFXHsXMDEVZ+Q6A==} + + mhchemparser@4.2.1: + resolution: {integrity: sha512-kYmyrCirqJf3zZ9t/0wGgRZ4/ZJw//VwaRVGA75C4nhE60vtnIzhl9J9ndkX/h6hxSN7pjg/cE0VxbnNM+bnDQ==} + + micromark-core-commonmark@2.0.2: + resolution: {integrity: sha512-FKjQKbxd1cibWMM1P9N+H8TwlgGgSkWZMmfuVucLCHaYqeSvJ0hFeHsIa65pA2nYbes0f8LDHPMrd9X7Ujxg9w==} + + micromark-extension-frontmatter@2.0.0: + resolution: {integrity: sha512-C4AkuM3dA58cgZha7zVnuVxBhDsbttIMiytjgsM2XbHAB2faRVaHRle40558FBN+DJcrLNCoqG5mlrpdU4cRtg==} + + micromark-extension-gfm-autolink-literal@2.1.0: + resolution: {integrity: sha512-oOg7knzhicgQ3t4QCjCWgTmfNhvQbDDnJeVu9v81r7NltNCVmhPy1fJRX27pISafdjL+SVc4d3l48Gb6pbRypw==} + + micromark-extension-gfm-footnote@2.1.0: + resolution: {integrity: sha512-/yPhxI1ntnDNsiHtzLKYnE3vf9JZ6cAisqVDauhp4CEHxlb4uoOTxOCJ+9s51bIB8U1N1FJ1RXOKTIlD5B/gqw==} + + micromark-extension-gfm-strikethrough@2.1.0: + resolution: {integrity: sha512-ADVjpOOkjz1hhkZLlBiYA9cR2Anf8F4HqZUO6e5eDcPQd0Txw5fxLzzxnEkSkfnD0wziSGiv7sYhk/ktvbf1uw==} + + micromark-extension-gfm-table@2.1.1: + resolution: {integrity: sha512-t2OU/dXXioARrC6yWfJ4hqB7rct14e8f7m0cbI5hUmDyyIlwv5vEtooptH8INkbLzOatzKuVbQmAYcbWoyz6Dg==} + + micromark-extension-gfm-tagfilter@2.0.0: + resolution: {integrity: sha512-xHlTOmuCSotIA8TW1mDIM6X2O1SiX5P9IuDtqGonFhEK0qgRI4yeC6vMxEV2dgyr2TiD+2PQ10o+cOhdVAcwfg==} + + micromark-extension-gfm-task-list-item@2.1.0: + resolution: {integrity: sha512-qIBZhqxqI6fjLDYFTBIa4eivDMnP+OZqsNwmQ3xNLE4Cxwc+zfQEfbs6tzAo2Hjq+bh6q5F+Z8/cksrLFYWQQw==} + + micromark-extension-gfm@3.0.0: + resolution: {integrity: sha512-vsKArQsicm7t0z2GugkCKtZehqUm31oeGBV/KVSorWSy8ZlNAv7ytjFhvaryUiCUJYqs+NoE6AFhpQvBTM6Q4w==} + + micromark-extension-math@3.1.0: + resolution: {integrity: sha512-lvEqd+fHjATVs+2v/8kg9i5Q0AP2k85H0WUOwpIVvUML8BapsMvh1XAogmQjOCsLpoKRCVQqEkQBB3NhVBcsOg==} + + micromark-extension-mdx-expression@3.0.0: + resolution: {integrity: sha512-sI0nwhUDz97xyzqJAbHQhp5TfaxEvZZZ2JDqUo+7NvyIYG6BZ5CPPqj2ogUoPJlmXHBnyZUzISg9+oUmU6tUjQ==} + + micromark-extension-mdx-jsx@3.0.1: + resolution: {integrity: sha512-vNuFb9czP8QCtAQcEJn0UJQJZA8Dk6DXKBqx+bg/w0WGuSxDxNr7hErW89tHUY31dUW4NqEOWwmEUNhjTFmHkg==} + + micromark-extension-mdx-md@2.0.0: + resolution: {integrity: sha512-EpAiszsB3blw4Rpba7xTOUptcFeBFi+6PY8VnJ2hhimH+vCQDirWgsMpz7w1XcZE7LVrSAUGb9VJpG9ghlYvYQ==} + + micromark-extension-mdxjs-esm@3.0.0: + resolution: {integrity: sha512-DJFl4ZqkErRpq/dAPyeWp15tGrcrrJho1hKK5uBS70BCtfrIFg81sqcTVu3Ta+KD1Tk5vAtBNElWxtAa+m8K9A==} + + micromark-extension-mdxjs@3.0.0: + resolution: {integrity: sha512-A873fJfhnJ2siZyUrJ31l34Uqwy4xIFmvPY1oj+Ean5PHcPBYzEsvqvWGaWcfEIr11O5Dlw3p2y0tZWpKHDejQ==} + + micromark-factory-destination@2.0.1: + resolution: {integrity: sha512-Xe6rDdJlkmbFRExpTOmRj9N3MaWmbAgdpSrBQvCFqhezUn4AHqJHbaEnfbVYYiexVSs//tqOdY/DxhjdCiJnIA==} + + micromark-factory-label@2.0.1: + resolution: {integrity: sha512-VFMekyQExqIW7xIChcXn4ok29YE3rnuyveW3wZQWWqF4Nv9Wk5rgJ99KzPvHjkmPXF93FXIbBp6YdW3t71/7Vg==} + + micromark-factory-mdx-expression@2.0.2: + resolution: {integrity: sha512-5E5I2pFzJyg2CtemqAbcyCktpHXuJbABnsb32wX2U8IQKhhVFBqkcZR5LRm1WVoFqa4kTueZK4abep7wdo9nrw==} + + micromark-factory-space@2.0.1: + resolution: {integrity: sha512-zRkxjtBxxLd2Sc0d+fbnEunsTj46SWXgXciZmHq0kDYGnck/ZSGj9/wULTV95uoeYiK5hRXP2mJ98Uo4cq/LQg==} + + micromark-factory-title@2.0.1: + resolution: {integrity: sha512-5bZ+3CjhAd9eChYTHsjy6TGxpOFSKgKKJPJxr293jTbfry2KDoWkhBb6TcPVB4NmzaPhMs1Frm9AZH7OD4Cjzw==} + + micromark-factory-whitespace@2.0.1: + resolution: {integrity: sha512-Ob0nuZ3PKt/n0hORHyvoD9uZhr+Za8sFoP+OnMcnWK5lngSzALgQYKMr9RJVOWLqQYuyn6ulqGWSXdwf6F80lQ==} + + micromark-util-character@2.1.1: + resolution: {integrity: sha512-wv8tdUTJ3thSFFFJKtpYKOYiGP2+v96Hvk4Tu8KpCAsTMs6yi+nVmGh1syvSCsaxz45J6Jbw+9DD6g97+NV67Q==} + + micromark-util-chunked@2.0.1: + resolution: {integrity: sha512-QUNFEOPELfmvv+4xiNg2sRYeS/P84pTW0TCgP5zc9FpXetHY0ab7SxKyAQCNCc1eK0459uoLI1y5oO5Vc1dbhA==} + + micromark-util-classify-character@2.0.1: + resolution: {integrity: sha512-K0kHzM6afW/MbeWYWLjoHQv1sgg2Q9EccHEDzSkxiP/EaagNzCm7T/WMKZ3rjMbvIpvBiZgwR3dKMygtA4mG1Q==} + + micromark-util-combine-extensions@2.0.1: + resolution: {integrity: sha512-OnAnH8Ujmy59JcyZw8JSbK9cGpdVY44NKgSM7E9Eh7DiLS2E9RNQf0dONaGDzEG9yjEl5hcqeIsj4hfRkLH/Bg==} + + micromark-util-decode-numeric-character-reference@2.0.2: + resolution: {integrity: sha512-ccUbYk6CwVdkmCQMyr64dXz42EfHGkPQlBj5p7YVGzq8I7CtjXZJrubAYezf7Rp+bjPseiROqe7G6foFd+lEuw==} + + micromark-util-decode-string@2.0.1: + resolution: {integrity: sha512-nDV/77Fj6eH1ynwscYTOsbK7rR//Uj0bZXBwJZRfaLEJ1iGBR6kIfNmlNqaqJf649EP0F3NWNdeJi03elllNUQ==} + + micromark-util-encode@2.0.1: + resolution: {integrity: sha512-c3cVx2y4KqUnwopcO9b/SCdo2O67LwJJ/UyqGfbigahfegL9myoEFoDYZgkT7f36T0bLrM9hZTAaAyH+PCAXjw==} + + micromark-util-events-to-acorn@2.0.2: + resolution: {integrity: sha512-Fk+xmBrOv9QZnEDguL9OI9/NQQp6Hz4FuQ4YmCb/5V7+9eAh1s6AYSvL20kHkD67YIg7EpE54TiSlcsf3vyZgA==} + + micromark-util-html-tag-name@2.0.1: + resolution: {integrity: sha512-2cNEiYDhCWKI+Gs9T0Tiysk136SnR13hhO8yW6BGNyhOC4qYFnwF1nKfD3HFAIXA5c45RrIG1ub11GiXeYd1xA==} + + micromark-util-normalize-identifier@2.0.1: + resolution: {integrity: sha512-sxPqmo70LyARJs0w2UclACPUUEqltCkJ6PhKdMIDuJ3gSf/Q+/GIe3WKl0Ijb/GyH9lOpUkRAO2wp0GVkLvS9Q==} + + micromark-util-resolve-all@2.0.1: + resolution: {integrity: sha512-VdQyxFWFT2/FGJgwQnJYbe1jjQoNTS4RjglmSjTUlpUMa95Htx9NHeYW4rGDJzbjvCsl9eLjMQwGeElsqmzcHg==} + + micromark-util-sanitize-uri@2.0.1: + resolution: {integrity: sha512-9N9IomZ/YuGGZZmQec1MbgxtlgougxTodVwDzzEouPKo3qFWvymFHWcnDi2vzV1ff6kas9ucW+o3yzJK9YB1AQ==} + + micromark-util-subtokenize@2.0.4: + resolution: {integrity: sha512-N6hXjrin2GTJDe3MVjf5FuXpm12PGm80BrUAeub9XFXca8JZbP+oIwY4LJSVwFUCL1IPm/WwSVUN7goFHmSGGQ==} + + micromark-util-symbol@2.0.1: + resolution: {integrity: sha512-vs5t8Apaud9N28kgCrRUdEed4UJ+wWNvicHLPxCa9ENlYuAY31M0ETy5y1vA33YoNPDFTghEbnh6efaE8h4x0Q==} + + micromark-util-types@2.0.1: + resolution: {integrity: sha512-534m2WhVTddrcKVepwmVEVnUAmtrx9bfIjNoQHRqfnvdaHQiFytEhJoTgpWJvDEXCO5gLTQh3wYC1PgOJA4NSQ==} + + micromark@4.0.1: + resolution: {integrity: sha512-eBPdkcoCNvYcxQOAKAlceo5SNdzZWfF+FcSupREAzdAh9rRmE239CEQAiTwIgblwnoM8zzj35sZ5ZwvSEOF6Kw==} + + micromatch@4.0.8: + resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==} + engines: {node: '>=8.6'} + + mime-db@1.33.0: + resolution: {integrity: sha512-BHJ/EKruNIqJf/QahvxwQZXKygOQ256myeN/Ew+THcAa5q+PjyTTMMeNQC4DZw5AwfvelsUrA6B67NKMqXDbzQ==} + engines: {node: '>= 0.6'} + + mime-db@1.52.0: + resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==} + engines: {node: '>= 0.6'} + + mime-db@1.53.0: + resolution: {integrity: sha512-oHlN/w+3MQ3rba9rqFr6V/ypF10LSkdwUysQL7GkXoTgIWeV+tcXGA852TBxH+gsh8UWoyhR1hKcoMJTuWflpg==} + engines: {node: '>= 0.6'} + + mime-types@2.1.18: + resolution: {integrity: sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ==} + engines: {node: '>= 0.6'} + + mime-types@2.1.35: + resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==} + engines: {node: '>= 0.6'} + + mimic-fn@2.1.0: + resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==} + engines: {node: '>=6'} + + mimic-fn@4.0.0: + resolution: {integrity: sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==} + engines: {node: '>=12'} + + minimatch@3.1.2: + resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} + + minimatch@9.0.5: + resolution: {integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==} + engines: {node: '>=16 || 14 >=14.17'} + + minimist@1.2.8: + resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} + + minipass@7.1.2: + resolution: {integrity: sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==} + engines: {node: '>=16 || 14 >=14.17'} + + mj-context-menu@0.6.1: + resolution: {integrity: sha512-7NO5s6n10TIV96d4g2uDpG7ZDpIhMh0QNfGdJw/W47JswFcosz457wqz/b5sAKvl12sxINGFCn80NZHKwxQEXA==} + + mkdirp@1.0.4: + resolution: {integrity: sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==} + engines: {node: '>=10'} + hasBin: true + + mlly@1.7.4: + resolution: {integrity: sha512-qmdSIPC4bDJXgZTCR7XosJiNKySV7O215tsPtDN9iEO/7q/76b/ijtgRu/+epFXSJhijtTCCGp3DWS549P3xKw==} + + module-details-from-path@1.0.3: + resolution: {integrity: sha512-ySViT69/76t8VhE1xXHK6Ch4NcDd26gx0MzKXLO+F7NOtnqH68d9zF94nT8ZWSxXh8ELOERsnJO/sWt1xZYw5A==} + + mri@1.2.0: + resolution: {integrity: sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==} + engines: {node: '>=4'} + + ms@2.0.0: + resolution: {integrity: sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==} + + ms@2.1.3: + resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} + + mute-stream@0.0.8: + resolution: {integrity: sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==} + + mz@2.7.0: + resolution: {integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==} + + nanoid@3.3.8: + resolution: {integrity: sha512-WNLf5Sd8oZxOm+TzppcYk8gVOgP+l58xNy58D0nbUnOxOWRWvlcCV4kUF7ltmI6PsrLl/BgKEyS4mqsGChFN0w==} + engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} + hasBin: true + + natural-compare@1.4.0: + resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} + + needle@2.4.0: + resolution: {integrity: sha512-4Hnwzr3mi5L97hMYeNl8wRW/Onhy4nUKR/lVemJ8gJedxxUyBLm9kkrDColJvoSfwi0jCNhD+xCdOtiGDQiRZg==} + engines: {node: '>= 4.4.x'} + hasBin: true + + negotiator@0.6.3: + resolution: {integrity: sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==} + engines: {node: '>= 0.6'} + + negotiator@1.0.0: + resolution: {integrity: sha512-8Ofs/AUQh8MaEcrlq5xOX0CQ9ypTF5dl78mjlMNfOK08fzpgTHQRQPBxcPlEtIw0yRpws+Zo/3r+5WRby7u3Gg==} + engines: {node: '>= 0.6'} + + netmask@2.0.2: + resolution: {integrity: sha512-dBpDMdxv9Irdq66304OLfEmQ9tbNRFnFTuZiLo+bD+r332bBmMJ8GBLXklIXXgxd3+v9+KUnZaUR5PJMa75Gsg==} + engines: {node: '>= 0.4.0'} + + next-themes@0.4.4: + resolution: {integrity: sha512-LDQ2qIOJF0VnuVrrMSMLrWGjRMkq+0mpgl6e0juCLqdJ+oo8Q84JRWT6Wh11VDQKkMMe+dVzDKLWs5n87T+PkQ==} + peerDependencies: + react: ^16.8 || ^17 || ^18 || ^19 || ^19.0.0-rc + react-dom: ^16.8 || ^17 || ^18 || ^19 || ^19.0.0-rc + + next@14.2.15: + resolution: {integrity: sha512-h9ctmOokpoDphRvMGnwOJAedT6zKhwqyZML9mDtspgf4Rh3Pn7UTYKqePNoDvhsWBAO5GoPNYshnAUGIazVGmw==} + engines: {node: '>=18.17.0'} + hasBin: true + peerDependencies: + '@opentelemetry/api': ^1.1.0 + '@playwright/test': ^1.41.2 + react: ^18.2.0 + react-dom: ^18.2.0 + sass: ^1.3.0 + peerDependenciesMeta: + '@opentelemetry/api': + optional: true + '@playwright/test': + optional: true + sass: + optional: true + + nextra-theme-docs@3.2.4: + resolution: {integrity: sha512-3fg7zMHInuvSDURRJjh6UrbdqkK8uLs8RNriY38kVukWLvaVP2f6mmVJKIYqxVv6qAKWEzDLTr4dlJCY81eXuQ==} + peerDependencies: + next: '>=13' + nextra: 3.2.4 + react: '>=18' + react-dom: '>=18' + + nextra@3.2.4: + resolution: {integrity: sha512-xvQuPVtRoJTz4ynIbEkxYkEtviIX699lt4coij2IMmafYrBNaD0Ofj93jIz7VngYxyT9f4gWSiwqNgoIlnbsjQ==} + engines: {node: '>=18'} + peerDependencies: + next: '>=13' + react: '>=18' + react-dom: '>=18' + + nlcst-to-string@4.0.0: + resolution: {integrity: sha512-YKLBCcUYKAg0FNlOBT6aI91qFmSiFKiluk655WzPF+DDMA02qIyy8uiRqI8QXtcFpEvll12LpL5MXqEmAZ+dcA==} + + normalize-path@3.0.0: + resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} + engines: {node: '>=0.10.0'} + + npm-run-path@4.0.1: + resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==} + engines: {node: '>=8'} + + npm-run-path@5.3.0: + resolution: {integrity: sha512-ppwTtiJZq0O/ai0z7yfudtBpWIoxM8yE6nHi1X47eFR2EWORqfbu6CnPlNsjeN683eT0qG6H/Pyf9fCcvjnnnQ==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + + npm-to-yarn@3.0.1: + resolution: {integrity: sha512-tt6PvKu4WyzPwWUzy/hvPFqn+uwXO0K1ZHka8az3NnrhWJDmSqI8ncWq0fkL0k/lmmi5tAC11FXwXuh0rFbt1A==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + + nssocket@0.6.0: + resolution: {integrity: sha512-a9GSOIql5IqgWJR3F/JXG4KpJTA3Z53Cj0MeMvGpglytB1nxE4PdFNC0jINe27CS7cGivoynwc054EzCcT3M3w==} + engines: {node: '>= 0.10.x'} + + object-assign@4.1.1: + resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} + engines: {node: '>=0.10.0'} + + object-inspect@1.13.4: + resolution: {integrity: sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==} + engines: {node: '>= 0.4'} + + object-keys@1.1.1: + resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==} + engines: {node: '>= 0.4'} + + object.assign@4.1.7: + resolution: {integrity: sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw==} + engines: {node: '>= 0.4'} + + object.entries@1.1.8: + resolution: {integrity: sha512-cmopxi8VwRIAw/fkijJohSfpef5PdN0pMQJN6VC/ZKvn0LIknWD8KtgY6KlQdEc4tIjcQ3HxSMmnvtzIscdaYQ==} + engines: {node: '>= 0.4'} + + object.fromentries@2.0.8: + resolution: {integrity: sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==} + engines: {node: '>= 0.4'} + + object.values@1.2.1: + resolution: {integrity: sha512-gXah6aZrcUxjWg2zR2MwouP2eHlCBzdV4pygudehaKXSGW4v2AsRQUK+lwwXhii6KFZcunEnmSUoYp5CXibxtA==} + engines: {node: '>= 0.4'} + + on-exit-leak-free@2.1.2: + resolution: {integrity: sha512-0eJJY6hXLGf1udHwfNftBqH+g73EU4B504nZeKpz1sYRKafAghwxEJunB2O7rDZkL4PGfsMVnTXZ2EjibbqcsA==} + engines: {node: '>=14.0.0'} + + on-headers@1.0.2: + resolution: {integrity: sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==} + engines: {node: '>= 0.8'} + + once@1.4.0: + resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} + + onetime@5.1.2: + resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==} + engines: {node: '>=6'} + + onetime@6.0.0: + resolution: {integrity: sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==} + engines: {node: '>=12'} + + oniguruma-to-es@2.3.0: + resolution: {integrity: sha512-bwALDxriqfKGfUufKGGepCzu9x7nJQuoRoAFp4AnwehhC2crqrDIAP/uN2qdlsAvSMpeRC3+Yzhqc7hLmle5+g==} + + optionator@0.9.4: + resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==} + engines: {node: '>= 0.8.0'} + + os-tmpdir@1.0.2: + resolution: {integrity: sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==} + engines: {node: '>=0.10.0'} + + outdent@0.5.0: + resolution: {integrity: sha512-/jHxFIzoMXdqPzTaCpFzAAWhpkSjZPF4Vsn6jAfNpmbH/ymsmd7Qc6VE9BGn0L6YMj6uwpQLxCECpus4ukKS9Q==} + + own-keys@1.0.1: + resolution: {integrity: sha512-qFOyK5PjiWZd+QQIh+1jhdb9LpxTF0qs7Pm8o5QHYZ0M3vKqSqzsZaEB6oWlxZ+q2sJBMI/Ktgd2N5ZwQoRHfg==} + engines: {node: '>= 0.4'} + + p-filter@2.1.0: + resolution: {integrity: sha512-ZBxxZ5sL2HghephhpGAQdoskxplTwr7ICaehZwLIlfL6acuVgZPm8yBNuRAFBGEqtD/hmUeq9eqLg2ys9Xr/yw==} + engines: {node: '>=8'} + + p-limit@2.3.0: + resolution: {integrity: sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==} + engines: {node: '>=6'} + + p-limit@3.1.0: + resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} + engines: {node: '>=10'} + + p-limit@6.2.0: + resolution: {integrity: sha512-kuUqqHNUqoIWp/c467RI4X6mmyuojY5jGutNU0wVTmEOOfcuwLqyMVoAi9MKi2Ak+5i9+nhmrK4ufZE8069kHA==} + engines: {node: '>=18'} + + p-locate@4.1.0: + resolution: {integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==} + engines: {node: '>=8'} + + p-locate@5.0.0: + resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} + engines: {node: '>=10'} + + p-map@2.1.0: + resolution: {integrity: sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==} + engines: {node: '>=6'} + + p-try@2.2.0: + resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==} + engines: {node: '>=6'} + + pac-proxy-agent@7.1.0: + resolution: {integrity: sha512-Z5FnLVVZSnX7WjBg0mhDtydeRZ1xMcATZThjySQUHqr+0ksP8kqaw23fNKkaaN/Z8gwLUs/W7xdl0I75eP2Xyw==} + engines: {node: '>= 14'} + + pac-resolver@7.0.1: + resolution: {integrity: sha512-5NPgf87AT2STgwa2ntRMr45jTKrYBGkVU36yT0ig/n/GMAa3oPqhZfIQ2kMEimReg0+t9kZViDVZ83qfVUlckg==} + engines: {node: '>= 14'} + + package-json-from-dist@1.0.1: + resolution: {integrity: sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==} + + package-manager-detector@0.2.9: + resolution: {integrity: sha512-+vYvA/Y31l8Zk8dwxHhL3JfTuHPm6tlxM2A3GeQyl7ovYnSp1+mzAxClxaOr0qO1TtPxbQxetI7v5XqKLJZk7Q==} + + pako@0.2.9: + resolution: {integrity: sha512-NUcwaKxUxWrZLpDG+z/xZaCgQITkA/Dv4V/T6bw7VON6l1Xz/VnrBqrYjZQ12TamKHzITTfOEIYUj48y2KXImA==} + + parent-module@1.0.1: + resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} + engines: {node: '>=6'} + + parse-entities@4.0.2: + resolution: {integrity: sha512-GG2AQYWoLgL877gQIKeRPGO1xF9+eG1ujIb5soS5gPvLQ1y2o8FL90w2QWNdf9I361Mpp7726c+lj3U0qK1uGw==} + + parse-latin@7.0.0: + resolution: {integrity: sha512-mhHgobPPua5kZ98EF4HWiH167JWBfl4pvAIXXdbaVohtK7a6YBOy56kvhCqduqyo/f3yrHFWmqmiMg/BkBkYYQ==} + + parse-numeric-range@1.3.0: + resolution: {integrity: sha512-twN+njEipszzlMJd4ONUYgSfZPDxgHhT9Ahed5uTigpQn90FggW4SA/AIPq/6a149fTbE9qBEcSwE3FAEp6wQQ==} + + parse5@7.2.1: + resolution: {integrity: sha512-BuBYQYlv1ckiPdQi/ohiivi9Sagc9JG+Ozs0r7b/0iK3sKmrb0b9FdWdBbOdx6hBCM/F9Ir82ofnBhtZOjCRPQ==} + + path-data-parser@0.1.0: + resolution: {integrity: sha512-NOnmBpt5Y2RWbuv0LMzsayp3lVylAHLPUTut412ZA3l+C4uw4ZVkQbjShYCQ8TCpUMdPapr4YjUqLYD6v68j+w==} + + path-exists@4.0.0: + resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} + engines: {node: '>=8'} + + path-is-inside@1.0.2: + resolution: {integrity: sha512-DUWJr3+ULp4zXmol/SZkFf3JGsS9/SIv+Y3Rt93/UjPpDpklB5f1er4O3POIbUuUJ3FXgqte2Q7SrU6zAqwk8w==} + + path-key@3.1.1: + resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} + engines: {node: '>=8'} + + path-key@4.0.0: + resolution: {integrity: sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==} + engines: {node: '>=12'} + + path-parse@1.0.7: + resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} + + path-scurry@1.11.1: + resolution: {integrity: sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==} + engines: {node: '>=16 || 14 >=14.18'} + + path-to-regexp@3.3.0: + resolution: {integrity: sha512-qyCH421YQPS2WFDxDjftfc1ZR5WKQzVzqsp4n9M2kQhVOo/ByahFoUNJfl58kOcEGfQ//7weFTDhm+ss8Ecxgw==} + + path-type@4.0.0: + resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} + engines: {node: '>=8'} + + pathe@2.0.2: + resolution: {integrity: sha512-15Ztpk+nov8DR524R4BF7uEuzESgzUEAV4Ah7CUMNGXdE5ELuvxElxGXndBl32vMSsWa1jpNf22Z+Er3sKwq+w==} + + picocolors@1.1.1: + resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==} + + picomatch@2.3.1: + resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} + engines: {node: '>=8.6'} + + picomatch@4.0.2: + resolution: {integrity: sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==} + engines: {node: '>=12'} + + pidusage@2.0.21: + resolution: {integrity: sha512-cv3xAQos+pugVX+BfXpHsbyz/dLzX+lr44zNMsYiGxUw+kV5sgQCIcLd1z+0vq+KyC7dJ+/ts2PsfgWfSC3WXA==} + engines: {node: '>=8'} + + pidusage@3.0.2: + resolution: {integrity: sha512-g0VU+y08pKw5M8EZ2rIGiEBaB8wrQMjYGFfW2QVIfyT8V+fq8YFLkvlz4bz5ljvFDJYNFCWT3PWqcRr2FKO81w==} + engines: {node: '>=10'} + + pify@4.0.1: + resolution: {integrity: sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==} + engines: {node: '>=6'} + + pino-abstract-transport@2.0.0: + resolution: {integrity: sha512-F63x5tizV6WCh4R6RHyi2Ml+M70DNRXt/+HANowMflpgGFMAym/VKm6G7ZOQRjqN7XbGxK1Lg9t6ZrtzOaivMw==} + + pino-pretty@13.0.0: + resolution: {integrity: sha512-cQBBIVG3YajgoUjo1FdKVRX6t9XPxwB9lcNJVD5GCnNM4Y6T12YYx8c6zEejxQsU0wrg9TwmDulcE9LR7qcJqA==} + hasBin: true + + pino-std-serializers@7.0.0: + resolution: {integrity: sha512-e906FRY0+tV27iq4juKzSYPbUj2do2X2JX4EzSca1631EB2QJQUqGbDuERal7LCtOpxl6x3+nvo9NPZcmjkiFA==} + + pino@9.6.0: + resolution: {integrity: sha512-i85pKRCt4qMjZ1+L7sy2Ag4t1atFcdbEt76+7iRJn1g2BvsnRMGu9p8pivl9fs63M2kF/A0OacFZhTub+m/qMg==} + hasBin: true + + pirates@4.0.6: + resolution: {integrity: sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==} + engines: {node: '>= 6'} + + pkg-types@1.3.1: + resolution: {integrity: sha512-/Jm5M4RvtBFVkKWRu2BLUTNP8/M2a+UwuAX+ae4770q1qVGtfjG+WTCupoZixokjmHiry8uI+dlY8KXYV5HVVQ==} + + playwright-core@1.50.1: + resolution: {integrity: sha512-ra9fsNWayuYumt+NiM069M6OkcRb1FZSK8bgi66AtpFoWkg2+y0bJSNmkFrWhMbEBbVKC/EruAHH3g0zmtwGmQ==} + engines: {node: '>=18'} + hasBin: true + + playwright@1.50.1: + resolution: {integrity: sha512-G8rwsOQJ63XG6BbKj2w5rHeavFjy5zynBA9zsJMMtBoe/Uf757oG12NXz6e6OirF7RCrTVAKFXbLmn1RbL7Qaw==} + engines: {node: '>=18'} + hasBin: true + + pm2-axon-rpc@0.7.1: + resolution: {integrity: sha512-FbLvW60w+vEyvMjP/xom2UPhUN/2bVpdtLfKJeYM3gwzYhoTEEChCOICfFzxkxuoEleOlnpjie+n1nue91bDQw==} + engines: {node: '>=5'} + + pm2-axon@4.0.1: + resolution: {integrity: sha512-kES/PeSLS8orT8dR5jMlNl+Yu4Ty3nbvZRmaAtROuVm9nYYGiaoXqqKQqQYzWQzMYWUKHMQTvBlirjE5GIIxqg==} + engines: {node: '>=5'} + + pm2-deploy@1.0.2: + resolution: {integrity: sha512-YJx6RXKrVrWaphEYf++EdOOx9EH18vM8RSZN/P1Y+NokTKqYAca/ejXwVLyiEpNju4HPZEk3Y2uZouwMqUlcgg==} + engines: {node: '>=4.0.0'} + + pm2-multimeter@0.1.2: + resolution: {integrity: sha512-S+wT6XfyKfd7SJIBqRgOctGxaBzUOmVQzTAS+cg04TsEUObJVreha7lvCfX8zzGVr871XwCSnHUU7DQQ5xEsfA==} + + pm2-sysmonit@1.2.8: + resolution: {integrity: sha512-ACOhlONEXdCTVwKieBIQLSi2tQZ8eKinhcr9JpZSUAL8Qy0ajIgRtsLxG/lwPOW3JEKqPyw/UaHmTWhUzpP4kA==} + + pm2@5.4.3: + resolution: {integrity: sha512-4/I1htIHzZk1Y67UgOCo4F1cJtas1kSds31N8zN0PybO230id1nigyjGuGFzUnGmUFPmrJ0On22fO1ChFlp7VQ==} + engines: {node: '>=12.0.0'} + hasBin: true + + points-on-curve@0.2.0: + resolution: {integrity: sha512-0mYKnYYe9ZcqMCWhUjItv/oHjvgEsfKvnUTg8sAtnHr3GVy7rGkXCb6d5cSyqrWqL4k81b9CPg3urd+T7aop3A==} + + points-on-path@0.2.1: + resolution: {integrity: sha512-25ClnWWuw7JbWZcgqY/gJ4FQWadKxGWk+3kR/7kD0tCaDtPPMj7oHu2ToLaVhfpnHrZzYby2w6tUA0eOIuUg8g==} + + possible-typed-array-names@1.1.0: + resolution: {integrity: sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==} + engines: {node: '>= 0.4'} + + postcss-load-config@6.0.1: + resolution: {integrity: sha512-oPtTM4oerL+UXmx+93ytZVN82RrlY/wPUV8IeDxFrzIjXOLF1pN+EmKPLbubvKHT2HC20xXsCAH2Z+CKV6Oz/g==} + engines: {node: '>= 18'} + peerDependencies: + jiti: '>=1.21.0' + postcss: '>=8.0.9' + tsx: ^4.8.1 + yaml: ^2.4.2 + peerDependenciesMeta: + jiti: + optional: true + postcss: + optional: true + tsx: + optional: true + yaml: + optional: true + + postcss@8.4.31: + resolution: {integrity: sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==} + engines: {node: ^10 || ^12 || >=14} + + prelude-ls@1.2.1: + resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} + engines: {node: '>= 0.8.0'} + + prettier-plugin-packagejson@2.5.8: + resolution: {integrity: sha512-BaGOF63I0IJZoudxpuQe17naV93BRtK8b3byWktkJReKEMX9CC4qdGUzThPDVO/AUhPzlqDiAXbp18U6X8wLKA==} + peerDependencies: + prettier: '>= 1.16.0' + peerDependenciesMeta: + prettier: + optional: true + + prettier@2.8.8: + resolution: {integrity: sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==} + engines: {node: '>=10.13.0'} + hasBin: true + + prettier@3.4.2: + resolution: {integrity: sha512-e9MewbtFo+Fevyuxn/4rrcDAaq0IYxPGLvObpQjiZBMAzB9IGmzlnG9RZy3FFas+eBMu2vA0CszMeduow5dIuQ==} + engines: {node: '>=14'} + hasBin: true + + process-warning@4.0.1: + resolution: {integrity: sha512-3c2LzQ3rY9d0hc1emcsHhfT9Jwz0cChib/QN89oME2R451w5fy3f0afAhERFZAwrbDU43wk12d0ORBpDVME50Q==} + + promptly@2.2.0: + resolution: {integrity: sha512-aC9j+BZsRSSzEsXBNBwDnAxujdx19HycZoKgRgzWnS8eOHg1asuf9heuLprfbe739zY3IdUQx+Egv6Jn135WHA==} + + prop-types@15.8.1: + resolution: {integrity: sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==} + + property-information@6.5.0: + resolution: {integrity: sha512-PgTgs/BlvHxOu8QuEN7wi5A0OmXaBcHpmCSTehcs6Uuu9IkDIEo13Hy7n898RHfrQ49vKCoGeWZSaAK01nwVig==} + + proxy-agent@6.3.1: + resolution: {integrity: sha512-Rb5RVBy1iyqOtNl15Cw/llpeLH8bsb37gM1FUfKQ+Wck6xHlbAhWGUFiTRHtkjqGTA5pSHz6+0hrPW/oECihPQ==} + engines: {node: '>= 14'} + + proxy-from-env@1.1.0: + resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==} + + pump@3.0.2: + resolution: {integrity: sha512-tUPXtzlGM8FE3P0ZL6DVs/3P58k9nk8/jZeQCurTJylQA8qFYzHFfhBJkuqyE0FifOsQ0uKWekiZ5g8wtr28cw==} + + punycode@2.3.1: + resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} + engines: {node: '>=6'} + + queue-microtask@1.2.3: + resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} + + quick-format-unescaped@4.0.4: + resolution: {integrity: sha512-tYC1Q1hgyRuHgloV/YXs2w15unPVh8qfu/qCTfhTYamaw7fyhumKa2yGpdSo87vY32rIclj+4fWYQXUMs9EHvg==} + + range-parser@1.2.0: + resolution: {integrity: sha512-kA5WQoNVo4t9lNx2kQNFCxKeBl5IbbSNBl1M/tLkw9WCn+hxNBAW5Qh8gdhs63CJnhjJ2zQWFoqPJP2sK1AV5A==} + engines: {node: '>= 0.6'} + + rc@1.2.8: + resolution: {integrity: sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==} + hasBin: true + + react-dom@18.3.1: + resolution: {integrity: sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw==} + peerDependencies: + react: ^18.3.1 + + react-is@16.13.1: + resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==} + + react@18.3.1: + resolution: {integrity: sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==} + engines: {node: '>=0.10.0'} + + read-yaml-file@1.1.0: + resolution: {integrity: sha512-VIMnQi/Z4HT2Fxuwg5KrY174U1VdUIASQVWXXyqtNRtxSr9IYkn1rsI6Tb6HsrHCmB7gVpNwX6JxPTHcH6IoTA==} + engines: {node: '>=6'} + + read@1.0.7: + resolution: {integrity: sha512-rSOKNYUmaxy0om1BNjMN4ezNT6VKK+2xF4GBhc81mkH7L60i6dp8qPYrkndNLT3QPphoII3maL9PVC9XmhHwVQ==} + engines: {node: '>=0.8'} + + readdirp@3.6.0: + resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} + engines: {node: '>=8.10.0'} + + readdirp@4.1.1: + resolution: {integrity: sha512-h80JrZu/MHUZCyHu5ciuoI0+WxsCxzxJTILn6Fs8rxSnFPh+UVHYfeIxK1nVGugMqkfC4vJcBOYbkfkwYK0+gw==} + engines: {node: '>= 14.18.0'} + + reading-time@1.5.0: + resolution: {integrity: sha512-onYyVhBNr4CmAxFsKS7bz+uTLRakypIe4R+5A824vBSkQy/hB3fZepoVEf8OVAxzLvK+H/jm9TzpI3ETSm64Kg==} + + real-require@0.2.0: + resolution: {integrity: sha512-57frrGM/OCTLqLOAh0mhVA9VBMHd+9U7Zb2THMGdBUoZVOtGbJzjxsYGDJ3A9AYYCP4hn6y1TVbaOfzWtm5GFg==} + engines: {node: '>= 12.13.0'} + + recma-build-jsx@1.0.0: + resolution: {integrity: sha512-8GtdyqaBcDfva+GUKDr3nev3VpKAhup1+RvkMvUxURHpW7QyIvk9F5wz7Vzo06CEMSilw6uArgRqhpiUcWp8ew==} + + recma-jsx@1.0.0: + resolution: {integrity: sha512-5vwkv65qWwYxg+Atz95acp8DMu1JDSqdGkA2Of1j6rCreyFUE/gp15fC8MnGEuG1W68UKjM6x6+YTWIh7hZM/Q==} + + recma-parse@1.0.0: + resolution: {integrity: sha512-OYLsIGBB5Y5wjnSnQW6t3Xg7q3fQ7FWbw/vcXtORTnyaSFscOtABg+7Pnz6YZ6c27fG1/aN8CjfwoUEUIdwqWQ==} + + recma-stringify@1.0.0: + resolution: {integrity: sha512-cjwII1MdIIVloKvC9ErQ+OgAtwHBmcZ0Bg4ciz78FtbT8In39aAYbaA7zvxQ61xVMSPE8WxhLwLbhif4Js2C+g==} + + redis@4.7.0: + resolution: {integrity: sha512-zvmkHEAdGMn+hMRXuMBtu4Vo5P6rHQjLoHftu+lBqq8ZTA3RCVC/WzD790bkKKiNFp7d5/9PcSD19fJyyRvOdQ==} + + reflect.getprototypeof@1.0.10: + resolution: {integrity: sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw==} + engines: {node: '>= 0.4'} + + regenerator-runtime@0.14.1: + resolution: {integrity: sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==} + + regex-recursion@5.1.1: + resolution: {integrity: sha512-ae7SBCbzVNrIjgSbh7wMznPcQel1DNlDtzensnFxpiNpXt1U2ju/bHugH422r+4LAVS1FpW1YCwilmnNsjum9w==} + + regex-utilities@2.3.0: + resolution: {integrity: sha512-8VhliFJAWRaUiVvREIiW2NXXTmHs4vMNnSzuJVhscgmGav3g9VDxLrQndI3dZZVVdp0ZO/5v0xmX516/7M9cng==} + + regex@5.1.1: + resolution: {integrity: sha512-dN5I359AVGPnwzJm2jN1k0W9LPZ+ePvoOeVMMfqIMFz53sSwXkxaJoxr50ptnsC771lK95BnTrVSZxq0b9yCGw==} + + regexp.prototype.flags@1.5.4: + resolution: {integrity: sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==} + engines: {node: '>= 0.4'} + + registry-auth-token@3.3.2: + resolution: {integrity: sha512-JL39c60XlzCVgNrO+qq68FoNb56w/m7JYvGR2jT5iR1xBrUA3Mfx5Twk5rqTThPmQKMWydGmq8oFtDlxfrmxnQ==} + + registry-url@3.1.0: + resolution: {integrity: sha512-ZbgR5aZEdf4UKZVBPYIgaglBmSF2Hi94s2PcIHhRGFjKYu+chjJdYfHn4rt3hB6eCKLJ8giVIIfgMa1ehDfZKA==} + engines: {node: '>=0.10.0'} + + rehype-katex@7.0.1: + resolution: {integrity: sha512-OiM2wrZ/wuhKkigASodFoo8wimG3H12LWQaH8qSPVJn9apWKFSH3YOCtbKpBorTVw/eI7cuT21XBbvwEswbIOA==} + + rehype-parse@9.0.1: + resolution: {integrity: sha512-ksCzCD0Fgfh7trPDxr2rSylbwq9iYDkSn8TCDmEJ49ljEUBxDVCzCHv7QNzZOfODanX4+bWQ4WZqLCRWYLfhag==} + + rehype-pretty-code@0.14.0: + resolution: {integrity: sha512-hBeKF/Wkkf3zyUS8lal9RCUuhypDWLQc+h9UrP9Pav25FUm/AQAVh4m5gdvJxh4Oz+U+xKvdsV01p1LdvsZTiQ==} + engines: {node: '>=18'} + peerDependencies: + shiki: ^1.3.0 + + rehype-raw@7.0.0: + resolution: {integrity: sha512-/aE8hCfKlQeA8LmyeyQvQF3eBiLRGNlfBJEvWH7ivp9sBqs7TNqBL5X3v157rM4IFETqDnIOO+z5M/biZbo9Ww==} + + rehype-recma@1.0.0: + resolution: {integrity: sha512-lqA4rGUf1JmacCNWWZx0Wv1dHqMwxzsDWYMTowuplHF3xH0N/MmrZ/G3BDZnzAkRmxDadujCjaKM2hqYdCBOGw==} + + remark-frontmatter@5.0.0: + resolution: {integrity: sha512-XTFYvNASMe5iPN0719nPrdItC9aU0ssC4v14mH1BCi1u0n1gAocqcujWUrByftZTbLhRtiKRyjYTSIOcr69UVQ==} + + remark-gfm@4.0.0: + resolution: {integrity: sha512-U92vJgBPkbw4Zfu/IiW2oTZLSL3Zpv+uI7My2eq8JxKgqraFdU8YUGicEJCEgSbeaG+QDFqIcwwfMTOEelPxuA==} + + remark-math@6.0.0: + resolution: {integrity: sha512-MMqgnP74Igy+S3WwnhQ7kqGlEerTETXMvJhrUzDikVZ2/uogJCb+WHUg97hK9/jcfc0dkD73s3LN8zU49cTEtA==} + + remark-mdx@3.1.0: + resolution: {integrity: sha512-Ngl/H3YXyBV9RcRNdlYsZujAmhsxwzxpDzpDEhFBVAGthS4GDgnctpDjgFl/ULx5UEDzqtW1cyBSNKqYYrqLBA==} + + remark-parse@11.0.0: + resolution: {integrity: sha512-FCxlKLNGknS5ba/1lmpYijMUzX2esxW5xQqjWxw2eHFfS2MSdaHVINFmhjo+qN1WhZhNimq0dZATN9pH0IDrpA==} + + remark-reading-time@2.0.1: + resolution: {integrity: sha512-fy4BKy9SRhtYbEHvp6AItbRTnrhiDGbqLQTSYVbQPGuRCncU1ubSsh9p/W5QZSxtYcUXv8KGL0xBgPLyNJA1xw==} + + remark-rehype@11.1.1: + resolution: {integrity: sha512-g/osARvjkBXb6Wo0XvAeXQohVta8i84ACbenPpoSsxTOQH/Ae0/RGP4WZgnMH5pMLpsj4FG7OHmcIcXxpza8eQ==} + + remark-smartypants@3.0.2: + resolution: {integrity: sha512-ILTWeOriIluwEvPjv67v7Blgrcx+LZOkAUVtKI3putuhlZm84FnqDORNXPPm+HY3NdZOMhyDwZ1E+eZB/Df5dA==} + engines: {node: '>=16.0.0'} + + remark-stringify@11.0.0: + resolution: {integrity: sha512-1OSmLd3awB/t8qdoEOMazZkNsfVTeY4fTsgzcQFdXNq8ToTN4ZGwrMnlda4K6smTFKD+GRV6O48i6Z4iKgPPpw==} + + require-from-string@2.0.2: + resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==} + engines: {node: '>=0.10.0'} + + require-in-the-middle@5.2.0: + resolution: {integrity: sha512-efCx3b+0Z69/LGJmm9Yvi4cqEdxnoGnxYxGxBghkkTTFeXRtTCmmhO0AnAfHz59k957uTSuy8WaHqOs8wbYUWg==} + engines: {node: '>=6'} + + resolve-from@4.0.0: + resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} + engines: {node: '>=4'} + + resolve-from@5.0.0: + resolution: {integrity: sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==} + engines: {node: '>=8'} + + resolve-pkg-maps@1.0.0: + resolution: {integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==} + + resolve@1.22.10: + resolution: {integrity: sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w==} + engines: {node: '>= 0.4'} + hasBin: true + + resolve@2.0.0-next.5: + resolution: {integrity: sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==} + hasBin: true + + ret@0.5.0: + resolution: {integrity: sha512-I1XxrZSQ+oErkRR4jYbAyEEu2I0avBvvMM5JN+6EBprOGRCs63ENqZ3vjavq8fBw2+62G5LF5XelKwuJpcvcxw==} + engines: {node: '>=10'} + + retext-latin@4.0.0: + resolution: {integrity: sha512-hv9woG7Fy0M9IlRQloq/N6atV82NxLGveq+3H2WOi79dtIYWN8OaxogDm77f8YnVXJL2VD3bbqowu5E3EMhBYA==} + + retext-smartypants@6.2.0: + resolution: {integrity: sha512-kk0jOU7+zGv//kfjXEBjdIryL1Acl4i9XNkHxtM7Tm5lFiCog576fjNC9hjoR7LTKQ0DsPWy09JummSsH1uqfQ==} + + retext-stringify@4.0.0: + resolution: {integrity: sha512-rtfN/0o8kL1e+78+uxPTqu1Klt0yPzKuQ2BfWwwfgIUSayyzxpM1PJzkKt4V8803uB9qSy32MvI7Xep9khTpiA==} + + retext@9.0.0: + resolution: {integrity: sha512-sbMDcpHCNjvlheSgMfEcVrZko3cDzdbe1x/e7G66dFp0Ff7Mldvi2uv6JkJQzdRcvLYE8CA8Oe8siQx8ZOgTcA==} + + reusify@1.0.4: + resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} + engines: {iojs: '>=1.0.0', node: '>=0.10.0'} + + rfdc@1.4.1: + resolution: {integrity: sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==} + + robust-predicates@3.0.2: + resolution: {integrity: sha512-IXgzBWvWQwE6PrDI05OvmXUIruQTcoMDzRsOd5CDvHCVLcLHMTSYvOK5Cm46kWqlV3yAbuSpBZdJ5oP5OUoStg==} + + rollup@4.34.6: + resolution: {integrity: sha512-wc2cBWqJgkU3Iz5oztRkQbfVkbxoz5EhnCGOrnJvnLnQ7O0WhQUYyv18qQI79O8L7DdHrrlJNeCHd4VGpnaXKQ==} + engines: {node: '>=18.0.0', npm: '>=8.0.0'} + hasBin: true + + roughjs@4.6.6: + resolution: {integrity: sha512-ZUz/69+SYpFN/g/lUlo2FXcIjRkSu3nDarreVdGGndHEBJ6cXPdKguS8JGxwj5HA5xIbVKSmLgr5b3AWxtRfvQ==} + + run-parallel@1.2.0: + resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} + + run-series@1.1.9: + resolution: {integrity: sha512-Arc4hUN896vjkqCYrUXquBFtRZdv1PfLbTYP71efP6butxyQ0kWpiNJyAgsxscmQg1cqvHY32/UCBzXedTpU2g==} + + rw@1.3.3: + resolution: {integrity: sha512-PdhdWy89SiZogBLaw42zdeqtRJ//zFd2PgQavcICDUgJT5oW10QCRKbJ6bg4r0/UY2M6BWd5tkxuGFRvCkgfHQ==} + + safe-array-concat@1.1.3: + resolution: {integrity: sha512-AURm5f0jYEOydBj7VQlVvDrjeFgthDdEF5H1dP+6mNpoXOMo1quQqJ4wvJDyRZ9+pO3kGWoOdmV08cSv2aJV6Q==} + engines: {node: '>=0.4'} + + safe-buffer@5.1.2: + resolution: {integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==} + + safe-buffer@5.2.1: + resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==} + + safe-push-apply@1.0.0: + resolution: {integrity: sha512-iKE9w/Z7xCzUMIZqdBsp6pEQvwuEebH4vdpjcDWnyzaI6yl6O9FHvVpmGelvEHNsoY6wGblkxR6Zty/h00WiSA==} + engines: {node: '>= 0.4'} + + safe-regex-test@1.1.0: + resolution: {integrity: sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==} + engines: {node: '>= 0.4'} + + safe-regex2@4.0.1: + resolution: {integrity: sha512-goqsB+bSlOmVX+CiFX2PFc1OV88j5jvBqIM+DgqrucHnUguAUNtiNOs+aTadq2NqsLQ+TQ3UEVG3gtSFcdlkCg==} + + safe-stable-stringify@2.5.0: + resolution: {integrity: sha512-b3rppTKm9T+PsVCBEOUR46GWI7fdOs00VKZ1+9c1EWDaDMvjQc6tUwuFyIprgGgTcWoVHSKrU8H31ZHA2e0RHA==} + engines: {node: '>=10'} + + safer-buffer@2.1.2: + resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} + + sax@1.4.1: + resolution: {integrity: sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg==} + + scheduler@0.23.2: + resolution: {integrity: sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==} + + scroll-into-view-if-needed@3.1.0: + resolution: {integrity: sha512-49oNpRjWRvnU8NyGVmUaYG4jtTkNonFZI86MmGRDqBphEK2EXT9gdEUoQPZhuBM8yWHxCWbobltqYO5M4XrUvQ==} + + section-matter@1.0.0: + resolution: {integrity: sha512-vfD3pmTzGpufjScBh50YHKzEu2lxBWhVEHsNGoEXmCmn2hKGfeNLYMzCJpe8cD7gqX7TJluOVpBkAequ6dgMmA==} + engines: {node: '>=4'} + + secure-json-parse@2.7.0: + resolution: {integrity: sha512-6aU+Rwsezw7VR8/nyvKTx8QpWH9FrcYiXXlqC4z5d5XQBDRqtbfsRjnwGyqbi3gddNtWHuEk9OANUotL26qKUw==} + + secure-json-parse@3.0.2: + resolution: {integrity: sha512-H6nS2o8bWfpFEV6U38sOSjS7bTbdgbCGU9wEM6W14P5H0QOsz94KCusifV44GpHDTu2nqZbuDNhTzu+mjDSw1w==} + + semver@6.3.1: + resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} + hasBin: true + + semver@7.5.4: + resolution: {integrity: sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==} + engines: {node: '>=10'} + hasBin: true + + semver@7.7.1: + resolution: {integrity: sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==} + engines: {node: '>=10'} + hasBin: true + + serve-handler@6.1.6: + resolution: {integrity: sha512-x5RL9Y2p5+Sh3D38Fh9i/iQ5ZK+e4xuXRd/pGbM4D13tgo/MGwbttUk8emytcr1YYzBYs+apnUngBDFYfpjPuQ==} + + serve@14.2.4: + resolution: {integrity: sha512-qy1S34PJ/fcY8gjVGszDB3EXiPSk5FKhUa7tQe0UPRddxRidc2V6cNHPNewbE1D7MAkgLuWEt3Vw56vYy73tzQ==} + engines: {node: '>= 14'} + hasBin: true + + set-cookie-parser@2.7.1: + resolution: {integrity: sha512-IOc8uWeOZgnb3ptbCURJWNjWUPcO3ZnTTdzsurqERrP6nPyv+paC55vJM0LpOlT2ne+Ix+9+CRG1MNLlyZ4GjQ==} + + set-function-length@1.2.2: + resolution: {integrity: sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==} + engines: {node: '>= 0.4'} + + set-function-name@2.0.2: + resolution: {integrity: sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==} + engines: {node: '>= 0.4'} + + set-proto@1.0.0: + resolution: {integrity: sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw==} + engines: {node: '>= 0.4'} + + shebang-command@2.0.0: + resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} + engines: {node: '>=8'} + + shebang-regex@3.0.0: + resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} + engines: {node: '>=8'} + + shiki@1.29.2: + resolution: {integrity: sha512-njXuliz/cP+67jU2hukkxCNuH1yUi4QfdZZY+sMr5PPrIyXSu5iTb/qYC4BiWWB0vZ+7TbdvYUCeL23zpwCfbg==} + + shimmer@1.2.1: + resolution: {integrity: sha512-sQTKC1Re/rM6XyFM6fIAGHRPVGvyXfgzIDvzoq608vM+jeyVD0Tu1E6Np0Kc2zAIFWIj963V2800iF/9LPieQw==} + + side-channel-list@1.0.0: + resolution: {integrity: sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==} + engines: {node: '>= 0.4'} + + side-channel-map@1.0.1: + resolution: {integrity: sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==} + engines: {node: '>= 0.4'} + + side-channel-weakmap@1.0.2: + resolution: {integrity: sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==} + engines: {node: '>= 0.4'} + + side-channel@1.1.0: + resolution: {integrity: sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==} + engines: {node: '>= 0.4'} + + signal-exit@3.0.7: + resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} + + signal-exit@4.1.0: + resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} + engines: {node: '>=14'} + + slash@3.0.0: + resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==} + engines: {node: '>=8'} + + slash@5.1.0: + resolution: {integrity: sha512-ZA6oR3T/pEyuqwMgAKT0/hAv8oAXckzbkmR0UkUosQ+Mc4RxGoJkRmwHgHufaenlyAgE1Mxgpdcrf75y6XcnDg==} + engines: {node: '>=14.16'} + + smart-buffer@4.2.0: + resolution: {integrity: sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==} + engines: {node: '>= 6.0.0', npm: '>= 3.0.0'} + + socks-proxy-agent@8.0.5: + resolution: {integrity: sha512-HehCEsotFqbPW9sJ8WVYB6UbmIMv7kUUORIF2Nncq4VQvBfNBLibW9YZR5dlYCSUhwcD628pRllm7n+E+YTzJw==} + engines: {node: '>= 14'} + + socks@2.8.3: + resolution: {integrity: sha512-l5x7VUUWbjVFbafGLxPWkYsHIhEvmF85tbIeFZWc8ZPtoMyybuEhL7Jye/ooC4/d48FgOjSJXgsF/AJPYCW8Zw==} + engines: {node: '>= 10.0.0', npm: '>= 3.0.0'} + + sonic-boom@4.2.0: + resolution: {integrity: sha512-INb7TM37/mAcsGmc9hyyI6+QR3rR1zVRu36B0NeGXKnOOLiZOfER5SA+N7X7k3yUYRzLWafduTDvJAfDswwEww==} + + sort-object-keys@1.1.3: + resolution: {integrity: sha512-855pvK+VkU7PaKYPc+Jjnmt4EzejQHyhhF33q31qG8x7maDzkeFhAAThdCYay11CISO+qAMwjOBP+fPZe0IPyg==} + + sort-package-json@2.14.0: + resolution: {integrity: sha512-xBRdmMjFB/KW3l51mP31dhlaiFmqkHLfWTfZAno8prb/wbDxwBPWFpxB16GZbiPbYr3wL41H8Kx22QIDWRe8WQ==} + hasBin: true + + source-map-js@1.2.1: + resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==} + engines: {node: '>=0.10.0'} + + source-map-support@0.5.21: + resolution: {integrity: sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==} + + source-map@0.6.1: + resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==} + engines: {node: '>=0.10.0'} + + source-map@0.7.4: + resolution: {integrity: sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==} + engines: {node: '>= 8'} + + source-map@0.8.0-beta.0: + resolution: {integrity: sha512-2ymg6oRBpebeZi9UUNsgQ89bhx01TcTkmNTGnNO88imTmbSgy4nfujrgVEFKWpMTEGA11EDkTt7mqObTPdigIA==} + engines: {node: '>= 8'} + + space-separated-tokens@2.0.2: + resolution: {integrity: sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==} + + spawndamnit@3.0.1: + resolution: {integrity: sha512-MmnduQUuHCoFckZoWnXsTg7JaiLBJrKFj9UI2MbRPGaJeVpsLcVBu6P/IGZovziM/YBsellCmsprgNA+w0CzVg==} + + speech-rule-engine@4.0.7: + resolution: {integrity: sha512-sJrL3/wHzNwJRLBdf6CjJWIlxC04iYKkyXvYSVsWVOiC2DSkHmxsqOhEeMsBA9XK+CHuNcsdkbFDnoUfAsmp9g==} + hasBin: true + + split2@4.2.0: + resolution: {integrity: sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg==} + engines: {node: '>= 10.x'} + + sprintf-js@1.0.3: + resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==} + + sprintf-js@1.1.2: + resolution: {integrity: sha512-VE0SOVEHCk7Qc8ulkWw3ntAzXuqf7S2lvwQaDLRnUeIEaKNQJzV6BwmLKhOqT61aGhfUMrXeaBk+oDGCzvhcug==} + + sprintf-js@1.1.3: + resolution: {integrity: sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA==} + + streamsearch@1.1.0: + resolution: {integrity: sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==} + engines: {node: '>=10.0.0'} + + string-width@4.2.3: + resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} + engines: {node: '>=8'} + + string-width@5.1.2: + resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==} + engines: {node: '>=12'} + + string.prototype.matchall@4.0.12: + resolution: {integrity: sha512-6CC9uyBL+/48dYizRf7H7VAYCMCNTBeM78x/VTUe9bFEaxBepPJDa1Ow99LqI/1yF7kuy7Q3cQsYMrcjGUcskA==} + engines: {node: '>= 0.4'} + + string.prototype.repeat@1.0.0: + resolution: {integrity: sha512-0u/TldDbKD8bFCQ/4f5+mNRrXwZ8hg2w7ZR8wa16e8z9XpePWl3eGEcUD0OXpEH/VJH/2G3gjUtR3ZOiBe2S/w==} + + string.prototype.trim@1.2.10: + resolution: {integrity: sha512-Rs66F0P/1kedk5lyYyH9uBzuiI/kNRmwJAR9quK6VOtIpZ2G+hMZd+HQbbv25MgCA6gEffoMZYxlTod4WcdrKA==} + engines: {node: '>= 0.4'} + + string.prototype.trimend@1.0.9: + resolution: {integrity: sha512-G7Ok5C6E/j4SGfyLCloXTrngQIQU3PWtXGst3yM7Bea9FRURf1S42ZHlZZtsNque2FN2PoUhfZXYLNWwEr4dLQ==} + engines: {node: '>= 0.4'} + + string.prototype.trimstart@1.0.8: + resolution: {integrity: sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==} + engines: {node: '>= 0.4'} + + stringify-entities@4.0.4: + resolution: {integrity: sha512-IwfBptatlO+QCJUo19AqvrPNqlVMpW9YEL2LIVY+Rpv2qsjCGxaDLNRgeGsQWJhfItebuJhsGSLjaBbNSQ+ieg==} + + strip-ansi@6.0.1: + resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} + engines: {node: '>=8'} + + strip-ansi@7.1.0: + resolution: {integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==} + engines: {node: '>=12'} + + strip-bom-string@1.0.0: + resolution: {integrity: sha512-uCC2VHvQRYu+lMh4My/sFNmF2klFymLX1wHJeXnbEJERpV/ZsVuonzerjfrGpIGF7LBVa1O7i9kjiWvJiFck8g==} + engines: {node: '>=0.10.0'} + + strip-bom@3.0.0: + resolution: {integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==} + engines: {node: '>=4'} + + strip-final-newline@2.0.0: + resolution: {integrity: sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==} + engines: {node: '>=6'} + + strip-final-newline@3.0.0: + resolution: {integrity: sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==} + engines: {node: '>=12'} + + strip-json-comments@2.0.1: + resolution: {integrity: sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==} + engines: {node: '>=0.10.0'} + + strip-json-comments@3.1.1: + resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} + engines: {node: '>=8'} + + style-to-object@1.0.8: + resolution: {integrity: sha512-xT47I/Eo0rwJmaXC4oilDGDWLohVhR6o/xAQcPQN8q6QBuZVL8qMYL85kLmST5cPjAorwvqIA4qXTRQoYHaL6g==} + + styled-jsx@5.1.1: + resolution: {integrity: sha512-pW7uC1l4mBZ8ugbiZrcIsiIvVx1UmTfw7UkC3Um2tmfUq9Bhk8IiyEIPl6F8agHgjzku6j0xQEZbfA5uSgSaCw==} + engines: {node: '>= 12.0.0'} + peerDependencies: + '@babel/core': '*' + babel-plugin-macros: '*' + react: '>= 16.8.0 || 17.x.x || ^18.0.0-0' + peerDependenciesMeta: + '@babel/core': + optional: true + babel-plugin-macros: + optional: true + + stylis@4.3.6: + resolution: {integrity: sha512-yQ3rwFWRfwNUY7H5vpU0wfdkNSnvnJinhF9830Swlaxl03zsOjCfmX0ugac+3LtK0lYSgwL/KXc8oYL3mG4YFQ==} + + sucrase@3.35.0: + resolution: {integrity: sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==} + engines: {node: '>=16 || 14 >=14.17'} + hasBin: true + + supports-color@7.2.0: + resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} + engines: {node: '>=8'} + + supports-preserve-symlinks-flag@1.0.0: + resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} + engines: {node: '>= 0.4'} + + synckit@0.9.2: + resolution: {integrity: sha512-vrozgXDQwYO72vHjUb/HnFbQx1exDjoKzqx23aXEg2a9VIg2TSFZ8FmeZpTjUCFMYw7mpX4BE2SFu8wI7asYsw==} + engines: {node: ^14.18.0 || >=16.0.0} + + system-architecture@0.1.0: + resolution: {integrity: sha512-ulAk51I9UVUyJgxlv9M6lFot2WP3e7t8Kz9+IS6D4rVba1tR9kON+Ey69f+1R4Q8cd45Lod6a4IcJIxnzGc/zA==} + engines: {node: '>=18'} + + systeminformation@5.25.11: + resolution: {integrity: sha512-jI01fn/t47rrLTQB0FTlMCC+5dYx8o0RRF+R4BPiUNsvg5OdY0s9DKMFmJGrx5SwMZQ4cag0Gl6v8oycso9b/g==} + engines: {node: '>=8.0.0'} + os: [darwin, linux, win32, freebsd, openbsd, netbsd, sunos, android] + hasBin: true + + tabbable@6.2.0: + resolution: {integrity: sha512-Cat63mxsVJlzYvN51JmVXIgNoUokrIaT2zLclCXjRd8boZ0004U4KCs/sToJ75C6sdlByWxpYnb5Boif1VSFew==} + + term-size@2.2.1: + resolution: {integrity: sha512-wK0Ri4fOGjv/XPy8SBHZChl8CM7uMc5VML7SqiQ0zG7+J5Vr+RMQDoHa2CNT6KHUnTGIXH34UDMkPzAUyapBZg==} + engines: {node: '>=8'} + + thenify-all@1.6.0: + resolution: {integrity: sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==} + engines: {node: '>=0.8'} + + thenify@3.3.1: + resolution: {integrity: sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==} + + thread-stream@3.1.0: + resolution: {integrity: sha512-OqyPZ9u96VohAyMfJykzmivOrY2wfMSf3C5TtFJVgN+Hm6aj+voFhlK+kZEIv2FBh1X6Xp3DlnCOfEQ3B2J86A==} + + tinyexec@0.3.2: + resolution: {integrity: sha512-KQQR9yN7R5+OSwaK0XQoj22pwHoTlgYqmUscPYoknOoWCWfj/5/ABTMRi69FrKU5ffPVh5QcFikpWJI/P1ocHA==} + + tinyglobby@0.2.10: + resolution: {integrity: sha512-Zc+8eJlFMvgatPZTl6A9L/yht8QqdmUNtURHaKZLmKBE12hNPSrqNkUp2cs3M/UKmNVVAMFQYSjYIVHDjW5zew==} + engines: {node: '>=12.0.0'} + + title@4.0.1: + resolution: {integrity: sha512-xRnPkJx9nvE5MF6LkB5e8QJjE2FW8269wTu/LQdf7zZqBgPly0QJPf/CWAo7srj5so4yXfoLEdCFgurlpi47zg==} + hasBin: true + + tmp@0.0.33: + resolution: {integrity: sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==} + engines: {node: '>=0.6.0'} + + to-regex-range@5.0.1: + resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} + engines: {node: '>=8.0'} + + toad-cache@3.7.0: + resolution: {integrity: sha512-/m8M+2BJUpoJdgAHoG+baCwBT+tf2VraSfkBgl0Y00qIWt41DJ8R5B8nsEw0I58YwF5IZH6z24/2TobDKnqSWw==} + engines: {node: '>=12'} + + tr46@1.0.1: + resolution: {integrity: sha512-dTpowEjclQ7Kgx5SdBkqRzVhERQXov8/l9Ft9dVM9fmg0W0KQSVaXX9T4i6twCPNtYiZM53lpSSUAwJbFPOHxA==} + + tree-kill@1.2.2: + resolution: {integrity: sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==} + hasBin: true + + trim-lines@3.0.1: + resolution: {integrity: sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg==} + + trough@2.2.0: + resolution: {integrity: sha512-tmMpK00BjZiUyVyvrBK7knerNgmgvcV/KLVyuma/SC+TQN167GrMRciANTz09+k3zW8L8t60jWO1GpfkZdjTaw==} + + ts-api-utils@2.0.1: + resolution: {integrity: sha512-dnlgjFSVetynI8nzgJ+qF62efpglpWRk8isUEWZGWlJYySCTD6aKvbUDu+zbPeDakk3bg5H4XpitHukgfL1m9w==} + engines: {node: '>=18.12'} + peerDependencies: + typescript: '>=4.8.4' + + ts-dedent@2.2.0: + resolution: {integrity: sha512-q5W7tVM71e2xjHZTlgfTDoPF/SmqKG5hddq9SzR49CH2hayqRKJtQ4mtRlSxKaJlR/+9rEM+mnBHf7I2/BQcpQ==} + engines: {node: '>=6.10'} + + ts-interface-checker@0.1.13: + resolution: {integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==} + + tslib@1.9.3: + resolution: {integrity: sha512-4krF8scpejhaOgqzBEcGM7yDIEfi0/8+8zDRZhNZZ2kjmHJ4hv3zCbQWxoJGz1iw5U0Jl0nma13xzHXcncMavQ==} + + tslib@2.8.1: + resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==} + + tsup@8.3.6: + resolution: {integrity: sha512-XkVtlDV/58S9Ye0JxUUTcrQk4S+EqlOHKzg6Roa62rdjL1nGWNUstG0xgI4vanHdfIpjP448J8vlN0oK6XOJ5g==} + engines: {node: '>=18'} + hasBin: true + peerDependencies: + '@microsoft/api-extractor': ^7.36.0 + '@swc/core': ^1 + postcss: ^8.4.12 + typescript: '>=4.5.0' + peerDependenciesMeta: + '@microsoft/api-extractor': + optional: true + '@swc/core': + optional: true + postcss: + optional: true + typescript: + optional: true + + tsx@4.19.2: + resolution: {integrity: sha512-pOUl6Vo2LUq/bSa8S5q7b91cgNSjctn9ugq/+Mvow99qW6x/UZYwzxy/3NmqoT66eHYfCVvFvACC58UBPFf28g==} + engines: {node: '>=18.0.0'} + hasBin: true + + turbo-darwin-64@2.4.0: + resolution: {integrity: sha512-kVMScnPUa3R4n7woNmkR15kOY0aUwCLJcUyH5UC59ggKqr5HIHwweKYK8N1pwBQso0LQF4I9i93hIzfJguCcwQ==} + cpu: [x64] + os: [darwin] + + turbo-darwin-arm64@2.4.0: + resolution: {integrity: sha512-8JObIpfun1guA7UlFR5jC/SOVm49lRscxMxfg5jZ5ABft79rhFC+ygN9AwAhGKv6W2DUhIh2xENkSgu4EDmUyg==} + cpu: [arm64] + os: [darwin] + + turbo-linux-64@2.4.0: + resolution: {integrity: sha512-xWDGGcRlBuGV7HXWAVuTY6vsQi4aZxGMAnuiuNDg8Ij1aHGohOM0RUsWMXjxz4vuJmjk9+/D6NQqHH3AJEXezg==} + cpu: [x64] + os: [linux] + + turbo-linux-arm64@2.4.0: + resolution: {integrity: sha512-c3En99xMguc/Pdtk/rZP53LnDdw0W6lgUc04he8r8F+UHYSNvgzHh0WGXXmCC6lGbBH72kPhhGx4bAwyvi7dug==} + cpu: [arm64] + os: [linux] + + turbo-windows-64@2.4.0: + resolution: {integrity: sha512-/gOORuOlyA8JDPzyA16CD3wvyRcuBFePa1URAnFUof9hXQmKxK0VvSDO79cYZFsJSchCKNJpckUS0gYxGsWwoA==} + cpu: [x64] + os: [win32] + + turbo-windows-arm64@2.4.0: + resolution: {integrity: sha512-/DJIdTFijEMM5LSiEpSfarDOMOlYqJV+EzmppqWtHqDsOLF4hbbIBH9sJR6OOp5dURAu5eURBYdmvBRz9Lo6TA==} + cpu: [arm64] + os: [win32] + + turbo@2.4.0: + resolution: {integrity: sha512-ah/yQp2oMif1X0u7fBJ4MLMygnkbKnW5O8SG6pJvloPCpHfFoZctkSVQiJ3VnvNTq71V2JJIdwmOeu1i34OQyg==} + hasBin: true + + tv4@1.3.0: + resolution: {integrity: sha512-afizzfpJgvPr+eDkREK4MxJ/+r8nEEHcmitwgnPUqpaP+FpwQyadnxNoSACbgc/b1LsZYtODGoPiFxQrgJgjvw==} + engines: {node: '>= 0.8.0'} + + twoslash-protocol@0.2.12: + resolution: {integrity: sha512-5qZLXVYfZ9ABdjqbvPc4RWMr7PrpPaaDSeaYY55vl/w1j6H6kzsWK/urAEIXlzYlyrFmyz1UbwIt+AA0ck+wbg==} + + twoslash@0.2.12: + resolution: {integrity: sha512-tEHPASMqi7kqwfJbkk7hc/4EhlrKCSLcur+TcvYki3vhIfaRMXnXjaYFgXpoZRbT6GdprD4tGuVBEmTpUgLBsw==} + peerDependencies: + typescript: '*' + + tx2@1.0.5: + resolution: {integrity: sha512-sJ24w0y03Md/bxzK4FU8J8JveYYUbSs2FViLJ2D/8bytSiyPRbuE3DyL/9UKYXTZlV3yXq0L8GLlhobTnekCVg==} + + type-check@0.4.0: + resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} + engines: {node: '>= 0.8.0'} + + type-fest@2.19.0: + resolution: {integrity: sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==} + engines: {node: '>=12.20'} + + typed-array-buffer@1.0.3: + resolution: {integrity: sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw==} + engines: {node: '>= 0.4'} + + typed-array-byte-length@1.0.3: + resolution: {integrity: sha512-BaXgOuIxz8n8pIq3e7Atg/7s+DpiYrxn4vdot3w9KbnBhcRQq6o3xemQdIfynqSeXeDrF32x+WvfzmOjPiY9lg==} + engines: {node: '>= 0.4'} + + typed-array-byte-offset@1.0.4: + resolution: {integrity: sha512-bTlAFB/FBYMcuX81gbL4OcpH5PmlFHqlCCpAl8AlEzMz5k53oNDvN8p1PNOWLEmI2x4orp3raOFB51tv9X+MFQ==} + engines: {node: '>= 0.4'} + + typed-array-length@1.0.7: + resolution: {integrity: sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg==} + engines: {node: '>= 0.4'} + + typescript-eslint@8.23.0: + resolution: {integrity: sha512-/LBRo3HrXr5LxmrdYSOCvoAMm7p2jNizNfbIpCgvG4HMsnoprRUOce/+8VJ9BDYWW68rqIENE/haVLWPeFZBVQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 + typescript: '>=4.8.4 <5.8.0' + + typescript@5.7.3: + resolution: {integrity: sha512-84MVSjMEHP+FQRPy3pX9sTVV/INIex71s9TL2Gm5FG/WG1SqXeKyZ0k7/blY/4FdOzI12CBy1vGc4og/eus0fw==} + engines: {node: '>=14.17'} + hasBin: true + + ufo@1.5.4: + resolution: {integrity: sha512-UsUk3byDzKd04EyoZ7U4DOlxQaD14JUKQl6/P7wiX4FNvUfm3XL246n9W5AmqwW5RSFJ27NAuM0iLscAOYUiGQ==} + + unbox-primitive@1.1.0: + resolution: {integrity: sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw==} + engines: {node: '>= 0.4'} + + undici-types@6.20.0: + resolution: {integrity: sha512-Ny6QZ2Nju20vw1SRHe3d9jVu6gJ+4e3+MMpqu7pqE5HT6WsTSlce++GQmK5UXS8mzV8DSYHrQH+Xrf2jVcuKNg==} + + unified@11.0.5: + resolution: {integrity: sha512-xKvGhPWw3k84Qjh8bI3ZeJjqnyadK+GEFtazSfZv/rKeTkTjOJho6mFqh2SM96iIcZokxiOpg78GazTSg8+KHA==} + + unist-util-find-after@5.0.0: + resolution: {integrity: sha512-amQa0Ep2m6hE2g72AugUItjbuM8X8cGQnFoHk0pGfrFeT9GZhzN5SW8nRsiGKK7Aif4CrACPENkA6P/Lw6fHGQ==} + + unist-util-is@5.2.1: + resolution: {integrity: sha512-u9njyyfEh43npf1M+yGKDGVPbY/JWEemg5nH05ncKPfi+kBbKBJoTdsogMu33uhytuLlv9y0O7GH7fEdwLdLQw==} + + unist-util-is@6.0.0: + resolution: {integrity: sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==} + + unist-util-modify-children@4.0.0: + resolution: {integrity: sha512-+tdN5fGNddvsQdIzUF3Xx82CU9sMM+fA0dLgR9vOmT0oPT2jH+P1nd5lSqfCfXAw+93NhcXNY2qqvTUtE4cQkw==} + + unist-util-position-from-estree@2.0.0: + resolution: {integrity: sha512-KaFVRjoqLyF6YXCbVLNad/eS4+OfPQQn2yOd7zF/h5T/CSL2v8NpN6a5TPvtbXthAGw5nG+PuTtq+DdIZr+cRQ==} + + unist-util-position@5.0.0: + resolution: {integrity: sha512-fucsC7HjXvkB5R3kTCO7kUjRdrS0BJt3M/FPxmHMBOm8JQi2BsHAHFsy27E0EolP8rp0NzXsJ+jNPyDWvOJZPA==} + + unist-util-remove-position@5.0.0: + resolution: {integrity: sha512-Hp5Kh3wLxv0PHj9m2yZhhLt58KzPtEYKQQ4yxfYFEO7EvHwzyDYnduhHnY1mDxoqr7VUwVuHXk9RXKIiYS1N8Q==} + + unist-util-remove@4.0.0: + resolution: {integrity: sha512-b4gokeGId57UVRX/eVKej5gXqGlc9+trkORhFJpu9raqZkZhU0zm8Doi05+HaiBsMEIJowL+2WtQ5ItjsngPXg==} + + unist-util-stringify-position@4.0.0: + resolution: {integrity: sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==} + + unist-util-visit-children@3.0.0: + resolution: {integrity: sha512-RgmdTfSBOg04sdPcpTSD1jzoNBjt9a80/ZCzp5cI9n1qPzLZWF9YdvWGN2zmTumP1HWhXKdUWexjy/Wy/lJ7tA==} + + unist-util-visit-parents@4.1.1: + resolution: {integrity: sha512-1xAFJXAKpnnJl8G7K5KgU7FY55y3GcLIXqkzUj5QF/QVP7biUm0K0O2oqVkYsdjzJKifYeWn9+o6piAK2hGSHw==} + + unist-util-visit-parents@6.0.1: + resolution: {integrity: sha512-L/PqWzfTP9lzzEa6CKs0k2nARxTdZduw3zyh8d2NVBnsyvHjSX4TWse388YrrQKbvI8w20fGjGlhgT96WwKykw==} + + unist-util-visit@3.1.0: + resolution: {integrity: sha512-Szoh+R/Ll68QWAyQyZZpQzZQm2UPbxibDvaY8Xc9SUtYgPsDzx5AWSk++UUt2hJuow8mvwR+rG+LQLw+KsuAKA==} + + unist-util-visit@5.0.0: + resolution: {integrity: sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==} + + universalify@0.1.2: + resolution: {integrity: sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==} + engines: {node: '>= 4.0.0'} + + update-check@1.5.4: + resolution: {integrity: sha512-5YHsflzHP4t1G+8WGPlvKbJEbAJGCgw+Em+dGR1KmBUbr1J36SJBqlHLjR7oob7sco5hWHGQVcr9B2poIVDDTQ==} + + uri-js@4.4.1: + resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} + + uuid@9.0.1: + resolution: {integrity: sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==} + hasBin: true + + vary@1.1.2: + resolution: {integrity: sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==} + engines: {node: '>= 0.8'} + + vfile-location@5.0.3: + resolution: {integrity: sha512-5yXvWDEgqeiYiBe1lbxYF7UMAIm/IcopxMHrMQDq3nvKcjPKIhZklUKL+AE7J7uApI4kwe2snsK+eI6UTj9EHg==} + + vfile-message@4.0.2: + resolution: {integrity: sha512-jRDZ1IMLttGj41KcZvlrYAaI3CfqpLpfpf+Mfig13viT6NKvRzWZ+lXz0Y5D60w6uJIBAOGq9mSHf0gktF0duw==} + + vfile@6.0.3: + resolution: {integrity: sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==} + + vizion@2.2.1: + resolution: {integrity: sha512-sfAcO2yeSU0CSPFI/DmZp3FsFE9T+8913nv1xWBOyzODv13fwkn6Vl7HqxGpkr9F608M+8SuFId3s+BlZqfXww==} + engines: {node: '>=4.0'} + + vscode-jsonrpc@8.2.0: + resolution: {integrity: sha512-C+r0eKJUIfiDIfwJhria30+TYWPtuHJXHtI7J0YlOmKAo7ogxP20T0zxB7HZQIFhIyvoBPwWskjxrvAtfjyZfA==} + engines: {node: '>=14.0.0'} + + vscode-languageserver-protocol@3.17.5: + resolution: {integrity: sha512-mb1bvRJN8SVznADSGWM9u/b07H7Ecg0I3OgXDuLdn307rl/J3A9YD6/eYOssqhecL27hK1IPZAsaqh00i/Jljg==} + + vscode-languageserver-textdocument@1.0.12: + resolution: {integrity: sha512-cxWNPesCnQCcMPeenjKKsOCKQZ/L6Tv19DTRIGuLWe32lyzWhihGVJ/rcckZXJxfdKCFvRLS3fpBIsV/ZGX4zA==} + + vscode-languageserver-types@3.17.5: + resolution: {integrity: sha512-Ld1VelNuX9pdF39h2Hgaeb5hEZM2Z3jUrrMgWQAu82jMtZp7p3vJT3BzToKtZI7NgQssZje5o0zryOrhQvzQAg==} + + vscode-languageserver@9.0.1: + resolution: {integrity: sha512-woByF3PDpkHFUreUa7Hos7+pUWdeWMXRd26+ZX2A8cFx6v/JPTtd4/uN0/jB6XQHYaOlHbio03NTHCqrgG5n7g==} + hasBin: true + + vscode-uri@3.0.8: + resolution: {integrity: sha512-AyFQ0EVmsOZOlAnxoFOGOq1SQDWAB7C6aqMGS23svWAllfOaxbuFvcT8D1i8z3Gyn8fraVeZNNmN6e9bxxXkKw==} + + web-namespaces@2.0.1: + resolution: {integrity: sha512-bKr1DkiNa2krS7qxNtdrtHAmzuYGFQLiQ13TsorsdT6ULTkPLKuu5+GsFpDlg6JFjUTwX2DyhMPG2be8uPrqsQ==} + + webidl-conversions@4.0.2: + resolution: {integrity: sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==} + + whatwg-url@7.1.0: + resolution: {integrity: sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg==} + + which-boxed-primitive@1.1.1: + resolution: {integrity: sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA==} + engines: {node: '>= 0.4'} + + which-builtin-type@1.2.1: + resolution: {integrity: sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q==} + engines: {node: '>= 0.4'} + + which-collection@1.0.2: + resolution: {integrity: sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==} + engines: {node: '>= 0.4'} + + which-typed-array@1.1.18: + resolution: {integrity: sha512-qEcY+KJYlWyLH9vNbsr6/5j59AXk5ni5aakf8ldzBvGde6Iz4sxZGkJyWSAueTG7QhOvNRYb1lDdFmL5Td0QKA==} + engines: {node: '>= 0.4'} + + which@2.0.2: + resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} + engines: {node: '>= 8'} + hasBin: true + + wicked-good-xpath@1.3.0: + resolution: {integrity: sha512-Gd9+TUn5nXdwj/hFsPVx5cuHHiF5Bwuc30jZ4+ronF1qHK5O7HD0sgmXWSEgwKquT3ClLoKPVbO6qGwVwLzvAw==} + + widest-line@4.0.1: + resolution: {integrity: sha512-o0cyEG0e8GPzT4iGHphIOh0cJOV8fivsXxddQasHPHfoZf1ZexrfeA21w2NaEN1RHE+fXlfISmOE8R9N3u3Qig==} + engines: {node: '>=12'} + + word-wrap@1.2.5: + resolution: {integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==} + engines: {node: '>=0.10.0'} + + wrap-ansi@7.0.0: + resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} + engines: {node: '>=10'} + + wrap-ansi@8.1.0: + resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==} + engines: {node: '>=12'} + + wrappy@1.0.2: + resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} + + ws@7.5.10: + resolution: {integrity: sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ==} + engines: {node: '>=8.3.0'} + peerDependencies: + bufferutil: ^4.0.1 + utf-8-validate: ^5.0.2 + peerDependenciesMeta: + bufferutil: + optional: true + utf-8-validate: + optional: true + + xmldom-sre@0.1.31: + resolution: {integrity: sha512-f9s+fUkX04BxQf+7mMWAp5zk61pciie+fFLC9hX9UVvCeJQfNHRHXpeo5MPcR0EUf57PYLdt+ZO4f3Ipk2oZUw==} + engines: {node: '>=0.1'} + + yallist@4.0.0: + resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} + + yaml@2.7.0: + resolution: {integrity: sha512-+hSoy/QHluxmC9kCIJyL/uyFmLmc+e5CFR5Wa+bpIhIj85LVb9ZH2nVnqrHoSvKogwODv0ClqZkmiSSaIH5LTA==} + engines: {node: '>= 14'} + hasBin: true + + yocto-queue@0.1.0: + resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} + engines: {node: '>=10'} + + yocto-queue@1.1.1: + resolution: {integrity: sha512-b4JR1PFR10y1mKjhHY9LaGo6tmrgjit7hxVIeAmyMw3jegXR4dhYqLaQF5zMXZxY7tLpMyJeLjr1C4rLmkVe8g==} + engines: {node: '>=12.20'} + + zod-validation-error@3.4.0: + resolution: {integrity: sha512-ZOPR9SVY6Pb2qqO5XHt+MkkTRxGXb4EVtnjc9JpXUOtUB1T9Ru7mZOT361AN3MsetVe7R0a1KZshJDZdgp9miQ==} + engines: {node: '>=18.0.0'} + peerDependencies: + zod: ^3.18.0 + + zod@3.24.1: + resolution: {integrity: sha512-muH7gBL9sI1nciMZV67X5fTKKBLtwpZ5VBp1vsOQzj1MhrBZ4wlVCm3gedKZWLp0Oyel8sIGfeiz54Su+OVT+A==} + + zwitch@2.0.4: + resolution: {integrity: sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==} + +snapshots: + + '@antfu/install-pkg@1.0.0': + dependencies: + package-manager-detector: 0.2.9 + tinyexec: 0.3.2 + + '@antfu/utils@8.1.0': {} + + '@babel/runtime@7.26.7': + dependencies: + regenerator-runtime: 0.14.1 + + '@biomejs/biome@1.9.4': + optionalDependencies: + '@biomejs/cli-darwin-arm64': 1.9.4 + '@biomejs/cli-darwin-x64': 1.9.4 + '@biomejs/cli-linux-arm64': 1.9.4 + '@biomejs/cli-linux-arm64-musl': 1.9.4 + '@biomejs/cli-linux-x64': 1.9.4 + '@biomejs/cli-linux-x64-musl': 1.9.4 + '@biomejs/cli-win32-arm64': 1.9.4 + '@biomejs/cli-win32-x64': 1.9.4 + + '@biomejs/cli-darwin-arm64@1.9.4': + optional: true + + '@biomejs/cli-darwin-x64@1.9.4': + optional: true + + '@biomejs/cli-linux-arm64-musl@1.9.4': + optional: true + + '@biomejs/cli-linux-arm64@1.9.4': + optional: true + + '@biomejs/cli-linux-x64-musl@1.9.4': + optional: true + + '@biomejs/cli-linux-x64@1.9.4': + optional: true + + '@biomejs/cli-win32-arm64@1.9.4': + optional: true + + '@biomejs/cli-win32-x64@1.9.4': + optional: true + + '@braintree/sanitize-url@7.1.1': {} + + '@changesets/apply-release-plan@7.0.8': + dependencies: + '@changesets/config': 3.0.5 + '@changesets/get-version-range-type': 0.4.0 + '@changesets/git': 3.0.2 + '@changesets/should-skip-package': 0.1.1 + '@changesets/types': 6.0.0 + '@manypkg/get-packages': 1.1.3 + detect-indent: 6.1.0 + fs-extra: 7.0.1 + lodash.startcase: 4.4.0 + outdent: 0.5.0 + prettier: 2.8.8 + resolve-from: 5.0.0 + semver: 7.7.1 + + '@changesets/assemble-release-plan@6.0.5': + dependencies: + '@changesets/errors': 0.2.0 + '@changesets/get-dependents-graph': 2.1.2 + '@changesets/should-skip-package': 0.1.1 + '@changesets/types': 6.0.0 + '@manypkg/get-packages': 1.1.3 + semver: 7.7.1 + + '@changesets/changelog-git@0.2.0': + dependencies: + '@changesets/types': 6.0.0 + + '@changesets/cli@2.27.12': + dependencies: + '@changesets/apply-release-plan': 7.0.8 + '@changesets/assemble-release-plan': 6.0.5 + '@changesets/changelog-git': 0.2.0 + '@changesets/config': 3.0.5 + '@changesets/errors': 0.2.0 + '@changesets/get-dependents-graph': 2.1.2 + '@changesets/get-release-plan': 4.0.6 + '@changesets/git': 3.0.2 + '@changesets/logger': 0.1.1 + '@changesets/pre': 2.0.1 + '@changesets/read': 0.6.2 + '@changesets/should-skip-package': 0.1.1 + '@changesets/types': 6.0.0 + '@changesets/write': 0.3.2 + '@manypkg/get-packages': 1.1.3 + ansi-colors: 4.1.3 + ci-info: 3.9.0 + enquirer: 2.4.1 + external-editor: 3.1.0 + fs-extra: 7.0.1 + mri: 1.2.0 + p-limit: 2.3.0 + package-manager-detector: 0.2.9 + picocolors: 1.1.1 + resolve-from: 5.0.0 + semver: 7.7.1 + spawndamnit: 3.0.1 + term-size: 2.2.1 + + '@changesets/config@3.0.5': + dependencies: + '@changesets/errors': 0.2.0 + '@changesets/get-dependents-graph': 2.1.2 + '@changesets/logger': 0.1.1 + '@changesets/types': 6.0.0 + '@manypkg/get-packages': 1.1.3 + fs-extra: 7.0.1 + micromatch: 4.0.8 + + '@changesets/errors@0.2.0': + dependencies: + extendable-error: 0.1.7 + + '@changesets/get-dependents-graph@2.1.2': + dependencies: + '@changesets/types': 6.0.0 + '@manypkg/get-packages': 1.1.3 + picocolors: 1.1.1 + semver: 7.7.1 + + '@changesets/get-release-plan@4.0.6': + dependencies: + '@changesets/assemble-release-plan': 6.0.5 + '@changesets/config': 3.0.5 + '@changesets/pre': 2.0.1 + '@changesets/read': 0.6.2 + '@changesets/types': 6.0.0 + '@manypkg/get-packages': 1.1.3 + + '@changesets/get-version-range-type@0.4.0': {} + + '@changesets/git@3.0.2': + dependencies: + '@changesets/errors': 0.2.0 + '@manypkg/get-packages': 1.1.3 + is-subdir: 1.2.0 + micromatch: 4.0.8 + spawndamnit: 3.0.1 + + '@changesets/logger@0.1.1': + dependencies: + picocolors: 1.1.1 + + '@changesets/parse@0.4.0': + dependencies: + '@changesets/types': 6.0.0 + js-yaml: 3.14.1 + + '@changesets/pre@2.0.1': + dependencies: + '@changesets/errors': 0.2.0 + '@changesets/types': 6.0.0 + '@manypkg/get-packages': 1.1.3 + fs-extra: 7.0.1 + + '@changesets/read@0.6.2': + dependencies: + '@changesets/git': 3.0.2 + '@changesets/logger': 0.1.1 + '@changesets/parse': 0.4.0 + '@changesets/types': 6.0.0 + fs-extra: 7.0.1 + p-filter: 2.1.0 + picocolors: 1.1.1 + + '@changesets/should-skip-package@0.1.1': + dependencies: + '@changesets/types': 6.0.0 + '@manypkg/get-packages': 1.1.3 + + '@changesets/types@4.1.0': {} + + '@changesets/types@6.0.0': {} + + '@changesets/write@0.3.2': + dependencies: + '@changesets/types': 6.0.0 + fs-extra: 7.0.1 + human-id: 1.0.2 + prettier: 2.8.8 + + '@chevrotain/cst-dts-gen@11.0.3': + dependencies: + '@chevrotain/gast': 11.0.3 + '@chevrotain/types': 11.0.3 + lodash-es: 4.17.21 + + '@chevrotain/gast@11.0.3': + dependencies: + '@chevrotain/types': 11.0.3 + lodash-es: 4.17.21 + + '@chevrotain/regexp-to-ast@11.0.3': {} + + '@chevrotain/types@11.0.3': {} + + '@chevrotain/utils@11.0.3': {} + + '@esbuild/aix-ppc64@0.23.1': + optional: true + + '@esbuild/aix-ppc64@0.24.2': + optional: true + + '@esbuild/android-arm64@0.23.1': + optional: true + + '@esbuild/android-arm64@0.24.2': + optional: true + + '@esbuild/android-arm@0.23.1': + optional: true + + '@esbuild/android-arm@0.24.2': + optional: true + + '@esbuild/android-x64@0.23.1': + optional: true + + '@esbuild/android-x64@0.24.2': + optional: true + + '@esbuild/darwin-arm64@0.23.1': + optional: true + + '@esbuild/darwin-arm64@0.24.2': + optional: true + + '@esbuild/darwin-x64@0.23.1': + optional: true + + '@esbuild/darwin-x64@0.24.2': + optional: true + + '@esbuild/freebsd-arm64@0.23.1': + optional: true + + '@esbuild/freebsd-arm64@0.24.2': + optional: true + + '@esbuild/freebsd-x64@0.23.1': + optional: true + + '@esbuild/freebsd-x64@0.24.2': + optional: true + + '@esbuild/linux-arm64@0.23.1': + optional: true + + '@esbuild/linux-arm64@0.24.2': + optional: true + + '@esbuild/linux-arm@0.23.1': + optional: true + + '@esbuild/linux-arm@0.24.2': + optional: true + + '@esbuild/linux-ia32@0.23.1': + optional: true + + '@esbuild/linux-ia32@0.24.2': + optional: true + + '@esbuild/linux-loong64@0.23.1': + optional: true + + '@esbuild/linux-loong64@0.24.2': + optional: true + + '@esbuild/linux-mips64el@0.23.1': + optional: true + + '@esbuild/linux-mips64el@0.24.2': + optional: true + + '@esbuild/linux-ppc64@0.23.1': + optional: true + + '@esbuild/linux-ppc64@0.24.2': + optional: true + + '@esbuild/linux-riscv64@0.23.1': + optional: true + + '@esbuild/linux-riscv64@0.24.2': + optional: true + + '@esbuild/linux-s390x@0.23.1': + optional: true + + '@esbuild/linux-s390x@0.24.2': + optional: true + + '@esbuild/linux-x64@0.23.1': + optional: true + + '@esbuild/linux-x64@0.24.2': + optional: true + + '@esbuild/netbsd-arm64@0.24.2': + optional: true + + '@esbuild/netbsd-x64@0.23.1': + optional: true + + '@esbuild/netbsd-x64@0.24.2': + optional: true + + '@esbuild/openbsd-arm64@0.23.1': + optional: true + + '@esbuild/openbsd-arm64@0.24.2': + optional: true + + '@esbuild/openbsd-x64@0.23.1': + optional: true + + '@esbuild/openbsd-x64@0.24.2': + optional: true + + '@esbuild/sunos-x64@0.23.1': + optional: true + + '@esbuild/sunos-x64@0.24.2': + optional: true + + '@esbuild/win32-arm64@0.23.1': + optional: true + + '@esbuild/win32-arm64@0.24.2': + optional: true + + '@esbuild/win32-ia32@0.23.1': + optional: true + + '@esbuild/win32-ia32@0.24.2': + optional: true + + '@esbuild/win32-x64@0.23.1': + optional: true + + '@esbuild/win32-x64@0.24.2': + optional: true + + '@eslint-community/eslint-utils@4.4.1(eslint@9.20.0)': + dependencies: + eslint: 9.20.0 + eslint-visitor-keys: 3.4.3 + + '@eslint-community/regexpp@4.12.1': {} + + '@eslint/config-array@0.19.2': + dependencies: + '@eslint/object-schema': 2.1.6 + debug: 4.4.0 + minimatch: 3.1.2 + transitivePeerDependencies: + - supports-color + + '@eslint/core@0.10.0': + dependencies: + '@types/json-schema': 7.0.15 + + '@eslint/core@0.11.0': + dependencies: + '@types/json-schema': 7.0.15 + + '@eslint/eslintrc@3.2.0': + dependencies: + ajv: 6.12.6 + debug: 4.4.0 + espree: 10.3.0 + globals: 14.0.0 + ignore: 5.3.2 + import-fresh: 3.3.1 + js-yaml: 4.1.0 + minimatch: 3.1.2 + strip-json-comments: 3.1.1 + transitivePeerDependencies: + - supports-color + + '@eslint/js@9.20.0': {} + + '@eslint/object-schema@2.1.6': {} + + '@eslint/plugin-kit@0.2.5': + dependencies: + '@eslint/core': 0.10.0 + levn: 0.4.1 + + '@fastify/ajv-compiler@4.0.2': + dependencies: + ajv: 8.17.1 + ajv-formats: 3.0.1(ajv@8.17.1) + fast-uri: 3.0.6 + + '@fastify/error@4.0.0': {} + + '@fastify/fast-json-stringify-compiler@5.0.2': + dependencies: + fast-json-stringify: 6.0.1 + + '@fastify/forwarded@3.0.0': {} + + '@fastify/merge-json-schemas@0.2.1': + dependencies: + dequal: 2.0.3 + + '@fastify/proxy-addr@5.0.0': + dependencies: + '@fastify/forwarded': 3.0.0 + ipaddr.js: 2.2.0 + + '@floating-ui/core@1.6.9': + dependencies: + '@floating-ui/utils': 0.2.9 + + '@floating-ui/dom@1.6.13': + dependencies: + '@floating-ui/core': 1.6.9 + '@floating-ui/utils': 0.2.9 + + '@floating-ui/react-dom@2.1.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@floating-ui/dom': 1.6.13 + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + + '@floating-ui/react@0.26.28(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@floating-ui/react-dom': 2.1.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@floating-ui/utils': 0.2.9 + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + tabbable: 6.2.0 + + '@floating-ui/utils@0.2.9': {} + + '@formatjs/intl-localematcher@0.5.10': + dependencies: + tslib: 2.8.1 + + '@headlessui/react@2.2.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@floating-ui/react': 0.26.28(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/focus': 3.19.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/interactions': 3.23.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@tanstack/react-virtual': 3.13.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + + '@humanfs/core@0.19.1': {} + + '@humanfs/node@0.16.6': + dependencies: + '@humanfs/core': 0.19.1 + '@humanwhocodes/retry': 0.3.1 + + '@humanwhocodes/module-importer@1.0.1': {} + + '@humanwhocodes/retry@0.3.1': {} + + '@humanwhocodes/retry@0.4.1': {} + + '@iconify/types@2.0.0': {} + + '@iconify/utils@2.3.0': + dependencies: + '@antfu/install-pkg': 1.0.0 + '@antfu/utils': 8.1.0 + '@iconify/types': 2.0.0 + debug: 4.4.0 + globals: 15.14.0 + kolorist: 1.8.0 + local-pkg: 1.0.0 + mlly: 1.7.4 + transitivePeerDependencies: + - supports-color + + '@isaacs/cliui@8.0.2': + dependencies: + string-width: 5.1.2 + string-width-cjs: string-width@4.2.3 + strip-ansi: 7.1.0 + strip-ansi-cjs: strip-ansi@6.0.1 + wrap-ansi: 8.1.0 + wrap-ansi-cjs: wrap-ansi@7.0.0 + + '@jridgewell/gen-mapping@0.3.8': + dependencies: + '@jridgewell/set-array': 1.2.1 + '@jridgewell/sourcemap-codec': 1.5.0 + '@jridgewell/trace-mapping': 0.3.25 + + '@jridgewell/resolve-uri@3.1.2': {} + + '@jridgewell/set-array@1.2.1': {} + + '@jridgewell/sourcemap-codec@1.5.0': {} + + '@jridgewell/trace-mapping@0.3.25': + dependencies: + '@jridgewell/resolve-uri': 3.1.2 + '@jridgewell/sourcemap-codec': 1.5.0 + + '@manypkg/find-root@1.1.0': + dependencies: + '@babel/runtime': 7.26.7 + '@types/node': 12.20.55 + find-up: 4.1.0 + fs-extra: 8.1.0 + + '@manypkg/get-packages@1.1.3': + dependencies: + '@babel/runtime': 7.26.7 + '@changesets/types': 4.1.0 + '@manypkg/find-root': 1.1.0 + fs-extra: 8.1.0 + globby: 11.1.0 + read-yaml-file: 1.1.0 + + '@mdx-js/mdx@3.1.0(acorn@8.14.0)': + dependencies: + '@types/estree': 1.0.6 + '@types/estree-jsx': 1.0.5 + '@types/hast': 3.0.4 + '@types/mdx': 2.0.13 + collapse-white-space: 2.1.0 + devlop: 1.1.0 + estree-util-is-identifier-name: 3.0.0 + estree-util-scope: 1.0.0 + estree-walker: 3.0.3 + hast-util-to-jsx-runtime: 2.3.2 + markdown-extensions: 2.0.0 + recma-build-jsx: 1.0.0 + recma-jsx: 1.0.0(acorn@8.14.0) + recma-stringify: 1.0.0 + rehype-recma: 1.0.0 + remark-mdx: 3.1.0 + remark-parse: 11.0.0 + remark-rehype: 11.1.1 + source-map: 0.7.4 + unified: 11.0.5 + unist-util-position-from-estree: 2.0.0 + unist-util-stringify-position: 4.0.0 + unist-util-visit: 5.0.0 + vfile: 6.0.3 + transitivePeerDependencies: + - acorn + - supports-color + + '@mdx-js/react@3.1.0(@types/react@18.3.12)(react@18.3.1)': + dependencies: + '@types/mdx': 2.0.13 + '@types/react': 18.3.12 + react: 18.3.1 + + '@mermaid-js/parser@0.3.0': + dependencies: + langium: 3.0.0 + + '@napi-rs/simple-git-android-arm-eabi@0.1.19': + optional: true + + '@napi-rs/simple-git-android-arm64@0.1.19': + optional: true + + '@napi-rs/simple-git-darwin-arm64@0.1.19': + optional: true + + '@napi-rs/simple-git-darwin-x64@0.1.19': + optional: true + + '@napi-rs/simple-git-freebsd-x64@0.1.19': + optional: true + + '@napi-rs/simple-git-linux-arm-gnueabihf@0.1.19': + optional: true + + '@napi-rs/simple-git-linux-arm64-gnu@0.1.19': + optional: true + + '@napi-rs/simple-git-linux-arm64-musl@0.1.19': + optional: true + + '@napi-rs/simple-git-linux-powerpc64le-gnu@0.1.19': + optional: true + + '@napi-rs/simple-git-linux-s390x-gnu@0.1.19': + optional: true + + '@napi-rs/simple-git-linux-x64-gnu@0.1.19': + optional: true + + '@napi-rs/simple-git-linux-x64-musl@0.1.19': + optional: true + + '@napi-rs/simple-git-win32-arm64-msvc@0.1.19': + optional: true + + '@napi-rs/simple-git-win32-x64-msvc@0.1.19': + optional: true + + '@napi-rs/simple-git@0.1.19': + optionalDependencies: + '@napi-rs/simple-git-android-arm-eabi': 0.1.19 + '@napi-rs/simple-git-android-arm64': 0.1.19 + '@napi-rs/simple-git-darwin-arm64': 0.1.19 + '@napi-rs/simple-git-darwin-x64': 0.1.19 + '@napi-rs/simple-git-freebsd-x64': 0.1.19 + '@napi-rs/simple-git-linux-arm-gnueabihf': 0.1.19 + '@napi-rs/simple-git-linux-arm64-gnu': 0.1.19 + '@napi-rs/simple-git-linux-arm64-musl': 0.1.19 + '@napi-rs/simple-git-linux-powerpc64le-gnu': 0.1.19 + '@napi-rs/simple-git-linux-s390x-gnu': 0.1.19 + '@napi-rs/simple-git-linux-x64-gnu': 0.1.19 + '@napi-rs/simple-git-linux-x64-musl': 0.1.19 + '@napi-rs/simple-git-win32-arm64-msvc': 0.1.19 + '@napi-rs/simple-git-win32-x64-msvc': 0.1.19 + + '@next/env@14.2.15': {} + + '@next/eslint-plugin-next@15.1.6': + dependencies: + fast-glob: 3.3.1 + + '@next/swc-darwin-arm64@14.2.15': + optional: true + + '@next/swc-darwin-x64@14.2.15': + optional: true + + '@next/swc-linux-arm64-gnu@14.2.15': + optional: true + + '@next/swc-linux-arm64-musl@14.2.15': + optional: true + + '@next/swc-linux-x64-gnu@14.2.15': + optional: true + + '@next/swc-linux-x64-musl@14.2.15': + optional: true + + '@next/swc-win32-arm64-msvc@14.2.15': + optional: true + + '@next/swc-win32-ia32-msvc@14.2.15': + optional: true + + '@next/swc-win32-x64-msvc@14.2.15': + optional: true + + '@nodelib/fs.scandir@2.1.5': + dependencies: + '@nodelib/fs.stat': 2.0.5 + run-parallel: 1.2.0 + + '@nodelib/fs.stat@2.0.5': {} + + '@nodelib/fs.walk@1.2.8': + dependencies: + '@nodelib/fs.scandir': 2.1.5 + fastq: 1.19.0 + + '@pkgjs/parseargs@0.11.0': + optional: true + + '@pkgr/core@0.1.1': {} + + '@playwright/test@1.50.1': + dependencies: + playwright: 1.50.1 + + '@pm2/agent@2.0.4': + dependencies: + async: 3.2.6 + chalk: 3.0.0 + dayjs: 1.8.36 + debug: 4.3.7 + eventemitter2: 5.0.1 + fast-json-patch: 3.1.1 + fclone: 1.0.11 + nssocket: 0.6.0 + pm2-axon: 4.0.1 + pm2-axon-rpc: 0.7.1 + proxy-agent: 6.3.1 + semver: 7.5.4 + ws: 7.5.10 + transitivePeerDependencies: + - bufferutil + - supports-color + - utf-8-validate + + '@pm2/io@6.0.1': + dependencies: + async: 2.6.4 + debug: 4.3.7 + eventemitter2: 6.4.9 + require-in-the-middle: 5.2.0 + semver: 7.5.4 + shimmer: 1.2.1 + signal-exit: 3.0.7 + tslib: 1.9.3 + transitivePeerDependencies: + - supports-color + + '@pm2/js-api@0.8.0': + dependencies: + async: 2.6.4 + debug: 4.3.7 + eventemitter2: 6.4.9 + extrareqp2: 1.0.0(debug@4.3.7) + ws: 7.5.10 + transitivePeerDependencies: + - bufferutil + - supports-color + - utf-8-validate + + '@pm2/pm2-version-check@1.0.4': + dependencies: + debug: 4.4.0 + transitivePeerDependencies: + - supports-color + + '@react-aria/focus@3.19.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@react-aria/interactions': 3.23.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.27.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-types/shared': 3.27.0(react@18.3.1) + '@swc/helpers': 0.5.15 + clsx: 2.1.1 + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + + '@react-aria/interactions@3.23.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@react-aria/ssr': 3.9.7(react@18.3.1) + '@react-aria/utils': 3.27.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-types/shared': 3.27.0(react@18.3.1) + '@swc/helpers': 0.5.15 + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + + '@react-aria/ssr@3.9.7(react@18.3.1)': + dependencies: + '@swc/helpers': 0.5.15 + react: 18.3.1 + + '@react-aria/utils@3.27.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@react-aria/ssr': 3.9.7(react@18.3.1) + '@react-stately/utils': 3.10.5(react@18.3.1) + '@react-types/shared': 3.27.0(react@18.3.1) + '@swc/helpers': 0.5.15 + clsx: 2.1.1 + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + + '@react-stately/utils@3.10.5(react@18.3.1)': + dependencies: + '@swc/helpers': 0.5.15 + react: 18.3.1 + + '@react-types/shared@3.27.0(react@18.3.1)': + dependencies: + react: 18.3.1 + + '@redis/bloom@1.2.0(@redis/client@1.6.0)': + dependencies: + '@redis/client': 1.6.0 + + '@redis/client@1.6.0': + dependencies: + cluster-key-slot: 1.1.2 + generic-pool: 3.9.0 + yallist: 4.0.0 + + '@redis/graph@1.1.1(@redis/client@1.6.0)': + dependencies: + '@redis/client': 1.6.0 + + '@redis/json@1.0.7(@redis/client@1.6.0)': + dependencies: + '@redis/client': 1.6.0 + + '@redis/search@1.2.0(@redis/client@1.6.0)': + dependencies: + '@redis/client': 1.6.0 + + '@redis/time-series@1.1.0(@redis/client@1.6.0)': + dependencies: + '@redis/client': 1.6.0 + + '@rollup/rollup-android-arm-eabi@4.34.6': + optional: true + + '@rollup/rollup-android-arm64@4.34.6': + optional: true + + '@rollup/rollup-darwin-arm64@4.34.6': + optional: true + + '@rollup/rollup-darwin-x64@4.34.6': + optional: true + + '@rollup/rollup-freebsd-arm64@4.34.6': + optional: true + + '@rollup/rollup-freebsd-x64@4.34.6': + optional: true + + '@rollup/rollup-linux-arm-gnueabihf@4.34.6': + optional: true + + '@rollup/rollup-linux-arm-musleabihf@4.34.6': + optional: true + + '@rollup/rollup-linux-arm64-gnu@4.34.6': + optional: true + + '@rollup/rollup-linux-arm64-musl@4.34.6': + optional: true + + '@rollup/rollup-linux-loongarch64-gnu@4.34.6': + optional: true + + '@rollup/rollup-linux-powerpc64le-gnu@4.34.6': + optional: true + + '@rollup/rollup-linux-riscv64-gnu@4.34.6': + optional: true + + '@rollup/rollup-linux-s390x-gnu@4.34.6': + optional: true + + '@rollup/rollup-linux-x64-gnu@4.34.6': + optional: true + + '@rollup/rollup-linux-x64-musl@4.34.6': + optional: true + + '@rollup/rollup-win32-arm64-msvc@4.34.6': + optional: true + + '@rollup/rollup-win32-ia32-msvc@4.34.6': + optional: true + + '@rollup/rollup-win32-x64-msvc@4.34.6': + optional: true + + '@shikijs/core@1.29.2': + dependencies: + '@shikijs/engine-javascript': 1.29.2 + '@shikijs/engine-oniguruma': 1.29.2 + '@shikijs/types': 1.29.2 + '@shikijs/vscode-textmate': 10.0.1 + '@types/hast': 3.0.4 + hast-util-to-html: 9.0.4 + + '@shikijs/engine-javascript@1.29.2': + dependencies: + '@shikijs/types': 1.29.2 + '@shikijs/vscode-textmate': 10.0.1 + oniguruma-to-es: 2.3.0 + + '@shikijs/engine-oniguruma@1.29.2': + dependencies: + '@shikijs/types': 1.29.2 + '@shikijs/vscode-textmate': 10.0.1 + + '@shikijs/langs@1.29.2': + dependencies: + '@shikijs/types': 1.29.2 + + '@shikijs/themes@1.29.2': + dependencies: + '@shikijs/types': 1.29.2 + + '@shikijs/twoslash@1.29.2(typescript@5.7.3)': + dependencies: + '@shikijs/core': 1.29.2 + '@shikijs/types': 1.29.2 + twoslash: 0.2.12(typescript@5.7.3) + transitivePeerDependencies: + - supports-color + - typescript + + '@shikijs/types@1.29.2': + dependencies: + '@shikijs/vscode-textmate': 10.0.1 + '@types/hast': 3.0.4 + + '@shikijs/vscode-textmate@10.0.1': {} + + '@swc/counter@0.1.3': {} + + '@swc/helpers@0.5.15': + dependencies: + tslib: 2.8.1 + + '@swc/helpers@0.5.5': + dependencies: + '@swc/counter': 0.1.3 + tslib: 2.8.1 + + '@tanstack/react-virtual@3.13.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@tanstack/virtual-core': 3.13.0 + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + + '@tanstack/virtual-core@3.13.0': {} + + '@theguild/remark-mermaid@0.1.3(react@18.3.1)': + dependencies: + mermaid: 11.4.1 + react: 18.3.1 + unist-util-visit: 5.0.0 + transitivePeerDependencies: + - supports-color + + '@theguild/remark-npm2yarn@0.3.3': + dependencies: + npm-to-yarn: 3.0.1 + unist-util-visit: 5.0.0 + + '@tootallnate/quickjs-emscripten@0.23.0': {} + + '@types/acorn@4.0.6': + dependencies: + '@types/estree': 1.0.6 + + '@types/d3-array@3.2.1': {} + + '@types/d3-axis@3.0.6': + dependencies: + '@types/d3-selection': 3.0.11 + + '@types/d3-brush@3.0.6': + dependencies: + '@types/d3-selection': 3.0.11 + + '@types/d3-chord@3.0.6': {} + + '@types/d3-color@3.1.3': {} + + '@types/d3-contour@3.0.6': + dependencies: + '@types/d3-array': 3.2.1 + '@types/geojson': 7946.0.16 + + '@types/d3-delaunay@6.0.4': {} + + '@types/d3-dispatch@3.0.6': {} + + '@types/d3-drag@3.0.7': + dependencies: + '@types/d3-selection': 3.0.11 + + '@types/d3-dsv@3.0.7': {} + + '@types/d3-ease@3.0.2': {} + + '@types/d3-fetch@3.0.7': + dependencies: + '@types/d3-dsv': 3.0.7 + + '@types/d3-force@3.0.10': {} + + '@types/d3-format@3.0.4': {} + + '@types/d3-geo@3.1.0': + dependencies: + '@types/geojson': 7946.0.16 + + '@types/d3-hierarchy@3.1.7': {} + + '@types/d3-interpolate@3.0.4': + dependencies: + '@types/d3-color': 3.1.3 + + '@types/d3-path@3.1.1': {} + + '@types/d3-polygon@3.0.2': {} + + '@types/d3-quadtree@3.0.6': {} + + '@types/d3-random@3.0.3': {} + + '@types/d3-scale-chromatic@3.1.0': {} + + '@types/d3-scale@4.0.9': + dependencies: + '@types/d3-time': 3.0.4 + + '@types/d3-selection@3.0.11': {} + + '@types/d3-shape@3.1.7': + dependencies: + '@types/d3-path': 3.1.1 + + '@types/d3-time-format@4.0.3': {} + + '@types/d3-time@3.0.4': {} + + '@types/d3-timer@3.0.2': {} + + '@types/d3-transition@3.0.9': + dependencies: + '@types/d3-selection': 3.0.11 + + '@types/d3-zoom@3.0.8': + dependencies: + '@types/d3-interpolate': 3.0.4 + '@types/d3-selection': 3.0.11 + + '@types/d3@7.4.3': + dependencies: + '@types/d3-array': 3.2.1 + '@types/d3-axis': 3.0.6 + '@types/d3-brush': 3.0.6 + '@types/d3-chord': 3.0.6 + '@types/d3-color': 3.1.3 + '@types/d3-contour': 3.0.6 + '@types/d3-delaunay': 6.0.4 + '@types/d3-dispatch': 3.0.6 + '@types/d3-drag': 3.0.7 + '@types/d3-dsv': 3.0.7 + '@types/d3-ease': 3.0.2 + '@types/d3-fetch': 3.0.7 + '@types/d3-force': 3.0.10 + '@types/d3-format': 3.0.4 + '@types/d3-geo': 3.1.0 + '@types/d3-hierarchy': 3.1.7 + '@types/d3-interpolate': 3.0.4 + '@types/d3-path': 3.1.1 + '@types/d3-polygon': 3.0.2 + '@types/d3-quadtree': 3.0.6 + '@types/d3-random': 3.0.3 + '@types/d3-scale': 4.0.9 + '@types/d3-scale-chromatic': 3.1.0 + '@types/d3-selection': 3.0.11 + '@types/d3-shape': 3.1.7 + '@types/d3-time': 3.0.4 + '@types/d3-time-format': 4.0.3 + '@types/d3-timer': 3.0.2 + '@types/d3-transition': 3.0.9 + '@types/d3-zoom': 3.0.8 + + '@types/debug@4.1.12': + dependencies: + '@types/ms': 2.1.0 + + '@types/estree-jsx@1.0.5': + dependencies: + '@types/estree': 1.0.6 + + '@types/estree@1.0.6': {} + + '@types/geojson@7946.0.16': {} + + '@types/hast@3.0.4': + dependencies: + '@types/unist': 3.0.3 + + '@types/json-schema@7.0.15': {} + + '@types/katex@0.16.7': {} + + '@types/mdast@4.0.4': + dependencies: + '@types/unist': 3.0.3 + + '@types/mdx@2.0.13': {} + + '@types/ms@2.1.0': {} + + '@types/nlcst@2.0.3': + dependencies: + '@types/unist': 3.0.3 + + '@types/node@12.20.55': {} + + '@types/node@22.13.1': + dependencies: + undici-types: 6.20.0 + + '@types/prop-types@15.7.14': {} + + '@types/react-dom@18.3.1': + dependencies: + '@types/react': 18.3.12 + + '@types/react@18.3.12': + dependencies: + '@types/prop-types': 15.7.14 + csstype: 3.1.3 + + '@types/trusted-types@2.0.7': + optional: true + + '@types/unist@2.0.11': {} + + '@types/unist@3.0.3': {} + + '@typescript-eslint/eslint-plugin@8.23.0(@typescript-eslint/parser@8.23.0(eslint@9.20.0)(typescript@5.7.3))(eslint@9.20.0)(typescript@5.7.3)': + dependencies: + '@eslint-community/regexpp': 4.12.1 + '@typescript-eslint/parser': 8.23.0(eslint@9.20.0)(typescript@5.7.3) + '@typescript-eslint/scope-manager': 8.23.0 + '@typescript-eslint/type-utils': 8.23.0(eslint@9.20.0)(typescript@5.7.3) + '@typescript-eslint/utils': 8.23.0(eslint@9.20.0)(typescript@5.7.3) + '@typescript-eslint/visitor-keys': 8.23.0 + eslint: 9.20.0 + graphemer: 1.4.0 + ignore: 5.3.2 + natural-compare: 1.4.0 + ts-api-utils: 2.0.1(typescript@5.7.3) + typescript: 5.7.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/parser@8.23.0(eslint@9.20.0)(typescript@5.7.3)': + dependencies: + '@typescript-eslint/scope-manager': 8.23.0 + '@typescript-eslint/types': 8.23.0 + '@typescript-eslint/typescript-estree': 8.23.0(typescript@5.7.3) + '@typescript-eslint/visitor-keys': 8.23.0 + debug: 4.4.0 + eslint: 9.20.0 + typescript: 5.7.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/scope-manager@8.23.0': + dependencies: + '@typescript-eslint/types': 8.23.0 + '@typescript-eslint/visitor-keys': 8.23.0 + + '@typescript-eslint/type-utils@8.23.0(eslint@9.20.0)(typescript@5.7.3)': + dependencies: + '@typescript-eslint/typescript-estree': 8.23.0(typescript@5.7.3) + '@typescript-eslint/utils': 8.23.0(eslint@9.20.0)(typescript@5.7.3) + debug: 4.4.0 + eslint: 9.20.0 + ts-api-utils: 2.0.1(typescript@5.7.3) + typescript: 5.7.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/types@8.23.0': {} + + '@typescript-eslint/typescript-estree@8.23.0(typescript@5.7.3)': + dependencies: + '@typescript-eslint/types': 8.23.0 + '@typescript-eslint/visitor-keys': 8.23.0 + debug: 4.4.0 + fast-glob: 3.3.3 + is-glob: 4.0.3 + minimatch: 9.0.5 + semver: 7.7.1 + ts-api-utils: 2.0.1(typescript@5.7.3) + typescript: 5.7.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/utils@8.23.0(eslint@9.20.0)(typescript@5.7.3)': + dependencies: + '@eslint-community/eslint-utils': 4.4.1(eslint@9.20.0) + '@typescript-eslint/scope-manager': 8.23.0 + '@typescript-eslint/types': 8.23.0 + '@typescript-eslint/typescript-estree': 8.23.0(typescript@5.7.3) + eslint: 9.20.0 + typescript: 5.7.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/visitor-keys@8.23.0': + dependencies: + '@typescript-eslint/types': 8.23.0 + eslint-visitor-keys: 4.2.0 + + '@typescript/vfs@1.6.1(typescript@5.7.3)': + dependencies: + debug: 4.4.0 + typescript: 5.7.3 + transitivePeerDependencies: + - supports-color + + '@ungap/structured-clone@1.3.0': {} + + '@zeit/schemas@2.36.0': {} + + abstract-logging@2.0.1: {} + + accepts@1.3.8: + dependencies: + mime-types: 2.1.35 + negotiator: 0.6.3 + + acorn-jsx@5.3.2(acorn@8.14.0): + dependencies: + acorn: 8.14.0 + + acorn@8.14.0: {} + + agent-base@7.1.3: {} + + ajv-formats@3.0.1(ajv@8.17.1): + optionalDependencies: + ajv: 8.17.1 + + ajv@6.12.6: + dependencies: + fast-deep-equal: 3.1.3 + fast-json-stable-stringify: 2.1.0 + json-schema-traverse: 0.4.1 + uri-js: 4.4.1 + + ajv@8.12.0: + dependencies: + fast-deep-equal: 3.1.3 + json-schema-traverse: 1.0.0 + require-from-string: 2.0.2 + uri-js: 4.4.1 + + ajv@8.17.1: + dependencies: + fast-deep-equal: 3.1.3 + fast-uri: 3.0.6 + json-schema-traverse: 1.0.0 + require-from-string: 2.0.2 + + amp-message@0.1.2: + dependencies: + amp: 0.3.1 + + amp@0.3.1: {} + + ansi-align@3.0.1: + dependencies: + string-width: 4.2.3 + + ansi-colors@4.1.3: {} + + ansi-regex@5.0.1: {} + + ansi-regex@6.1.0: {} + + ansi-styles@4.3.0: + dependencies: + color-convert: 2.0.1 + + ansi-styles@6.2.1: {} + + any-promise@1.3.0: {} + + anymatch@3.1.3: + dependencies: + normalize-path: 3.0.0 + picomatch: 2.3.1 + + arch@2.2.0: {} + + arg@5.0.2: {} + + argparse@1.0.10: + dependencies: + sprintf-js: 1.0.3 + + argparse@2.0.1: {} + + array-buffer-byte-length@1.0.2: + dependencies: + call-bound: 1.0.3 + is-array-buffer: 3.0.5 + + array-includes@3.1.8: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + es-abstract: 1.23.9 + es-object-atoms: 1.1.1 + get-intrinsic: 1.2.7 + is-string: 1.1.1 + + array-iterate@2.0.1: {} + + array-union@2.1.0: {} + + array.prototype.findlast@1.2.5: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + es-abstract: 1.23.9 + es-errors: 1.3.0 + es-object-atoms: 1.1.1 + es-shim-unscopables: 1.0.2 + + array.prototype.flat@1.3.3: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + es-abstract: 1.23.9 + es-shim-unscopables: 1.0.2 + + array.prototype.flatmap@1.3.3: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + es-abstract: 1.23.9 + es-shim-unscopables: 1.0.2 + + array.prototype.tosorted@1.1.4: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + es-abstract: 1.23.9 + es-errors: 1.3.0 + es-shim-unscopables: 1.0.2 + + arraybuffer.prototype.slice@1.0.4: + dependencies: + array-buffer-byte-length: 1.0.2 + call-bind: 1.0.8 + define-properties: 1.2.1 + es-abstract: 1.23.9 + es-errors: 1.3.0 + get-intrinsic: 1.2.7 + is-array-buffer: 3.0.5 + + ast-types@0.13.4: + dependencies: + tslib: 2.8.1 + + astring@1.9.0: {} + + async-function@1.0.0: {} + + async@2.6.4: + dependencies: + lodash: 4.17.21 + + async@3.2.6: {} + + asynckit@0.4.0: {} + + atomic-sleep@1.0.0: {} + + available-typed-arrays@1.0.7: + dependencies: + possible-typed-array-names: 1.1.0 + + avvio@9.1.0: + dependencies: + '@fastify/error': 4.0.0 + fastq: 1.19.0 + + axios@1.7.9: + dependencies: + follow-redirects: 1.15.9(debug@4.3.7) + form-data: 4.0.1 + proxy-from-env: 1.1.0 + transitivePeerDependencies: + - debug + + bail@2.0.2: {} + + balanced-match@1.0.2: {} + + basic-ftp@5.0.5: {} + + better-path-resolve@1.0.0: + dependencies: + is-windows: 1.0.2 + + better-react-mathjax@2.1.0(react@18.3.1): + dependencies: + mathjax-full: 3.2.2 + react: 18.3.1 + + binary-extensions@2.3.0: {} + + blessed@0.1.81: {} + + bodec@0.1.0: {} + + boxen@7.0.0: + dependencies: + ansi-align: 3.0.1 + camelcase: 7.0.1 + chalk: 5.0.1 + cli-boxes: 3.0.0 + string-width: 5.1.2 + type-fest: 2.19.0 + widest-line: 4.0.1 + wrap-ansi: 8.1.0 + + brace-expansion@1.1.11: + dependencies: + balanced-match: 1.0.2 + concat-map: 0.0.1 + + brace-expansion@2.0.1: + dependencies: + balanced-match: 1.0.2 + + braces@3.0.3: + dependencies: + fill-range: 7.1.1 + + buffer-from@1.1.2: {} + + bundle-require@5.1.0(esbuild@0.24.2): + dependencies: + esbuild: 0.24.2 + load-tsconfig: 0.2.5 + + busboy@1.6.0: + dependencies: + streamsearch: 1.1.0 + + bytes@3.0.0: {} + + cac@6.7.14: {} + + call-bind-apply-helpers@1.0.1: + dependencies: + es-errors: 1.3.0 + function-bind: 1.1.2 + + call-bind@1.0.8: + dependencies: + call-bind-apply-helpers: 1.0.1 + es-define-property: 1.0.1 + get-intrinsic: 1.2.7 + set-function-length: 1.2.2 + + call-bound@1.0.3: + dependencies: + call-bind-apply-helpers: 1.0.1 + get-intrinsic: 1.2.7 + + callsites@3.1.0: {} + + camelcase@7.0.1: {} + + caniuse-lite@1.0.30001698: {} + + ccount@2.0.1: {} + + chalk-template@0.4.0: + dependencies: + chalk: 4.1.2 + + chalk@3.0.0: + dependencies: + ansi-styles: 4.3.0 + supports-color: 7.2.0 + + chalk@4.1.2: + dependencies: + ansi-styles: 4.3.0 + supports-color: 7.2.0 + + chalk@5.0.1: {} + + chalk@5.4.1: {} + + character-entities-html4@2.1.0: {} + + character-entities-legacy@3.0.0: {} + + character-entities@2.0.2: {} + + character-reference-invalid@2.0.1: {} + + chardet@0.7.0: {} + + charm@0.1.2: {} + + chevrotain-allstar@0.3.1(chevrotain@11.0.3): + dependencies: + chevrotain: 11.0.3 + lodash-es: 4.17.21 + + chevrotain@11.0.3: + dependencies: + '@chevrotain/cst-dts-gen': 11.0.3 + '@chevrotain/gast': 11.0.3 + '@chevrotain/regexp-to-ast': 11.0.3 + '@chevrotain/types': 11.0.3 + '@chevrotain/utils': 11.0.3 + lodash-es: 4.17.21 + + chokidar@3.6.0: + dependencies: + anymatch: 3.1.3 + braces: 3.0.3 + glob-parent: 5.1.2 + is-binary-path: 2.1.0 + is-glob: 4.0.3 + normalize-path: 3.0.0 + readdirp: 3.6.0 + optionalDependencies: + fsevents: 2.3.3 + + chokidar@4.0.3: + dependencies: + readdirp: 4.1.1 + + ci-info@3.9.0: {} + + cli-boxes@3.0.0: {} + + cli-tableau@2.0.1: + dependencies: + chalk: 3.0.0 + + client-only@0.0.1: {} + + clipboardy@3.0.0: + dependencies: + arch: 2.2.0 + execa: 5.1.1 + is-wsl: 2.2.0 + + clipboardy@4.0.0: + dependencies: + execa: 8.0.1 + is-wsl: 3.1.0 + is64bit: 2.0.0 + + clsx@2.1.1: {} + + cluster-key-slot@1.1.2: {} + + collapse-white-space@2.1.0: {} + + color-convert@2.0.1: + dependencies: + color-name: 1.1.4 + + color-name@1.1.4: {} + + colorette@2.0.20: {} + + combined-stream@1.0.8: + dependencies: + delayed-stream: 1.0.0 + + comma-separated-tokens@2.0.3: {} + + commander@2.15.1: {} + + commander@4.1.1: {} + + commander@7.2.0: {} + + commander@8.3.0: {} + + commander@9.2.0: {} + + compressible@2.0.18: + dependencies: + mime-db: 1.53.0 + + compression@1.7.4: + dependencies: + accepts: 1.3.8 + bytes: 3.0.0 + compressible: 2.0.18 + debug: 2.6.9 + on-headers: 1.0.2 + safe-buffer: 5.1.2 + vary: 1.1.2 + transitivePeerDependencies: + - supports-color + + compute-scroll-into-view@3.1.1: {} + + concat-map@0.0.1: {} + + confbox@0.1.8: {} + + consola@3.4.0: {} + + content-disposition@0.5.2: {} + + cookie@1.0.2: {} + + cose-base@1.0.3: + dependencies: + layout-base: 1.0.2 + + cose-base@2.2.0: + dependencies: + layout-base: 2.0.1 + + croner@4.1.97: {} + + cross-spawn@7.0.6: + dependencies: + path-key: 3.1.1 + shebang-command: 2.0.0 + which: 2.0.2 + + csstype@3.1.3: {} + + culvert@0.1.2: {} + + cytoscape-cose-bilkent@4.1.0(cytoscape@3.31.0): + dependencies: + cose-base: 1.0.3 + cytoscape: 3.31.0 + + cytoscape-fcose@2.2.0(cytoscape@3.31.0): + dependencies: + cose-base: 2.2.0 + cytoscape: 3.31.0 + + cytoscape@3.31.0: {} + + d3-array@2.12.1: + dependencies: + internmap: 1.0.1 + + d3-array@3.2.4: + dependencies: + internmap: 2.0.3 + + d3-axis@3.0.0: {} + + d3-brush@3.0.0: + dependencies: + d3-dispatch: 3.0.1 + d3-drag: 3.0.0 + d3-interpolate: 3.0.1 + d3-selection: 3.0.0 + d3-transition: 3.0.1(d3-selection@3.0.0) + + d3-chord@3.0.1: + dependencies: + d3-path: 3.1.0 + + d3-color@3.1.0: {} + + d3-contour@4.0.2: + dependencies: + d3-array: 3.2.4 + + d3-delaunay@6.0.4: + dependencies: + delaunator: 5.0.1 + + d3-dispatch@3.0.1: {} + + d3-drag@3.0.0: + dependencies: + d3-dispatch: 3.0.1 + d3-selection: 3.0.0 + + d3-dsv@3.0.1: + dependencies: + commander: 7.2.0 + iconv-lite: 0.6.3 + rw: 1.3.3 + + d3-ease@3.0.1: {} + + d3-fetch@3.0.1: + dependencies: + d3-dsv: 3.0.1 + + d3-force@3.0.0: + dependencies: + d3-dispatch: 3.0.1 + d3-quadtree: 3.0.1 + d3-timer: 3.0.1 + + d3-format@3.1.0: {} + + d3-geo@3.1.1: + dependencies: + d3-array: 3.2.4 + + d3-hierarchy@3.1.2: {} + + d3-interpolate@3.0.1: + dependencies: + d3-color: 3.1.0 + + d3-path@1.0.9: {} + + d3-path@3.1.0: {} + + d3-polygon@3.0.1: {} + + d3-quadtree@3.0.1: {} + + d3-random@3.0.1: {} + + d3-sankey@0.12.3: + dependencies: + d3-array: 2.12.1 + d3-shape: 1.3.7 + + d3-scale-chromatic@3.1.0: + dependencies: + d3-color: 3.1.0 + d3-interpolate: 3.0.1 + + d3-scale@4.0.2: + dependencies: + d3-array: 3.2.4 + d3-format: 3.1.0 + d3-interpolate: 3.0.1 + d3-time: 3.1.0 + d3-time-format: 4.1.0 + + d3-selection@3.0.0: {} + + d3-shape@1.3.7: + dependencies: + d3-path: 1.0.9 + + d3-shape@3.2.0: + dependencies: + d3-path: 3.1.0 + + d3-time-format@4.1.0: + dependencies: + d3-time: 3.1.0 + + d3-time@3.1.0: + dependencies: + d3-array: 3.2.4 + + d3-timer@3.0.1: {} + + d3-transition@3.0.1(d3-selection@3.0.0): + dependencies: + d3-color: 3.1.0 + d3-dispatch: 3.0.1 + d3-ease: 3.0.1 + d3-interpolate: 3.0.1 + d3-selection: 3.0.0 + d3-timer: 3.0.1 + + d3-zoom@3.0.0: + dependencies: + d3-dispatch: 3.0.1 + d3-drag: 3.0.0 + d3-interpolate: 3.0.1 + d3-selection: 3.0.0 + d3-transition: 3.0.1(d3-selection@3.0.0) + + d3@7.9.0: + dependencies: + d3-array: 3.2.4 + d3-axis: 3.0.0 + d3-brush: 3.0.0 + d3-chord: 3.0.1 + d3-color: 3.1.0 + d3-contour: 4.0.2 + d3-delaunay: 6.0.4 + d3-dispatch: 3.0.1 + d3-drag: 3.0.0 + d3-dsv: 3.0.1 + d3-ease: 3.0.1 + d3-fetch: 3.0.1 + d3-force: 3.0.0 + d3-format: 3.1.0 + d3-geo: 3.1.1 + d3-hierarchy: 3.1.2 + d3-interpolate: 3.0.1 + d3-path: 3.1.0 + d3-polygon: 3.0.1 + d3-quadtree: 3.0.1 + d3-random: 3.0.1 + d3-scale: 4.0.2 + d3-scale-chromatic: 3.1.0 + d3-selection: 3.0.0 + d3-shape: 3.2.0 + d3-time: 3.1.0 + d3-time-format: 4.1.0 + d3-timer: 3.0.1 + d3-transition: 3.0.1(d3-selection@3.0.0) + d3-zoom: 3.0.0 + + dagre-d3-es@7.0.11: + dependencies: + d3: 7.9.0 + lodash-es: 4.17.21 + + data-uri-to-buffer@6.0.2: {} + + data-view-buffer@1.0.2: + dependencies: + call-bound: 1.0.3 + es-errors: 1.3.0 + is-data-view: 1.0.2 + + data-view-byte-length@1.0.2: + dependencies: + call-bound: 1.0.3 + es-errors: 1.3.0 + is-data-view: 1.0.2 + + data-view-byte-offset@1.0.1: + dependencies: + call-bound: 1.0.3 + es-errors: 1.3.0 + is-data-view: 1.0.2 + + dateformat@4.6.3: {} + + dayjs@1.11.13: {} + + dayjs@1.8.36: {} + + debug@2.6.9: + dependencies: + ms: 2.0.0 + + debug@3.2.7: + dependencies: + ms: 2.1.3 + + debug@4.3.7: + dependencies: + ms: 2.1.3 + + debug@4.4.0: + dependencies: + ms: 2.1.3 + + decode-named-character-reference@1.0.2: + dependencies: + character-entities: 2.0.2 + + deep-extend@0.6.0: {} + + deep-is@0.1.4: {} + + define-data-property@1.1.4: + dependencies: + es-define-property: 1.0.1 + es-errors: 1.3.0 + gopd: 1.2.0 + + define-properties@1.2.1: + dependencies: + define-data-property: 1.1.4 + has-property-descriptors: 1.0.2 + object-keys: 1.1.1 + + degenerator@5.0.1: + dependencies: + ast-types: 0.13.4 + escodegen: 2.1.0 + esprima: 4.0.1 + + delaunator@5.0.1: + dependencies: + robust-predicates: 3.0.2 + + delayed-stream@1.0.0: {} + + dequal@2.0.3: {} + + detect-indent@6.1.0: {} + + detect-indent@7.0.1: {} + + detect-newline@4.0.1: {} + + devlop@1.1.0: + dependencies: + dequal: 2.0.3 + + dir-glob@3.0.1: + dependencies: + path-type: 4.0.0 + + doctrine@2.1.0: + dependencies: + esutils: 2.0.3 + + dompurify@3.2.4: + optionalDependencies: + '@types/trusted-types': 2.0.7 + + dotenv@16.0.3: {} + + dunder-proto@1.0.1: + dependencies: + call-bind-apply-helpers: 1.0.1 + es-errors: 1.3.0 + gopd: 1.2.0 + + eastasianwidth@0.2.0: {} + + emoji-regex-xs@1.0.0: {} + + emoji-regex@8.0.0: {} + + emoji-regex@9.2.2: {} + + end-of-stream@1.4.4: + dependencies: + once: 1.4.0 + + enquirer@2.3.6: + dependencies: + ansi-colors: 4.1.3 + + enquirer@2.4.1: + dependencies: + ansi-colors: 4.1.3 + strip-ansi: 6.0.1 + + entities@4.5.0: {} + + es-abstract@1.23.9: + dependencies: + array-buffer-byte-length: 1.0.2 + arraybuffer.prototype.slice: 1.0.4 + available-typed-arrays: 1.0.7 + call-bind: 1.0.8 + call-bound: 1.0.3 + data-view-buffer: 1.0.2 + data-view-byte-length: 1.0.2 + data-view-byte-offset: 1.0.1 + es-define-property: 1.0.1 + es-errors: 1.3.0 + es-object-atoms: 1.1.1 + es-set-tostringtag: 2.1.0 + es-to-primitive: 1.3.0 + function.prototype.name: 1.1.8 + get-intrinsic: 1.2.7 + get-proto: 1.0.1 + get-symbol-description: 1.1.0 + globalthis: 1.0.4 + gopd: 1.2.0 + has-property-descriptors: 1.0.2 + has-proto: 1.2.0 + has-symbols: 1.1.0 + hasown: 2.0.2 + internal-slot: 1.1.0 + is-array-buffer: 3.0.5 + is-callable: 1.2.7 + is-data-view: 1.0.2 + is-regex: 1.2.1 + is-shared-array-buffer: 1.0.4 + is-string: 1.1.1 + is-typed-array: 1.1.15 + is-weakref: 1.1.1 + math-intrinsics: 1.1.0 + object-inspect: 1.13.4 + object-keys: 1.1.1 + object.assign: 4.1.7 + own-keys: 1.0.1 + regexp.prototype.flags: 1.5.4 + safe-array-concat: 1.1.3 + safe-push-apply: 1.0.0 + safe-regex-test: 1.1.0 + set-proto: 1.0.0 + string.prototype.trim: 1.2.10 + string.prototype.trimend: 1.0.9 + string.prototype.trimstart: 1.0.8 + typed-array-buffer: 1.0.3 + typed-array-byte-length: 1.0.3 + typed-array-byte-offset: 1.0.4 + typed-array-length: 1.0.7 + unbox-primitive: 1.1.0 + which-typed-array: 1.1.18 + + es-define-property@1.0.1: {} + + es-errors@1.3.0: {} + + es-iterator-helpers@1.2.1: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.3 + define-properties: 1.2.1 + es-abstract: 1.23.9 + es-errors: 1.3.0 + es-set-tostringtag: 2.1.0 + function-bind: 1.1.2 + get-intrinsic: 1.2.7 + globalthis: 1.0.4 + gopd: 1.2.0 + has-property-descriptors: 1.0.2 + has-proto: 1.2.0 + has-symbols: 1.1.0 + internal-slot: 1.1.0 + iterator.prototype: 1.1.5 + safe-array-concat: 1.1.3 + + es-object-atoms@1.1.1: + dependencies: + es-errors: 1.3.0 + + es-set-tostringtag@2.1.0: + dependencies: + es-errors: 1.3.0 + get-intrinsic: 1.2.7 + has-tostringtag: 1.0.2 + hasown: 2.0.2 + + es-shim-unscopables@1.0.2: + dependencies: + hasown: 2.0.2 + + es-to-primitive@1.3.0: + dependencies: + is-callable: 1.2.7 + is-date-object: 1.1.0 + is-symbol: 1.1.1 + + esast-util-from-estree@2.0.0: + dependencies: + '@types/estree-jsx': 1.0.5 + devlop: 1.1.0 + estree-util-visit: 2.0.0 + unist-util-position-from-estree: 2.0.0 + + esast-util-from-js@2.0.1: + dependencies: + '@types/estree-jsx': 1.0.5 + acorn: 8.14.0 + esast-util-from-estree: 2.0.0 + vfile-message: 4.0.2 + + esbuild@0.23.1: + optionalDependencies: + '@esbuild/aix-ppc64': 0.23.1 + '@esbuild/android-arm': 0.23.1 + '@esbuild/android-arm64': 0.23.1 + '@esbuild/android-x64': 0.23.1 + '@esbuild/darwin-arm64': 0.23.1 + '@esbuild/darwin-x64': 0.23.1 + '@esbuild/freebsd-arm64': 0.23.1 + '@esbuild/freebsd-x64': 0.23.1 + '@esbuild/linux-arm': 0.23.1 + '@esbuild/linux-arm64': 0.23.1 + '@esbuild/linux-ia32': 0.23.1 + '@esbuild/linux-loong64': 0.23.1 + '@esbuild/linux-mips64el': 0.23.1 + '@esbuild/linux-ppc64': 0.23.1 + '@esbuild/linux-riscv64': 0.23.1 + '@esbuild/linux-s390x': 0.23.1 + '@esbuild/linux-x64': 0.23.1 + '@esbuild/netbsd-x64': 0.23.1 + '@esbuild/openbsd-arm64': 0.23.1 + '@esbuild/openbsd-x64': 0.23.1 + '@esbuild/sunos-x64': 0.23.1 + '@esbuild/win32-arm64': 0.23.1 + '@esbuild/win32-ia32': 0.23.1 + '@esbuild/win32-x64': 0.23.1 + + esbuild@0.24.2: + optionalDependencies: + '@esbuild/aix-ppc64': 0.24.2 + '@esbuild/android-arm': 0.24.2 + '@esbuild/android-arm64': 0.24.2 + '@esbuild/android-x64': 0.24.2 + '@esbuild/darwin-arm64': 0.24.2 + '@esbuild/darwin-x64': 0.24.2 + '@esbuild/freebsd-arm64': 0.24.2 + '@esbuild/freebsd-x64': 0.24.2 + '@esbuild/linux-arm': 0.24.2 + '@esbuild/linux-arm64': 0.24.2 + '@esbuild/linux-ia32': 0.24.2 + '@esbuild/linux-loong64': 0.24.2 + '@esbuild/linux-mips64el': 0.24.2 + '@esbuild/linux-ppc64': 0.24.2 + '@esbuild/linux-riscv64': 0.24.2 + '@esbuild/linux-s390x': 0.24.2 + '@esbuild/linux-x64': 0.24.2 + '@esbuild/netbsd-arm64': 0.24.2 + '@esbuild/netbsd-x64': 0.24.2 + '@esbuild/openbsd-arm64': 0.24.2 + '@esbuild/openbsd-x64': 0.24.2 + '@esbuild/sunos-x64': 0.24.2 + '@esbuild/win32-arm64': 0.24.2 + '@esbuild/win32-ia32': 0.24.2 + '@esbuild/win32-x64': 0.24.2 + + escape-string-regexp@4.0.0: {} + + escape-string-regexp@5.0.0: {} + + escodegen@2.1.0: + dependencies: + esprima: 4.0.1 + estraverse: 5.3.0 + esutils: 2.0.3 + optionalDependencies: + source-map: 0.6.1 + + eslint-config-prettier@10.0.1(eslint@9.20.0): + dependencies: + eslint: 9.20.0 + + eslint-plugin-react-hooks@5.1.0(eslint@9.20.0): + dependencies: + eslint: 9.20.0 + + eslint-plugin-react@7.37.4(eslint@9.20.0): + dependencies: + array-includes: 3.1.8 + array.prototype.findlast: 1.2.5 + array.prototype.flatmap: 1.3.3 + array.prototype.tosorted: 1.1.4 + doctrine: 2.1.0 + es-iterator-helpers: 1.2.1 + eslint: 9.20.0 + estraverse: 5.3.0 + hasown: 2.0.2 + jsx-ast-utils: 3.3.5 + minimatch: 3.1.2 + object.entries: 1.1.8 + object.fromentries: 2.0.8 + object.values: 1.2.1 + prop-types: 15.8.1 + resolve: 2.0.0-next.5 + semver: 6.3.1 + string.prototype.matchall: 4.0.12 + string.prototype.repeat: 1.0.0 + + eslint-plugin-turbo@2.4.0(eslint@9.20.0)(turbo@2.4.0): + dependencies: + dotenv: 16.0.3 + eslint: 9.20.0 + turbo: 2.4.0 + + eslint-scope@8.2.0: + dependencies: + esrecurse: 4.3.0 + estraverse: 5.3.0 + + eslint-visitor-keys@3.4.3: {} + + eslint-visitor-keys@4.2.0: {} + + eslint@9.20.0: + dependencies: + '@eslint-community/eslint-utils': 4.4.1(eslint@9.20.0) + '@eslint-community/regexpp': 4.12.1 + '@eslint/config-array': 0.19.2 + '@eslint/core': 0.11.0 + '@eslint/eslintrc': 3.2.0 + '@eslint/js': 9.20.0 + '@eslint/plugin-kit': 0.2.5 + '@humanfs/node': 0.16.6 + '@humanwhocodes/module-importer': 1.0.1 + '@humanwhocodes/retry': 0.4.1 + '@types/estree': 1.0.6 + '@types/json-schema': 7.0.15 + ajv: 6.12.6 + chalk: 4.1.2 + cross-spawn: 7.0.6 + debug: 4.4.0 + escape-string-regexp: 4.0.0 + eslint-scope: 8.2.0 + eslint-visitor-keys: 4.2.0 + espree: 10.3.0 + esquery: 1.6.0 + esutils: 2.0.3 + fast-deep-equal: 3.1.3 + file-entry-cache: 8.0.0 + find-up: 5.0.0 + glob-parent: 6.0.2 + ignore: 5.3.2 + imurmurhash: 0.1.4 + is-glob: 4.0.3 + json-stable-stringify-without-jsonify: 1.0.1 + lodash.merge: 4.6.2 + minimatch: 3.1.2 + natural-compare: 1.4.0 + optionator: 0.9.4 + transitivePeerDependencies: + - supports-color + + esm@3.2.25: {} + + espree@10.3.0: + dependencies: + acorn: 8.14.0 + acorn-jsx: 5.3.2(acorn@8.14.0) + eslint-visitor-keys: 4.2.0 + + esprima@4.0.1: {} + + esquery@1.6.0: + dependencies: + estraverse: 5.3.0 + + esrecurse@4.3.0: + dependencies: + estraverse: 5.3.0 + + estraverse@5.3.0: {} + + estree-util-attach-comments@3.0.0: + dependencies: + '@types/estree': 1.0.6 + + estree-util-build-jsx@3.0.1: + dependencies: + '@types/estree-jsx': 1.0.5 + devlop: 1.1.0 + estree-util-is-identifier-name: 3.0.0 + estree-walker: 3.0.3 + + estree-util-is-identifier-name@2.1.0: {} + + estree-util-is-identifier-name@3.0.0: {} + + estree-util-scope@1.0.0: + dependencies: + '@types/estree': 1.0.6 + devlop: 1.1.0 + + estree-util-to-js@2.0.0: + dependencies: + '@types/estree-jsx': 1.0.5 + astring: 1.9.0 + source-map: 0.7.4 + + estree-util-value-to-estree@1.3.0: + dependencies: + is-plain-obj: 3.0.0 + + estree-util-value-to-estree@3.3.2: + dependencies: + '@types/estree': 1.0.6 + + estree-util-visit@2.0.0: + dependencies: + '@types/estree-jsx': 1.0.5 + '@types/unist': 3.0.3 + + estree-walker@3.0.3: + dependencies: + '@types/estree': 1.0.6 + + esutils@2.0.3: {} + + eventemitter2@0.4.14: {} + + eventemitter2@5.0.1: {} + + eventemitter2@6.4.9: {} + + execa@5.1.1: + dependencies: + cross-spawn: 7.0.6 + get-stream: 6.0.1 + human-signals: 2.1.0 + is-stream: 2.0.1 + merge-stream: 2.0.0 + npm-run-path: 4.0.1 + onetime: 5.1.2 + signal-exit: 3.0.7 + strip-final-newline: 2.0.0 + + execa@8.0.1: + dependencies: + cross-spawn: 7.0.6 + get-stream: 8.0.1 + human-signals: 5.0.0 + is-stream: 3.0.0 + merge-stream: 2.0.0 + npm-run-path: 5.3.0 + onetime: 6.0.0 + signal-exit: 4.1.0 + strip-final-newline: 3.0.0 + + extend-shallow@2.0.1: + dependencies: + is-extendable: 0.1.1 + + extend@3.0.2: {} + + extendable-error@0.1.7: {} + + external-editor@3.1.0: + dependencies: + chardet: 0.7.0 + iconv-lite: 0.4.24 + tmp: 0.0.33 + + extrareqp2@1.0.0(debug@4.3.7): + dependencies: + follow-redirects: 1.15.9(debug@4.3.7) + transitivePeerDependencies: + - debug + + fast-copy@3.0.2: {} + + fast-decode-uri-component@1.0.1: {} + + fast-deep-equal@3.1.3: {} + + fast-glob@3.3.1: + dependencies: + '@nodelib/fs.stat': 2.0.5 + '@nodelib/fs.walk': 1.2.8 + glob-parent: 5.1.2 + merge2: 1.4.1 + micromatch: 4.0.8 + + fast-glob@3.3.3: + dependencies: + '@nodelib/fs.stat': 2.0.5 + '@nodelib/fs.walk': 1.2.8 + glob-parent: 5.1.2 + merge2: 1.4.1 + micromatch: 4.0.8 + + fast-json-patch@3.1.1: {} + + fast-json-stable-stringify@2.1.0: {} + + fast-json-stringify@6.0.1: + dependencies: + '@fastify/merge-json-schemas': 0.2.1 + ajv: 8.17.1 + ajv-formats: 3.0.1(ajv@8.17.1) + fast-uri: 3.0.6 + json-schema-ref-resolver: 2.0.1 + rfdc: 1.4.1 + + fast-levenshtein@2.0.6: {} + + fast-querystring@1.1.2: + dependencies: + fast-decode-uri-component: 1.0.1 + + fast-redact@3.5.0: {} + + fast-safe-stringify@2.1.1: {} + + fast-uri@3.0.6: {} + + fastify@5.2.1: + dependencies: + '@fastify/ajv-compiler': 4.0.2 + '@fastify/error': 4.0.0 + '@fastify/fast-json-stringify-compiler': 5.0.2 + '@fastify/proxy-addr': 5.0.0 + abstract-logging: 2.0.1 + avvio: 9.1.0 + fast-json-stringify: 6.0.1 + find-my-way: 9.2.0 + light-my-request: 6.5.1 + pino: 9.6.0 + process-warning: 4.0.1 + rfdc: 1.4.1 + secure-json-parse: 3.0.2 + semver: 7.7.1 + toad-cache: 3.7.0 + + fastq@1.19.0: + dependencies: + reusify: 1.0.4 + + fault@2.0.1: + dependencies: + format: 0.2.2 + + fclone@1.0.11: {} + + fdir@6.4.3(picomatch@4.0.2): + optionalDependencies: + picomatch: 4.0.2 + + file-entry-cache@8.0.0: + dependencies: + flat-cache: 4.0.1 + + fill-range@7.1.1: + dependencies: + to-regex-range: 5.0.1 + + find-my-way@9.2.0: + dependencies: + fast-deep-equal: 3.1.3 + fast-querystring: 1.1.2 + safe-regex2: 4.0.1 + + find-up@4.1.0: + dependencies: + locate-path: 5.0.0 + path-exists: 4.0.0 + + find-up@5.0.0: + dependencies: + locate-path: 6.0.0 + path-exists: 4.0.0 + + flat-cache@4.0.1: + dependencies: + flatted: 3.3.2 + keyv: 4.5.4 + + flatted@3.3.2: {} + + flexsearch@0.7.43: {} + + follow-redirects@1.15.9(debug@4.3.7): + optionalDependencies: + debug: 4.3.7 + + for-each@0.3.4: + dependencies: + is-callable: 1.2.7 + + foreground-child@3.3.0: + dependencies: + cross-spawn: 7.0.6 + signal-exit: 4.1.0 + + form-data@4.0.1: + dependencies: + asynckit: 0.4.0 + combined-stream: 1.0.8 + mime-types: 2.1.35 + + format@0.2.2: {} + + fs-extra@7.0.1: + dependencies: + graceful-fs: 4.2.11 + jsonfile: 4.0.0 + universalify: 0.1.2 + + fs-extra@8.1.0: + dependencies: + graceful-fs: 4.2.11 + jsonfile: 4.0.0 + universalify: 0.1.2 + + fsevents@2.3.2: + optional: true + + fsevents@2.3.3: + optional: true + + function-bind@1.1.2: {} + + function.prototype.name@1.1.8: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.3 + define-properties: 1.2.1 + functions-have-names: 1.2.3 + hasown: 2.0.2 + is-callable: 1.2.7 + + functions-have-names@1.2.3: {} + + generic-pool@3.9.0: {} + + get-intrinsic@1.2.7: + dependencies: + call-bind-apply-helpers: 1.0.1 + es-define-property: 1.0.1 + es-errors: 1.3.0 + es-object-atoms: 1.1.1 + function-bind: 1.1.2 + get-proto: 1.0.1 + gopd: 1.2.0 + has-symbols: 1.1.0 + hasown: 2.0.2 + math-intrinsics: 1.1.0 + + get-proto@1.0.1: + dependencies: + dunder-proto: 1.0.1 + es-object-atoms: 1.1.1 + + get-stdin@9.0.0: {} + + get-stream@6.0.1: {} + + get-stream@8.0.1: {} + + get-symbol-description@1.1.0: + dependencies: + call-bound: 1.0.3 + es-errors: 1.3.0 + get-intrinsic: 1.2.7 + + get-tsconfig@4.10.0: + dependencies: + resolve-pkg-maps: 1.0.0 + + get-uri@6.0.4: + dependencies: + basic-ftp: 5.0.5 + data-uri-to-buffer: 6.0.2 + debug: 4.4.0 + transitivePeerDependencies: + - supports-color + + git-hooks-list@3.2.0: {} + + git-node-fs@1.0.0(js-git@0.7.8): + optionalDependencies: + js-git: 0.7.8 + + git-sha1@0.1.2: {} + + github-slugger@2.0.0: {} + + glob-parent@5.1.2: + dependencies: + is-glob: 4.0.3 + + glob-parent@6.0.2: + dependencies: + is-glob: 4.0.3 + + glob@10.4.5: + dependencies: + foreground-child: 3.3.0 + jackspeak: 3.4.3 + minimatch: 9.0.5 + minipass: 7.1.2 + package-json-from-dist: 1.0.1 + path-scurry: 1.11.1 + + globals@14.0.0: {} + + globals@15.14.0: {} + + globalthis@1.0.4: + dependencies: + define-properties: 1.2.1 + gopd: 1.2.0 + + globby@11.1.0: + dependencies: + array-union: 2.1.0 + dir-glob: 3.0.1 + fast-glob: 3.3.3 + ignore: 5.3.2 + merge2: 1.4.1 + slash: 3.0.0 + + gopd@1.2.0: {} + + graceful-fs@4.2.11: {} + + graphemer@1.4.0: {} + + gray-matter@4.0.3: + dependencies: + js-yaml: 3.14.1 + kind-of: 6.0.3 + section-matter: 1.0.0 + strip-bom-string: 1.0.0 + + hachure-fill@0.5.2: {} + + has-bigints@1.1.0: {} + + has-flag@4.0.0: {} + + has-property-descriptors@1.0.2: + dependencies: + es-define-property: 1.0.1 + + has-proto@1.2.0: + dependencies: + dunder-proto: 1.0.1 + + has-symbols@1.1.0: {} + + has-tostringtag@1.0.2: + dependencies: + has-symbols: 1.1.0 + + hasown@2.0.2: + dependencies: + function-bind: 1.1.2 + + hast-util-from-dom@5.0.1: + dependencies: + '@types/hast': 3.0.4 + hastscript: 9.0.0 + web-namespaces: 2.0.1 + + hast-util-from-html-isomorphic@2.0.0: + dependencies: + '@types/hast': 3.0.4 + hast-util-from-dom: 5.0.1 + hast-util-from-html: 2.0.3 + unist-util-remove-position: 5.0.0 + + hast-util-from-html@2.0.3: + dependencies: + '@types/hast': 3.0.4 + devlop: 1.1.0 + hast-util-from-parse5: 8.0.2 + parse5: 7.2.1 + vfile: 6.0.3 + vfile-message: 4.0.2 + + hast-util-from-parse5@8.0.2: + dependencies: + '@types/hast': 3.0.4 + '@types/unist': 3.0.3 + devlop: 1.1.0 + hastscript: 9.0.0 + property-information: 6.5.0 + vfile: 6.0.3 + vfile-location: 5.0.3 + web-namespaces: 2.0.1 + + hast-util-is-element@3.0.0: + dependencies: + '@types/hast': 3.0.4 + + hast-util-parse-selector@4.0.0: + dependencies: + '@types/hast': 3.0.4 + + hast-util-raw@9.1.0: + dependencies: + '@types/hast': 3.0.4 + '@types/unist': 3.0.3 + '@ungap/structured-clone': 1.3.0 + hast-util-from-parse5: 8.0.2 + hast-util-to-parse5: 8.0.0 + html-void-elements: 3.0.0 + mdast-util-to-hast: 13.2.0 + parse5: 7.2.1 + unist-util-position: 5.0.0 + unist-util-visit: 5.0.0 + vfile: 6.0.3 + web-namespaces: 2.0.1 + zwitch: 2.0.4 + + hast-util-to-estree@3.1.1: + dependencies: + '@types/estree': 1.0.6 + '@types/estree-jsx': 1.0.5 + '@types/hast': 3.0.4 + comma-separated-tokens: 2.0.3 + devlop: 1.1.0 + estree-util-attach-comments: 3.0.0 + estree-util-is-identifier-name: 3.0.0 + hast-util-whitespace: 3.0.0 + mdast-util-mdx-expression: 2.0.1 + mdast-util-mdx-jsx: 3.2.0 + mdast-util-mdxjs-esm: 2.0.1 + property-information: 6.5.0 + space-separated-tokens: 2.0.2 + style-to-object: 1.0.8 + unist-util-position: 5.0.0 + zwitch: 2.0.4 + transitivePeerDependencies: + - supports-color + + hast-util-to-html@9.0.4: + dependencies: + '@types/hast': 3.0.4 + '@types/unist': 3.0.3 + ccount: 2.0.1 + comma-separated-tokens: 2.0.3 + hast-util-whitespace: 3.0.0 + html-void-elements: 3.0.0 + mdast-util-to-hast: 13.2.0 + property-information: 6.5.0 + space-separated-tokens: 2.0.2 + stringify-entities: 4.0.4 + zwitch: 2.0.4 + + hast-util-to-jsx-runtime@2.3.2: + dependencies: + '@types/estree': 1.0.6 + '@types/hast': 3.0.4 + '@types/unist': 3.0.3 + comma-separated-tokens: 2.0.3 + devlop: 1.1.0 + estree-util-is-identifier-name: 3.0.0 + hast-util-whitespace: 3.0.0 + mdast-util-mdx-expression: 2.0.1 + mdast-util-mdx-jsx: 3.2.0 + mdast-util-mdxjs-esm: 2.0.1 + property-information: 6.5.0 + space-separated-tokens: 2.0.2 + style-to-object: 1.0.8 + unist-util-position: 5.0.0 + vfile-message: 4.0.2 + transitivePeerDependencies: + - supports-color + + hast-util-to-parse5@8.0.0: + dependencies: + '@types/hast': 3.0.4 + comma-separated-tokens: 2.0.3 + devlop: 1.1.0 + property-information: 6.5.0 + space-separated-tokens: 2.0.2 + web-namespaces: 2.0.1 + zwitch: 2.0.4 + + hast-util-to-string@3.0.1: + dependencies: + '@types/hast': 3.0.4 + + hast-util-to-text@4.0.2: + dependencies: + '@types/hast': 3.0.4 + '@types/unist': 3.0.3 + hast-util-is-element: 3.0.0 + unist-util-find-after: 5.0.0 + + hast-util-whitespace@3.0.0: + dependencies: + '@types/hast': 3.0.4 + + hastscript@9.0.0: + dependencies: + '@types/hast': 3.0.4 + comma-separated-tokens: 2.0.3 + hast-util-parse-selector: 4.0.0 + property-information: 6.5.0 + space-separated-tokens: 2.0.2 + + help-me@5.0.0: {} + + html-void-elements@3.0.0: {} + + http-proxy-agent@7.0.2: + dependencies: + agent-base: 7.1.3 + debug: 4.4.0 + transitivePeerDependencies: + - supports-color + + https-proxy-agent@7.0.6: + dependencies: + agent-base: 7.1.3 + debug: 4.4.0 + transitivePeerDependencies: + - supports-color + + human-id@1.0.2: {} + + human-signals@2.1.0: {} + + human-signals@5.0.0: {} + + iconv-lite@0.4.24: + dependencies: + safer-buffer: 2.1.2 + + iconv-lite@0.6.3: + dependencies: + safer-buffer: 2.1.2 + + ignore@5.3.2: {} + + import-fresh@3.3.1: + dependencies: + parent-module: 1.0.1 + resolve-from: 4.0.0 + + imurmurhash@0.1.4: {} + + ini@1.3.8: {} + + inline-style-parser@0.2.4: {} + + internal-slot@1.1.0: + dependencies: + es-errors: 1.3.0 + hasown: 2.0.2 + side-channel: 1.1.0 + + internmap@1.0.1: {} + + internmap@2.0.3: {} + + ip-address@9.0.5: + dependencies: + jsbn: 1.1.0 + sprintf-js: 1.1.3 + + ipaddr.js@2.2.0: {} + + is-alphabetical@2.0.1: {} + + is-alphanumerical@2.0.1: + dependencies: + is-alphabetical: 2.0.1 + is-decimal: 2.0.1 + + is-array-buffer@3.0.5: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.3 + get-intrinsic: 1.2.7 + + is-async-function@2.1.1: + dependencies: + async-function: 1.0.0 + call-bound: 1.0.3 + get-proto: 1.0.1 + has-tostringtag: 1.0.2 + safe-regex-test: 1.1.0 + + is-bigint@1.1.0: + dependencies: + has-bigints: 1.1.0 + + is-binary-path@2.1.0: + dependencies: + binary-extensions: 2.3.0 + + is-boolean-object@1.2.2: + dependencies: + call-bound: 1.0.3 + has-tostringtag: 1.0.2 + + is-callable@1.2.7: {} + + is-core-module@2.16.1: + dependencies: + hasown: 2.0.2 + + is-data-view@1.0.2: + dependencies: + call-bound: 1.0.3 + get-intrinsic: 1.2.7 + is-typed-array: 1.1.15 + + is-date-object@1.1.0: + dependencies: + call-bound: 1.0.3 + has-tostringtag: 1.0.2 + + is-decimal@2.0.1: {} + + is-docker@2.2.1: {} + + is-docker@3.0.0: {} + + is-extendable@0.1.1: {} + + is-extglob@2.1.1: {} + + is-finalizationregistry@1.1.1: + dependencies: + call-bound: 1.0.3 + + is-fullwidth-code-point@3.0.0: {} + + is-generator-function@1.1.0: + dependencies: + call-bound: 1.0.3 + get-proto: 1.0.1 + has-tostringtag: 1.0.2 + safe-regex-test: 1.1.0 + + is-glob@4.0.3: + dependencies: + is-extglob: 2.1.1 + + is-hexadecimal@2.0.1: {} + + is-inside-container@1.0.0: + dependencies: + is-docker: 3.0.0 + + is-map@2.0.3: {} + + is-number-object@1.1.1: + dependencies: + call-bound: 1.0.3 + has-tostringtag: 1.0.2 + + is-number@7.0.0: {} + + is-plain-obj@3.0.0: {} + + is-plain-obj@4.1.0: {} + + is-port-reachable@4.0.0: {} + + is-regex@1.2.1: + dependencies: + call-bound: 1.0.3 + gopd: 1.2.0 + has-tostringtag: 1.0.2 + hasown: 2.0.2 + + is-set@2.0.3: {} + + is-shared-array-buffer@1.0.4: + dependencies: + call-bound: 1.0.3 + + is-stream@2.0.1: {} + + is-stream@3.0.0: {} + + is-string@1.1.1: + dependencies: + call-bound: 1.0.3 + has-tostringtag: 1.0.2 + + is-subdir@1.2.0: + dependencies: + better-path-resolve: 1.0.0 + + is-symbol@1.1.1: + dependencies: + call-bound: 1.0.3 + has-symbols: 1.1.0 + safe-regex-test: 1.1.0 + + is-typed-array@1.1.15: + dependencies: + which-typed-array: 1.1.18 + + is-weakmap@2.0.2: {} + + is-weakref@1.1.1: + dependencies: + call-bound: 1.0.3 + + is-weakset@2.0.4: + dependencies: + call-bound: 1.0.3 + get-intrinsic: 1.2.7 + + is-windows@1.0.2: {} + + is-wsl@2.2.0: + dependencies: + is-docker: 2.2.1 + + is-wsl@3.1.0: + dependencies: + is-inside-container: 1.0.0 + + is64bit@2.0.0: + dependencies: + system-architecture: 0.1.0 + + isarray@2.0.5: {} + + isexe@2.0.0: {} + + iterator.prototype@1.1.5: + dependencies: + define-data-property: 1.1.4 + es-object-atoms: 1.1.1 + get-intrinsic: 1.2.7 + get-proto: 1.0.1 + has-symbols: 1.1.0 + set-function-name: 2.0.2 + + jackspeak@3.4.3: + dependencies: + '@isaacs/cliui': 8.0.2 + optionalDependencies: + '@pkgjs/parseargs': 0.11.0 + + joycon@3.1.1: {} + + js-git@0.7.8: + dependencies: + bodec: 0.1.0 + culvert: 0.1.2 + git-sha1: 0.1.2 + pako: 0.2.9 + + js-tokens@4.0.0: {} + + js-yaml@3.14.1: + dependencies: + argparse: 1.0.10 + esprima: 4.0.1 + + js-yaml@4.1.0: + dependencies: + argparse: 2.0.1 + + jsbn@1.1.0: {} + + json-buffer@3.0.1: {} + + json-schema-ref-resolver@2.0.1: + dependencies: + dequal: 2.0.3 + + json-schema-traverse@0.4.1: {} + + json-schema-traverse@1.0.0: {} + + json-stable-stringify-without-jsonify@1.0.1: {} + + json-stringify-safe@5.0.1: + optional: true + + jsonfile@4.0.0: + optionalDependencies: + graceful-fs: 4.2.11 + + jsx-ast-utils@3.3.5: + dependencies: + array-includes: 3.1.8 + array.prototype.flat: 1.3.3 + object.assign: 4.1.7 + object.values: 1.2.1 + + katex@0.16.21: + dependencies: + commander: 8.3.0 + + keyv@4.5.4: + dependencies: + json-buffer: 3.0.1 + + khroma@2.1.0: {} + + kind-of@6.0.3: {} + + kolorist@1.8.0: {} + + langium@3.0.0: + dependencies: + chevrotain: 11.0.3 + chevrotain-allstar: 0.3.1(chevrotain@11.0.3) + vscode-languageserver: 9.0.1 + vscode-languageserver-textdocument: 1.0.12 + vscode-uri: 3.0.8 + + layout-base@1.0.2: {} + + layout-base@2.0.1: {} + + lazy@1.0.11: {} + + levn@0.4.1: + dependencies: + prelude-ls: 1.2.1 + type-check: 0.4.0 + + light-my-request@6.5.1: + dependencies: + cookie: 1.0.2 + process-warning: 4.0.1 + set-cookie-parser: 2.7.1 + + lilconfig@3.1.3: {} + + lines-and-columns@1.2.4: {} + + load-tsconfig@0.2.5: {} + + local-pkg@1.0.0: + dependencies: + mlly: 1.7.4 + pkg-types: 1.3.1 + + locate-path@5.0.0: + dependencies: + p-locate: 4.1.0 + + locate-path@6.0.0: + dependencies: + p-locate: 5.0.0 + + lodash-es@4.17.21: {} + + lodash.merge@4.6.2: {} + + lodash.sortby@4.7.0: {} + + lodash.startcase@4.4.0: {} + + lodash@4.17.21: {} + + longest-streak@3.1.0: {} + + loose-envify@1.4.0: + dependencies: + js-tokens: 4.0.0 + + lru-cache@10.4.3: {} + + lru-cache@6.0.0: + dependencies: + yallist: 4.0.0 + + lru-cache@7.18.3: {} + + markdown-extensions@2.0.0: {} + + markdown-table@3.0.4: {} + + marked@13.0.3: {} + + math-intrinsics@1.1.0: {} + + mathjax-full@3.2.2: + dependencies: + esm: 3.2.25 + mhchemparser: 4.2.1 + mj-context-menu: 0.6.1 + speech-rule-engine: 4.0.7 + + mdast-util-find-and-replace@3.0.2: + dependencies: + '@types/mdast': 4.0.4 + escape-string-regexp: 5.0.0 + unist-util-is: 6.0.0 + unist-util-visit-parents: 6.0.1 + + mdast-util-from-markdown@2.0.2: + dependencies: + '@types/mdast': 4.0.4 + '@types/unist': 3.0.3 + decode-named-character-reference: 1.0.2 + devlop: 1.1.0 + mdast-util-to-string: 4.0.0 + micromark: 4.0.1 + micromark-util-decode-numeric-character-reference: 2.0.2 + micromark-util-decode-string: 2.0.1 + micromark-util-normalize-identifier: 2.0.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.1 + unist-util-stringify-position: 4.0.0 + transitivePeerDependencies: + - supports-color + + mdast-util-frontmatter@2.0.1: + dependencies: + '@types/mdast': 4.0.4 + devlop: 1.1.0 + escape-string-regexp: 5.0.0 + mdast-util-from-markdown: 2.0.2 + mdast-util-to-markdown: 2.1.2 + micromark-extension-frontmatter: 2.0.0 + transitivePeerDependencies: + - supports-color + + mdast-util-gfm-autolink-literal@2.0.1: + dependencies: + '@types/mdast': 4.0.4 + ccount: 2.0.1 + devlop: 1.1.0 + mdast-util-find-and-replace: 3.0.2 + micromark-util-character: 2.1.1 + + mdast-util-gfm-footnote@2.0.0: + dependencies: + '@types/mdast': 4.0.4 + devlop: 1.1.0 + mdast-util-from-markdown: 2.0.2 + mdast-util-to-markdown: 2.1.2 + micromark-util-normalize-identifier: 2.0.1 + transitivePeerDependencies: + - supports-color + + mdast-util-gfm-strikethrough@2.0.0: + dependencies: + '@types/mdast': 4.0.4 + mdast-util-from-markdown: 2.0.2 + mdast-util-to-markdown: 2.1.2 + transitivePeerDependencies: + - supports-color + + mdast-util-gfm-table@2.0.0: + dependencies: + '@types/mdast': 4.0.4 + devlop: 1.1.0 + markdown-table: 3.0.4 + mdast-util-from-markdown: 2.0.2 + mdast-util-to-markdown: 2.1.2 + transitivePeerDependencies: + - supports-color + + mdast-util-gfm-task-list-item@2.0.0: + dependencies: + '@types/mdast': 4.0.4 + devlop: 1.1.0 + mdast-util-from-markdown: 2.0.2 + mdast-util-to-markdown: 2.1.2 + transitivePeerDependencies: + - supports-color + + mdast-util-gfm@3.0.0: + dependencies: + mdast-util-from-markdown: 2.0.2 + mdast-util-gfm-autolink-literal: 2.0.1 + mdast-util-gfm-footnote: 2.0.0 + mdast-util-gfm-strikethrough: 2.0.0 + mdast-util-gfm-table: 2.0.0 + mdast-util-gfm-task-list-item: 2.0.0 + mdast-util-to-markdown: 2.1.2 + transitivePeerDependencies: + - supports-color + + mdast-util-math@3.0.0: + dependencies: + '@types/hast': 3.0.4 + '@types/mdast': 4.0.4 + devlop: 1.1.0 + longest-streak: 3.1.0 + mdast-util-from-markdown: 2.0.2 + mdast-util-to-markdown: 2.1.2 + unist-util-remove-position: 5.0.0 + transitivePeerDependencies: + - supports-color + + mdast-util-mdx-expression@2.0.1: + dependencies: + '@types/estree-jsx': 1.0.5 + '@types/hast': 3.0.4 + '@types/mdast': 4.0.4 + devlop: 1.1.0 + mdast-util-from-markdown: 2.0.2 + mdast-util-to-markdown: 2.1.2 + transitivePeerDependencies: + - supports-color + + mdast-util-mdx-jsx@3.2.0: + dependencies: + '@types/estree-jsx': 1.0.5 + '@types/hast': 3.0.4 + '@types/mdast': 4.0.4 + '@types/unist': 3.0.3 + ccount: 2.0.1 + devlop: 1.1.0 + mdast-util-from-markdown: 2.0.2 + mdast-util-to-markdown: 2.1.2 + parse-entities: 4.0.2 + stringify-entities: 4.0.4 + unist-util-stringify-position: 4.0.0 + vfile-message: 4.0.2 + transitivePeerDependencies: + - supports-color + + mdast-util-mdx@3.0.0: + dependencies: + mdast-util-from-markdown: 2.0.2 + mdast-util-mdx-expression: 2.0.1 + mdast-util-mdx-jsx: 3.2.0 + mdast-util-mdxjs-esm: 2.0.1 + mdast-util-to-markdown: 2.1.2 + transitivePeerDependencies: + - supports-color + + mdast-util-mdxjs-esm@2.0.1: + dependencies: + '@types/estree-jsx': 1.0.5 + '@types/hast': 3.0.4 + '@types/mdast': 4.0.4 + devlop: 1.1.0 + mdast-util-from-markdown: 2.0.2 + mdast-util-to-markdown: 2.1.2 + transitivePeerDependencies: + - supports-color + + mdast-util-phrasing@4.1.0: + dependencies: + '@types/mdast': 4.0.4 + unist-util-is: 6.0.0 + + mdast-util-to-hast@13.2.0: + dependencies: + '@types/hast': 3.0.4 + '@types/mdast': 4.0.4 + '@ungap/structured-clone': 1.3.0 + devlop: 1.1.0 + micromark-util-sanitize-uri: 2.0.1 + trim-lines: 3.0.1 + unist-util-position: 5.0.0 + unist-util-visit: 5.0.0 + vfile: 6.0.3 + + mdast-util-to-markdown@2.1.2: + dependencies: + '@types/mdast': 4.0.4 + '@types/unist': 3.0.3 + longest-streak: 3.1.0 + mdast-util-phrasing: 4.1.0 + mdast-util-to-string: 4.0.0 + micromark-util-classify-character: 2.0.1 + micromark-util-decode-string: 2.0.1 + unist-util-visit: 5.0.0 + zwitch: 2.0.4 + + mdast-util-to-string@4.0.0: + dependencies: + '@types/mdast': 4.0.4 + + merge-stream@2.0.0: {} + + merge2@1.4.1: {} + + mermaid@11.4.1: + dependencies: + '@braintree/sanitize-url': 7.1.1 + '@iconify/utils': 2.3.0 + '@mermaid-js/parser': 0.3.0 + '@types/d3': 7.4.3 + cytoscape: 3.31.0 + cytoscape-cose-bilkent: 4.1.0(cytoscape@3.31.0) + cytoscape-fcose: 2.2.0(cytoscape@3.31.0) + d3: 7.9.0 + d3-sankey: 0.12.3 + dagre-d3-es: 7.0.11 + dayjs: 1.11.13 + dompurify: 3.2.4 + katex: 0.16.21 + khroma: 2.1.0 + lodash-es: 4.17.21 + marked: 13.0.3 + roughjs: 4.6.6 + stylis: 4.3.6 + ts-dedent: 2.2.0 + uuid: 9.0.1 + transitivePeerDependencies: + - supports-color + + mhchemparser@4.2.1: {} + + micromark-core-commonmark@2.0.2: + dependencies: + decode-named-character-reference: 1.0.2 + devlop: 1.1.0 + micromark-factory-destination: 2.0.1 + micromark-factory-label: 2.0.1 + micromark-factory-space: 2.0.1 + micromark-factory-title: 2.0.1 + micromark-factory-whitespace: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-chunked: 2.0.1 + micromark-util-classify-character: 2.0.1 + micromark-util-html-tag-name: 2.0.1 + micromark-util-normalize-identifier: 2.0.1 + micromark-util-resolve-all: 2.0.1 + micromark-util-subtokenize: 2.0.4 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.1 + + micromark-extension-frontmatter@2.0.0: + dependencies: + fault: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.1 + + micromark-extension-gfm-autolink-literal@2.1.0: + dependencies: + micromark-util-character: 2.1.1 + micromark-util-sanitize-uri: 2.0.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.1 + + micromark-extension-gfm-footnote@2.1.0: + dependencies: + devlop: 1.1.0 + micromark-core-commonmark: 2.0.2 + micromark-factory-space: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-normalize-identifier: 2.0.1 + micromark-util-sanitize-uri: 2.0.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.1 + + micromark-extension-gfm-strikethrough@2.1.0: + dependencies: + devlop: 1.1.0 + micromark-util-chunked: 2.0.1 + micromark-util-classify-character: 2.0.1 + micromark-util-resolve-all: 2.0.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.1 + + micromark-extension-gfm-table@2.1.1: + dependencies: + devlop: 1.1.0 + micromark-factory-space: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.1 + + micromark-extension-gfm-tagfilter@2.0.0: + dependencies: + micromark-util-types: 2.0.1 + + micromark-extension-gfm-task-list-item@2.1.0: + dependencies: + devlop: 1.1.0 + micromark-factory-space: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.1 + + micromark-extension-gfm@3.0.0: + dependencies: + micromark-extension-gfm-autolink-literal: 2.1.0 + micromark-extension-gfm-footnote: 2.1.0 + micromark-extension-gfm-strikethrough: 2.1.0 + micromark-extension-gfm-table: 2.1.1 + micromark-extension-gfm-tagfilter: 2.0.0 + micromark-extension-gfm-task-list-item: 2.1.0 + micromark-util-combine-extensions: 2.0.1 + micromark-util-types: 2.0.1 + + micromark-extension-math@3.1.0: + dependencies: + '@types/katex': 0.16.7 + devlop: 1.1.0 + katex: 0.16.21 + micromark-factory-space: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.1 + + micromark-extension-mdx-expression@3.0.0: + dependencies: + '@types/estree': 1.0.6 + devlop: 1.1.0 + micromark-factory-mdx-expression: 2.0.2 + micromark-factory-space: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-events-to-acorn: 2.0.2 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.1 + + micromark-extension-mdx-jsx@3.0.1: + dependencies: + '@types/acorn': 4.0.6 + '@types/estree': 1.0.6 + devlop: 1.1.0 + estree-util-is-identifier-name: 3.0.0 + micromark-factory-mdx-expression: 2.0.2 + micromark-factory-space: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-events-to-acorn: 2.0.2 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.1 + vfile-message: 4.0.2 + + micromark-extension-mdx-md@2.0.0: + dependencies: + micromark-util-types: 2.0.1 + + micromark-extension-mdxjs-esm@3.0.0: + dependencies: + '@types/estree': 1.0.6 + devlop: 1.1.0 + micromark-core-commonmark: 2.0.2 + micromark-util-character: 2.1.1 + micromark-util-events-to-acorn: 2.0.2 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.1 + unist-util-position-from-estree: 2.0.0 + vfile-message: 4.0.2 + + micromark-extension-mdxjs@3.0.0: + dependencies: + acorn: 8.14.0 + acorn-jsx: 5.3.2(acorn@8.14.0) + micromark-extension-mdx-expression: 3.0.0 + micromark-extension-mdx-jsx: 3.0.1 + micromark-extension-mdx-md: 2.0.0 + micromark-extension-mdxjs-esm: 3.0.0 + micromark-util-combine-extensions: 2.0.1 + micromark-util-types: 2.0.1 + + micromark-factory-destination@2.0.1: + dependencies: + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.1 + + micromark-factory-label@2.0.1: + dependencies: + devlop: 1.1.0 + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.1 + + micromark-factory-mdx-expression@2.0.2: + dependencies: + '@types/estree': 1.0.6 + devlop: 1.1.0 + micromark-factory-space: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-events-to-acorn: 2.0.2 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.1 + unist-util-position-from-estree: 2.0.0 + vfile-message: 4.0.2 + + micromark-factory-space@2.0.1: + dependencies: + micromark-util-character: 2.1.1 + micromark-util-types: 2.0.1 + + micromark-factory-title@2.0.1: + dependencies: + micromark-factory-space: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.1 + + micromark-factory-whitespace@2.0.1: + dependencies: + micromark-factory-space: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.1 + + micromark-util-character@2.1.1: + dependencies: + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.1 + + micromark-util-chunked@2.0.1: + dependencies: + micromark-util-symbol: 2.0.1 + + micromark-util-classify-character@2.0.1: + dependencies: + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.1 + + micromark-util-combine-extensions@2.0.1: + dependencies: + micromark-util-chunked: 2.0.1 + micromark-util-types: 2.0.1 + + micromark-util-decode-numeric-character-reference@2.0.2: + dependencies: + micromark-util-symbol: 2.0.1 + + micromark-util-decode-string@2.0.1: + dependencies: + decode-named-character-reference: 1.0.2 + micromark-util-character: 2.1.1 + micromark-util-decode-numeric-character-reference: 2.0.2 + micromark-util-symbol: 2.0.1 + + micromark-util-encode@2.0.1: {} + + micromark-util-events-to-acorn@2.0.2: + dependencies: + '@types/acorn': 4.0.6 + '@types/estree': 1.0.6 + '@types/unist': 3.0.3 + devlop: 1.1.0 + estree-util-visit: 2.0.0 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.1 + vfile-message: 4.0.2 + + micromark-util-html-tag-name@2.0.1: {} + + micromark-util-normalize-identifier@2.0.1: + dependencies: + micromark-util-symbol: 2.0.1 + + micromark-util-resolve-all@2.0.1: + dependencies: + micromark-util-types: 2.0.1 + + micromark-util-sanitize-uri@2.0.1: + dependencies: + micromark-util-character: 2.1.1 + micromark-util-encode: 2.0.1 + micromark-util-symbol: 2.0.1 + + micromark-util-subtokenize@2.0.4: + dependencies: + devlop: 1.1.0 + micromark-util-chunked: 2.0.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.1 + + micromark-util-symbol@2.0.1: {} + + micromark-util-types@2.0.1: {} + + micromark@4.0.1: + dependencies: + '@types/debug': 4.1.12 + debug: 4.4.0 + decode-named-character-reference: 1.0.2 + devlop: 1.1.0 + micromark-core-commonmark: 2.0.2 + micromark-factory-space: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-chunked: 2.0.1 + micromark-util-combine-extensions: 2.0.1 + micromark-util-decode-numeric-character-reference: 2.0.2 + micromark-util-encode: 2.0.1 + micromark-util-normalize-identifier: 2.0.1 + micromark-util-resolve-all: 2.0.1 + micromark-util-sanitize-uri: 2.0.1 + micromark-util-subtokenize: 2.0.4 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.1 + transitivePeerDependencies: + - supports-color + + micromatch@4.0.8: + dependencies: + braces: 3.0.3 + picomatch: 2.3.1 + + mime-db@1.33.0: {} + + mime-db@1.52.0: {} + + mime-db@1.53.0: {} + + mime-types@2.1.18: + dependencies: + mime-db: 1.33.0 + + mime-types@2.1.35: + dependencies: + mime-db: 1.52.0 + + mimic-fn@2.1.0: {} + + mimic-fn@4.0.0: {} + + minimatch@3.1.2: + dependencies: + brace-expansion: 1.1.11 + + minimatch@9.0.5: + dependencies: + brace-expansion: 2.0.1 + + minimist@1.2.8: {} + + minipass@7.1.2: {} + + mj-context-menu@0.6.1: {} + + mkdirp@1.0.4: {} + + mlly@1.7.4: + dependencies: + acorn: 8.14.0 + pathe: 2.0.2 + pkg-types: 1.3.1 + ufo: 1.5.4 + + module-details-from-path@1.0.3: {} + + mri@1.2.0: {} + + ms@2.0.0: {} + + ms@2.1.3: {} + + mute-stream@0.0.8: {} + + mz@2.7.0: + dependencies: + any-promise: 1.3.0 + object-assign: 4.1.1 + thenify-all: 1.6.0 + + nanoid@3.3.8: {} + + natural-compare@1.4.0: {} + + needle@2.4.0: + dependencies: + debug: 3.2.7 + iconv-lite: 0.4.24 + sax: 1.4.1 + transitivePeerDependencies: + - supports-color + + negotiator@0.6.3: {} + + negotiator@1.0.0: {} + + netmask@2.0.2: {} + + next-themes@0.4.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1): + dependencies: + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + + next@14.2.15(@playwright/test@1.50.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1): + dependencies: + '@next/env': 14.2.15 + '@swc/helpers': 0.5.5 + busboy: 1.6.0 + caniuse-lite: 1.0.30001698 + graceful-fs: 4.2.11 + postcss: 8.4.31 + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + styled-jsx: 5.1.1(react@18.3.1) + optionalDependencies: + '@next/swc-darwin-arm64': 14.2.15 + '@next/swc-darwin-x64': 14.2.15 + '@next/swc-linux-arm64-gnu': 14.2.15 + '@next/swc-linux-arm64-musl': 14.2.15 + '@next/swc-linux-x64-gnu': 14.2.15 + '@next/swc-linux-x64-musl': 14.2.15 + '@next/swc-win32-arm64-msvc': 14.2.15 + '@next/swc-win32-ia32-msvc': 14.2.15 + '@next/swc-win32-x64-msvc': 14.2.15 + '@playwright/test': 1.50.1 + transitivePeerDependencies: + - '@babel/core' + - babel-plugin-macros + + nextra-theme-docs@3.2.4(next@14.2.15(@playwright/test@1.50.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(nextra@3.2.4(@types/react@18.3.12)(acorn@8.14.0)(next@14.2.15(@playwright/test@1.50.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.3))(react-dom@18.3.1(react@18.3.1))(react@18.3.1): + dependencies: + '@headlessui/react': 2.2.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + clsx: 2.1.1 + escape-string-regexp: 5.0.0 + flexsearch: 0.7.43 + next: 14.2.15(@playwright/test@1.50.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + next-themes: 0.4.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + nextra: 3.2.4(@types/react@18.3.12)(acorn@8.14.0)(next@14.2.15(@playwright/test@1.50.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.3) + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + scroll-into-view-if-needed: 3.1.0 + zod: 3.24.1 + + nextra@3.2.4(@types/react@18.3.12)(acorn@8.14.0)(next@14.2.15(@playwright/test@1.50.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.3): + dependencies: + '@formatjs/intl-localematcher': 0.5.10 + '@headlessui/react': 2.2.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@mdx-js/mdx': 3.1.0(acorn@8.14.0) + '@mdx-js/react': 3.1.0(@types/react@18.3.12)(react@18.3.1) + '@napi-rs/simple-git': 0.1.19 + '@shikijs/twoslash': 1.29.2(typescript@5.7.3) + '@theguild/remark-mermaid': 0.1.3(react@18.3.1) + '@theguild/remark-npm2yarn': 0.3.3 + better-react-mathjax: 2.1.0(react@18.3.1) + clsx: 2.1.1 + estree-util-to-js: 2.0.0 + estree-util-value-to-estree: 3.3.2 + github-slugger: 2.0.0 + graceful-fs: 4.2.11 + gray-matter: 4.0.3 + hast-util-to-estree: 3.1.1 + katex: 0.16.21 + mdast-util-from-markdown: 2.0.2 + mdast-util-gfm: 3.0.0 + mdast-util-to-hast: 13.2.0 + negotiator: 1.0.0 + next: 14.2.15(@playwright/test@1.50.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + p-limit: 6.2.0 + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + rehype-katex: 7.0.1 + rehype-pretty-code: 0.14.0(shiki@1.29.2) + rehype-raw: 7.0.0 + remark-frontmatter: 5.0.0 + remark-gfm: 4.0.0 + remark-math: 6.0.0 + remark-reading-time: 2.0.1 + remark-smartypants: 3.0.2 + shiki: 1.29.2 + slash: 5.1.0 + title: 4.0.1 + unist-util-remove: 4.0.0 + unist-util-visit: 5.0.0 + yaml: 2.7.0 + zod: 3.24.1 + zod-validation-error: 3.4.0(zod@3.24.1) + transitivePeerDependencies: + - '@types/react' + - acorn + - supports-color + - typescript + + nlcst-to-string@4.0.0: + dependencies: + '@types/nlcst': 2.0.3 + + normalize-path@3.0.0: {} + + npm-run-path@4.0.1: + dependencies: + path-key: 3.1.1 + + npm-run-path@5.3.0: + dependencies: + path-key: 4.0.0 + + npm-to-yarn@3.0.1: {} + + nssocket@0.6.0: + dependencies: + eventemitter2: 0.4.14 + lazy: 1.0.11 + + object-assign@4.1.1: {} + + object-inspect@1.13.4: {} + + object-keys@1.1.1: {} + + object.assign@4.1.7: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.3 + define-properties: 1.2.1 + es-object-atoms: 1.1.1 + has-symbols: 1.1.0 + object-keys: 1.1.1 + + object.entries@1.1.8: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + es-object-atoms: 1.1.1 + + object.fromentries@2.0.8: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + es-abstract: 1.23.9 + es-object-atoms: 1.1.1 + + object.values@1.2.1: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.3 + define-properties: 1.2.1 + es-object-atoms: 1.1.1 + + on-exit-leak-free@2.1.2: {} + + on-headers@1.0.2: {} + + once@1.4.0: + dependencies: + wrappy: 1.0.2 + + onetime@5.1.2: + dependencies: + mimic-fn: 2.1.0 + + onetime@6.0.0: + dependencies: + mimic-fn: 4.0.0 + + oniguruma-to-es@2.3.0: + dependencies: + emoji-regex-xs: 1.0.0 + regex: 5.1.1 + regex-recursion: 5.1.1 + + optionator@0.9.4: + dependencies: + deep-is: 0.1.4 + fast-levenshtein: 2.0.6 + levn: 0.4.1 + prelude-ls: 1.2.1 + type-check: 0.4.0 + word-wrap: 1.2.5 + + os-tmpdir@1.0.2: {} + + outdent@0.5.0: {} + + own-keys@1.0.1: + dependencies: + get-intrinsic: 1.2.7 + object-keys: 1.1.1 + safe-push-apply: 1.0.0 + + p-filter@2.1.0: + dependencies: + p-map: 2.1.0 + + p-limit@2.3.0: + dependencies: + p-try: 2.2.0 + + p-limit@3.1.0: + dependencies: + yocto-queue: 0.1.0 + + p-limit@6.2.0: + dependencies: + yocto-queue: 1.1.1 + + p-locate@4.1.0: + dependencies: + p-limit: 2.3.0 + + p-locate@5.0.0: + dependencies: + p-limit: 3.1.0 + + p-map@2.1.0: {} + + p-try@2.2.0: {} + + pac-proxy-agent@7.1.0: + dependencies: + '@tootallnate/quickjs-emscripten': 0.23.0 + agent-base: 7.1.3 + debug: 4.4.0 + get-uri: 6.0.4 + http-proxy-agent: 7.0.2 + https-proxy-agent: 7.0.6 + pac-resolver: 7.0.1 + socks-proxy-agent: 8.0.5 + transitivePeerDependencies: + - supports-color + + pac-resolver@7.0.1: + dependencies: + degenerator: 5.0.1 + netmask: 2.0.2 + + package-json-from-dist@1.0.1: {} + + package-manager-detector@0.2.9: {} + + pako@0.2.9: {} + + parent-module@1.0.1: + dependencies: + callsites: 3.1.0 + + parse-entities@4.0.2: + dependencies: + '@types/unist': 2.0.11 + character-entities-legacy: 3.0.0 + character-reference-invalid: 2.0.1 + decode-named-character-reference: 1.0.2 + is-alphanumerical: 2.0.1 + is-decimal: 2.0.1 + is-hexadecimal: 2.0.1 + + parse-latin@7.0.0: + dependencies: + '@types/nlcst': 2.0.3 + '@types/unist': 3.0.3 + nlcst-to-string: 4.0.0 + unist-util-modify-children: 4.0.0 + unist-util-visit-children: 3.0.0 + vfile: 6.0.3 + + parse-numeric-range@1.3.0: {} + + parse5@7.2.1: + dependencies: + entities: 4.5.0 + + path-data-parser@0.1.0: {} + + path-exists@4.0.0: {} + + path-is-inside@1.0.2: {} + + path-key@3.1.1: {} + + path-key@4.0.0: {} + + path-parse@1.0.7: {} + + path-scurry@1.11.1: + dependencies: + lru-cache: 10.4.3 + minipass: 7.1.2 + + path-to-regexp@3.3.0: {} + + path-type@4.0.0: {} + + pathe@2.0.2: {} + + picocolors@1.1.1: {} + + picomatch@2.3.1: {} + + picomatch@4.0.2: {} + + pidusage@2.0.21: + dependencies: + safe-buffer: 5.2.1 + optional: true + + pidusage@3.0.2: + dependencies: + safe-buffer: 5.2.1 + + pify@4.0.1: {} + + pino-abstract-transport@2.0.0: + dependencies: + split2: 4.2.0 + + pino-pretty@13.0.0: + dependencies: + colorette: 2.0.20 + dateformat: 4.6.3 + fast-copy: 3.0.2 + fast-safe-stringify: 2.1.1 + help-me: 5.0.0 + joycon: 3.1.1 + minimist: 1.2.8 + on-exit-leak-free: 2.1.2 + pino-abstract-transport: 2.0.0 + pump: 3.0.2 + secure-json-parse: 2.7.0 + sonic-boom: 4.2.0 + strip-json-comments: 3.1.1 + + pino-std-serializers@7.0.0: {} + + pino@9.6.0: + dependencies: + atomic-sleep: 1.0.0 + fast-redact: 3.5.0 + on-exit-leak-free: 2.1.2 + pino-abstract-transport: 2.0.0 + pino-std-serializers: 7.0.0 + process-warning: 4.0.1 + quick-format-unescaped: 4.0.4 + real-require: 0.2.0 + safe-stable-stringify: 2.5.0 + sonic-boom: 4.2.0 + thread-stream: 3.1.0 + + pirates@4.0.6: {} + + pkg-types@1.3.1: + dependencies: + confbox: 0.1.8 + mlly: 1.7.4 + pathe: 2.0.2 + + playwright-core@1.50.1: {} + + playwright@1.50.1: + dependencies: + playwright-core: 1.50.1 + optionalDependencies: + fsevents: 2.3.2 + + pm2-axon-rpc@0.7.1: + dependencies: + debug: 4.4.0 + transitivePeerDependencies: + - supports-color + + pm2-axon@4.0.1: + dependencies: + amp: 0.3.1 + amp-message: 0.1.2 + debug: 4.4.0 + escape-string-regexp: 4.0.0 + transitivePeerDependencies: + - supports-color + + pm2-deploy@1.0.2: + dependencies: + run-series: 1.1.9 + tv4: 1.3.0 + + pm2-multimeter@0.1.2: + dependencies: + charm: 0.1.2 + + pm2-sysmonit@1.2.8: + dependencies: + async: 3.2.6 + debug: 4.4.0 + pidusage: 2.0.21 + systeminformation: 5.25.11 + tx2: 1.0.5 + transitivePeerDependencies: + - supports-color + optional: true + + pm2@5.4.3: + dependencies: + '@pm2/agent': 2.0.4 + '@pm2/io': 6.0.1 + '@pm2/js-api': 0.8.0 + '@pm2/pm2-version-check': 1.0.4 + async: 3.2.6 + blessed: 0.1.81 + chalk: 3.0.0 + chokidar: 3.6.0 + cli-tableau: 2.0.1 + commander: 2.15.1 + croner: 4.1.97 + dayjs: 1.11.13 + debug: 4.4.0 + enquirer: 2.3.6 + eventemitter2: 5.0.1 + fclone: 1.0.11 + js-yaml: 4.1.0 + mkdirp: 1.0.4 + needle: 2.4.0 + pidusage: 3.0.2 + pm2-axon: 4.0.1 + pm2-axon-rpc: 0.7.1 + pm2-deploy: 1.0.2 + pm2-multimeter: 0.1.2 + promptly: 2.2.0 + semver: 7.7.1 + source-map-support: 0.5.21 + sprintf-js: 1.1.2 + vizion: 2.2.1 + optionalDependencies: + pm2-sysmonit: 1.2.8 + transitivePeerDependencies: + - bufferutil + - supports-color + - utf-8-validate + + points-on-curve@0.2.0: {} + + points-on-path@0.2.1: + dependencies: + path-data-parser: 0.1.0 + points-on-curve: 0.2.0 + + possible-typed-array-names@1.1.0: {} + + postcss-load-config@6.0.1(postcss@8.4.31)(tsx@4.19.2)(yaml@2.7.0): + dependencies: + lilconfig: 3.1.3 + optionalDependencies: + postcss: 8.4.31 + tsx: 4.19.2 + yaml: 2.7.0 + + postcss@8.4.31: + dependencies: + nanoid: 3.3.8 + picocolors: 1.1.1 + source-map-js: 1.2.1 + + prelude-ls@1.2.1: {} + + prettier-plugin-packagejson@2.5.8(prettier@3.4.2): + dependencies: + sort-package-json: 2.14.0 + synckit: 0.9.2 + optionalDependencies: + prettier: 3.4.2 + + prettier@2.8.8: {} + + prettier@3.4.2: {} + + process-warning@4.0.1: {} + + promptly@2.2.0: + dependencies: + read: 1.0.7 + + prop-types@15.8.1: + dependencies: + loose-envify: 1.4.0 + object-assign: 4.1.1 + react-is: 16.13.1 + + property-information@6.5.0: {} + + proxy-agent@6.3.1: + dependencies: + agent-base: 7.1.3 + debug: 4.4.0 + http-proxy-agent: 7.0.2 + https-proxy-agent: 7.0.6 + lru-cache: 7.18.3 + pac-proxy-agent: 7.1.0 + proxy-from-env: 1.1.0 + socks-proxy-agent: 8.0.5 + transitivePeerDependencies: + - supports-color + + proxy-from-env@1.1.0: {} + + pump@3.0.2: + dependencies: + end-of-stream: 1.4.4 + once: 1.4.0 + + punycode@2.3.1: {} + + queue-microtask@1.2.3: {} + + quick-format-unescaped@4.0.4: {} + + range-parser@1.2.0: {} + + rc@1.2.8: + dependencies: + deep-extend: 0.6.0 + ini: 1.3.8 + minimist: 1.2.8 + strip-json-comments: 2.0.1 + + react-dom@18.3.1(react@18.3.1): + dependencies: + loose-envify: 1.4.0 + react: 18.3.1 + scheduler: 0.23.2 + + react-is@16.13.1: {} + + react@18.3.1: + dependencies: + loose-envify: 1.4.0 + + read-yaml-file@1.1.0: + dependencies: + graceful-fs: 4.2.11 + js-yaml: 3.14.1 + pify: 4.0.1 + strip-bom: 3.0.0 + + read@1.0.7: + dependencies: + mute-stream: 0.0.8 + + readdirp@3.6.0: + dependencies: + picomatch: 2.3.1 + + readdirp@4.1.1: {} + + reading-time@1.5.0: {} + + real-require@0.2.0: {} + + recma-build-jsx@1.0.0: + dependencies: + '@types/estree': 1.0.6 + estree-util-build-jsx: 3.0.1 + vfile: 6.0.3 + + recma-jsx@1.0.0(acorn@8.14.0): + dependencies: + acorn-jsx: 5.3.2(acorn@8.14.0) + estree-util-to-js: 2.0.0 + recma-parse: 1.0.0 + recma-stringify: 1.0.0 + unified: 11.0.5 + transitivePeerDependencies: + - acorn + + recma-parse@1.0.0: + dependencies: + '@types/estree': 1.0.6 + esast-util-from-js: 2.0.1 + unified: 11.0.5 + vfile: 6.0.3 + + recma-stringify@1.0.0: + dependencies: + '@types/estree': 1.0.6 + estree-util-to-js: 2.0.0 + unified: 11.0.5 + vfile: 6.0.3 + + redis@4.7.0: + dependencies: + '@redis/bloom': 1.2.0(@redis/client@1.6.0) + '@redis/client': 1.6.0 + '@redis/graph': 1.1.1(@redis/client@1.6.0) + '@redis/json': 1.0.7(@redis/client@1.6.0) + '@redis/search': 1.2.0(@redis/client@1.6.0) + '@redis/time-series': 1.1.0(@redis/client@1.6.0) + + reflect.getprototypeof@1.0.10: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + es-abstract: 1.23.9 + es-errors: 1.3.0 + es-object-atoms: 1.1.1 + get-intrinsic: 1.2.7 + get-proto: 1.0.1 + which-builtin-type: 1.2.1 + + regenerator-runtime@0.14.1: {} + + regex-recursion@5.1.1: + dependencies: + regex: 5.1.1 + regex-utilities: 2.3.0 + + regex-utilities@2.3.0: {} + + regex@5.1.1: + dependencies: + regex-utilities: 2.3.0 + + regexp.prototype.flags@1.5.4: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + es-errors: 1.3.0 + get-proto: 1.0.1 + gopd: 1.2.0 + set-function-name: 2.0.2 + + registry-auth-token@3.3.2: + dependencies: + rc: 1.2.8 + safe-buffer: 5.2.1 + + registry-url@3.1.0: + dependencies: + rc: 1.2.8 + + rehype-katex@7.0.1: + dependencies: + '@types/hast': 3.0.4 + '@types/katex': 0.16.7 + hast-util-from-html-isomorphic: 2.0.0 + hast-util-to-text: 4.0.2 + katex: 0.16.21 + unist-util-visit-parents: 6.0.1 + vfile: 6.0.3 + + rehype-parse@9.0.1: + dependencies: + '@types/hast': 3.0.4 + hast-util-from-html: 2.0.3 + unified: 11.0.5 + + rehype-pretty-code@0.14.0(shiki@1.29.2): + dependencies: + '@types/hast': 3.0.4 + hast-util-to-string: 3.0.1 + parse-numeric-range: 1.3.0 + rehype-parse: 9.0.1 + shiki: 1.29.2 + unified: 11.0.5 + unist-util-visit: 5.0.0 + + rehype-raw@7.0.0: + dependencies: + '@types/hast': 3.0.4 + hast-util-raw: 9.1.0 + vfile: 6.0.3 + + rehype-recma@1.0.0: + dependencies: + '@types/estree': 1.0.6 + '@types/hast': 3.0.4 + hast-util-to-estree: 3.1.1 + transitivePeerDependencies: + - supports-color + + remark-frontmatter@5.0.0: + dependencies: + '@types/mdast': 4.0.4 + mdast-util-frontmatter: 2.0.1 + micromark-extension-frontmatter: 2.0.0 + unified: 11.0.5 + transitivePeerDependencies: + - supports-color + + remark-gfm@4.0.0: + dependencies: + '@types/mdast': 4.0.4 + mdast-util-gfm: 3.0.0 + micromark-extension-gfm: 3.0.0 + remark-parse: 11.0.0 + remark-stringify: 11.0.0 + unified: 11.0.5 + transitivePeerDependencies: + - supports-color + + remark-math@6.0.0: + dependencies: + '@types/mdast': 4.0.4 + mdast-util-math: 3.0.0 + micromark-extension-math: 3.1.0 + unified: 11.0.5 + transitivePeerDependencies: + - supports-color + + remark-mdx@3.1.0: + dependencies: + mdast-util-mdx: 3.0.0 + micromark-extension-mdxjs: 3.0.0 + transitivePeerDependencies: + - supports-color + + remark-parse@11.0.0: + dependencies: + '@types/mdast': 4.0.4 + mdast-util-from-markdown: 2.0.2 + micromark-util-types: 2.0.1 + unified: 11.0.5 + transitivePeerDependencies: + - supports-color + + remark-reading-time@2.0.1: + dependencies: + estree-util-is-identifier-name: 2.1.0 + estree-util-value-to-estree: 1.3.0 + reading-time: 1.5.0 + unist-util-visit: 3.1.0 + + remark-rehype@11.1.1: + dependencies: + '@types/hast': 3.0.4 + '@types/mdast': 4.0.4 + mdast-util-to-hast: 13.2.0 + unified: 11.0.5 + vfile: 6.0.3 + + remark-smartypants@3.0.2: + dependencies: + retext: 9.0.0 + retext-smartypants: 6.2.0 + unified: 11.0.5 + unist-util-visit: 5.0.0 + + remark-stringify@11.0.0: + dependencies: + '@types/mdast': 4.0.4 + mdast-util-to-markdown: 2.1.2 + unified: 11.0.5 + + require-from-string@2.0.2: {} + + require-in-the-middle@5.2.0: + dependencies: + debug: 4.4.0 + module-details-from-path: 1.0.3 + resolve: 1.22.10 + transitivePeerDependencies: + - supports-color + + resolve-from@4.0.0: {} + + resolve-from@5.0.0: {} + + resolve-pkg-maps@1.0.0: {} + + resolve@1.22.10: + dependencies: + is-core-module: 2.16.1 + path-parse: 1.0.7 + supports-preserve-symlinks-flag: 1.0.0 + + resolve@2.0.0-next.5: + dependencies: + is-core-module: 2.16.1 + path-parse: 1.0.7 + supports-preserve-symlinks-flag: 1.0.0 + + ret@0.5.0: {} + + retext-latin@4.0.0: + dependencies: + '@types/nlcst': 2.0.3 + parse-latin: 7.0.0 + unified: 11.0.5 + + retext-smartypants@6.2.0: + dependencies: + '@types/nlcst': 2.0.3 + nlcst-to-string: 4.0.0 + unist-util-visit: 5.0.0 + + retext-stringify@4.0.0: + dependencies: + '@types/nlcst': 2.0.3 + nlcst-to-string: 4.0.0 + unified: 11.0.5 + + retext@9.0.0: + dependencies: + '@types/nlcst': 2.0.3 + retext-latin: 4.0.0 + retext-stringify: 4.0.0 + unified: 11.0.5 + + reusify@1.0.4: {} + + rfdc@1.4.1: {} + + robust-predicates@3.0.2: {} + + rollup@4.34.6: + dependencies: + '@types/estree': 1.0.6 + optionalDependencies: + '@rollup/rollup-android-arm-eabi': 4.34.6 + '@rollup/rollup-android-arm64': 4.34.6 + '@rollup/rollup-darwin-arm64': 4.34.6 + '@rollup/rollup-darwin-x64': 4.34.6 + '@rollup/rollup-freebsd-arm64': 4.34.6 + '@rollup/rollup-freebsd-x64': 4.34.6 + '@rollup/rollup-linux-arm-gnueabihf': 4.34.6 + '@rollup/rollup-linux-arm-musleabihf': 4.34.6 + '@rollup/rollup-linux-arm64-gnu': 4.34.6 + '@rollup/rollup-linux-arm64-musl': 4.34.6 + '@rollup/rollup-linux-loongarch64-gnu': 4.34.6 + '@rollup/rollup-linux-powerpc64le-gnu': 4.34.6 + '@rollup/rollup-linux-riscv64-gnu': 4.34.6 + '@rollup/rollup-linux-s390x-gnu': 4.34.6 + '@rollup/rollup-linux-x64-gnu': 4.34.6 + '@rollup/rollup-linux-x64-musl': 4.34.6 + '@rollup/rollup-win32-arm64-msvc': 4.34.6 + '@rollup/rollup-win32-ia32-msvc': 4.34.6 + '@rollup/rollup-win32-x64-msvc': 4.34.6 + fsevents: 2.3.3 + + roughjs@4.6.6: + dependencies: + hachure-fill: 0.5.2 + path-data-parser: 0.1.0 + points-on-curve: 0.2.0 + points-on-path: 0.2.1 + + run-parallel@1.2.0: + dependencies: + queue-microtask: 1.2.3 + + run-series@1.1.9: {} + + rw@1.3.3: {} + + safe-array-concat@1.1.3: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.3 + get-intrinsic: 1.2.7 + has-symbols: 1.1.0 + isarray: 2.0.5 + + safe-buffer@5.1.2: {} + + safe-buffer@5.2.1: {} + + safe-push-apply@1.0.0: + dependencies: + es-errors: 1.3.0 + isarray: 2.0.5 + + safe-regex-test@1.1.0: + dependencies: + call-bound: 1.0.3 + es-errors: 1.3.0 + is-regex: 1.2.1 + + safe-regex2@4.0.1: + dependencies: + ret: 0.5.0 + + safe-stable-stringify@2.5.0: {} + + safer-buffer@2.1.2: {} + + sax@1.4.1: {} + + scheduler@0.23.2: + dependencies: + loose-envify: 1.4.0 + + scroll-into-view-if-needed@3.1.0: + dependencies: + compute-scroll-into-view: 3.1.1 + + section-matter@1.0.0: + dependencies: + extend-shallow: 2.0.1 + kind-of: 6.0.3 + + secure-json-parse@2.7.0: {} + + secure-json-parse@3.0.2: {} + + semver@6.3.1: {} + + semver@7.5.4: + dependencies: + lru-cache: 6.0.0 + + semver@7.7.1: {} + + serve-handler@6.1.6: + dependencies: + bytes: 3.0.0 + content-disposition: 0.5.2 + mime-types: 2.1.18 + minimatch: 3.1.2 + path-is-inside: 1.0.2 + path-to-regexp: 3.3.0 + range-parser: 1.2.0 + + serve@14.2.4: + dependencies: + '@zeit/schemas': 2.36.0 + ajv: 8.12.0 + arg: 5.0.2 + boxen: 7.0.0 + chalk: 5.0.1 + chalk-template: 0.4.0 + clipboardy: 3.0.0 + compression: 1.7.4 + is-port-reachable: 4.0.0 + serve-handler: 6.1.6 + update-check: 1.5.4 + transitivePeerDependencies: + - supports-color + + set-cookie-parser@2.7.1: {} + + set-function-length@1.2.2: + dependencies: + define-data-property: 1.1.4 + es-errors: 1.3.0 + function-bind: 1.1.2 + get-intrinsic: 1.2.7 + gopd: 1.2.0 + has-property-descriptors: 1.0.2 + + set-function-name@2.0.2: + dependencies: + define-data-property: 1.1.4 + es-errors: 1.3.0 + functions-have-names: 1.2.3 + has-property-descriptors: 1.0.2 + + set-proto@1.0.0: + dependencies: + dunder-proto: 1.0.1 + es-errors: 1.3.0 + es-object-atoms: 1.1.1 + + shebang-command@2.0.0: + dependencies: + shebang-regex: 3.0.0 + + shebang-regex@3.0.0: {} + + shiki@1.29.2: + dependencies: + '@shikijs/core': 1.29.2 + '@shikijs/engine-javascript': 1.29.2 + '@shikijs/engine-oniguruma': 1.29.2 + '@shikijs/langs': 1.29.2 + '@shikijs/themes': 1.29.2 + '@shikijs/types': 1.29.2 + '@shikijs/vscode-textmate': 10.0.1 + '@types/hast': 3.0.4 + + shimmer@1.2.1: {} + + side-channel-list@1.0.0: + dependencies: + es-errors: 1.3.0 + object-inspect: 1.13.4 + + side-channel-map@1.0.1: + dependencies: + call-bound: 1.0.3 + es-errors: 1.3.0 + get-intrinsic: 1.2.7 + object-inspect: 1.13.4 + + side-channel-weakmap@1.0.2: + dependencies: + call-bound: 1.0.3 + es-errors: 1.3.0 + get-intrinsic: 1.2.7 + object-inspect: 1.13.4 + side-channel-map: 1.0.1 + + side-channel@1.1.0: + dependencies: + es-errors: 1.3.0 + object-inspect: 1.13.4 + side-channel-list: 1.0.0 + side-channel-map: 1.0.1 + side-channel-weakmap: 1.0.2 + + signal-exit@3.0.7: {} + + signal-exit@4.1.0: {} + + slash@3.0.0: {} + + slash@5.1.0: {} + + smart-buffer@4.2.0: {} + + socks-proxy-agent@8.0.5: + dependencies: + agent-base: 7.1.3 + debug: 4.4.0 + socks: 2.8.3 + transitivePeerDependencies: + - supports-color + + socks@2.8.3: + dependencies: + ip-address: 9.0.5 + smart-buffer: 4.2.0 + + sonic-boom@4.2.0: + dependencies: + atomic-sleep: 1.0.0 + + sort-object-keys@1.1.3: {} + + sort-package-json@2.14.0: + dependencies: + detect-indent: 7.0.1 + detect-newline: 4.0.1 + get-stdin: 9.0.0 + git-hooks-list: 3.2.0 + is-plain-obj: 4.1.0 + semver: 7.7.1 + sort-object-keys: 1.1.3 + tinyglobby: 0.2.10 + + source-map-js@1.2.1: {} + + source-map-support@0.5.21: + dependencies: + buffer-from: 1.1.2 + source-map: 0.6.1 + + source-map@0.6.1: {} + + source-map@0.7.4: {} + + source-map@0.8.0-beta.0: + dependencies: + whatwg-url: 7.1.0 + + space-separated-tokens@2.0.2: {} + + spawndamnit@3.0.1: + dependencies: + cross-spawn: 7.0.6 + signal-exit: 4.1.0 + + speech-rule-engine@4.0.7: + dependencies: + commander: 9.2.0 + wicked-good-xpath: 1.3.0 + xmldom-sre: 0.1.31 + + split2@4.2.0: {} + + sprintf-js@1.0.3: {} + + sprintf-js@1.1.2: {} + + sprintf-js@1.1.3: {} + + streamsearch@1.1.0: {} + + string-width@4.2.3: + dependencies: + emoji-regex: 8.0.0 + is-fullwidth-code-point: 3.0.0 + strip-ansi: 6.0.1 + + string-width@5.1.2: + dependencies: + eastasianwidth: 0.2.0 + emoji-regex: 9.2.2 + strip-ansi: 7.1.0 + + string.prototype.matchall@4.0.12: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.3 + define-properties: 1.2.1 + es-abstract: 1.23.9 + es-errors: 1.3.0 + es-object-atoms: 1.1.1 + get-intrinsic: 1.2.7 + gopd: 1.2.0 + has-symbols: 1.1.0 + internal-slot: 1.1.0 + regexp.prototype.flags: 1.5.4 + set-function-name: 2.0.2 + side-channel: 1.1.0 + + string.prototype.repeat@1.0.0: + dependencies: + define-properties: 1.2.1 + es-abstract: 1.23.9 + + string.prototype.trim@1.2.10: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.3 + define-data-property: 1.1.4 + define-properties: 1.2.1 + es-abstract: 1.23.9 + es-object-atoms: 1.1.1 + has-property-descriptors: 1.0.2 + + string.prototype.trimend@1.0.9: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.3 + define-properties: 1.2.1 + es-object-atoms: 1.1.1 + + string.prototype.trimstart@1.0.8: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + es-object-atoms: 1.1.1 + + stringify-entities@4.0.4: + dependencies: + character-entities-html4: 2.1.0 + character-entities-legacy: 3.0.0 + + strip-ansi@6.0.1: + dependencies: + ansi-regex: 5.0.1 + + strip-ansi@7.1.0: + dependencies: + ansi-regex: 6.1.0 + + strip-bom-string@1.0.0: {} + + strip-bom@3.0.0: {} + + strip-final-newline@2.0.0: {} + + strip-final-newline@3.0.0: {} + + strip-json-comments@2.0.1: {} + + strip-json-comments@3.1.1: {} + + style-to-object@1.0.8: + dependencies: + inline-style-parser: 0.2.4 + + styled-jsx@5.1.1(react@18.3.1): + dependencies: + client-only: 0.0.1 + react: 18.3.1 + + stylis@4.3.6: {} + + sucrase@3.35.0: + dependencies: + '@jridgewell/gen-mapping': 0.3.8 + commander: 4.1.1 + glob: 10.4.5 + lines-and-columns: 1.2.4 + mz: 2.7.0 + pirates: 4.0.6 + ts-interface-checker: 0.1.13 + + supports-color@7.2.0: + dependencies: + has-flag: 4.0.0 + + supports-preserve-symlinks-flag@1.0.0: {} + + synckit@0.9.2: + dependencies: + '@pkgr/core': 0.1.1 + tslib: 2.8.1 + + system-architecture@0.1.0: {} + + systeminformation@5.25.11: + optional: true + + tabbable@6.2.0: {} + + term-size@2.2.1: {} + + thenify-all@1.6.0: + dependencies: + thenify: 3.3.1 + + thenify@3.3.1: + dependencies: + any-promise: 1.3.0 + + thread-stream@3.1.0: + dependencies: + real-require: 0.2.0 + + tinyexec@0.3.2: {} + + tinyglobby@0.2.10: + dependencies: + fdir: 6.4.3(picomatch@4.0.2) + picomatch: 4.0.2 + + title@4.0.1: + dependencies: + arg: 5.0.2 + chalk: 5.4.1 + clipboardy: 4.0.0 + + tmp@0.0.33: + dependencies: + os-tmpdir: 1.0.2 + + to-regex-range@5.0.1: + dependencies: + is-number: 7.0.0 + + toad-cache@3.7.0: {} + + tr46@1.0.1: + dependencies: + punycode: 2.3.1 + + tree-kill@1.2.2: {} + + trim-lines@3.0.1: {} + + trough@2.2.0: {} + + ts-api-utils@2.0.1(typescript@5.7.3): + dependencies: + typescript: 5.7.3 + + ts-dedent@2.2.0: {} + + ts-interface-checker@0.1.13: {} + + tslib@1.9.3: {} + + tslib@2.8.1: {} + + tsup@8.3.6(postcss@8.4.31)(tsx@4.19.2)(typescript@5.7.3)(yaml@2.7.0): + dependencies: + bundle-require: 5.1.0(esbuild@0.24.2) + cac: 6.7.14 + chokidar: 4.0.3 + consola: 3.4.0 + debug: 4.4.0 + esbuild: 0.24.2 + joycon: 3.1.1 + picocolors: 1.1.1 + postcss-load-config: 6.0.1(postcss@8.4.31)(tsx@4.19.2)(yaml@2.7.0) + resolve-from: 5.0.0 + rollup: 4.34.6 + source-map: 0.8.0-beta.0 + sucrase: 3.35.0 + tinyexec: 0.3.2 + tinyglobby: 0.2.10 + tree-kill: 1.2.2 + optionalDependencies: + postcss: 8.4.31 + typescript: 5.7.3 + transitivePeerDependencies: + - jiti + - supports-color + - tsx + - yaml + + tsx@4.19.2: + dependencies: + esbuild: 0.23.1 + get-tsconfig: 4.10.0 + optionalDependencies: + fsevents: 2.3.3 + + turbo-darwin-64@2.4.0: + optional: true + + turbo-darwin-arm64@2.4.0: + optional: true + + turbo-linux-64@2.4.0: + optional: true + + turbo-linux-arm64@2.4.0: + optional: true + + turbo-windows-64@2.4.0: + optional: true + + turbo-windows-arm64@2.4.0: + optional: true + + turbo@2.4.0: + optionalDependencies: + turbo-darwin-64: 2.4.0 + turbo-darwin-arm64: 2.4.0 + turbo-linux-64: 2.4.0 + turbo-linux-arm64: 2.4.0 + turbo-windows-64: 2.4.0 + turbo-windows-arm64: 2.4.0 + + tv4@1.3.0: {} + + twoslash-protocol@0.2.12: {} + + twoslash@0.2.12(typescript@5.7.3): + dependencies: + '@typescript/vfs': 1.6.1(typescript@5.7.3) + twoslash-protocol: 0.2.12 + typescript: 5.7.3 + transitivePeerDependencies: + - supports-color + + tx2@1.0.5: + dependencies: + json-stringify-safe: 5.0.1 + optional: true + + type-check@0.4.0: + dependencies: + prelude-ls: 1.2.1 + + type-fest@2.19.0: {} + + typed-array-buffer@1.0.3: + dependencies: + call-bound: 1.0.3 + es-errors: 1.3.0 + is-typed-array: 1.1.15 + + typed-array-byte-length@1.0.3: + dependencies: + call-bind: 1.0.8 + for-each: 0.3.4 + gopd: 1.2.0 + has-proto: 1.2.0 + is-typed-array: 1.1.15 + + typed-array-byte-offset@1.0.4: + dependencies: + available-typed-arrays: 1.0.7 + call-bind: 1.0.8 + for-each: 0.3.4 + gopd: 1.2.0 + has-proto: 1.2.0 + is-typed-array: 1.1.15 + reflect.getprototypeof: 1.0.10 + + typed-array-length@1.0.7: + dependencies: + call-bind: 1.0.8 + for-each: 0.3.4 + gopd: 1.2.0 + is-typed-array: 1.1.15 + possible-typed-array-names: 1.1.0 + reflect.getprototypeof: 1.0.10 + + typescript-eslint@8.23.0(eslint@9.20.0)(typescript@5.7.3): + dependencies: + '@typescript-eslint/eslint-plugin': 8.23.0(@typescript-eslint/parser@8.23.0(eslint@9.20.0)(typescript@5.7.3))(eslint@9.20.0)(typescript@5.7.3) + '@typescript-eslint/parser': 8.23.0(eslint@9.20.0)(typescript@5.7.3) + '@typescript-eslint/utils': 8.23.0(eslint@9.20.0)(typescript@5.7.3) + eslint: 9.20.0 + typescript: 5.7.3 + transitivePeerDependencies: + - supports-color + + typescript@5.7.3: {} + + ufo@1.5.4: {} + + unbox-primitive@1.1.0: + dependencies: + call-bound: 1.0.3 + has-bigints: 1.1.0 + has-symbols: 1.1.0 + which-boxed-primitive: 1.1.1 + + undici-types@6.20.0: {} + + unified@11.0.5: + dependencies: + '@types/unist': 3.0.3 + bail: 2.0.2 + devlop: 1.1.0 + extend: 3.0.2 + is-plain-obj: 4.1.0 + trough: 2.2.0 + vfile: 6.0.3 + + unist-util-find-after@5.0.0: + dependencies: + '@types/unist': 3.0.3 + unist-util-is: 6.0.0 + + unist-util-is@5.2.1: + dependencies: + '@types/unist': 2.0.11 + + unist-util-is@6.0.0: + dependencies: + '@types/unist': 3.0.3 + + unist-util-modify-children@4.0.0: + dependencies: + '@types/unist': 3.0.3 + array-iterate: 2.0.1 + + unist-util-position-from-estree@2.0.0: + dependencies: + '@types/unist': 3.0.3 + + unist-util-position@5.0.0: + dependencies: + '@types/unist': 3.0.3 + + unist-util-remove-position@5.0.0: + dependencies: + '@types/unist': 3.0.3 + unist-util-visit: 5.0.0 + + unist-util-remove@4.0.0: + dependencies: + '@types/unist': 3.0.3 + unist-util-is: 6.0.0 + unist-util-visit-parents: 6.0.1 + + unist-util-stringify-position@4.0.0: + dependencies: + '@types/unist': 3.0.3 + + unist-util-visit-children@3.0.0: + dependencies: + '@types/unist': 3.0.3 + + unist-util-visit-parents@4.1.1: + dependencies: + '@types/unist': 2.0.11 + unist-util-is: 5.2.1 + + unist-util-visit-parents@6.0.1: + dependencies: + '@types/unist': 3.0.3 + unist-util-is: 6.0.0 + + unist-util-visit@3.1.0: + dependencies: + '@types/unist': 2.0.11 + unist-util-is: 5.2.1 + unist-util-visit-parents: 4.1.1 + + unist-util-visit@5.0.0: + dependencies: + '@types/unist': 3.0.3 + unist-util-is: 6.0.0 + unist-util-visit-parents: 6.0.1 + + universalify@0.1.2: {} + + update-check@1.5.4: + dependencies: + registry-auth-token: 3.3.2 + registry-url: 3.1.0 + + uri-js@4.4.1: + dependencies: + punycode: 2.3.1 + + uuid@9.0.1: {} + + vary@1.1.2: {} + + vfile-location@5.0.3: + dependencies: + '@types/unist': 3.0.3 + vfile: 6.0.3 + + vfile-message@4.0.2: + dependencies: + '@types/unist': 3.0.3 + unist-util-stringify-position: 4.0.0 + + vfile@6.0.3: + dependencies: + '@types/unist': 3.0.3 + vfile-message: 4.0.2 + + vizion@2.2.1: + dependencies: + async: 2.6.4 + git-node-fs: 1.0.0(js-git@0.7.8) + ini: 1.3.8 + js-git: 0.7.8 + + vscode-jsonrpc@8.2.0: {} + + vscode-languageserver-protocol@3.17.5: + dependencies: + vscode-jsonrpc: 8.2.0 + vscode-languageserver-types: 3.17.5 + + vscode-languageserver-textdocument@1.0.12: {} + + vscode-languageserver-types@3.17.5: {} + + vscode-languageserver@9.0.1: + dependencies: + vscode-languageserver-protocol: 3.17.5 + + vscode-uri@3.0.8: {} + + web-namespaces@2.0.1: {} + + webidl-conversions@4.0.2: {} + + whatwg-url@7.1.0: + dependencies: + lodash.sortby: 4.7.0 + tr46: 1.0.1 + webidl-conversions: 4.0.2 + + which-boxed-primitive@1.1.1: + dependencies: + is-bigint: 1.1.0 + is-boolean-object: 1.2.2 + is-number-object: 1.1.1 + is-string: 1.1.1 + is-symbol: 1.1.1 + + which-builtin-type@1.2.1: + dependencies: + call-bound: 1.0.3 + function.prototype.name: 1.1.8 + has-tostringtag: 1.0.2 + is-async-function: 2.1.1 + is-date-object: 1.1.0 + is-finalizationregistry: 1.1.1 + is-generator-function: 1.1.0 + is-regex: 1.2.1 + is-weakref: 1.1.1 + isarray: 2.0.5 + which-boxed-primitive: 1.1.1 + which-collection: 1.0.2 + which-typed-array: 1.1.18 + + which-collection@1.0.2: + dependencies: + is-map: 2.0.3 + is-set: 2.0.3 + is-weakmap: 2.0.2 + is-weakset: 2.0.4 + + which-typed-array@1.1.18: + dependencies: + available-typed-arrays: 1.0.7 + call-bind: 1.0.8 + call-bound: 1.0.3 + for-each: 0.3.4 + gopd: 1.2.0 + has-tostringtag: 1.0.2 + + which@2.0.2: + dependencies: + isexe: 2.0.0 + + wicked-good-xpath@1.3.0: {} + + widest-line@4.0.1: + dependencies: + string-width: 5.1.2 + + word-wrap@1.2.5: {} + + wrap-ansi@7.0.0: + dependencies: + ansi-styles: 4.3.0 + string-width: 4.2.3 + strip-ansi: 6.0.1 + + wrap-ansi@8.1.0: + dependencies: + ansi-styles: 6.2.1 + string-width: 5.1.2 + strip-ansi: 7.1.0 + + wrappy@1.0.2: {} + + ws@7.5.10: {} + + xmldom-sre@0.1.31: {} + + yallist@4.0.0: {} + + yaml@2.7.0: {} + + yocto-queue@0.1.0: {} + + yocto-queue@1.1.1: {} + + zod-validation-error@3.4.0(zod@3.24.1): + dependencies: + zod: 3.24.1 + + zod@3.24.1: {} + + zwitch@2.0.4: {} diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml new file mode 100644 index 00000000..11681b62 --- /dev/null +++ b/pnpm-workspace.yaml @@ -0,0 +1,5 @@ +packages: + - 'apps/*' + - 'packages/*' + - 'docs/cache-handler-docs' + - 'internal/*' diff --git a/prettier.config.js b/prettier.config.js new file mode 100644 index 00000000..e94c9a26 --- /dev/null +++ b/prettier.config.js @@ -0,0 +1,8 @@ +/** + * @see https://prettier.io/docs/en/configuration.html + * @type {import("prettier").Config} + */ +export default { + singleQuote: true, + plugins: ['prettier-plugin-packagejson'], +}; diff --git a/tsconfig.json b/tsconfig.json deleted file mode 100644 index c0380efe..00000000 --- a/tsconfig.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "extends": "@repo/typescript-config/library.json" -} diff --git a/turbo.json b/turbo.json index fcee4278..01189b5f 100644 --- a/turbo.json +++ b/turbo.json @@ -1,47 +1,53 @@ { - "$schema": "https://turbo.build/schema.json", - "globalDependencies": ["**/.env.*local"], - "globalEnv": ["CI", "NODE_ENV", "NEXT_PUBLIC_BASE_URL", "NEXT_RUNTIME"], - "ui": "tui", - "tasks": { - "build": { - "dependsOn": ["^build"], - "env": ["REDIS_URL", "REMOTE_CACHE_SERVER_BASE_URL", "SERVER_STARTED", "PORT", "PPR_ENABLED"], - "outputs": [".next/**", "!.next/cache/**", "dist/**", "out/**"] - }, - "build:docs": { - "dependsOn": ["^build:docs"], - "outputs": [".next/**", "!.next/cache/**", "out/**"] - }, - "eslint:check": { - "cache": false, - "dependsOn": ["^eslint:check"] - }, - "eslint:fix": { - "cache": false, - "dependsOn": ["^eslint:fix"] - }, - "test": { - "cache": false - }, - "e2e": { - "cache": false - }, - "start": { - "cache": false, - "persistent": true - }, - "start:docs": { - "cache": false, - "persistent": true - }, - "dev": { - "cache": false, - "persistent": true - }, - "dev:docs": { - "cache": false, - "persistent": true - } + "$schema": "https://turbo.build/schema.json", + "ui": "tui", + "globalDependencies": ["**/.env.*local"], + "globalEnv": ["CI", "NODE_ENV", "NEXT_PUBLIC_BASE_URL", "NEXT_RUNTIME"], + "tasks": { + "build": { + "dependsOn": ["^build"], + "env": [ + "REDIS_URL", + "REMOTE_CACHE_SERVER_BASE_URL", + "SERVER_STARTED", + "PORT", + "PPR_ENABLED" + ], + "outputs": [".next/**", "!.next/cache/**", "dist/**", "out/**"] + }, + "build:docs": { + "dependsOn": ["^build:docs"], + "outputs": [".next/**", "!.next/cache/**", "out/**"] + }, + "eslint:check": { + "cache": false, + "dependsOn": ["^eslint:check"] + }, + "eslint:fix": { + "cache": false, + "dependsOn": ["^eslint:fix"] + }, + "test": { + "cache": false + }, + "e2e": { + "cache": false + }, + "start": { + "cache": false, + "persistent": true + }, + "start:docs": { + "cache": false, + "persistent": true + }, + "dev": { + "cache": false, + "persistent": true + }, + "dev:docs": { + "cache": false, + "persistent": true } + } } From 9144fc50d616df2393c04a95db06bbed9abdb6d0 Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Sun, 9 Feb 2025 02:56:52 +0300 Subject: [PATCH 457/458] Upgrade docs to Nextra 4 and Next.js 15 (#967) * Migrate documentation to App Router and update dependencies * Update GitHub Actions docs workflows to fetch full git history --- .github/workflows/deploy-docs.yml | 2 + .github/workflows/test-docs.yml | 2 + biome.json | 3 +- .../{next.config.js => next.config.ts} | 18 +- docs/cache-handler-docs/package.json | 19 +- .../public/favicon-16x16.png | Bin 854 -> 0 bytes .../public/favicon-32x32.png | Bin 2502 -> 0 bytes .../src/{pages => app}/_meta.ts | 20 +- .../src/{pages => app}/api-reference/_meta.ts | 0 .../cache-handler-config/page.mdx} | 0 .../cache-handler-value/page.mdx} | 0 .../api-reference/handler/page.mdx} | 2 +- .../lifespan-parameters/page.mdx} | 0 .../api-reference/on-creation/page.mdx} | 2 + .../api-reference/ttl-parameters/page.mdx} | 0 .../src/{pages => app}/functions/_meta.ts | 0 .../functions/nesh-cache/page.mdx} | 0 .../functions/nesh-classic-cache/page.mdx} | 10 +- .../src/{pages => app}/handlers/_meta.ts | 0 .../experimental-redis-cluster/page.mdx} | 9 +- .../handlers/local-lru/page.mdx} | 9 +- .../handlers/redis-stack/page.mdx} | 9 +- .../handlers/redis-strings/page.mdx} | 0 .../apple-touch-icon.png => src/app/icon.png} | Bin .../installation/page.mdx} | 32 +- docs/cache-handler-docs/src/app/layout.tsx | 62 ++ .../src/{pages/index.mdx => app/page.mdx} | 4 +- .../{pages/redis.mdx => app/redis/page.mdx} | 12 +- .../troubleshooting/page.mdx} | 10 +- .../src/{pages => app}/usage/_meta.ts | 2 +- .../usage/build-id-as-prefix-key/page.mdx} | 11 +- .../usage/creating-a-custom-handler/page.mdx} | 10 +- .../usage/development-environment/page.mdx} | 2 +- .../usage/on-demand-revalidation/page.mdx} | 4 +- .../usage/opt-out-cache-on-build/page.mdx} | 4 +- .../usage/populating-cache-on-start/page.mdx} | 20 +- docs/cache-handler-docs/src/mdx-components.js | 10 + docs/cache-handler-docs/src/pages/_app.tsx | 5 - docs/cache-handler-docs/theme.config.jsx | 81 -- docs/cache-handler-docs/tsconfig.json | 2 +- pnpm-lock.yaml | 951 +++++++++++++----- 41 files changed, 893 insertions(+), 434 deletions(-) rename docs/cache-handler-docs/{next.config.js => next.config.ts} (51%) delete mode 100644 docs/cache-handler-docs/public/favicon-16x16.png delete mode 100644 docs/cache-handler-docs/public/favicon-32x32.png rename docs/cache-handler-docs/src/{pages => app}/_meta.ts (77%) rename docs/cache-handler-docs/src/{pages => app}/api-reference/_meta.ts (100%) rename docs/cache-handler-docs/src/{pages/api-reference/cache-handler-config.mdx => app/api-reference/cache-handler-config/page.mdx} (100%) rename docs/cache-handler-docs/src/{pages/api-reference/cache-handler-value.mdx => app/api-reference/cache-handler-value/page.mdx} (100%) rename docs/cache-handler-docs/src/{pages/api-reference/handler.mdx => app/api-reference/handler/page.mdx} (97%) rename docs/cache-handler-docs/src/{pages/api-reference/lifespan-parameters.mdx => app/api-reference/lifespan-parameters/page.mdx} (100%) rename docs/cache-handler-docs/src/{pages/api-reference/on-creation.mdx => app/api-reference/on-creation/page.mdx} (99%) rename docs/cache-handler-docs/src/{pages/api-reference/ttl-parameters.mdx => app/api-reference/ttl-parameters/page.mdx} (100%) rename docs/cache-handler-docs/src/{pages => app}/functions/_meta.ts (100%) rename docs/cache-handler-docs/src/{pages/functions/nesh-cache.mdx => app/functions/nesh-cache/page.mdx} (100%) rename docs/cache-handler-docs/src/{pages/functions/nesh-classic-cache.mdx => app/functions/nesh-classic-cache/page.mdx} (92%) rename docs/cache-handler-docs/src/{pages => app}/handlers/_meta.ts (100%) rename docs/cache-handler-docs/src/{pages/handlers/experimental-redis-cluster.mdx => app/handlers/experimental-redis-cluster/page.mdx} (91%) rename docs/cache-handler-docs/src/{pages/handlers/local-lru.mdx => app/handlers/local-lru/page.mdx} (83%) rename docs/cache-handler-docs/src/{pages/handlers/redis-stack.mdx => app/handlers/redis-stack/page.mdx} (91%) rename docs/cache-handler-docs/src/{pages/handlers/redis-strings.mdx => app/handlers/redis-strings/page.mdx} (100%) rename docs/cache-handler-docs/{public/apple-touch-icon.png => src/app/icon.png} (100%) rename docs/cache-handler-docs/src/{pages/installation.mdx => app/installation/page.mdx} (88%) create mode 100644 docs/cache-handler-docs/src/app/layout.tsx rename docs/cache-handler-docs/src/{pages/index.mdx => app/page.mdx} (95%) rename docs/cache-handler-docs/src/{pages/redis.mdx => app/redis/page.mdx} (90%) rename docs/cache-handler-docs/src/{pages/troubleshooting.mdx => app/troubleshooting/page.mdx} (95%) rename docs/cache-handler-docs/src/{pages => app}/usage/_meta.ts (85%) rename docs/cache-handler-docs/src/{pages/usage/build-id-as-prefix-key.mdx => app/usage/build-id-as-prefix-key/page.mdx} (83%) rename docs/cache-handler-docs/src/{pages/usage/creating-a-custom-handler.mdx => app/usage/creating-a-custom-handler/page.mdx} (97%) rename docs/cache-handler-docs/src/{pages/usage/development-environment.mdx => app/usage/development-environment/page.mdx} (93%) rename docs/cache-handler-docs/src/{pages/usage/on-demand-revalidation.mdx => app/usage/on-demand-revalidation/page.mdx} (78%) rename docs/cache-handler-docs/src/{pages/usage/opt-out-cache-on-build.mdx => app/usage/opt-out-cache-on-build/page.mdx} (94%) rename docs/cache-handler-docs/src/{pages/usage/populating-cache-on-start.mdx => app/usage/populating-cache-on-start/page.mdx} (85%) create mode 100644 docs/cache-handler-docs/src/mdx-components.js delete mode 100644 docs/cache-handler-docs/src/pages/_app.tsx delete mode 100644 docs/cache-handler-docs/theme.config.jsx diff --git a/.github/workflows/deploy-docs.yml b/.github/workflows/deploy-docs.yml index 17e3236e..a87797b1 100644 --- a/.github/workflows/deploy-docs.yml +++ b/.github/workflows/deploy-docs.yml @@ -25,6 +25,8 @@ jobs: steps: - name: Checkout uses: actions/checkout@v4 + with: + fetch-depth: 0 - uses: pnpm/action-setup@v4 diff --git a/.github/workflows/test-docs.yml b/.github/workflows/test-docs.yml index 2c287e86..061dfe02 100644 --- a/.github/workflows/test-docs.yml +++ b/.github/workflows/test-docs.yml @@ -20,6 +20,8 @@ jobs: steps: - name: Checkout uses: actions/checkout@v4 + with: + fetch-depth: 0 - uses: pnpm/action-setup@v4 diff --git a/biome.json b/biome.json index 2b6e20ea..0ea8c64a 100644 --- a/biome.json +++ b/biome.json @@ -21,7 +21,8 @@ } }, "noDefaultExport": "off", - "useNamingConvention": "off" + "useNamingConvention": "off", + "noImplicitBoolean": "off" }, "correctness": { "noNodejsModules": "off", diff --git a/docs/cache-handler-docs/next.config.js b/docs/cache-handler-docs/next.config.ts similarity index 51% rename from docs/cache-handler-docs/next.config.js rename to docs/cache-handler-docs/next.config.ts index ef3caf00..80765b98 100644 --- a/docs/cache-handler-docs/next.config.js +++ b/docs/cache-handler-docs/next.config.ts @@ -1,21 +1,17 @@ +import type { NextConfig } from 'next'; import nextra from 'nextra'; const basePath = process.env.CI ? '/next-shared-cache' : ''; -const withNextra = nextra({ - theme: 'nextra-theme-docs', - themeConfig: './theme.config.jsx', - staticImage: true, -}); - -export default withNextra({ +const nextConfig: NextConfig = { output: 'export', basePath, images: { unoptimized: true }, env: { NEXT_PUBLIC_BASE_URL: basePath, }, - eslint: { - ignoreDuringBuilds: true, - }, -}); +}; + +const withNextra = nextra({}); + +export default withNextra(nextConfig); diff --git a/docs/cache-handler-docs/package.json b/docs/cache-handler-docs/package.json index c3fc0f1c..cd98d8d0 100644 --- a/docs/cache-handler-docs/package.json +++ b/docs/cache-handler-docs/package.json @@ -4,26 +4,27 @@ "private": true, "type": "module", "scripts": { - "build:docs": "next build", - "dev:docs": "next dev", + "build:docs": "next build && pagefind --site .next/server/app --output-path out/_pagefind", + "dev:docs": "next dev --turbo", "eslint:check": "next lint", "eslint:fix": "next lint --fix", "start:docs": "serve out" }, "dependencies": { - "next": "14.2.15", - "nextra": "3.2.4", - "nextra-theme-docs": "3.2.4", - "react": "18.3.1", - "react-dom": "18.3.1" + "next": "15.1.6", + "nextra": "4.2.4", + "nextra-theme-docs": "4.2.4", + "react": "19.0.0", + "react-dom": "19.0.0" }, "devDependencies": { "@repo/eslint-config": "workspace:*", "@repo/typescript-config": "workspace:*", "@types/node": "22.13.1", - "@types/react": "18.3.12", - "@types/react-dom": "18.3.1", + "@types/react": "19.0.8", + "@types/react-dom": "19.0.3", "eslint": "9.20.0", + "pagefind": "1.3.0", "serve": "14.2.4", "typescript": "5.7.3" } diff --git a/docs/cache-handler-docs/public/favicon-16x16.png b/docs/cache-handler-docs/public/favicon-16x16.png deleted file mode 100644 index d0a7843eae56a62947b7092694fb3de83568521c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 854 zcmV-c1F8IpP)Px&5J^NqR5(vvlV504R~*Mb=O$@x+TF&aX6f2x8tnW7wYaWMYh`QS#vXi_Ska18 zDu|4M4;$T+>|tZd@N&*5 zluD$BN0^$=xp8AO%JyxW2^(RAtLO-N^+HyZ5>5n^mzFqr<~&2wlf1mSnP9B}Qex(d zWXJB)9*c9NdndZCJ6pSJgtV1%0?V@a^u!NT+SViPWH2>BBoaYLMIm2A*fzdRufz3m zzB+u!6LGHS_5kSrX^_Wj>+wCwQjQt~s&x)UUnQVv9G`xO<`1Av%pjT))Q?Zl*Sp^n zP!*}3&1UJlc!5AL$j5KAF*tmccwHSI?syM`#`nKnU~(=?Z&xRu|Me$S`T4Bl9TJH~ z?+U52zi_SIV9Q{NXedPb(Gx^q)LMbJsS4L7n{kJgM8asAxWVnm1A# ziJ*{-{XWdmgL|o|sa|HmmJTznDaw|`z}a7!Eatgf&eQsCCv%p`!nHBBT7FiASFmr_ z4s<>E0w^IXo)ecrbhS#Qe@I^)Av2eCsaYM1(b3*UZP<7L-0~972mjBy82^X2OP+8@ g_7L}|Ud}201CApigX07*qoM6N<$f_~nhc>n+a diff --git a/docs/cache-handler-docs/public/favicon-32x32.png b/docs/cache-handler-docs/public/favicon-32x32.png deleted file mode 100644 index cafde4dc8e15881b855da5533612f810fa79c150..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2502 zcmV;%2|4zOP)Px;fJsC_R9Huqmw9v)RTjp7RlTJ<-JO-}2_zwG0mBkRMj;|1A_^Q36+{*xiV7%; zDB=p{fDUHd7!|?*Ba5JezyTCQM1dI{5HJLSWFdP((n&}UU=|8%v z-tyh=-TU2p1zD10WNsYFJE4>J?XQ%No~53Doln2nHiGPue2@38=(zA^n{)=V^EDlz zdXDu1xc1@C6CukoPN&0dw_2@65JWEzzeC4$h&+#i0zj6LTkR*xIXL2}r_y^9M z%b~o!9;YaPAfR%|M3~L=PwvU6k!cJW+}{oA&y4mf_zj>h8;YfS_Z{Mc4OM(Tf?>MF!A!@@R^V|4d+9Bz{2w2r3ajlS!clN1GkV;iRFs9EYui=piZO z?m3M5LJ^s(UM9XKF^?mw{*&c zAh{%2xXwW;DzEVHlZzR!bT%#Z4Va?Cs4pm{=Hxk)m`NBnlBOyP6ZOHE%|_Pc12JmOMAt z%Yx#9*EwNJODm%uN#~BY79vYvtFqAJQYG`BoX%VCucvfiJhI)%EyeZBoi)Wr`?l`f z#ZiNRe?%9IM^3YH>3p{B+{00w6Gw}k$brdxzibWrH+)E-;>2D@_ql?dyY{i8D4)c; zhEkVbLg~IA$aprL)B*kY_UH-zx@9N9K>=*ccom&S?e%2EYh_%L#LO37$6{~enK7do zd+!KxFBb6ps!WofpN*hVQ+(_scZmj`nEj~xc(?0yl;Rob3kjY(iN@k8tmpF?n|+FE zS-^151BhSm;kd=hGjC@Q)+LmN1}n`iEhsu+(EAY(7=X30iBKH zTG$@fosgk}2<{orrHqgHa@)H0G}8`1vEcUc(-`sYGV1b*N!_rC^n?&3QQ&Y{J!(

6V$GJmvvEER2qdN5uC6*yPR*M;t*rQNsNoZ z-)N-NthMFj9;04}{@dHJMm3$$~RM_my)raHM>3DI}Jq#Z{v|~1e+>3ckTlPBX z+BWj)n_18^f;fK-=|2{+Iwgkp@-5_q$K!7{(KkMZ*sw742EBXpmbNx3t1aYQE~2ra ziRiLIR`&|ysWU}vxGjlByMtxFlyPTx0Dp66d1ui)hTlG4mY#3Rpim;Mw}WALo+kc>2&C?HsEM%!s&FnH&Lln_?i5%2ASOd4=h+hSG$c& zosm~)qoApk9fm+M^-k93RrBV?k4f&`!QY*=8fb zVMjCYR_twUbTJwT2?)TTFn~Zyb2GIKjZ`<;+yGj0vZ+R<#_UgcgOyf|7MosAS4%Ce zb|<@!?#JJ~7Q9O65vQ4Ro@3m+nQZ@THxs5$B2cH}AL~D5;;bp`-nfJD_uorG??k%m zjfl;yD8i)x@Y8G2`0Kf3Yo?;4jLn-rW6IOh*}85kv!0qktJA@*&7U)E#zSPilF8oB zv)Xflj}C14Y!?MhR^mnsMXIgGq}5>!HWF(vaiXGxLtA!n_1IZ@_Dm$yVDJ4e08mu1q@;|;=PhH=+si30 zDy3g)io0&Dt+C*6*olgZW#{@&Io&G?mB~o_;WNxy^aPD{4K&u(6PwTtl}5#>WB;K? zzdo#4{05mTUn04WC-nXhz_pJTF6Qy<3oCha;T(GP@5`@e&(q_UK3FQRaQxtRoXq_d z^^CEIS}o04dl;P1jiIB`h)L+m`P13-9h^d8ZXO#~uO(yoA_k|Xcxyi2HpC|kuScg8 zrAuDQz!V+D#F>+^TCHS!l11Q{VT|nC7e7(O>Bg(*R4U}^I)3@`APXi=ATF^R`?l?( zUytCR{E?H*(*GKqh!&YRCno_fdh$&;x1_iovg%X0IAR<|9 zRP8=Ocv&s9IhZ;1K_*Wcizteowxhkx^DX;50B+KIxk-~{&gJCt)uHb>btaq377I3& z;)0-eK-b`4`ls|^^vL0)rlzO z>tOA5J?Ax>y?ucv#5x - Cache entries created with `neshClassicCache` can be revalidated only by the - [`revalidateTag` - ↗](https://nextjs.org/docs/app/api-reference/functions/revalidateTag) method. - +> [!NOTE] +> +> Cache entries created with `neshClassicCache` can be revalidated only by the [`revalidateTag` ↗](https://nextjs.org/docs/app/api-reference/functions/revalidateTag) method. ## Parameters diff --git a/docs/cache-handler-docs/src/pages/handlers/_meta.ts b/docs/cache-handler-docs/src/app/handlers/_meta.ts similarity index 100% rename from docs/cache-handler-docs/src/pages/handlers/_meta.ts rename to docs/cache-handler-docs/src/app/handlers/_meta.ts diff --git a/docs/cache-handler-docs/src/pages/handlers/experimental-redis-cluster.mdx b/docs/cache-handler-docs/src/app/handlers/experimental-redis-cluster/page.mdx similarity index 91% rename from docs/cache-handler-docs/src/pages/handlers/experimental-redis-cluster.mdx rename to docs/cache-handler-docs/src/app/handlers/experimental-redis-cluster/page.mdx index ba1eec86..70e129c5 100644 --- a/docs/cache-handler-docs/src/pages/handlers/experimental-redis-cluster.mdx +++ b/docs/cache-handler-docs/src/app/handlers/experimental-redis-cluster/page.mdx @@ -1,5 +1,3 @@ -import { Callout } from 'nextra/components'; - # `experimental-redis-cluster` Handler ```js @@ -20,10 +18,9 @@ const redisHandler = createClusterHandler({ // ... ``` - - This Handler is currently experimental and subject to change or removal in - future updates without a major version increment. Use with caution. - +> [!WARNING] +> +> This Handler is currently experimental and subject to change or removal in future updates without a major version increment. Use with caution. The `experimental-redis-cluster` Handler uses the Redis Cluster as the cache store. It is a simple and fast cache handler that is suitable for most applications. This Handler is ideal for applications that require fast and efficient cache management without the need for advanced features like full-text search for custom revalidation strategies. diff --git a/docs/cache-handler-docs/src/pages/handlers/local-lru.mdx b/docs/cache-handler-docs/src/app/handlers/local-lru/page.mdx similarity index 83% rename from docs/cache-handler-docs/src/pages/handlers/local-lru.mdx rename to docs/cache-handler-docs/src/app/handlers/local-lru/page.mdx index d493a09f..d3f59e4c 100644 --- a/docs/cache-handler-docs/src/pages/handlers/local-lru.mdx +++ b/docs/cache-handler-docs/src/app/handlers/local-lru/page.mdx @@ -1,5 +1,3 @@ -import { Callout } from 'nextra/components'; - # `local-lru` Handler ```js @@ -15,10 +13,9 @@ const localHandler = createLocalHandler({ The `local-lru` Handler uses a [`lru-cache` ↗](https://www.npmjs.com/package/lru-cache) instance as the cache store. It stores the cache in memory and evicts the least recently used entries when the cache reaches its limits. You can use this Handler as a fallback cache when the shared cache is unavailable. - - The `local-lru` Handler stores the cache in memory. Make sure to set the - limits according to your server's memory capacity. - +> [!NOTE] +> +> The `local-lru` Handler is not suitable for production environments. It is intended for development and testing purposes only. ## API diff --git a/docs/cache-handler-docs/src/pages/handlers/redis-stack.mdx b/docs/cache-handler-docs/src/app/handlers/redis-stack/page.mdx similarity index 91% rename from docs/cache-handler-docs/src/pages/handlers/redis-stack.mdx rename to docs/cache-handler-docs/src/app/handlers/redis-stack/page.mdx index 46e563cc..7c5e8e56 100644 --- a/docs/cache-handler-docs/src/pages/handlers/redis-stack.mdx +++ b/docs/cache-handler-docs/src/app/handlers/redis-stack/page.mdx @@ -1,5 +1,3 @@ -import { Callout } from 'nextra/components'; - # `redis-stack` Handler ```js @@ -19,10 +17,9 @@ const redisHandler = createRedisHandler({ The `redis-stack` Handler uses Redis with `RedisJSON` and `RedisSearch` modules as the cache store. It is a full-featured cache handler that supports JSON objects and full-text search, offering a trade-off between performance and flexibility. While it may sacrifice some speed compared to the [`redis-strings`](/handlers/redis-strings) Handler, it empowers you to manage cache on demand more efficiently and faster. It also allows for more versatile cache usage from your application, such as creating custom revalidating strategies and functions. The `redis-stack` Handler is suitable for applications that require advanced cache management and search capabilities. - - Make sure that you have the `RedisJSON` and `RedisSearch` modules installed - and enabled in your Redis server. - +> [!NOTE] +> +> Make sure that you have the `RedisJSON` and `RedisSearch` modules installed and enabled in your Redis server. ## API diff --git a/docs/cache-handler-docs/src/pages/handlers/redis-strings.mdx b/docs/cache-handler-docs/src/app/handlers/redis-strings/page.mdx similarity index 100% rename from docs/cache-handler-docs/src/pages/handlers/redis-strings.mdx rename to docs/cache-handler-docs/src/app/handlers/redis-strings/page.mdx diff --git a/docs/cache-handler-docs/public/apple-touch-icon.png b/docs/cache-handler-docs/src/app/icon.png similarity index 100% rename from docs/cache-handler-docs/public/apple-touch-icon.png rename to docs/cache-handler-docs/src/app/icon.png diff --git a/docs/cache-handler-docs/src/pages/installation.mdx b/docs/cache-handler-docs/src/app/installation/page.mdx similarity index 88% rename from docs/cache-handler-docs/src/pages/installation.mdx rename to docs/cache-handler-docs/src/app/installation/page.mdx index aefe5eaa..2f52d0c8 100644 --- a/docs/cache-handler-docs/src/pages/installation.mdx +++ b/docs/cache-handler-docs/src/app/installation/page.mdx @@ -1,16 +1,14 @@ -import { Callout } from 'nextra/components'; - -## Getting Started with `@neshca/cache-handler` +# Getting Started with `@neshca/cache-handler` This section guides you through the initial setup and basic usage of `@neshca/cache-handler`, helping you integrate advanced caching solutions into your Next.js applications seamlessly. -### Prerequisites +## Prerequisites - **Node.js:** 18.17 or newer. - **Next.js:** 13.5.1 or newer (below 15.0.0). - **Redis (optional):** 4.6.0 or newer. -### Quick Start Installation +## Quick Start Installation ```sh copy npx create-next-app --example cache-handler-redis cache-handler-redis-app @@ -24,7 +22,7 @@ yarn create next-app --example cache-handler-redis cache-handler-redis-app pnpm create next-app --example cache-handler-redis cache-handler-redis-app ``` -### Manual installation +## Manual installation 1. **Install `@neshca/cache-handler`**: Execute this command in your Next.js project root directory: @@ -40,7 +38,7 @@ pnpm create next-app --example cache-handler-redis cache-handler-redis-app npm install redis ``` -### Basic Custom Configuration +## Basic Custom Configuration 1. **Create a Cache Handler File**: In your project root, create a file named `cache-handler.mjs` for your cache configuration. @@ -89,11 +87,9 @@ pnpm create next-app --example cache-handler-redis cache-handler-redis-app export default CacheHandler; ``` - - Do not import @neshca/cache-handler to your client components - or pages. It is only meant to be used in cache-handler.mjs{' '} - files. - + > [!NOTE] + > + > Do not import @neshca/cache-handler to your client components or pages. It is only meant to be used in cache-handler.mjs files. 3. **Integrate with Next.js**: Update your `next.config.js` to utilize the cache handler, ensuring it's only active in production: @@ -136,15 +132,13 @@ pnpm create next-app --example cache-handler-redis cache-handler-redis-app } ``` - - Use NEXT_RUNTIME environment variable to ensure that the - instrumentation is only executed in Node.js. Use dynamic import to avoid - bundling issues. - + > [!NOTE] + > + > Use NEXT_RUNTIME environment variable to ensure that the instrumentation is only executed in Node.js. Use dynamic import to avoid bundling issues. This instrumentation will fill the cache with the initial data when the application starts. The duration of this process may vary based on the number and size of pages, routes, and fetch calls. For more information refer to the [Populating the Cache with the initial data](/usage/populating-cache-on-start) section. -### Running Your Application +## Running Your Application **Start Your Next.js Application**: @@ -155,7 +149,7 @@ npm run build npm run start ``` -### Next Steps +## Next Steps With the setup complete, explore `@neshca/cache-handler`'s advanced features: diff --git a/docs/cache-handler-docs/src/app/layout.tsx b/docs/cache-handler-docs/src/app/layout.tsx new file mode 100644 index 00000000..86eb95e3 --- /dev/null +++ b/docs/cache-handler-docs/src/app/layout.tsx @@ -0,0 +1,62 @@ +import { Footer, Layout, Navbar } from 'nextra-theme-docs'; +import { Banner } from 'nextra/components'; +import { getPageMap } from 'nextra/page-map'; +import type { ReactNode } from 'react'; +import 'nextra-theme-docs/style.css'; + +const banner = ( + +

+ 🎉 Version 1.9.0 is out! This is the final release supporting Next.js + 13.5.1-14.x. The upcoming version 2.0.0 will require Next.js 15. +
+ +); + +const navbar = ( + @neshca/cache-handler} + projectLink="https://github.com/caching-tools/next-shared-cache" + /> +); + +const footer = ( + +); + +type RootLayoutProps = { + children: ReactNode; +}; + +export default async function RootLayout({ + children, +}: RootLayoutProps): Promise { + return ( + + + + {/* @ts-expect-error - will be fixed when all react types will be updated to v19*/} + {children} + + + + ); +} diff --git a/docs/cache-handler-docs/src/pages/index.mdx b/docs/cache-handler-docs/src/app/page.mdx similarity index 95% rename from docs/cache-handler-docs/src/pages/index.mdx rename to docs/cache-handler-docs/src/app/page.mdx index eed32bc5..10a2408f 100644 --- a/docs/cache-handler-docs/src/pages/index.mdx +++ b/docs/cache-handler-docs/src/app/page.mdx @@ -1,3 +1,5 @@ +# `@neshca/cache-handler` + Welcome to `@neshca/cache-handler` (pronounced [`/ˈnæʃkʌ/`](http://ipa-reader.xyz/?text=%CB%88n%C3%A6%CA%83k%CA%8C)), a specialized ISR/Data cache API crafted for Next.js applications. This library simplifies configuring shared cache strategies in distributed environments, such as multiple, independent application instances. It offers a flexible and easy-to-integrate solution for custom cache strategies, especially for Redis. --- @@ -13,7 +15,7 @@ Next.js applications are often deployed in a self-hosted distributed environment - **Support for Next.js Routers**: Full support and one setup for the Pages and the App Router. - **`neshCache` Function**: Utilize the [`neshCache`](/functions/nesh-cache) function to replace `unstable_cache` for more control over caching. - **`neshClassicCache` Function**: Use the CacheHandler in the Pages Router to cache the result of expensive operations in the `getServerSideProps` and API routes. -- **Pre-populate the Cache with Initial Data**: Automatically pre-populate the cache with the initial data when the application starts using the [instrumentation hook ↗](/usage/populating-cache-on-start). +- **Pre-populate the Cache with Initial Data**: Automatically pre-populate the cache with the initial data when the application starts using the [instrumentation hook](/usage/populating-cache-on-start). ## Getting Started diff --git a/docs/cache-handler-docs/src/pages/redis.mdx b/docs/cache-handler-docs/src/app/redis/page.mdx similarity index 90% rename from docs/cache-handler-docs/src/pages/redis.mdx rename to docs/cache-handler-docs/src/app/redis/page.mdx index 2cb1588f..7d8797cf 100644 --- a/docs/cache-handler-docs/src/pages/redis.mdx +++ b/docs/cache-handler-docs/src/app/redis/page.mdx @@ -1,12 +1,8 @@ -import { Callout } from 'nextra/components'; +# `redis-stack` Handler example -## `redis-stack` Handler example - - - In this example, we assume that in your deployment, you have `REDIS_URL` - environment variable set to the URL of your Redis instance. You can use any - other way to set the URL. - +> [!NOTE] +> +> In this example, we assume that in your deployment, you have `REDIS_URL` environment variable set to the URL of your Redis instance. You can use any other way to set the URL. See the [`redis-stack` Handler](/handlers/redis-stack) documentation for more information and requirements for the Redis server. diff --git a/docs/cache-handler-docs/src/pages/troubleshooting.mdx b/docs/cache-handler-docs/src/app/troubleshooting/page.mdx similarity index 95% rename from docs/cache-handler-docs/src/pages/troubleshooting.mdx rename to docs/cache-handler-docs/src/app/troubleshooting/page.mdx index cedb189a..a9189a34 100644 --- a/docs/cache-handler-docs/src/pages/troubleshooting.mdx +++ b/docs/cache-handler-docs/src/app/troubleshooting/page.mdx @@ -1,8 +1,10 @@ -### Verifying that the Cache Handler works +# Troubleshooting + +## Verifying that the Cache Handler works You can verify if the cache handler is active by using either of the following methods: -#### Method 1: Console Logging +### Method 1: Console Logging Add `console.log` statements to your cache handler: @@ -36,7 +38,7 @@ handler.get ... handler.set ... ``` -#### Method 2: Debug Mode +### Method 2: Debug Mode Activate debug mode by setting the `NEXT_PRIVATE_DEBUG_CACHE` environment variable: @@ -69,7 +71,7 @@ Redis client connected. Note: During the build stage, it's normal to see `@neshca/cache-handler is not configured yet` several times. -#### Troubleshooting +### Troubleshooting If the cache handler is not active: diff --git a/docs/cache-handler-docs/src/pages/usage/_meta.ts b/docs/cache-handler-docs/src/app/usage/_meta.ts similarity index 85% rename from docs/cache-handler-docs/src/pages/usage/_meta.ts rename to docs/cache-handler-docs/src/app/usage/_meta.ts index 58c4850d..015f8337 100644 --- a/docs/cache-handler-docs/src/pages/usage/_meta.ts +++ b/docs/cache-handler-docs/src/app/usage/_meta.ts @@ -2,7 +2,7 @@ export default { 'creating-a-custom-handler': 'Creating a Custom Handler', 'on-demand-revalidation': 'On-demand revalidation', 'opt-out-cache-on-build': 'Opt out the cache on Build', - 'development-environment': '', + 'development-environment': 'Development Environment', 'build-id-as-prefix-key': 'Build Id as a Prefix Key', 'populating-cache-on-start': 'Populating the Cache with Pre-rendered Pages', }; diff --git a/docs/cache-handler-docs/src/pages/usage/build-id-as-prefix-key.mdx b/docs/cache-handler-docs/src/app/usage/build-id-as-prefix-key/page.mdx similarity index 83% rename from docs/cache-handler-docs/src/pages/usage/build-id-as-prefix-key.mdx rename to docs/cache-handler-docs/src/app/usage/build-id-as-prefix-key/page.mdx index a8e945cb..b867d3db 100644 --- a/docs/cache-handler-docs/src/pages/usage/build-id-as-prefix-key.mdx +++ b/docs/cache-handler-docs/src/app/usage/build-id-as-prefix-key/page.mdx @@ -1,6 +1,6 @@ -import { Callout } from 'nextra/components'; +# Build ID as prefix key -Let me quote from the Next.js [documentation ↗](https://nextjs.org/docs/pages/building-your-application/deploying#build-cache). +Let me quote from the Next.js [documentation](https://nextjs.org/docs/pages/building-your-application/deploying#build-cache). Next.js generates an ID during `next build` to identify which version of your application is being served. The same build should be used and boot up multiple containers. @@ -38,10 +38,9 @@ CacheHandler.onCreation(async () => { #### Using without `generateBuildId` - - In this case, you must build your app once and use the same build to deploy to - all environments. - +> [!NOTE] +> +> In this case, you must build your app once and use the same build to deploy to all environments. ```js filename="next.config.js" copy const nextConfig = { diff --git a/docs/cache-handler-docs/src/pages/usage/creating-a-custom-handler.mdx b/docs/cache-handler-docs/src/app/usage/creating-a-custom-handler/page.mdx similarity index 97% rename from docs/cache-handler-docs/src/pages/usage/creating-a-custom-handler.mdx rename to docs/cache-handler-docs/src/app/usage/creating-a-custom-handler/page.mdx index ea24cc0f..f914c0bd 100644 --- a/docs/cache-handler-docs/src/pages/usage/creating-a-custom-handler.mdx +++ b/docs/cache-handler-docs/src/app/usage/creating-a-custom-handler/page.mdx @@ -1,8 +1,8 @@ -## Custom Redis strings example +# Custom Redis strings example -This example demonstrates how to create a full-featured custom Redis handler for `@neshca/cache-handler`. The handler uses the `redis` package to connect to a Redis instance and store cache data. The guide is presented as a code snippet with comments explaining each step. You may also want to learn how Redis works and how to use it in your application. For more information, see the [Redis documentation ↗](https://redis.io/documentation). +This example demonstrates how to create a full-featured custom Redis handler for `@neshca/cache-handler`. The handler uses the `redis` package to connect to a Redis instance and store cache data. The guide is presented as a code snippet with comments explaining each step. You may also want to learn how Redis works and how to use it in your application. For more information, see the [Redis documentation](https://redis.io/documentation). -### Prerequisites +## Prerequisites Install the `redis` package: @@ -10,9 +10,9 @@ Install the `redis` package: npm install redis ``` -Then, install the Redis server locally or use a cloud-based Redis service. Learn how to run Redis locally by following the [Install Redis Stack documentation ↗](https://redis.io/docs/install/install-stack/docker/). Redis Stack also includes a RedisInsight tool to manage and monitor your Redis instance. +Then, install the Redis server locally or use a cloud-based Redis service. Learn how to run Redis locally by following the [Install Redis Stack documentation](https://redis.io/docs/install/install-stack/docker/). Redis Stack also includes a RedisInsight tool to manage and monitor your Redis instance. -### Guide +## Guide Create a file called `cache-handler.mjs` next to your `next.config.js` with the following contents: diff --git a/docs/cache-handler-docs/src/pages/usage/development-environment.mdx b/docs/cache-handler-docs/src/app/usage/development-environment/page.mdx similarity index 93% rename from docs/cache-handler-docs/src/pages/usage/development-environment.mdx rename to docs/cache-handler-docs/src/app/usage/development-environment/page.mdx index 2e9de1b2..7be47182 100644 --- a/docs/cache-handler-docs/src/pages/usage/development-environment.mdx +++ b/docs/cache-handler-docs/src/app/usage/development-environment/page.mdx @@ -1,4 +1,4 @@ -## Using `@neshca/cache-handler` in development environment +# Using `@neshca/cache-handler` in development environment Since the primary purpose of `@neshca/cache-handler` is to accommodate the sharing of the cache between multiple and independent replicas of the Next.js application, there is no need to use it in a development environment. diff --git a/docs/cache-handler-docs/src/pages/usage/on-demand-revalidation.mdx b/docs/cache-handler-docs/src/app/usage/on-demand-revalidation/page.mdx similarity index 78% rename from docs/cache-handler-docs/src/pages/usage/on-demand-revalidation.mdx rename to docs/cache-handler-docs/src/app/usage/on-demand-revalidation/page.mdx index e615843b..d87f8d11 100644 --- a/docs/cache-handler-docs/src/pages/usage/on-demand-revalidation.mdx +++ b/docs/cache-handler-docs/src/app/usage/on-demand-revalidation/page.mdx @@ -8,7 +8,7 @@ Next.js provides a way to revalidate a page or a result of a `fetch` call on dem The Pages Router supports only the `response.revalidate(path)`. -See [Using On-Demand Revalidation ↗](https://nextjs.org/docs/pages/building-your-application/data-fetching/incremental-static-regeneration#using-on-demand-revalidation) in the Next.js documentation. +See [Using On-Demand Revalidation](https://nextjs.org/docs/pages/building-your-application/data-fetching/incremental-static-regeneration#using-on-demand-revalidation) in the Next.js documentation. #### `response.revalidate(path)` caveat @@ -18,7 +18,7 @@ Calling `response.revalidate(path)` will synchronously call `getStaticProps` and The App Router supports both `revalidatePath` and `revalidateTag` functions. These functions will remove the cache values from the store. -See [On-demand Revalidation ↗](https://nextjs.org/docs/app/building-your-application/data-fetching/fetching-caching-and-revalidating#on-demand-revalidation) in the Next.js documentation. +See [On-demand Revalidation](https://nextjs.org/docs/app/building-your-application/data-fetching/fetching-caching-and-revalidating#on-demand-revalidation) in the Next.js documentation. #### `revalidatePath` caveat diff --git a/docs/cache-handler-docs/src/pages/usage/opt-out-cache-on-build.mdx b/docs/cache-handler-docs/src/app/usage/opt-out-cache-on-build/page.mdx similarity index 94% rename from docs/cache-handler-docs/src/pages/usage/opt-out-cache-on-build.mdx rename to docs/cache-handler-docs/src/app/usage/opt-out-cache-on-build/page.mdx index e0aec5bc..cd61505e 100644 --- a/docs/cache-handler-docs/src/pages/usage/opt-out-cache-on-build.mdx +++ b/docs/cache-handler-docs/src/app/usage/opt-out-cache-on-build/page.mdx @@ -1,8 +1,8 @@ -## Building the App Without Redis Cache Connection +# Building the App Without Redis Cache Connection There are scenarios, especially during deployment, where your Redis server may not be immediately available. This can occur when the Redis server and your app are deployed simultaneously. In such cases, it's important to configure your build process to handle the absence of the Redis server. Here's how you can adapt your setup to build the app without requiring an active connection to the Redis server: -### Configuration Steps +## Configuration Steps 1. **Modify the `cache-handler.mjs` File**: Adjust the `onCreation` method in your `cache-handler.mjs` file to conditionally connect to the Redis server. The modified code should look like this: diff --git a/docs/cache-handler-docs/src/pages/usage/populating-cache-on-start.mdx b/docs/cache-handler-docs/src/app/usage/populating-cache-on-start/page.mdx similarity index 85% rename from docs/cache-handler-docs/src/pages/usage/populating-cache-on-start.mdx rename to docs/cache-handler-docs/src/app/usage/populating-cache-on-start/page.mdx index 9c74819e..69150c93 100644 --- a/docs/cache-handler-docs/src/pages/usage/populating-cache-on-start.mdx +++ b/docs/cache-handler-docs/src/app/usage/populating-cache-on-start/page.mdx @@ -1,6 +1,4 @@ -import { Callout } from 'nextra/components'; - -## Populating the Cache with the Initial Data +# Populating the Cache with the Initial Data This feature is experimental. To use it, you must explicitly opt in by defining [`experimental.instrumentationHook = true;` ↗](https://nextjs.org/docs/app/api-reference/next-config-js/instrumentationHook) in your `next.config.js` file. @@ -28,15 +26,13 @@ export async function register() { } ``` - - Use NEXT_RUNTIME environment variable to ensure that the - instrumentation is only executed in Node.js. Use dynamic import to avoid - bundling issues. - +> [!NOTE] +> +> Use NEXT_RUNTIME environment variable to ensure that the instrumentation is only executed in Node.js. Use dynamic import to avoid bundling issues. This instrumentation will fill the cache with the initial data when the application starts. The duration of this process may vary based on the number and size of pages, routes, and fetch calls. -### Using `output: 'standalone'` in `next.config.js` +## Using `output: 'standalone'` in `next.config.js` If you use the `output: 'standalone'` option in your `next.config.js` file, you must copy the `fetch-cache` directory to the `standalone` directory. Otherwise, the instrumentation will not pre-populate the cache with the initial fetch calls data. @@ -53,7 +49,7 @@ Or using `Dockerfile`: COPY .next/cache/fetch-cache/ .next/standalone/.next/cache/fetch-cache/ ``` -#### Caveats +## Caveats When using the `output: 'standalone'` option in a monorepo, you may need to adjust the paths in the above command to match your project structure. @@ -66,7 +62,7 @@ cp .next/cache/fetch-cache/* .next/standalone/ You may also need to configure `outputFileTracingRoot` in your `next.config.js` to work locally. Refer to the [Next.js `output: standalone` option ↗](https://nextjs.org/docs/app/api-reference/next-config-js/output) for more information. -### Usful links +## Usful links -- [Instrumentation Next.js documentation ↗](https://nextjs.org/docs/app/building-your-application/optimizing/instrumentation) +- [Instrumentation Next.js documentation](https://nextjs.org/docs/app/building-your-application/optimizing/instrumentation) - [Next.js `output: standalone` option ↗](https://nextjs.org/docs/app/api-reference/next-config-js/output) diff --git a/docs/cache-handler-docs/src/mdx-components.js b/docs/cache-handler-docs/src/mdx-components.js new file mode 100644 index 00000000..f6308c72 --- /dev/null +++ b/docs/cache-handler-docs/src/mdx-components.js @@ -0,0 +1,10 @@ +import { useMDXComponents as getThemeComponents } from 'nextra-theme-docs'; // nextra-theme-blog or your custom theme + +const themeComponents = getThemeComponents(); + +export function useMDXComponents(components) { + return { + ...themeComponents, + ...components, + }; +} diff --git a/docs/cache-handler-docs/src/pages/_app.tsx b/docs/cache-handler-docs/src/pages/_app.tsx deleted file mode 100644 index 5431b125..00000000 --- a/docs/cache-handler-docs/src/pages/_app.tsx +++ /dev/null @@ -1,5 +0,0 @@ -import type { AppProps } from 'next/app'; - -export default function MyApp({ Component, pageProps }: AppProps) { - return ; -} diff --git a/docs/cache-handler-docs/theme.config.jsx b/docs/cache-handler-docs/theme.config.jsx deleted file mode 100644 index bee13d60..00000000 --- a/docs/cache-handler-docs/theme.config.jsx +++ /dev/null @@ -1,81 +0,0 @@ -import { useRouter } from 'next/router'; -import { useConfig } from 'nextra-theme-docs'; - -function Head() { - const { asPath } = useRouter(); - const { frontMatter, title } = useConfig(); - const url = `https://caching-tools.github.io/next-shared-cache${asPath}`; - - const currentTitle = - asPath === '/' - ? '@neshca/cache-handler' - : `${title} — @neshca/cache-handler`; - - return ( - <> - - - - - - - {currentTitle} - - ); -} - -export default { - logo:
@neshca/cache-handler
, - project: { - link: 'https://github.com/caching-tools/next-shared-cache', - }, - docsRepositoryBase: - 'https://github.com/caching-tools/next-shared-cache/tree/canary/docs/cache-handler-docs', - head: Head, - footer: { - content: ( - - MIT {new Date().getFullYear()} ©{' '} - - @neshca/cache-handler - - . - - ), - }, - banner: { - key: 'version-1.9.0', - content: ( -
- 🎉 Version 1.9.0 is out! This is the final release supporting Next.js - 13.5.1-14.x. The upcoming version 2.0.0 will require Next.js 15. -
- ), - }, -}; diff --git a/docs/cache-handler-docs/tsconfig.json b/docs/cache-handler-docs/tsconfig.json index 862dcdab..91838f5b 100644 --- a/docs/cache-handler-docs/tsconfig.json +++ b/docs/cache-handler-docs/tsconfig.json @@ -15,7 +15,7 @@ "**/*.ts", "**/*.tsx", ".next/types/**/*.ts", - "run-app-instances.ts" + "next.config.ts" ], "exclude": ["node_modules"] diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index fa05c160..b75e0b23 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -82,20 +82,20 @@ importers: docs/cache-handler-docs: dependencies: next: - specifier: 14.2.15 - version: 14.2.15(@playwright/test@1.50.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 15.1.6 + version: 15.1.6(@playwright/test@1.50.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) nextra: - specifier: 3.2.4 - version: 3.2.4(@types/react@18.3.12)(acorn@8.14.0)(next@14.2.15(@playwright/test@1.50.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.3) + specifier: 4.2.4 + version: 4.2.4(acorn@8.14.0)(next@15.1.6(@playwright/test@1.50.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0))(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(typescript@5.7.3) nextra-theme-docs: - specifier: 3.2.4 - version: 3.2.4(next@14.2.15(@playwright/test@1.50.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(nextra@3.2.4(@types/react@18.3.12)(acorn@8.14.0)(next@14.2.15(@playwright/test@1.50.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.3))(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 4.2.4 + version: 4.2.4(@types/react@19.0.8)(next@15.1.6(@playwright/test@1.50.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0))(nextra@4.2.4(acorn@8.14.0)(next@15.1.6(@playwright/test@1.50.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0))(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(typescript@5.7.3))(react-dom@19.0.0(react@19.0.0))(react@19.0.0) react: - specifier: 18.3.1 - version: 18.3.1 + specifier: 19.0.0 + version: 19.0.0 react-dom: - specifier: 18.3.1 - version: 18.3.1(react@18.3.1) + specifier: 19.0.0 + version: 19.0.0(react@19.0.0) devDependencies: '@repo/eslint-config': specifier: workspace:* @@ -107,14 +107,17 @@ importers: specifier: 22.13.1 version: 22.13.1 '@types/react': - specifier: 18.3.12 - version: 18.3.12 + specifier: 19.0.8 + version: 19.0.8 '@types/react-dom': - specifier: 18.3.1 - version: 18.3.1 + specifier: 19.0.3 + version: 19.0.3(@types/react@19.0.8) eslint: specifier: 9.20.0 version: 9.20.0 + pagefind: + specifier: 1.3.0 + version: 1.3.0 serve: specifier: 14.2.4 version: 14.2.4 @@ -184,7 +187,7 @@ importers: dependencies: next: specifier: 14.2.15 - version: 14.2.15(@playwright/test@1.50.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + version: 14.2.15(@playwright/test@1.50.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) devDependencies: '@repo/typescript-config': specifier: workspace:* @@ -227,7 +230,7 @@ importers: version: 10.4.3 next: specifier: '>= 13.5.1 < 15' - version: 14.2.15(@playwright/test@1.50.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + version: 14.2.15(@playwright/test@1.50.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) redis: specifier: '>= 4.6' version: 4.7.0 @@ -441,6 +444,9 @@ packages: '@chevrotain/utils@11.0.3': resolution: {integrity: sha512-YslZMgtJUyuMbZ+aKvfF3x1f5liK4mWNxghFRv7jqRR9C3R3fAOGTTKvxXDa2Y1s9zSbcpuO0cAxDYsc9SrXoQ==} + '@emnapi/runtime@1.3.1': + resolution: {integrity: sha512-kEBmG8KyqtxJZv+ygbEim+KCGtIq1fC22Ms3S4ziXmYKm8uyoLX0MHONVKwp+9opg390VaKRNt4a7A9NwmpNhw==} + '@esbuild/aix-ppc64@0.23.1': resolution: {integrity: sha512-6VhYk1diRqrhBAqpJEdjASR/+WVRtfjpqKuNw11cLiaWpAT/Uu+nokB+UJnevzy/P9C/ty6AOe0dwueMrGh/iQ==} engines: {node: '>=18'} @@ -848,6 +854,111 @@ packages: '@iconify/utils@2.3.0': resolution: {integrity: sha512-GmQ78prtwYW6EtzXRU1rY+KwOKfz32PD7iJh6Iyqw68GiKuoZ2A6pRtzWONz5VQJbp50mEjXh/7NkumtrAgRKA==} + '@img/sharp-darwin-arm64@0.33.5': + resolution: {integrity: sha512-UT4p+iz/2H4twwAoLCqfA9UH5pI6DggwKEGuaPy7nCVQ8ZsiY5PIcrRvD1DzuY3qYL07NtIQcWnBSY/heikIFQ==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [arm64] + os: [darwin] + + '@img/sharp-darwin-x64@0.33.5': + resolution: {integrity: sha512-fyHac4jIc1ANYGRDxtiqelIbdWkIuQaI84Mv45KvGRRxSAa7o7d1ZKAOBaYbnepLC1WqxfpimdeWfvqqSGwR2Q==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [x64] + os: [darwin] + + '@img/sharp-libvips-darwin-arm64@1.0.4': + resolution: {integrity: sha512-XblONe153h0O2zuFfTAbQYAX2JhYmDHeWikp1LM9Hul9gVPjFY427k6dFEcOL72O01QxQsWi761svJ/ev9xEDg==} + cpu: [arm64] + os: [darwin] + + '@img/sharp-libvips-darwin-x64@1.0.4': + resolution: {integrity: sha512-xnGR8YuZYfJGmWPvmlunFaWJsb9T/AO2ykoP3Fz/0X5XV2aoYBPkX6xqCQvUTKKiLddarLaxpzNe+b1hjeWHAQ==} + cpu: [x64] + os: [darwin] + + '@img/sharp-libvips-linux-arm64@1.0.4': + resolution: {integrity: sha512-9B+taZ8DlyyqzZQnoeIvDVR/2F4EbMepXMc/NdVbkzsJbzkUjhXv/70GQJ7tdLA4YJgNP25zukcxpX2/SueNrA==} + cpu: [arm64] + os: [linux] + + '@img/sharp-libvips-linux-arm@1.0.5': + resolution: {integrity: sha512-gvcC4ACAOPRNATg/ov8/MnbxFDJqf/pDePbBnuBDcjsI8PssmjoKMAz4LtLaVi+OnSb5FK/yIOamqDwGmXW32g==} + cpu: [arm] + os: [linux] + + '@img/sharp-libvips-linux-s390x@1.0.4': + resolution: {integrity: sha512-u7Wz6ntiSSgGSGcjZ55im6uvTrOxSIS8/dgoVMoiGE9I6JAfU50yH5BoDlYA1tcuGS7g/QNtetJnxA6QEsCVTA==} + cpu: [s390x] + os: [linux] + + '@img/sharp-libvips-linux-x64@1.0.4': + resolution: {integrity: sha512-MmWmQ3iPFZr0Iev+BAgVMb3ZyC4KeFc3jFxnNbEPas60e1cIfevbtuyf9nDGIzOaW9PdnDciJm+wFFaTlj5xYw==} + cpu: [x64] + os: [linux] + + '@img/sharp-libvips-linuxmusl-arm64@1.0.4': + resolution: {integrity: sha512-9Ti+BbTYDcsbp4wfYib8Ctm1ilkugkA/uscUn6UXK1ldpC1JjiXbLfFZtRlBhjPZ5o1NCLiDbg8fhUPKStHoTA==} + cpu: [arm64] + os: [linux] + + '@img/sharp-libvips-linuxmusl-x64@1.0.4': + resolution: {integrity: sha512-viYN1KX9m+/hGkJtvYYp+CCLgnJXwiQB39damAO7WMdKWlIhmYTfHjwSbQeUK/20vY154mwezd9HflVFM1wVSw==} + cpu: [x64] + os: [linux] + + '@img/sharp-linux-arm64@0.33.5': + resolution: {integrity: sha512-JMVv+AMRyGOHtO1RFBiJy/MBsgz0x4AWrT6QoEVVTyh1E39TrCUpTRI7mx9VksGX4awWASxqCYLCV4wBZHAYxA==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [arm64] + os: [linux] + + '@img/sharp-linux-arm@0.33.5': + resolution: {integrity: sha512-JTS1eldqZbJxjvKaAkxhZmBqPRGmxgu+qFKSInv8moZ2AmT5Yib3EQ1c6gp493HvrvV8QgdOXdyaIBrhvFhBMQ==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [arm] + os: [linux] + + '@img/sharp-linux-s390x@0.33.5': + resolution: {integrity: sha512-y/5PCd+mP4CA/sPDKl2961b+C9d+vPAveS33s6Z3zfASk2j5upL6fXVPZi7ztePZ5CuH+1kW8JtvxgbuXHRa4Q==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [s390x] + os: [linux] + + '@img/sharp-linux-x64@0.33.5': + resolution: {integrity: sha512-opC+Ok5pRNAzuvq1AG0ar+1owsu842/Ab+4qvU879ippJBHvyY5n2mxF1izXqkPYlGuP/M556uh53jRLJmzTWA==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [x64] + os: [linux] + + '@img/sharp-linuxmusl-arm64@0.33.5': + resolution: {integrity: sha512-XrHMZwGQGvJg2V/oRSUfSAfjfPxO+4DkiRh6p2AFjLQztWUuY/o8Mq0eMQVIY7HJ1CDQUJlxGGZRw1a5bqmd1g==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [arm64] + os: [linux] + + '@img/sharp-linuxmusl-x64@0.33.5': + resolution: {integrity: sha512-WT+d/cgqKkkKySYmqoZ8y3pxx7lx9vVejxW/W4DOFMYVSkErR+w7mf2u8m/y4+xHe7yY9DAXQMWQhpnMuFfScw==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [x64] + os: [linux] + + '@img/sharp-wasm32@0.33.5': + resolution: {integrity: sha512-ykUW4LVGaMcU9lu9thv85CbRMAwfeadCJHRsg2GmeRa/cJxsVY9Rbd57JcMxBkKHag5U/x7TSBpScF4U8ElVzg==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [wasm32] + + '@img/sharp-win32-ia32@0.33.5': + resolution: {integrity: sha512-T36PblLaTwuVJ/zw/LaH0PdZkRz5rd3SmMHX8GSmR7vtNSP5Z6bQkExdSK7xGWyxLw4sUknBuugTelgw2faBbQ==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [ia32] + os: [win32] + + '@img/sharp-win32-x64@0.33.5': + resolution: {integrity: sha512-MpY/o8/8kj+EcnxwvrP4aTJSWw/aZ7JIGR4aBeZkZw5B7/Jn+tY9/VNwtcoGmdT7GfggGIU4kygOMSbYnOrAbg==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [x64] + os: [win32] + '@isaacs/cliui@8.0.2': resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==} engines: {node: '>=12'} @@ -879,12 +990,6 @@ packages: '@mdx-js/mdx@3.1.0': resolution: {integrity: sha512-/QxEhPAvGwbQmy1Px8F899L5Uc2KZ6JtXwlCgJmjSTBedwOZkByYcBG4GceIGPXRDsmfxhHazuS+hlOShRLeDw==} - '@mdx-js/react@3.1.0': - resolution: {integrity: sha512-QjHtSaoameoalGnKDT3FoIl4+9RwyTmo9ZJGBdLOks/YOiWHoRDI3PUwEzOE7kEmGcV3AFcp9K6dYu9rEuKLAQ==} - peerDependencies: - '@types/react': '>=16' - react: '>=16' - '@mermaid-js/parser@0.3.0': resolution: {integrity: sha512-HsvL6zgE5sUPGgkIDlmAWR1HTNHz2Iy11BAWPTa4Jjabkpguy4Ze2gzfLrg6pdRuBvFwgUYyxiaNqZwrEEXepA==} @@ -979,6 +1084,9 @@ packages: '@next/env@14.2.15': resolution: {integrity: sha512-S1qaj25Wru2dUpcIZMjxeMVSwkt8BK4dmWHHiBuRstcIyOsMapqT4A4jSB6onvqeygkSSmOkyny9VVx8JIGamQ==} + '@next/env@15.1.6': + resolution: {integrity: sha512-d9AFQVPEYNr+aqokIiPLNK/MTyt3DWa/dpKveiAaVccUadFbhFEvY6FXYX2LJO2Hv7PHnLBu2oWwB4uBuHjr/w==} + '@next/eslint-plugin-next@15.1.6': resolution: {integrity: sha512-+slMxhTgILUntZDGNgsKEYHUvpn72WP1YTlkmEhS51vnVd7S9jEEy0n9YAMcI21vUG4akTw9voWH02lrClt/yw==} @@ -988,42 +1096,84 @@ packages: cpu: [arm64] os: [darwin] + '@next/swc-darwin-arm64@15.1.6': + resolution: {integrity: sha512-u7lg4Mpl9qWpKgy6NzEkz/w0/keEHtOybmIl0ykgItBxEM5mYotS5PmqTpo+Rhg8FiOiWgwr8USxmKQkqLBCrw==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [darwin] + '@next/swc-darwin-x64@14.2.15': resolution: {integrity: sha512-5TGyjFcf8ampZP3e+FyCax5zFVHi+Oe7sZyaKOngsqyaNEpOgkKB3sqmymkZfowy3ufGA/tUgDPPxpQx931lHg==} engines: {node: '>= 10'} cpu: [x64] os: [darwin] + '@next/swc-darwin-x64@15.1.6': + resolution: {integrity: sha512-x1jGpbHbZoZ69nRuogGL2MYPLqohlhnT9OCU6E6QFewwup+z+M6r8oU47BTeJcWsF2sdBahp5cKiAcDbwwK/lg==} + engines: {node: '>= 10'} + cpu: [x64] + os: [darwin] + '@next/swc-linux-arm64-gnu@14.2.15': resolution: {integrity: sha512-3Bwv4oc08ONiQ3FiOLKT72Q+ndEMyLNsc/D3qnLMbtUYTQAmkx9E/JRu0DBpHxNddBmNT5hxz1mYBphJ3mfrrw==} engines: {node: '>= 10'} cpu: [arm64] os: [linux] + '@next/swc-linux-arm64-gnu@15.1.6': + resolution: {integrity: sha512-jar9sFw0XewXsBzPf9runGzoivajeWJUc/JkfbLTC4it9EhU8v7tCRLH7l5Y1ReTMN6zKJO0kKAGqDk8YSO2bg==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [linux] + '@next/swc-linux-arm64-musl@14.2.15': resolution: {integrity: sha512-k5xf/tg1FBv/M4CMd8S+JL3uV9BnnRmoe7F+GWC3DxkTCD9aewFRH1s5rJ1zkzDa+Do4zyN8qD0N8c84Hu96FQ==} engines: {node: '>= 10'} cpu: [arm64] os: [linux] + '@next/swc-linux-arm64-musl@15.1.6': + resolution: {integrity: sha512-+n3u//bfsrIaZch4cgOJ3tXCTbSxz0s6brJtU3SzLOvkJlPQMJ+eHVRi6qM2kKKKLuMY+tcau8XD9CJ1OjeSQQ==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [linux] + '@next/swc-linux-x64-gnu@14.2.15': resolution: {integrity: sha512-kE6q38hbrRbKEkkVn62reLXhThLRh6/TvgSP56GkFNhU22TbIrQDEMrO7j0IcQHcew2wfykq8lZyHFabz0oBrA==} engines: {node: '>= 10'} cpu: [x64] os: [linux] + '@next/swc-linux-x64-gnu@15.1.6': + resolution: {integrity: sha512-SpuDEXixM3PycniL4iVCLyUyvcl6Lt0mtv3am08sucskpG0tYkW1KlRhTgj4LI5ehyxriVVcfdoxuuP8csi3kQ==} + engines: {node: '>= 10'} + cpu: [x64] + os: [linux] + '@next/swc-linux-x64-musl@14.2.15': resolution: {integrity: sha512-PZ5YE9ouy/IdO7QVJeIcyLn/Rc4ml9M2G4y3kCM9MNf1YKvFY4heg3pVa/jQbMro+tP6yc4G2o9LjAz1zxD7tQ==} engines: {node: '>= 10'} cpu: [x64] os: [linux] + '@next/swc-linux-x64-musl@15.1.6': + resolution: {integrity: sha512-L4druWmdFSZIIRhF+G60API5sFB7suTbDRhYWSjiw0RbE+15igQvE2g2+S973pMGvwN3guw7cJUjA/TmbPWTHQ==} + engines: {node: '>= 10'} + cpu: [x64] + os: [linux] + '@next/swc-win32-arm64-msvc@14.2.15': resolution: {integrity: sha512-2raR16703kBvYEQD9HNLyb0/394yfqzmIeyp2nDzcPV4yPjqNUG3ohX6jX00WryXz6s1FXpVhsCo3i+g4RUX+g==} engines: {node: '>= 10'} cpu: [arm64] os: [win32] + '@next/swc-win32-arm64-msvc@15.1.6': + resolution: {integrity: sha512-s8w6EeqNmi6gdvM19tqKKWbCyOBvXFbndkGHl+c9YrzsLARRdCHsD9S1fMj8gsXm9v8vhC8s3N8rjuC/XrtkEg==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [win32] + '@next/swc-win32-ia32-msvc@14.2.15': resolution: {integrity: sha512-fyTE8cklgkyR1p03kJa5zXEaZ9El+kDNM5A+66+8evQS5e/6v0Gk28LqA0Jet8gKSOyP+OTm/tJHzMlGdQerdQ==} engines: {node: '>= 10'} @@ -1036,6 +1186,12 @@ packages: cpu: [x64] os: [win32] + '@next/swc-win32-x64-msvc@15.1.6': + resolution: {integrity: sha512-6xomMuu54FAFxttYr5PJbEfu96godcxBTRk1OhAvJq0/EnmFU/Ybiax30Snis4vdWZ9LGpf7Roy5fSs7v/5ROQ==} + engines: {node: '>= 10'} + cpu: [x64] + os: [win32] + '@nodelib/fs.scandir@2.1.5': resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} engines: {node: '>= 8'} @@ -1048,6 +1204,31 @@ packages: resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} engines: {node: '>= 8'} + '@pagefind/darwin-arm64@1.3.0': + resolution: {integrity: sha512-365BEGl6ChOsauRjyVpBjXybflXAOvoMROw3TucAROHIcdBvXk9/2AmEvGFU0r75+vdQI4LJdJdpH4Y6Yqaj4A==} + cpu: [arm64] + os: [darwin] + + '@pagefind/darwin-x64@1.3.0': + resolution: {integrity: sha512-zlGHA23uuXmS8z3XxEGmbHpWDxXfPZ47QS06tGUq0HDcZjXjXHeLG+cboOy828QIV5FXsm9MjfkP5e4ZNbOkow==} + cpu: [x64] + os: [darwin] + + '@pagefind/linux-arm64@1.3.0': + resolution: {integrity: sha512-8lsxNAiBRUk72JvetSBXs4WRpYrQrVJXjlRRnOL6UCdBN9Nlsz0t7hWstRk36+JqHpGWOKYiuHLzGYqYAqoOnQ==} + cpu: [arm64] + os: [linux] + + '@pagefind/linux-x64@1.3.0': + resolution: {integrity: sha512-hAvqdPJv7A20Ucb6FQGE6jhjqy+vZ6pf+s2tFMNtMBG+fzcdc91uTw7aP/1Vo5plD0dAOHwdxfkyw0ugal4kcQ==} + cpu: [x64] + os: [linux] + + '@pagefind/windows-x64@1.3.0': + resolution: {integrity: sha512-BR1bIRWOMqkf8IoU576YDhij1Wd/Zf2kX/kCI0b2qzCKC8wcc2GQJaaRMCpzvCCrmliO4vtJ6RITp/AnoYUUmQ==} + cpu: [x64] + os: [win32] + '@pkgjs/parseargs@0.11.0': resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} engines: {node: '>=14'} @@ -1233,26 +1414,26 @@ packages: cpu: [x64] os: [win32] - '@shikijs/core@1.29.2': - resolution: {integrity: sha512-vju0lY9r27jJfOY4Z7+Rt/nIOjzJpZ3y+nYpqtUZInVoXQ/TJZcfGnNOGnKjFdVZb8qexiCuSlZRKcGfhhTTZQ==} + '@shikijs/core@2.3.2': + resolution: {integrity: sha512-s7vyL3LzUKm3Qwf36zRWlavX9BQMZTIq9B1almM63M5xBuSldnsTHCmsXzoF/Kyw4k7Xgas7yAyJz9VR/vcP1A==} - '@shikijs/engine-javascript@1.29.2': - resolution: {integrity: sha512-iNEZv4IrLYPv64Q6k7EPpOCE/nuvGiKl7zxdq0WFuRPF5PAE9PRo2JGq/d8crLusM59BRemJ4eOqrFrC4wiQ+A==} + '@shikijs/engine-javascript@2.3.2': + resolution: {integrity: sha512-w3IEMu5HfL/OaJTsMbIfZ1HRPnWVYRANeDtmsdIIEgUOcLjzFJFQwlnkckGjKHekEzNqlMLbgB/twnfZ/EEAGg==} - '@shikijs/engine-oniguruma@1.29.2': - resolution: {integrity: sha512-7iiOx3SG8+g1MnlzZVDYiaeHe7Ez2Kf2HrJzdmGwkRisT7r4rak0e655AcM/tF9JG/kg5fMNYlLLKglbN7gBqA==} + '@shikijs/engine-oniguruma@2.3.2': + resolution: {integrity: sha512-vikMY1TroyZXUHIXbMnvY/mjtOxMn+tavcfAeQPgWS9FHcgFSUoEtywF5B5sOLb9NXb8P2vb7odkh3nj15/00A==} - '@shikijs/langs@1.29.2': - resolution: {integrity: sha512-FIBA7N3LZ+223U7cJDUYd5shmciFQlYkFXlkKVaHsCPgfVLiO+e12FmQE6Tf9vuyEsFe3dIl8qGWKXgEHL9wmQ==} + '@shikijs/langs@2.3.2': + resolution: {integrity: sha512-UqI6bSxFzhexIJficZLKeB1L2Sc3xoNiAV0yHpfbg5meck93du+EKQtsGbBv66Ki53XZPhnR/kYkOr85elIuFw==} - '@shikijs/themes@1.29.2': - resolution: {integrity: sha512-i9TNZlsq4uoyqSbluIcZkmPL9Bfi3djVxRnofUHwvx/h6SRW3cwgBC5SML7vsDcWyukY0eCzVN980rqP6qNl9g==} + '@shikijs/themes@2.3.2': + resolution: {integrity: sha512-QAh7D/hhfYKHibkG2tti8vxNt3ekAH5EqkXJeJbTh7FGvTCWEI7BHqNCtMdjFvZ0vav5nvUgdvA7/HI7pfsB4w==} - '@shikijs/twoslash@1.29.2': - resolution: {integrity: sha512-2S04ppAEa477tiaLfGEn1QJWbZUmbk8UoPbAEw4PifsrxkBXtAtOflIZJNtuCwz8ptc/TPxy7CO7gW4Uoi6o/g==} + '@shikijs/twoslash@2.3.2': + resolution: {integrity: sha512-eYLSPNKH7qWpoStesZlDix+Mdppb/VUBc7LFZyOwTvTzZ6H+DS3OMUDH0wndc6ZWYUR27cyDMtFZoBjyzxRL0A==} - '@shikijs/types@1.29.2': - resolution: {integrity: sha512-VJjK0eIijTZf0QSTODEXCqinjBn0joAHQ+aPSBzrv4O2d/QSbsMw+ZeSRx03kV34Hy7NzUvV/7NqfYGRLrASmw==} + '@shikijs/types@2.3.2': + resolution: {integrity: sha512-CBaMY+a3pepyC4SETi7+bSzO0f6hxEQJUUuS4uD7zppzjmrN4ZRtBqxaT+wOan26CR9eeJ5iBhc4qvWEwn7Eeg==} '@shikijs/vscode-textmate@10.0.1': resolution: {integrity: sha512-fTIQwLF+Qhuws31iw7Ncl1R3HUDtGwIipiJ9iU+UsDUwMhegFcQKQHd51nZjb7CArq0MvON8rbgCGQYWHUKAdg==} @@ -1275,8 +1456,8 @@ packages: '@tanstack/virtual-core@3.13.0': resolution: {integrity: sha512-NBKJP3OIdmZY3COJdWkSonr50FMVIi+aj5ZJ7hI/DTpEKg2RMfo/KvP8A3B/zOSpMgIe52B5E2yn7rryULzA6g==} - '@theguild/remark-mermaid@0.1.3': - resolution: {integrity: sha512-2FjVlaaKXK7Zj7UJAgOVTyaahn/3/EAfqYhyXg0BfDBVUl+lXcoIWRaxzqfnDr2rv8ax6GsC5mNh6hAaT86PDw==} + '@theguild/remark-mermaid@0.2.0': + resolution: {integrity: sha512-o8n57TJy0OI4PCrNw8z6S+vpHtrwoQZzTA5Y3fL0U1NDRIoMg/78duWgEBFsCZcWM1G6zjE91yg1aKCsDwgE2Q==} peerDependencies: react: ^18.2.0 @@ -1427,9 +1608,17 @@ packages: '@types/react-dom@18.3.1': resolution: {integrity: sha512-qW1Mfv8taImTthu4KoXgDfLuk4bydU6Q/TkADnDWWHwi4NX4BR+LWfTp2sVmTqRrsHvyDDTelgelxJ+SsejKKQ==} + '@types/react-dom@19.0.3': + resolution: {integrity: sha512-0Knk+HJiMP/qOZgMyNFamlIjw9OFCsyC2ZbigmEEyXXixgre6IQpm/4V+r3qH4GC1JPvRJKInw+on2rV6YZLeA==} + peerDependencies: + '@types/react': ^19.0.0 + '@types/react@18.3.12': resolution: {integrity: sha512-D2wOSq/d6Agt28q7rSI3jhU7G6aiuzljDGZ2hTZHIkrTLUI+AF3WMeKkEZ9nN2fkBAlcktT6vcZjDFiIhMYEQw==} + '@types/react@19.0.8': + resolution: {integrity: sha512-9P/o1IGdfmQxrujGbIMDyYaaCykhLKc0NGCtYcECNUr9UAaDe4gwvV9bR6tvd5Br1SG0j+PBpbKr2UYY8CwqSw==} + '@types/trusted-types@2.0.7': resolution: {integrity: sha512-ScaPdn1dQczgbl0QFTeTOmVHFULt394XJgOQNoyVhZ6r2vLnMLJfBPd53SB52T/3G36VI1/g2MZaX0cwDuXsfw==} @@ -1840,6 +2029,13 @@ packages: color-name@1.1.4: resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} + color-string@1.9.1: + resolution: {integrity: sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==} + + color@4.2.3: + resolution: {integrity: sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==} + engines: {node: '>=12.5.0'} + colorette@2.0.20: resolution: {integrity: sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==} @@ -2173,6 +2369,10 @@ packages: resolution: {integrity: sha512-Mc7QhQ8s+cLrnUfU/Ji94vG/r8M26m8f++vyres4ZoojaRDpZ1eSIh/EpzLNwlWuvzSZ3UbDFspjFvTDXe6e/g==} engines: {node: '>=12.20'} + detect-libc@2.0.3: + resolution: {integrity: sha512-bwy0MGW55bG41VqxxypOsdSdGqLwXPI/focwgTYCFMbdUiBAxLg9CFzG08sz2aqzknwiX7Hkl0bQENjg8iLByw==} + engines: {node: '>=8'} + detect-newline@4.0.1: resolution: {integrity: sha512-qE3Veg1YXzGHQhlA6jzebZN2qVf6NX+A7m7qlhCGG30dJixrAQhYOsJjsnBjJkCSmuOPpCk30145fr8FV0bzog==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} @@ -2409,10 +2609,6 @@ packages: resolution: {integrity: sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==} engines: {node: '>=16.17'} - extend-shallow@2.0.1: - resolution: {integrity: sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==} - engines: {node: '>=0.10.0'} - extend@3.0.2: resolution: {integrity: sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==} @@ -2515,9 +2711,6 @@ packages: flatted@3.3.2: resolution: {integrity: sha512-AiwGJM8YcNOaobumgtng+6NHuOqC3A7MixFeDafM3X9cIUM+xUXoS5Vfgf+OihAYe20fxqNM9yPBXJzRtZ/4eA==} - flexsearch@0.7.43: - resolution: {integrity: sha512-c5o/+Um8aqCSOXGcZoqZOm+NqtVwNsvVpWv6lfmSclU954O3wvQKxxK8zj74fPaSJbXpSLTs4PRhh+wnoCXnKg==} - follow-redirects@1.15.9: resolution: {integrity: sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==} engines: {node: '>=4.0'} @@ -2661,10 +2854,6 @@ packages: graphemer@1.4.0: resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==} - gray-matter@4.0.3: - resolution: {integrity: sha512-5v6yZd4JK3eMI3FqqCouswVqwugaA9r4dNZB1wwcmrD02QkV5H0y7XBQW8QwQqEaZY1pM9aqORSORhJRdNK44Q==} - engines: {node: '>=6.0'} - hachure-fill@0.5.2: resolution: {integrity: sha512-3GKBOn+m2LX9iq+JC1064cSFprJY4jL1jCXTcpnfER5HYE2l/4EfWSGzkPa/ZDBmYI0ZOEj5VHV/eKnPGkHuOg==} @@ -2820,6 +3009,9 @@ packages: resolution: {integrity: sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==} engines: {node: '>= 0.4'} + is-arrayish@0.3.2: + resolution: {integrity: sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==} + is-async-function@2.1.1: resolution: {integrity: sha512-9dgM/cZBnNvjzaMYHVoxxfPj2QXt22Ev7SuuPrs+xav0ukGB0S6d4ydZdEiM48kLx5kDV+QBPrpVnFyefL8kkQ==} engines: {node: '>= 0.4'} @@ -2865,10 +3057,6 @@ packages: engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} hasBin: true - is-extendable@0.1.1: - resolution: {integrity: sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==} - engines: {node: '>=0.10.0'} - is-extglob@2.1.1: resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} engines: {node: '>=0.10.0'} @@ -3054,10 +3242,6 @@ packages: khroma@2.1.0: resolution: {integrity: sha512-Ls993zuzfayK269Svk9hzpeGUKob/sIgZzyHYdjQoAdQetRKpOLj+k/QQQ/6Qi0Yz65mlROrfd+Ev+1+7dz9Kw==} - kind-of@6.0.3: - resolution: {integrity: sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==} - engines: {node: '>=0.10.0'} - kolorist@1.8.0: resolution: {integrity: sha512-Y+60/zizpJ3HRH8DCss+q95yr6145JXZo46OTpFvDZWLfRCE4qChOyk1b26nMaNpfHHgxagk9dXT5OP0Tfe+dQ==} @@ -3460,19 +3644,40 @@ packages: sass: optional: true - nextra-theme-docs@3.2.4: - resolution: {integrity: sha512-3fg7zMHInuvSDURRJjh6UrbdqkK8uLs8RNriY38kVukWLvaVP2f6mmVJKIYqxVv6qAKWEzDLTr4dlJCY81eXuQ==} + next@15.1.6: + resolution: {integrity: sha512-Hch4wzbaX0vKQtalpXvUiw5sYivBy4cm5rzUKrBnUB/y436LGrvOUqYvlSeNVCWFO/770gDlltR9gqZH62ct4Q==} + engines: {node: ^18.18.0 || ^19.8.0 || >= 20.0.0} + hasBin: true + peerDependencies: + '@opentelemetry/api': ^1.1.0 + '@playwright/test': ^1.41.2 + babel-plugin-react-compiler: '*' + react: ^18.2.0 || 19.0.0-rc-de68d2f4-20241204 || ^19.0.0 + react-dom: ^18.2.0 || 19.0.0-rc-de68d2f4-20241204 || ^19.0.0 + sass: ^1.3.0 + peerDependenciesMeta: + '@opentelemetry/api': + optional: true + '@playwright/test': + optional: true + babel-plugin-react-compiler: + optional: true + sass: + optional: true + + nextra-theme-docs@4.2.4: + resolution: {integrity: sha512-8xXn88EkIg9CLP/O+xcrze1fZFg3kzT2DW6auZYGbR+fruMbGAXcsqntJ+vOdbBPx/z4KjWMt6mWPiI5Whtrvw==} peerDependencies: - next: '>=13' - nextra: 3.2.4 + next: '>=14' + nextra: 4.2.4 react: '>=18' react-dom: '>=18' - nextra@3.2.4: - resolution: {integrity: sha512-xvQuPVtRoJTz4ynIbEkxYkEtviIX699lt4coij2IMmafYrBNaD0Ofj93jIz7VngYxyT9f4gWSiwqNgoIlnbsjQ==} + nextra@4.2.4: + resolution: {integrity: sha512-pB91o5jrgcIkkot79GbTtfg9qZtLtzzMJRzbeqeL+HSVGLFhj2urEAOPzpc47emvdmEjjNLyB7LQ8BcBZvrlxg==} engines: {node: '>=18'} peerDependencies: - next: '>=13' + next: '>=14' react: '>=18' react-dom: '>=18' @@ -3546,8 +3751,8 @@ packages: resolution: {integrity: sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==} engines: {node: '>=12'} - oniguruma-to-es@2.3.0: - resolution: {integrity: sha512-bwALDxriqfKGfUufKGGepCzu9x7nJQuoRoAFp4AnwehhC2crqrDIAP/uN2qdlsAvSMpeRC3+Yzhqc7hLmle5+g==} + oniguruma-to-es@3.1.0: + resolution: {integrity: sha512-BJ3Jy22YlgejHSO7Fvmz1kKazlaPmRSUH+4adTDUS/dKQ4wLxI+gALZ8updbaux7/m7fIlpgOZ5fp/Inq5jUAw==} optionator@0.9.4: resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==} @@ -3576,10 +3781,6 @@ packages: resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} engines: {node: '>=10'} - p-limit@6.2.0: - resolution: {integrity: sha512-kuUqqHNUqoIWp/c467RI4X6mmyuojY5jGutNU0wVTmEOOfcuwLqyMVoAi9MKi2Ak+5i9+nhmrK4ufZE8069kHA==} - engines: {node: '>=18'} - p-locate@4.1.0: resolution: {integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==} engines: {node: '>=8'} @@ -3610,6 +3811,10 @@ packages: package-manager-detector@0.2.9: resolution: {integrity: sha512-+vYvA/Y31l8Zk8dwxHhL3JfTuHPm6tlxM2A3GeQyl7ovYnSp1+mzAxClxaOr0qO1TtPxbQxetI7v5XqKLJZk7Q==} + pagefind@1.3.0: + resolution: {integrity: sha512-8KPLGT5g9s+olKMRTU9LFekLizkVIu9tes90O1/aigJ0T5LmyPqTzGJrETnSw3meSYg58YH7JTzhTTW/3z6VAw==} + hasBin: true + pako@0.2.9: resolution: {integrity: sha512-NUcwaKxUxWrZLpDG+z/xZaCgQITkA/Dv4V/T6bw7VON6l1Xz/VnrBqrYjZQ12TamKHzITTfOEIYUj48y2KXImA==} @@ -3835,18 +4040,38 @@ packages: resolution: {integrity: sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==} hasBin: true + react-compiler-runtime@0.0.0-experimental-22c6e49-20241219: + resolution: {integrity: sha512-bOAGaRL1ldfIIpbDsl+uV025Ta6RS6/cOjvvh8r2Vo7KtqB+RSvihVYRsWQz7ECKNPWdq5MClS845acwAwieDw==} + peerDependencies: + react: ^17.0.0 || ^18.0.0 || ^19.0.0 + react-dom@18.3.1: resolution: {integrity: sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw==} peerDependencies: react: ^18.3.1 + react-dom@19.0.0: + resolution: {integrity: sha512-4GV5sHFG0e/0AD4X+ySy6UJd3jVl1iNsNHdpad0qhABJ11twS3TTBnseqsKurKcsNqCEFeGL3uLpVChpIO3QfQ==} + peerDependencies: + react: ^19.0.0 + react-is@16.13.1: resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==} + react-medium-image-zoom@5.2.13: + resolution: {integrity: sha512-KcBL4OsoUQJgIFh6vQgt/6sRGqDy6bQBcsbhGD2tsy4B5Pw3dWrboocVOyIm76RRALEZ6Qwp3EDvIvfEv0m5sg==} + peerDependencies: + react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 + react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 + react@18.3.1: resolution: {integrity: sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==} engines: {node: '>=0.10.0'} + react@19.0.0: + resolution: {integrity: sha512-V8AVnmPIICiWpGfm6GLzCR/W5FXLchHop40W4nXBmdlEceh16rCN8O8LNWm5bh5XUX91fh7KpA+W0TgMKmgTpQ==} + engines: {node: '>=0.10.0'} + read-yaml-file@1.1.0: resolution: {integrity: sha512-VIMnQi/Z4HT2Fxuwg5KrY174U1VdUIASQVWXXyqtNRtxSr9IYkn1rsI6Tb6HsrHCmB7gVpNwX6JxPTHcH6IoTA==} engines: {node: '>=6'} @@ -3892,14 +4117,14 @@ packages: regenerator-runtime@0.14.1: resolution: {integrity: sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==} - regex-recursion@5.1.1: - resolution: {integrity: sha512-ae7SBCbzVNrIjgSbh7wMznPcQel1DNlDtzensnFxpiNpXt1U2ju/bHugH422r+4LAVS1FpW1YCwilmnNsjum9w==} + regex-recursion@6.0.2: + resolution: {integrity: sha512-0YCaSCq2VRIebiaUviZNs0cBz1kg5kVS2UKUfNIx8YVs1cN3AV7NTctO5FOKBA+UT2BPJIWZauYHPqJODG50cg==} regex-utilities@2.3.0: resolution: {integrity: sha512-8VhliFJAWRaUiVvREIiW2NXXTmHs4vMNnSzuJVhscgmGav3g9VDxLrQndI3dZZVVdp0ZO/5v0xmX516/7M9cng==} - regex@5.1.1: - resolution: {integrity: sha512-dN5I359AVGPnwzJm2jN1k0W9LPZ+ePvoOeVMMfqIMFz53sSwXkxaJoxr50ptnsC771lK95BnTrVSZxq0b9yCGw==} + regex@6.0.1: + resolution: {integrity: sha512-uorlqlzAKjKQZ5P+kTJr3eeJGSVroLKoHmquUj4zHWuR+hEyNqlXsSKlYYF5F4NI6nl7tWCs0apKJ0lmfsXAPA==} regexp.prototype.flags@1.5.4: resolution: {integrity: sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==} @@ -4063,13 +4288,12 @@ packages: scheduler@0.23.2: resolution: {integrity: sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==} + scheduler@0.25.0: + resolution: {integrity: sha512-xFVuu11jh+xcO7JOAGJNOXld8/TcEHK/4CituBUeUb5hqxJLj9YuemAEuvm9gQ/+pgXYfbQuqAkiYu+u7YEsNA==} + scroll-into-view-if-needed@3.1.0: resolution: {integrity: sha512-49oNpRjWRvnU8NyGVmUaYG4jtTkNonFZI86MmGRDqBphEK2EXT9gdEUoQPZhuBM8yWHxCWbobltqYO5M4XrUvQ==} - section-matter@1.0.0: - resolution: {integrity: sha512-vfD3pmTzGpufjScBh50YHKzEu2lxBWhVEHsNGoEXmCmn2hKGfeNLYMzCJpe8cD7gqX7TJluOVpBkAequ6dgMmA==} - engines: {node: '>=4'} - secure-json-parse@2.7.0: resolution: {integrity: sha512-6aU+Rwsezw7VR8/nyvKTx8QpWH9FrcYiXXlqC4z5d5XQBDRqtbfsRjnwGyqbi3gddNtWHuEk9OANUotL26qKUw==} @@ -4113,6 +4337,10 @@ packages: resolution: {integrity: sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw==} engines: {node: '>= 0.4'} + sharp@0.33.5: + resolution: {integrity: sha512-haPVm1EkS9pgvHrQ/F3Xy+hgcuMV0Wm9vfIBSiwZ05k+xgb0PkBQpGsAA/oWdDobNaZTH5ppvHtzCFbnSEwHVw==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + shebang-command@2.0.0: resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} engines: {node: '>=8'} @@ -4121,8 +4349,8 @@ packages: resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} engines: {node: '>=8'} - shiki@1.29.2: - resolution: {integrity: sha512-njXuliz/cP+67jU2hukkxCNuH1yUi4QfdZZY+sMr5PPrIyXSu5iTb/qYC4BiWWB0vZ+7TbdvYUCeL23zpwCfbg==} + shiki@2.3.2: + resolution: {integrity: sha512-UZhz/gsUz7DHFbQBOJP7eXqvKyYvMGramxQiSDc83M/7OkWm6OdVHAReEc3vMLh6L6TRhgL9dvhXz9XDkCDaaw==} shimmer@1.2.1: resolution: {integrity: sha512-sQTKC1Re/rM6XyFM6fIAGHRPVGvyXfgzIDvzoq608vM+jeyVD0Tu1E6Np0Kc2zAIFWIj963V2800iF/9LPieQw==} @@ -4150,6 +4378,9 @@ packages: resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} engines: {node: '>=14'} + simple-swizzle@0.2.2: + resolution: {integrity: sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==} + slash@3.0.0: resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==} engines: {node: '>=8'} @@ -4264,10 +4495,6 @@ packages: resolution: {integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==} engines: {node: '>=12'} - strip-bom-string@1.0.0: - resolution: {integrity: sha512-uCC2VHvQRYu+lMh4My/sFNmF2klFymLX1wHJeXnbEJERpV/ZsVuonzerjfrGpIGF7LBVa1O7i9kjiWvJiFck8g==} - engines: {node: '>=0.10.0'} - strip-bom@3.0.0: resolution: {integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==} engines: {node: '>=4'} @@ -4304,6 +4531,19 @@ packages: babel-plugin-macros: optional: true + styled-jsx@5.1.6: + resolution: {integrity: sha512-qSVyDTeMotdvQYoHWLNGwRFJHC+i+ZvdBRYosOFgC+Wg1vx4frN2/RG/NA7SYqqvKNLf39P2LSRA2pu6n0XYZA==} + engines: {node: '>= 12.0.0'} + peerDependencies: + '@babel/core': '*' + babel-plugin-macros: '*' + react: '>= 16.8.0 || 17.x.x || ^18.0.0-0 || ^19.0.0-0' + peerDependenciesMeta: + '@babel/core': + optional: true + babel-plugin-macros: + optional: true + stylis@4.3.6: resolution: {integrity: sha512-yQ3rwFWRfwNUY7H5vpU0wfdkNSnvnJinhF9830Swlaxl03zsOjCfmX0ugac+3LtK0lYSgwL/KXc8oYL3mG4YFQ==} @@ -4701,10 +4941,6 @@ packages: resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} engines: {node: '>=10'} - yocto-queue@1.1.1: - resolution: {integrity: sha512-b4JR1PFR10y1mKjhHY9LaGo6tmrgjit7hxVIeAmyMw3jegXR4dhYqLaQF5zMXZxY7tLpMyJeLjr1C4rLmkVe8g==} - engines: {node: '>=12.20'} - zod-validation-error@3.4.0: resolution: {integrity: sha512-ZOPR9SVY6Pb2qqO5XHt+MkkTRxGXb4EVtnjc9JpXUOtUB1T9Ru7mZOT361AN3MsetVe7R0a1KZshJDZdgp9miQ==} engines: {node: '>=18.0.0'} @@ -4714,6 +4950,24 @@ packages: zod@3.24.1: resolution: {integrity: sha512-muH7gBL9sI1nciMZV67X5fTKKBLtwpZ5VBp1vsOQzj1MhrBZ4wlVCm3gedKZWLp0Oyel8sIGfeiz54Su+OVT+A==} + zustand@5.0.3: + resolution: {integrity: sha512-14fwWQtU3pH4dE0dOpdMiWjddcH+QzKIgk1cl8epwSE7yag43k/AD/m4L6+K7DytAOr9gGBe3/EXj9g7cdostg==} + engines: {node: '>=12.20.0'} + peerDependencies: + '@types/react': '>=18.0.0' + immer: '>=9.0.6' + react: '>=18.0.0' + use-sync-external-store: '>=1.2.0' + peerDependenciesMeta: + '@types/react': + optional: true + immer: + optional: true + react: + optional: true + use-sync-external-store: + optional: true + zwitch@2.0.4: resolution: {integrity: sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==} @@ -4926,6 +5180,11 @@ snapshots: '@chevrotain/utils@11.0.3': {} + '@emnapi/runtime@1.3.1': + dependencies: + tslib: 2.8.1 + optional: true + '@esbuild/aix-ppc64@0.23.1': optional: true @@ -5151,18 +5410,18 @@ snapshots: '@floating-ui/core': 1.6.9 '@floating-ui/utils': 0.2.9 - '@floating-ui/react-dom@2.1.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@floating-ui/react-dom@2.1.2(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': dependencies: '@floating-ui/dom': 1.6.13 - react: 18.3.1 - react-dom: 18.3.1(react@18.3.1) + react: 19.0.0 + react-dom: 19.0.0(react@19.0.0) - '@floating-ui/react@0.26.28(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@floating-ui/react@0.26.28(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': dependencies: - '@floating-ui/react-dom': 2.1.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@floating-ui/react-dom': 2.1.2(react-dom@19.0.0(react@19.0.0))(react@19.0.0) '@floating-ui/utils': 0.2.9 - react: 18.3.1 - react-dom: 18.3.1(react@18.3.1) + react: 19.0.0 + react-dom: 19.0.0(react@19.0.0) tabbable: 6.2.0 '@floating-ui/utils@0.2.9': {} @@ -5171,14 +5430,14 @@ snapshots: dependencies: tslib: 2.8.1 - '@headlessui/react@2.2.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@headlessui/react@2.2.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': dependencies: - '@floating-ui/react': 0.26.28(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/focus': 3.19.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/interactions': 3.23.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@tanstack/react-virtual': 3.13.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - react: 18.3.1 - react-dom: 18.3.1(react@18.3.1) + '@floating-ui/react': 0.26.28(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + '@react-aria/focus': 3.19.1(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + '@react-aria/interactions': 3.23.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + '@tanstack/react-virtual': 3.13.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + react: 19.0.0 + react-dom: 19.0.0(react@19.0.0) '@humanfs/core@0.19.1': {} @@ -5208,6 +5467,81 @@ snapshots: transitivePeerDependencies: - supports-color + '@img/sharp-darwin-arm64@0.33.5': + optionalDependencies: + '@img/sharp-libvips-darwin-arm64': 1.0.4 + optional: true + + '@img/sharp-darwin-x64@0.33.5': + optionalDependencies: + '@img/sharp-libvips-darwin-x64': 1.0.4 + optional: true + + '@img/sharp-libvips-darwin-arm64@1.0.4': + optional: true + + '@img/sharp-libvips-darwin-x64@1.0.4': + optional: true + + '@img/sharp-libvips-linux-arm64@1.0.4': + optional: true + + '@img/sharp-libvips-linux-arm@1.0.5': + optional: true + + '@img/sharp-libvips-linux-s390x@1.0.4': + optional: true + + '@img/sharp-libvips-linux-x64@1.0.4': + optional: true + + '@img/sharp-libvips-linuxmusl-arm64@1.0.4': + optional: true + + '@img/sharp-libvips-linuxmusl-x64@1.0.4': + optional: true + + '@img/sharp-linux-arm64@0.33.5': + optionalDependencies: + '@img/sharp-libvips-linux-arm64': 1.0.4 + optional: true + + '@img/sharp-linux-arm@0.33.5': + optionalDependencies: + '@img/sharp-libvips-linux-arm': 1.0.5 + optional: true + + '@img/sharp-linux-s390x@0.33.5': + optionalDependencies: + '@img/sharp-libvips-linux-s390x': 1.0.4 + optional: true + + '@img/sharp-linux-x64@0.33.5': + optionalDependencies: + '@img/sharp-libvips-linux-x64': 1.0.4 + optional: true + + '@img/sharp-linuxmusl-arm64@0.33.5': + optionalDependencies: + '@img/sharp-libvips-linuxmusl-arm64': 1.0.4 + optional: true + + '@img/sharp-linuxmusl-x64@0.33.5': + optionalDependencies: + '@img/sharp-libvips-linuxmusl-x64': 1.0.4 + optional: true + + '@img/sharp-wasm32@0.33.5': + dependencies: + '@emnapi/runtime': 1.3.1 + optional: true + + '@img/sharp-win32-ia32@0.33.5': + optional: true + + '@img/sharp-win32-x64@0.33.5': + optional: true + '@isaacs/cliui@8.0.2': dependencies: string-width: 5.1.2 @@ -5280,12 +5614,6 @@ snapshots: - acorn - supports-color - '@mdx-js/react@3.1.0(@types/react@18.3.12)(react@18.3.1)': - dependencies: - '@types/mdx': 2.0.13 - '@types/react': 18.3.12 - react: 18.3.1 - '@mermaid-js/parser@0.3.0': dependencies: langium: 3.0.0 @@ -5351,6 +5679,8 @@ snapshots: '@next/env@14.2.15': {} + '@next/env@15.1.6': {} + '@next/eslint-plugin-next@15.1.6': dependencies: fast-glob: 3.3.1 @@ -5358,30 +5688,54 @@ snapshots: '@next/swc-darwin-arm64@14.2.15': optional: true + '@next/swc-darwin-arm64@15.1.6': + optional: true + '@next/swc-darwin-x64@14.2.15': optional: true + '@next/swc-darwin-x64@15.1.6': + optional: true + '@next/swc-linux-arm64-gnu@14.2.15': optional: true + '@next/swc-linux-arm64-gnu@15.1.6': + optional: true + '@next/swc-linux-arm64-musl@14.2.15': optional: true + '@next/swc-linux-arm64-musl@15.1.6': + optional: true + '@next/swc-linux-x64-gnu@14.2.15': optional: true + '@next/swc-linux-x64-gnu@15.1.6': + optional: true + '@next/swc-linux-x64-musl@14.2.15': optional: true + '@next/swc-linux-x64-musl@15.1.6': + optional: true + '@next/swc-win32-arm64-msvc@14.2.15': optional: true + '@next/swc-win32-arm64-msvc@15.1.6': + optional: true + '@next/swc-win32-ia32-msvc@14.2.15': optional: true '@next/swc-win32-x64-msvc@14.2.15': optional: true + '@next/swc-win32-x64-msvc@15.1.6': + optional: true + '@nodelib/fs.scandir@2.1.5': dependencies: '@nodelib/fs.stat': 2.0.5 @@ -5394,6 +5748,21 @@ snapshots: '@nodelib/fs.scandir': 2.1.5 fastq: 1.19.0 + '@pagefind/darwin-arm64@1.3.0': + optional: true + + '@pagefind/darwin-x64@1.3.0': + optional: true + + '@pagefind/linux-arm64@1.3.0': + optional: true + + '@pagefind/linux-x64@1.3.0': + optional: true + + '@pagefind/windows-x64@1.3.0': + optional: true + '@pkgjs/parseargs@0.11.0': optional: true @@ -5454,48 +5823,48 @@ snapshots: transitivePeerDependencies: - supports-color - '@react-aria/focus@3.19.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/focus@3.19.1(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': dependencies: - '@react-aria/interactions': 3.23.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.27.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-types/shared': 3.27.0(react@18.3.1) + '@react-aria/interactions': 3.23.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + '@react-aria/utils': 3.27.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + '@react-types/shared': 3.27.0(react@19.0.0) '@swc/helpers': 0.5.15 clsx: 2.1.1 - react: 18.3.1 - react-dom: 18.3.1(react@18.3.1) + react: 19.0.0 + react-dom: 19.0.0(react@19.0.0) - '@react-aria/interactions@3.23.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/interactions@3.23.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': dependencies: - '@react-aria/ssr': 3.9.7(react@18.3.1) - '@react-aria/utils': 3.27.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-types/shared': 3.27.0(react@18.3.1) + '@react-aria/ssr': 3.9.7(react@19.0.0) + '@react-aria/utils': 3.27.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + '@react-types/shared': 3.27.0(react@19.0.0) '@swc/helpers': 0.5.15 - react: 18.3.1 - react-dom: 18.3.1(react@18.3.1) + react: 19.0.0 + react-dom: 19.0.0(react@19.0.0) - '@react-aria/ssr@3.9.7(react@18.3.1)': + '@react-aria/ssr@3.9.7(react@19.0.0)': dependencies: '@swc/helpers': 0.5.15 - react: 18.3.1 + react: 19.0.0 - '@react-aria/utils@3.27.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/utils@3.27.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': dependencies: - '@react-aria/ssr': 3.9.7(react@18.3.1) - '@react-stately/utils': 3.10.5(react@18.3.1) - '@react-types/shared': 3.27.0(react@18.3.1) + '@react-aria/ssr': 3.9.7(react@19.0.0) + '@react-stately/utils': 3.10.5(react@19.0.0) + '@react-types/shared': 3.27.0(react@19.0.0) '@swc/helpers': 0.5.15 clsx: 2.1.1 - react: 18.3.1 - react-dom: 18.3.1(react@18.3.1) + react: 19.0.0 + react-dom: 19.0.0(react@19.0.0) - '@react-stately/utils@3.10.5(react@18.3.1)': + '@react-stately/utils@3.10.5(react@19.0.0)': dependencies: '@swc/helpers': 0.5.15 - react: 18.3.1 + react: 19.0.0 - '@react-types/shared@3.27.0(react@18.3.1)': + '@react-types/shared@3.27.0(react@19.0.0)': dependencies: - react: 18.3.1 + react: 19.0.0 '@redis/bloom@1.2.0(@redis/client@1.6.0)': dependencies: @@ -5580,44 +5949,44 @@ snapshots: '@rollup/rollup-win32-x64-msvc@4.34.6': optional: true - '@shikijs/core@1.29.2': + '@shikijs/core@2.3.2': dependencies: - '@shikijs/engine-javascript': 1.29.2 - '@shikijs/engine-oniguruma': 1.29.2 - '@shikijs/types': 1.29.2 + '@shikijs/engine-javascript': 2.3.2 + '@shikijs/engine-oniguruma': 2.3.2 + '@shikijs/types': 2.3.2 '@shikijs/vscode-textmate': 10.0.1 '@types/hast': 3.0.4 hast-util-to-html: 9.0.4 - '@shikijs/engine-javascript@1.29.2': + '@shikijs/engine-javascript@2.3.2': dependencies: - '@shikijs/types': 1.29.2 + '@shikijs/types': 2.3.2 '@shikijs/vscode-textmate': 10.0.1 - oniguruma-to-es: 2.3.0 + oniguruma-to-es: 3.1.0 - '@shikijs/engine-oniguruma@1.29.2': + '@shikijs/engine-oniguruma@2.3.2': dependencies: - '@shikijs/types': 1.29.2 + '@shikijs/types': 2.3.2 '@shikijs/vscode-textmate': 10.0.1 - '@shikijs/langs@1.29.2': + '@shikijs/langs@2.3.2': dependencies: - '@shikijs/types': 1.29.2 + '@shikijs/types': 2.3.2 - '@shikijs/themes@1.29.2': + '@shikijs/themes@2.3.2': dependencies: - '@shikijs/types': 1.29.2 + '@shikijs/types': 2.3.2 - '@shikijs/twoslash@1.29.2(typescript@5.7.3)': + '@shikijs/twoslash@2.3.2(typescript@5.7.3)': dependencies: - '@shikijs/core': 1.29.2 - '@shikijs/types': 1.29.2 + '@shikijs/core': 2.3.2 + '@shikijs/types': 2.3.2 twoslash: 0.2.12(typescript@5.7.3) transitivePeerDependencies: - supports-color - typescript - '@shikijs/types@1.29.2': + '@shikijs/types@2.3.2': dependencies: '@shikijs/vscode-textmate': 10.0.1 '@types/hast': 3.0.4 @@ -5635,18 +6004,18 @@ snapshots: '@swc/counter': 0.1.3 tslib: 2.8.1 - '@tanstack/react-virtual@3.13.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@tanstack/react-virtual@3.13.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': dependencies: '@tanstack/virtual-core': 3.13.0 - react: 18.3.1 - react-dom: 18.3.1(react@18.3.1) + react: 19.0.0 + react-dom: 19.0.0(react@19.0.0) '@tanstack/virtual-core@3.13.0': {} - '@theguild/remark-mermaid@0.1.3(react@18.3.1)': + '@theguild/remark-mermaid@0.2.0(react@19.0.0)': dependencies: mermaid: 11.4.1 - react: 18.3.1 + react: 19.0.0 unist-util-visit: 5.0.0 transitivePeerDependencies: - supports-color @@ -5821,13 +6190,21 @@ snapshots: '@types/react-dom@18.3.1': dependencies: - '@types/react': 18.3.12 + '@types/react': 19.0.8 + + '@types/react-dom@19.0.3(@types/react@19.0.8)': + dependencies: + '@types/react': 19.0.8 '@types/react@18.3.12': dependencies: '@types/prop-types': 15.7.14 csstype: 3.1.3 + '@types/react@19.0.8': + dependencies: + csstype: 3.1.3 + '@types/trusted-types@2.0.7': optional: true @@ -6106,10 +6483,10 @@ snapshots: dependencies: is-windows: 1.0.2 - better-react-mathjax@2.1.0(react@18.3.1): + better-react-mathjax@2.1.0(react@19.0.0): dependencies: mathjax-full: 3.2.2 - react: 18.3.1 + react: 19.0.0 binary-extensions@2.3.0: {} @@ -6275,6 +6652,18 @@ snapshots: color-name@1.1.4: {} + color-string@1.9.1: + dependencies: + color-name: 1.1.4 + simple-swizzle: 0.2.2 + optional: true + + color@4.2.3: + dependencies: + color-convert: 2.0.1 + color-string: 1.9.1 + optional: true + colorette@2.0.20: {} combined-stream@1.0.8: @@ -6605,6 +6994,9 @@ snapshots: detect-indent@7.0.1: {} + detect-libc@2.0.3: + optional: true + detect-newline@4.0.1: {} devlop@1.1.0: @@ -7012,10 +7404,6 @@ snapshots: signal-exit: 4.1.0 strip-final-newline: 3.0.0 - extend-shallow@2.0.1: - dependencies: - is-extendable: 0.1.1 - extend@3.0.2: {} extendable-error@0.1.7: {} @@ -7142,8 +7530,6 @@ snapshots: flatted@3.3.2: {} - flexsearch@0.7.43: {} - follow-redirects@1.15.9(debug@4.3.7): optionalDependencies: debug: 4.3.7 @@ -7291,13 +7677,6 @@ snapshots: graphemer@1.4.0: {} - gray-matter@4.0.3: - dependencies: - js-yaml: 3.14.1 - kind-of: 6.0.3 - section-matter: 1.0.0 - strip-bom-string: 1.0.0 - hachure-fill@0.5.2: {} has-bigints@1.1.0: {} @@ -7542,6 +7921,9 @@ snapshots: call-bound: 1.0.3 get-intrinsic: 1.2.7 + is-arrayish@0.3.2: + optional: true + is-async-function@2.1.1: dependencies: async-function: 1.0.0 @@ -7586,8 +7968,6 @@ snapshots: is-docker@3.0.0: {} - is-extendable@0.1.1: {} - is-extglob@2.1.1: {} is-finalizationregistry@1.1.1: @@ -7766,8 +8146,6 @@ snapshots: khroma@2.1.0: {} - kind-of@6.0.3: {} - kolorist@1.8.0: {} langium@3.0.0: @@ -8433,10 +8811,10 @@ snapshots: netmask@2.0.2: {} - next-themes@0.4.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1): + next-themes@0.4.4(react-dom@19.0.0(react@19.0.0))(react@19.0.0): dependencies: - react: 18.3.1 - react-dom: 18.3.1(react@18.3.1) + react: 19.0.0 + react-dom: 19.0.0(react@19.0.0) next@14.2.15(@playwright/test@1.50.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1): dependencies: @@ -8464,65 +8842,121 @@ snapshots: - '@babel/core' - babel-plugin-macros - nextra-theme-docs@3.2.4(next@14.2.15(@playwright/test@1.50.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(nextra@3.2.4(@types/react@18.3.12)(acorn@8.14.0)(next@14.2.15(@playwright/test@1.50.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.3))(react-dom@18.3.1(react@18.3.1))(react@18.3.1): + next@14.2.15(@playwright/test@1.50.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0): + dependencies: + '@next/env': 14.2.15 + '@swc/helpers': 0.5.5 + busboy: 1.6.0 + caniuse-lite: 1.0.30001698 + graceful-fs: 4.2.11 + postcss: 8.4.31 + react: 19.0.0 + react-dom: 19.0.0(react@19.0.0) + styled-jsx: 5.1.1(react@19.0.0) + optionalDependencies: + '@next/swc-darwin-arm64': 14.2.15 + '@next/swc-darwin-x64': 14.2.15 + '@next/swc-linux-arm64-gnu': 14.2.15 + '@next/swc-linux-arm64-musl': 14.2.15 + '@next/swc-linux-x64-gnu': 14.2.15 + '@next/swc-linux-x64-musl': 14.2.15 + '@next/swc-win32-arm64-msvc': 14.2.15 + '@next/swc-win32-ia32-msvc': 14.2.15 + '@next/swc-win32-x64-msvc': 14.2.15 + '@playwright/test': 1.50.1 + transitivePeerDependencies: + - '@babel/core' + - babel-plugin-macros + + next@15.1.6(@playwright/test@1.50.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0): dependencies: - '@headlessui/react': 2.2.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@next/env': 15.1.6 + '@swc/counter': 0.1.3 + '@swc/helpers': 0.5.15 + busboy: 1.6.0 + caniuse-lite: 1.0.30001698 + postcss: 8.4.31 + react: 19.0.0 + react-dom: 19.0.0(react@19.0.0) + styled-jsx: 5.1.6(react@19.0.0) + optionalDependencies: + '@next/swc-darwin-arm64': 15.1.6 + '@next/swc-darwin-x64': 15.1.6 + '@next/swc-linux-arm64-gnu': 15.1.6 + '@next/swc-linux-arm64-musl': 15.1.6 + '@next/swc-linux-x64-gnu': 15.1.6 + '@next/swc-linux-x64-musl': 15.1.6 + '@next/swc-win32-arm64-msvc': 15.1.6 + '@next/swc-win32-x64-msvc': 15.1.6 + '@playwright/test': 1.50.1 + sharp: 0.33.5 + transitivePeerDependencies: + - '@babel/core' + - babel-plugin-macros + + nextra-theme-docs@4.2.4(@types/react@19.0.8)(next@15.1.6(@playwright/test@1.50.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0))(nextra@4.2.4(acorn@8.14.0)(next@15.1.6(@playwright/test@1.50.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0))(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(typescript@5.7.3))(react-dom@19.0.0(react@19.0.0))(react@19.0.0): + dependencies: + '@headlessui/react': 2.2.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0) clsx: 2.1.1 - escape-string-regexp: 5.0.0 - flexsearch: 0.7.43 - next: 14.2.15(@playwright/test@1.50.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - next-themes: 0.4.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - nextra: 3.2.4(@types/react@18.3.12)(acorn@8.14.0)(next@14.2.15(@playwright/test@1.50.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.3) - react: 18.3.1 - react-dom: 18.3.1(react@18.3.1) + next: 15.1.6(@playwright/test@1.50.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + next-themes: 0.4.4(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + nextra: 4.2.4(acorn@8.14.0)(next@15.1.6(@playwright/test@1.50.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0))(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(typescript@5.7.3) + react: 19.0.0 + react-compiler-runtime: 0.0.0-experimental-22c6e49-20241219(react@19.0.0) + react-dom: 19.0.0(react@19.0.0) scroll-into-view-if-needed: 3.1.0 zod: 3.24.1 + zod-validation-error: 3.4.0(zod@3.24.1) + zustand: 5.0.3(@types/react@19.0.8)(react@19.0.0) + transitivePeerDependencies: + - '@types/react' + - immer + - use-sync-external-store - nextra@3.2.4(@types/react@18.3.12)(acorn@8.14.0)(next@14.2.15(@playwright/test@1.50.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.3): + nextra@4.2.4(acorn@8.14.0)(next@15.1.6(@playwright/test@1.50.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0))(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(typescript@5.7.3): dependencies: '@formatjs/intl-localematcher': 0.5.10 - '@headlessui/react': 2.2.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@headlessui/react': 2.2.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0) '@mdx-js/mdx': 3.1.0(acorn@8.14.0) - '@mdx-js/react': 3.1.0(@types/react@18.3.12)(react@18.3.1) '@napi-rs/simple-git': 0.1.19 - '@shikijs/twoslash': 1.29.2(typescript@5.7.3) - '@theguild/remark-mermaid': 0.1.3(react@18.3.1) + '@shikijs/twoslash': 2.3.2(typescript@5.7.3) + '@theguild/remark-mermaid': 0.2.0(react@19.0.0) '@theguild/remark-npm2yarn': 0.3.3 - better-react-mathjax: 2.1.0(react@18.3.1) + better-react-mathjax: 2.1.0(react@19.0.0) clsx: 2.1.1 estree-util-to-js: 2.0.0 estree-util-value-to-estree: 3.3.2 + fast-glob: 3.3.3 github-slugger: 2.0.0 - graceful-fs: 4.2.11 - gray-matter: 4.0.3 hast-util-to-estree: 3.1.1 katex: 0.16.21 mdast-util-from-markdown: 2.0.2 mdast-util-gfm: 3.0.0 mdast-util-to-hast: 13.2.0 negotiator: 1.0.0 - next: 14.2.15(@playwright/test@1.50.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - p-limit: 6.2.0 - react: 18.3.1 - react-dom: 18.3.1(react@18.3.1) + next: 15.1.6(@playwright/test@1.50.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + react: 19.0.0 + react-compiler-runtime: 0.0.0-experimental-22c6e49-20241219(react@19.0.0) + react-dom: 19.0.0(react@19.0.0) + react-medium-image-zoom: 5.2.13(react-dom@19.0.0(react@19.0.0))(react@19.0.0) rehype-katex: 7.0.1 - rehype-pretty-code: 0.14.0(shiki@1.29.2) + rehype-pretty-code: 0.14.0(shiki@2.3.2) rehype-raw: 7.0.0 remark-frontmatter: 5.0.0 remark-gfm: 4.0.0 remark-math: 6.0.0 remark-reading-time: 2.0.1 remark-smartypants: 3.0.2 - shiki: 1.29.2 + shiki: 2.3.2 slash: 5.1.0 title: 4.0.1 unist-util-remove: 4.0.0 unist-util-visit: 5.0.0 + unist-util-visit-children: 3.0.0 yaml: 2.7.0 zod: 3.24.1 zod-validation-error: 3.4.0(zod@3.24.1) transitivePeerDependencies: - - '@types/react' - acorn - supports-color - typescript @@ -8599,11 +9033,11 @@ snapshots: dependencies: mimic-fn: 4.0.0 - oniguruma-to-es@2.3.0: + oniguruma-to-es@3.1.0: dependencies: emoji-regex-xs: 1.0.0 - regex: 5.1.1 - regex-recursion: 5.1.1 + regex: 6.0.1 + regex-recursion: 6.0.2 optionator@0.9.4: dependencies: @@ -8636,10 +9070,6 @@ snapshots: dependencies: yocto-queue: 0.1.0 - p-limit@6.2.0: - dependencies: - yocto-queue: 1.1.1 - p-locate@4.1.0: dependencies: p-limit: 2.3.0 @@ -8674,6 +9104,14 @@ snapshots: package-manager-detector@0.2.9: {} + pagefind@1.3.0: + optionalDependencies: + '@pagefind/darwin-arm64': 1.3.0 + '@pagefind/darwin-x64': 1.3.0 + '@pagefind/linux-arm64': 1.3.0 + '@pagefind/linux-x64': 1.3.0 + '@pagefind/windows-x64': 1.3.0 + pako@0.2.9: {} parent-module@1.0.1: @@ -8955,18 +9393,34 @@ snapshots: minimist: 1.2.8 strip-json-comments: 2.0.1 + react-compiler-runtime@0.0.0-experimental-22c6e49-20241219(react@19.0.0): + dependencies: + react: 19.0.0 + react-dom@18.3.1(react@18.3.1): dependencies: loose-envify: 1.4.0 react: 18.3.1 scheduler: 0.23.2 + react-dom@19.0.0(react@19.0.0): + dependencies: + react: 19.0.0 + scheduler: 0.25.0 + react-is@16.13.1: {} + react-medium-image-zoom@5.2.13(react-dom@19.0.0(react@19.0.0))(react@19.0.0): + dependencies: + react: 19.0.0 + react-dom: 19.0.0(react@19.0.0) + react@18.3.1: dependencies: loose-envify: 1.4.0 + react@19.0.0: {} + read-yaml-file@1.1.0: dependencies: graceful-fs: 4.2.11 @@ -9040,14 +9494,13 @@ snapshots: regenerator-runtime@0.14.1: {} - regex-recursion@5.1.1: + regex-recursion@6.0.2: dependencies: - regex: 5.1.1 regex-utilities: 2.3.0 regex-utilities@2.3.0: {} - regex@5.1.1: + regex@6.0.1: dependencies: regex-utilities: 2.3.0 @@ -9085,13 +9538,13 @@ snapshots: hast-util-from-html: 2.0.3 unified: 11.0.5 - rehype-pretty-code@0.14.0(shiki@1.29.2): + rehype-pretty-code@0.14.0(shiki@2.3.2): dependencies: '@types/hast': 3.0.4 hast-util-to-string: 3.0.1 parse-numeric-range: 1.3.0 rehype-parse: 9.0.1 - shiki: 1.29.2 + shiki: 2.3.2 unified: 11.0.5 unist-util-visit: 5.0.0 @@ -9320,15 +9773,12 @@ snapshots: dependencies: loose-envify: 1.4.0 + scheduler@0.25.0: {} + scroll-into-view-if-needed@3.1.0: dependencies: compute-scroll-into-view: 3.1.1 - section-matter@1.0.0: - dependencies: - extend-shallow: 2.0.1 - kind-of: 6.0.3 - secure-json-parse@2.7.0: {} secure-json-parse@3.0.2: {} @@ -9391,20 +9841,47 @@ snapshots: es-errors: 1.3.0 es-object-atoms: 1.1.1 + sharp@0.33.5: + dependencies: + color: 4.2.3 + detect-libc: 2.0.3 + semver: 7.7.1 + optionalDependencies: + '@img/sharp-darwin-arm64': 0.33.5 + '@img/sharp-darwin-x64': 0.33.5 + '@img/sharp-libvips-darwin-arm64': 1.0.4 + '@img/sharp-libvips-darwin-x64': 1.0.4 + '@img/sharp-libvips-linux-arm': 1.0.5 + '@img/sharp-libvips-linux-arm64': 1.0.4 + '@img/sharp-libvips-linux-s390x': 1.0.4 + '@img/sharp-libvips-linux-x64': 1.0.4 + '@img/sharp-libvips-linuxmusl-arm64': 1.0.4 + '@img/sharp-libvips-linuxmusl-x64': 1.0.4 + '@img/sharp-linux-arm': 0.33.5 + '@img/sharp-linux-arm64': 0.33.5 + '@img/sharp-linux-s390x': 0.33.5 + '@img/sharp-linux-x64': 0.33.5 + '@img/sharp-linuxmusl-arm64': 0.33.5 + '@img/sharp-linuxmusl-x64': 0.33.5 + '@img/sharp-wasm32': 0.33.5 + '@img/sharp-win32-ia32': 0.33.5 + '@img/sharp-win32-x64': 0.33.5 + optional: true + shebang-command@2.0.0: dependencies: shebang-regex: 3.0.0 shebang-regex@3.0.0: {} - shiki@1.29.2: + shiki@2.3.2: dependencies: - '@shikijs/core': 1.29.2 - '@shikijs/engine-javascript': 1.29.2 - '@shikijs/engine-oniguruma': 1.29.2 - '@shikijs/langs': 1.29.2 - '@shikijs/themes': 1.29.2 - '@shikijs/types': 1.29.2 + '@shikijs/core': 2.3.2 + '@shikijs/engine-javascript': 2.3.2 + '@shikijs/engine-oniguruma': 2.3.2 + '@shikijs/langs': 2.3.2 + '@shikijs/themes': 2.3.2 + '@shikijs/types': 2.3.2 '@shikijs/vscode-textmate': 10.0.1 '@types/hast': 3.0.4 @@ -9442,6 +9919,11 @@ snapshots: signal-exit@4.1.0: {} + simple-swizzle@0.2.2: + dependencies: + is-arrayish: 0.3.2 + optional: true + slash@3.0.0: {} slash@5.1.0: {} @@ -9585,8 +10067,6 @@ snapshots: dependencies: ansi-regex: 6.1.0 - strip-bom-string@1.0.0: {} - strip-bom@3.0.0: {} strip-final-newline@2.0.0: {} @@ -9606,6 +10086,16 @@ snapshots: client-only: 0.0.1 react: 18.3.1 + styled-jsx@5.1.1(react@19.0.0): + dependencies: + client-only: 0.0.1 + react: 19.0.0 + + styled-jsx@5.1.6(react@19.0.0): + dependencies: + client-only: 0.0.1 + react: 19.0.0 + stylis@4.3.6: {} sucrase@3.35.0: @@ -10052,12 +10542,15 @@ snapshots: yocto-queue@0.1.0: {} - yocto-queue@1.1.1: {} - zod-validation-error@3.4.0(zod@3.24.1): dependencies: zod: 3.24.1 zod@3.24.1: {} + zustand@5.0.3(@types/react@19.0.8)(react@19.0.0): + optionalDependencies: + '@types/react': 19.0.8 + react: 19.0.0 + zwitch@2.0.4: {} From 0da50b6745a32098f97802fc74deb44962e669d4 Mon Sep 17 00:00:00 2001 From: Arseny <132773930+better-salmon@users.noreply.github.com> Date: Tue, 20 May 2025 17:53:00 +0300 Subject: [PATCH 458/458] Add x link and github sponsors funding option (#1061) --- .github/FUNDING.yml | 1 + README.md | 1 + packages/cache-handler/README.md | 1 + 3 files changed, 3 insertions(+) diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml index 888b46fd..26cf3f78 100644 --- a/.github/FUNDING.yml +++ b/.github/FUNDING.yml @@ -1 +1,2 @@ +github: better-salmon open_collective: caching-tools diff --git a/README.md b/README.md index 8daa8984..2dfdd3d9 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,6 @@ # `@neshca/cache-handler` +[![X (formerly Twitter) Follow](https://img.shields.io/twitter/follow/better_salmon?style=flat)](https://x.com/better_salmon) [![npm package](https://img.shields.io/npm/v/@neshca/cache-handler/latest.svg)](https://www.npmjs.com/package/@neshca/cache-handler) [![Dependencies](https://img.shields.io/npm/dm/@neshca/cache-handler)](https://www.npmjs.com/package/@neshca/cache-handler) [![License](https://img.shields.io/npm/l/express.svg)](https://github.com/caching-tools/next-shared-cache/blob/canary/packages/cache-handler/LICENSE) diff --git a/packages/cache-handler/README.md b/packages/cache-handler/README.md index c9565811..ace145f9 100644 --- a/packages/cache-handler/README.md +++ b/packages/cache-handler/README.md @@ -2,6 +2,7 @@ **Flexible API for replacing the default Next.js cache, enabling custom caching solutions for multi-instance self-hosted deployments.** +[![X (formerly Twitter) Follow](https://img.shields.io/twitter/follow/better_salmon?style=flat)](https://x.com/better_salmon) [![npm package](https://img.shields.io/npm/v/@neshca/cache-handler/latest.svg)](https://www.npmjs.com/package/@neshca/cache-handler) [![Dependencies](https://img.shields.io/npm/dm/@neshca/cache-handler)](https://www.npmjs.com/package/@neshca/cache-handler) [![License](https://img.shields.io/npm/l/express.svg)](https://github.com/caching-tools/next-shared-cache/blob/canary/packages/cache-handler/LICENSE)